Altera-FPGA詳解_第1頁
Altera-FPGA詳解_第2頁
Altera-FPGA詳解_第3頁
Altera-FPGA詳解_第4頁
Altera-FPGA詳解_第5頁
已閱讀5頁,還剩18頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Altera 中文資料FPGA在軟件無線電中的應(yīng)用介紹軟件無線電(SDR)是具有可重配置硬件平臺的無線設(shè)備,可以跨多種通信標(biāo)準(zhǔn)。 它們因為更低的成本、更大的靈活性和更高的性能,迅速稱為軍事、公共安全和商 用無線領(lǐng)域的事實標(biāo)準(zhǔn)。SDR成為商用流行的主要原因之一是它能夠?qū)Χ喾N波形進(jìn) 行基帶處理和數(shù)字中頻(IF)處理。IF處理將數(shù)字信號處理的領(lǐng)域從基帶擴(kuò)展到 RF。 支持基帶和中頻處理的能力增加了系統(tǒng)靈活性,同時減小了制造成本?;鶐幚頍o線標(biāo)準(zhǔn)不斷地發(fā)展,通過先進(jìn)的基帶處理技術(shù)如自適應(yīng)調(diào)制編碼、空時編碼(STC)、波束賦形和多入多出(MIMO)天線技術(shù),支持更高的數(shù)據(jù)速率?;鶐?號處理器件需要巨大

2、的處理帶寬,以支持這些技術(shù)中大計算量的算法。例如,美國 軍事聯(lián)合戰(zhàn)術(shù)無線系統(tǒng)(JTRS)定義了軍事無線中20多種不同的無線波形。一些更 復(fù)雜的波形所需的計算能力在標(biāo)準(zhǔn)處理器上是每秒數(shù)百萬條指令(MIPS),或者如果在FPGA實現(xiàn)是數(shù)千個邏輯單元。協(xié)處理器特性SDR基帶處理通常需要處理器和 FPGA。在這類應(yīng)用中,處理器處理系統(tǒng)控制和配 置功能,而FPGA實現(xiàn)大計算量的信號處理數(shù)據(jù)通道和控制,讓系統(tǒng)延遲最小。當(dāng) 需要從一種標(biāo)準(zhǔn)切換至另一種標(biāo)準(zhǔn)時, 處理器能夠動態(tài)地在軟件的主要部分間切換, 而FPGA能夠根據(jù)需要完全重新配置,實現(xiàn)特定標(biāo)準(zhǔn)的數(shù)據(jù)通道。FPGA可以作為協(xié)處理器同DSP和通用處理相連,

