chengfa.v

来自「用VerilogHDL的16*16乘法器的设计实现」· Verilog 代码 · 共 29 行

V
29
字号
/*16位移位相加乘法器*/
module chengfa(result,a,b,clk);
output[31:0] result;
input[15:0] a,b;
input clk;
reg[31:0] result,atemp;
reg[15:0] btemp;
reg qb;
integer i;
always @(posedge clk)
      begin  
         if(i==0)
              begin
               atemp[15:0]=a;btemp[15:0]=b;
                   result =32'h0000;
              end
          else if(i>0)
               begin
                 qb=btemp[0];
                 btemp[14:0]=btemp[15:1];
                 if(qb==1)
                    result=result+atemp;
                    atemp=atemp<<1;
               end
               i=i+1;
               if(i>15)
                   i=0;
      end
endmodule      

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?