verilog hdl的基本语法

verilog hdl的基本语法

ID:5267380

大小:1.12 MB

页数:32页

时间:2017-12-07

verilog hdl的基本语法_第1页
verilog hdl的基本语法_第2页
verilog hdl的基本语法_第3页
verilog hdl的基本语法_第4页
verilog hdl的基本语法_第5页
资源描述:

《verilog hdl的基本语法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、VerilogHDL的基本语法伍东亮什么是模块?moduleadder(count,sum,a,b,cin);input[2:0]a,b;inputcin;outputcount;output[2:0]sum;assign{count,sum}=a+b+cin;endmodule什么是模块?什么是模块?Verilog的基本设计单元是“模块”(block)。一个模块是由两部分组成的,一部分描述接口,另一部分描述逻辑功能,即定义输入是如何影响输出的。模块的结构1、端口定义2、模块内容端口定义模块的端口声明了模块的输入输出口。其格式

2、如下:module模块名(口1,口2,口3,口4,………);模块内容1、I/O说明的格式:输入口:input端口名1,端口名2,………,端口名i;//(共有i个输入口)输出口:output端口名1,端口名2,………,端口名j;//(共有j个输出口)模块内容2、内部信号说明:在模块内用到的和与端口有关的wire和reg变量的声明。如:reg[width-1:0]R变量1,R变量2。。。。;wire[width-1:0]W变量1,W变量2。。。。;模块内容2、功能定义:模块中最重要的部分是逻辑功能定义部分。有三种方法可在模块中产生

3、逻辑。1).用“assign”声明语句2).用实例元件3).用“always”块模块内容2、功能定义:1).用“assign”声明语句如:assigna=b&c;模块内容2、功能定义:2).用实例元件如:andand_inst(q,a,b);模块内容2、功能定义:3).用“always”块如:always@(posedgeclkorposedgeclr)beginif(clr)q<=0;elseif(en)q<=d;end模块理解要点如果用Verilog模块实现一定的功能,首先应该清楚哪些是同时发生的,哪些是顺序发生的。“as

4、sign”语句、实例元件和“always”块。这三个描述的逻辑功能是同时执行的。在“always”模块内,逻辑是按照指定的顺序执行的。数据类型VerilogHDL中总共有十九种数据类型,数据类型是用来表示数字电路硬件中的数据储存和传送元素的。在本教材中我们先只介绍四个最基本的数据类型,它们是:reg型、wire型、integer型、parameter型其它数据类型在后面的章节里逐步介绍,同学们也可以查阅附录中VerilogHDL语法参考书的有关章节逐步掌握。其它的类型如下:large型、medium型、scalared型、ti

5、me型、small型、tri型、trio型、tri1型、triand型、trior型、trireg型、vectored型、wand型、wor型。常量什么是常量?在程序运行过程中,其值不能被改变的量称为常量。例如:数字、参数等常量----数字1、整数:在VerilogHDL中,整型常量即整常数有以下四种进制表示形式:1)二进制整数(b或B)2)十进制整数(d或D)3)十六进制整数(h或H)4)八进制整数(o或O)常量----数字1、整数数字表达方式有以下三种:1)<位宽><进制><数字>这是一种全面的描述方式。2)<进制><数字

6、>在这种描述方式中,数字的位宽采用缺省位宽(这由具体的机器系统决定,但至少32位)。3)<数字>在这种描述方式中,采用缺省进制十进制。常量----数字1、整数在表达式中,位宽指明了数字的精确位数。例如:一个4位二进制数的数字的位宽为4,一个4位十六进制数的数字的位宽为16(因为每单个十六进制数就要用4位二进制数来表示)。见下例:8'b10101100//位宽为8的数的二进制表示,'b表示二进制8'ha2//位宽为8的数的十六进制,'h表示十六进制。常量----数字2、x和z值:在数字电路中,x代表不定值,z代表高阻值。一个x可

7、以用来定义十六进制数的四位二进制数的状态,八进制数的三位,二进制数的一位。z的表示方式同x类似。z还有一种表达方式是可以写作?。在使用case表达式时建议使用这种写法,以提高程序的可读性。常量----数字2、x和z值:4'b10x0//位宽为4的二进制数从低位数起第二位为不定值4'b101z//位宽为4的二进制数从低位数起第一位为高阻值12'dz//位宽为12的十进制数其值为高阻值(第一种表达方式)12'd?//位宽为12的十进制数其值为高阻值(第二种表达方式)8'h4x//位宽为8的十六进制数其低四位值为不定值常量----数

8、字3、复数:一个数字可以被定义为负数,只需在位宽表达式前加一个减号,减号必须写在数字定义表达式的最前面。注意减号不可以放在位宽和进制之间也不可以放在进制和具体的数之间。见下例:-8'd5//这个表达式代表5的补数(用八位二进制数表示)8'd-5//非法格式常量----数字4、

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

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

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