硬件描述语言2.ppt

硬件描述语言2.ppt

ID:48239947

大小:576.50 KB

页数:34页

时间:2020-01-18

硬件描述语言2.ppt_第1页
硬件描述语言2.ppt_第2页
硬件描述语言2.ppt_第3页
硬件描述语言2.ppt_第4页
硬件描述语言2.ppt_第5页
资源描述:

《硬件描述语言2.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、硬件描述语言及其在数字系统中的应用主讲:信息与通信学院 谢跃雷(副教授)7/25/20211GUETSchoolofInformation&Communications第二讲Verilog语法Verilog模块moduleVerilog语法要素Verilog数据类型及逻辑系统7/25/20212GUETSchoolofInformation&Communications2.1模块module1.模块:是verilog设计中的基本程序结构,定义设计的输入/出端口,I/O接口的类型和数量.module模块名(端口列表);端口声明,参数声明wire,reg和其它类型的变

2、量声明数据流语句(assign)低层模块实例always和initial块,所有行为语句都在块内任务和函数endmodule必须出现可选7/25/20213GUETSchoolofInformation&Communicationsmodule能够表示:物理块,如IC或ASIC单元逻辑块,如一个CPU设计的ALU部分整个系统每一个模块的描述从关键词module开始,有一个名称(如SN74LS74,DFF,ALU等等),由关键词endmodule结束。module内部的5个部分:变量声明数据流语句低层模块实例行为描述块任务和函数每一部分在module内部出现的顺序是

3、任意的。一个verilog源文件中可以有多个模块,且对排列顺序不做要求。7/25/20214GUETSchoolofInformation&Communications2.端口(Terminal)端口是模块与外界环境交互的接口.例如IC芯片的输入、输出引脚就是它的端口。对于外部环境来讲,模块内部是不可见的,对模块的调用(实例引用)只能通过其端口进行。这种特点为设计者提供了很大的灵活性:只要接口保持不变,模块内部的修改并不会影响到外部环境.我们也常常将端口称为终端(Terminal)。模块端口等价于芯片的管脚(pin)模块通过端口与外部通信7/25/20215GUE

4、TSchoolofInformation&Communications端口列表和端口声明端口在模块名字后的括号中列出端口可以说明为input,output及inout端口等价于硬件的引脚(pin)input输入端口output输出端口inout双向端口端口声明7/25/20216GUETSchoolofInformation&Communicationsmoduleadder(cout,sum,a,b,cin);input[2:0]a,b;inputcin;outputcout;output[2:0]sum;assign{cout,sum}=a+b+cin;end

5、module例设计三位全加器这个例子描述了一个三位的加法器。从例子中可以看出整个VerilogHDL程序是嵌套在module和endmodule声明语句里的,只出现了一个assign语句。addersum[2:0]a[2:0]b[2:0]cincout模块名端口列表端口声明数据流语句7/25/20217GUETSchoolofInformation&Communications例SR触发器模块//SR触发器moduleSR_FF(Q,Q_n,S,R);outputQ,Q_n;//端口声明inputS,R;nandn1(Q,S,Q_n);nandn2(Q_n,R,Q

6、);endmodule模块中的5个部分并没全部出现,只出现在低层次模块实例化nand为verilog中的与非门门级原语部件7/25/20218GUETSchoolofInformation&CommunicationsD触发器模块//D触发器moduleD_FF(d,clk,clr,q,qb);outputq,qb;inputd,clk,clr;regq,qb;//输出端口q,qb值保存always@(posedgeclk)beginif(clr)q=1’b0;elseq=d;endnot(qb,q);endmodule该模块内包括always行为块语句alway

7、s块行为描述语句7/25/20219GUETSchoolofInformation&Communications高层次模块对低层次模块的调用称为模块实例化。可以将模块的实例通过端口连接起来构成一个大的系统或元件。实例名是每个对象唯一的标记,通过这个标记可以查看每个实例的内部。实例中端口的次序与模块定义的次序相同。模块实例化与调用程序不同。每个实例都是模块的一个完全的拷贝,相互独立、并行。3.模块实例化(moduleinstances)7/25/202110GUETSchoolofInformation&Communications在调用模块时,可以用顺序连接和按名

8、连接把模块

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

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

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