Verilog 4位乘法器?

时间:2013-03-01 19:32:01

标签: verilog

我遇到了如何为以下Verilog代码创建测试模块的问题:

module Multiplier_4bit(output [8:0] y, input [3:0] i1, input [3:0] i2);
assign y=i1*i2;
endmodule

我想到了以下测试模块:

module M4_Tester
reg [3:0] i1;
reg [3:0] i2;
wire [9:0] y;
initial begin
i1=5;
i2=3;
$finish();
Multiplier_4bit device1(
  .out(y),
  .in0(i1),
  .in1(i2)
);  

endmodule

如果我错了,请纠正我,抱歉英语不好,因为我不是母语。 提前谢谢。

1 个答案:

答案 0 :(得分:2)

  1. 您无法在开始块内实例化模块(将乘数放在initial begin块之外的某个位置。

  2. 您没有关闭end块的相应initial begin

  3. 您的模拟将立即终止,因为在设置值和$finish之间没有延迟。在模拟完成#10 $finish()之前加上一些标称时间延迟。

  4. 下次请在询问前澄清您的问题,并发布您收到的实际错误消息。