20×18位符號定點乘法器的FPGA實現(xiàn)
摘要:在數(shù)字信號處理中經(jīng)常需要進(jìn)行乘法運算,乘法器的設(shè)計對整個器件的性能有很大的影響,在此介紹20×18比特定點陣列乘法器的設(shè)計。采用基4-Booth算法和4-2壓縮的方案,并采用先進(jìn)的集成電路工藝,使用SMIC O.18 μm標(biāo)準(zhǔn)單元庫,提高了乘法器的速度,節(jié)省了器件。利用Xilinx FPGA(xc2vp70-6ffl517)對乘法器進(jìn)行了綜合仿真,完成一次乘法運算的時間為15.922 ns,在減少乘法器器件的同時,提高了乘法器的速度,降低了器件的功耗。
關(guān)鍵詞:定點乘法器;Verilog HDL;Booth 算法;4-2壓縮;波形仿真
隨著計算機(jī)和信息技術(shù)的快速發(fā)展,人們對器件處理速度和性能的要求越來越高,在高速數(shù)字信號處理器(DSP)、微處理器和RSIC等各類芯片中,乘法器是必不可少的算術(shù)邏輯單元,且往往處于關(guān)鍵延時路徑中,乘法運算需要在一個時鐘周期內(nèi)完成,它完成一次乘法操作的周期基本上決定了微處理器的主頻,因此高性能的乘法器是現(xiàn)代微處理器及高速數(shù)字信號處理中的重要部件。目前國內(nèi)乘法器設(shè)計思想有4種,分別為:并行乘法器、移位相加乘法器、查找表乘法器、加法樹乘法器。其中,并行乘法器易于實現(xiàn),運算速度快,但耗用資源多,尤其是當(dāng)乘法運算位數(shù)較寬時,耗用資源會很龐大;移位相加乘法器設(shè)計思路是通過逐項移位相加實現(xiàn),其耗用器件少,但耗時鐘,速度慢;查找表乘法器將乘積直接放在存儲器中,將操作數(shù)作為地址訪問存儲器,得到的輸出數(shù)據(jù)就是乘法結(jié)果,該方法的速度只局限于存儲器的存儲速度,但隨乘數(shù)的位數(shù)增加,存儲器的空間會急劇增加,該方法不適合位數(shù)高的乘法操作;加法樹乘法器采用流水線結(jié)構(gòu),能在一個時鐘完成兩數(shù)相乘,但當(dāng)乘數(shù)的位數(shù)增加,流水線的級數(shù)增多,導(dǎo)致會使用很多寄存器,增加器件的耗用,而采用Booth算法的乘法器,會在速度、器件、精度、功耗方面有很大優(yōu)勢。
在此介紹了20×18比特定點陣列乘法器的設(shè)計,采用基4-Booth算法,4-2壓縮,基本邏輯單元為中芯國際(SMIC)公司O.18/μm工藝所提供的標(biāo)準(zhǔn)單元庫,在減少乘法器器件的同時,使系統(tǒng)具有高速度,低功耗的特點,并且結(jié)構(gòu)規(guī)則,易于FPGA的實現(xiàn),同時在ASIC設(shè)計中,也是一種很好的選擇。
l 乘法器結(jié)構(gòu)
20×18位乘法器的邏輯設(shè)計可分為:Booth編碼,部分積的產(chǎn)生,4-2壓縮樹,超前加法器,舍人溢出處理。其中。Booth算法可以減少50 %的部分乘積項,而4-2壓縮樹,減少求和的加數(shù)個數(shù),它可以減少加法器個數(shù),節(jié)省器件,與傳統(tǒng)方法比,同時少了串行累加或Wallace樹結(jié)構(gòu)中的多級傳遞延遲,從而提高整個乘法器的速度。
4-2壓縮完后最后的兩個數(shù),直接相加,其延時為一個超前進(jìn)位加法器的延時,得到結(jié)果后,再根據(jù)需要數(shù)據(jù)的精度,做溢出處理及四舍五入如圖1所示。
評論