verilog 中任務與函式的區別

2021-06-25 13:07:50 字數 699 閱讀 2532

區別:

1.函式可以返回乙個值而任務可以返回多個值

2.函式一經呼叫必須立即執行,裡面不能包含任何的時序控制,而task中可以有時序控制

3.函式可以呼叫函式,但不可以呼叫任務,任務既可以呼叫函式也可以呼叫任務

4.函式必須要有乙個輸入引數,而任務可以沒有引數輸入。

4.任務輸出的訊號,在模組中必須定義為reg訊號

任務和函式的共同點:

1.任務和函式必須在模組內定義,其作用範圍僅適用於該模組,可以在模組內多次呼叫。

2.任務和函式中可以宣告區域性變數,如暫存器,時間,整數,實數和事件,但是不能宣告線網型別的變數。

3.任務和函式中只能使用行為級語句,但是不能包含always和initial塊,設計者可以在always和initial塊中呼叫任務和函式。

常用的系統任務與函式:

1.顯示任務    display  write

2.檔案輸入輸出任務   fopen,   fclose,  readmemb, readmemh

3.**控制任務

4.時序驗證任務

5.pla建模任務

6.隨即建模任務

7.**時間函式  time,  stime

8.實數變換函式

9.隨即函式

任務和函式能不能綜合,取決於是否有延時控制,或者時間控制的語句則是不能綜合的,其他情況可以綜合



Verilog中的函式和任務

在高階程式語言中,為了避免在程式中多次重複編寫特定的例行程式,可以使用子程式和函式。verilog語言也提供類似的功能,即verilog的函式和任務。它可以把大型程式模組化,從而使 更加容易理解。1。verilog任務 任務必須包含在呼叫該任務的模組中。它可以有輸入輸出埠,任務的埠僅用來在模組和任務...

Verilog中的函式

verilog中的函式 verilog hdl與大多數可程式語言一樣,將使用率很高的 按照軟體工程的思想,寫成函式,這樣,該函式可以被多次呼叫。verilog中函式常用語三種情況 verilog中的函式與c語言中的函式的主要不同之處是 在verilog中,呼叫函式時,需要將乙個或則多個自變數傳給函式...

verilog中wire和reg型別的區別

一 基本概念 wire型資料常用來表示以assign關鍵字指定的組合邏輯訊號,模組的輸入輸出埠型別都預設為wire型,wire相當於物理連線,預設初始值是z。reg型表示的暫存器型別,用於always模組內被賦值的訊號,且必須定義為reg型,代表觸發器,常用於時序邏輯電路,reg相當於儲存單元,預設...