本發(fā)明屬于無線電導(dǎo)航,具體涉及一種遠(yuǎn)程在線升級(jí)fpga程序的方法。
背景技術(shù):
1、在當(dāng)前的許多無線電導(dǎo)航設(shè)備中,要完成復(fù)雜的邏輯控制,大多需要用到可編程邏輯器件fpga。它允許用戶通過編程改變所實(shí)現(xiàn)的功能,從而達(dá)到指定的目標(biāo)。fpga作為嵌入式芯片,時(shí)常需要進(jìn)行外場(chǎng)程序升級(jí)維護(hù)。
2、傳統(tǒng)的fpga程序的升級(jí)方法,主要是信賴于fpga芯片供應(yīng)商提供的仿真器等專用線纜,將含有待升級(jí)程序的宿主機(jī)與無線電導(dǎo)航設(shè)備連接起來,然后將程序按照一定的操作步驟下載到設(shè)備內(nèi)fpga芯片配套的閃速程序存儲(chǔ)芯片中。
3、雖然上述升級(jí)方法過程比較簡單,但需要派專人到現(xiàn)場(chǎng),帶上專業(yè)的工具,還需打開設(shè)備外殼才能連接到內(nèi)部的fpga芯片及閃速程序存儲(chǔ)芯片,方能完成最終的程序升級(jí)。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于提供一種遠(yuǎn)程在線升級(jí)fpga程序的方法,應(yīng)對(duì)日益繁重的外場(chǎng)維護(hù)任務(wù),同時(shí)也為了降低維護(hù)成本,以解決上述背景技術(shù)中提出的問題。
2、為實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:一種遠(yuǎn)程在線升級(jí)fpga程序的方法,具體包括如下步驟:
3、步驟一:采用傳統(tǒng)的升級(jí)方法將基礎(chǔ)的程序先行下載至設(shè)備內(nèi)閃速程序存儲(chǔ)芯片;
4、步驟二:系統(tǒng)對(duì)程序升級(jí)數(shù)據(jù)進(jìn)行分幀處理;
5、步驟三:通過程序更新指令下發(fā)到被升級(jí)的設(shè)備中;
6、步驟四:設(shè)備通過程序接收應(yīng)答指令對(duì)系統(tǒng)進(jìn)行應(yīng)答;
7、步驟五:設(shè)備對(duì)接收到的數(shù)據(jù)進(jìn)行組包,直到成功接收到最后一幀程序更新指令;
8、步驟六:對(duì)整個(gè)升級(jí)數(shù)據(jù)包進(jìn)行校檢,通過程序校驗(yàn)結(jié)果指令回傳校驗(yàn)結(jié)果信息,系統(tǒng)進(jìn)行應(yīng)答。
9、作為本發(fā)明中一種優(yōu)選的技術(shù)方案,在所述步驟四中,應(yīng)答情況包括以下三種:
10、a、系統(tǒng)未收到程序接收應(yīng)答指令或應(yīng)答“失敗”,最多重發(fā)2次;
11、b、系統(tǒng)收到程序接收應(yīng)答指令應(yīng)答“成功”,發(fā)下一幀程序更新指令;
12、c、系統(tǒng)重發(fā)2次后,仍未收到程序接收應(yīng)答指令或應(yīng)答“失敗”,則退出此次升級(jí)程序流程。
13、作為本發(fā)明中一種優(yōu)選的技術(shù)方案,在所述步驟六中,當(dāng)對(duì)升級(jí)數(shù)據(jù)包校驗(yàn)時(shí),包括以下兩種情況:
14、a、校驗(yàn)通過,則通過串行總線接口替換閃速程序存儲(chǔ)芯片中的原有程序,完成程序在線升級(jí);
15、b、校驗(yàn)失敗,退出此次升級(jí)程序流程。
16、作為本發(fā)明中一種優(yōu)選的技術(shù)方案,在所述步驟一中,設(shè)備內(nèi)閃速程序存儲(chǔ)芯片內(nèi)至少包含兩個(gè)程序,且兩個(gè)程序分別為原始程序和實(shí)際需要升級(jí)的程序。
17、作為本發(fā)明中一種優(yōu)選的技術(shù)方案,將所述原始程序定義為g程序,實(shí)際需要升級(jí)的程序定義為m程序,所述原始程序與實(shí)際需要升級(jí)的程序在升級(jí)應(yīng)用中的步驟如下:
18、s1、上電后,fpga會(huì)啟動(dòng)m程序;
19、s2、配置成功,fpga將會(huì)運(yùn)行在m程序;若配置失敗,則fpga會(huì)回退到g程序,其中fpga作為嵌入式芯片,具體含義為field?programmable?gate?array。
20、作為本發(fā)明中一種優(yōu)選的技術(shù)方案,當(dāng)m程序設(shè)計(jì)發(fā)生變更時(shí),可通過遠(yuǎn)程在線升級(jí)的方式對(duì)m程序進(jìn)行更新。
21、作為本發(fā)明中一種優(yōu)選的技術(shù)方案,所述g程序?yàn)榛境绦颍话邮誱程序配置文件并寫入到閃速程序存儲(chǔ)芯片的功能,后續(xù)升級(jí)過程中不建議對(duì)g程序進(jìn)行更新,采用多程序方案后,即使因外部異常導(dǎo)致加載m程序失敗,回退到g程序,g程序依舊可以通過接收外部系統(tǒng)的程序升級(jí)數(shù)據(jù),實(shí)現(xiàn)對(duì)m程序的再次更新。
22、與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
23、采用遠(yuǎn)程在線升級(jí)方法升級(jí)fpga程序后,外場(chǎng)地勤人員就能對(duì)無線電導(dǎo)航設(shè)備進(jìn)行升級(jí),公司不用另外派員前往升級(jí),極大節(jié)省人力資源,同時(shí)由于利用外部系統(tǒng)原有的通信總線進(jìn)行程序升級(jí),未增加額外的硬件電路資源消耗,且不用依賴fpga仿真器等專用設(shè)備,節(jié)省采購成本。
1.一種遠(yuǎn)程在線升級(jí)fpga程序的方法,其特征在于:具體包括如下步驟:
2.根據(jù)權(quán)利要求1所述的一種遠(yuǎn)程在線升級(jí)fpga程序的方法,其特征在于:在所述步驟四中,應(yīng)答情況包括以下三種:
3.根據(jù)權(quán)利要求1所述的一種遠(yuǎn)程在線升級(jí)fpga程序的方法,其特征在于:在所述步驟六中,當(dāng)對(duì)升級(jí)數(shù)據(jù)包校驗(yàn)時(shí),包括以下兩種情況:
4.根據(jù)權(quán)利要求1所述的一種遠(yuǎn)程在線升級(jí)fpga程序的方法,其特征在于:在所述步驟一中,設(shè)備內(nèi)閃速程序存儲(chǔ)芯片內(nèi)至少包含兩個(gè)程序,且兩個(gè)程序分別為原始程序和實(shí)際需要升級(jí)的程序。
5.根據(jù)權(quán)利要求4所述的一種遠(yuǎn)程在線升級(jí)fpga程序的方法,其特征在于:將所述原始程序定義為g程序,實(shí)際需要升級(jí)的程序定義為m程序,所述原始程序與實(shí)際需要升級(jí)的程序在升級(jí)應(yīng)用中的步驟如下:
6.根據(jù)權(quán)利要求5所述的一種遠(yuǎn)程在線升級(jí)fpga程序的方法,其特征在于:當(dāng)m程序設(shè)計(jì)發(fā)生變更時(shí),可通過遠(yuǎn)程在線升級(jí)的方式對(duì)m程序進(jìn)行更新。
7.根據(jù)權(quán)利要求5所述的一種遠(yuǎn)程在線升級(jí)fpga程序的方法,其特征在于:所述g程序?yàn)榛境绦?,只包含接收m程序配置文件并寫入到閃速程序存儲(chǔ)芯片的功能。