Menu
Coddy logo textTech

まとめ - タイミング制御

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

challenge icon

チャレンジ

このチャレンジでは、ディレイ、ゲートディレイ、代入ディレイ、タイムスケール、およびクロック生成についての理解をテストします。

作業内容:

  1. 1ns / 1ps を指定した timescale ディレクティブを追加する
  2. 5時間単位ごとに反転するクロックを生成する
  3. 3時間単位のゲートディレイを持つ AND ゲートを追加する
  4. 代入ディレイを使用して、2時間単位後に ab に代入する(a の値は即座に読み取る)

自分で試してみよう

// TODO: timescaleディレクティブを追加 (1ns / 1ps)


module timing_challenge;
  reg clk;
  reg a, b;
  wire out;
  
  initial begin
    clk = 0;
  end
  
  // TODO: 5時間単位ごとにトグルするクロックを生成
  
  
  // TODO: 3時間単位の遅延を持つANDゲートを追加 (入力 a, b, 出力 out)
  
  
  initial begin
    $monitor("Time %0t: clk=%b, a=%b, b=%b, out=%b", $time, clk, a, b, out);
    
    a = 1;
    
    // TODO: 代入遅延を使用して2時間単位後にaをbに代入
    // 今aを読み取り、2時間単位後にbに代入
    
    
    #20;
    $finish;
  end
endmodule

基礎のすべてのレッスン