VHDL数字电路设计教程第4讲 运算操作符和属性.ppt

VHDL数字电路设计教程第4讲 运算操作符和属性.ppt

ID:55599498

大小:723.00 KB

页数:35页

时间:2020-05-20

VHDL数字电路设计教程第4讲 运算操作符和属性.ppt_第1页
VHDL数字电路设计教程第4讲 运算操作符和属性.ppt_第2页
VHDL数字电路设计教程第4讲 运算操作符和属性.ppt_第3页
VHDL数字电路设计教程第4讲 运算操作符和属性.ppt_第4页
VHDL数字电路设计教程第4讲 运算操作符和属性.ppt_第5页
资源描述:

《VHDL数字电路设计教程第4讲 运算操作符和属性.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、VHDL的运算操作符:属性:用户自定义属性操作符扩展通用属性语句例子第四章运算操作符和属性14.1运算操作符6种预定义的运算操作符:赋值运算符;逻辑运算符;算术运算符;关系运算符;移位运算符;并置运算符;2例:signalx:std_logic;variabley:std_logic_vector(3downto0);signalw:std_logic_vector(0TO7);x<=‘1’;----通过<=将‘1’赋给信号x;y:=“0000”;----通过:=将值“0000”赋给变量y;w1

2、<=(0=>’1’,OTHERS=>’0’);--信号w1的赋值;w2<=(OTHERS=>’0’);--信号w2的赋值;赋值运算符3逻辑运算符高运算优先级低运算优先级4注意:书上的“可综合”是指EDA工具的工艺库(如IP库、基本器件库)中是否直接包含相应的功能模块或器件,如果包含,则称为可综合,否则就称为不可综合。对于某些运算功能,理论上是可以用电路实现的,但代价太大,不常使用,因此工艺库中一般就不包含这些功能器件,在这里就称为不可综合。另外,可综合的电路必须是规格固定的。算术运算符5加法、减

3、法、乘法可以综合成逻辑电路;(见例6.8/12.1/12.2等)除法:除数为2n时可通过移位操作实现(见例9.1),容易综合;其它类型除数时则比较复杂(见例9.4),是否能综合还取决于具体的除数;指数运算:只有当底数和指数都是静态数值(常量或GENERIC参数)时才可综合;MOD和REM:只能用于整数类型。两者区别在于符号不同,如果有两个操作数a和b,表达式aREMb的符号与a相同;表达式aMODb的符号与b相同。例如:7REM-2=1、-7REM2=-1、-7MOD2=1、7MOD-2=-1。

4、“mod”、“rem”操作的综合限制:若右操作数为2n,则可用移位电路实现,即可综合的,其它情况则不可综合。ABS:不可综合。6关系操作符7移位操作符语法结构:<左操作数><移位操作符><右操作数>例:令x<=“01001”,那么:y<=xssl2;---y<=“00100”;y<=xsla2;---y<=“00111”;y<=xrol2;---y<=“00101”;8并置运算符:例:使用并置运算符对信号赋值Z<=X&“1001”;----若X<=“101”,则Z<=“1011001”;Z<=(

5、‘1’,’0’,’1’,’0’);----Z<=“1010”;910各种操作符的优先级问题NOT和算术运算符中的ABS、**的优先级相同,是所有运算符中优先级最高的。运算符*、/、MOD、REM的优先级相同,低于NOT、ABS和**运算符六种移位运算符的优先级相同,高于关系运算符。并置运算符的优先级与加、减运算符相同,高于移位运算符;在VHDL中,左右没有优先组合的区别,一个表达式中如果有多个逻辑运算符,运算顺序的不同可能会影响运算结果,就需要用括号来解决组合顺序的问题。114.2属性(ATTR

6、IBUTE)属性是指从指定的客体或对象(如entity/type/architecture等)中获取关心的数据或信息。利用属性可以使VHDL源代码更加简明扼要,易于理解;语法:对象’属性预定义的属性:数值类属性和信号类属性12数值类属性:获取数组、块或一般数据的相关信息。VHDL预先定义的、可综合的数值类属性:left:索引的左边界值right:索引的右边界值high:索引的上限值low:索引的上限值length:索引的长度值range:索引的位宽范围reverse_range:索引的反向位宽范

7、围13例:variablemy_vector:bit_vector(5downto-5);各属性如下:my_vector’left5my_vector’right-5my_vector’high5my_vector’low-5my_vector’length11my_vector’range(5downto-5)my_vector’reverse_range(-5to5)14枚举类型数值的属性:通常是不可综合的VAL(pos):指定位置(pos)的值POS(value):给定数值的位置序号LEF

8、TOF(value):给定数值的左侧值VAL(row,column):位于行、列位置的值15信号类属性:VHDL预定义的,对于信号s:EVENT:如果s值发生了变化,则返回值为true,否则为falseXXX,常用于时钟信号的判定。STABLE:如果s值保持不变,则返回值为true,否则为false;ACTIVE:如果s值为‘1’,则返回值为true,否则为false;QUIET

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

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

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