HDL语法——第1部分 简单的Verilog-HDL模块.pdf

HDL语法——第1部分 简单的Verilog-HDL模块.pdf

ID:52956167

大小:993.90 KB

页数:31页

时间:2020-04-03

HDL语法——第1部分 简单的Verilog-HDL模块.pdf_第1页
HDL语法——第1部分 简单的Verilog-HDL模块.pdf_第2页
HDL语法——第1部分 简单的Verilog-HDL模块.pdf_第3页
HDL语法——第1部分 简单的Verilog-HDL模块.pdf_第4页
HDL语法——第1部分 简单的Verilog-HDL模块.pdf_第5页
资源描述:

《HDL语法——第1部分 简单的Verilog-HDL模块.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第03讲简单的Verilog-HDL模块简单的Verilog-HDL模块学习目标:1、通过简单的例子了解Verilog-HDL模块的基本构成2、了解Verilog-HDL模块的层次结构和行为模块3、了解Verilog-HDL模块的测试简单的Verilog-HDL模块下面通过看几个简单的Verilog-HDL描述,从中分析Verilog-HDL语言的特性。例3-1://三位加法器moduleadder(count,sum,a,b,cin);input[2:0]a,b;//加数和被加数inputcin;/

2、/进位输入,即:从低位来的进位outputcount;//进位输出,即:向高位的进位output[2:0]sum;//和assign{count,sum}=a+b+cin;//连接运算符endmodule从例子中可以看出整个Verilog-HDL描述是嵌套在module和endmodule声明语句里的。简单的Verilog-HDL模块例3-2://比较器modulecompare(equal,a,b);outputequal;//输出信号equalinput[1:0]a,b;//输入信号a,bassi

3、gnequal=(a==b)?1:0;/*如果两个输入信号相等,输出为1,否则为0。*/endmodule在这个描述中,/*........*/和//.........都表示注释部分。注释只是为了方便程序员理解程序,对编译是不起作用的。简单的Verilog-HDL模块例3-3://三态驱动器moduletrist2(out,in,enable);outputout;//输出端口inputin,enable;//数据输入in,控制输入enablebufif1mybuf(out,in,enable);/*

4、若enable=0,则输出为高阻状态z;否则out=in*/endmodule描述通过调用一个实例元件bufif1来实现其功能。简单的Verilog-HDL模块本例通过另一种方法例3-3://三态驱动器描述了一个三态门。moduletrist1(out,in,enable);outputout;在这个例子中存在着inputin,enable;两个模块:模块trist1调用模块mytri的实例元件mytritri_inst(out,in,enable);tri_inst。endmodulemodulem

5、ytri(out,in,enable);模块trist1是上层模outputout;块。模块mytri则被称为inputin,enable;子模块。assignout=enable?In:'bz;通过这种结构性模块endmodule构造可构成特大型模块。简单的Verilog-HDL模块Verilog-HDL描述是由模块构成的。模块是可以进行层次嵌套的。正因为如此,才可以将大型的数字电路设计分割成不同的小模块来实现特定的功能,最后通过顶层模块调用子模块来实现整体功能。每个模块要进行端口定义,并说明输

6、入输出口,然后对模块的功能进行行为逻辑描述。Verilog-HDL描述的书写格式自由,一行可以写几个语句,一个语句也可以分写多行。除了endmodule语句外,每个语句和数据定义的最后必须有分号。可以用/*.....*/和//...对Verilog-HDL描述的任何部分作注释。一个好的、有使用价值的描述都应当加上必要的注释,以增强程序的可读性和可维护性。module(模块)module是层次化设计的基本构件逻辑描述放在module内部module能够表示:–物理块,如IC或ASIC单元–逻辑块

7、,如一个CPU设计的ALU部分–整个系统每一个模块的描述从关键词module开始,有一个名称(如SN74LS74,DFF,ALU等等),由关键词endmodule结束。模块的结构Verilog-HDL的基本设计单元是module(模块)。一个module由两部分组成的:(一)描述端口;(二)描述逻辑功能,即定义输入是如何影响输出的。端口定义moduleblock(a,b,d);inputa,b;aI/O说明outputd;dwirec;内部信号声明bassignc=a

8、b;assignd=a&c;e

9、ndmodule功能定义模块的结构Verilog-HDL模块结构完全嵌套在module和endmodule声明语句之间;每个Verilog-HDL模块包括四个主要部分:端口定义、I/O说明、内部信号声明、功能定义。模块端口(moduleports)模块通过端口与外部通信通过引脚配置,将端口与CPLD/FPGA联系起来。端口等价于硬件的引脚(pin)端口在模块名字后的括号中列出端口可以说明为input,output及inout组合逻辑电路?课堂练习时

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。