一. 变量:
1.变量的特点:
- 局部量(只能在进程和子程序中使用)
- 变量不能将信息带出对它定义的当前结构
- 变量的赋值是立即完成的,不存在任何延时行为
- 可以对变量进行多次赋值
- 不能列入进程的敏感表
2.变量的主要用途:
- 对进程中作为临时存储单元
3.变量的定义:
- variable muxval : integer range 7 downto 0;
- variable Q : std_logic :='1'; --定义变量并赋初值(不是必须的)
二.信号:
1.信号的特点:
- 全局特征(在实体中定义的信号,在其对应的结构体中都是可见的)
- 只能在实体、结构体、程序包中定义和使用,在进程和子程序中不允许定义信号
- 信号可以将信息带入或带出定义的当前结构
- 信号的赋值可以出现在一个进程(顺序语句),此时允许对同一目标信号进行多次赋值,但信号所获得的值来自最接近END PROCESS语句的赋值语句。
- 信号的赋值也可以直接出现在结构体的并行语句结构中,但此时不允许对信号多次赋值(因为并行语句执行是同时的)
- 进程只能将信号列入敏感表,而不能将变量列入敏感表
2.信号的主要用途:
- 在不同的进程当中传递信息(带出或带入)
3.信号的定义:
- signal muxval :integer range 7 downto 0;