乘法原理
Verilog描述
module MULT4B(R,A,B);
parameter S = 4;//4位乘法器
//参数定义关键词parameter(将常数用字符表示称为参数)
input [S:1] A,B;//A为被乘数,B为乘数
output [2*S:1] R;//R为乘积
integer i;//i为循环变量
reg [2*S:1] R;//always语句中的赋值目标必须为reg型
always @ (A or B)
begin
R = 0;
for(i=1;i<=S;i=i+1)//循环4次
if(B[i]) R = R + (A<<(i-1));//被乘数左移,与部分积相加
else R = R;
end
endmodule
算法二:循环变量减1,循环条件为循环变量>1;B<