首页 理论教育 VHDL数据对象详解

VHDL数据对象详解

时间:2023-06-24 理论教育 版权反馈
【摘要】:常量的定义格式为:constant常量名:数据类型:=表达式;constantDAT1:integer:=16;--整数型constantVEC:std_logic_vector:=“11010111”--长度为8的标准位矢量常量2.变量变量作为局部量,其有效范围仅限于定义它的进程或子程序中。变量定义的格式为:variable变量名:数据类型:=初始值;--定义变量变量名:=表达式;--给变量赋值3.信号信号是描述硬件系统的基本数据对象,它类似于连接线。在进程中只能将信号列入敏感表,而变量不能列入敏感表。

VHDL数据对象详解

1.常量(constant)

常量的设置主要是为了使设计实体中的常数容易阅读和修改。例如将位矢量的宽度定义为一个常量,只要修改这个常量就很容易地改变设计实体的规模。常量的有效范围取决于它所定义的位置。在程序包中定义的常量对调用此程序包的所有设计实体有效,在实体中定义的常量对属于这个实体的所有结构体有效,在结构体中定义的常量只能用于此结构体,在进程(process)中定义的常量只能用于此进程。常量的定义格式为:

constant 常量名:数据类型:=表达式;

【例8.2.1】

constant DAT1:integer:=16;  --整数型

constant VEC:std_logic_vector:=“11010111”  --长度为8的标准位矢量常量

2.变量(variable)

变量作为局部量,其有效范围仅限于定义它的进程或子程序中。变量定义后可以多次对它赋值,所赋的值必须与变量定义的数据类型一致。变量定义的格式为:(www.xing528.com)

variable 变量名:数据类型:=初始值;  --定义变量

变量名:=表达式;  --给变量赋值

3.信号(signal)

信号是描述硬件系统的基本数据对象,它类似于连接线。信号可以作为设计实体中并行语句模块间的信息交流通道。信号的定义范围是实体、结构体和程序包,在进程和子程序中不允许定义信号。在程序包中定义的信号对调用此程序包的所有设计实体有效,在实体中定义的信号对属于这个实体的所有结构体有效。

在进程中只能将信号列入敏感表,而变量不能列入敏感表。或者说(敏感表中)信号的改变才会启动进程的发生,而变量则不然。

signal 信号名:数据类型:=初始值;  --定义信号

信号名<=表达式;  --给信号赋值

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