数字系统设计与verilogHDL第6章

数字系统设计与verilogHDL第6章

ID:44771967

大小:303.50 KB

页数:32页

时间:2019-10-28

数字系统设计与verilogHDL第6章_第1页
数字系统设计与verilogHDL第6章_第2页
数字系统设计与verilogHDL第6章_第3页
数字系统设计与verilogHDL第6章_第4页
数字系统设计与verilogHDL第6章_第5页
资源描述:

《数字系统设计与verilogHDL第6章》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第6章VerilogHDL语法与要素主要内容6.1Verilog语言要素6.2常量6.3数据类型6.4参数6.5向量6.6运算符6.1Verilog语言要素Verilog程序由符号流构成,符号包括空白符(Whitespace)注释(Comments)操作符(Operators)数字(Numbers)字符串(Strings)标识符(Identifiers)关键字(Keywords)等空白符和注释空白符(Whitespace)空白符包括:空格、tab、换行和换页。空白符使代码错落有致,阅读起来更方便。在综合时空白符被忽略。注释(Comment)◆单行注释:以

2、“//”开始到本行结束,不允许续行◆多行注释:多行注释以“/*”开始,到“*/”结束标识符(Identifiers)标识符(Identifiers)Verilog中的标识符可以是任意一组字母、数字以及符号“$”和“_”(下划线)的组合,但标识符的第一个字符必须是字母或者下划线。另外,标识符是区分大小写的。Examples:countCOUNT//COUNT与count是不同的_A1_d2//以下划线开头R56_68FIVE关键字(Keywords)Verilog语言内部已经使用的词称为关键字或保留字,这些保留字用户不能作为变量或节点名字使用。关键字都是小

3、写的。◆整数◆实数◆字符串6.2常量程序运行中,值不能被改变的量称为常量(constants),Verilog中的常量主要有如下3种类型:整数按如下方式书写:+/-'即+/-<位宽>'<进制><数字>size为对应二进制数的宽度;base为进制;value是基于进制的数字序列。进制有如下4种表示形式:◆二进制(b或B)◆十进制(d或D或缺省)◆十六进制(h或H)◆八进制(o或O)整数(integer)Examples:8'b11000101//位宽为八位的二进制数110001018'hd5//位宽为八位的十六进制数d

4、5;5'O27//5位八进制数4'D2//4位十进制数24'B1x_01//4位二进制数1x015'Hx//5位x(扩展的x),即xxxxx4'hZ//4位z,即zzzz8□'h□2A/*在位宽和'之间,以及进制和数值之间允许出现空格,但'和进制之间,数值间是不允许出现空格的,比如8'□h2A、8'h2□A等形式都是不合法的写法*/整数(integer)实数(Real)有下面两种表示法。◆十进制表示法。例如:2.00.1//以上2例是合法的实数表示形式2.//非法:小数点两侧都必须有数字◆科学计数法。例如:43_5.1e2//其值为43510.09.6E

5、2//960.0(e与E相同)5E-4//0.0005实数(Real)字符串(Strings)字符串是双引号内的字符序列。字符串不能分成多行书写。例如:"INTERNALERROR"字符串的作用主要是用于仿真时,显示一些相关的信息,或者指定显示的格式。6.3数据类型Verilog有下面四种基本的逻辑状态。◆0:低电平、逻辑0或逻辑非◆1:高电平、逻辑1或“真”◆x或X:不确定或未知的逻辑状态◆z或Z:高阻态Verilog中的所有数据类型都在上述4类逻辑状态中取值,其中x和z都不区分大小写,也就是说,值0x1z与值0X1Z是等同的。数据类型(DataTyp

6、e)是用来表示数字电路中的物理连线、数据存储和传输单元等物理量的。数据类型(DataType)Verilog中的变量分为如下两种数据类型:◆net型◆variable型net型中常用的有wire、tri;variable型包括reg、integer等。注意:在Verilog-1995标准中,variable型变量称为register型;在Verilog-2001标准中将register一词改为了variable,以避免初学者将register和硬件中的寄存器概念混淆起来。net型Net型数据相当于硬件电路中的各种物理连接,其特点是输出的值紧跟输入值的变化

7、而变化。对连线型有两种驱动方式,一种方式是在结构描述中将其连接到一个门元件或模块的输出端;另一种方式是用持续赋值语句assign对其进行赋值。wire是最常用的Net型变量。wire型变量的定义格式如下:wire数据名1,数据名2,……数据名n;例如:wirea,b;//定义了两个wire型变量a和bExamples:wire[7:0]databus;//databus的宽度是8位wire[19:0]addrbus;//addrbus的宽度是20位net需要被持续的驱动,驱动它的可以是门和模块。当net驱动器的值发生变化时,Verilog自动的将新值传送

8、到net上。在例子中,线网out由or门驱动。当or门的输入信号变化时将传输到线

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

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

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