黃志洪 李 威 楊立群 江政泓 魏 星 林 郁 楊海鋼
?
一種基于與非錐簇架構(gòu)FPGA輸入交叉互連設(shè)計優(yōu)化方法
黃志洪①②李 威①楊立群①②江政泓①②魏 星①②林 郁①楊海鋼*①
①(中國科學(xué)院電子學(xué)研究所 北京 100190)②(中國科學(xué)院大學(xué) 北京 100190)
該文針對與非錐(And-Inverter Cone, AIC)簇架構(gòu)FPGA開發(fā)中面臨的簇面積過大的瓶頸問題,對其輸入交叉互連設(shè)計優(yōu)化進(jìn)行深入研究,在評估優(yōu)化流程層次,首次創(chuàng)新性提出裝箱網(wǎng)表統(tǒng)計法對AIC簇輸入和反饋資源占用情況進(jìn)行分析,為設(shè)計及優(yōu)化輸入交叉互連結(jié)構(gòu)提供指導(dǎo),以更高效獲得優(yōu)化參數(shù)。針對輸入交叉互連模塊,在結(jié)構(gòu)參數(shù)設(shè)計層次,首次提出將引腳輸入和輸出反饋連通率分離獨立設(shè)計,并通過大量的實驗,獲得最優(yōu)連通率組合。在電路設(shè)計實現(xiàn)層次,有效利用AIC邏輯錐電路結(jié)構(gòu)特點,首次提出雙相輸入交叉互連電路實現(xiàn)。相比于已有的AIC簇結(jié)構(gòu),通過該文提出的優(yōu)化方法所得的AIC簇自身面積可減小21.21%,面積制約問題得到了明顯改善。在實現(xiàn)MCNC和VTR應(yīng)用電路集時,與Altera公司的FPGA芯片Stratix IV(LUT架構(gòu))相比,采用具有該文所設(shè)計的輸入交叉互連結(jié)構(gòu)的AIC架構(gòu)FPGA,平均面積延時積分別減小了48.49%和26.29%;與傳統(tǒng)AIC架構(gòu)FPGA相比,平均面積延時積分別減小了28.48%和28.37%,顯著提升了FPGA的整體性能。
與非錐(AIC); AIC簇;裝箱網(wǎng)表統(tǒng)計法;連通率;分類獨立設(shè)計;雙相輸入交叉互連
1 引言
FPGA(Field-Programmable Gate Arrays)自1984年誕生以來,發(fā)展至今已成為數(shù)字電路系統(tǒng)的核心器件。FPGA靈活的可編程能力使得其能夠?qū)崿F(xiàn)各種邏輯功能,滿足不同領(lǐng)域用戶的功能需求,其開發(fā)周期短,容易升級的特點更適用于技術(shù)不斷革新的市場應(yīng)用。當(dāng)前主流的商用FPGA器件基本都采用孤島型結(jié)構(gòu)[3],邏輯功能普遍通過查找表(Look up Table, LUT)結(jié)構(gòu)[4]實現(xiàn),位輸入的查找表能夠?qū)崿F(xiàn)種功能。查找表結(jié)構(gòu)邏輯單元強(qiáng)大的可編程能力推動了FPGA的快速發(fā)展和廣泛應(yīng)用,然而其高度靈活性也帶來了面積和性能的開銷,且其本身的可擴(kuò)展性約束也隨著工藝節(jié)點的不斷進(jìn)步逐漸凸顯,如何改進(jìn)LUT結(jié)構(gòu)進(jìn)一步提升FPGA性能一直是學(xué)術(shù)界和工業(yè)界的研究焦點。
2012年,文獻(xiàn)[8,9]提出了一種基于與非錐結(jié)構(gòu)的新型FPGA邏輯單元。其核心思想是利用綜合工具如abc[10]中的Boolean SAT技術(shù)方案[11],使得電路在映射成為有向無環(huán)圖AIG(And-Inverter Graph)時能夠在不同深度上找到大量可復(fù)用的子圖,而AIC架構(gòu)FPGA能夠提供可復(fù)用的邏輯單元,從而最大程度地提高邏輯資源利用率。
2014年第22屆FPGA國際會議上,文獻(xiàn)[12]首次嘗試通過標(biāo)準(zhǔn)CMOS工藝實現(xiàn)基于AIC架構(gòu)的FPGA電路設(shè)計,通過實驗仿真獲得性能參數(shù),并提供結(jié)構(gòu)參數(shù)和模型輸入VTR[13]架構(gòu)評估工具,以獲得待評估電路集中不同電路的面積、時延性能,并得出結(jié)論:LUT和AIC結(jié)構(gòu)在不同應(yīng)用電路上各有優(yōu)劣,基于AIC架構(gòu)的FPGA在平均時延性能上更優(yōu),但面積相對較大。文獻(xiàn)[12]中輸入交叉互連模塊(input crossbar)占到了整個邏輯簇面積的62.77%,而真正的功能邏輯和時序電路模塊僅占到AIC簇面積的10.3%,龐大的輸入交叉互連模塊直接導(dǎo)致AIC架構(gòu)邏輯簇面積過大的缺陷。
本文首次采用統(tǒng)計方法對映射裝箱后的應(yīng)用電路網(wǎng)表資源利用率進(jìn)行計算分析,利用分析結(jié)果指導(dǎo)輸入交叉互連結(jié)構(gòu)設(shè)計,并提出將AIC簇的輸入引腳和輸出反饋連通率分離獨立設(shè)計,在電路實現(xiàn)層次,提出一種雙相輸出交叉矩陣,以優(yōu)化AIC FPGA的實現(xiàn)性能。通過集成了改進(jìn)的面向AIC結(jié)構(gòu)映射工具[14]的完整高效FPGA架構(gòu)評估流程,經(jīng)過大量的仿真、優(yōu)化和實驗,獲得一種優(yōu)化的適用于AIC簇架構(gòu)FPGA的輸入交叉互連結(jié)構(gòu)。
2 AIC邏輯簇及輸入交叉互連模塊
AIC基本單元的結(jié)構(gòu)如圖1中BAE(Basic AIC Element)所示,多級AIC邏輯錐由多層次的基本單元BAE組成,其中,第1級采用改進(jìn)型可編程AIC單元(Enhanced AIC Element, EAE)即在各輸入端加入正反信號選擇模塊,使第1級AIC即能實現(xiàn),,,,,,,8種邏輯功能。

