1

always ブロック内でワイヤを使用できますか? たとえば、次のようにします。

        wire [3:0]a;
        assign a=3;

        always @(c)
           begin
                d=a+c;
           end

エラーをスローすることなくコンパイルされました。なんで?

4

1 に答える 1

5

はい、always ブロック内でワイヤの値を使用できます。always または initial ブロッ​​ク内のワイヤに値を割り当てることはできません。

wire と reg の唯一の実際の違いは、値を割り当てるための構文です。

上記の例では、d をワイヤとして作成することもできますが、これらは同等です。

reg [3:0] answer_reg;
always @* begin
  answer_reg = a + c;
end

wire [3:0] answer_wire;
assign answer_wire = a + c;
于 2013-02-28T06:06:48.660 に答える