一、乘法器原理
1、我们先看十进制的乘法过程
可以看出来,我们是分别用乘数的个位、十位、百位与被乘数相乘分别得到 ;
最后的结果 等于 A + B10 + C100 = 401050
2、二进制的乘法过程
可以看出来,二进制乘法和十进制是一致的
最后的结果 等于 A + B2 + C4 + D*8 = 1991
二、verilog代码实现
mult4bit.v
module mult4bit(
input [3:0] a,
input [3:0] b,
output [7:0] y
);
wire [7:0] temp1;
wire [7:0] temp2;
wire [7:0] temp3;
wire [7:0] temp4;
assign temp1 = {4'b0000,a&{4{b[0]}}};
assign temp2 = {3'b000,a&{4{b[1]}},1'b0};
assign temp3 = {2'b00,a&{4{b[2]}},2'b0};
assign temp4 = {1'b0,a&{4{b[3]}},3'b0};

本文详细介绍了4位乘法器和除法器的原理,通过Verilog实现并进行了仿真验证。乘法器的Verilog代码为`mult4bit.v`,除法器的代码为`div4bit.v`,仿真结果表明设计正确。
最低0.47元/天 解锁文章


被折叠的 条评论
为什么被折叠?