3、這樣具有更高的系統(tǒng)性能和更低 的系統(tǒng)成本。自由地選擇在哪實現(xiàn)基帶處理算法為實現(xiàn) SDR算法提供了另一種方式 的靈活性?;鶐Р考残枰銐蜢`活讓所需的 SDR功能支持在同一種標(biāo)準(zhǔn)增強版本之間的移 植,并能夠支持完全不同的標(biāo)準(zhǔn)??删幊踢壿嫿Y(jié)合軟核處理器和IP,具有了提供在現(xiàn)場遠(yuǎn)程升級的能力。圖1是一個框圖,其中FPGA能夠通過IP功能如Turbo編碼 器、Reed-Solomon編碼器、符號交織器、符號映射器和IFFT,很容易地重配置支持 WCDMA/HSPDA或802.16a標(biāo)準(zhǔn)的基帶發(fā)送功能。ToDigital If圖1.兩種無線信號的SDRS帶數(shù)據(jù)通道 重配置例子數(shù)字IF處理數(shù)字頻率變化具有

4、比傳統(tǒng)模擬無線處理方式更高的性能。FPGA提供了一種高度靈活和集成的平臺,在這之上以合理的功率實現(xiàn)大計算量的數(shù)字IF功能,這在便攜系統(tǒng)中是一個關(guān)鍵的因素。能夠在 FPGA實現(xiàn)的IF功能包括數(shù)字上變頻器(DUC)和 下變頻器(DDC),以及數(shù)字預(yù)畸變(DPD)和波峰系數(shù)削減(CFR),幫助降低 功放的成本和功率(見圖2)Analog Front End #21.DUC:數(shù)字上變頻器2. CFR:波峰系數(shù)削減3. DPD:數(shù)字預(yù)防變4. DDC:數(shù)字下變頻器5. PA:功放6. LNA:低噪放圖2.在SDR構(gòu)中中頻處理單元例子數(shù)字上變頻器數(shù)字格式(在基帶處理單元和上變頻器之間一般需要)可以順利地加

5、到上變頻器的 前端。這項技術(shù)為上變頻器提供了全定制的前端,容許信道化的高帶寬輸入數(shù)據(jù)。定制邏輯或軟核嵌入式處理器可用來控制上變頻器和FPGA中實現(xiàn)的基帶處理單元之間的接口。在數(shù)字上變頻中,輸入數(shù)據(jù)在用可調(diào)的載波頻率進(jìn)行正交調(diào)制之前經(jīng)過基帶濾波和 插值。為了實現(xiàn)插值基帶有限沖激響應(yīng)(FIR)濾波器,必須在速度面積之間進(jìn)行權(quán) 衡為特定的標(biāo)準(zhǔn)獲得優(yōu)化的固定或自適應(yīng)架構(gòu)。數(shù)控振蕩器核也能夠產(chǎn)生多種架構(gòu),它們具有超過115db無寄生動態(tài)范圍和非常的高性能。根據(jù)支持的頻率分配數(shù)量, 在FPGA中可以很容易地例化多個上變頻器。波峰系數(shù)削減3G基于CDMA的系統(tǒng)和多載波系統(tǒng)如正交頻分復(fù)用(OFDM)的信號具有

6、很高的 峰平比(波峰系數(shù))。這樣的信號會極大地降低基站中功放的效率。對多波形標(biāo)準(zhǔn), 在FPGA中實現(xiàn)的波峰系數(shù)削減技術(shù)是一種降低功放成本和復(fù)雜度的合算的方式。數(shù)字預(yù)防變高速移動數(shù)據(jù)傳輸采用非包包絡(luò)調(diào)制技術(shù)如 QPSK和正交幅度調(diào)制(QAM)。這對 PA的線性度有嚴(yán)格的要求。DPD線性化技術(shù),包括查找表和多項式方式都可以有 效地在包含DSP塊的FPGA中實現(xiàn)。這些DSP塊中的乘法器可以在很高的時鐘速率 下運行,可以有效地分時實現(xiàn)復(fù)數(shù)乘法。當(dāng) SDR基站中使用FPGA時,F(xiàn)PGA可以 為特定的標(biāo)準(zhǔn)重配置來實現(xiàn)合適的 DPD算法,有效地線性化PA。數(shù)字下變頻器在接收器側(cè),數(shù)字IF技術(shù)可以對IF信號進(jìn)

7、行采樣,在數(shù)字域執(zhí)行信道化和采樣率 轉(zhuǎn)換。使用降采樣技術(shù),高頻IF信號(同時100MHz以上)可以被量化。因為不同 的標(biāo)準(zhǔn)有不同的碼片/比特速率,對SDR應(yīng)用需要非整數(shù)采樣率,把采樣數(shù)轉(zhuǎn)換為任 何標(biāo)準(zhǔn)基本碼片/比特速率的整數(shù)倍。結(jié)論FPGA提供了通用的計算結(jié)構(gòu),非常適合于軟件無線電中基帶和IF數(shù)字處理的需要。 另外,結(jié)合通用處理器或DSP,它們作為通用處理器或DSP軟件處理的硬件協(xié)處理 器,能夠增強功能,改善吞吐量,減小系統(tǒng)成本和降低系統(tǒng)功率。作者:Joel A. SeelyTechnical Marketing ManagerAutomotive, Industrial and Milita

8、ry Business UnitAltera Corporation采用編譯增強技術(shù),提高高密度 FPGA設(shè)計工作效率 現(xiàn)場可編程門陣列(FPGA體系創(chuàng)新以及向90nm工藝技術(shù)的過?S顯著提高了 FPGA 的密度和性能。FPG破計人員不僅需要更高的邏輯密度和更快的性能表現(xiàn),還 要求具有嵌入式處理器、數(shù)字信號處理(DSP模塊以及其他硬件IP結(jié)構(gòu)等復(fù)雜 的器件功能。但是,由于FPGAS計規(guī)模越來越大、越來越復(fù)雜,為了能夠抓住稍縱即逝的市場機會,設(shè)計人員必需盡快完成其設(shè)計。FPG端件供應(yīng)商一直努力提高編譯時間效率,改善時序逼近流程,但是卻無法 滿足設(shè)計人員更高效工作的要求。 Altera Quart

9、us? II軟件5.0增強編譯技術(shù)明 顯縮短設(shè)計迭代時間,在關(guān)鍵性能通路上進(jìn)行設(shè)計優(yōu)化, 保持性能已達(dá)到要求的 區(qū)域特性不變,該技術(shù)是前所未有的,極大的提高了設(shè)計效率。編譯增強優(yōu)勢現(xiàn)在的一個高級FPGAS準(zhǔn)編譯流程包括RTL綜合、布局布線等,高密度 FPGA 的每次設(shè)計編譯在任何情況下都要耗費 45分鐘到4個多小時的時間,這顯然限 制了設(shè)計人員每天所能進(jìn)行的迭代次數(shù),可能會少至兩次,明顯減緩了設(shè)計過程。 設(shè)計人員采用標(biāo)準(zhǔn)編譯設(shè)計流程來優(yōu)化部分設(shè)計時序性能時也會降低設(shè)計效率。這種優(yōu)化通常不利于邏輯布局,影響設(shè)計中其他部分的性能,不得不進(jìn)行額外的 多次設(shè)計迭代。對于當(dāng)今的高密度、高性能FPGAg計

10、,必需具有設(shè)計和調(diào)試階段快速迭代的能 力。Altera Quartus II 軟彳5.0為高密度FPGAS計提供了最先進(jìn)的技術(shù),如 以前只有專用集成電路(ASIC)才具有的增強設(shè)計和編譯能力等。與相應(yīng)的ASIC 相比,F(xiàn)PG斕譯效率更高,ASIC即使采用增強方法,仍需要幾小時到幾天的時 間來完成編譯,而FPGAS譯只需要幾分鐘到幾小時的時間。設(shè)計人員采用Quartus II增強編譯技術(shù),可以逐步編譯其設(shè)計分區(qū),比進(jìn)行全 部設(shè)計的標(biāo)準(zhǔn)編譯時間縮短近70%性能保留是增強編譯技術(shù)的另一個主要優(yōu) 勢。通過只對設(shè)計中的一個分區(qū)進(jìn)行編譯,可以保持其他部分的性能和結(jié)果不變。 這種性能保留特性使設(shè)計人員能夠以

11、更少的設(shè)計迭代,更高效的達(dá)到時序逼近Incremental Compilation Design Flow Summarybeak Design ParfflionsR郎的fSo閘對with 即就fonrR即疝 unfit 5扭 Get/ withFlootphnLfr an Full ln(eniEnlal CompikfnGcole fhm iilon LarationAssignments using Logklock Regionshi forri Conipklc (onpilation(All ParHiiom ore Compiled)MMeChc 酈s io Dogn腳 0由

12、os NeededDur附。醐n g優(yōu)加密叼S網(wǎng)的Set Netlnt Tfpe Id Posl-Filor Fost-Snrhesis) hi Eatb PartitionPerfonn Increm 勵tol (ompilntionIQ 曲 Giwiged Pwli mnsoie CompMQuartus II 5.0編譯增強設(shè)計流程。編譯增強使設(shè)計人員能夠以邏輯和物理分區(qū)的形式組織設(shè)計,進(jìn)行綜合和適配。只針對特定設(shè)計分區(qū)進(jìn)行新的編譯, 從而能夠顯著縮短設(shè)計迭代時間。編譯增強 特性有助于基于模塊的設(shè)計,對沒有修改的設(shè)計模塊,保持其性能不變。設(shè)計人 員還可以只對特定設(shè)計分區(qū)采用物理綜合等優(yōu)化

13、技術(shù),而不改動其他模塊。傳統(tǒng)上,一個層次設(shè)計在進(jìn)行邏輯綜合和適配之前轉(zhuǎn)換為單一的網(wǎng)表,每修改一次設(shè)計,就要對整個設(shè)計進(jìn)行重新編譯,減緩了設(shè)計過程。而編譯增強特性使設(shè) 計人員能夠沿任意層次邊界劃分設(shè)計分區(qū)。采用 Altera Quartus II軟件,可分 別對不同的層次設(shè)計分區(qū)進(jìn)行綜合和適配。分區(qū)可以組合、合并形成網(wǎng)表后,進(jìn)入后面的Quartus II編譯流程。重新編譯設(shè)計時,設(shè)計人員可以為每個分區(qū)選 擇使用新的源代碼、后綜合結(jié)果以及后適配結(jié)果。編譯增強設(shè)計流程Quartus II編譯增強特性改善了標(biāo)準(zhǔn) Quartus II設(shè)計流程,使設(shè)計人員能夠重 新使用、保留前次編譯結(jié)果,節(jié)省編譯時間。在

14、一個標(biāo)準(zhǔn)設(shè)計流程中,源代碼完 成后,如果修改設(shè)計中的任何部分,設(shè)計都要重新進(jìn)行編譯,處理源代碼,布局 所有邏輯。采用這種方法的原因之一在于能夠得到質(zhì)量最佳的結(jié)果。通過處理全部設(shè)計,編譯器能夠進(jìn)行全局優(yōu)化,改善面積大小,提高性能。但是,對于有些 情況,需要采用增強編譯設(shè)計流程。當(dāng)選好設(shè)計中的一個分區(qū),并在器件平面布 置中進(jìn)行布局后,設(shè)計人員可以加速其設(shè)計編譯時間, 而保持結(jié)果質(zhì)量不變,甚 至提高結(jié)果質(zhì)量。設(shè)計人員可能希望在設(shè)計主體完成后,在設(shè)計后期修改或優(yōu)化一個特定模塊時, 采用編譯增強技術(shù)。在這種情況下,他們可以保持沒有改動的模塊性能不變,縮短后面迭代的編譯時間。編譯增強特性在有些情況下,能夠

15、同時有利于縮短編譯 時間和達(dá)到時序逼近。設(shè)計中有些分區(qū)丟失或不完整時, 該特性還可以用于對其 他分區(qū)進(jìn)行編譯和優(yōu)化。設(shè)計分區(qū)和設(shè)計層次通常的設(shè)計實踐是生成模塊化或?qū)哟位脑O(shè)計,對實體分別進(jìn)行設(shè)計,然后在高級工程中例化,形成一個完整的設(shè)計。編譯增強技術(shù)對設(shè)計中的每個實體不自動 處理為設(shè)計分區(qū);設(shè)計人員必需在該工程頂層以下, 指定一個或多個層次。生成 分區(qū)使編譯器不對整個分區(qū)邊界進(jìn)行優(yōu)化,但仍可以通過對每個分區(qū)分別進(jìn)行綜 合和布局,來實現(xiàn)編譯增強技術(shù)。Partition Boundaries During OptimizationCar相e副 hfhtion 8md9油Contptk withwl

16、hrritiott OMiuftfiH ft&wtt 4 Crs SflurridPrOprirnijaiianCmm Ohuin EntfrriduDlHiwadiy for 配附 itwihJ Ep 由 hwiHitfEthies Benicn I TEMndit horn 5w Im lite曲密iblt i 口 tfluemtfl 嗎 tMtwnplt&Kb Hi西anh|一層次設(shè)計使邊界獨立的分區(qū)能夠采用編 譯增強技術(shù)。由于分區(qū)必需由層次化的邊界進(jìn)行隔離,因此分區(qū)無法成為一個層次化實體中邏 輯的一部分。形成一個分區(qū)后,該分區(qū)內(nèi)的每個層次化實體成為同一分區(qū)的組成。 設(shè)計人員能夠在一個已

17、有分區(qū)中,為該層次化實體生成新的分區(qū),在這種情況下, 新分區(qū)中的實體不再是更高級別分區(qū)的組成部分。設(shè)計分區(qū)和物理區(qū)域編譯增強特性的設(shè)計分區(qū)為邏輯分區(qū), 有別于器件平面布置圖中的物理區(qū)域, 在 平面布置圖中,對大小和位置進(jìn)行了規(guī)定。一個邏輯設(shè)計分區(qū)不是指器件的物理 部分,不用于直接控制邏輯布局。一個邏輯設(shè)計分區(qū)在設(shè)計層次之間建立一個虛擬邊界,因此每個分區(qū)分別進(jìn)行編 譯,彼此之間不會發(fā)生邏輯優(yōu)化。在采用編譯增強技術(shù)建立設(shè)計時, 建議設(shè)計人 員將每個設(shè)計分區(qū)分配給一個物理區(qū)域,來提高結(jié)果質(zhì)量。生成設(shè)計分區(qū)的建議設(shè)計人員規(guī)劃設(shè)計時,應(yīng)牢記每個分區(qū)的大小和范圍,以及設(shè)計中的不同部分在 設(shè)計過程中會怎樣變

18、化。由于采用分區(qū)時,不會出現(xiàn)交叉邊界優(yōu)化,設(shè)計結(jié)果質(zhì) 量以及性能會隨著分區(qū)數(shù)量的增加而下降。因此,盡管更多的分區(qū)能夠更大的縮 短編譯時間,設(shè)計人員還是應(yīng)該限制分區(qū)數(shù)量,防止結(jié)果質(zhì)量下降。在ASIC設(shè)計流程中,設(shè)計人員要記錄每個分區(qū)的輸入和輸出端口,盡可能避免 越過分區(qū)邊界的任何時延。止匕外,設(shè)計人員應(yīng)盡量減少越過分區(qū)邊界的通路數(shù)量, 以簡化時序逼近處理,也應(yīng)盡可能以時鐘域來劃分區(qū)域。生成設(shè)計平面布置圖一旦完成設(shè)計分區(qū)后,設(shè)計人員應(yīng)在器件中為每個分區(qū)分配一個物理位置。 分區(qū) 設(shè)計生成平面布置圖的最簡單辦法是對每個分區(qū)(包括頂層分區(qū))生成一個物理 位置約束。對于采用編譯增強的設(shè)計而言,平面布置圖位

19、置規(guī)劃非常重要,這是因為當(dāng)器件 中某個區(qū)域的多數(shù)資源已經(jīng)占用時,它可以幫助避免適配器向該區(qū)域放置或替換 部分設(shè)計。在這種情況下,其他分區(qū)的后適配網(wǎng)表布局迫使適配器在器件的空閑 部分放置新的或修改后的分區(qū)。這樣做會直接導(dǎo)致兩個不利結(jié)果。第一,由于物 理約束的數(shù)量增多,適配器必需全速運轉(zhuǎn),因此編譯時間明顯延長。第二,由于 目標(biāo)分區(qū)的布局分散在器件中,因此結(jié)果質(zhì)量會下降,有時甚至非常顯著。帶有位置分配的典型器件平面布置圖Device Floorplan without Location AssignmentsDevite Floorplan with 4 Paditions.Device Floor

20、 pl an “Rtf Removing Ganged PortHiw P3不帶有位置分配的典型器件平面布置圖。利用Quartus II早期時序估算器的優(yōu)勢早期時序估算器不必進(jìn)行完整的設(shè)計編譯,即可提供準(zhǔn)確的設(shè)計時序估算。估算 結(jié)果平均在實際設(shè)計性能的11 %以內(nèi)。設(shè)計人員可以采用時序逼近平面布置圖 編輯器來查看該功能生成的“布局估算”,識別出關(guān)鍵通路,根據(jù)需要加入或修 改平面布置圖約束。然后,早期時序估算器能夠迅速評估平面布置圖位置分配或 邏輯修改的效果,對設(shè)計變量進(jìn)行快速迭代,幫助設(shè)計人員找到最佳方案。分區(qū)和平面布置圖方案成功的關(guān)鍵設(shè)計人員在為結(jié)果生成平面布置圖位置分配之前,應(yīng)對結(jié)果進(jìn)行比

21、較,如果不能 符合以下準(zhǔn)則,應(yīng)考慮采用其他方案:在設(shè)計分區(qū)完成和生成平面布置圖位置分配之后,不應(yīng)觀察到fMA劣化。在許多,卜#況下,允許fMAX咯有增加。在設(shè)計分區(qū)完成和生成平面布置圖位置分配之后,面積增加 不應(yīng)超過5%。布線階段花費的時間不應(yīng)明顯增加。如果布線時間明顯增加, 平面布置圖位置分配可能產(chǎn)生了大量的布線擁塞。為幫助修改和優(yōu)化每個分區(qū)的位置分配,設(shè)計人員可采用Quartus II軟件的時序逼近平面布置圖來確定布線擁塞的區(qū)域。結(jié)論Altera Quartus II編譯增強技術(shù)顯著縮短了設(shè)計迭代時間,其性能保留特性是前所未有的,極大的提高了設(shè)計人員工作效率。設(shè)計人員采用該技術(shù)每天能夠進(jìn)

22、行4至5次的高密度FPGAg計迭代,而采用傳統(tǒng)編譯方法只能進(jìn)行1至2次迭代,設(shè)計迭代時間減少近70%明顯縮短了全部開發(fā)時間。編譯增強特性實現(xiàn)的 性能保留功能使設(shè)計人員能夠以更少的設(shè)計迭代,更高效的達(dá)到時序逼近復(fù)用器重構(gòu)降低FPGA成本摘要本文介紹了一種新的能夠降低 FPG故際設(shè)計20%成本的綜合算法。該算法通過 減少復(fù)用器所需查找表(LUT的數(shù)量來實現(xiàn)。算法以效率更高的 4:1復(fù)用器替 代2:1復(fù)用器樹。算法性能關(guān)鍵在于尋找總線上出現(xiàn)的復(fù)用器數(shù)量。新的優(yōu)化方法占用一定的邏輯,這些邏輯由總線進(jìn)行分擔(dān),從而減少了總線上每個比特位所 需的邏輯。關(guān)鍵詞FPGA復(fù)用器、重構(gòu)、重新編碼、總線、邏輯優(yōu)化、綜

23、合。1.引言復(fù)用器是數(shù)據(jù)通道常用的構(gòu)建模塊,被廣泛應(yīng)用在處理器1、處理器總線、網(wǎng)絡(luò)交換,甚至是資源共享的DSP計中。據(jù)估計,復(fù)用器一般要占用一個 FPGA 設(shè)計2 25%以上的面積。因此,優(yōu)化FPGAg計的關(guān)鍵在于怎樣優(yōu)化復(fù)用器。本文介紹了一種新的復(fù)用器重構(gòu)算法,該算法減小了復(fù)用器在基于4輸入查找表 (4-LUT) FPG琳系結(jié)構(gòu)中所占用的面積。基準(zhǔn)測試結(jié)果表明復(fù)用器平均減少了17% 在一些設(shè)計中,4-LUT整體減少20%2.1節(jié)闡述了復(fù)用器是如何由行為級 VHDL4或Verilog5代碼產(chǎn)生的,2.2和 2.3節(jié)闡述復(fù)用器樹和復(fù)用器總線在設(shè)計中是怎樣生成的。 2.4節(jié)說明這些結(jié)構(gòu) 怎樣由4-

24、LUT實現(xiàn),闡述如何采用兩個4-LUT有效實現(xiàn)一個4:1二進(jìn)制復(fù)用器。第3.壓縮節(jié)介紹了一種叫做壓縮的新技術(shù),該技術(shù)附加一些控制邏輯,將多個2:1復(fù)用器重新組合為有效的4:1復(fù)用器,從而減少了為總線上每一 個比特位實現(xiàn)復(fù)用器所需要的4-LUT數(shù)量,所附加的控制邏輯代價由整個總線來 分擔(dān)。優(yōu)化復(fù)用器總線是復(fù)用器重構(gòu)算法的核心。4.1節(jié)闡述復(fù)用器重構(gòu)算法如何構(gòu)建設(shè)計中的復(fù)用器樹總線。4.2重構(gòu)節(jié)的重構(gòu)方法用于執(zhí)行4.3均衡節(jié)中定義的均衡算法。均衡增加了由壓縮生成的有效4:1復(fù)用器的數(shù)量。第5節(jié)總結(jié)了在Altera Quartus II集成綜合中運行的整個算法。第6.結(jié)果節(jié)列出了來自120個Alte

25、ra真實用戶設(shè)計實例的基準(zhǔn)測試結(jié)果,測試表明面積減少超過20%平均節(jié)省了 4.2%。2. 背景知識2.1 復(fù)用器在設(shè)計中是怎樣實現(xiàn)的行為級HDL設(shè)計中的任何條件代碼通常會綜合為復(fù)用器。本節(jié)闡述兩個最常用的復(fù)用器生成代碼實例。圖1是VHDLcase聲明及其2:1復(fù)用器樹的實現(xiàn)。采用 Verilog case 聲明的 “parallel case ”指令5可產(chǎn)生相似的結(jié)果。ffl 5聲明生成的邏輯注意,并不是所有的case聲明將可能的事件都描述清楚,需要依靠“ default ” 或者others ”條件來進(jìn)一步說明。在這些情況下,可以繼續(xù)將 case聲明表征 為2:1復(fù)用器樹,但是這種樹結(jié)構(gòu)可能

26、達(dá)不到平衡。錯誤!未找到引用源。顯示了 “if-then-else ”聲明是怎樣產(chǎn)生一個2:1復(fù)用器 鏈的。Verilog的“?:和非平行cases可同樣產(chǎn)生相似的結(jié)構(gòu)。注意,復(fù)用器 鏈確保如果第一個if條件為“真”,將選擇“ a”數(shù)據(jù)輸入,而復(fù)用器其他部分 將被忽略。圖士 if-nxitlse聲明生成的邏輯本文闡述的復(fù)用器重構(gòu)算法應(yīng)用于 2:1復(fù)用器。綜合工具由行為級代碼開始通常 會生成較大的復(fù)用器。較大的復(fù)用器總是被分解為2:1復(fù)用器樹,如何實現(xiàn)這種 分解已經(jīng)超出本文討論范圍。2.2 復(fù)用器樹設(shè)計中復(fù)用器之間的饋入是常見的現(xiàn)象。例如,在一段HDL代碼中,如下面的錯誤!未找到引用源。所示,i

27、f-then-else聲明中含有case聲明就會產(chǎn)生這種現(xiàn)象。IF cl THEN IF cE 皿NHELSE 工; Bin? IF; ELSIF c3 THEM CASE s4l:0) TrfEEN 工 Y- C j WHIN,口工療= n - e f HUI) CJLSE; ELSII cG THEM z = ti ELSE2 = 3) if (num_muxes = 4) Apply transformation shown in Figure 13; else if (num_muxes = 5) Apply transformation shown in Figure 14;num_

28、muxes = num_muxes - 3;return num_muxes; else return 0; / primary input: 0 muxes圖12:均衡算法均衡中的任何階段,都需要對1到5個2:1復(fù)用器進(jìn)行均衡(從左側(cè)分支開始最 多兩個,從右側(cè)分支開始為兩個,還要算上當(dāng)前的2:1復(fù)用器本身)。1或2個復(fù)用器不會形成更多的三聯(lián),而 3個復(fù)用器總是能夠形成三聯(lián)。4或5個復(fù)用器 則需要進(jìn)行重構(gòu),以免剩余無法處理的復(fù)用器,這種重構(gòu)方法在圖13和圖14中示出。圖13:重構(gòu)4個復(fù)用器期哨衡本文引入了復(fù)用器樹總線概念,描述了可用來提高壓縮性能的均衡方法,壓縮以 效率更高的4:1復(fù)用器來替代

29、2:1復(fù)用器三聯(lián)。圖15顯示了全部復(fù)用器重構(gòu)算 法。Convert_ Multiplexers_to_2:1s ()Form_Multiplexer_Trees()Merge_Multiplexer_Trees_into_Busses()Foreach bus Balance (bus) / (Minimally rearrange 2:1into triples)Compress (bus) / (Convert 2:1 triples into efficient 4:1 s)圖15:復(fù)用器重構(gòu)算法復(fù)用器重構(gòu)算法性能依賴于對較大復(fù)用器樹總線的識別。由于復(fù)用器重構(gòu)算法在 整個總線上分擔(dān)控制邏

30、輯,因此,總線越寬,壓縮的效果就越明顯。優(yōu)化會減小 復(fù)用器樹間的相似性,從而減小所尋找的總線寬度,因此在復(fù)用器重構(gòu)之前,應(yīng) 盡量避免優(yōu)化。復(fù)用器重構(gòu)以分解大的復(fù)用器為 2:1復(fù)用器開始。設(shè)計中所有2:1復(fù)用器都用于 形成4.1節(jié)所描述的復(fù)用器樹。結(jié)構(gòu)相似的復(fù)用器樹然后合并形成 4.1節(jié)中的總 線結(jié)構(gòu)。算法的主要部分依次優(yōu)化每一個總線。均衡將2:1復(fù)用器重新排列為三聯(lián),這樣 在壓縮階段,每個三聯(lián)能夠重新編碼為效率更高的4:1復(fù)用器6. 結(jié)果本文所闡述的算法已經(jīng)集成到 Altera Quartus II 4.2綜合軟件中。錯誤!未找到引用源。顯示120個真實用戶設(shè)計中,Altera基準(zhǔn)測試的面積減小結(jié)果。出聃1Bench mark Oesig ns圖16復(fù)用器重構(gòu)基施測說結(jié)果結(jié)果表明,一些設(shè)計所需的LUT數(shù)量減小了 20%超過40%勺設(shè)計面積減小了 5% 以上。所有設(shè)計面積平均減小了 4.2%。據(jù)估算,約有25%勺LUT被用于實現(xiàn)復(fù)用器,而復(fù)用器重構(gòu)僅能優(yōu)化這 25%因此平均4.2%意味著復(fù)用器平均減少了 17%雖然復(fù)用器重構(gòu)主要集中在減小面積上(例如,減少所需4-LUT的數(shù)量),但是對電路速率

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論