Verilog的端口类型以及端口连接规则
2021/8/19 6:38:20
本文主要是介绍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;
这篇关于Verilog的端口类型以及端口连接规则的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?