打印

请教一下;非阻塞与阻塞赋值的区别

[复制链接]
2284|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
polariszhou|  楼主 | 2009-3-1 09:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
久迎21论坛的朋友乐开助人,在下想请教个问题:
这些天正在学verilog..看了过程赋值语句.对非阻塞与阻塞赋值的区别不太了解,主要是非阻塞到底是怎么回事,看得不太明白,所以向各位请教..

在非阻塞性过程赋值中,对目标的赋值是非阻塞的(因为时延),但可预定在将来某个时间步发生(根据时延;如果是0时延,那么在当前时间步结束)。当非阻塞性过程赋值被执行时,计算右端表达式,右端值被赋于左端目标,并继续执行下一条语句。预定的最早输出将在当前时间步结束时,这种情况发生在赋值语句中没有时延时。在当前时间步结束或任意输出被调度时,即对左端目标赋值.   (这是书上的话,没有看明白)

麻烦大家,谢谢.

相关帖子

沙发
Fourier00| | 2009-3-7 11:18 | 只看该作者

always @(*) Q=A|B

记住这个就可以了 时序逻辑用非阻塞赋值
always @(posedge clk or negedge rst_n)
Q <= D
组合逻辑用阻塞 就ok
always @(*)
Q=A|B

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