Verilog数据类型与表达式.ppt

Verilog数据类型与表达式.ppt

ID:51598172

大小:367.05 KB

页数:43页

时间:2020-03-25

Verilog数据类型与表达式.ppt_第1页
Verilog数据类型与表达式.ppt_第2页
Verilog数据类型与表达式.ppt_第3页
Verilog数据类型与表达式.ppt_第4页
Verilog数据类型与表达式.ppt_第5页
资源描述:

《Verilog数据类型与表达式.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4讲数据类型与表达式VerilogHDL提供了丰富的数据类型,本讲把VerilogHDL的数据分为常量和变量两类,并分别介绍其特点和使用方法。表达式是操作符、操作数和标点符号序列,其目的是用来说明一个计算过程。程序中的大部分语句是由表达式构成的。本讲将给出操作符和操作数的种类及正确用法。主要内容(一)常量在程序运行过程中,其值不能被改变的量称为常量。VerilogHDL有整型、实数型、字符串型3种常量。在整型或实数型常量的任意位置可以随意插入下划线“_”(但是不能当作首符号),这些下划线对数本身并没有意义,但是当数字很长时使用下划线可以提高可

2、读性。一、数据类型VerilogHDL有4种基本的逻辑状态:0表示逻辑0或“假”;1表示逻辑1或“真”;x表示未知;z表示高阻。注意:x值和z值都是不分大小写的,如:值0x1z与值0X1Z相同。VerilogHDL的常量是由以上这4种基本值组成的。VerilogHDL的整数有两种书写格式:十进制数格式;基数格式。(1)十进制数格式是一个可以带正负号的数字序列,代表一个有符号数,如下例:32//十进制数32-15//十进制数-151.整型常量(整数)(2)基数格式的数通常是无符号数,形式如下:[size]'basevaluesize定义常量的位数

3、(长度),这是可选项;base是基数,规定这个数据的进制,可以是o或O(表示八进制),b或B(表示二进制),d或D(表示十进制),h或H(表示十六进制)之一;value是一个数字序列,其形式应与base定义的形式相符。这个数字序列中出现的值x和z以及十六进制中的a~f不区分大小写,“?”字符可以代替值z。下面给出一些典型书写方法,有正确的也有错误的。5'O37//5位八进制数4'D2//4位十进制数4'B1x_01//4位二进制数7'Hx//7位x(扩展的x),即xxxxxxx4'hZ//4位z(扩展的z),即zzzz2'h1?//2位十六进制

4、数,与2'h1z相同8'h2A//在位数和字符之间,以及基数和数值之间允许出现空格4'd-4//非法:数值不能为负3'b001//非法:'和基数b之间不允许出现空格(2+3)'b10//非法:位数不能够为表达式如果没有定义常量的位数,那么这个数的长度就是相应值的位数,例如:'o721//9位八进制数'hAF//8位十六进制数如果定义的长度大于数字序列的实际长度,通常在数据序列的高位(左侧)补0。但是如果这个数字序列最左边一位为x或z,就用x或z在左边补位,例如:10'b10//左边补0,000000001010'bx0x1//左边补x,xxxx

5、xxx0x1如果定义的长度小于数字序列的实际长度,这个数字序列最左边超出的位将被截断,例如:3'b1001_0011//与3'b011相等5'H0FFF//与5'H1F相等实数的定义方式有两种:(1)十进制格式,由数字和小数点组成(必须有小数点),例如:2.05.67811572.120.12.//非法:小数点右侧必须有数字2.实数型常量(浮点数)2)指数格式,由数字和字符e(E)组成例:23_5.1e2//其值为23510.0,忽略下划线3.6E2//其值为360.0(e与E相同)5E-4//其值为0.0005e的前面必须要有数字而且后面必须

6、为整数3.字符串型常量字符串常量是由一对双引号括起来的字符序列。例:"INTERNALERROR"“REACHED->HERE”//空格出现在//双引号内,所以是字符串的组成部分"12345_6789_0"//下划线出现在//双引号内,所以是字符串的组成部分实际上,字符都会被转换成二进制数,而且这种二进制数是按特定规则编码的。现在普遍都采用ASCII码,这种代码把每个字符用一个字节(8位)的二进制数表示。所以字符串实际就是若干个8位ASCII码的序列。例如字符串“INTERNALERROR”共有14个字符,存储这个字符串的变量就需要8*14位的

7、存储空间,如下:reg[1:8*14]Message;//定义变量Message并分配存储空Message="INTERNALERROR"//给变量Message赋值为字符串常量参数在Verilog语言中,用参数parameter来定义符号常量。参数常用来定义时延和变量的宽度。其定义格式如下:parameter参数名1=表达式1,参数名2=表达式2,参数名3=表达式3,……;例:parametersel=8,code=8'ha3;VerilogHDL有线网net和寄存器两种类型的变量,每种类型都有其在电路中的实际意义。1.线网型变量Net型数据

8、相当于硬件电路中的各种物理连接,其特点是输出的值紧跟输入值的变化而变化。对net型有两种驱动方式,一种方式是在结构描述中将其连接到一个门元件或模块的输

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

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

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