进程中的信号赋值与变量赋值

进程中的信号赋值与变量赋值

比较对象 信号SIGNAL 变量VARIABLE
基本用法 用于作为电路的信号连线 用于作为进程中局部数据存储单元
适用范围 在整个结构体内的任何地方都能适用 只能在所定义的进程中使用
行为特性 在进程的最后才对信号赋值,有延时 立即赋值,无延时
与Verilog对比 信号赋值类似于非阻塞式赋值 变量类似于阻塞式赋值

在进程中的赋值应该注意以下3点

(1)信号的赋值需要有一个δ延时。
(2)进程中的赋值特点是,所有赋值语句,包括信号赋值和变量赋值,都必须在一个δ延时内完成
(变量在δ延时前即已经完成赋值),即一个进程的运行时间固定为一个δ延时。
“执行赋值”只是一个过程,它具有顺序的特征;
而“完成赋值”是一种结果,它的发生具有VHDL的信号赋值最有特色的并行行为特征。
(3)当在进程中存在同一信号有多个赋值源(即对同一信号发生多次赋值)时,
实际完成赋值,即赋值对象的值发生更新的信号是最接近END PROCESS语句的信号。

使用变量赋值的时序模块设计

ARCHTECTURE bhv OF DDF1 IS
	BEGIN
	PROCESS(CLK)
		VARIABLE Q1 : STD_LOGIC;
	BEGIN
		IF CLK'EVENT AND CLK = 
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

傻童:CPU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值