常数、变量、信号所描述的对象 在VHDL语言中,可以赋予一个值的的对象就称为客体或对象 对象主要包括以下3种 信号( SIGNAL):对应物理意义上是实际电路连接线 变量( ARIABLE):相当于暂存寄存器,变量值不是最终的结果。 常数( CONSTANT):如电源、地等,用来描述固定的值。 《总目录)《退出
21 常数、变量、信号所描述的对象 在VHDL 语言中,可以赋予一个值的的对象就称为客体或对象。 对象主要包括以下3种: 信号(SIGNAL ) :对应物理意义上是实际电路连接线。 变量(VARIABLE ) :相当于暂存寄存器,变量值不是最终的结果。 常数(CONSTANT) :如电源、地等,用来描述固定的值。 > 总目录 退出
常数、变量、信号所描述的对象 1、常数( CONSTANT) 格式: CONSTANT常数名:数据类型:=表达式 b: CONSTANT VCC: REAL: =5.0 CoNSTANT DALY TIME=100ns. CONSTANT FBUS: BIT VECTOR:=“1010” CONSTANT GI: BIT:=1. 数据类型和表达式表示的数据类型应该一致。 表示是位信息,而“表示的是位矢量信息 《总目录)《退出
22 常数、变量、信号所描述的对象 1、常数(CONSTANT) 格式: CONSTANT 常数名:数据类型:=表达式; 例: CONSTANT VCC: REAL:=5.0; CONSTANT DALY:TIME:=100ns; CONSTANT FBUS:BIT_VECTOR:=“1010 ” CONSTANT G1:BIT:= ‘ 1’; 数据类型和表达式表示的数据类型应该一致。 ‘ ’表示是位信息, 而 “ ”表示的是位矢量信息。 > 总目录 退出
常数、变量、信号所描述的对象 2、变量( VARIABLE 变量是局部变量,只能在进程、过程、函数中使用和定义。 格式 VARIABLE变量名:数据类型约束条件:=表达式 例 VARIABLE X, y:INTEGER VARIABLE x, Y:INTEGER RANGE 0 TO 255: =10 在程序中,变量的赋值是立即生效的,不能产生附加延时。 tmpl: =tmp2+tmp AFTER IOns x 《总目录)《退出
23 常数、变量、信号所描述的对象 2、变量(VARIABLE) 变量是局部变量,只能在进程、过程、函数中使用和定义。 格式: VARIABLE 变量名:数据类型 约束条件:=表达式; 例: VARIABLE x,y:INTEGER VARIABLE x,y:INTEGER RANGE 0 TO 255:=10 在程序中,变量的赋值是立即生效的,不能产生附加延时。 tmp1:=tmp2+tmp3 AFTER 10ns × > 总目录 退出
常数、变量、信号所描述的对象 3、信号( SIGNAL) 信号量是全局变量,只能在构造体中定义,而不能在进程、 过程、函数中定义 格式: SIGNAL信号名:数据类型约束条件:=表达式; SIGANL ground:Br:=“0’ SIGANL X, y: INTEGER RANGE 0 TO 255: =10 《总目录)《退出
24 常数、变量、信号所描述的对象 3、信号(SIGNAL ) 信号量是全局变量,只能在构造体中定义,而不能在进程、 过程、函数中定义。 格式: SIGNAL 信号名:数据类型 约束条件:=表达式; SIGANL ground: BIT:= ‘0’; SIGANL x,y:INTEGER RANGE 0 TO 255:=10; > 总目录 退出
常数、变量、信号所描述的对象 4、信号量和变量的区别 信号量是全局量,而变量是局部量。 信号赋值用“<=”而变量用":="。 信号和变量可以相互代入 如:a是变量,b是信号,则a:=bb<=a; 变量是立即赋值的,而信号量是在进程结束时赋值的。 《总目录)《退出
25 常数、变量、信号所描述的对象 4、信号量和变量的区别 ▪ 信号量是全局量,而变量是局部量。 ▪ 信号赋值用“<=” ,而变量用“:=” 。 ▪ 信号和变量可以相互代入。 如:a 是变量,b是信号,则a:=b;b<=a; ▪ 变量是立即赋值的,而信号量是在进程结束时赋值的。 > 总目录 退出