新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 20×18位符號定點乘法器的FPGA實現

        20×18位符號定點乘法器的FPGA實現

        作者: 時間:2009-06-16 來源:網絡 收藏

        2 32位浮點乘法器的實現與仿真測試
        該模塊仿真實現用Mentor Graphics公司的Model-Sim SE 6.0d仿真軟件,圖5列出本設計的:仿真結果。圖5中in1是被乘數20 b。in2是乘數18 b。reset是復位清零信號,低電平有效。booth_multiplier_out是用Booth編碼乘法器算出來的結果38 b。derect_multiplier_out是直接用乘號“×”得到的結果,也是18 b。兩者結果一致。round_out是舍入后的結果,20 b。eq是測試時加的一個1 b信號,如果booth_multiplier_out和derect_multiplier_out相等為1,否則為0。
        由于在測試時,將輸入和輸出都用寄存器鎖存了一個時種clk,最后輸出結果延了2個時種clk,在圖5中,第一個時種clk,輸入乘數和被乘數分別為126 999,68 850;輸出結果為第3個時種clk的8 743 881 150。因為126 999×68 850=8 743 881 150,故結果正確。在測試時,因實際數據量比較大,in1從-219~219-1,ModelSim SE 6.0d仿真軟件需要運行大概1 min,若in1從-219~219-1,in2從-217~217-1大概需要時間T=218min=4 369 h=182 day,因此在PC機上不能全測,故在寫testbench時,用random函數產生隨機數測試,該乘法器用ModelSim仿真軟件運行12 h,eq信號始終為1,即乘法器算出的結果與直接乘的結果一致,認為該方法完全可行。

        本文引用地址:http://www.104case.com/article/192021.htm

        3 性能比較與創新
        該模塊用Synplify Pro8.1綜合,用XilinxISE 7.1i實現布局布線。在Xilinx ISE中ImplementDesign下Map報告系統占用資源如表2所示。

        而靜態時序分析報告顯示速度和延時分別為62.805 MHz,15.922 ns。
        該設計采用高壓縮率的4―2壓縮算法,壓縮率為50%,而一般的3-2壓縮壓縮率為33%,并且采用先進的集成電路制造工藝,使用SMIC公司O.18μm的標準單元庫,因此在提高了速度的同時,能減少器件,該乘法器能在1個時鐘內完成,不像采用流水線結構,雖然可以提高速度到105.38 MHz,但需3個時鐘,需要大量鎖存器,從而在增加器件的同時增加功耗,而且完成一次乘法運算時間要24.30 ns。因國內集成電路制造起步晚,目前中國80%的集成電路設計公司還在采用0.35/μm及以下工藝,國內同類乘法器,采用上華0.5 μm的標準單元庫,完成1次乘法運算時間接近30 ns,邏輯單元是1 914個。但該設計完成1次乘法運算時間僅15.922 ns,器件只有494個Slices,性能明顯提高。


        4 結 語
        給出了20×18位的設計,整個設計采用了Verilog HDL語言進行結構描述,采用的器件是xc2vp70-6ff1517。該設計采用基4 Booth編碼,4-2壓縮,以及采用SMIC0.18μm標準單元庫,使得該乘法器面積降低的同時,延時也得到了減小,做到芯片性能和設計復雜度之間的良好折中,該設計應用于中國地面數字電視廣播(DTMB)ASIC中3 780點FFT單元的20×18位,在60 MHz時工作良好,達到了預定的性能要求,具有一定的實用價值。


        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 哈尔滨市| 额济纳旗| 苏州市| 大新县| 新晃| 河津市| 涿州市| 灵丘县| 张北县| 武强县| 手游| 昌宁县| 柘城县| 建湖县| 巴彦淖尔市| 海阳市| 互助| 无棣县| 册亨县| 襄城县| 绥德县| 丰县| 梁山县| 祥云县| 怀柔区| 连云港市| 兴义市| 都兰县| 应用必备| 平湖市| 龙口市| 临海市| 滁州市| 舟山市| 永济市| 岫岩| 宣汉县| 衡阳县| 邹平县| 铜陵市| 杭锦旗|