星載環(huán)境FPGA軟件在軌重加載的一種方法
2 硬件電路設(shè)計(jì)
本系統(tǒng)硬件組成原理框圖見(jiàn)圖3,主控DSP芯片選用TI公司SMQ320LC31,通過(guò)1553B接口實(shí)現(xiàn)與星上控制計(jì)算機(jī)的通信,FPGA選用XILINX公司VIRTEX-Ⅱ系列芯片XC2V3000,其配置芯片選用XCF32P,DSP通過(guò)CPLD實(shí)現(xiàn)對(duì)FPGA加載模式的控制。本文引用地址:http://www.biyoush.com/article/190121.htm
圖3所示的電路框圖可以分為以下功能模塊:配置數(shù)據(jù)接口單元、配置信號(hào)發(fā)生單元、時(shí)序狀態(tài)轉(zhuǎn)換、自舉配置單元、FPGA功能單元,其邏輯關(guān)系如圖4所示。
各功能單元的功能和性能描述如下:
(1)配置數(shù)據(jù)接口單元:該單元通過(guò)1553B接口從星上控制計(jì)算機(jī)接收FPGA配置數(shù)據(jù)。
(2)配置信號(hào)發(fā)生單元:該單元產(chǎn)生配置FPGA所需的配置數(shù)據(jù)和時(shí)序。
(3)狀態(tài)時(shí)序轉(zhuǎn)換單元:該單元一方面實(shí)現(xiàn)FPGA配置方式的狀態(tài)切換:自舉配置;另一方面將配置信號(hào)發(fā)生單元產(chǎn)生的信號(hào)轉(zhuǎn)換成FPGA配置接口所需的信號(hào)。
(4)自舉配置單元:即PROM,保存預(yù)先裝好的FPGA配置數(shù)據(jù)。
(5)FPGA功能單元:即FPGA,接收來(lái)自于PROM的配置數(shù)據(jù)或者來(lái)自于DSP(經(jīng)過(guò)CPLD轉(zhuǎn)換)的配置數(shù)據(jù)。
該系統(tǒng)在實(shí)際工作過(guò)程中,通過(guò)DSP和CPLD的靈活控制,可以實(shí)現(xiàn)多種配置模式的切換:
(1)上電過(guò)程直接通過(guò)PROM對(duì)FPGA進(jìn)行配置加載;
(2)上電過(guò)程直接通過(guò)DSP片外FLASH對(duì)FPGA進(jìn)行配置加載;
(3)DSP實(shí)時(shí)接收星上控制計(jì)算機(jī)傳送的配置數(shù)據(jù),實(shí)現(xiàn)對(duì)FPGA的配置加載;
(4)DSP實(shí)時(shí)接收星上控制計(jì)算機(jī)傳送的配置數(shù)據(jù),將其燒寫(xiě)至PROM;
(5)DSP實(shí)時(shí)接收星上控制計(jì)算機(jī)傳送的配置數(shù)據(jù),將其燒寫(xiě)至FLASH。
3 軟件設(shè)計(jì)
3.1 DSP軟件設(shè)計(jì)實(shí)現(xiàn)
系統(tǒng)上電之后,DSP上電后,首先進(jìn)行狀態(tài)檢測(cè),判斷上電時(shí)是PROM串行加載還是FLASH并行加載。然后,星上控制計(jì)算機(jī)通過(guò)1553B接口向DSP傳送FPGA配置數(shù)據(jù),并發(fā)送配置模式控制命令,DSP根據(jù)接收的命令選擇配置方式,按照配置時(shí)序向CPLD的相應(yīng)寄存器寫(xiě)配置數(shù)據(jù)以及配置控制信號(hào)。
DSP軟件功能框圖如圖5所示,軟件主要完成兩個(gè)功能:功能一為完成1553B接口數(shù)據(jù)的傳輸,并存儲(chǔ)到SRAM中,然后根據(jù)1553B接口的控制命令決定進(jìn)行配置的方式或者轉(zhuǎn)存到FLASH中;功能二為模塊根據(jù)命令和FPGA配置時(shí)序產(chǎn)生配置信號(hào),并輸出給CPLD配置寄存器。
整個(gè)DSP軟件程序包含以下幾個(gè)主要函數(shù):1553B接口數(shù)據(jù)傳輸和處理函數(shù)、FLASH擦除與裝訂函數(shù)、SelectMap配置函數(shù)和中斷處理函數(shù)。軟件從main函數(shù)入口開(kāi)始運(yùn)行,進(jìn)行相應(yīng)的初始化設(shè)置和配置,并開(kāi)啟中斷,然后進(jìn)入無(wú)限循環(huán)狀態(tài),等待外部中斷的到來(lái)并進(jìn)行相應(yīng)的中斷服務(wù)處理。詳細(xì)軟件流程圖如圖6所示。
評(píng)論