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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3030|回复: 7

[原创] 跨时钟域数据传递?

[复制链接]
发表于 2022-5-2 15:13:28 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 american007 于 2022-5-2 15:14 编辑

请教大家,如果 寄存器的输入 每个时钟被输入相同的值,通过异步时钟读取寄存器的输出端, 获取的数值是否稳定 ?
发表于 2022-5-2 20:06:03 | 显示全部楼层
本帖最后由 RayZyl 于 2022-5-7 21:49 编辑

thanks
发表于 2022-5-2 20:49:00 | 显示全部楼层
直接在下级的时钟采就可以,不用管异步
发表于 2022-5-4 04:53:47 | 显示全部楼层
本帖最后由 kk2009 于 2022-5-4 04:57 编辑

这个地方还是要小心的,如果后面马上用clock锁了之后再用是非常安全的。
以前碰到过一个挂在bus的寄存器是做enable寄存器用的,但是后面的fanout比较多,当时的想法就是在打开后不会动了,早一个cycle或者晚一个cycle 对功能不影响,就没有同步一下,直接就用了。在实际应用中,由于bus的clock频率跟这个模块的pinl不一样,而这个寄存器在另一个clock domain直接用了,结果就出现问题,这个寄存器设置成1后,所有功能都正常,但是断电后,再来一次,可能就不正常。。。。。原因就是这个enable信号,在另一个clock domain,在同一个clock cycle下,有的寄存器采成1,有的采成0,导致整个功能不正常。
发表于 2022-5-6 23:16:01 | 显示全部楼层


kk2009 发表于 2022-5-4 04:53
这个地方还是要小心的,如果后面马上用clock锁了之后再用是非常安全的。
以前碰到过一个挂在bus的寄存器是 ...


奇怪了,如果一直为1,那即使一开始亚稳态,后面也会采成1呀。用的是xilinx的片子吗
 楼主| 发表于 2022-5-20 04:36:51 | 显示全部楼层


kk2009 发表于 2022-5-4 04:53
这个地方还是要小心的,如果后面马上用clock锁了之后再用是非常安全的。
以前碰到过一个挂在bus的寄存器是 ...


请教一下,导致enable后面没有被正确采集到的原因时什么?fanout太多,负载太重 ?

发表于 2022-5-20 09:41:43 | 显示全部楼层
4楼说的是信号在跨时钟后输出到几个模块,由于亚稳态,到各个模块的稳定时间不一样,有可能会导致异常(与设计的电路相关),如果跨时钟后在各个模块各自去做同步,也会有相同的问题发生,所以同步电路只做一次,然后再输出到各个模块去。
 楼主| 发表于 2022-5-24 04:56:42 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

X

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

GMT+8, 2025-6-21 11:53 , Processed in 0.019719 second(s), 7 queries , Gzip On, MemCached On.

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