新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 采用編譯增強技術(shù),提高高密度FPGA設計工作效率

采用編譯增強技術(shù),提高高密度FPGA設計工作效率

作者: 時間:2018-07-27 來源:網(wǎng)絡 收藏

現(xiàn)場可編程門陣列(FPGA)體系創(chuàng)新以及向90nm工藝技術(shù)的過渡顯著提高了FPGA的密度和性能。FPGA設計人員不僅需要更高的邏輯密度和更快的性能表現(xiàn),還要求具有嵌入式處理器、數(shù)字信號處理(DSP)模塊以及其他硬件IP結(jié)構(gòu)等復雜的器件功能。但是,由于FPGA設計規(guī)模越來越大、越來越復雜,為了能夠抓住稍縱即逝的市場機會,設計人員必需盡快完成其設計。

本文引用地址:http://www.butianyuan.cn/article/201807/384246.htm

FPGA器件供應商一直努力提高時間效率,改善時序逼近流程,但是卻無法滿足設計人員更高效工作的要求。Altera Quartus? II軟件5.0增強技術(shù)明顯縮短設計迭代時間,在關(guān)鍵性能通路上進行設計優(yōu)化,保持性能已達到要求的區(qū)域特性不變,該技術(shù)是前所未有的,極大的提高了設計效率。

增強優(yōu)勢

現(xiàn)在的一個高級FPGA標準編譯流程包括RTL綜合、布局布線等,高密度FPGA的每次設計編譯在任何情況下都要耗費45分鐘到4個多小時的時間,這顯然限制了設計人員每天所能進行的迭代次數(shù),可能會少至兩次,明顯減緩了設計過程。設計人員采用標準編譯設計流程來優(yōu)化部分設計時序性能時也會降低設計效率。這種優(yōu)化通常不利于邏輯布局,影響設計中其他部分的性能,不得不進行額外的多次設計迭代。

對于當今的高密度、高性能FPGA設計,必需具有設計和調(diào)試階段快速迭代的能力。Altera Quartus II軟件5.0為高密度FPGA設計提供了最先進的技術(shù),如以前只有專用集成電路(ASIC)才具有的增強設計和編譯能力等。與相應的ASIC相比,F(xiàn)PGA編譯效率更高,ASIC即使采用增強方法,仍需要幾小時到幾天的時間來完成編譯,而FPGA編譯只需要幾分鐘到幾小時的時間。

設計人員采用Quartus II增強編譯技術(shù),可以逐步編譯其設計,比進行全部設計的標準編譯時間縮短近70%。性能保留是增強編譯技術(shù)的另一個主要優(yōu)勢。通過只對設計中的一個進行編譯,可以保持其他部分的性能和結(jié)果不變。這種性能保留特性使設計人員能夠以更少的設計迭代,更高效的達到時序逼近。

編譯增強使設計人員能夠以邏輯和物理的形式組織設計,進行綜合和適配。只針對特定設計分區(qū)進行新的編譯,從而能夠顯著縮短設計迭代時間。編譯增強特性有助于基于模塊的設計,對沒有修改的設計模塊,保持其性能不變。設計人員還可以只對特定設計分區(qū)采用物理綜合等優(yōu)化技術(shù),而不改動其他模塊。

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

編譯增強設計流程

Quartus II編譯增強特性改善了標準Quartus II設計流程,使設計人員能夠重新使用、保留前次編譯結(jié)果,節(jié)省編譯時間。在一個標準設計流程中,源代碼完成后,如果修改設計中的任何部分,設計都要重新進行編譯,處理源代碼,布局所有邏輯。采用這種方法的原因之一在于能夠得到質(zhì)量最佳的結(jié)果。通過處理全部設計,編譯器能夠進行全局優(yōu)化,改善面積大小,提高性能。但是,對于有些情況,需要采用增強編譯設計流程。當選好設計中的一個分區(qū),并在器件平面布置中進行布局后,設計人員可以加速其設計編譯時間,而保持結(jié)果質(zhì)量不變,甚至提高結(jié)果質(zhì)量。

設計人員可能希望在設計主體完成后,在設計后期修改或優(yōu)化一個特定模塊時,采用編譯增強技術(shù)。在這種情況下,他們可以保持沒有改動的模塊性能不變,縮短后面迭代的編譯時間。編譯增強特性在有些情況下,能夠同時有利于縮短編譯時間和達到時序逼近。設計中有些分區(qū)丟失或不完整時,該特性還可以用于對其他分區(qū)進行編譯和優(yōu)化。

設計分區(qū)和設計層次

