新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 復(fù)用器重構(gòu)降低FPGA成本

復(fù)用器重構(gòu)降低FPGA成本

作者: 時間:2010-05-23 來源:網(wǎng)絡(luò) 收藏
摘 要: 本文介紹了一種新的重構(gòu)算法,能夠降低實際設(shè)計20%的成本。該算法通過減少所需查找表(LUT)的數(shù)量來實現(xiàn)。算法以效率更高的4:1替代2:1復(fù)用器樹。算法性能的關(guān)鍵在于尋找總線上出現(xiàn)的復(fù)用器數(shù)量。新的優(yōu)化方法占用一定的邏輯,這些邏輯由總線進行分擔(dān),從而減少了總線上每個比特位所需的邏輯。 (本站編者:該算法已經(jīng)集成在QuartusII4.2軟件中,使用QuartusIi進行綜合HDL語言時會自動調(diào)用該算法進行綜合,本文介紹該算法的詳情,本文適合希望深入了解算法的用戶閱讀)


關(guān)鍵詞: ;復(fù)用器;重構(gòu);重新編碼;總線;邏輯優(yōu)化;綜合

本文引用地址:http://butianyuan.cn/article/191710.htm

1. 引言


--- 復(fù)用器是數(shù)據(jù)通道常用的構(gòu)建模塊,被廣泛應(yīng)用在處理器[1]、處理器總線、網(wǎng)絡(luò)交換,甚至是資源共享的DSP設(shè)計中。據(jù)估計,復(fù)用器一般要占用一個設(shè)計[2] 25%以上的面積。因此,優(yōu)化FPGA設(shè)計的關(guān)鍵在于怎樣優(yōu)化復(fù)用器。


--- 本文介紹了一種新的復(fù)用器重構(gòu)算法,該算法減小了復(fù)用器在基于4輸入查找表(4-LUT)FPGA體系結(jié)構(gòu)中所占用的面積。基準(zhǔn)測試結(jié)果表明復(fù)用器平均減少了17%,在一些設(shè)計中,4-LUT整體減少20%。

--- 2.1節(jié)闡述了復(fù)用器是如何由行為級VHDL[4]或Verilog[5]代碼產(chǎn)生的,2.2和2.3節(jié)闡述復(fù)用器樹和復(fù)用器總線在設(shè)計中是怎樣生成的。2.4節(jié)說明這些結(jié)構(gòu)怎樣由4-LUT實現(xiàn),闡述如何采用兩個4-LUT有效實現(xiàn)一個4:1二進制復(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節(jié)的重構(gòu)方法用于執(zhí)行4.3節(jié)中定義的均衡算法。均衡增加了由壓縮生成的有效4:1復(fù)用器的數(shù)量。

--- 第5節(jié)總結(jié)了在Altera Quartus II集成綜合中運行的整個算法。第6節(jié)列出了來自120個Altera真實用戶設(shè)計實例的基準(zhǔn)測試結(jié)果,測試表明面積減少超過20%,平均節(jié)省了4.2%。

2. 背景知識


--- 2.1 復(fù)用器在設(shè)計中是怎樣實現(xiàn)的

--- 行為級HDL設(shè)計中的任何條件代碼通常會綜合為復(fù)用器。本節(jié)闡述兩個最常用的復(fù)用器生成代碼實例。
--- 圖1是VHDL的case聲明及其2:1復(fù)用器樹的實現(xiàn)。采用Verilog case聲明的“parallel case”指令[5]可產(chǎn)生相似的結(jié)果。

圖1


--- 注意,并不是所有的case聲明都能將可能的事件描述清楚,需要依靠“default”或者“others”條件來進一步說明。在這些情況下,可以繼續(xù)將case聲明表征為2:1復(fù)用器樹,但是這種樹結(jié)構(gòu)可能達不到平衡。

--- 圖2顯示了“if-then-else”聲明是怎樣產(chǎn)生一個2:1復(fù)用器鏈的。Verilog的“?:”和非平行cases可同樣產(chǎn)生相似的結(jié)構(gòu)。注意,復(fù)用器鏈確保如果第一個if條件為“真”,將選擇“a”數(shù)據(jù)輸入,而復(fù)用器其他部分將被忽略。

--- 本文闡述的復(fù)用器重構(gòu)算法應(yīng)用于2:1復(fù)用器。綜合工具由行為級代碼開始通常會生成較大的復(fù)用器。較大的復(fù)用器總是被分解為2:1復(fù)用器樹,如何實現(xiàn)這種分解已經(jīng)超出本文討論范圍。


圖2 if-then-else聲明生成的邏輯

圖3 HDL生成的復(fù)用器材



圖4 生成復(fù)用器總線


上一頁 1 2 3 下一頁

關(guān)鍵詞: FPGA 復(fù)用器

評論


相關(guān)推薦

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

關(guān)閉