【Verilog HDL】Verilog的端口類型以及端口連接規則


Verilog中的端口類型

  共分為 input、output、和 inout 三種類型,所有的端口在聲明時默認為 wire 型。

 

Verilog中的變量類型

  reg :本質是存儲器,具有寄存功能;

  net :本質是一條沒有邏輯的連線(wire);

 

Verilog的端口連接規則

  端口連接規則分為模塊描述時和模塊調用時兩種情況。

1、模塊描述時

  模塊描述時在模塊內部對模塊的端口進行描述,是從內部角度出發,因此將 input 端口看作外界引申進來的一條線,只能為 net 型變量;同理 inout 端口作為有輸入功能的端口,也應該看作 net 型變量。而 output 端口被看作模塊的輸出,既可以直接輸出(如組合邏輯),也可以寄存后輸出(如時序邏輯),因此 output 端口應該設為 reg 型變量。

2、模塊調用時

  模塊被調用時是在上級模塊中對下級模塊的例化,描述了其采用何種信號與芯片(即底層模塊)連接,進行驅動或得到輸出。此時是從外部角度出發,上級模塊對下級模塊的輸入既可以想輸入什么就輸入什么,也可以想什么時候輸入就什么時候輸入,所以 input 端口可以為 net/reg 型變量。而 output 端口是上級模塊對下級模塊的被動接收,是下級模塊的一根輸出導線,因此 output 端口只能是 net 型變量;同理 inout 端口也只能是 net 型變量。

 

綜上所述

  模塊描述時,input 端口只能為 net,output 端口可以為 net/reg,inout 端口只能為 net;

  模塊調用時,連接模塊input端口的信號可以為 net/reg 型,連接模塊 output 端口的信號只能為 net,連接模塊 inout 端口的信號也只能為 net;



 


免責聲明!

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



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