咱們知道,verilog語法標準中是沒有program的,program是systemverilog語法標準新增的內容。spa
那麼,爲何要新增一個program呢?主要考量是基於電路的競爭與冒險。線程
爲避免仿真和設計競爭問題(race condition),systemverilog中引入了program的概念。設計
全部與設計相關的線程在module中執行,而與驗證有關的線程則在program中運行。在仿真過程當中,這兩種線程運行在不一樣的時間步(time step),從而解決了競爭問題。it
module與program的區別:io
Program和module的另外一個區別是module容許嵌套,而program不容許。module