2

以下のモジュールがあります:

module bai1c(a, b0, b1, b2, b3, c);
    input [2:0] a;
    input [3:0] b0, b1, b2, b3;
    output reg[3:0] c;

    always @(a or b0 or b1 or b2 or b3) begin
        casez(a)
            3'b000: c = b0;
            3'b001: c = b1;
            3'b010: c = b2;
            3'b011: c = b3;
            3'b1??: c = 4'b0000;
        endcase
    end
endmodule

どんな回路が合成されますか?状態が3'b1??発生したとき?(何??ですか?)

4

1 に答える 1

3

?はドントケア値です。つまり、0、1、またはzのいずれかに一致します。だから3'b1?? 他の2ビットが何であっても、最初のビットが1の場合は常に大文字と小文字が区別されます。

回路は基本的に4:1マルチプレクサであり、b0、b1、b2、b3のいずれaかを選択し、他の2つの選択ビットに関係なく出力を強制的に0にする選択ビットが追加されています。

于 2012-12-30T16:42:51.660 に答える