首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于FPGA的时钟数据恢复电路的设计实现

基于FPGA的时钟数据恢复电路的设计实现

引言
    时钟数据恢复(Clock and Data Recovery, CDR)电路是高速收发器的核心模块,在光传输系统、背板连接以及IO接口等领域应用非常广泛。CDR的作用是根据接收数据本身的特点,找到采样数据的最佳时钟相位,使数据恢复稳定可靠。目前在通信系统中大量使用专用的CDR芯片大多采用PLL技术,成本较高。同时,FPGA由于其功能的灵活性、相对低廉的成本和较短的设计周期,已经大量在通信设备中的作为业务核心芯片,完成上下业务、电路交换以及开销处理等功能。本文提出一种基于FPGA的过采样时钟恢复方法,对全数字CDR设计加以改进,在Xilinx公司Virtex5系列芯片上实现STM-1数据的恢复。
    1 过采样法时钟数据恢复原理
    目前基于FPGA的全数字CDR多采用数字化过采样法,其两种具体的实现方式为同频多相时钟采样和数据延迟链采样,如图1所示。其基本原理是采用本地N*f的高速时钟,对信号作N倍过采样,通过对采样数据的分析判断出数据跳变沿的位置,实时寻找并切换到最佳采样时钟,从而恢复出数据与线路时钟。由于是一种相位前馈技术,过采样法具有较大的频率捕捉范围和较快的捕捉速度。
    受到FPGA工作频率限制,对高速数据直接采用频率为N*f的时钟采样困难很大,因此两种方法都是模拟N*f采样时钟在一个数据时钟周期内获取N个均匀采样值。为保证时钟恢复质量,N通常取6~8。

图1 同频多相时钟过采样与数据延迟链过采样时钟数据恢复原理

    同频多相时钟采样法需要在FPGA片内PLL或DCM产生N个与接收数据频率相近,相位相差2π/N的参考时钟,占用较多的PLL和全局时钟资源,而数据延迟链采样法一般以片内逻辑和布线资源构造抽头延迟线,延迟性能与芯片型号相关,且随温度变化,造成该方法实现困难且可靠性较低。
    2 模块电路设计
    2.1过采样模块
    过采样模块的设计目标是尽可能保证高速数据采样的相位精确,因此要求从数据输入管脚到8个第一级采样触发器具有相同的数据时延。本设计中采用了如图2所示的电路结构。

图2 过采样模块原理

    与以往设计不同的是,在接收数据通过差分数据缓冲器后,在过采样模块中采用FPGA内置的IDELAY模块将接收数据及其反相信号分别延迟相当于45o和0o相位的时间,再送给由PLL/DCM产生的相位分别为0o,90o,180o和270o的4路155.52MHz本地参考时钟采样,获得8倍过采样数据。此后,采用两级触发器将采样数据同步到相位0o的本地参考时钟域,以方便后级模块检测判决,同时避免了异步采样的亚稳态现象。最佳采样相位判决模块和数据恢复模块也工作在此时钟域。
IDELAY是Xilinx公司Virtex4以上系列芯片中增加的专门用于管理输入信号延迟的单元,具有稳定、精度高和可编程的优点。这种过采样设计不但保证了数据延迟相位的精确和稳定,而且减少了一半的采样时钟,节约片内时钟资源并降低了布线难度。在Virtex5系列FPGA中,IDELAY模块支持64级、步长78ps的延迟设置。在本设计中,为了恢复155.52MHz的STM-1数据,需要在IDELAY中将数据延迟1/(8*155.52*106)≈804ps,延迟级数804/78≈10。

    由于采样间隔仅0.8ns,FPGA片内布线延迟不能忽略,因此在获取45o相位数据延迟的同时,我们将接收数据的反相信号送入延迟时间设定为0的IDELAY,以保证两路数据的路径延迟相同。同时,通过在代码中加入相对位置约束条件,指定第一级触发器使用距离IDELAY最近的SLICE,这样能够保证两路数据到达各采样触发器的走线延迟最小,并且增强了代码的可移植性。通过FPGA Editor工具分析,实际布线后,从IDELAY输出到第一级采样触发器的路径延迟差最大仅为0.15ns。
继承事业,薪火相传
返回列表