




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第11讲VHDL的运算符2,本讲知识点:关系运算符并置运算符,3、关系运算符:操作符功能操作数类型等于任何数据类型/=不等于任何数据类型大于integer、real、bit、std_logic等及其一维向量=大于等于integer、real、bit、std_logic等及其一维向量,注意:(1)关系运算符运算的最后结果总是布尔类型(2)关系运算符两边的数据类型必须相同,但是位的长度不一定相同。(3)对位矢量数据进行比较时,比较从最左边的位开始,自左至右进行比较的。在位长不同的情况下,只能按自左至右的比较结果作为关系运算的结果。,上例a的值位10,而b的值位7,a应该比b大。但是,由于位矢量是从左至右按位比较的,当比较到次高位时,a的次高位为“0”而b的次高位为“1”,故比较结果b比a大。这样的比较结果显然时不符合实际情况的。,例1:SIGNALa:STD_LOGIC_VECTOR(3DOWNTO0);SIGNALb:STD_LOGIC_VECTOR(2DOWNTO0);ab)THENELSE,为了能使位矢量进行关系运算,在包集合“STD_LOGIC_UNSIGNED”中对“STD_LOGIC_VECTOR”关系运算重新作了定义,使其可以正确的进行关系运算。注意在使用时必须首先说明调用该包集合。当然,此时位矢量还可以和整数进行关系运算。在关系运算符中小于等于符“=”和代入符“=”时相同的,在读VHDL语言的语句时,应按照上下文关系来判断此符号到底时关系符还是代入符。,例2:比较下面3组二进制数的大小:“1011”和“101011”;“1”和“011”;“101”和“110”下面是VHDL关系运算的结果:“1011”“101011”“1”“011”“101”“110”为了能使其正确地进行关系运算,在包集合“std_logic_unsigned”和“std_logic_signed”中对关系运算符重新做了定义,使用时必须要调用这些程序包。,【例3】位矢量比较ENTITYrel_1ISPORT(a:INBIT_VECTOR(0TO2);b:INbit_vector(0to1);m:OUTBOOLEAN);ENDrel_1;ARCHITECTUREexampleOFrel_1ISBEGINm=(a=b);ENDexample;,【例4】无符号数比较libraryieee;useieee.std_logic_arith.all;entityueisport(a,b:inunsigned(1downto0);m:outboolean);endue;architectureexofueisbeginm=b);endex;,【例4】有符号数比较libraryieee;useieee.std_logic_arith.all;entityreisport(a,b:insigned(1downto0);m:outboolean);endre;architectureexofreisbeginm=b);endex;,综合实例:libraryieee;useieee.std_logic_arith.all;useieee.std_logic_unsigned.all;useieee.std_logic_signed.all;entitycnt10isport(a,b:inunsigned(3downto0);c,d:insigned(3downto0);rab:outunsigned(3downto0);rcd:outsigned(3downto0);ru,rs:outboolean);end;architecturertlofcnt10isbeginrabb);rsd);end;,并置运算符并置运算符“&”用于位的连接。例如,将4个位用并置运算符“&”连接起来就可以构成一个具有4位长度的位矢量。两个4位的位矢量用并置运算符“&”连接起来就可以构成8位长度的位矢量。图3-1就是使用并置运算符的实例。,图3-1使用并置运算符的实例,在图3-1中,en是b(0)b(3)的允许输出信号,而y(0)y(7)中存在如下关系:y(0)=b(0)y(1)=b(1)y(2)=b(2)y(3)=b(3)y(4)=a(0)y(5)=a(1)y(6)=a(2)y(7)=a(3),这种逻辑关系用并置运算符就很容易表达出来:tmp_b=bAND(en&en&en&en);y=a&tmp_b;第一个语句表示b的4位位矢量由en进行选择得到一个4位位矢量的输出。第二个语句表示4位位矢量a和4位位矢量b再次连接(并置)构成8位位矢量y输出。位的连接也可使用集合体的方法,即将并置符换成逗号就可以了,例如:tmp_ben,0=en);或tmp_ben);在指定位的脚标时,也可以用“OTHERS”来说明:tmp_ben);要注意,在集合体中“OTHERS”只能放在最后。假若b位矢量的脚标b(2)的选择信号为“0”,其他位的选择信号均为en。那么此时表达式可写为tmp_b0,OTHERS=en);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 八马普洱茶考试题及答案
- 市政管道建设进度控制方案
- 幕墙工程验收与整改过程管理方案
- 钢结构防腐与涂装技术方案
- 智能制造产业园区厂房租赁与智能工厂建设合同
- 创新性离婚协议书中房产过户及债务清算范本
- 离异双方子女抚养权变更与生活费用支付合同
- 离婚后房产分配及子女教育资助协议
- 石灰石运输合同范本(含碳排放管理)
- 特种设备操作人员保密及责任承担合同范本
- 2025年基金从业资格考试《证券投资基金基础知识》真题(附答案)
- 2025年国家保安员培训考试题(附答案)
- 进销存毕业论文
- 2024年北京京剧院招聘真题
- GB/T 20716.1-2025道路车辆牵引车和挂车之间的电连接器(7芯)第1部分:24 V标称电压车辆的制动系统和行走系的连接
- 电子元器件仓库管理规范
- 房屋安全知识培训资料课件
- 天然气网络安全知识培训课件
- 肥胖患者体重管理护理查房
- 2025年事业单位工勤技能-湖南-湖南政务服务办事员三级(高级工)历年参考题库含答案解析(5卷套题【单选100题】)
- 【课件】+圆与圆的位置关系+课件-2025-2026学年高二上学期数学人教A版选择性必修第一册
评论
0/150
提交评论