结构推理
分析下面的Verilog HDL源程序,说明该代码描述的电路的功能。
module mult(cout,a,b);
parameter size=8;
input[size:1] a,b;
output [2*size:1] cout;
reg[2*size:1]a_reg,cout;
reg[size:1]b_reg;
integer;
always @(a or b)
begin
cout=0;
a_reg=a;
b_reg=b;
for (n=1;n<=size;n=n+1)
begin
if(b_reg[l])
begin
cout=cout+a_reg;
a_reg=a_reg<< 1;
b_reg=b-reg>>1;
end
else
begin
a-reg=a_reg<<1;
b-reg=b_reg>>1;
end
end
end
endmodule