圖1 AIC邏輯單元及AIC邏輯錐
根據(jù)德摩根律[15],任何函數(shù)功能通過邏輯運(yùn)算都能夠通過運(yùn)算轉(zhuǎn)換成與非單元的組合表達(dá)式。因而可將任意的函數(shù)映射到AIC組合結(jié)構(gòu)上。
AIC邏輯錐區(qū)分于傳統(tǒng)查找表結(jié)構(gòu)的一個重要特點是其在各級中間層次可具有多個輸出,因而能夠最大程度上復(fù)用資源實現(xiàn)映射生成的重復(fù)子圖單元,從而在提高資源利用率的同時提升性能。
AIC邏輯簇是由一個或者多個AIC錐通過局部互連組成的可編程邏輯模塊,與基于LUT結(jié)構(gòu)的LAB模塊相對應(yīng)。在文獻(xiàn)[12]中為了實現(xiàn)與主流商用FPGA進(jìn)行比對,采用了全定制設(shè)計方法,在Cadence的Virtuso設(shè)計平臺上,通過40 nm標(biāo)準(zhǔn)CMOS工藝實現(xiàn)了Altera公司Stratix-IV的邏輯功能簇[16]作為對比的參照基準(zhǔn),性能與實際芯片數(shù)據(jù)相近。
該AIC邏輯簇由3個層次為6的AIC邏輯錐(AIC6)組成,每個AIC6有64個輸入端,由第2級開始輸出,稱為AIC6_2。通道提供了64個輸入引腳,經(jīng)過輸入交叉互連模塊選擇后,為3個AIC6_2提供192個輸入。每個AIC6_2共31個輸出,通過中間交叉互連模塊選擇后,可選擇是否連接到寄存器DFF實現(xiàn)時序或者直接提供組合邏輯輸出,再經(jīng)過輸出交叉互連模塊將數(shù)目減少到20并最終輸出到全局互連通道資源。
文獻(xiàn)[12]中的AIC邏輯簇與傳統(tǒng)LUT結(jié)構(gòu)邏輯簇相比,在平均延時性能上有一定優(yōu)勢,但電路實現(xiàn)平均面積較差。深入分析該AIC簇結(jié)構(gòu),由于AIC簇?fù)碛卸噍斎攵噍敵龅慕Y(jié)構(gòu)特點,使得其能較快處理多輸入信號,而且多層次中間節(jié)點輸出的存在使得其能夠復(fù)用邏輯運(yùn)算模塊的中間結(jié)果,從而提高邏輯運(yùn)算密度和利用率。但豐富的局部布線資源也意味著資源的冗余和面積、延時代價。統(tǒng)計結(jié)果可得,文獻(xiàn)[12]中局部互連資源(input/middle/ output crossbar)占整個AIC簇結(jié)構(gòu)中面積的79.89%,延時占AIC簇總延時43.3%至70.7%。
由于映射工具受限等因素,如原映射工具在映射階段沒有合理考慮不同單元的映射代價,且僅支持AIC每個層次都需輸出,直接導(dǎo)致輸出數(shù)目的倍增,限制制約了AIC簇設(shè)計的靈活性。針對這些問題,我們基于開源的abc軟件對新的工藝映射工具進(jìn)行了開發(fā)[14],引入了映射單元庫,建立映射代價函數(shù),在映射階段即考慮不同映射結(jié)果的代價,并在大量的候選映射劃分中,選擇最優(yōu)的映射方案,同時實現(xiàn)AIC邏輯簇的輸入、輸出層次、輸出個數(shù)獨立可調(diào)節(jié),使得結(jié)構(gòu)設(shè)計能有更大的自由空間,選擇更為合理的方式。
通過限制AIC6從第3級開始輸出,并簡稱該與非錐為AIC6_3,其輸出數(shù)目即可降為15,原AIC邏輯簇中的中間輸出交叉互連和輸出交叉互連即可移除,AIC邏輯簇結(jié)構(gòu)改進(jìn)部分為圖2陰影部分所示。

