Wire型
CoddyのVerilogジャーニー「基礎」セクションの一部 — レッスン 6/90。
Verilogでは、使用する信号の型を宣言する必要があります。最も一般的な型はwireです。
wireは、コンポーネント間の物理的な接続を表します。それは回路内の実際の電線のようなものです。
- ワイヤは値を保持できません。単に値を通過させるだけです。
- ワイヤは
assign文で使用されます。 - ワイヤはモジュール同士を接続するために使用されます。
Wireの宣言
wire a; // 1ビットのワイヤ
wire b, c; // 1行で複数のワイヤワイヤの仕組み
module wire_example;
wire x;
reg y;
assign x = y; // xは常にyに従います
endmodulex は y に接続されています。y が変更されるたびに、x は即座に変更されます。
ワイヤは、一般的に入力と出力を接続するために使用されます:
module and_gate(
input a, // 'a' はデフォルトでワイヤです
input b, // 'b' はデフォルトでワイヤです
output c // 'c' はデフォルトでワイヤです
);
assign c = a & b; // c はこの代入によって駆動されます
endmoduleこの例では、a、b、およびcはすべてワイヤです。
ワイヤは、回路のさまざまな部分を接続する「接着剤」です!
チャレンジ
やってみよう:
tempという名前のwireを追加してください
チートシート
Wire はコンポーネント間の物理的な接続を表します。ワイヤは値を保持することはできません。単に値を通過させるだけです。
wire a; // 1ビットのワイヤ
wire b, c; // 1行に複数のワイヤワイヤは assign 文と一緒に使用されます。ソースが変更されると、ワイヤは即座に更新されます:
wire x;
assign x = y; // xは常にyに従いますモジュールの入力と出力は、デフォルトでワイヤです:
module and_gate(
input a, // デフォルトでワイヤ
input b, // デフォルトでワイヤ
output c // デフォルトでワイヤ
);
assign c = a & b;
endmodule自分で試してみよう
module simple(
input a,
input b,
output c
);
assign c = a & b;
// ここでwire tempを宣言します
endmoduleこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。