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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
楼主: 杰克淡定

[原创] Verilog基本电路设计之一(单bit跨时钟域同步)

[复制链接]
发表于 2016-11-6 16:19:38 | 显示全部楼层
第二种 通过握手跨时钟的方案,是有逻辑上的漏洞的。
建议楼主再仔细思考一下
 楼主| 发表于 2016-11-7 09:13:50 | 显示全部楼层
回复 51# 冲出藩篱

什么漏洞?请指出
 楼主| 发表于 2016-11-7 09:18:30 | 显示全部楼层
回复 47# lxc806705

整个设计中,除了全局异步复位rst_n,何来异步复位风格?你如果说全局异步复位信号都不应该使用,那我们就没什么好谈的了,哈哈!
发表于 2016-11-7 10:02:59 | 显示全部楼层
本帖最后由 冲出藩篱 于 2016-11-7 12:19 编辑

回复 52# 杰克淡定


   我的个人理解,不一定对。
   单比特跨时钟域,由快到慢,握手的时间会造成,传输的bit信息的丢失。
 楼主| 发表于 2016-11-7 12:23:06 | 显示全部楼层




   任何电路使用都有它的前提条件的,这不是漏洞,是电路自身的限制而已。同步是需要花时间的,clka的脉冲向clkb同步,如果当前同步过程正在进行,clka又来了一个脉冲,那么后来的这个脉冲信息是无法同步到clkb,而是被遗漏的。使用电路的人应该清楚自己的电路工作场景并合理选用哪种电路。   这个就跟异步FIFO同步类似,FIFO的限制条件是空了不能读,满了不能写。现在就相当于clka写满了FIFO,此时你却不管它已经满了,一定再硬写一个数进去,那FIFO只能写爆了。
发表于 2016-11-7 14:51:38 | 显示全部楼层
回复 55# 杰克淡定

所以单bit跨时钟域,有以下几种情况:   1. 快到慢, 快慢时钟同源。
   2.  快到慢,   快慢时钟不同源。
    3.  慢到快,   
快慢时钟同源。

4.  慢到快,   
快慢时钟不同源。
    5. 不清楚两个时钟域的快慢,两个时钟同源/不同源。
根据每种情况,考虑到实际信号和时钟的特点,采取不同的处理方式。

纯粹交流,希望能够把单bit跨时钟域的问题,考虑完备。
发表于 2016-11-7 18:11:18 | 显示全部楼层
謝謝大大分享
 楼主| 发表于 2016-11-7 19:12:48 | 显示全部楼层
回复 56# 冲出藩篱

请仔细看两种代码前面的文字部分,都已经说明了代码适用场景。另外,同源同步时钟处理简单,不在本篇考虑之列,帖子专门针对的是两个异步时钟域之间的信号传递。
发表于 2016-11-7 19:57:49 | 显示全部楼层
回复 58# 杰克淡定

  用握手的电路来对应下面这段话,是不严谨的。

“clka下的脉冲信号,同步到clkb时钟域下,它对于clka与clkb的时钟频率关系没有任何限制,快到慢,慢到快都没问题。其主要原理就是先把脉冲信号在clka下展宽,变成电平信号,再向clkb传递,当确认clkb已经“看见”信号同步过去之后,再清掉clka下的电平信号”。



换句话说,我200M的信号:10000100 跨到 100M直接展宽两拍打拍同步过去没问题,但是用了握手之后,我就会1bit的信息的丢失。

所以应用握手电路跨时钟域要看实际的场景,而并非对于“clka与clkb的时钟频率关系没有任何限制,快到慢,慢到快都没问题。”。


纯粹技术讨论,做技术的。
发表于 2016-11-7 21:33:08 | 显示全部楼层
不错不错
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-3-28 17:26 , Processed in 0.028071 second(s), 6 queries , Gzip On, Redis On.

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