亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種發(fā)動(dòng)機(jī)燃油供應(yīng)系統(tǒng)控制時(shí)序存儲(chǔ)和讀取方法

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

【發(fā)明內(nèi)容】

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