在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

乘法器的Verilog HDL實(shí)現(xiàn)方案

FPGA之家 ? 來源:FPGA之家 ? 2023-06-21 09:01 ? 次閱讀

801e20e8-0fc7-11ee-962d-dac502259ad0.png

1. 串行乘法器

兩個(gè)N位二進(jìn)制數(shù)x、y的乘積用簡(jiǎn)單的方法計(jì)算就是利用移位操作來實(shí)現(xiàn)。

module multi_CX(clk, x, y, result);
    
    input clk;
    input [7:0] x, y;
    output [15:0] result;

    reg [15:0] result;

    parameter s0 = 0, s1 = 1, s2 = 2;
    reg [2:0] count = 0;
    reg [1:0] state = 0;
    reg [15:0] P, T;
    reg [7:0] y_reg;

    always @(posedge clk) begin
        case (state)
            s0: begin
                count <= 0;
                P <= 0;
                y_reg <= y;
                T <= {{8{1'b0}}, x};
                state <= s1;
            end
            s1: begin
                if(count == 3'b111)
                    state <= s2;
                else begin
                    if(y_reg[0] == 1'b1)
                        P <= P + T;
                    else
                        P <= P;
                    y_reg <= y_reg >> 1;
                    T <= T << 1;
                    count <= count + 1;
                    state <= s1;
                end
            end
            s2: begin
                result <= P;
                state <= s0;
            end
            default: ;
        endcase
    end

endmodule

乘法功能是正確的,但計(jì)算一次乘法需要8個(gè)周期。因此可以看出串行乘法器速度比較慢、時(shí)延大,但這種乘法器的優(yōu)點(diǎn)是所占用的資源是所有類型乘法器中最少的,在低速的信號(hào)處理中有著廣泛的應(yīng)用。

2.流水線乘法器

一般的快速乘法器通常采用逐位并行的迭代陣列結(jié)構(gòu),將每個(gè)操作數(shù)的N位都并行地提交給乘法器。但是一般對(duì)于FPGA來講,進(jìn)位的速度快于加法的速度,這種陣列結(jié)構(gòu)并不是最優(yōu)的。所以可以采用多級(jí)流水線的形式,將相鄰的兩個(gè)部分乘積結(jié)果再加到最終的輸出乘積上,即排成一個(gè)二叉樹形式的結(jié)構(gòu),這樣對(duì)于N位乘法器需要lb(N)級(jí)來實(shí)現(xiàn)。

module multi_4bits_pipelining(mul_a, mul_b, clk, rst_n, mul_out);
    
    input [3:0] mul_a, mul_b;
    input       clk;
    input       rst_n;
    output [7:0] mul_out;

    reg [7:0] mul_out;

    reg [7:0] stored0;
    reg [7:0] stored1;
    reg [7:0] stored2;
    reg [7:0] stored3;

    reg [7:0] add01;
    reg [7:0] add23;

    always @(posedge clk or negedge rst_n) begin
        if(!rst_n) begin
            mul_out <= 0;
            stored0 <= 0;
            stored1 <= 0;
            stored2 <= 0;
            stored3 <= 0;
            add01 <= 0;
            add23 <= 0;
        end
        else begin
            stored0 <= mul_b[0]? {4'b0, mul_a} : 8'b0;
            stored1 <= mul_b[1]? {3'b0, mul_a, 1'b0} : 8'b0;
            stored2 <= mul_b[2]? {2'b0, mul_a, 2'b0} : 8'b0;
            stored3 <= mul_b[3]? {1'b0, mul_a, 3'b0} : 8'b0;

            add01 <= stored1 + stored0;
            add23 <= stored3 + stored2;

            mul_out <= add01 + add23;
        end
    end

endmodule

從圖中可以看出,流水線乘法器比串行乘法器的速度快很多很多,在非高速的信號(hào)處理中有廣泛的應(yīng)用。至于高速信號(hào)的乘法一般需要利用FPGA芯片中內(nèi)嵌的硬核DSP單元來實(shí)現(xiàn)。





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA設(shè)計(jì)
    +關(guān)注

    關(guān)注

    9

    文章

    428

    瀏覽量

    26643
  • HDL
    HDL
    +關(guān)注

    關(guān)注

    8

    文章

    328

    瀏覽量

    47482
  • 乘法器
    +關(guān)注

    關(guān)注

    8

    文章

    206

    瀏覽量

    37209
  • Verilog語言
    +關(guān)注

    關(guān)注

    0

    文章

    113

    瀏覽量

    8310

原文標(biāo)題:乘法器的Verilog HDL實(shí)現(xiàn)

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    verilog乘法器延時(shí)問題

    剛剛學(xué)習(xí)verilog,夏宇聞的《verilog數(shù)字系統(tǒng)設(shè)計(jì)教程(第三版)》中,P143中圖10.3,乘法器延時(shí)為1個(gè)與門和8個(gè)全加器的延時(shí),為什么是 8 個(gè)?我覺得應(yīng)該是 10 個(gè)全加器延時(shí),請(qǐng)求大神幫忙解答一下,謝了。
    發(fā)表于 10-10 23:04

    乘法器的移位累加

    請(qǐng)問關(guān)于乘法器Verilog 程序中,移位累加具體每一步是怎么走的,自己琢磨了一番,感覺不是太懂,求高手解釋。(明白二進(jìn)制乘法的計(jì)算過程)
    發(fā)表于 10-17 23:08

    Verilog中用*實(shí)現(xiàn)乘法和用乘法器ip核實(shí)現(xiàn)乘法的區(qū)別?

    Verilog中用*實(shí)現(xiàn)乘法和用乘法器ip核實(shí)現(xiàn)乘法綜合結(jié)果有哪些不同?
    發(fā)表于 03-18 09:35

    FPGA乘法器設(shè)計(jì)

    剛接觸學(xué)習(xí)FPGA,懂得verilog HDL的基礎(chǔ)語法,有一塊帶XILINX的ZYNQ xc7z020的開發(fā)板,開發(fā)軟件用的是vivado;現(xiàn)在要設(shè)計(jì)一個(gè)16位的乘法器,功能已經(jīng)實(shí)現(xiàn)
    發(fā)表于 02-25 16:03

    硬件乘法器是怎么實(shí)現(xiàn)的?

    硬件乘法器是怎么實(shí)現(xiàn)
    發(fā)表于 09-22 06:53

    基于Verilog HDL設(shè)計(jì)實(shí)現(xiàn)乘法器性能研究

    本文在設(shè)計(jì)實(shí)現(xiàn)乘法器時(shí),采用了4-2 和5-2 混合壓縮器對(duì)部分積進(jìn)行壓縮,減少了乘法器的延時(shí)和資源占用率;經(jīng)Xilinx ISE 和Quartus II 兩種集成開發(fā)環(huán)境下的綜合仿真測(cè)試,與用
    發(fā)表于 09-17 11:13 ?27次下載

    乘法器的基本概念

    乘法器的基本概念 乘法器是一種完成兩個(gè)互不相關(guān)的模擬信號(hào)相乘作用的電子器件。理想乘法器的輸出特性方程可由下式表示: UO
    發(fā)表于 05-18 14:03 ?1.5w次閱讀
    <b class='flag-5'>乘法器</b>的基本概念

    1/4平方乘法器

    1/4平方乘法器 這種乘法器是根據(jù)數(shù)學(xué)關(guān)系設(shè)計(jì)而成的,因此稱為1/4平方乘法電路,或稱1/4平方乘法器。其
    發(fā)表于 05-18 14:08 ?2017次閱讀
    1/4平方<b class='flag-5'>乘法器</b>

    脈沖-寬度-高度調(diào)制乘法器

    脈沖-寬度-高度調(diào)制乘法器 脈沖-寬度-高度調(diào)制乘法器雙稱為時(shí)間分割乘法器。這類乘法器電路原理圖如圖5.4-24A所示。圖中,三角波電壓UT和模擬輸入電壓UY
    發(fā)表于 05-18 14:23 ?2085次閱讀
    脈沖-寬度-高度調(diào)制<b class='flag-5'>乘法器</b>

    變跨導(dǎo)乘法器

    變跨導(dǎo)乘法器 這種乘法器現(xiàn)在已經(jīng)成為一種工業(yè)上的標(biāo)準(zhǔn)方法,是應(yīng)用極為廣泛的優(yōu)質(zhì)乘法器。
    發(fā)表于 05-18 16:00 ?1275次閱讀

    基于IP核的乘法器設(shè)計(jì)

    實(shí)驗(yàn)?zāi)康?1、熟悉Xilinx的ISE 軟件的使用和設(shè)計(jì)流程; 2、掌握Modelsim仿真軟件的使用方法; 3、用乘法運(yùn)算符實(shí)現(xiàn)一個(gè)16*16 乘法器模塊; 4、用IP核實(shí)現(xiàn)一個(gè)16
    發(fā)表于 05-20 17:00 ?68次下載
    基于IP核的<b class='flag-5'>乘法器</b>設(shè)計(jì)

    8乘8乘法器verilog源代碼

    8乘8乘法器verilog源代碼,有需要的下來看看
    發(fā)表于 05-23 18:21 ?24次下載

    使用verilogHDL實(shí)現(xiàn)乘法器

    本文在設(shè)計(jì)實(shí)現(xiàn)乘法器時(shí),采用了4-2和5-2混合壓縮器對(duì)部分積進(jìn)行壓縮,減少了乘法器的延時(shí)和資源占 用率;經(jīng)XilinxISE和QuartusII兩種集成開發(fā)環(huán)境下的綜合仿真測(cè)試,與用
    發(fā)表于 12-19 13:30 ?1.1w次閱讀
    使用verilogHDL<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>乘法器</b>

    乘法器原理_乘法器的作用

    乘法器(multiplier)是一種完成兩個(gè)互不相關(guān)的模擬信號(hào)相乘作用的電子器件。它可以將兩個(gè)二進(jìn)制數(shù)相乘,它是由更基本的加法器組成的。乘法器可以通過使用一系列計(jì)算機(jī)算數(shù)技術(shù)來實(shí)現(xiàn)。
    發(fā)表于 02-18 15:08 ?2.7w次閱讀
    <b class='flag-5'>乘法器</b>原理_<b class='flag-5'>乘法器</b>的作用

    采用Gillbert單元如何實(shí)現(xiàn)CMOS模擬乘法器的應(yīng)用設(shè)計(jì)

    在集成電路系統(tǒng)中,模擬乘法器在信號(hào)調(diào)制解調(diào)、鑒相、頻率轉(zhuǎn)換、自動(dòng)增益控制和功率因數(shù)校正控制等許多方面有著非常廣泛的應(yīng)用。實(shí)現(xiàn)模擬乘法器的方法有很多,按采用的工藝不同,可以分為三極管乘法器
    的頭像 發(fā)表于 03-23 09:40 ?5583次閱讀
    采用Gillbert單元如何<b class='flag-5'>實(shí)現(xiàn)</b>CMOS模擬<b class='flag-5'>乘法器</b>的應(yīng)用設(shè)計(jì)
    主站蜘蛛池模板: 亚洲欧美日本综合 | 狠狠色丁香婷婷久久 | 女同激情视频 | 色五月在线视频 | 午夜在线视频观看版 | 午夜剧场一级片 | 久久久久国产一级毛片高清片 | 天天操天天曰 | 羞涩妩媚玉腿呻吟嗯啊销魂迎合 | 奇米小说 | 亚洲一区在线视频 | 天天操天天干天天干 | 国产图片综合 | 日韩a无吗一区二区三区 | 午夜精品久久久久久久第一页 | 小屁孩cao大人免费网站 | h国产在线观看 | 欧美亚洲天堂 | 一本大道加勒比久久 | 99视频全部免费 | 久久久福利 | 亚洲欧美国产五月天综合 | 最新激情网址 | 91视频观看 | 色婷婷六月丁香七月婷婷 | 卡1卡2卡3精品推荐老狼 | 特级黄色免费片 | 成人免费午间影院在线观看 | 亚洲偷自偷白图片 | 性欧美一区 | www.亚洲.com | 男人和女人做免费做爽爽视频 | 男人午夜视频在线观看 | 久久精品屋 | 黄的三级在线播放 | 久久澡人人澡狠狠澡 | 国产单男 | 色久优优| 日日拍拍| 亚洲 欧美 精品专区 极品 | 成人永久免费视频网站在线观看 |