テストベンチの記述
CoddyのVerilogジャーニー「基礎」セクションの一部 — レッスン 45/90。
チャレンジ
次に、半加算器が正しく動作しているかテストする必要があります。initial ブロックの中にテストコードを追加してください。
重要: テストを追加する前に、テストが適切に動作するようにモジュールのポートを変更する必要があります。
手順:
ステップ 1: ポート宣言の変更
input a, bをreg a, bに変更します(セミコロンを使用してください)output sum, carryをwire sum, carryに変更します(セミコロンを使用してください)- モジュールのポートを完全に削除します(モジュールに
( )がない状態にします)
ステップ 2: テストコードの追加
initial beginブロックを追加します- ブロックの中に、以下を追加します:
$display("a b | sum carry");
a = 0; b = 0; #1 $display("%d %d | %d %d", a, b, sum, carry);
a = 0; b = 1; #1 $display("%d %d | %d %d", a, b, sum, carry);
a = 1; b = 0; #1 $display("%d %d | %d %d", a, b, sum, carry);
a = 1; b = 1; #1 $display("%d %d | %d %d", a, b, sum, carry);
- テストを終了するために
$finish;を追加します - initial ブロックを閉じるために
endを追加します
自分で試してみよう
module half_adder (
input a,
input b,
output sum,
output carry
);
assign sum = a ^ b;
assign carry = a & b;
endmodule