圖2 限制AIC6的輸出級數(shù)為3的AIC簇及輸入交叉互連
限制AIC6輸出級數(shù)后可以移除中間和輸出交叉互連模塊,但輸入交叉互連模塊仍然必須保留,以保障為AIC邏輯功能塊提供豐富的輸入資源。而此時,輸入交叉互連模塊占用整個AIC簇面積的比例則更加凸顯,高達(dá)73.89%,延時則占整個AIC簇邏輯的24.14%~50.2%。因此如何合理改進(jìn)輸入交叉互連模塊,設(shè)計高效的互連關(guān)系,采用優(yōu)化的電路實現(xiàn)方式,成為了AIC邏輯簇整體性能得到進(jìn)一步提高的關(guān)鍵。
3 AIC簇輸入交叉互連模塊結(jié)構(gòu)設(shè)計
3.1 AIC簇互連結(jié)構(gòu)參數(shù)評估流程
本文對AIC簇輸入交叉互連模塊結(jié)構(gòu)參數(shù)評估采用的CAD流程如圖3所示。所建立的完整流程包括:通過設(shè)定預(yù)設(shè)結(jié)構(gòu)參數(shù),電路設(shè)計、仿真驗證、管子參數(shù)優(yōu)化,獲得映射單元面積和時延庫,以提供工藝映射過程建立合理代價函數(shù),獲得電路基本結(jié)構(gòu)參數(shù)以提供裝箱及后續(xù)步驟,建立延時和面積模型以提供布局布線過程,對應(yīng)用電路的實現(xiàn)面積和時延信息進(jìn)行評估,以確定最優(yōu)的結(jié)構(gòu)參數(shù)。

