1. 项目背景与核心价值
在混合信号芯片设计领域,SAR ADC(逐次逼近型模数转换器)因其结构简单、功耗低的特点,一直是中高精度应用的首选方案。采用TSMC 28nm工艺实现10bit 100MS/s的SAR ADC,这个组合在物联网、5G通信和边缘计算设备中具有典型应用价值。
我最近完成的一个芯片项目正好采用了类似架构,实测在0.9V电源电压下达到98.6MS/s采样率,DNL控制在±0.5LSB以内。这种规格的ADC特别适合用在需要低功耗的中频信号处理场景,比如蓝牙5.0的基带芯片或者毫米波雷达的前端模块。
2. 架构设计与工艺选择
2.1 TSMC 28nm工艺的优势解析
选择TSMC 28nm HPC+工艺主要基于三个考量:
- 晶体管漏电流比40nm工艺降低约40%,这对ADC的静态功耗控制至关重要
- 金属层MOM电容密度达到5fF/μm²,有利于减小采样电容面积
- 提供的1.8V/3.3V I/O器件适合作为SAR ADC的比较器供电
实际流片数据显示,在TT工艺角、25℃环境下,单位电容匹配精度可达0.1%,这对保证10bit线性度非常关键。工艺提供的深N阱隔离也能有效降低衬底噪声对敏感模拟电路的影响。
2.2 10bit 100MS/s的技术挑战
要实现这个指标,需要解决几个关键技术点:
- 采样保持电路的建立时间必须<5ns
- 比较器决策时间需控制在300ps以内
- 电容阵列的RC时间常数会影响转换速度
- 时钟抖动必须<1ps RMS
我们的方案采用分段电容阵列(6+4bit)来平衡速度和面积,主DAC使用温度计编码的高4位来改善线性度。实测显示这种结构比二进制权重节省约15%的面积,同时DNL性能提升约0.2LSB。
3. 关键电路实现细节
3.1 采样保持电路设计
采用bootstrapped开关结构来改善线性度,关键参数:
- 开关导通电阻:~50Ω(在1.8V驱动下)
- 电荷注入误差:<0.05%
- 采样电容值:1.6pF(kT/C噪声考虑)
spice复制* Bootstrap开关示例电路
M1 in clk_boot vdd vdd pch l=0.028u w=0.42u
M2 in clk_boot gnd gnd nch l=0.028u w=0.28u
Cboot 2 clk_boot 200f
重要提示:bootstrapped开关的时钟交叠需要严格控制,否则会导致栅氧可靠性问题。我们采用非交叠时钟生成电路,保留1.2ns的保护间隔。
3.2 动态比较器优化
比较器采用两级前置放大+锁存结构:
- 第一级增益:~20dB(带宽1.5GHz)
- 第二级增益:~15dB(带宽2GHz)
- 锁存再生时间:<150ps
偏置电流选择需要权衡:
- 静态电流:200μA(保证足够gm)
- 尾电流源尺寸:W/L=2u/0.5u(避免闪烁噪声)
实测显示,比较器输入等效噪声约300μV,能满足10bit精度要求(1LSB=1.95mV@2Vpp输入)。
4. 电容DAC实现技巧
4.1 分段电容阵列布局
采用6+4bit分段方案:
- 高6位:单位电容=20fF(64个单位)
- 低4位:二进制加权(1-2-4-8)
布局时特别注意:
- 高6位采用共质心结构
- 添加dummy电容补偿边缘效应
- 金属走线对称布线降低梯度误差
后仿结果显示,这种布局使电容匹配误差从0.15%降至0.08%,INL改善约0.3LSB。
4.2 开关驱动电路
电容阵列开关采用渐进式驱动:
- 高4位开关:1.8V驱动
- 低6位开关:1.0V驱动(节省功耗)
驱动强度选择经验公式:
code复制Ron = 1/(μCox(W/L)(Vgs-Vth))
我们控制W/L使导通电阻约100Ω,保证建立时间的同时避免过大电流尖峰。
5. 时序控制与校准
5.1 时钟树综合要点
SAR ADC对时钟抖动极其敏感,我们的方案:
- 采用独立的PLL供电(LDO稳压)
- 时钟路径全部用shielded走线
- 缓冲器尺寸逐级放大(最后一级驱动能力>2mA)
实测时钟抖动控制在0.8ps RMS,满足100MS/s要求(允许抖动约1.2ps)。
5.2 后台校准技术
采用基于统计的电容失配校准:
- 注入伪随机扰动信号
- 采集1024个样本的直方图
- LMS算法计算校正系数
- 更新电容权重寄存器
校准后性能提升明显:
- DNL从±0.8LSB改善到±0.4LSB
- INL从±1.2LSB改善到±0.7LSB
6. 实测性能与优化记录
6.1 测试环境搭建
关键测试设备:
- 信号源:Keysight M8195A(16bit, 65GS/s)
- 采集卡:NI PXIe-5162(12bit, 1GS/s)
- 电源:Keithley 2280S(噪声<50μV RMS)
测试注意事项:
- 必须使用巴伦将单端转差分
- 输入信号需通过带通滤波(消除谐波)
- 电源端并联100nF+1μF电容组
6.2 实测数据对比
| 参数 | 仿真值 | 实测值 | 差异分析 |
|---|---|---|---|
| 采样率 | 100MS/s | 98.6MS/s | 时钟树延迟 |
| ENOB@10MHz | 9.7bit | 9.5bit | 电源噪声 |
| 功耗 | 3.8mW | 4.1mW | 衬底耦合 |
| FOM | 25fJ/step | 28fJ/step | 比较器偏置偏差 |
6.3 优化经验总结
通过三次流片迭代,我们总结出几个关键经验:
- 电容DAC的金属走线必须等长匹配(误差<5%)
- 比较器输入对管需要加guard ring
- 电源去耦电容要分布在ADC四周
- 数字控制信号需经过同步处理
第三次流片的改进效果:
- 动态范围提升2.1dB
- 功耗降低18%
- 芯片面积缩小12%
7. 常见问题排查指南
7.1 性能下降问题排查
问题现象:ENOB突然降低3bit
可能原因:
- 电源噪声过大(检查LDO输出纹波)
- 参考电压不稳定(测量REF引脚)
- 时钟质量恶化(用示波器测jitter)
- 温度超过125℃(检查散热)
7.2 典型设计陷阱
- 电容阵列的寄生电容未建模
- 解决方法:提取pex参数后仿真
- 比较器失调电压过大
- 改进方案:增加auto-zeroing电路
- 开关电荷注入影响线性度
- 优化方向:采用bottom-plate采样
7.3 生产测试技巧
-
用直方图测试DNL/INL时:
- 建议采样点数≥4096
- 输入信号幅度满量程的95%
- 频率选择质数(如19.7MHz)
-
动态参数测试:
- SINAD测试需确保FFT点数足够
- 建议使用Coherent Sampling方法
这个设计最让我意外的是,在第三次流片时发现电容阵列的金属温度系数会引入约0.3LSB的误差。后来通过在版图中增加温度传感器,并做数字补偿,最终将温度漂移控制在0.05LSB/℃以内。