基于FPGA的WALLACE TREE乘法器設(shè)計(jì)
摘要:為了使基于FPGA設(shè)計(jì)的信號(hào)處理系統(tǒng)具有更高運(yùn)行速度和具有更優(yōu)化的電路版圖布局布線,提出了一種適用于FPGA結(jié)構(gòu)的改進(jìn)型WALLACE TREE架構(gòu)乘法器。首先討論了基于標(biāo)準(zhǔn)單元3:2壓縮器的改進(jìn)型6:4壓縮器,根據(jù)FPGA中slice的結(jié)構(gòu)特點(diǎn)通過在FPGA Editer軟件工具編輯,對(duì)該壓縮器進(jìn)行邏輯優(yōu)化,將其應(yīng)用于FPGA的基本單元slice結(jié)構(gòu)中。并對(duì)乘法器的其他部分結(jié)構(gòu)優(yōu)化整合,實(shí)現(xiàn)一個(gè)資源和性能達(dá)到合理平衡,且易于在FPGA中實(shí)現(xiàn)的乘法器。實(shí)際運(yùn)行結(jié)果表明,該乘法器的關(guān)鍵路徑延時(shí)小于8.4 ns,使乘法器時(shí)鐘頻率和系統(tǒng)性能都得到很大提高。
關(guān)鍵詞:乘法器;WALLACE;FPGA;6:4壓縮器
在數(shù)字信號(hào)處理中,乘法器是整個(gè)硬件電路時(shí)序的關(guān)鍵路徑。速度和面積的優(yōu)化是乘法器設(shè)計(jì)過程的兩個(gè)主要考慮因素。由于現(xiàn)代可編程邏輯芯片F(xiàn)PGA的集成度越來越高,及其相對(duì)于ASIC設(shè)計(jì)難度較低和產(chǎn)品設(shè)計(jì)周期短,受到很多廠家和研究機(jī)構(gòu)的關(guān)注。利用它的可編程和可擴(kuò)展性,可將傳統(tǒng)乘法器設(shè)計(jì)方法應(yīng)用到FPGA芯片中。乘法器設(shè)計(jì)基本上是部分積的生成及其之間的相加的優(yōu)化過程。針對(duì)FPGA內(nèi)部固有結(jié)構(gòu)的特點(diǎn),本文著重介紹了一種基于WALLACETREE優(yōu)化算法的改進(jìn)型乘法器架構(gòu)。根據(jù)FPGA內(nèi)部標(biāo)準(zhǔn)獨(dú)特slice單元,有必要對(duì)WALLACE TREE部分單元加以研究?jī)?yōu)化,從而讓在FPGA的乘法器設(shè)計(jì)中的關(guān)鍵路徑時(shí)延得以減小,整體時(shí)鐘性能得以提高。也能夠使FPGA的面積資源合理優(yōu)化,提高器件的整體資源利用率。
1 WALLACE TREE結(jié)構(gòu)
WALLACE TREE是對(duì)部分積規(guī)約,減小乘法器關(guān)鍵路徑時(shí)延的一種算法。傳統(tǒng)WALLACE TREE結(jié)構(gòu)的CSA(Carry Save Adder)陣列乘法器如圖1所示,其中“·”代表生成的多個(gè)部分乘積項(xiàng),相應(yīng)電路中用邏輯與門來實(shí)現(xiàn)。求和陣列將前面生成的多個(gè)部分積通過3:2 CSA壓縮器,將其壓縮成2個(gè)部分積,最后通過末級(jí)進(jìn)位相加得到所需的最終乘積結(jié)果。圖中矩形框所示為3:2 CSA壓縮器,其電路邏輯等效于一個(gè)全加器結(jié)構(gòu)。通過運(yùn)算可知N個(gè)部分積,要經(jīng)類似的log(2N/3)級(jí)3:2壓縮,就可得到2個(gè)部分積。
2 壓縮器的優(yōu)化
由于FPGA內(nèi)部的結(jié)構(gòu)是固定的,沒有以上WALLACE TREE所需要的CSA標(biāo)準(zhǔn)全加器結(jié)構(gòu)。因此,在傳統(tǒng)的FPGA電路綜合實(shí)現(xiàn)時(shí),該CSA全加
器被綜合在FPGA內(nèi)部查找表(LUT)和進(jìn)位鏈中,占用了整個(gè)slice單元的資源。由于經(jīng)典WALLACETREE結(jié)構(gòu)不具有良好的對(duì)稱性且需要權(quán)重對(duì)齊等因素,勢(shì)必要增大FPGA電路的復(fù)雜度,增加大量的FPGA內(nèi)部布局和布線資源,在FPGA中不規(guī)則的布局布線結(jié)構(gòu),也增大了關(guān)鍵路徑的時(shí)延。
為在FPGA中較好地實(shí)現(xiàn)WALLACE TREE結(jié)構(gòu),結(jié)合FPGA中最小標(biāo)準(zhǔn)單元的結(jié)構(gòu)silce,對(duì)CSA全加器單元結(jié)構(gòu)加以改進(jìn)。如圖2所示,可將WALLACE TREE相鄰的平級(jí)3:2 CSA壓縮器合并成一個(gè)6:4壓縮器。該壓縮器只需使用1個(gè)FPGA的silce資源,就能實(shí)現(xiàn)其數(shù)字邏輯。下面以3×3乘法器為例,進(jìn)行WALLACE TREE壓縮器的推導(dǎo)和優(yōu)化。如圖2的第一個(gè)部分積,部分積低位空白應(yīng)補(bǔ)0,高位空白位用該部分積的最高位補(bǔ)齊。
評(píng)論