通常的設計實踐是生成模塊化或?qū)哟位脑O計,對實體分別進行設計,然后在高級工程中例化,形成一個完整的設計。編譯增強技術(shù)對設計中的每個實體不自動處理為設計分區(qū);設計人員必需在該工程頂層以下,指定一個或多個層次。生成分區(qū)使編譯器不對整個分區(qū)邊界進行優(yōu)化,但仍可以通過對每個分區(qū)分別進行綜合和布局,來實現(xiàn)編譯增強技術(shù)。

由于分區(qū)必需由層次化的邊界進行隔離,因此分區(qū)無法成為一個層次化實體中邏輯的一部分。形成一個分區(qū)后,該分區(qū)內(nèi)的每個層次化實體成為同一分區(qū)的組成。設計人員能夠在一個已有分區(qū)中,為該層次化實體生成新的分區(qū),在這種情況下,新分區(qū)中的實體不再是更高級別分區(qū)的組成部分。

設計分區(qū)和物理區(qū)域

編譯增強特性的設計分區(qū)為邏輯分區(qū),有別于器件平面布置圖中的物理區(qū)域,在平面布置圖中,對大小和位置進行了規(guī)定。一個邏輯設計分區(qū)不是指器件的物理部分,不用于直接控制邏輯布局。

一個邏輯設計分區(qū)在設計層次之間建立一個虛擬邊界,因此每個分區(qū)分別進行編譯,彼此之間不會發(fā)生邏輯優(yōu)化。在采用編譯增強技術(shù)建立設計時,建議設計人員將每個設計分區(qū)分配給一個物理區(qū)域,來提高結(jié)果質(zhì)量。

生成設計分區(qū)的建議

設計人員規(guī)劃設計時,應牢記每個分區(qū)的大小和范圍,以及設計中的不同部分在設計過程中會怎樣變化。由于采用分區(qū)時,不會出現(xiàn)交叉邊界優(yōu)化,設計結(jié)果質(zhì)量以及性能會隨著分區(qū)數(shù)量的增加而下降。因此,盡管更多的分區(qū)能夠更大的縮短編譯時間,設計人員還是應該限制分區(qū)數(shù)量,防止結(jié)果質(zhì)量下降。

在ASIC設計流程中,設計人員要記錄每個分區(qū)的輸入和輸出端口,盡可能避免越過分區(qū)邊界的任何時延。此外,設計人員應盡量減少越過分區(qū)邊界的通路數(shù)量,以簡化時序逼近處理,也應盡可能以時鐘域來劃分區(qū)域。

生成設計平面布置圖

一旦完成設計分區(qū)后,設計人員應在器件中為每個分區(qū)分配一個物理位置。分區(qū)設計生成平面布置圖的最簡單辦法是對每個分區(qū)(包括頂層分區(qū))生成一個物理位置約束。

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

利用Quartus II早期時序估算器的優(yōu)勢

早期時序估算器不必進行完整的設計編譯,即可提供準確的設計時序估算。估算結(jié)果平均在實際設計性能的11%以內(nèi)。設計人員可以采用時序逼近平面布置圖編輯器來查看該功能生成的布局估算,識別出關(guān)鍵通路,根據(jù)需要加入或修改平面布置圖約束。然后,早期時序估算器能夠迅速評估平面布置圖位置分配或邏輯修改的效果,對設計變量進行快速迭代,幫助設計人員找到最佳方案。

分區(qū)和平面布置圖方案成功的關(guān)鍵

設計人員在為結(jié)果生成平面布置圖位置分配之前,應對結(jié)果進行比較,如果不能符合以下準則,應考慮采用其他方案:

在設計分區(qū)完成和生成平面布置圖位置分配之后,不應觀察到fMAX劣化。在許多情況下,允許fMAX略有增加。

在設計分區(qū)完成和生成平面布置圖位置分配之后,面積增加不應超過5%。

布線階段花費的時間不應明顯增加。如果布線時間明顯增加,平面布置圖位置分配可能產(chǎn)生了大量的布線擁塞。

為幫助修改和優(yōu)化每個分區(qū)的位置分配,設計人員可采用Quartus II軟件的時序逼近平面布置圖來確定布線擁塞的區(qū)域。

結(jié)論

Altera Quartus II編譯增強技術(shù)顯著縮短了設計迭代時間,其性能保留特性是前所未有的,極大的提高了設計人員工作效率。設計人員采用該技術(shù)每天能夠進行4至5次的高密度FPGA設計迭代,而采用傳統(tǒng)編譯方法只能進行1至2次迭代,設計迭代時間減少近70%,明顯縮短了全部開發(fā)時間。編譯增強特性實現(xiàn)的性能保留功能使設計人員能夠以更少的設計迭代,更高效的達到時序逼近。



關(guān)鍵詞: 分區(qū) 編譯 設計器件 EDA

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