FPGA遠(yuǎn)程更新重啟系統(tǒng)
ii) FPGA重啟模塊 ICAP
ICAP_VIRTEX6為用戶邏輯提供FPGA加載功能,它的功能與普通上點(diǎn)加載用的SELECTMAP 加載功能相同。接口信號見表 表 2:ICAP_VIRTEX6接口信號
通過ICAP_VIRTEX6,用戶邏輯可以發(fā)指令讓FPGA從指定的位置重新加載配置文件。加載指令的發(fā)送順序為,
1. 發(fā)同步字
2. 將要加載文件的起始地址寫道WBSTAR寄存器(Warm Boot Start Address Register)
3. 發(fā)送 IPROG指令
4. FPGA從WBSTAR寄存器指定地址開始讀取配置數(shù)據(jù)。
下面是一個控制ICAP從地址80000重加載例子
4) 遠(yuǎn)程更新的可靠性
在遠(yuǎn)程更新過程中有多種原因可以造成遠(yuǎn)端的配置文件出錯。比如數(shù)據(jù)傳輸錯誤,所以在跟新完成之后需要回讀校驗。為了減少傳輸負(fù)載可以采用CRC校驗。但是如果在版本更新過程中出現(xiàn)掉電或系統(tǒng)重啟,由于非易失存儲器中的配置影像文件已經(jīng)被破壞,遠(yuǎn)程終端將無法啟動。為了避免這種情況的發(fā)生,遠(yuǎn)程終端需要有2套配置文件,當(dāng)一套配置文件出錯時,系統(tǒng)可以回退到備份配置文件啟動。這樣就可以保證當(dāng)系統(tǒng)出錯時,遠(yuǎn)程終端仍可以啟動,接受控制中心發(fā)出的版本更新指令重新進(jìn)行更新。
內(nèi)部發(fā)重啟過程和狀態(tài)
評論