在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5241|回复: 8

[求助] 请问always语句里是顺序执行的吗

[复制链接]
发表于 2014-3-19 20:46:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 pizibaidu 于 2014-3-19 21:33 编辑

请问一个always语句里是顺序执行的吗
发表于 2014-3-20 00:45:24 | 显示全部楼层
"always *" is the combination circuit
"always (posedge clk or negedge RESET)" is the sequence circuit
You can refer to the IEEE standard 1364
发表于 2014-4-6 15:28:59 | 显示全部楼层
回复 1# pizibaidu


   这个的看你always里面是怎么写的
用begin end可以认为是顺序的。

但是用fork join是并行的。

还有=和<=也是不一样的哦!
发表于 2014-4-7 07:57:39 | 显示全部楼层
有多种可能
可以贴个具体代码出来大家分析一下
发表于 2014-4-8 12:23:09 | 显示全部楼层
在 begin 和 end 之間的 statement,  若是
blocking assignment (=) 是顺序执行的
nonblocking assignment (<=) 是 concurrent 执行的
发表于 2014-4-8 18:56:40 | 显示全部楼层
是顺序的。
发表于 2016-5-8 16:13:27 | 显示全部楼层
到底是什么的呀,begin  end 之间用<=是并行还是顺序执行
发表于 2016-5-8 21:49:30 | 显示全部楼层
本帖最后由 zw84611 于 2016-5-8 21:59 编辑

begin  end 之间的代码是串行执行的,begin end间的<=也是串行执行的,比如:
begin
  a <= b;
  a <= c;
  d <= a;
end
最后a<=c起作用,a<=b相当于没起作用,是串行。a最后的值是c,而不是x(如果是并行,因为多驱动,值会是x)。
只不过赋给d的是a的老值,而不是c,这(非阻塞赋值)是用串行模拟并行的一种方法。但这并不是说begin end间的<=是并行,begin end间的代码是串行的,fork join间的是并行。多个always和initial间是并行。
发表于 2016-5-9 21:41:30 | 显示全部楼层
回复 8# zw84611


   你确定?能不能把仿真的结果发出来?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-9-21 17:36 , Processed in 0.022803 second(s), 10 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表