0

I'm having problems on how to create a test module for the following Verilog code:

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

I thought of the following test module:

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

Please correct me if I'm wrong and sorry for bad english, as I am not a native speaker. Thanks in advance.

4

1 に答える 1

2
  1. begin ブロック内でモジュールをインスタンス化することはできません (乗数をinitial beginブロックの外のどこかに配置します。

  2. ブロックendを閉じる対応するものはありません。initial begin

  3. 値の設定と の間に遅延がないため、シミュレーションは即座に終了します$finish。シミュレーションが で終了する前に、公称時間遅延を設定し#10 $finish()ます。

次回は質問する前に質問を明確にし、受け取った実際のエラー メッセージを投稿してください。

于 2013-03-01T20:08:06.533 に答える