18 - 发送器设计

🎯 课程目标

1. SERDES发送器架构

┌────────────────────────────────────────────────┐
│              SERDES TX架构                       │
│                                                  │
│  并行数据 ──→ [串行器] ──→ [FIR预加重] ──→ [CML驱动] ──→ TX+/- │
│              (N:1 MUX)   (3-tap/5-tap)   (差分对)  │
│                                                  │
│  TX时钟 ←──── [PLL]                              │
│                                                  │
│  配置接口 ←─ [控制寄存器]                         │
│              - 预加重系数                          │
│              - 驱动幅度                            │
│              - 去加重系数                          │
│              - Termination                        │
└────────────────────────────────────────────────┘

2. CML驱动器设计

CML(Current Mode Logic)驱动器是SERDES TX最常用的输出级结构。

2.1 CML驱动器原理

           VDD
            │
       ┌────┤────┐
       │    │    │
       │  R/2  R/2 │  负载电阻
       │    │    │
       ├── out_p  out_n ──┤──→ TX+/- 
       │    │    │         │
       │  ┌─┴─┐  │         │
       │  │Mn1 │  │         │  差分对
       │  └─┬─┘  │         │  (数据控制)
       │    │    │         │
       │  ┌─┴─┐  │         │
       │  │Mtail│ │         │  尾电流源
       │  └─┬─┘  │         │
       └────┤────┘         │
            │              │
           VSS            Z0=50Ω (终端)

工作原理:
- Mtail提供恒定电流Itail
- Mn1/Mn2交替导通,将Itail切换到out_p或out_n
- 输出摆幅 = Itail × R/2
- 阻抗匹配:R/2 = Z0 → R = 100Ω

优点:
- 恒定电流 → 低电源噪声
- 差分输出 → 抗共模干扰
- 速度极快 → 适合>10Gbps

2.2 CML驱动器SPICE仿真

* 18-cml-driver.sp
* CML差分驱动器仿真

Vdd vdd 0 1.0

* 差分输入数据(10Gbps)
Vdata_p data_p 0 pwl 0 1.0 0.05n 1.0 0.05n 0 0.1n 0 0.15n 0 0.15n 1.0
+ 0.25n 1.0 0.25n 0 0.30n 0 0.35n 1.0 0.40n 1.0 0.40n 0 0.50n 0

Vdata_n data_n 0 pwl 0 0 0.05n 0 0.05n 1.0 0.10n 1.0 0.15n 1.0 0.15n 0
+ 0.25n 0 0.25n 1.0 0.30n 1.0 0.35n 0 0.40n 0 0.40n 1.0 0.50n 1.0

* 负载电阻
R1 vdd out_p 50
R2 vdd out_n 50

* 差分对
Mn1 out_p data_p ntail 0 nch W=40u L=0.1u
Mn2 out_n data_n ntail 0 nch W=40u L=0.1u

* 尾电流源(4mA)
Itail ntail 0 4m
Mn_tail ntail vbias 0 0 nch W=60u L=0.2u
Vbias vbias 0 0.6

* 传输线等效负载
T1 out_p far_p Z0=50 TD=0.5n
T2 out_n far_n Z0=50 TD=0.5n
Rterm_p far_p 0 50
Rterm_n far_n 0 50

.tran 0.001n 0.6n
.measure tran vswing PP V(out_p) FROM=0.2n TO=0.5n
.measure tran trise TRIG V(out_p) VAL=0.3 RISE=1 TARG V(out_p) VAL=0.7 RISE=1
.measure tran tfall TRIG V(out_p) VAL=0.7 FALL=1 TARG V(out_p) VAL=0.3 FALL=1
.print tran V(data_p) V(out_p) V(out_n) V(far_p) I(Itail)
.end
✅ 仿真验证结果

CML驱动器仿真结果:

3. 预加重(FIR滤波器)

信道的高频衰减导致ISI(码间干扰),预加重通过在发送端提升高频分量来补偿。

3.1 FIR预加重原理

* 3-tap FIR预加重
* y[n] = c0 × x[n] + c-1 × x[n-1] + c+1 × x[n+1]
*
* 主抽头 c0: 主信号(通常最大)
* 前游标 c+1: 前向预加重(补偿前一个符号的ISI)
* 后游标 c-1: 去加重(补偿后一个符号的ISI)
*
* 典型设置(dB):
* 预加重 = 20×log10(c0/|c-1|) dB
* 去加重 = -20×log10(c0/|c+1|) dB
*
* 例: c0=0.8, c-1=-0.2 → 去加重 = -12dB

实现方法:
1. 将CML驱动器分为3段
2. 每段由不同抽头数据控制
3. 电流加权实现FIR系数

Segment 0 (主抽头): Itail × c0
Segment -1 (后游标): Itail × c-1 (反相数据)
Segment +1 (前游标): Itail × c+1

4. 阻抗匹配

SERDES TX的输出阻抗必须与传输线特性阻抗匹配(通常50Ω差分),否则会产生反射。

4.1 阻抗校准电路

