EDA VHDL第三章 VHDL数据类型和运算操作符_第1页
EDA VHDL第三章 VHDL数据类型和运算操作符_第2页
EDA VHDL第三章 VHDL数据类型和运算操作符_第3页
EDA VHDL第三章 VHDL数据类型和运算操作符_第4页
EDA VHDL第三章 VHDL数据类型和运算操作符_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、3.3 VHDL数据类型和运算操作符、3.3.1数据对象3.3.2字句规则和标识符3.3.3数据类型3.3.4运算操作符、主要内容、VHDL种类的语言要素、数据对象数据类型运算命令运算操作符对象: 给出一个值的对象VHDL对象的3种基本数据类型:常数(CONSTANT )变量(VARIABLE )信号(SIGNAL ),3.3.1数据对象,对象的物理意义:常数:电压中的电源、地等常数变量:暂时存储某个值的载波信号:包含物理设计中的某个硬件连接、输入、输出通讯端口的变量:局部量、process语句、子程序信号:全局量、entity architecture package常数3360的全局量可以

2、用于上述两种情况,被对象的特征和使用情况3360在进程语句、子程序中使用,变量是局部量,其作用范围被限定于定义变量的进程和子程序。 表示形式: VARIABLE变量名:数据类型约束条件:表达式示例: VARIABLE result: std_logic:0; 可变x,y :整数; 变量a :整数范围0到25533600; 1 .“变量”(variable )和“变量初始值”(variable in variable )可用于模拟,但在集成时忽略,2 .“恒定”(constant )常量表示给定常量名称的:的固定值。 格式如下: 常数常数名称:数据类型:公式示例:常数宽度: integer :8

3、; 恒定数据:位向量(3down to0) :010; 常量x :新位: x; 常数的数据类型与表达式的数据类型相匹配,常数的可见性(作用范围)、库、封装、实体、结构1、进程1、结构2、进程2、常数是全局量,其作用范围是所定义的位置,电子硬件系统运行的基本特性:各部分电路工作的并行特性; 信号传输中的延时特性多驱动源的男低音特性时间节点电路中的触发器的存储特性等,3 .信号(signal ),信号是电子系统内部的硬件连接和硬件特性表示。 为了描述硬件系统的基本特性,电子电路中的硬件实体相互连接的抽象表示(通常在结构、报文分组集合以及实体描述中使用)包括SIGNAL信号名称:数据类型约束类型:例

4、如SIGNAL a,b:BIT :0; 符号计数:位向量(7向量0 ); 信号初始化: integer :-1; 符号计数: STD _ logic :=0; 注意:1)信号初始值模拟时有用,而综合忽略的2 )信号可以为全局量,可以用结构,实体,块来解释和使用信号。 3 )在进程和子程序中只能使用信号,不能说明信号。 进程中信号和变量的使用,ENTITY ex IS port (.); 结束时间; 体系结构体系结构体系结构体系结构体系结构; 生产流程(a,b )可变性c,d:std_logic; begin c:=a b; d:=a-b; 结束进程结束存档; 信号和通讯端口的不同:除了没有方向

5、的说明,信号和实体的通讯端口PORT的概念是相似的。 信号灯是看不见的信号。 实体exam is连接埠(单一连接埠、b: in std_logic; 信号c 3360输出STD _逻辑; 最后一战; 通讯端口是有方向性的信号。 也就是说,输出通讯端口不能读出数据,只能写入数据,输入通讯端口不能写入数据,只能读出数据。 信号本身没有方向,并且是可读写的。 3.3.2字句规则和标识符,1 .字句规则1 )注释为-从开头到本行末尾(出现换行和换行)字符提高了VHDL语言设计计程仪程序的可读性,1 .字句规则2 )数字表示方式:基于十进制数二进制数字、8进制、1.6进制等的数十进制表示法78_567(

6、=78567 ) 基本标记的数字格式:基数符号#数值#指数部2#111_1011# 016#F.01#E 4, 基表示法:基数的数字e指数为: # 170 # (=170 )2# 1111 _ 1110 # (=254 ) 1.6 # e # e1(=2# 1110 _ 0000 # 224 )或(=1.4 * 1.6=224 ) 1.6 # f.0.1 # e2(=(151/(1.6 * 1.6 ) _ _ _ _ .2 # 1111 _ 1110 #8# 276 # 1.0 # 170 # 1.6 # e # E1,a,实数(REAL )需要较小的数学。 仅在游戏模拟器中使用,合成器不通讯

7、端口实数可表示的数和整数可表示的数。 例如,99.0具有实数,9.9为整数,两个数字具有相同的值,然而两者具有不同的类型。 在相关文献中,实数型也被称为浮点型(FLOATING TYPE )。 但是,大多数EDA工具不通讯端口浮点运算。 物理量文本称为物理类型。 格式必须包含整数和单位两个部分。 16 ns时间类型通常用于仿真,不需要集成到逻辑性中。 (3)字符和字符串字符:用单引号包围数值、字符、空格、特殊字符。 VHDL语言对大小写字母不敏感,但区分字母的大小写。 1,2表示符号a、a、b、b被视为不同的字符,如:可变字符_ var 3360字符。.字符_ var 3360=a; 字符串(

8、STRING )字符串:是用双引号包围字符类型的非限定数组的字符串。 varibleistring _ var :字符串(1to7); string_var:=Rosebud; 字符串:“字符”可以是ERROR、ZZZZ、XXXX、x、bothsandqean等,位字符串:称为关二进制位向量,表示二进制、八进制、1.6进制的数组。 二进制位向量长度相等的二进制二进制位数。 形式:基数符号“数值”中基数符号有b :二进制基数符号3种。 o :八进制的基数符号。 每个八进制数字表示三位二进制数字。 x:16进制的基数符号。 每个1.6进制表示四个二进制位的二进制数。 B1011_1111、o152

