基于模塊化設(shè)計方法實現(xiàn)FPGA動態(tài)部分重構(gòu)
按照模塊化設(shè)計流程,分別對固定模塊fix和可重構(gòu)模塊reconfig_a和reconfig_b進行設(shè)計綜合,再將兩個可重構(gòu)模塊分別和固定模塊進行組合,完成整體設(shè)計。此過程中可重構(gòu)模塊和FPGA的整個設(shè)計分別生成配置比特流。
圖3和圖4是FPGA部分重構(gòu)前后的整個設(shè)計的物理實現(xiàn),圖中左半部分為固定模塊區(qū)域,右半部分為可重構(gòu)模塊區(qū)域。從兩圖中可知在部分重構(gòu)前后可重構(gòu)模塊區(qū)域內(nèi)布線發(fā)生變化,而固定模塊區(qū)域內(nèi)布線沒有發(fā)生變化。
圖3 fix和reconfig_a整體設(shè)計的物理實現(xiàn)結(jié)果
圖4 fix和reconfig_b整體設(shè)計的物理實現(xiàn)結(jié)果
FPGA動態(tài)部分重構(gòu)時首先須將整個配置文件下載到器件中,重構(gòu)時系統(tǒng)根據(jù)運行的需要選擇適合的部分重構(gòu)配置比特流。Virtex-E XCV600E配置比特流的大小為495204個字節(jié),而可重構(gòu)模塊reconfig_a和reconfig_b配置比特流的大小分別為93324個字節(jié)和111868個字節(jié),因此采用部分重構(gòu)不僅能夠在運行不間斷的情況下更新可重構(gòu)模塊區(qū)域內(nèi)的邏輯功能,而且也能使重構(gòu)配置時間大大減少。
3 結(jié)論
本文以Xilinx FPGA為研究對象,介紹了采用模塊化設(shè)計實現(xiàn)FPGA動態(tài)部分重構(gòu)功能的方法。FPGA的動態(tài)部分重構(gòu)功能使硬件設(shè)計更加靈活,可以將不同設(shè)計定位到芯片內(nèi)同一邏輯資源部分,重構(gòu)此部分邏輯資源,同時保持其他部分電路功能正常,從而靈活快速的改變系統(tǒng)設(shè)計,能夠減少器件的花費,降低功耗、更有效的利用電路板空間,可以應(yīng)用于系統(tǒng)實時容錯、自適應(yīng)硬件算法等。
本文作者創(chuàng)新點:基于FPGA動態(tài)可重構(gòu)技術(shù)將設(shè)計從一個純空間的數(shù)字邏輯系統(tǒng)轉(zhuǎn)換為在時間、空間混合構(gòu)建的數(shù)字邏輯系統(tǒng)。這種技術(shù)是數(shù)字系統(tǒng)設(shè)計方法、設(shè)計思想的變革,使FPGA資源利用率成倍提高。目前我國在FPGA可重構(gòu)技術(shù)方面開展的研究很少。本論文闡述了采用模塊化設(shè)計實現(xiàn)FPGA動態(tài)部分重構(gòu)的方法,能夠使FPGA部分邏輯功能重新配置過程中,其余部分邏輯功能正常運行,即實現(xiàn)了FPGA邏輯功能的動態(tài)部分重構(gòu)
評論