Xilinx FPGA的Fast Startup
對于這種演示來說,我們使用帶BPI的外置閃存作為配置接口。一旦初始高優先級比特流配置完該處理器子系統,在BRAM外運行的軟件將初始化TFT控制器,并將數據寫入DDR內存中的幀緩沖器。這樣就能確保啟動時屏幕迅速顯示在TFT上面。之后,從BPI閃存中讀出第二個比特流,并配置低優先級分區,這樣處理器子系統可以運行其他應用程序,如Web服務器。
本文引用地址:http://www.104case.com/article/125814.htm為方便擴展和清晰隔離兩個分區,我們使用了AXI至AXI橋接器。這也在最大程度上減少了穿過兩個設計分區邊界的網絡。低優先級分區與高優先級分區共享系統時鐘。
表1表示FPGA資源利用情況,表2表示傳統啟動方法、僅有高優先級分區壓縮比特流的啟動方法[6]和Fast Startup配置方法的配置時間。每種方法都使用BPIx16配置接口,而采用的配置速率(這個選項決定了目標配置時鐘頻率)為2 MHz和10 MHz。我們使用一臺示波器測量了該數據,捕獲了FPGA的“init”和“done”信號。 表2中“壓縮的”一欄表示僅有高優先級分區的壓縮比特流。含有兩個分區的完整FPGA設計的壓縮比特流將達到3.1 Mbyte。

表2 – 測得的配置時間(Virtex-6視頻設計)
SPARTAN-6汽車ECU設計
為了驗證針對Spartan-6的Fast Startup方法,我們選擇了汽車領域的ECU應用情形。每當您在汽車電子控制單元中看到一個FPGA器件時,它一般都僅由ECU的主應用處理單元使用(見圖5)。我們的目標是實現一種將系統處理器放入FPGA中的設計。這樣我們就能避免對外置處理器的需要,從而降低整個系統的成本、復雜性、空間和功耗。

圖5 – 現代汽車ECU中的FPGA應用,FPGA中集成了處理器(虛線)
評論