VHDL语言的操作符.pptVIP

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VHDL语言的操作符.ppt

VHDL的各种表达式由操作数和操作符组成,其中,操作数是各种运算的对象,而操作符则规定运算的方式。 为了方便各种不同数据类型间的运算,VHDL允许用户对原有的基本操作符重新定义,赋予新的含义和功能,从而建立一种新的操作符,这就是重载操作符,定义这种操作符的函数称为重载函数。事实上,在程序包STD_LOGIC_UNSIGNED中已定义了多种可供不同数据类型间操作的算符重载函数。 * * 四、VHDL语言的操作符 在VHDL中,一般有四类操作符: 1.操作符种类及对应的操作数类型 逻辑操作符(Logica Operator) 关系操作符(Relationa Operator) 算术操作符(Arithmetic Operator) 符号操作符(Sign Operator) VHDL操作符列表 VHDL操作符优先级 2.各种操作符的使用说明 (2) 注意操作符之间的优先级别。当一个表达式中有两个以上的运算符时,可使用括号将这些运算分组。 (1) 严格遵循在基本操作符间操作数是同数据类型的规则;严格遵循操作数的数据类型必须与操作符所要求的数据类型完全一致的规则。 (4) 关系操作符的作用是将相同数据类型的数据对象进行数值比较(=、/=)或关系排序判断(、=、 、=),并将结果以布尔类型(BOOLEAN)的数据表示出来,即TRUE或FALSE两种。 (3) VHDL共有七种基本逻辑操作符,对于数组型(如STD_LOGIC_VECTOR)数据对象的相互作用是按位进行的。 (5) 表中所列的17种算术操作符可以分为求和操作符、求积操作符、符号操作符、混合操作符、移位操作符等五类操作符。 求和操作符包括加减操作符和并置操作符。 求积操作符包括* (乘)、/(除)、MOD(取模)和REM(取余)四种操作符。 符号操作符“+”和“-”的操作数只有一个,操作数的数据类型是整数。 混合操作符包括**(乘方)操作符和取ABS(绝对值)操作符两种。 六种移位操作符号SLL、SRL、SLA、SRA、ROL和ROR都是VHDL93标准新增的运算符,在1987标准中没有。 例如:将“1101”执行各种1位移位操作,其移位操作后的结果 移位操作符的语句格式是: 标识符号 移位操作符号 移位位数; 并置操作符用于进行位的连接,例如: “VH”“DL”的结果为“VHDL” ‘0’‘1’的结果为“01” SIGNAL a:STD_LOGIC; SIGNAL c:STD_LOGIC_VECTOR(2 DOWNTO 0); 则可以: c=(aaa); 或 c=(a,a,a); --不适用位矢量间的连接 3.重载操作符 Synopsys的程序包STD_LOGIC_ARITH、STD_LOGIC_UNSIGNED和 STD_LOGIC_SIGNED中已经为许多类型的运算重载了算术运算符和关系运算符,因此只要引用这些程序包,SINGEND、UNSIGEND、STD_LOGIC 和 INTEGER之间即可混合运算,INTEGER、STD_LOGIC和 STD_LOGIC_VECTOR之间也可以混合运算。 操作符可以用以产生电路。就提高综合效率而言,使用常量值或简单的一位数据类型能够生成较紧凑的电路,而表达式复杂的数据类型(如数组)将相应地生成更多的电路。 五、VHDL语言的属性描述 VHDL中可以具有属性的项目如下: 某一项目的特定属性或特征通常可以用一个值或一个表达式来表示,属性的值与对象(信号、变量和常量)的值完全不同,在任一给定的时刻,一个对象只能具有一个值,但却可以具有多个属性。VHDL还允许设计者自己定义属性。 类型、子类型;过程、函数;信号、变量、常量;实体、结构体、配置、程序包;元件;语句标号。 预定义的属性函数功能表 综合器支持的属性有: LEFT、RIGHT、HIGH、LOW、RANGE、REVERSE_RANGE、LENGTH、EVENT及STABLE。 信号类属性中,最常用的当属EVENT。 1) 信号类属性 例如:语句“CLOCKEVENT”就是对以CLOCK为标识符的信号,在当前的一个极小的时间段内发生事件的情况进行检测。所谓发生事件,就是电平发生变化,从一种电平方式转变到另一种电平方式。 *

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档