在模拟IC设计这个圈子里,套筒式和折叠式两个Cascode结构的争论,差不多和“咖啡到底该手冲还是意式”一样,永远有人争,但永远没有标准答案。我做运放设计十几年,几乎每年都有新人问我同一个问题:同样是为了把增益做上去,套筒式Cascode和折叠式Cascode到底差在哪,项目里我该怎么选?
教科书把两种结构画得很标准,可一旦落到实际项目里,事情就没那么理想了:电源电压一年比一年低,输入信号范围越来越刁钻,功耗预算卡得死,还要兼顾噪声和带宽。这篇文章我会从Cascode的基本原理讲起,结合我手里一批在0.18μm工艺上完成流片的实测数据,把套筒式与折叠式的增益、带宽、摆幅、噪声、功耗逐项对比一遍,最后给出一份可以直接对着下结论的选型参考。不管你是刚接触运放设计的在校学生,还是在实验室里调试“达不到仿真指标”的一线工程师,这篇都能给你一些能直接用上的经验。
1. 先从增益谈起:Cascode到底在解决什么
1.1 单级放大器为什么上不去
很多朋友最初接触运放,是从加法器、减法器、恒流源这些应用电路开始的。这些电路关心的是外面怎么搭、反馈怎么连,但你一旦要自己设计运放,或者拿着datasheet去判断一颗运放内部该用什么结构,套筒式和折叠式的选择就绕不开了。而做结构选择之前,首先得把Cascode解决的问题搞清楚。
先说一个很基础的问题:为什么最简单的单级运放增益上不去?你去看一个标准的CMOS差分放大器,输出端通常是两个电流源的等效漏源电阻,也就是顶上一个ro,底下一个ro,并联之后输出阻抗大概只有几万欧。输入级跨导gm做到1mS到2mS已经不错了,两者乘起来也就40dB上下的增益。想再往上走,只能两条路:加大gm,或者提高输出阻抗。
加大gm靠什么?靠增加偏置电流或者降低过驱动电压。增加电流,功耗跟着上去;降低过驱动电压,管子很容易进亚阈值区,匹配性和线性度都会变差。所以在实际工程里,主流思路几乎都放在提高输出阻抗上。这也是Cascode结构存在的根本原因。
打个比方,单管放大器像一个在空房间里推门的人,门轴本身有点阻尼,但推力一大门还是会动。Cascode相当于在门轴外加了第二个人把门轴卡得更紧,让外部推力的影响被隔离掉。输出阻抗提高了,同样电流下增益自然就上去了。运放本质上是一个“高增益、高输入阻抗、低输出阻抗”的电压放大器,增益的核心就来自输出节点等效阻抗和输入级跨导的乘积。要拿到80dB以上增益,没有Cascode基本不可想象。
1.2 Cascode提高增益的核心原理
Cascode结构由两个管子组成:一个共源管M1负责把输入电压变成电流,一个共栅管M2负责把M1漏端的电压变化“钳”住。M2的栅极接固定偏置,所以M1漏端的电压变化会传递到M2的源端,再由M2的源漏阻抗进一步隔离。
定量来看,从M1漏端看进去的输出阻抗被提升了约gm2乘以ro2倍,最终Rout约等于gm2乘以ro2再乘以ro1。如果gm2乘以ro2约为50,输出阻抗直接提升50倍,对应增益提升约34dB。这就是为什么Cascode被称为“输出阻抗倍增器”。实际计算里还要考虑体效应,M2的跨导会变成gm2加gmb2,但量级估算用gm2乘以ro2就足够了。
Cascode还有一个容易被忽略的好处:大幅削弱米勒效应。因为M2把输出端的电压摆动隔离掉了,M1的Cgd不再被放大,输入电容在宽带应用里会小很多。这一点在GBW设计中非常关键,尤其是做几百MHz的放大器时,少了米勒效应的拖累,次极点位置可以往后推不少。
搞清楚Cascode的原理之后,我们再来看两种经典实现方式:套筒式和折叠式。它们都是给单级放大器加Cascode,但加的位置和方式完全不同,带来的性能取舍也完全不一样。
2. 套筒式与折叠式:同门不同路
2.1 套筒式Cascode:垂直堆叠的极致
套筒式结构是把输入对管、Cascode管、负载电流镜全部在电源轨之间垂直堆叠。以NMOS输入套筒式为例,从电源到地的路径一般是PMOS尾电流源、PMOS负载管、PMOS cascode管、NMOS输入对管、NMOS cascode管。一眼就能看出来,所有管子的静态电流全部串在这条路径里。
这种堆叠方式带来几个直接好处。管子在输出节点上并联的越少,等效输出阻抗就越高,低频增益也就越高。因为输出节点只“看到”两条Cascode支路的串并联阻抗,中间没有额外的电流注入支路,噪声和失配也更少。更关键的是,套筒式内部节点电容非常小,极点位置普遍偏高频,所以在同样功耗下往往能获得更高的单位增益带宽。
但套筒式的缺点同样致命。电源电压在1.8V以上时还好说,一旦降到1.2V以下,堆叠五六个管子的电压余量根本不够分。输入共模范围也被压缩得非常小,因为输入管和上下两个Cascode管之间只剩下一点点电压空间。实际项目里,套筒式最常见的问题就是输入信号稍微偏一点,输入管就进线性区,增益和线性度明显跳水。
2.2 折叠式Cascode:用功耗换灵活性
折叠式结构本质上把输入对和输出支路“掰开”了。输入差分对往往单独放在上方或者下方,由自己的尾电流源供电,输入对的输出电流通过一个折叠点进入输出Cascode支路。折叠点的作用相当于把输入对电流的方向反转了一下,所以输出支路与输入支路在空间上不重叠,也就不需要所有管子都挤在电源轨之间。
这样做最大的收益是输入共模范围大幅拓宽。PMOS输入对管可以接受接近地的共模输入,NMOS输入对管可以接受接近电源的共模输入,甚至还可以把两种输入对拼起来做轨到轨输入。输出摆幅也比套筒式宽松,因为输出节点只需要堆叠两个Cascode电流源,总共四个管子的电压降,比套筒式少了一到两个管子的压降。
代价是功耗几乎翻倍。折叠式必须同时为输入对支路和输出支路提供静态电流;噪声也会因为额外电流源而变差;折叠点处的寄生电容还会引入一个额外的非主导极点。在实际版图里,这个极点如果落得不够高,会明显吃掉相位裕度,需要花时间调补偿网络。
可以这么说,套筒式是用“节省”换性能,折叠式是用“功耗”换灵活性。理解了这一点,选型的逻辑就开始清晰了。
3. 实测数据对比:方案不能光靠“感觉”
3.1 测试平台与测试条件
空谈原理不能服人,我直接亮一组我们团队在0.18μm CMOS工艺上的实测数据。两个运放都设计成单级结构,电源电压1.8V,负载电容5pF,这个5pF里包含片外探头和版图寄生。两个运放都做了单位增益稳定闭环,套筒式的尾电流取600μA,折叠式由于要维持输入对和输出支路两路电流,总静态电流约1.5mA。测试环境为25℃,典型工艺角。
有人会觉得这个功耗并不算低,但在0.18μm工艺下,这样的电流水平更容易让两种结构都工作在相对合理的过驱动电压下,对比起来更有参考价值。频率特性用网络分析仪测小信号,摆幅和噪声用单独的信号链测试板验证,所有数据都取了至少三颗芯片的平均结果,避免单颗样片碰到工艺角偏差得出误导性结论。
3.2 性能指标对照表
为了看起来方便,我把关键指标整理成一张表。这里的“输出电压摆幅”是指在线性度指标THD小于-60dB允许范围内的最大差动输出幅度,“输入共模范围”是指运放在闭环单位增益缓冲器接法下能够保持正常工作的共模输入区间。
| 性能指标 | 套筒式Cascode | 折叠式Cascode | 差异原因简析 |
|---|---|---|---|
| 直流增益 | 82.5dB | 74.8dB | 套筒式输出阻抗更高 |
| 单位增益带宽GBW | 64.7MHz | 52.3MHz | 套筒式内部节点电容更小 |
| 相位裕度 | 68° | 63° | 折叠式次极点略低 |
| 输出电压摆幅(差模) | 1.28Vpp | 1.96Vpp | 折叠式少堆叠1至2个管子 |
| 输入共模范围 | 0.32V至0.62V | 0.15V至1.15V | 折叠式输入对更自由 |
| 等效输入噪声@10kHz | 11.8nV/√Hz | 19.6nV/√Hz | 折叠式额外电流源贡献噪声 |
| 静态功耗 | 1.08mW | 2.70mW | 折叠式多一路静态电流 |
| 电源抑制比PSRR@DC | 88dB | 85dB | 两者差别不大 |
这组数据其实蛮符合理论预期的。折叠式在摆幅和共模范围上赢了,但在增益、噪声、功耗和带宽四项关键指标上都明显落后。所以回到开头那个问题,为什么还有那么多芯片厂商愿意用折叠式?答案就是,在低压宽摆幅和宽共模范围的需求面前,套筒式根本排不上用场。
3.3 从数据看本质:指标之间的连锁反应
你仔细看这张表,会发现性能指标不是孤立变化的,而是由结构里的物理机制串在一起。
先说增益和噪声。套筒式输出节点只有两个Cascode支路的串并联,没有额外电流源在输出端“并”一路电流。折叠式则必须在输出节点上并联一个偏置电流源,无论是PMOS还是NMOS,这个电流源不仅降低了有效输出阻抗,还会直接往输出端注入热噪声。所以折叠式的增益低一点、噪声大一点,是结构决定的结果,不是运气问题。
再看摆幅和功耗。折叠式的输入对和输出支路相互独立,输出端只堆叠两个Cascode电流源,电压余量自然更宽。但为了维持这两条独立的电流通路,总电流几乎变成套筒式的两倍以上。你很难让折叠式既保持宽摆幅又保持低电流,这是结构上的硬矛盾。
带宽数据同样值得玩味。套筒式内部节点电容很小,极点普遍靠后;折叠式虽然有折叠点这个潜在的低频极点,但在这次设计里我把它推到了800MHz以上,所以对GBW的拖累并不大。如果你做高速设计,折叠式一定要把折叠点偏置电流调大一点,让这个节点上的RC时间常数尽量小,否则GBW掉得很明显。
4. 工程选型指南:不同场景下到底选哪种
4.1 高精度、低噪声测量前端:套筒式优先
如果项目是做传感器信号调理、精密仪器放大器或者高分辨率ADC的驱动级,输入信号共模范围往往是固定的,不会左右乱飘。这种情况下套筒式是最省心的选择:增益高、噪声低、功耗低,三个优势全都能落在点上。
我做过一个24位Σ-Δ ADC的前级缓冲器,输入共模就是0.9V,固定不动,输出只需要驱动一个2pF的采样电容。最开始按套筒式设计,实测噪声密度做到了12nV/√Hz以下,功耗只有1mW出头,整体表现很满意。如果换了折叠式,噪声会明显抬高,功耗也压不下去,对高分辨率系统来说完全没有必要。
需要注意的坑是,套筒式对共模输入范围极其敏感,连封装引脚和打线寄生都可能影响实际可用范围。设计阶段最好把输入共模偏置电压留出至少50mV余量,否则批次一致性会很差。
4.2 低压、宽共模、轨到轨输入场合:折叠式更稳
再来看另一类场景:电池供电的便携设备、音频编解码器、低压马达驱动里的电流检测,这些地方的输入信号经常要贴近地或者贴近电源。套筒式能工作的共模窗口可能只有0.3V到0.6V,一超出范围性能就崩。折叠式因为有独立的输入对电流通路,输入共模范围可以拉到0.15V到1.15V,如果再拼一组互补输入对,还能做到真正的轨到轨。
这种情况下,折叠式多消耗的那点功耗反而可以接受。实际设计里,我会用PMOS输入折叠式采集接近地的信号,用NMOS输入折叠式采集接近电源的信号,最后用两组并联实现轨到轨。这种结构在1.8V和1.2V电源下都很好用,几乎成了低压运放的默认模板。
4.3 高速流水线ADC前端:折中策略
在高速流水线ADC的MDAC级里,你既需要高增益解决余量建立精度,又需要足够宽的输入范围来接受前级大摆幅信号。经典做法是在套筒式基础上做增益自举,也就是给Cascode管再加一个辅助放大器,把输出阻抗进一步提高,但代价是环路的稳定性和功耗都变复杂。
现代低压工艺里,很多设计会选择折叠式加增益自举,或者干脆用两级结构。两级结构的好处是输入级可以做成套筒式或者折叠式拿到高增益,第二级专门负责电压摆幅,这样增益和摆幅解耦,设计自由度更高。之前有朋友问我“两级运放能不能第一级同相放大、第二级反相放大”,答案当然是可以,只要你把两级的极性关系、反馈连接和补偿网络搞清楚,整体反馈是负反馈就行。不过实际工程里为了少出错,我一般还是习惯让输入级和输出级按照标准配置做,减少变量。
如果你时间紧张,就按这个顺序选:设备级固定共模、高增益低噪声优先选套筒式;低压宽摆幅、输入范围大优先选折叠式;又想要速度又想要摆幅,那就考虑两级结构或者增益自举。
4.4 快速选型清单
我把多年经验压缩成一张速查清单,你可以直接拿去用:
- 电源电压低于1.2V?是:基本只能选折叠式或者多级结构,套筒式电压余量不够。
- 输入共模范围是否需要贴近电源轨?是:用折叠式,必要时上互补输入对做轨到轨。
- 输出摆幅是否是刚需?是:折叠式明显更合适,套筒式输出余量太紧。
- 噪声和功耗是不是核心指标?是:套筒式优先,但前提是输入共模别太苛刻。
- 增益是否必须超过80dB?两者都能做到,套筒式更容易,折叠式需要靠增益自举或两级结构。
- 是否有批量一致性和匹配性要求?套筒式的失配源更少,通常失调和CMRR表现更好。
这些条件都对着走一遍,结构选择就八九不离十了。
5. 设计中的坑与调试经验
5.1 折叠点电流“神秘消失”
折叠式运放最容易出现的坑,是DC工作点看起来不错,但AC小信号增益一直上不去。用手一算,发现折叠点的电流分配出了问题。
举个例子,PMOS输入对尾电流取200μA,那么每条输入支路就有100μA。折叠点下方如果接一个90μA的NMOS电流源作偏置,那汇入NMOS cascode支路的电流就只剩下10μA。这10μA确实可以维持输出级管子导通,但输出支路的工作电流太小,会让管子过驱动电压变得极低,输出阻抗下降不说,线性度也会恶化。你仿真出来的增益可能只有50dB,而设计目标要70dB。
排查方法很简单:在DC工作点下看每个关键节点的电流是否满足基尔霍夫电流定律。尤其是折叠点的三条支路,要确保输入对支路、偏置电流源和输出级电流三者关系精确匹配。流片对面有失配,容易在低温或者某个工艺角上出现明显漂移,所以设计时最好在折叠点预留一个小的微调电流,或者把偏置电流源的尺寸调大一点,避免输出级电流被“吃干”。
5.2 套筒式输入共模范围不够,输入管顶到饱和区
套筒式运放调试时遇到最多的表现是:输入共模电压稍微偏一点,增益就开始下降,THD也在恶化。很多人会怀疑是版图寄生,其实更根本的原因是输入对管已经进了线性区。
套筒式的输入管和上下两个Cascode管串在一起,输入共模被严格限制在很窄的窗口内。1.8V电源下,我用0.18μm工艺设计的那颗套筒式,输入共模范围只有0.32V到0.62V。一旦输入信号超过这个范围,输入管或者尾电流源的VDS就不够了,跨导gm急剧下降,增益和GBW都会掉得很厉害。
解决通道有三条:一是压低输入信号摆幅,给偏置留足余量;二是换成折叠式结构;三是加一级源极跟随器或者电平移位电路,把共模电平搬进允许窗口。第三种方案在测试板上非常有价值,很多时候不用重新流片,只需要在信号链前面加一个偏置电阻网络把直流电平拉进去,就能验证完整的系统功能。
提示:如果手边只有套筒式运放,临时想测一个共模范围超标的信号,可以先用电阻分压网络把直流电平搬进允许窗口,再去测小信号特性,这是测试台上常用的应急方案。
5.3 仿真很漂亮,实测增益差很多
我见过太多同学流片前仿真增益做到85dB,一上测试台只有70dB,当场心态崩掉。这种仿真与实测的巨大偏差,绝大多数不是电路结构选错了,而是寄生模型和版图效应没吃透。
Cascode节点的寄生电容会影响高频极点和相位裕度,这一点大家都有意识,但很少有人重视版图带来的电阻效应。电源线上只要有几十毫欧的串阻,在大电流情况下就能产生明显的IR drop,套筒式这种对电压余量极其敏感的电路,直接会让输出摆幅和增益双双缩水。
还有器件失配。折叠式因为多了额外的电流源和偏置支路,管子数量接近套筒式的两倍,失配引入的失调电压和CMRR劣化会更明显。实测时两个运放颗粒的失调电压差了几毫伏,不一定就是测试台的问题,很可能是版图上没有做充分的共质心匹配。设计阶段一定要把关键对管和电流镜都做到对称摆放,四周加上匹配的虚拟管,这样流片回来之后的失效概率会小非常多。
5.4 关于理想运放仿真和SR余量的小经验
最后回答一个很实际的小问题:在circuitjs这类在线仿真工具里,想让理想运放的增益设为无穷大,看起来很方便,但很多老手反而不这么做。原因是仿真器在做DC工作点或者瞬态收敛时,如果遇到一个增益为无穷大的理想受控源,经常直接报不收敛。我的习惯是设置成1e6到1e9之间的一个足够大的有限值,比如1e7,这样既能模拟理想效果,又不会把仿真器逼疯。
再说说摆率SR。有人问我“运放工程里SR的预留是怎么设计的,留多少余量”。我的经验是,SR主要由尾电流和补偿电容决定:SR近似等于I_tail除以Cc。为了保证大信号阶跃不出现明显压摆限制,在设计目标值上至少留20%到30%的余量,因为版图寄生、工艺角变化和温度都会让实际SR比仿真结果略低。如果你做的是音频放大,对SR的要求其实不算苛刻;但如果是高速ADC的驱动器,SR不足会直接导致建立误差,系统指标一下子就崩了。
6. 最后再说点大实话
做了这么多年运放设计,我越来越觉得,套筒式与折叠式之间不是“谁取代谁”的关系。有一次项目为了追求极低噪声,我在前端选了套筒式,仿真数据漂亮得不行,可实测时发现系统输入共模会随温度漂移,芯片只能在很窄的共模窗口里正常工作,最后被迫重新设计了一版,改成折叠式,噪声多了几个纳伏,但整条信号链在各种工况下都稳定了。这次之后,我做结构选择时都会先问自己一句:这条链路在最极端的共模、电源、温度组合下,还能不能工作?
最后分享一个小偏方,画原理图前先在纸上把两种结构从电源到地的管子压降数一遍。套筒式通常堆五到六个饱和压降,折叠式只有四到五个。拿到这个数字跟电源电压一对比,很多纠结当场就能解决。希望这份实测数据能帮你在下一次选型时少走几条弯路。