您现在的位置: 主页 > 电子技术 > EDA > VHDL数据对象及各种数据 -
本文所属标签:
为本文创立个标签吧:

VHDL数据对象及各种数据 -

来源: 网络用户发布,如有版权联系网管删除 2018-08-07 

[导读]——存放各种类型数据的容器,包括变量、常量和信号
1. 变量(VARIABLE)
规则:只能在进程(PROCESS)、函数(FUNCTION)和过程(PROCEDURE)中说明和使用的局域量
定义格式:
VARIABLE 变量名:数据类型{:=初始值

——存放各种类型数据的容器,包括变量、常量和信号

1. 变量(VARIABLE)

规则:只能在进程(PROCESS)、函数(FUNCTION)和过程(PROCEDURE)中说明和使用的局域量

定义格式:

VARIABLE 变量名:数据类型{:=初始值}

例如:VARIABLE a:INTEGER

VARIABLE b:INTEGER:=2;

变量赋值语句(区别端口赋值语句格式):

目标变量名:=表达式

例如:VARIABLE x,y:REAL

VARIABLE a,b:BIT VECTOR(0 TO 7);

x:=100.0;

y:=1.5+x;

a:=“1010101”

a(3 TO 6):=(‘1’,‘1’,‘0’,‘1’);

a(0 TO 5):=b(2 TO 7);

a(7) : = ‘0’;

注意事项:

变量是一个局部量,不能将信息带出对它作出定义的当前设计单元。变量的赋值是一种理想化的数据传输,是立即发生,不存在任何延时的行为。

VHDL语言规则不支持变量附加延时语句

变量赋值过程中必须保持数据类型的一致

2. 信号(SIGNAL)

规则:信号是在结构体(ARCHITECTURE)、程序包(PACKAGE)和实体中说明的全局量。

定义格式:SIGNAL 信号名:数据类型:=初值;

例如:SIGNAL temp:STD LOGIC:=‘0’;

SIGNAL flaga,flagb:BIT

SIGNAL data:STD LOGIC VECTOR(15 DOWNTO 0);

信号赋值语句:

目标信号名<=表达式

例如:x<=9;

y<=x;

z<=x AFTER 5ns;

信号具有全局性特征。

信号的数据传入不是即时的,需要一定延时时间。

信号与变量的区别:

(1)使用场合不同;(变量:进程;信号:结构体)

(2)变量用“:=”号赋值,其值被立即使用(无时间延迟);而信号用“<=”赋值,其值可以附加延迟。

3. 常数(CONSTANT)

规则:可以出现在实体、结构体、程序包、块、进程和子程序。常数在程序前部定义,且一旦被赋值就不能再改变。

定义格式:

CONSTANT 常数名:数据类型:=初值;

例如:

CONSTANT fbus:BIT VECTOR:=“010111”;

CONSTANT Vcc:REAL:=5.0;

CONSTANT dely:TIME:=25ns;

常量具有全局性意义。

常量数据类型必须与表达式的数据类型一致。常量的数据类型可以是标量类型或复合类型,但不能是文件类型(file)或存取类型(Access)。



来源:ks991次

本文引用地址: http://www.21ic.com/app/eda/201806/769216.htm



              查看评论 回复



嵌入式交流网主页 > 电子技术 > EDA > VHDL数据对象及各种数据 -
 

"VHDL数据对象及各种数据 -"的相关文章

网站地图

围观()