- 1、本文档共113页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA第5章verilogHDL语法规范汇编
第5章 Verilog HDL语言规范
Verilog HDL程序结构
基本结构:模块(module)
复杂电子电路的构建,主要是通过模块的相互连接调用来实现的。
Verilog中的模块类似C语言中的函数,它能够提供输入、输出端口,通过例化调用其他模块。
该模块可以被其它模块例化调用,模块中可以包括组合逻辑部分和时序逻辑部分。
Module 模块名(端口列表)
endmodule
Verilog HDL程序结构
端口定义
input 输入端口
output 输出端口
inout 输入/输出端口
数据类型说明
wire
reg
parameter
逻辑功能定义
assign
always
function
task
……
模块结构的组成
Verilog HDL程序结构
module 。。。endmodule
模块名
是模块唯一的标识符。
端口列表
是由模块各个输入、输出和双向端口组成的一个端口列表。
数据类型说明
用来说明模块内用到的数据对象是网络类型还是变量类型。
逻辑功能定义
通过使用逻辑功能语句实现具体的逻辑功能。
模块结构的组成
Verilog HDL程序结构
注 !!
Verilog HDL区分大小写,也就是说大小写不同的标识符是不同的。
Verilog HDL程序的书写与C语言类似,一行可以写多条语句,也可以一条语句分成多行书写。
每条语句以分号结束,endmodule语句后不加分号。
空白(新行、制表符和空格)没有特殊意义。
Verilog HDL程序结构--模块声明
模块声明包括模块名字,模块的输入和输出端口列表。模块的定义格式如下:
module module_name(port_name1, …, port_namen);
….
….
….
endmodule
其中:
module_name为模块名,是该模块的唯一标识。
port_name为端口名,这些端口名使用“,”分割。
Verilog HDL程序结构--模块引用
两种引用方式
1)在引用时,严格按照端口定义顺序来连接。
模块名(portname1,portname2,…);
2)用“.”,标明原模块是定义时规定的端口名。
模块名(.portname1(inst1),portname2(inst2)…);
Verilog HDL程序结构--端口定义
端口是模块与外部其它模块进行信号传递的通道(信号线),模块端口分为输入、输出或双向端口。
1.输入端口的定义格式
input input_port_name, ...other_inputs...;
其中:
input为关键字,用于声明后面的端口为输入端口。
input_port_name为输入端口名字。
other_inputs为用逗号分割的其它输入端口的名字。
Verilog HDL程序结构--端口定义
2.输出端口的定义格式
output output_port_name,...other_outputs...;
其中:
output为关键字,用于声明后面的端口为输出端口。
output_port_name为输出端口名字。
other_outputs为逗号分割的其它输出端口的名字。
Verilog HDL程序结构--端口定义
3.输入输出端口(双向端口)的定义格式
inout inout_port_name,...other_inouts...;
其中:
inout为关键字,用于声明后面的端口为输入输出类型的端口。
other_inouts为输入/输出端口的名字。
other_inouts为逗号分割的其它输入/输出端口的名字。
Verilog HDL程序结构--端口定义
注
在声明输入端口、输出端口或者输入输出端口时,还要声明其数据类型。
对于端口来说,可用的数据类型是网络型(net)或者寄存器(reg)型。
当没有明确指定端口类型时,将端口默认为网络类型。
可以将输出或输入端口重新声明为寄存器类型。无论是在网络类型说明还是在寄存器类型说明中,网络类型或寄存器类型必须与端口说明中指定的宽度相同。
不能将输入和双向端口指定为寄存器类型。
Verilog HDL程序结构--端口定义
例:端口声明实例
module test(a, b, c, d, e, f, g, h);
// I/O说明的格式
input [7:0] a; // 没有明确的说明–网络是无符号的
input [7:
您可能关注的文档
- E8前端+应用培训+摘要+V1.0汇编.pptx
- EAD课程第4章VHDL语言要素汇编.ppt
- EAD课程第5章VHDL顺序语句汇编.ppt
- E30LVS知豆竞品对比手册汇编.ppt
- EAD课程第6章VHDL并行语句汇编.ppt
- ebay买家体验周报详细介绍汇编.pptx
- E8前端+应用培训+之+流程应用+V2.0汇编.pptx
- EA600说明书汇编.doc
- EAI介绍汇编.ppt
- EC8705102规约汇编.doc
- 2020版 沪科技版 高中生物学 必修2 遗传与进化《第4章 生物的进化》大单元整体教学设计[2020课标].docx
- 情绪价值系列报告:春节消费抢先看-国证国际证券.docx
- 精品解析:北京市东直门中学2023-2024学年高二下学期3月阶段性考试(选考)物理试题(解析版).docx
- 2020版 沪科技版 高中生物学 必修2 遗传与进化《第4章 生物的进化》大单元整体教学设计[2020课标].pdf
- 2020版 沪科技版 高中生物学 选择性必修1 稳态与调节《第1章 人体的内环境和稳态》大单元整体教学设计[2020课标].pdf
- 2020版 沪科技版 高中生物学 选择性必修1 稳态与调节《第1章 人体的内环境和稳态》大单元整体教学设计[2020课标].docx
- 液冷盲插快接头发展研究报告-全球计算联盟.docx
- 精品解析:北京市东直门中学2023-2024学年高二下学期3月阶段性考试(选考)物理试题(原卷版).docx
- 精品解析:北京市东直门中学2024届高三考前练习数学试卷(解析版).docx
- 2020版 沪科技版 高中生物学 选择性必修1 稳态与调节《第2章 人体的神经调节》大单元整体教学设计[2020课标].docx
文档评论(0)