第4章 运算操作符和属性.pdf
文本预览下载声明
4.1 运算操作符
VHDL提供了6种预定义的运算操作符:
♦赋值运算符
♦逻辑运算符
♦算术运算符
♦关系运算符
♦移位运算符
♦并置运算符
1 • VHDL Hardware Description Language Microelectronic Lab, Beijing Institute of Technology
赋值运算符
赋值运算符用来给信号、变量和常数赋值。赋值运
算符包括以下3种:
♦= 用于对SIGNAL赋值
♦:= 用来对VARIABLE,CONSTANT和GENERIC赋
值,也可以用于赋初始值。
♦= 给矢量中的某些位赋值,或对某些位之外的其他
位(常用OTHERS表示)赋值。
2 • VHDL Hardware Description Language Microelectronic Lab, Beijing Institute of Technology
赋值运算符
例子:
SIGNAL x:STD_LOGIC;
VARIABLE y: STD_LOGIC_VERTOR(3 DOWBTO
0); --最左边的位是MSB
SIGNAL w: STD_LOGIC_VERTOR(0 TO 7);
--最右边的位是MSB
x = ‘1’;
y := “0000”;
w= ;
w = (0 = ‘1’, OTHERS = ‘0’) ;
3 • VHDL Hardware Description Language Microelectronic Lab, Beijing Institute of Technology
逻辑运算符
逻辑运算符用来执行逻辑运算时操作。操作数必须
是BIT,STD_LOGIC,
STD_LOGIC_Vector,STD_ULOGIC,
STD_ULOGIC_Vector类型的数据
♦NOT——取反
♦AND——与
♦OR——或
♦NAND——与非
♦NOR——或非
♦XOR——异或
♦XNOR——— 同或
4 • VHDL Hardware Description Language Microelectronic Lab, Beijing Institute of Technology
逻辑运算符
例子:
♦y = NOT a AND b; --a的反和b做与运算
♦y = NOT(a AND b); --a和b的与,然后求反
♦y = a NAND b; --a和b做与非运算
5 • VHDL Hardware Description Language Microelectronic Lab, Beijing Institute of Technology
算术运算符
算术运算符用来执行算数运算的操作。操作数可
以是INTEGER,SIGNED,UNSIGNED或REAL数据类
型,其中REAL类型是不可综合的。
如果声明了ieee库中的包集std_logic_signed
和std_logic_unsigned,即可以对
STD_LOGIC_VECTOR类型的数据进行加法和减法
运算
6 • VHDL Hardware Description Language Microelectronic Lab, Beijing Institute of Technology
算术运算符
♦+ 加 可综合
♦- 减 可综合
♦* 乘
显示全部