圖3 AIC簇輸入交叉互連結(jié)構(gòu)評估CAD流程
本文采用學(xué)術(shù)界公認(rèn)的經(jīng)典20個最大的MCNC電路[17]和VTR中的大部分電路[18],除去個別規(guī)模過大非常耗時的電路,作為典型應(yīng)用測試電路集,進(jìn)行架構(gòu)參數(shù)評估。與通用的VTR7.0流程[13]相比,工藝映射過程集成了所開發(fā)的針對AIC結(jié)構(gòu)的改進(jìn)型映射工具,而且在采用VPR進(jìn)行布局布線過程前,開發(fā)統(tǒng)計工具,統(tǒng)計計算網(wǎng)表預(yù)設(shè)資源利用率,并返回指導(dǎo)修改結(jié)構(gòu)參數(shù),以加速確定優(yōu)化的結(jié)構(gòu)參數(shù)。
流程采用全定制設(shè)計,采用40 nm 標(biāo)準(zhǔn)CMOS工藝以保持與stratix-IV以及文獻(xiàn)[12]中一致,設(shè)計平臺為Cadence公司的Virtuso開發(fā)套件,仿真驗證、管子優(yōu)化過程采用spectre工具進(jìn)行,參數(shù)處理也采用和文獻(xiàn)[12]中相同的方式,以確保數(shù)據(jù)和實際芯片相近,且具有可比性。
3.2輸入交叉互連模塊結(jié)構(gòu)參數(shù)及連通率分類獨立設(shè)計
深入分析輸入交叉互連模塊,設(shè)定其輸入端引腳個數(shù)為,輸出反饋個數(shù)為,輸出個數(shù)為,輸入交叉互連模塊輸入到每個輸出的連通率為。在圖2中的陰影部分邏輯功能確定的情況下,為了使每個AIC6能夠有充分的輸入邏輯資源,需保持輸入端引腳個數(shù)為64,同樣為了實現(xiàn)每個AIC6輸入端來源的獨立性,輸出個數(shù)需為192,而輸出反饋的個數(shù)也固定為45。合理設(shè)計輸入交叉互連模塊的連通率成為了優(yōu)化設(shè)計的關(guān)鍵。
文獻(xiàn)[12]中設(shè)定的連通率為50%,本文為了更精細(xì)地對輸入交叉互連模塊的連接關(guān)系進(jìn)行設(shè)計,將輸入引腳到每個輸出端的連通率定義為,輸出反饋到每個輸出端的連通率定義為。本文首次提出將AIC邏輯簇輸入交叉互連模塊的輸入和反饋連通率獨立分離設(shè)計,從而避免了文獻(xiàn)[12]中存在的二者必須保持相同比例的設(shè)計約束,實現(xiàn)對和的獨立設(shè)計和組合,以獲取更為高效的輸入交叉互連關(guān)系。
3.3 裝箱網(wǎng)表統(tǒng)計法
由于不同結(jié)構(gòu)參數(shù)組合的設(shè)計空間非常大,而且對輸入交叉互連模塊而言,不同連通率對應(yīng)著不同的電路實現(xiàn),而每種電路需經(jīng)過設(shè)計實現(xiàn)、仿真驗證、管子參數(shù)優(yōu)化,才能提供相關(guān)的結(jié)構(gòu)參數(shù)進(jìn)行后續(xù)的CAD評估流程。這一過程將多次循環(huán)往復(fù),直至找到最優(yōu)的設(shè)計方案,因此將耗費大量的運(yùn)算資源和時間。
為了能夠更高效迅速確定優(yōu)化的結(jié)構(gòu)參數(shù)范圍,本文針對AIC簇輸入交叉互連結(jié)構(gòu)的優(yōu)化設(shè)計,提出一種裝箱網(wǎng)表統(tǒng)計法,即先設(shè)定合理的較為寬裕互連資源參數(shù),通過電路設(shè)計仿真,獲得相關(guān)信息,提供綜合映射裝箱后,對.net網(wǎng)表進(jìn)行資源統(tǒng)計分析,以確定提供的資源的利用率,根據(jù)所得信息返回對原設(shè)定的結(jié)構(gòu)參數(shù)進(jìn)行修改,再循環(huán)重復(fù)上述流程,以加快確定最優(yōu)化結(jié)構(gòu)參數(shù)。雖然無法通過統(tǒng)計結(jié)果直接確定最優(yōu)化的結(jié)構(gòu)參數(shù)數(shù)值,但可以更合理和準(zhǔn)確地指導(dǎo)參數(shù)的選擇。
文獻(xiàn)[12]中的AIC簇的輸入交叉互連為50%時,面積和延時都過大。本文預(yù)設(shè)和均為50%,根據(jù)圖3實驗流程,完成電路設(shè)計及仿真優(yōu)化,提供所需信息文件,將應(yīng)用電路集進(jìn)行映射、裝箱,得到.net格式網(wǎng)表文件,通過網(wǎng)表資源統(tǒng)計工具計算分析可得,在占用的AIC簇中,應(yīng)用電路集平均每個AIC簇占用了46.67個引腳輸入,4.78個輸出反饋,VTR應(yīng)用電路集平均每個AIC簇占用了22.27個引腳輸入,4.90個輸出反饋。整個測試電路集平均每個AIC簇占用了34.47個引腳輸入,4.84個輸出反饋,即引腳輸入約占總引腳輸入的53.84%,反饋個數(shù)約占總輸出反饋的10.76%。對比預(yù)定結(jié)構(gòu)所提供的和,可以發(fā)現(xiàn)的選定在一定的合理區(qū)間,而則有著較大的資源冗余。故返回指導(dǎo)預(yù)定結(jié)構(gòu)參數(shù)進(jìn)行對應(yīng)修改。
3.4 結(jié)構(gòu)參數(shù)實驗結(jié)果
由于輸入交叉互連模塊電路本身設(shè)計對稱性,以及驅(qū)動和負(fù)載一致性的要求,使得連通率的選定有一定的限制,因此無法設(shè)定任意的連通率值。本文采用的實驗方法如下:先固定結(jié)構(gòu)參數(shù)中的為50%,對的最優(yōu)值進(jìn)行實驗,擬定的選值為50%, 33%, 25%, 12.5%, 6.25%, 0%,按照圖3所示的流程,在選用不同取值后,進(jìn)行電路的設(shè)計和仿真,但跳過晶體管尺寸的優(yōu)化循環(huán),留待最優(yōu)參數(shù)結(jié)構(gòu)組合確定后,再進(jìn)一步進(jìn)行晶體管參數(shù)優(yōu)化,以高效完成CAD結(jié)構(gòu)評估。
通過完整的CAD評估流程和大量實驗,可得MCNC和VTR應(yīng)用電路集在基于不同反饋連通率值的輸入交叉互連模塊的AIC架構(gòu)FPGA上實現(xiàn)關(guān)鍵路徑延時和面積,與Stratix-IV和文獻(xiàn)[12]中AIC結(jié)構(gòu)相比,測試電路集平均面積、延時、面積延時積歸一化比例如圖4所示。

