第四章VHDL语言程序设计3.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第四章VHDL语言程序设计3.ppt》由用户(hyngb9260)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 VHDL 语言程序设计
- 资源描述:
-
1、 VHDL的各种表达式由操作数和操作符的各种表达式由操作数和操作符组成,其中,操作数是各种运算的对象,而组成,其中,操作数是各种运算的对象,而操作符则规定运算的方式。操作符则规定运算的方式。四、四、VHDLVHDL语言的操作符语言的操作符在在VHDL中,一般有四类操作符:中,一般有四类操作符:1操作符种类及对应的操作数类型操作符种类及对应的操作数类型逻辑操作符逻辑操作符(Logica Operator)关系操作符关系操作符(Relationa Operator)算术操作符算术操作符(Arithmetic Operator)符号操作符符号操作符(Sign Operator)VHDL操作符列表操作
2、符列表 VHDL操作符优先级2各种操作符的使用说明各种操作符的使用说明(2)注意操作符之间的优先级别。当一个表注意操作符之间的优先级别。当一个表达式中有两个以上的运算符时,可使用括达式中有两个以上的运算符时,可使用括号将这些运算分组。号将这些运算分组。(1)严格遵循在基本操作符间操作数是同数严格遵循在基本操作符间操作数是同数据类型的规则;严格遵循操作数的数据类据类型的规则;严格遵循操作数的数据类型必须与操作符所要求的数据类型完全一型必须与操作符所要求的数据类型完全一致的规则。致的规则。(4)关系操作符的作用是将相同数据类型关系操作符的作用是将相同数据类型的数据对象进行数值比较的数据对象进行数值
3、比较(=、/=)或关系排或关系排序判断序判断(、=),并将结果以布尔,并将结果以布尔类型类型(BOOLEAN)的数据表示出来,即的数据表示出来,即TRUE或或FALSE两种。两种。(3)VHDL共有七种基本逻辑操作符,对于数组共有七种基本逻辑操作符,对于数组型型(如如STD_LOGIC_VECTOR)数据对象的相互作数据对象的相互作用是按位进行的。用是按位进行的。(5)表中所列的表中所列的17种算术操作符可以分为种算术操作符可以分为求和操作符、求积操作符、符号操作符、求和操作符、求积操作符、符号操作符、混合操作符、移位操作符等五类操作符。混合操作符、移位操作符等五类操作符。求和操作符包括加减操
4、作符和并置操作符。求和操作符包括加减操作符和并置操作符。求积操作符包括求积操作符包括*(乘乘)、/(除除)、MOD(取模取模)和和REM(取余取余)四种操作符。四种操作符。符号操作符符号操作符“+”和和“-”的操作数只有的操作数只有一个,操作数的数据类型是整数。一个,操作数的数据类型是整数。混合操作符包括混合操作符包括*(乘方乘方)操作符和取操作符和取ABS(绝对值绝对值)操作符两种。操作符两种。六种移位操作符号六种移位操作符号SLL、SRL、SLA、SRA、ROL和和ROR都是都是VHDL93标准新增的标准新增的运算符,在运算符,在1987标准中没有。标准中没有。例如:将例如:将“1101”
5、执行各种执行各种1位移位操作,位移位操作,其移位操作后的结果其移位操作后的结果移位操作符的语句格式是:移位操作符的语句格式是:标识符号标识符号 移位操作符号移位操作符号 移位位数;移位位数;并置操作符并置操作符&用于进行位的连接,例如:用于进行位的连接,例如:“VH”&“DL”VH”&“DL”的结果为的结果为“VHDL”VHDL”0&0&11的结果为的结果为“01“01”SIGNAL a:STD_LOGIC;SIGNAL a:STD_LOGIC;SIGNAL c:STD_LOGIC_VECTOR(2 DOWNTO SIGNAL c:STD_LOGIC_VECTOR(2 DOWNTO 0);0)
6、;则可以:则可以:c=(a&a&a);c=(a&a&a);或或 c=(a,a,a);-c=(a,a,a);-不适用位矢量间的连接不适用位矢量间的连接 为了方便各种不同数据类型间的运算,为了方便各种不同数据类型间的运算,VHDL允许用户对原有的基本操作符重新允许用户对原有的基本操作符重新定义,赋予新的含义和功能,从而建立一定义,赋予新的含义和功能,从而建立一种新的操作符,这就是重载操作符,定义种新的操作符,这就是重载操作符,定义这种操作符的函数称为重载函数。事实上,这种操作符的函数称为重载函数。事实上,在程序包在程序包STD_LOGIC_UNSIGNED中已定中已定义了多种可供不同数据类型间操作
7、的算符义了多种可供不同数据类型间操作的算符重载函数。重载函数。3重载操作符重载操作符Synopsys的程序包的程序包STD_LOGIC_ARITH、STD_LOGIC_UNSIGNED和和STD_LOGIC_SIGNED中已经为许多类型的中已经为许多类型的运算重载了算术运算符和关系运算符,因此运算重载了算术运算符和关系运算符,因此只要引用这些程序包,只要引用这些程序包,SINGEND、UNSIGEND、STD_LOGIC 和和 INTEGER之之间即可混合运算,间即可混合运算,INTEGER、STD_LOGIC和和 STD_LOGIC_VECTOR之之间也可以混合运算。间也可以混合运算。操作符
展开阅读全文