Verilog HDL基础教程之--程序基本结构
点击数:7188 次 录入时间:03-04 11:38:45 整理:http://www.55dianzi.com 电脑-单片机-自动控制
这个例子通过另一种方法描述了一个三态门。在这个例子中存在着两个模块。模块trist1调用由模块mytri定义的实例元件tri_inst。模块trist1是顶层模块。模块mytri则被称为子模块。
通过上面的例子可以看到。
- Verilog HDL程序是由模块构成的。每个模块的内容都是嵌在module和endmodule两个语句之间。每个模块实现特定的功能。模块是可以进行层次嵌套的。正因为如此,才可以将大型的数字电路设计分割成不同的小模块来实现特定的功能,最后通过顶层模块调用子模块来实现整体功能。
- 每个模块要进行端口定义,并说明输入输出口,然后对模块的功能进行行为逻辑描述。
- Verilog HDL程序的书写格式自由,一行可以写几个语句,一个语句也可以分写多行。
- 除了endmodule语句外,每个语句和数据定义的最后必须有分号。
- 可以用“/*.....*/”和“//.......”对Verilog HDL程序的任何部分作注释。一个好的、有使用价值的源程序都应当加上必要的注释,以增强程序的可读性和可维护性。
模块的框架
模块的内容包括I/O声明、I/O说明、内部信号声明和功能定义。
1.I/O声明
模块的端口声明了模块的输入输出端口,其格式如下:
Module 模块名(端口1,端口2,端口3,端口4, …);
2.I/O说明
I/O说明的格式如下:
输入口:input 端口名1,端口名2,…,端口名i; //(共有i个输入口)
输出口:output 端口名1,端口名2,…,端口名j; //(共有j个输出口)
I/O说明也可以写在端口声明语句里,其格式如下:
module module_name(input port1,input port2,…,output port1,output port2… )
上一页 [1] [2] [3] [4] [5] [6] [7] 下一页
本文关键字:程序 电脑-单片机-自动控制,电子学习 - 基础知识 - 电脑-单片机-自动控制