作为一名模拟电路工程师,最近逆向分析了一款16位Pipeline ADC的模拟部分设计,发现其中有不少值得玩味的"骚操作"。这种高精度ADC通常用于医疗仪器、基站接收机等场景,而模拟前端的设计直接决定了系统性能上限。本文将重点拆解采样保持电路、MDAC级联结构和基准源设计中的关键技术点,特别关注那些非常规设计背后的考量。
逆向过程中最引人注目的发现是第三级MDAC中电容阵列的比例异常。传统1.5bit/stage架构通常采用2:1:1:1的电容比例,但实际逆向得到的比例却是2.73:1:1:1。这种偏离标准值的设计在业界文献中较为罕见。
通过SPICE仿真可以验证,当残差放大器的非线性度达到0.05%时,采用标准2:1:1:1比例会导致第三级输出出现约1.2LSB的DNL误差。而将主电容C1调整为2.73倍后,非线性误差可降低到0.3LSB以内。
这种补偿原理可以从电荷重分配方程理解:
code复制Vres = (2.73*Vres + 1*Vref + 1*(-Vref) + 1*0)/(2.73+1+1+1)
通过增大主电容比例,实际上是在信号路径中引入了一个预失真环节,恰好抵消了放大器增益非线性带来的误差。这种设计在牺牲少许噪声性能的前提下(因为总电容增大),换来了更好的线性度。
注意:实际布局时要特别注意2.73倍电容的匹配问题。建议采用中心对称的叉指结构,并保持dummy电容环绕。
逆向数据显示第二级残差放大器在86dB增益下仍有62度相位裕度,这与常规两级运放设计经验相悖。通常这类放大器在如此高增益下,相位裕度很难超过55度。
通过拆解SPICE模型发现,原设计可能在第二级电流镜中采用了动态偏置技术。具体表现为:
逆向得到的运放架构显示其采用了非对称的米勒补偿:
code复制Cc1 = 500fF (主极点补偿)
Cc2 = 120fF (针对第二极点的辅助补偿)
这种双电容补偿网络可以在保持足够相位裕度的同时,将单位增益带宽提高约30%。实测中需要注意:
逆向数据显示比较器锁存与采样开关的重叠时间仅120ps,这对16bit精度设计来说风险极高。通过计算可以量化其影响:
时序抖动导致的噪声功率:
code复制σ_jitter = 120ps
fs = 100MHz → σ_noise = Vpp * σ_jitter * fs / √12 ≈ 3.1LSB
这意味着仅时序抖动就会消耗掉3个LSB的动态范围。
如此激进的模拟设计能够工作,必然有强大的数字后台校准支持。推测原设计可能包含:
在复现时建议:
逆向发现第四级突然改用Dummy开关结构,这显然是为了补偿前三级累积的电荷注入误差。通过Verilog-A建模可以观察到:
当开关尺寸为8um/0.18um时:
精确建模开关非线性时需要注意:
code复制Vth = Vth0 + γ(√|2φF + Vsb| - √|2φF|)
code复制Qinj = 0.5*W*L*Cox*(Vgs-Vth) + W*LD*Cox*Vgs
逆向数据显示基准源在100kHz处PSRR骤降到46dB,这通常意味着:
实测有效的优化方法:
code复制R = 10kΩ, C = 100pF → τ = 1μs
在实际复现这个设计时,我总结了几个关键要点:
这个逆向案例最值得学习的是设计者如何在工艺限制下,通过架构创新实现性能突破。比如2.73:1的电容比例和动态偏置的运放设计,都体现了对电路原理的深刻理解。