星載環(huán)境FPGA軟件在軌重加載的一種方法
3.2 CPLD軟件設計實(shí)現
系統上電之后,DSP可以根據實(shí)際工作需要給出FPGA的兩種加載方式:PROM串行加載、SelectMAP并行加載,兩種方式均通過(guò)CPLD進(jìn)行。
當進(jìn)行PROM從串模式加載時(shí),配置比特流從PROM中讀取,具體加載實(shí)現流程如圖7所示。本文引用地址:http://dyxdggzs.com/article/190121.htm
當CPLD接到DSP發(fā)送的進(jìn)行SelectMAP并行加載命令時(shí),CPLD根據DSP端口的映射進(jìn)行SelectMAP并行加載,SelectMAP加載具體實(shí)現流程如圖8所示。
在SelectMAP并行加載過(guò)程中,CPLD負責在DSP和FPGA之間建立一個(gè)同步接口,將DSP傳送的配置數據包進(jìn)行相應的處理,生成滿(mǎn)足Select MAP加載時(shí)序的時(shí)鐘、數據及控制信號,傳輸至FPGA,實(shí)現對FPGA的SelectMAP加載。
CPLD軟件采用了一個(gè)狀態(tài)機,實(shí)現接收DSP命令進(jìn)行PROM從串加載或者進(jìn)行SelectMAP并行加載,狀態(tài)機的流程如圖9所示。
3.3 加載文件格式
對FPGA進(jìn)行加載的文件格式為*.bin文件,通過(guò)bitgen產(chǎn)生,*.bin文件只包含FPGA配置數據,不包含任何文件信息。
4 測試驗證
建立測試環(huán)境,利用測試計算機(含1553B板卡及控制軟件)模擬星上控制計算機,對該FPGA重加載電
路進(jìn)行測試,獲得如下測試結果:
(1)在DSP軟件中置PROM加載狀態(tài),上電后,FPGA從PROM加載,FPGA運行狀態(tài)正常;
(2)在DSP軟件中置SelectMAP加載狀態(tài),上電后,DSP從FLASH中讀取配置數據,通過(guò)CPLD對FPGA進(jìn)行加載,FPGA運行狀態(tài)正常;
(3)在DSP軟件中置SelectMAP加載狀態(tài),上電后,測試計算機通過(guò)1553B將新的配置數據傳輸至DSP,DSP通過(guò)CPLD對FPGA進(jìn)行加載,FPGA運行狀態(tài)正常。
(4)上電后,測試計算機通過(guò)1553B將新的配置數據傳輸至DSP,DSP將配置數據燒寫(xiě)至FLASH或者PROM,并置加載狀態(tài),上電后能實(shí)現新配置數據的加載。
通過(guò)以上測試表明,該電路具備FPGA星載環(huán)境下的在軌重加載功能。
5 結論
本文介紹了星載環(huán)境下通過(guò)1553B接口實(shí)現FPGA在軌重加載的方法,并完成了相應的硬件電路設計實(shí)現,通過(guò)實(shí)驗室測試驗證,證明本文所描述的星載環(huán)境FPGA在軌重加載方法設計思想合理可行,不僅能滿(mǎn)足星載環(huán)境下FPGA軟件的更新升級,還能實(shí)現FPGA軟件功能模塊的自身故障修復,并且能靈活地實(shí)現衛星應用功能的領(lǐng)域擴展,最大限度提高衛星系統的利用率。
評論