圖4 面積、延時、面積延時積隨f變化圖
分析圖4可得,當(dāng)為6.25%時,無論是MCNC還是VTR應(yīng)用電路集,其實現(xiàn)的電路面積延時積都達(dá)到最優(yōu),兩組測試電路集有著相同的結(jié)論。
故本文選定6.25%作為的預(yù)設(shè)值,對的取值進(jìn)一步進(jìn)行實驗評估。類似地,擬定的選值為56%, 53%, 50%, 47%, 44%, 41%, 38%, 34%, 31%作為結(jié)構(gòu)參數(shù)測試點,通過完整的CAD評估流程和大量實驗,可得MCNC和VTR應(yīng)用電路集在基于不同輸入引腳連通率值的輸入交叉互連模塊的AIC架構(gòu)FPGA上實現(xiàn)關(guān)鍵路徑延時和面積,與Stratix-IV和文獻(xiàn)[12]中AIC結(jié)構(gòu)相比,測試電路集平均面積、延時、面積延時積歸一化比例如圖5所示。

圖5 面積、延時、面積延時積隨i變化圖
分析圖5可得,當(dāng)為50%時,無論是MCNC還是VTR應(yīng)用電路集,其實現(xiàn)的電路面積延時積都達(dá)到最優(yōu),兩組測試電路集同樣有著相同的結(jié)論。
因此,我們可以得出結(jié)論,在當(dāng)前擬定的設(shè)計架構(gòu)下,當(dāng)AIC簇輸入交叉互連模塊的輸入引腳連通率取50%,反饋連通率取6.25%時,F(xiàn)PGA有著最優(yōu)的面積延時積性能。這一結(jié)論也進(jìn)一步證實了裝箱網(wǎng)表資源統(tǒng)計結(jié)論方向的正確性。
按照圖3所示流程,進(jìn)一步采用優(yōu)化的參數(shù)結(jié)構(gòu),對電路設(shè)計實現(xiàn)進(jìn)行晶體管級優(yōu)化,修改面積和時延參數(shù),再次進(jìn)行裝箱,VPR等步驟,統(tǒng)計分析以得到在該設(shè)計最優(yōu)化結(jié)構(gòu)下的電路關(guān)鍵路徑延時和面積。
和文獻(xiàn)[12]中的AIC簇結(jié)構(gòu)相比,采用該輸入交叉互連模塊,AIC簇本身的電路延時減小了21.24%,電路實現(xiàn)面積減少了20.28%,輸入交叉互連模塊實現(xiàn)面積較大的突出問題得到了明顯改善。
相比于Stratix-IV的LUT結(jié)構(gòu),該AIC簇結(jié)構(gòu)實現(xiàn)MCNC和VTR應(yīng)用電路集在平均面積延時積上分別提升了48.12%和25.86%;相比于文獻(xiàn)[12]中原有的AIC結(jié)構(gòu),則分別提升了27.97%和27.95%。
3.5 雙相輸入交叉互連電路實現(xiàn)
在文獻(xiàn)[12]中,各級交叉矩陣的電路實現(xiàn)方式均采用二級陣列多路選擇器電路實現(xiàn),與主流的Altera公司的Stratix系列產(chǎn)品相似[19]。
深入分析圖1中的AIC簇架構(gòu),可以發(fā)現(xiàn),每個AIC6的輸入端均需經(jīng)過一個反相器實現(xiàn)反向,以便通過編程選擇輸入的極性。綜合考慮交叉矩陣和EAE電路結(jié)構(gòu),針對輸入交叉互連模塊,本文提出雙相輸入交叉互連電路實現(xiàn)方式,為每個AIC邏輯錐同時提供正向和反向的輸入,其每個多路選擇器的電路實現(xiàn)方式如圖6所示。

