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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
楼主: cheng520so

【求助】时钟数据恢复电路CDR的FPGA实现

[复制链接]
发表于 2015-4-28 15:15:12 | 显示全部楼层
回复 1# cheng520so


已经知道数据率,产生这样大小的时钟即可,为什么还要恢复时钟?
发表于 2015-4-29 15:08:32 | 显示全部楼层
本帖最后由 tmfjek 于 2015-4-29 15:12 编辑

时钟数据恢复电路数字实现所要考虑的因素
    只考虑固定数据速率下通过本地时钟移相恢复数据时钟,对于有多种速率变换情形用多速率并行检测即可。
先假设数据发送端的周期陡动最大值为dts=ts0-ts,再假设接收端有N个可能的等相位差恢复时钟,分别为
clk0,clk1,.......clkN-1,分辨率为dte=te/N,如下图所示。(ts=te)
           dte
          |     |
          |--------|
clkn---|            | -------
                |--------|
clkn+1-----|           | -------
      ----\/------------\
data----/\------------/
考虑set_up和hold,显然采用clkn或者clkn+1作为恢复时钟都不合适。由于源端的陡动可能变快也可能变慢,所以最理想的恢复时钟
(最大陡动情况下保证尽可能多的连续数据采样的set-up hold不违规),应该是以clkg其中g是n+1+(N-2)/2对N取模。用这个恢复时钟
采样,允许的data在时间轴上的变化窗口为dte*((N-2)/2),否则可能会出现set-up或hold违规。到此就可以算出能正确恢复出的最长数
据为
           dte*((N-2)/2)
num = -------------
                |dts|
如果接收数据长度超过num,可能会因为亚稳态导致数据出错。num是可以确信无误的最大传输长度。同时由于接收端时钟也会存在陡动,
考虑到数据和时钟相位的相对性,可以把接收端的陡动叠加到发送端进行计算。根据前面的分析,数字恢复时钟策略对于已存在的标准
通讯协议(像以太网PHY),只有当允许的最大传输长度满足协议要求才有意义。虽然增大N能扩大变化窗口,但N过大PR会存在问题,
同时精细的相位控制不易实现。所以这种策略对自定义的通信接口可能更有意义,对于发送数据长度超过num的情况,可以在num边界点
上重发同步头重新提取时钟来解决。
发表于 2015-11-27 15:11:53 | 显示全部楼层
下来学习下,谢谢。
发表于 2017-11-19 14:37:54 | 显示全部楼层
谢谢分享
发表于 2018-12-19 21:43:58 | 显示全部楼层
学习中。。。。。
发表于 2019-1-5 19:15:07 | 显示全部楼层
非常感谢啊
发表于 2020-3-23 13:50:36 | 显示全部楼层
感谢!正在学习
发表于 2020-9-10 15:40:27 | 显示全部楼层
这帖子牛逼
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-5-2 14:46 , Processed in 0.023719 second(s), 5 queries , Gzip On, Redis On.

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