Menu
Coddy logo textTech

復習 - 再利用可能なビットマスク

CoddyのVerilogジャーニー「RTL設計と検証」セクションの一部。レッスン 15/38。

challenge icon

チャレンジ

中級

WIDTHビットのビットクリア回路を、名前付きのgenerateループで構築してください。各出力ビットは、対応する位置の a のビットと、その位置の b の逆の値との AND になります。b はクリアマスクです。WIDTHは正の値です。ロックされたテストベンチは、WIDTHの値として 1、4、8 をインスタンス化し、幅の狭いインスタンスでは a と b の下位ビットを使用します。出力列は10進数の y1、y4、y8 です。

design.vを完成させ、モジュール名とポートを保持してください。ロックされたtestbench.vは入力を変更し、値が安定した後に出力を表示します。+CASE=1のようなシミュレータ引数を使用してシナリオを選択します。標準入力は必要ありません。design に表示、遅延、またはシミュレーション終了処理を追加しないでください。期待される出力は、各観測につき10進数値を1行に1つ出力し、値同士は1つのスペースで区切り、改行で終わります。

自分で試してみよう

module dut #(parameter WIDTH=4) (input [WIDTH-1:0] a,b, output [WIDTH-1:0] y);
    // パラメータ化された回路を実装する。
    assign y = 0;
endmodule

RTL設計と検証のすべてのレッスン

自分で練習してみよう: Verilogオンラインコンパイラ