串化/解串器 & 时钟数据恢复电路CDR——可提供实现过程、仿真波形与具体参数细节
本文内容摘要
本文使用理想单元库和TSMC 28nm实现适用于串化/解串器和时钟数据恢复电路CDR,电路与仿真通过cadence软件及配套virtuoso实现:
- 利用理想单元完成全速树形串化器、半速树形串化器、全速移位寄存器串化器,半速多级树形解串器电路及其仿真测试
- 利用TSMC 28nm工艺完成成:
1、PLL型CDR:包括压控振荡器VCO、分频器DIV、电荷泵CP、鉴频鉴相器PFD、环路滤波器LP、锁定检测电路、脉宽拓展电路等
2、Bang-Bang型CDR:半速率 Bang-Bang 鉴相器、对称异或门、V/I 转换器、正交 LC 压控振荡器电路等
3、PS/PI型CDR电路:PS电路设计、PI电路设计、CML到CMOS电路等
背景
摩尔定律(Moore’s Law)预测的IC上所集成的晶体管数目每两年就翻一番成为可能。根据Rent定律,所需的芯片I/O引脚数量也需要相应地增长, 尤其在近些年,越来越多的全球互联网用户,要求更快的通信和更丰富的媒体内容, 基本上每两年总的I/O带宽就会提高一倍。
在高速有线接口中,基于SerDes(Serializer/Desrializer)的串行接口技术具有更少引脚数,更小面积和更高速率等优势。
在高速串行链路中用SerDes来实现数据的发送和接收,其中串化/解串器和时钟数据恢复电路(CDR)是接收机(Receiver, Rx)中最主要的部分之一。
串化/解串器
全速树形串化器
树形级联串化器是将 2mux1 的并串转换单元以 1 : 2 : 4 : … :2^n的比例级联以实现多路并行信号串化的功能。每一个 2mux1 并串转换单元的电路图如下图中右上角框图内所示,由正相触发器、反相锁存器以及二选一选择器组成。
半速树形串化器
修改设计4mux1的半速树形串化器电路结构如下图所示。Half-rate架构消除了最后输出级的高速时钟和触发器,这样会造成关键路径上信号不再由触发器设置时间,且对占空比更见敏感,但减半了时钟速率要求,使得前几个阶段拥有更多的时间裕度。现在最后一级的2选1选择器需要交换输入数据,以防输出故障。按以上思路修改得到16mux1的半速率树形串化器。
全速移位寄存器串化器
移位寄存器串化器也是 SerDes 发射机中常用的串化器电路结构,下图中所示的是 4:1 移位寄存器串化器电路。WRT 写入信号是一个占空比为 25%、频率与并行输入信号一致的周期信号。
其中,所需的四分频与四相位及写信号产生电路如下图所示:
多级树形解串器
采用多级树形解串器,其仅需要半速率时钟,且不需要多相位产生。多级树形4dmux1解串器电路如下图所示。由3/2延迟和1单位时钟周期延迟的触发器组成。
PLL型CDR
整体架构
PLL型CDR是一个双环路结构,电路图如图所示。在电路工作的最初阶段,PLL 环路上电之后正常工作,直至电路的反馈时钟参考输入时钟的频率一致或者小于最初设计的偏差值后,电路中的锁定检测模块就会甄辨出这一状态,并输出一个信号控制电路切换到 CDR 环路工作
鉴相器的捕获范围是有限的,如果输入参考信号与反馈信号最初的频率差异较大,环路将无法准确锁定,事实是极大的可能最终会锁定在其谐波频率上。所以,为了使压控振荡器的输出能够准确且快速地锁定至最终频率点处,在电路工作的最初阶段,采用了一个使用鉴频鉴相器的的 PLL 环路,这个 PLL环路与 CDR 环路共用了电荷泵,环路滤波器以及压控振荡器模块。同时在电路中引入了一个锁定检测模块,它通过检测环路的的反馈时钟与参考时钟频率是否一致,来判断 PLL 环路的锁定情况,当检测到 PLL 环路已经锁定时,就会产生一个选择信号,控制电路切换到 CDR 环路,以最终实现时钟数据恢复的功能。
其中采用TSMC28nm工艺库和理想单元库设计完成所需的压控振荡器VCO、分频器DIV、电荷泵CP、鉴频鉴相器PFD、环路滤波器LP、锁定检测电路、脉宽拓展电路等。如有需要,可私下联系我
实现结果
外加参考时钟625MHz激励,并提供10GHz数据,得到仿真结果如图所示。可见,0.4μs后PLL频率接近10GHz,此时锁定检测模块输出高电平,切换输入给CP以及后面环路的输入来自CDR环路的HOGGE鉴相器,在经过30ns后达到稳定状态。
Bang-Bang型CDR
整体架构
BBPD 工作速度快,结构可靠,且不进行跳变选择,降低了电路设计复杂度,代价是引入了有限的时钟额外抖动。由于使用 BBPD,此种 CDR 又被称为 Bang-Bang CDR。
半速率 Bang-Bang CDR 结构如图所示,它与经典 CDR 的区别是 VCO 输出的是两路相互正交的差分时钟信号,同时 BBPD 的时钟输入也是正交时钟信号。
其中采用TSMC28nm工艺库和理想单元库设计完成所需的半速率 Bang-Bang 鉴相器、对称异或门(电流模)、V/I 转换器、正交 LC 压控振荡器电路。如有需要,可私下联系我
PS/PI型CDR电路
PS电路设计
PS电路的主要功能是从输入的八相时钟中选出四相时钟输出,本文通过设计MUX电路实现从四相时钟中选出两相时钟出来,将MUX级联在一起构成PS电路。MUX电路基于CML结构。
PI电路设计
相位插值电路的功能是实现在插值区间内的线性插值,本文设计的PS/PI电路中PI电路插值的区间为45°。PS电路选出的四相时钟outP1/outN1与outP2/outN2确定插值区间为outP1-outP2与outN1~outN2,插值后输出一对介于插值区间内的互补时钟interP/interN,图PI电路结构示意图,图中IC代表着两对差分对管的尾电流源。
电流源阵列
尾电流源阵列通常称为由权重系数ω控制的电流舵型数模转换器(current-steeringDigital-AnalogConvertor)。
- 若编码采用二进制码实现,则需要使用n个电流支路便可以实现2^n位控制信号的编码,这种编码方式所需的电流支路最少,节省电路面积与功耗,但是如当控制信号从01111到10000变化时,多位控制信号同时变化,极易造成码间干扰,五个电流支路的开关同时变化,会使电流产生毛刺,并且权重比例因子越大的支路,其控制位改变时对输出电流的稳定性影响越大,由于比例因子不同,管子尺寸设计也会不同,版图上的失配会使得毛刺严重影响到输出电流的稳定性,进而会影响插值时钟相位变化的线性度,使时钟抖动变大。
- 若使用温度计码,温度计码每次跳变只改变一位控制信号,这样使电流的变化变得比较平滑,输出时钟的抖动也较小,但是温度计编码需要2^n条电流支路实现2*n次跳变,这使在版图设计时,布线变得复杂,当布线无法保证每个控制信号的路径大致相同时,也会造成较大的失配,影响输出时钟相位的线性度。
所以,一般是低几位选择二进制编码,高几位选择温度计编码,既能节省电流支路又可以避免所有控制信号位同时跳变所带来的毛刺,输出电流比较平滑,输出时钟的抖动也大大降低。
实现细节可联系交流
本文中提到的所有电路均于Cadence中实现,IC科班出身,可提供集成电路模拟设计的帮助,有需要交流的可联系我。