设计24位无符号数乘法器
法一
author : Mr.Mao
e-mail : [email protected]
module muln
#( parameter N=24)
(
input [N-1:0] A,
input [N-1:0] B,
output [2*N-1:0] R
);
assign R = A * B;
endmodule
法二
author : Mr.Mao
e-mail : [email protected]
//四位乘法器
module MULT4B(A, B, R) ; //使用移位相乘法实现
parameter S = 4 ;
input [S:1] A, B ; //乘数与被乘数为4位二进制
output reg [S*2:1] R ; //得数为4+4=8 位
integer i ;
always@(*)
begin
R = 0 ;
for(i=1; i<S; i=i+1)
if(B[i]) R = R + (A<<(i-1)) ;
end
endmodule