圖6 雙相輸入交叉互連多路選擇器電路
通過管子優(yōu)化設(shè)計,Spectre仿真驗證,其正向路徑延時性能同原設(shè)計相當(dāng)。反向延時路徑雖然相比原設(shè)計電路減少了兩級反相器,但由于該電路采用傳輸管結(jié)構(gòu)實現(xiàn),中間電平壓降效應(yīng)影響了信號的上升時間,其最終延時也同原設(shè)計相近。然而采用了雙相輸入交叉模塊,可以將AIC邏輯錐第1層輸入端的反向器移除,達(dá)到了進(jìn)一步減小整個AIC簇實現(xiàn)面積的目的。
采用雙相輸入交叉互連實現(xiàn)的AIC簇在本身實現(xiàn)面積上進(jìn)一步減小了4.8%,整個AIC簇面積相比于文獻(xiàn)[12]中的AIC簇減少了21.21%。
通過CAD評估流程,可得最終在MCNC和VTR應(yīng)用電路集實現(xiàn)面積和關(guān)鍵路徑延時比對如表1所示。

表1采用雙相輸入交叉互連電路實現(xiàn)的AIC簇結(jié)構(gòu)面積和延時減小比例
與Stratix-IV結(jié)構(gòu)相比,采用本文所提出的雙相輸出交叉互連電路實現(xiàn)的AIC簇結(jié)構(gòu)在MCNC和VTR應(yīng)用電路集平均面積延時積分別減小了48.49%和26.29%;與文獻(xiàn)[12]中AIC結(jié)構(gòu)相比,平均面積延時積分別減小了28.48%和28.37%。
4 結(jié)論
本文針對AIC架構(gòu)FPGA開發(fā)中出現(xiàn)的實現(xiàn)面積過大的問題,深入分析其癥結(jié)根源,對輸入交叉互連結(jié)構(gòu)的設(shè)計優(yōu)化進(jìn)行探索。本文建立了適用于AIC架構(gòu)輸入交叉互連模塊結(jié)構(gòu)參數(shù)評估的高效優(yōu)化CAD流程,創(chuàng)新性提出裝箱網(wǎng)表統(tǒng)計法對資源占用情況進(jìn)行分析,并利用所得結(jié)果對輸入交叉互連結(jié)構(gòu)參數(shù)的優(yōu)化提供指導(dǎo),以更高效獲取優(yōu)化參數(shù)。在結(jié)構(gòu)參數(shù)設(shè)計層面,首次提出將引腳輸入和輸出反饋連通率分離獨立設(shè)計的思想,并通過大量的實驗,獲得最優(yōu)化結(jié)構(gòu)參數(shù)組合。在電路實現(xiàn)層次,結(jié)合AIC邏輯錐結(jié)構(gòu)特點,首次提出雙相輸入交叉互連電路實現(xiàn)方式,進(jìn)一步縮小了AIC簇的面積,相比于文獻(xiàn)[12]中的AIC簇結(jié)構(gòu),本文所提出的優(yōu)化AIC簇本身實現(xiàn)面積可減小21.21%,從而在有效解決了AIC架構(gòu)FPGA的面積困擾問題,也使得AIC架構(gòu)FPGA展現(xiàn)出了其潛在的優(yōu)勢和廣闊的進(jìn)一步優(yōu)化空間。
經(jīng)過大量的電路仿真、優(yōu)化、實驗,通過完整CAD流程得到優(yōu)化結(jié)果。與Stratix-IV結(jié)構(gòu)相比,采用本文所提出的輸入交叉互連結(jié)構(gòu)的AIC架構(gòu)FPGA,在MCNC和VTR應(yīng)用電路集平均面積延時積分別減小了48.49%和26.29%;與文獻(xiàn)[12]中AIC結(jié)構(gòu)相比,平均面積延時積分別減小了28.48%和28.37%,顯著提升了FPGA芯片的整體性能。
[1] CHINNEY D and KEUTZER K. Closing the Gap Between ASIC and Custom: Tools and Techniques for High-performance ASIC Design[M]. Netherland, Kluwer Academic Publishers, 2002: 157-158.doi: 10.1007/b105287.
[2] FRITZ Mayer-Lindenberg. Design and application of a scalable embedded systems’ architecture with an FPGA based operating infrastructure[C]. 9th Euromacro Conference on Digital System Design, Croatia, 2006: 189-196. doi: 10.1109/DSD.2006.39.
[3] BROWN S D, FRANCIS R, ROSE J,. Field Programmable Gate Arrays[M]. Netherland, Kluwer Academic Publishers, 1992: 127-133. doi:10.1007/978-1- 4615-3572-0.
[4] BETZ V, ROSE J, and MARQUARDT A. Architecture and CAD for Deep-Submicron FPGAs[M]. Netherlands, Kluwer Academic Publishers, 1999: 15-20. doi:10.1007/978-1-4615- 5145-4.
[5] HUTTON M, SCHLEICHER J, LEWIS D,Improving FPGA performance and area using an adaptive logic module [C]. IEEE International Conference on Field Programmable Logic and Applications (FPL), Belgium, 2004: 135-144. doi:10.1007/978-3-540-30117-2_16.
[6] AHMED E and ROSE J. The effect of LUT and cluster size on deep-submicron FPGA performance and density[J].(), 2004, 12(3): 288-298. doi: 10.1109/FPGA.2000.38.
[7] JIANG Z, LIN Y, YANG L,. Exploring architecture parameters for dual-output LUT based FPGAs[C]. IEEE International Conference on Field Programmable Logic and Applications (FPL), Munich, 2014: 436-441. doi: 10.1109/ FPL.2014.6927470.
[8] PARANDEH-AFSHAR H, BENBIHI H, NOVO D,. Rethinking FPGAs: elude the flexibility excess of LUTs with and-inverter cones[C]. Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays, Monterey, 2012: 119-128. doi:10.1145/2145694. 2145715.
[9] PARANDEH-AFSHAR H, ZGHEIB G, NOVO D,. Shadow and-inverter cones[C]. IEEE International Conference on Field Programmable Logic and Applications (FPL), Porto, 2013: 1-4. doi: 10.1109/FPL.2013.6645566.
[10] BRAYTON R and MISHCHENKO A. ABC: An academic industrial-strength verification tool[C]. Computer Aided Verification, Edinburgh, 2010: 24-40. doi: 10.1007/978-3- 642-14295-6_5.
[11] MISHCHENKO A, CHATTERJEE S, and BRAYTON R. DAG-aware AIG rewriting: A fresh look at combinational logic synthesis[C]. Proceedings of the 43rd Design Automation Conference, San Francisco, 2006: 532-536. doi: 10.1145/1146909.1147048.
[12] ZGHEIB G, YANG L, HUANG Z,. Revisiting and-inverter cones[C]. Proceedings of the 2014 ACM/SIGDA international symposium on Field-Programmable Gate Arrays. ACM, Monterey, 2014: 45-54. doi: 10.1145/2554688. 2554791.
[13] LUU J, GOEDERS J, WAINBERG M,. VTR 7.0: next generation architecture and CAD system for FPGAs[J].(), 2014, 7(2): 6:1-6:30. doi: 10.1145/ 2617593.
[14] 江政泓, 林郁, 黃志洪, 等. 面向AIC結(jié)構(gòu)的FPGA映射工具[J].電子與信息學(xué)報, 2015, 37(7): 1769-1773. doi: 10. 11999/JEIT141403.
JIANG Z, LIN Y, HUANG Z,. Mapper for AIC-based FPGAs[J]&, 2015, 37(7): 1769-1773. doi: 10.11999/JEIT141403.
[15] 埃伯哈德, 蔡德勒等, 編. 李文林, 等譯.《數(shù)學(xué)指南—實用數(shù)學(xué)手冊[M]. 北京:科學(xué)出版社, 2012: 875.
[16] Altera Corporation. Stratix IV Device Handbook, Vols.1 and 2. [OL]. https://www.altera.com/content/dam/altera-www/ global/en_US/pdfs/literature/hb/strastr-iv/stratix4_handbook.pdf, 2012.
[17] YANG S. Logic synthesis and optimization benchmarks, User Guide, version 3.0[OL]. http://ddd.fit.cvut.cz/prj/ Benchmarks/LGSynth91.pdf, 1991.
[18] MURRAY K E, WHITTY S, LIU S,. Titan: Enabling large and complex benchmarks in academic CAD[C]. Proceedings of the 23rd International Conference on Field-Programmable Logic and Applications, Porto, Portugal, 2013: 1-8. doi:10.1109/FPL.2013.6645503.
[19] LEWIS D, AHMED E, BAECKLER G,. The stratix II logic and routing architecture[C]. Proceedings of the 2005 ACM/SIGDA 13th ACM International Symposium on Field- Programmable Gate Arrays, Monterey, 2005: 14-20. doi: 10. 1145/1046192.1046195.
An Input Crossbar Optimisation Method for And-inverter ConeBased FPGA
HUANG Zhihong①②LI Wei①YANG Liqun①②JIANG Zhenghong①②WEI Xing①②LIN Yu①YANGHaigang①
①(Institute of Electronics, Chinese Academy of Sciences, Beijing 100190, China)②(University of Chinese Academy of Sciences, Beijing 100190, China)
In order to break through the bottleneck of the huge cluster area in AIC (And-Inverter Cone) architecture based FPGA, the research on the optimisation of the input crossbar architecture is carried on. A post-pack netlist statistics method is creatively proposed to analyze the utilization of AIC cluster inputs and feedbacks and to guide the input crossbar design. And on the architecture parameter design level, it is firstly proposed to separately design the connective probability of the AIC cluster inputs and feedbacks. Through substantial experiments, optimum connective probability combination is derived. From the circuit implement view, dual-phases multiplexer input crossbar is presented according to the characteristics of AIC. The area of the AIC cluster, optimized through the proposed approach, achieves 21.21% smaller than the original one, the huge area problem is markedly ameliorated. When implementing the MCNC and VTR benchmarks, compared to Stratix IV, LUT based FPGA from Altera, the area-delay product of the AIC FPGA after optimisation is reduced by 48.49% and 26.29%, respectively. Compared to the original AIC-based FPGA architecture, the area-delay product is reduced by 28.48% and 28.37%, respectively.
And-Inverter Cone (AIC); AIC cluster; Post-pack netlist statistics; Connective probability; Separately design; Dual-phases multiplexer input crossbar
TN402
A
1009-5896(2016)09-2397-08
10.11999/JEIT151216
2015-11-25;
2016-04-27;
2016-04-14
國家自然科學(xué)基金(61271149)
The National Natural Science Foundation of China (61271149)
楊海鋼 yanghg@mail.ie.ac.cn
黃志洪: 男,1984年生,博士生,助理研究員,研究方向為可編程邏輯結(jié)構(gòu)設(shè)計、嵌入式存儲器通道結(jié)構(gòu).
李 威: 女,1983 年生,助理研究員,研究方向為可編程芯片結(jié)構(gòu)設(shè)計.
楊立群: 女,1989年生,博士生,研究方向為FPGA架構(gòu)開發(fā)、FPGA CAD工具開發(fā).
江政泓: 男,1990年生,博士生,研究方向為FPGA架構(gòu)開發(fā)、FPGA的映射算法.
魏 星: 男,1991年生,博士生,研究方向為FPGA時鐘網(wǎng)絡(luò)優(yōu)化設(shè)計、DLL設(shè)計研究.
林 郁: 男,1982年生,助理研究員,研究方向為FPGA的CAD輔助設(shè)計、FPGA高層綜合.
楊海鋼: 男,1960年生,研究員,研究方向為數(shù)模混合信號集成電路設(shè)計、超大規(guī)模集成電路設(shè)計等.