基于FPGA 的低成本长距离高速传输系统的设计与实现
解码模块如图3 所示,可分为6B/5B 解码模块、4B/3B 解码模块和误码检测模块。解码模块相对编码模块而言逻辑过程要简单的多,该模块首先将10 bit 信号分割成4 bit 和6bit 两部分(高低位必须和编码端对应),然后4 bit 和6 bit 数据根据编码列表分别解码成3 bit 和5 bit,在解码过程中判断是否有误码产生有则报错,无则并行输出。
图3 8B/10B 解码模块逻辑框图
2.2.数据时钟恢复模块
在单向数据传输中,串行通信通常需要同时提供数据、位时钟、帧同步脉冲三路信号。在本系统说要求的高速率、长距离的数据传输要求下,这种三线连接方式不但浪费导线,而且往往受环境的影响很难实现三路信号间的同步。在本系统中由于输入信号频率已知,因此可以在FPGA 芯片内部产生与之同频的时钟信号。通过数字锁相环电路锁定输入信号的相位,并使用此时钟信号对输入数据进行采样,从而完成信号的接收。因而,利用数据时钟恢复模块可以从串行位流数据中恢复出接收位同步时钟、帧同步脉冲和接收的数据。
数字锁相环(DPLL)是一种相位反馈控制系统。它根据输入信号与本地估算时钟之间的相位误差对本地估算时钟的相位进行连续不断的反馈调节,从而达到使本地估算时钟相位跟踪输入信号相位的目的。DPLL 通常有三个组成模块:数字鉴相器(DPD)、数字环路滤波器(DLF)、 数控振荡器(DCO)。根据各个模块组态的不同,DPLL 可以被划分出许多不同的类型。根据设计的要求,本文采用超前滞后型数字锁相环(LL-DPLL)作为解决方案,图5 是其实现结构。在LL-DPLL 中,DPD 采用微分型超前-滞后数字鉴相器,DLF 用双向计数逻辑和比较逻辑实现,DCO 采用加扣脉冲式数控振荡器。这样设计出来的DPLL 具有结构简洁明快,参数调节方便,工作稳定可靠的优点,其结构框图如图4 所示。
图4 超前滞后型数字锁相环
环路的工作原理如下:超前滞后型数字鉴相器LL-DPD 比较输入位流数据DataIn 与本地估算时钟ClkEst 的相位,给出相位误差信号Sign 和AbsVal。DLF 对相位误差信号进行平滑滤波,并生成控制DCO 动作的控制信号Deduct 和Insert。DCO 根据控制信号给出的指令,调节内部高速振荡器的震荡频率,使其输出时钟ClkEst(同时反馈给LL-DPD)的相位跟踪输入数据DataIn 的相位。
3.板级电路设计
本系统核心芯片采用Altera 公司的Cyclone III 系列FPGA 中的EP3C5E144C8, Altera 公司的Cyclone III FPGA 系列组合了高性能,低功耗和低成本,逻辑单元(LE) 从5K 到200K,存储器从0.5Mb 到8Mb,静态功耗小于1/4 瓦.
由于设计要求达到高速率、50 米的传输距离,传统的LVDS 接口虽然可以达到较高的传输速率却不能支持长距离传输。所以本系统采用高速串行数字接口(SDI)自适应电缆均衡器及电缆驱动器芯片来实现数据高速率、长距离的传输。
预加重是在信号发送前对其进行预扭曲,以使接收器上的信号质量如同原始发送的质量。当信号在直流电平上保持超过一个比特的时间时,预加重就会抬高高频分量而降低低频分量。本文选用CLC001 电缆驱动芯片,CLC001 采用3.3V 供电,输出幅度可调,理论数据速率最高可达622Mbps 。
接收均衡通过对输入数据运用相对频率特征来补偿信号的损耗特征。本文选用LMH0074SQ 接收均衡芯片,LM0074SQ 是标准清晰度SDI 电缆均衡器,可在540 Mbps 的速度范围内操作,输出抖动典型值为0.2UI。
FPGA 外部电路如图5所示,在发送端,FPGA 产生的LVDS 信号经CLC001 预加重后通过UTP-5 双绞线传输;在接收端,信号先经过LMH0074SQ 均衡后隔直输出。由于LVDS 接口电平标准要求输入电压直流偏置为1.2V,因此需要通过偏置电路在引入1.2V 的直流偏置后再传给FPGA。
图5 FPGA 外围电路
评论