工艺和温度变化导致实际阻抗偏差±20%。阻抗校准电路使用外部精密电阻作为参考:

* 阻抗校准原理
* 外部参考电阻 Rext = 200Ω (精度1%)
* 内部复制结构匹配输出驱动器
* 比较器+数字控制逐步逼近匹配

* 5位校准 (32级)
* R_on = R_unit / (N_enabled)
* 调节N_enabled使 R_on × 4 ≈ Rext

5. 练习

📝 练习1:CML驱动器设计

设计一个CML驱动器,要求:差分摆幅=600mVppd,终端阻抗=50Ω。计算所需的尾电流和负载电阻值。

查看答案

差分摆幅 = Itail × R_load × 2(差分)

600mV = Itail × R_load × 2

阻抗匹配:R_load = Z0 = 50Ω

Itail = 600mV / (50Ω × 2) = 6mA

功耗 = 6mA × VDD = 6mW @1.0V

6. 关键要点总结

🔑 本章核心要点
  1. CML驱动器使用恒定电流和差分对,是SERDES TX的标准输出级
  2. 输出摆幅由Itail×R_load决定,需要与终端阻抗匹配
  3. FIR预加重通过多段驱动器+抽头加权实现,补偿信道高频衰减
  4. 阻抗校准使用外部参考电阻,补偿工艺和温度变化
  5. 差分输出提供共模抑制,降低电源和衬底噪声影响

🏆 成就解锁:TX设计师

完成本课学习,你已经掌握了SERDES发送器的核心设计!

✅ 已掌握 CML驱动 ✅ 已掌握 FIR预加重 ✅ 已掌握 阻抗匹配 ✅ 已掌握 差分设计

5. 发送端信号调理技术

除了FIR预加重,TX还有其他信号调理技术:

5.1 去加重(De-emphasis)

去加重是预加重的对偶——降低连续相同位的信号幅度,而非提升变化位的幅度:

V_de = V_main - V_pre

去加重和预加重在数学上是等价的,但实现方式不同。

5.2 发送端均衡控制

现代SERDES TX的均衡参数通过寄存器配置:

寄存器位宽功能
TX_MAIN6-bit主抽头系数(0~63)
TX_PRE4-bit前游标系数(0~15)
TX_POST4-bit后游标系数(0~15)
TX_AMP3-bit输出幅度(8级)

6. TX功耗优化

SERDES TX是功耗大户,需要多种优化策略:

TX功耗优化方法

7. 差分信号布线规则

SERDES差分信号的PCB布线对信号完整性至关重要。

7.1 差分对布线规则

规则要求原因
差分间距5-8mil控制耦合度
等长匹配±5mil@10Gbps减少差分偏斜
阻抗控制100Ω差分阻抗匹配
过孔换层差分对同时换层保持对称
地屏蔽两侧加地孔减少串扰

7.2 信号完整性与电源完整性协同

电源完整性(PI)直接影响信号完整性(SI):

附录:设计参数速查表

参数符号典型值单位
IO电压(3.3V)VDDIO3.0-3.6V
IO电压(1.8V)VDDIO1.62-1.98V
核心电压VDD0.9-1.2V
ESD二极管VfVf0.6-0.8V
GGNMOS Vt1Vt16-10V
GGNMOS VhVh3-5V
GGNMOS It2It28-15mA/μm
SCR VhVh1-2V
SCR It2It250-80mA/μm
RC钳位时间常数τ0.5-2μs
施密特Vt+Vt+2.0V
施密特Vt-Vt-1.3V
焊盘电容Cpad2-5pF
焊线电感Lwire1-5nH
CML驱动电流Itail4-16mA
差分阻抗Zdiff85-100Ω
HBM 2kV峰值电流Ipeak1.33A
HBM 4kV峰值电流Ipeak2.67A
CDM 500V峰值电流Ipeak5-15A
LVTTL VIH(min)VIH2.0V
LVTTL VIL(max)VIL0.8V
📋 关键公式速查
📖 推荐参考资料
  1. Amerasekera & Duvvury, ESD in Silicon Integrated Circuits, Wiley
  2. Dabral & Maloney, Basic ESD and I/O Design, Wiley
  3. Razavi, Design of Analog CMOS Integrated Circuits, McGraw-Hill
  4. Li Yuan, High Speed SerDes Design, Springer
  5. JEDEC JS-001: HBM ESD Test Standard
  6. JEDEC JS-002: CDM ESD Test Standard
  7. PCI Express Base Specification, PCI-SIG
  8. USB 2.0/3.0 Specification, USB-IF

8. CML驱动器的版图设计

CML驱动器的版图对高速性能至关重要。

8.1 差分对版图规则

规则要求原因
差分对对称W/L完全匹配降低偏移
交叉耦合靠近最短距离减少寄生
尾电流源对称匹配布局减少偏移
负载电阻匹配同方向同尺寸减少增益误差
保护环完整PMOS N-Well环, NMOS P-Sub环闩锁防护

8.2 高速信号走线

版图中差分输出走线的寄生电感和电容直接影响信号完整性: