initial 與 always 語句


initial語句

  initial 語句從仿真0時刻開始,在整個仿真過程中只執行一次。如果一個模塊包含不同的initial塊,那么他們從0時刻開始並發執行,且執行是相互獨立的。

由於其只執行一次,所以一般被用於初始化,信號監視,生成仿真波形(initial語句內部是順序執行的,例如:

      initial begin

       #10  a = 5;

       #10 b = 4;

      end

結果為10:a = 5;

   20:   b = 4;

 

alway語句

       always語句也是從仿真0時刻開始順序執行,且執行完最后一條語句時,又回過頭來執行第一條語句,循環直至仿真結束。通常用來對數字電路中一組反復執行的活動進行建模,比如時鍾信號發生器。給出一種時鍾發生器方式:

module clock_gen(output reg clock);

  initial clock = 1'b0;

  always   #10  clock = ~clock;

  initial  #1000 $finish;

endmodule


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM