Verilog之非阻塞赋值(二)——赋值延后一个周期

阻塞与非阻塞赋值,当在always块中的每一个条件分支中,仅有一条赋值语句(不管是阻塞与非阻塞,且要满足条件中的条件判断式不含有在本模块中定义并赋值的reg变量(采用非阻塞赋值)),那么阻塞和非阻塞都是在时钟边沿瞬间完成的;(理解非阻塞赋值分两个过程,RHS的计算为第一步,LHS的赋值为第二步,这是第一层面;第二,由于两步时间非常短,变现出来就是在时钟边沿瞬间完成,故表现的和阻塞一样,这是第二个层面)

其二,当条件判断式中含有的条件判断式是外部输入的数据,或者是本模块的阻塞赋值变量,那么也是在边沿瞬间完成赋值(外部输入信号边沿对齐时钟边沿时要延后一个周期);

其三,如果条件判断式中含有本模块的非阻塞赋值的reg变量,那么在该条件分支下的非阻塞赋值语句会延后一个周期完成(相对于条件判断式中的变量的赋值完成)。

其四,一个条件分支中含有多条非阻塞语句时,若non1(第一条LHS)出现在第二条语句的RHS中,则会出现non2延迟一个周期的情况,如下;

要理解赋值和采样的不同,条件判断式中的条件相当于采样,即在时钟边沿条件变量的值被采样并与条件做对比,之所以条件中含有非阻塞变量时会延后一个周

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值