国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種發(fā)動機燃油供應系統(tǒng)控制時序存儲和讀取方法

      文檔序號:9910178閱讀:302來源:國知局
      一種發(fā)動機燃油供應系統(tǒng)控制時序存儲和讀取方法
      【技術領域】
      [0001]本發(fā)明屬于數據存儲領域,針對發(fā)動機燃油供應系統(tǒng),尤其涉及一種發(fā)動機燃油供應系統(tǒng)控制時序存儲和讀取方法。
      【背景技術】
      [0002]發(fā)動機燃油供應系統(tǒng)是一個多變量、時變、非線性的復雜系統(tǒng),其控制過程嚴重依賴設計人員按照經驗設定的時序信息。
      [0003]早期的時序數據以機械形式存儲,但其保存形式單一,存儲過程復雜,且只能存儲簡單的時序。隨著磁存儲技術和光存儲技術的出現,時序的保存形式得到了極大的擴展,但是相對于處理器的速率來說,其讀寫時間較長,存儲器內部的機械部件較易出現故障,且易受發(fā)動機機械振動的影響。伴隨著微電子技術的發(fā)展,出現了半導體技術存儲。半導體存儲器幾乎無磨損,沒用可移動部件,因此讀取的過程中不容易受到發(fā)動機機械振動以及其移動的影響。
      [0004]隨著計算機技術不斷提高、控制理論的不斷發(fā)展,發(fā)動機燃油供應系統(tǒng)處理速度越來越快,這就要求在保證時序可靠性存儲的基礎上,盡可能縮短時序存儲、讀取的時間。
      [0005]目前,發(fā)動機燃油供應系統(tǒng)中使用的時序存儲方法在空間利用率、儲存/讀取速度上存在不足,不能滿足系統(tǒng)處理器的高速運行。且時序存儲方法安全性不高,在存儲/讀取過程中易受外界干擾,可能出現存儲/讀取錯誤的現象。

      【發(fā)明內容】

      [0006]要解決的技術問題
      [0007]為了避免現有技術的不足之處,本發(fā)明提出一種發(fā)動機燃油供應系統(tǒng)控制時序存儲和讀取方法。
      [0008]技術方案
      [0009]本發(fā)明應用在由數字芯片為主要器件構成的數字電子控制器(DEEC)中。在DEEC內嵌的FPGA芯片中,構建有雙循環(huán)鏈表,使用者將編寫的時序信息發(fā)送給DEEC后就保存在該雙循環(huán)鏈表中。存儲在雙循環(huán)鏈表中的時序信息為臨時數據,為保證系統(tǒng)上電后能夠再次執(zhí)行時序信息,需將時序信息存儲在Flash存儲器中。
      [0010]一種發(fā)動機燃油供應系統(tǒng)控制時序存儲方法,其特征在于步驟如下:
      [0011 ]步驟1:當DEEC需要存儲時序時,FPGA向DSP發(fā)送存儲時序的置位信號,DSP接收到該信號后,對Flash進行格式化,及相關變量初始化;
      [0012]步驟2:DSP向FPGA發(fā)送存儲準備就緒置位信號,FPGA接收該信號,完成FPGA跟DSP間存儲時序的第一次握手;
      [0013]步驟3:FPGA統(tǒng)計各時序組中時序結點的數目,然后將時序版本及各時序組的結點數目進行組包,形成一個代表時序版本及各時序組結點數目的Flash頭結點,然后將頭結點和各時序組中的結點依次存儲到Flash中;
      [0014]所述FPGA與DSP協(xié)同工作將一個結點存儲到Flash中的過程如下:
      [0015]步驟a:FPGA向DSP發(fā)送需要存儲數據的請求信號,DSP接收到請求信號后,將對應FPGA寫數據的地址進行清空,清空完畢后立刻向FPGA發(fā)送接收存儲數據請求的回復信號,完成FPGA與DSP之間的握手;
      [0016]步驟b:FPGA接收到DSP的回復信號后,向其發(fā)送本次寫數據的長度。本發(fā)明對一次寫入DSP的數據長度進行限定,當需要存儲結點的數據長度大于限定值時,分為多次向DSP寫入,一次向DSP至多寫限定值長度的數據,直至將該結點中的所有數據寫入DSP中;當存儲結點的數據長度小于設定值時,一次將其寫入DSP中;
      [0017]步驟c:FPGA將需要存儲結點的數據寫入DSP中,在進行寫數據時,FPGA將每次需要存儲的數據進行ELF Hash求和,并將ELF Hash求和值接在時序數據后面一同發(fā)送給DSP;
      [0018]步驟d:數據發(fā)送完畢后,FPGA向DSP發(fā)送完成發(fā)送數據操作置位信號,DSP接收到該信號后,從設定地址讀取此次寫入的數據長度,并按照長度從對應地址中讀取FPGA發(fā)送的數據,并對其進行ELF Hash求和,并與FPGA發(fā)送過來的ELF Hash求和值進行比較;
      [0019]如果兩個Hash值一樣,則向FPGA發(fā)送接收到正確數據的標志信號,并將此次讀取的數據存儲到Flash的Page中,并實時判斷Flash的該Page是否滿頁,如果滿頁則將數據寫入下一Page中;如果未滿頁則繼續(xù)存儲到該Page,直至其滿頁;FPGA讀取到該信號后,結束此次數據存儲,FPGA完成跟DSP的握手。如果該結點中的數據未完全存儲,從步驟一開始繼續(xù)該過程,直至該結點中的所有數據都存儲完畢;如果該結點數據全部存儲完畢,則結束該結點的存儲,進行下一結點的存儲,直至所有時序結點都存儲完畢;
      [0020]如果兩個Hash值不一樣,DSP清空接收到的數據,并向FPGA請求重新發(fā)送此次存儲的數據,FPGA接收到重發(fā)請求后,從步驟a重新開始,重新發(fā)送此次數據。
      [0021 ]步驟4:PFGA將所有時序結點存儲完畢后,向DSP發(fā)送存儲時序的復位信號,DSP接收到復位信號后,將Flash的當前Page中的無效位清除,并向FPGA發(fā)送時序完成存儲的標志信號,FPGA接收到該信號后,完成跟DSP的最后一次握手,結束整個存儲過程。
      [0022]—種與上述相對應的發(fā)動機燃油供應系統(tǒng)控制時序讀取方法,其特征在于步驟如下:
      [0023]步驟1:當DEEC需要讀取時序時,FPGA向DSP發(fā)送讀取時序的置位信號,DSP接收到讀取時序的置位信號后,準備時序讀取工作;
      [0024]步驟2:準備就緒后,DSP向FPGA發(fā)送讀取準備就緒置位信號,FPGA接收該信號,完成FPGA跟DSP的第一次握手;
      [0025]步驟3:然后按照定義的Flash頭結點長度,將頭結點從Flash中讀取。然后解析頭結點,得到時序的版本及各時序組中時序結點的數目;按照各時序組中時序結點的數目,將各時序組中的每個結點依次從Flash中讀??;
      [0026]所述FPGA與DSP協(xié)同工作將頭結點及時序結點從Flash中讀取的具體流程如下:
      [0027]步驟a:FPGA首先向DSP寫需要讀取數據的長度,本發(fā)明對一次讀取的數據長度進行限定,當需要讀取的結點數據長度大于設定值時,分成多次讀取,一次從Flash中至多只讀取限定值長度的數據,直至將該結點中的所有數據都讀取到FPGA中;當讀取結點的數據長度小于等于設定值時,一次完成讀取;
      [0028]步驟b:FPGA向DSP發(fā)送讀取數據請求信號,DSP接收到請求信號后,按照此次需要讀取的數據長度讀取Flash的Page中的數據,并將數據寫在約定的地址上。在進行寫數據的同時,DSP將從存儲中取出的數據進行ELF Hash求和,并將ELF Hash求和值寫在相應地址上發(fā)送給FPGA,DSPWFlash Page中讀取數據時,判斷當前Page的數據是否讀取完畢,讀取完畢則讀取下一Page中的數據;
      [0029]步驟c:完成上述過程后,向FPGA發(fā)送允許讀取的回復信號,完成FPGA與DSP之間的握手;
      [0030]步驟d:FPGA接收到DSP的回復信號后,從地址上讀取數據,并對讀取的數據進行ELF Hash求和,并與DSP發(fā)送的ELF Hash求和值進行比較;
      [0031]如果兩個Hash值一樣,將此次讀取的時序信息添加到對應的時序結點中。并向DSP發(fā)送讀取到正確數據的標志信號,DSP接收到該信號后,清除地址中的數據,為下一次讀取做準備,并向FPGA發(fā)送數據清除完成的標志信號;FPGA接收到該信號后,結束此次數據讀取,FPGA完成跟DSP的握手。如果該結點的所有數據都讀取完畢,則完成此次讀取,將該結點添加到對應的時序鏈表中;如果數據未讀取完畢,從步驟一開始繼續(xù)該過程。直至該結點所有數據都讀取完畢,再進行下一結點的讀??;
      [0032]如果兩個Hash值不一樣,FPGA丟棄此次讀取的數據,并向DSP請求重新發(fā)送數據,DSP接收到該請求后,清除地址中的數據,并將讀取Flash的指針回調至上一狀態(tài)。并向FPGA發(fā)送可重新讀取信號。FPGA接收到該信號后,繼續(xù)步驟一及以后的步驟,重新讀取此次數據;
      [0033]步驟4:FPGA將所有時序結點讀取完畢后,向DSP發(fā)送讀取時序復位信號,DSP接收到復位信號后,將讀取Flash的指針指回初始狀態(tài),
      當前第1頁1 2 3 
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1