VHDL中信号与变量的差异

      在VHDL中,使用信号(signal)或变量(variable)可以实现动态数值的传递,二者功能虽然类似,但在实现方式上却有着很大的区别。对于初学者,理解信号和变量的差异是十分重要的。

1. 信号(signal)

      信号是逻辑电路中的连接线,可以用于元件间和元件内部电路各单元间的连接。

      信号使用”<=“符号赋值。

      在顺序描述语句中,信号的赋值不是即时更新的。只有在相应的进程、函数或过程完成之后,信号的值才会进行更新。


2. 变量(variable)

      变量只用于局部电路的描述,只能在process、function和procedure内部使用。

      变量使用”:=“符号赋值。

      变量的赋值是立即生效的,可以在下一行代码中立即使用新的变量值。


3. 信号与变量赋值的生效时刻

      信号与变量的一个重要差异是赋值是否立即生效。对变量的赋值是立即生效的,而在顺序描叙语句中对信号的赋值则不会立即生效,只有当信号所在的process内的操作全部完成一遍后,信号的值才会更新。

      下面通过两个例子说明信号与变量赋值的生效时刻。如下面所示的两个计数器:

library IEEE;
use IEEE.STD_L
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值