4. 差分放大器与失配分析
差分放大器是模拟IC设计中最核心的单元之一,也是面试中出现频率极高的考点。面试官通常不会只问“差分对有什么优点”,而是会沿着“结构—指标—失配—仿真验证”这条链路层层追问。本章围绕差分对、有源负载、共模抑制比(CMRR)、失调电压来源,以及如何用Cadence蒙特卡洛仿真区分随机失配与系统失配展开,目标是让你既能讲清原理,又能说清在Cadence里具体怎么搭、怎么跑、怎么看结果。
一、差分对与有源负载的基本结构
最基本的NMOS差分对由尾电流源ISS、一对输入管M1/M2和漏端负载构成。若负载是电阻,增益为gm·RD,但电阻占用面积大、压降大、匹配差。实际设计几乎都用有源负载,最常见的是电流镜负载:M3/M4构成PMOS电流镜,把M1的电流镜像到M2支路,形成单端输出。这种“差分输入—单端输出”的结构,其小信号增益为:
A_v = g_m1 · (r_o2 || r_o4)
其中gm1是输入管跨导,ro2、ro4分别是NMOS输入管和PMOS负载管的输出电阻。这里有一个面试常问的细节:电流镜负载把双端输出转成单端输出时,跨导等效为2gm还是gm?答案是单端输出时,M4镜像了M1的电流,输出电流变化为2·ΔI,而输出电阻仍为ro2||ro4,所以等效跨导为gm(若从双端看则是2gm)。这个区别在推导增益和噪声时非常关键。
尾电流源的作用是提供恒定偏置并抑制共模变化。理想尾电流源交流阻抗无穷大,共模增益为零。实际尾电流源由MOS管构成,其输出电阻RSS有限,共模增益为:
A_cm ≈ -g_m1 / (1 + 2·g_m1·R_SS) ≈ -1/(2·R_SS)
因此CMRR = |A_dm / A_cm| ≈ gm·RSS。要提高CMRR,核心是提高尾电流源的输出电阻,常用共源共栅(cascode)尾电流源,或采用共模反馈。面试中如果被问到“怎么提高CMRR”,不要只答“增大尾电流源阻抗”,要具体到cascode结构、增大L、或使用 regulated cascode。
二、失调电压的来源
失调电压VOS是差分放大器最关键的失配指标之一。它分为系统失配和随机失配两类,面试中必须能区分。
系统失配来自版图不对称、电流镜比例设计、负载不匹配等确定性因素。例如电流镜M3/M4若尺寸比不是1:1,就会引入固定失调;版图上M1/M2的源漏区不对称、阱邻近效应、STI应力梯度也会造成系统失调。系统失配可以通过对称版图、dummy管、共中心布局来减小,但无法靠增大面积消除。
随机失配来自工艺统计波动,主要是阈值电压VTH失配和电流因子β失配。其经典模型为Pelgrom定律:
σ(ΔV_TH) = A_VT / sqrt(W·L)
σ(Δβ/β) = A_β / sqrt(W·L)
其中AVT、Aβ是工艺相关的匹配常数,W·L是器件面积。可见增大面积可以降低随机失配,但代价是寄生电容增大、速度下降。输入参考失调电压可近似为:
σ(V_OS) ≈ sqrt( σ²(ΔV_TH) + (V_OV/2)² · σ²(Δβ/β) )
这里VOV是过驱动电压。注意:过驱动越大,β失配的贡献越大;所以低失调设计往往让输入管工作在中等过驱动,并优先增大面积来压制VTH失配。
三、用Cadence蒙特卡洛仿真评估失配
面试中常问“你怎么验证失调电压”,标准答案是:用蒙特卡洛仿真,并区分随机失配与系统失配。下面给出一个可复现的流程。
第一步:搭建测试台。在Cadence Virtuoso中搭建差分放大器,输入接共模电压VCM,输出接理想电压源做单位增益反馈(或开环加失调扫描)。为测输入参考失调,常用“失调扫描法”:在输入端加一个直流扫描电压VOS,test,观察输出过零点,记录使输出为零的VOS,test,即为该次仿真的失调。更高效的方法是用闭环单位增益配置,直接读输出与输入的差值。
第二步:设置蒙特卡洛。在ADE中启用Monte Carlo,选择“Process”和“Mismatch”两个选项。Process对应全局工艺角变化(die-to-die),Mismatch对应同一芯片内器件间的随机失配。若只勾选Mismatch,得到的是随机失配分布;若同时勾选Process和Mismatch,得到的是总失配。要单独评估系统失配,可以固定工艺角、关闭Mismatch,只改变版图寄生或电流镜比例,观察失调的确定性偏移。
第三步:设置样本数与统计量。通常跑200~500次。样本太少(如30次)得到的σ不可信。仿真完成后,在Results中查看VOS的直方图,读出均值μ和标准差σ。均值反映系统失配,σ反映随机失配。若均值明显偏离0,说明存在系统失调,需要检查版图对称性或电流镜比例。
第四步:结果判断。假设某次仿真得到μ=0.8 mV,σ=2.5 mV。若设计目标要求3σ失调小于10 mV,则3σ=7.5 mV,加上均值偏移0.8 mV,总最坏情况约8.3 mV,满足要求。若σ过大,优先增大输入管面积(W·L),因为σ(VTH)与1/sqrt(WL)成正比。若均值偏移大,则检查M3/M4的尺寸比、版图共中心对称、dummy管是否到位。
四、面试实战要点
面试官常追问的几个点:第一,“蒙特卡洛里Process和Mismatch有什么区别?”——Process是全局变化,所有同类型器件一起变;Mismatch是局部随机,每个器件独立变。第二,“为什么增大面积能降低失配?”——Pelgrom定律,σ与1/sqrt(WL)成反比。第三,“系统失配能不能靠蒙特卡洛看出来?”——不能直接看出来,因为蒙特卡洛的Mismatch是随机的,系统失配是确定性的;要单独评估系统失配,需固定随机种子、关闭Mismatch,或做版图后仿真对比。第四,“CMRR怎么仿真?”——分别加差模和共模小信号,测输出增益,取比值;或用AC仿真分别看差模增益和共模增益。
最后给出一份可直接参考的仿真配置清单,便于你在实际项目中快速落地:
| 项目 | 设置 | 说明 |
|---|---|---|
| 仿真类型 | DC + Monte Carlo | DC扫描输入失调,MC统计分布 |
| MC选项 | Process + Mismatch | 分别评估全局与局部失配 |
| 样本数 | 200~500 | 保证σ统计可信 |
| 输入共模 | VCM=VDD/2 | 保证输入管饱和 |
| 输出配置 | 单位增益闭环 | 直接读VOS=Vout-Vin |
| 关键观察量 | VOS均值与σ | 均值判系统失配,σ判随机失配 |
| 优化方向 | 增大WL、cascode尾电流 | 降σ、提CMRR |
掌握以上内容,你在面试中面对差分放大器与失配分析类问题时,就能从结构讲到指标,从指标讲到仿真,从仿真讲到优化,形成完整的闭环回答。