[發(fā)明專利]一種基于FPGA的遠(yuǎn)程固件升級方法在審
| 申請?zhí)枺?/td> | 202111147381.2 | 申請日: | 2021-09-29 |
| 公開(公告)號: | CN113867771A | 公開(公告)日: | 2021-12-31 |
| 發(fā)明(設(shè)計(jì))人: | 周天;黃杰;杜偉東;陳寶偉;胡永翔 | 申請(專利權(quán))人: | 哈爾濱工程大學(xué);上海聲之揚(yáng)科技有限公司 |
| 主分類號: | G06F8/654 | 分類號: | G06F8/654 |
| 代理公司: | 成都方圓聿聯(lián)專利代理事務(wù)所(普通合伙) 51241 | 代理人: | 鄧永紅 |
| 地址: | 150001 黑龍江*** | 國省代碼: | 黑龍江;23 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 fpga 遠(yuǎn)程 升級 方法 | ||
本發(fā)明公開了一種基于FPGA的設(shè)備遠(yuǎn)程固件升級方法,PC端上位機(jī)通過網(wǎng)絡(luò)TCP/IP協(xié)議將固件下發(fā)到設(shè)備內(nèi)部FPGA芯片的Nios系統(tǒng)中,然后再由Nios系統(tǒng)轉(zhuǎn)發(fā)至設(shè)備內(nèi)部的Flash芯片燒寫控制器,從而實(shí)現(xiàn)了設(shè)備的遠(yuǎn)程固件升級。本發(fā)明提供的設(shè)備遠(yuǎn)程固件升級方法,通過設(shè)備本身對外通信的網(wǎng)口解決了設(shè)備固件升級免拆卸的問題。且本發(fā)明的固件升級方法耗時短,成本低,能夠很好的滿足市場需求。
技術(shù)領(lǐng)域
本發(fā)明屬于FPGA嵌入式領(lǐng)域,更具體的說是涉及一種基于FPGA的遠(yuǎn)程固件升級方法。
背景技術(shù)
一般的FPGA開發(fā)經(jīng)常使用JTAG完成在線開發(fā)調(diào)試和配置,當(dāng)開發(fā)完成后會使用JTAG將配置文件燒寫到非易失性存儲器中,例如Flash芯片。但是這種方式存在效率低下、可靠性低的問題,當(dāng)FPGA作為信號處理器被封裝在產(chǎn)品中時,若果需要進(jìn)行算法升級,使用JTAG的方式需要進(jìn)行拆殼處理,這樣做不僅耗時長,而且會增加損壞硬件和外殼防水結(jié)構(gòu)的風(fēng)險。因此,如何在不用拆除產(chǎn)品外殼的前提下快速實(shí)現(xiàn)其內(nèi)部FPGA的固件升級是本領(lǐng)域技術(shù)人員亟須解決的問題。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種基于FPGA的遠(yuǎn)程固件升級方法。能夠?qū)崿F(xiàn)在不用拆除設(shè)備外殼的前提下遠(yuǎn)程的實(shí)現(xiàn)內(nèi)部固件的升級。
為了實(shí)現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案:
一種基于FPGA的遠(yuǎn)程固件升級方法,包括以下幾個步驟:
步驟一:PC端上位機(jī)通過網(wǎng)口向水下設(shè)備內(nèi)部FPGA芯片的Nios系統(tǒng)發(fā)送固件文件;
步驟二:Nios系統(tǒng)將接收到的固件臨時存儲到RAM中;
步驟三:Nios將RAM中的固件文件分段讀出打包成特殊的形式傳輸?shù)紽lash控制器;
步驟四:Flash控制器接收到打包的固件文件,并確認(rèn)正確性,確認(rèn)正確后再燒寫到Flash芯片中。
其中,步驟三具體步驟包括:
SIII1:發(fā)送Flash燒寫狀態(tài)機(jī)復(fù)位命令rest_str使FPGA燒寫狀態(tài)機(jī)就位;
SIII2:發(fā)送Flash芯片整片擦除命令erase_str,并等待接收Flash擦除完成命令;
SIII3:判斷等待接收命令時間是否超時。若超時則執(zhí)行步驟SIII1,若沒超時則判斷是否為Flash擦除完成命令。若為Flash擦除完成命令則執(zhí)行下一步,若不是則執(zhí)行步驟SIII1;
SIII4:根據(jù)接收到的總字節(jié)數(shù)A,及一幀要傳輸?shù)淖止?jié)數(shù)B,得到即將要傳輸?shù)目倲?shù)據(jù)幀數(shù)M=A/B;
SIII5:判斷即將打包的數(shù)據(jù)幀編號i(取值從1到M)是否大于總數(shù)據(jù)幀M。若大于M,則執(zhí)行步驟SIII8;否則,執(zhí)行下一步;
SIII6:打包并發(fā)起第i幀數(shù)據(jù)傳輸;打包的數(shù)據(jù)格式為:幀頭+要傳輸?shù)臄?shù)據(jù)字節(jié)數(shù)+幀編號+待傳輸數(shù)據(jù)+校驗(yàn)和;
幀頭為1個字節(jié),為固定值0xFA;
要傳輸?shù)臄?shù)據(jù)字節(jié)數(shù),為1個字節(jié),值為N;
幀編號,為2個字節(jié),值為i;
待傳輸數(shù)據(jù),為N個字節(jié),第i段固件文件數(shù)據(jù);
校驗(yàn)和,為1個字節(jié),值為前面所有字節(jié)求和后取256的余數(shù);
SIII8:發(fā)送燒寫結(jié)束命令;
SIII9:等待回復(fù),判斷回復(fù)是否正確。若正確,則結(jié)束;否則,則執(zhí)行步驟SIII8。
步驟四具體步驟包括:
SIV1:等待接收Flash芯片整片擦除命令;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于哈爾濱工程大學(xué);上海聲之揚(yáng)科技有限公司,未經(jīng)哈爾濱工程大學(xué);上海聲之揚(yáng)科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111147381.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 用于提供遠(yuǎn)程幫助的方法和服務(wù)器
- 遠(yuǎn)程登錄會話維護(hù)方法、遠(yuǎn)程登錄代理和計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)
- 汽車遠(yuǎn)程控制裝置和方法
- 一種基于EMS系統(tǒng)的變電站遠(yuǎn)程監(jiān)控系統(tǒng)
- 遠(yuǎn)程控制終端、遠(yuǎn)程控制方法、遠(yuǎn)程受控終端和遠(yuǎn)程受控方法
- 對遠(yuǎn)程受控終端的受控方式進(jìn)行自定義的裝置及方法
- 一種基于互聯(lián)網(wǎng)的移動遠(yuǎn)程醫(yī)療綜合服務(wù)系統(tǒng)
- 一種遠(yuǎn)程控制方法、裝置及存儲介質(zhì)
- 一種遠(yuǎn)程炒菜機(jī)、遠(yuǎn)程炒菜機(jī)系統(tǒng)及遠(yuǎn)程炒菜方法
- 一種計(jì)算機(jī)遠(yuǎn)程控制組件