9、, 4 )下标和下标段落名称下标3360表示数组变量或信号元素,格式:的标识符(表达式)下标:表示数组变量或信号元素格式:的标识符(表达式to/down to ) : a : STD _。 与a(7)一样,a (6)a (0) a(7)、a (7)、a(7)、2 .标识符3360定义常数、变量、信号、通讯端口、子程序或残奥仪表的名称、VHDL87版3360短标识符VHDL VHDL语言有两种标准版本:VHDL短标识符(基本标识符)遵循以下规则: (1)必须以字母开头。 (2)能区分大小写的文字、数字、下划线“_”。 (3)下划线前后必须有英语文字或数字。 (4)字母不区分大小写(5)下线“_”

10、不能连续使用,最后一个符号也不允许下划线(6)包含格拉夫锁定符号、空格符号、短标识符,留心了: EDA工具的整合,模拟时不区分大小写。 无法将VHDL的保留关键字(牛鼻子字)作为识别符: ENTITY、ARCHITECTURE、END、BUS、USE、WHEN、WAIT、IS在编写项目群时,通常需要大写或粗体,项目群计程仪容易阅读,容易检查错误下一个标识符有效吗? multi_ 7.8屏幕、multi _、Multi_Screens、multi _ screen illegal % name _ illeggalname9illeggalentitydata _ _ bus not-ack上次

11、授课的内容包, 库和部署VHDL四种语言元素:数据对象,词法规则和识别符此次课程内容:数据类型、运算运算符、扩展识别符是添加到VHDL93版的识别符书写规则: (1)用巴克斯斜线分隔,免除8.7标准基本识别符的限制。 (2)可以用数字开头,包括格拉夫快速象征符、空格符号。 例如:模式a、$100、p %名称等。 (3)巴克斯高潮之间的文字可以使用关健字。 例如缓冲器、实体、结束等。 (4)标识符的定界符和斜线之间以数字开始。 例如: 100$、2chip、4screens等。 (5)行政许可多条下线的连接。 例如TWO_Computer_sh等等。 (6)扩展标识符区分大小写。 例如, eda

12、和EDA不同。 (7)扩展标识符和短标识符不同。计算机和计算机不同。、扩展标识符、3.3.3 VHDL语言数据类型、VHDL语言计程仪程序是强数据类型,每个常量、变量、信号、函数和各种残奥仪表学需要明确的数据类型,不同的数据类型不能直接代入,同一类型,即使二进制位长度不同也不能代入。 EDA工具在编译期间报告类型错误。 根据1.0类型的标准预定义数据类型、用户定义数据类型和定义方法,数据类型被划分为供EDA工具集成电子系统的数据类型。 “标量类型”、“复合类型”等。 EDA工具用来模拟电子系统的资料类型,例如网站数据库类型(ACCESS TYPE )。 预定义的数据类型在VHDL标准软件包ST

13、ANDARD中定义,并且已经包含在VHDL源文件中,因此可以在不使用USE语句的情况下显式使用VHDL语言标准中定义的标准数据类型(1)整数类型(INTEGER TYPE) (2) 实数类型或浮点型类型(3)二进制位类型(4)二进制位向量类型(5)布尔类型类型(6)字符类型(7)字符类型时间型或物理型(8)错误型(NOTE,WARNIING ), ERROR) FAILURE TYPE) (9)自然数,NATURAL TYPE) (10 )字符串类型(TRING TYPE )是在用户进行电子系统设计时独自定义的数据类型: (1)枚举类型(2)数组类型文件类型(FILES TYPE) (4)记录

14、类型(5)时间类型(TIME TYPE )、标准数据类型、1、整数(INTEGER )包括正整数、负整数和零,在硬件电路实现的情况下,以32位色的二进制位矢量计算整数范围-(231-1 ) VHDL集成器需要对具体整数进行范围约束。 否则,就无法集成到硬件电路中。 示例:整数范围0到1.5; 信号s的可能值范围是0到15,并可以由4二进制位二进制数字表示,因此s被集成到包括4条信号线的信号中,并且从- 2、实数(REAL )范围:1.0E38到1.0E38。 仅在游戏模拟器中使用,合成器不通讯端口实数可表示的数和整数可表示的数。 例如,99.0具有实数,9.9为整数,两个数字具有相同的值,然而

15、两者具有不同的类型。 在相关文献中,实数型也被称为浮点型(FLOATING TYPE )。 但是,大多数EDA工具不通讯端口浮点运算。 3、二进制位二进制位通常用于表示1二进制位的信号值。 二进制位值通常用单引号括起来。 例如,typebitis (0,1 )二进制位的值0,1表示信号的状态,布尔值0,1表示假,真。 另外,在双引号中包围的关二进制位数据的定径套:中,将signala : bit _ vector (7to0) b 0000 _ 1111x FBC- b 1111 _ 1111 _ 1100 o371- b 011 _ 111 _ 001,4、二进制位向量我只会关系运算。等于=、比较等。位值转换为布尔型布尔_ var :=(bit _ var=1),字符(CHARACTER )用单引号将值、字符、空格和特殊字符括起来。 VHDL语言对大小写字母不敏感,但区分字母的大小写。 1,2表示符号a、a、b、b被视为不同的字符,如:可变字符_ var 3360字符。.字符_ var 3360=a; 7、字符串(STRING )字符串:是用双引号将字符类型的非限定数组括起来的字符串。 varibleistring _ var :字符串(1to7);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论