verilog四位二进制乘法器代码和测试代码
时间: 2023-07-02 18:09:40 浏览: 239
以下是一个简单的四位二进制乘法器的 Verilog 代码和测试代码:
```
module multiplier(input [3:0] a, b,
output reg [7:0] result);
always @ (a, b)
begin
result = a * b;
end
endmodule
module multiplier_tb;
reg [3:0] a;
reg [3:0] b;
wire [7:0] result;
multiplier dut(.a(a), .b(b), .result(result));
initial begin
a = 4'b0000;
b = 4'b0000;
#10;
a = 4'b0000;
b = 4'b0001;
#10;
a = 4'b0001;
b = 4'b0000;
#10;
a = 4'b0001;
b = 4'b0001;
#10;
a = 4'b0010;
b = 4'b0010;
#10;
end
endmodule
```
在这个例子中,`multiplier` 模块实现了一个四位二进制乘法器,输入 `a` 和 `b` 是四位宽的二进制数,输出 `result` 是一个八位宽的二进制数。测试模块 `multiplier_tb` 通过改变 `a` 和 `b` 的值来测试乘法器的功能。在这个例子中,我们测试了五个不同的输入组合。
阅读全文