術(shù)語(yǔ)“重構(gòu)”是指FPGA已經(jīng)配置后的重新編程。FPGA的重構(gòu)有兩種類型:完全的和部分的。完全重構(gòu)將整個(gè)FPGA重新編程,而部分重構(gòu)只取代設(shè)計(jì)的一部分,設(shè)計(jì)的剩下部分仍正常工作。部分重構(gòu)不被視為完全重構(gòu)的特殊情況,因?yàn)閮烧呋鞠嗤?。?duì)FPGA執(zhí)行部分重構(gòu)通過使用與完全重構(gòu)(JTAG、ICAP、或SelectMAP接口)相同的方法來(lái)進(jìn)行,比特流的結(jié)構(gòu)對(duì)于完全和部分重構(gòu)來(lái)說都是相同的。
FPGA重構(gòu)具有以下幾個(gè)優(yōu)點(diǎn)。它允許多個(gè)設(shè)計(jì)共享同一個(gè)FPGA結(jié)構(gòu),這反過來(lái)又降低了FPGA的面積、成本和系統(tǒng)復(fù)雜性。完全和部分重構(gòu)為許多FPGA的創(chuàng)新應(yīng)用程序提供了可能,負(fù)責(zé),高昂的成本將影響應(yīng)用程序?qū)崿F(xiàn)。利用FPGA重構(gòu)優(yōu)勢(shì)的一些應(yīng)用如DSP、音頻或視頻處理器等,他們根據(jù)用戶輸入,由包括集成深度包檢測(cè)的通信控制器修改處理算法,以改變基于協(xié)議的數(shù)據(jù)包處理器。
很多工業(yè)和學(xué)術(shù)性的FPGA重構(gòu)方面的研究不斷產(chǎn)生有價(jià)值的應(yīng)用、研究論文和學(xué)位論文。
雖然部分重構(gòu)技術(shù)不是一項(xiàng)新功能,也不是主流的研究方向,但是設(shè)計(jì)和實(shí)現(xiàn)流程、工具支持甚至名詞術(shù)語(yǔ)都在不斷發(fā)展,用戶界面越來(lái)越友好。最終目標(biāo)是向FPGA開發(fā)者提供簡(jiǎn)單和透明的設(shè)計(jì)流程,無(wú)需詳細(xì)了解配置邏輯和比特流結(jié)構(gòu)。
部分重構(gòu)是一項(xiàng)復(fù)雜過程,在設(shè)計(jì)實(shí)現(xiàn)。工具流程和重構(gòu)本身的過程中充斥著多重挑戰(zhàn)。面臨的一個(gè)挑戰(zhàn)是在FPGA配置的變化過程中,完成平滑切換而無(wú)須中斷剩余設(shè)計(jì)功能或損害其完整性。而在完全重構(gòu)過程中,F(xiàn)PGA架構(gòu)和IO不能保持在復(fù)位。另一項(xiàng)挑戰(zhàn)是在改變過程中,防止設(shè)計(jì)的未改動(dòng)部分進(jìn)入無(wú)效狀態(tài)。設(shè)計(jì)者必須正確界定和約束未改動(dòng)和改動(dòng)部分之間的接口,這樣,F(xiàn)PGA物理實(shí)現(xiàn)工具才能進(jìn)行配置并使用完全相同的布線資源。
有三個(gè)部分重構(gòu)流程可用于XIlinx FPGA;基于差異的(difference based)、基于分層的(partition based)及使用動(dòng)態(tài)重構(gòu)端口。
基于差異的部分重構(gòu)
其于差異的部分重構(gòu)2最活合用于將小型設(shè)計(jì)轉(zhuǎn)化為L(zhǎng)UT方程、IO特征和BRAM中的內(nèi)容。以下是一個(gè)簡(jiǎn)單的、 基于差異的部分重構(gòu)代碼和流程舉例,它可以運(yùn)行在Xilinx的ML605 Virtex-6 開發(fā)板上。
上面例子中基于差異的部分重構(gòu)流程包括以下步驟:
(1 )編譯top模塊。結(jié)果是比特流文件top_orig. bit。
(2)編譯top_pr模塊。結(jié)果是布局布線后文件top_pr. ned。
(3)使用top._orig.bit比特流和top_pr.ned,生成包含兩個(gè)設(shè)計(jì)之間LED LUT方程差異的比特流。
基于分層的部分重構(gòu)
與基于差異的重構(gòu)不同,基于分層的部分重構(gòu)流程支持重構(gòu)大型部件FPGA設(shè)計(jì)。PlanAhead工具只支持Xilinx Virtex-6系列(不支持Spartan-6 FPGA), 它提供了用于配置、實(shí)現(xiàn)和使用分層管理部分重構(gòu)項(xiàng)目的集成環(huán)境。設(shè)計(jì)和實(shí)現(xiàn)流程的簡(jiǎn)要概述如下所示:。
1.FPGA開發(fā)者指定待配置的部分設(shè)計(jì)。
2.在FPGA芯片上包含所需邏輯、嵌人式存儲(chǔ)器、IO和其他資源的區(qū)域。
3.開發(fā)者定義覆蓋該區(qū)域的所有可能設(shè)計(jì)變量。
4.PlanAhead工具管理所有諸如編譯設(shè)計(jì)的細(xì)節(jié),包括管理多個(gè)網(wǎng)表、靜態(tài)的和可重構(gòu)的設(shè)計(jì)部分,執(zhí)行DRC,并產(chǎn)生合適的比特流。
Xilinx應(yīng)用提示XAPP8833)提供了使用部分重構(gòu)的示例,以允許嵌人式PCI Express接口模塊的快速配置。
動(dòng)態(tài)重構(gòu)端口
改變Xilinx GTX收發(fā)器、混合模式時(shí)鐘管理器(MMCM)和SystemMonior原語(yǔ)設(shè)置的另一種方法,是使用動(dòng)態(tài)重構(gòu)端口(DRP)。DRP提供了一個(gè)簡(jiǎn)單的用戶邏輯接口,不需要更多地了解配置寄存器和比特流結(jié)構(gòu)。例如,DRP允許輸出時(shí)鐘頻率、相位和MMCM4的占空比動(dòng)態(tài)變化。
原文標(biāo)題:FPGA知識(shí)匯集-FPGA的重構(gòu)
文章出處:【微信公眾號(hào):FPGA技術(shù)聯(lián)盟】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
FPGA
+關(guān)注
關(guān)注
1646文章
22054瀏覽量
618803 -
控制器
+關(guān)注
關(guān)注
114文章
17116瀏覽量
184442 -
接口
+關(guān)注
關(guān)注
33文章
9005瀏覽量
153785 -
編程
+關(guān)注
關(guān)注
88文章
3689瀏覽量
95287
原文標(biāo)題:FPGA知識(shí)匯集-FPGA的重構(gòu)
文章出處:【微信號(hào):gh_873435264fd4,微信公眾號(hào):FPGA技術(shù)聯(lián)盟】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
FPGA可重構(gòu)設(shè)計(jì)的結(jié)構(gòu)基礎(chǔ)
FPGA的重構(gòu)方式
支持重構(gòu)的FPGA器件
基于FPGA的可重構(gòu)系統(tǒng)結(jié)構(gòu)分析
有什么FPGA可重構(gòu)方法可以對(duì)EPCS在線編程?
如何利用ARM與FPGA設(shè)計(jì)重構(gòu)控制器?
如何去實(shí)現(xiàn)FPGA動(dòng)態(tài)部分的重構(gòu)?
怎么實(shí)現(xiàn)基于FPGA可重構(gòu)智能儀器的設(shè)計(jì)?
怎么實(shí)現(xiàn)基于FPGA的動(dòng)態(tài)可重構(gòu)系統(tǒng)設(shè)計(jì)?
FPGA有什么優(yōu)勢(shì)?FPGA的應(yīng)用方向是什么?
基于對(duì)EPCS在線編程的FPGA可重構(gòu)方法
基于ARM+FPGA的重構(gòu)控制器設(shè)計(jì)

基于CPLD的FPGA快速動(dòng)態(tài)重構(gòu)設(shè)計(jì)

評(píng)論