Menu
Coddy logo textTech

Reg型

CoddyのVerilogジャーニー「基礎」セクションの一部 — レッスン 7/90。

Reg は Verilog における 2 番目の主要なデータ型です。wire とは異なり、reg は値を格納します。それは、何かがそれを変更するまで値を保持する変数です。

  • reg は値を保持できます
  • regalways ブロック内で使用されます
  • reg はハードウェアにおける「レジスタ」を意味するわけではありません。単に「ストレージ(記憶)」を意味します

regの宣言

reg x;           // 1ビットのreg
reg y, z;        // 1行で複数のreg

reg の仕組み

module reg_example;
  reg x;
  
  initial begin
    x = 0;           // x は 0 になります
    $display("x = %d", x);  // 出力: x = 0
    
    x = 1;           // x は 1 になります
    $display("x = %d", x);  // 出力: x = 1
  end
endmodule
challenge icon

チャレンジ

やること:

  1. count という名前の reg を追加してください 

チートシート

reg は値を格納し、変更されるまでその値を保持します。always ブロックまたは initial ブロックの内部で使用されます。

reg x;       // 1ビットのreg
reg y, z;    // 複数のreg
initial begin
  x = 0;  // 値を代入
  x = 1;  // 値を更新
end

自分で試してみよう

module counter(
  input clk,
  input reset,
  output out   // デフォルトでは wire (reg を削除)
);
  
  // ここで reg count を宣言する

  
endmodule
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン