部分可重構(gòu)技術(shù)是Xilinx FPGA的一項重要開發(fā)流程。本文結(jié)合Virtex5 FPGA,詳細(xì)講解在ISE + Planahead上完成部分可重構(gòu)功能的流程和技術(shù)要點(diǎn)。
1.測試用例
本測試用例為驗證 Xilinx FPGA部分可重構(gòu)功能而定制。
代碼整體結(jié)構(gòu)如下:
主要功能是,內(nèi)圖產(chǎn)生自測圖像,通過DVI接口輸出,并同時點(diǎn)亮3個LED燈。其中靜態(tài)邏輯(Static,灰色部分)負(fù)責(zé)頂層集成,時鐘處理,IIC輸出控制接口芯片,產(chǎn)生內(nèi)部測試圖像并輸出顯示。彩色的部分是可重構(gòu)邏輯,分別為Red,Blue,和Green三個模塊,代表對三個色彩通道分別進(jìn)行處理的邏輯。
2. ISE流程
部分可重構(gòu)開發(fā)流程會用到2個工具ISE和Planahead。其中ISE負(fù)責(zé)把靜態(tài)邏輯,和各個重構(gòu)模塊,分別獨(dú)立綜合成網(wǎng)標(biāo)文件,提供給Planahead使用。
綜合的時候要尤其注意,靜態(tài)邏輯Static是可以加管腳約束的,各個重構(gòu)模塊邏輯綜合時,要選擇不添加IO buffer,如下圖所示:
各個模塊的ISE工程已經(jīng)在Synth文件夾下組織好了,可以直接用ISE14.7打開。
3.Planahead流程
部分可重構(gòu)的主要工作都在Planahead下完成,大體分成4個步驟:
A.建立Planahead工程,導(dǎo)入Static靜態(tài)網(wǎng)表和約束文件
首先打開Planahead,選擇建立新網(wǎng)表工程,確定Enable PartialReconfiguration功能打開。
然后依次加入頂層Static網(wǎng)表和ucf約束文件:
B.導(dǎo)入Reconfiguration網(wǎng)表文件并設(shè)置Partition
創(chuàng)建完成Planahead工程后,在Flow Manager中,選擇Open SynthesizedDesign打開網(wǎng)表設(shè)計:
接下來,我們要添加各個可重構(gòu)的網(wǎng)標(biāo)文件。選中netlist列表中的某個可重構(gòu)子Module(此時它是Black Box,什么都沒有),右鍵選擇Set Partition:
在彈出對話框中,設(shè)置比可重構(gòu)Module某個實(shí)現(xiàn)的名字,Next后選擇對應(yīng)網(wǎng)表:
接下來我們還可以在同一個Module下面,繼續(xù)添加其它不同實(shí)現(xiàn)的網(wǎng)表文件,也可以添加Black Box網(wǎng)表(即空網(wǎng)表):
依次把所有的網(wǎng)表都添加完畢,最終,在Source窗口,視圖如下:
C.設(shè)置Partition
接下來,我們給3個Partition,分別設(shè)置其物理區(qū)域。使用Set Pblock Size選項,在Device視圖中,劃定合適的物理區(qū)域即可:
物理區(qū)域中會包含多種資源,不需要的我們可以不勾選,這樣能減小最終bit文件的大?。?/p>
設(shè)置完所有的partition后,可以跑一下DRC檢查(Tools-》 ReportDRC),確保所有的設(shè)置都沒有問題:
DRC檢查結(jié)果:
D.創(chuàng)建Implementation Runs
最后我們創(chuàng)建ImplementationRuns,在此處可以創(chuàng)建不同的組合。
創(chuàng)建完成后,就可以跑Implementation布局布線了,跑完后每個run下都會生成多個bit文件,其中之一是全局的配置bit,另外多個是部分重構(gòu)的bit文件。
-
FPGA
+關(guān)注
關(guān)注
1625文章
21620瀏覽量
601232 -
Virtex5
+關(guān)注
關(guān)注
0文章
6瀏覽量
8552
發(fā)布評論請先 登錄
相關(guān)推薦
評論