单端两级运放是模拟版图里最耐打的入门结构,但很多资料只讲“5T-OTA加一个CS级”,真正从需求拆到尺寸、再到仿真和调试的完整流程反而少见。我这几年反复用过这个拓扑,遇到过它稳定得让人放心的时候,也遇到过输出像心电图一样乱跳的时候。这篇就把我从规格出发推尺寸、搭测试平台、跑PVT、最后落地版图的完整习惯写出来,适合正在做一个两级运放作业、准备流片,或者想搞明白自己搭出来的运放为什么总在低频自激的读者。
先声明一句:下面的尺寸和指标以典型0.18微米工艺为例,不是让你照抄数值,而是让你掌握“每一步为什么这么定”的思路。换工艺后数值会漂,但设计逻辑基本不变。
1. 设计目标与结构选型
1.1 你需要的其实不是“电路”,是指标
很多同学一上来就问“单端两级运放长什么样”,其实正确的问题是“我这颗运放要放在什么反馈环里、驱动多大的负载、跑多快的信号”。没有指标谈结构,基本就是碰运气。我手里这种结构最常用的场景是:芯片内部需要一个中等速度、中等精度、输出摆幅接近轨到轨的缓冲器或预放大器,负载电容通常在1到3皮法,不需要全差分,也不愿意为共模反馈多花一片偏置电路。
以我常用的目标为例:
| 指标 | 目标值 | 备注 |
|---|---|---|
| 电源电压 | 1.8 V | 0.18um器件 |
| 负载电容 | 2 pF | 不含版图走线寄生 |
| 直流增益 | 大于70 dB | 两级级联后很容易达到 |
| 单位增益带宽 | 40~60 MHz | 由第一级跨导和密勒电容决定 |
| 相位裕度 | 大于60度 | 必须看容性负载下的最差角 |
| 压摆率 | 大于35 V/us | 大信号能力 |
| 输出摆幅 | 0.2 V 到 1.6 V | 单端输出的常见需求 |
这个表不是乱写的。两级结构最大的本钱就是“增益和摆幅可以分工”:第一级负责把差分信号放大到足够大,第二级负责把电压拉到接近电源轨。如果单用套筒式共源共栅,增益倒是上去了,但输出摆幅会被多叠的管子吃掉一截;如果单用五管OTA,输出摆幅好,但增益又不够。两级是很多中等需求项目里的最优解。
1.2 为什么单端两级 + 5T-OTA + CS 是稳妥组合
5T-OTA的全称是五管跨导放大器,包含一对输入差分对、一对电流镜负载和一个尾电流源。它输出是单端的,天然省掉了共模反馈电路。后面的CS级就是一级共源放大器,用NMOS或者PMOS做输入管,搭配电流源负载,主要用来推负载并提供额外增益。
选择这个组合的原因,我总结成三条:
第一,结构简单,偏置网络好做。五管OTA只需要一个尾电流源,CS级也只需要一个栅偏置,整颗运放总共十来个管子,版图面积小,调试范围窄。
第二,频率补偿好做。两级运放可以用密勒补偿把主极点拉到低频,再用一个调零电阻消掉右半平面零点,设计自由度比三级结构小很多,不容易出现“相位裕度怎么调都补不回来”的局面。
第三,单端输出不需要共模反馈。全差分运放最麻烦的就是要维护输出共模点,得额外搭一个CMFB环路。单端结构直接把输出电位交给第二级静态工作点决定,少一个环就少一个可能振荡的地方。
我并不是说单端结构一定优于全差分,只是在很多中低端应用里,全差分带来的噪声抑制优势撑不起它多出的功耗和面积。
1.3 两级之间的合作与界限
这两级各干各的活,责任划分得非常清楚。第一级5T-OTA的核心指标是:输入对的跨导gm1决定单位增益带宽,尾电流决定压摆率,第一级输出阻抗决定低频频响。第二级CS的核心指标是:它的跨导gm6决定次主极点位置,它自己的输出阻抗和负载电容一起决定高频滚降,它的静态电流决定输出驱动能力和摆幅极限。
我在做设计时会先在脑子里把两级割开算一遍:第一级增益按gm1乘第一级输出电阻估算,第二级增益按gm6乘第二级输出电阻估算,总增益等于两个乘积相乘。这样一旦仿真曲线和预期差太多,我能很快判断是前级增益丢了,还是后级负载推不动。
2. 从手算到尺寸:每个器件都有它存在的理由
2.1 先写直流偏置:尾电流和第二级电流怎么定
不要一上来就调宽长比,先把电流定下来。电流是整个设计的骨架,定了电流,管子尺寸只是往骨架上贴肉。
第一级尾电流ITail我习惯定在30到50微安。这个值不能太小,因为压摆率SR等于ITail除以密勒电容Cc,电流太小,大信号建立速度就上不去;也不能太大,因为第一级电流越大,在同等过驱动电压下输入对跨导越大,单位增益带宽会冲向很高,稳定性压力跟着变大。
第二级电流我通常取第一级的3到5倍。原因很实际:第二级要推2皮法负载,在信号变化时需要对负载电容充放电,电流太小,输出摆到轨的时间就长得不可接受。我在前面那张规格表里把压摆率定在35V/us以上,换算一下,如果第二级电流只有50微安,给2皮法负载充1.5伏摆幅的时间大约是60纳秒,配合40MHz带宽会显得“软绵绵”。
第二级电流定在150到200微安算比较顺手。功耗多花一点,但换来的是输出级的驱动能力和更宽的带宽分配空间。
2.2 五管OTA的关键尺寸
有了电流之后,再来定输入对管的W/L。这里我最看重的参数是过驱动电压Vov,因为它直接决定gm1,而gm1决定单位增益带宽:
gm1 = 2 * Id1 / Vov
其中Id1是输入对单边电流。如果尾电流是40微安,单边就是20微安。我想要gm1大约在0.4mA/V附近,那么Vov就得是100毫伏左右。在0.18微米工艺下,这个偏置点不算激进,温漂之后仍然能保证管子饱和。
再根据平方律公式算宽长比:
W/L = 2 * Id1 / (K' * Vov^2)
按N管K'约300uA/V^2算,W/L大约在12到15之间。我一般会取W/L=12/0.5,L取500纳米而不是最小栅长,是为了提高输出电阻。不要小看这个L,第一级增益就等于gm1乘以第一级输出电阻,输出电阻主要来自输入对管和负载管的沟道长度调制片效应,L稍微拉长一点,增益能涨一大截。
电流镜负载PMOS管的尺寸要跟输入对管的电流密度对齐。我的习惯是让负载管Vov略大于输入管,因为第一级增益和镜像管的噪声有折中,Vov越小跨导越高、噪声越大。负载管W/L通常做30/0.5到50/0.5之间,具体看你要的过驱动电压。
尾电流源NMOS管的长度我会取大一些,L做1微米,这样它的输出电阻高,对共模抑制比有好处。宽度按电流密度算,不需要特别精确,只要保证它在整个共模输入范围内都处在饱和区就行。
2.3 CS输出级与负载
CS输出级的输入管我通常用NMOS,负载用PMOS电流源。NMOS的优势是跨导高,同样的静态电流下能拿到更高的第二级增益和更快的响应。这里的核心矛盾是:想要gm6大,就得让Vov小,但Vov太小会让输出管很容易在信号摆到低电位时进入线性区,导致输出摆幅被压缩。
我常用一组初始值:第二级电流150微安,输出管W/L=40/0.5,负载管W/L=50/0.5。对应Vov大约在0.25到0.35伏之间,这样输出摆幅从0.2伏到1.6伏都有余量。
有一个细节经常被新手忽略:CS级的输入管和第一级输出节点之间有米勒效应,Cc电容不仅把主极点压低,还会在第二级输入端形成一个和频率有关的负载。这个负载如果太大,第一级的高频增益会掉得比预期快。所以第二级输入管的栅长不要做得太长,栅宽也不要为了追求跨导无限拉大,否则寄生电容会反过来吃带宽。
2.4 Miller补偿:Cc和调零电阻Rz
两级运放的补偿点就选在第一级高阻输出和CS级输入之间。密勒电容Cc跨接在这个节点上,等效到第一级输出端的电容大约是Cc乘以第二级增益,所以一个1pF左右的电容就能把主极点压到几十千赫兹,而单位增益带宽主要由gm1/Cc决定。
Cc怎么取值?我通常先按需要的带宽倒推:
Cc = gm1 / (2 * pi * UGF)
如果gm1=0.4mA/V,UGF取50MHz,Cc大约是1.2pF。这个值给后续调零电阻留了余地,也比较容易在版图里实现。
调零电阻Rz是很多人会漏掉的器件。如果没有Rz,CS级会在右半平面贡献一个零点,相位裕度会随着负载电容变化剧烈恶化。Rz的标准取值是让零点移动到足够高的频率,我习惯初取1/gm6,也就是先让零点推到无穷远,之后根据仿真曲线再微调。
Rz可以用一个始终饱和的MOS管实现,也可以用多晶硅电阻。用MOS管的好处是电阻值能跟随工艺和温度变化,坏处是它的非线性会引入额外失真;用多晶硅电阻在线性度上更干净,但绝对精度要差一些。中低频应用我用多晶硅电阻居多。
3. 仿真搭建与指标读取
3.1 测试桥路:不要直接在开环状态下看相位
这是我踩过不少次才想明白的:开环AC仿真测出的相位裕度,在很多实际闭环场景里只是参考,真正常见的振荡来自反馈环路里的延迟和寄生极点。所以我现在的习惯是搭一个单位增益跟随器做稳定性仿真,也就是把输出直接接到反相输入端,从同相输入端加AC激励。
如果只想看环路增益,可以用STB分析或者一个很大的电感加电容组成开环桥路。我个人更喜欢让仿真器直接输出环路增益和相位,因为这样能看到环路的闭环特性在“透过反馈”后的表现。两个方法我都跑一遍,结论一致了才放心。
测试桥路的激励幅度要小,一般AC信号设成1V,但实际小信号分析会自动线性化,不受幅度影响。真正要注意的是直流工作点:先给输入端一个共模电平,让运放静态输出落在目标中点附近,再开始AC扫描。
3.2 AC/稳定性:Bode图里要看哪三个点
AC仿真结束后,我只看三个关键点。
第一个是低频增益。正常情况下应该和手算的乘积差不太多。如果低频增益低了20dB以上,多半是某一级管子离开了饱和区,先回去查直流工作点。
第二个是0dB点,也就是单位增益频率。这个点应该在设计目标附近,如果偏离很多,先怀疑Cc值和实际gm1对不上,再看是不是第二级或测试桥路电容负载太大,把单位增益频率拉低了。
第三个是0dB频率处的相位。相位裕度等于180度减去该点相位,低于50度就要警惕。相位掉得快,通常不是Cc不够,而是第二级极点、镜像极点或者调零电阻位置没放对。
以下是一份我从项目里整理出来的相位裕度速查经验:
| 相位裕度 | 现象 | 处理方向 |
|---|---|---|
| 小于45度 | 阶跃响应长时间振铃 | 增大Cc或减小第二级跨导 |
| 45到60度 | 过冲偏大,勉强可用 | 微调Rz后复查 |
| 60到75度 | 过冲约15%以内,最舒服 | 保持现状 |
| 大于80度 | 稳定但带宽浪费 | 可适当减小Cc |
3.3 瞬态:摆率、建立时间和过冲
AC指标只是小信号世界,真正在电路里工作的是大信号。单位增益跟随器接一个方波输入,从输出波形里能直接看到三样东西:上升沿的斜率对应压摆率,到达稳态前是否反复穿越对应相位裕度,有没有拖尾对应低频增益和直流偏置。
我跑瞬态时会把方波幅度设为输出摆幅的一半,这样大信号行为才明显。比如输出目标摆到1.6V,输入就用0.2V到1.6V的方波。如果上升沿斜率算下来远低于ITail/Cc的理论值,说明第一级可能进入了线性区,或者尾电流源塌了。
建立时间通常需要定量量取。我习惯在波形上把目标精度设成0.1%误差带,看输出从跳变开始到不再超出这个误差带需要多长时间。这个指标如果缺了,客户问起来就会答非所问。
3.4 PVT、失配和蒙特卡洛筛选
只跑一个工艺角就交付,是项目里最容易翻车的行为。我手头的标准动作是至少跑六个角:ss、ff、tt分别叠加高低温,再跑一遍电源电压上下限。0.18微米工艺里,阈值电压的温度漂移非常明显,很多室温下相位裕度充足的运放,到低温低电源角就会变成振铃严重的“振子”。
失配仿真是另一道坎。差分对和电流镜都存在系统失配,蒙特卡洛仿真里最常见的现象是输出失调电压几十毫伏,这在小信号放大链路上可能直接吃掉动态范围。这时候我会去看每个管子的失配贡献,确定是输入对主导还是负载镜主导。如果是负载镜主导,就加大它的面积;如果是输入对主导,就加大输入对W和L。
筛选的标准我一般定在:所有工艺角下相位裕度大于55度,单位增益带宽不低于30MHz,输出失调电压最大不超过正负30mV。跑不过就回来改,不需要追求每个角都一样漂亮,只要保证最差角还能用。
4. 常见问题与排查实录
4.1 输出不工作?先看直流工作点,不要急着动补偿
我被问过太多次“我的两级运放振荡怎么办”,结果一看工作点,第二级输出NMOS直接在线性区,整个环路增益根本建立不起来。运放调试的铁律是先保证每个管子都在饱和区,再谈频率特性。
快速检查方法是:把输入共模电平放到VDD/2附近,看输出是否是VDD/2附近。如果输出贴到电源轨或者地轨,多半是偏置出了问题。常见原因包括尾电流源的栅偏置没给对、电流镜比例算错、CS级负载管Vov留得不够。静态点找对之后,很多“稳定性问题”其实会自行消失。
4.2 镜像极点:第一级的小信号瓶颈
两级运放里有个非常隐蔽的极点叫镜像极点。第一级的电流镜会把左侧输入管的信号复制到右侧输出端,这个复制过程经过镜像管的栅漏寄生电容,会在第一级输出节点附近引入一个高频极点,频率大约是:
fp_mirror = gm3 / (2 * Cgs3 + 2 * Cgs4 + ...)
如果镜像管的跨导做得不高,这个极点可能落在单位增益带宽附近,白白吃掉大量相位裕度。我在设计时会把负载管的W/L适当做小一点,或者接受它在更高频出现,再用Cc把单位增益带宽压到它的一半以下。假如仿真曲线在UGF之前出现一个20dB/dec滚降速度改变的“肩”,就优先怀疑它。
4.3 调零电阻Rz不是摆设
有些资料会把Rz省略掉,直接画一个Cc短路。实际做出来会发现,负载电容超过1pF之后,没有Rz的运放相位裕度可能掉到20度。原因是第二级共源放大器的米勒效应会在右半平面形成一个零点:
fz = gm6 / (2 * pi * Cc)
要让这个零点消失,Rz就得取1/gm6。我调试时会在Rz周围扫一组值,比如0.5k、1k、1.5k、2k,看相位最高点出现在哪里。记住不要以为Rz越大越好,超过1/gm6太多会让零点跑到左半平面,虽然不振荡,但会带来一个低频零点的相位滞后,效果同样不好。
4.4 版图寄生电容才是最终裁判
仿真通过不代表流片后一定稳,最常见的原因是版图走线带来的寄生电容。第一级高阻输出节点上只要多出0.2pF寄生,主极点位置就会改变,单位增益带宽曲线整个右移,相位裕度跟着掉。
我在版图阶段最在意两条线:一条是第一级输出到Cc再到第二级栅极的走线,尽量短且不要和输入线并行走;另一条是输入差分对到输入管栅极的走线,寄生电容会直接影响输入高频特性。所有关键节点周围都要加地屏蔽,但屏蔽线本身也会引入电容,所以不要盲目铺一整圈。
4.5 问题速查表
| 症状 | 可能原因 | 优先排查动作 |
|---|---|---|
| 低频增益不足 | 某级管子不在饱和区 | 重查直流工作点 |
| UGF偏高、相位不足 | gm1过大或Cc偏小 | 增大Cc或减小输入对W/L |
| 负载变化后相位骤降 | 右半平面零点多 | 检查Rz是否等于1/gm6 |
| 低温ss角振铃 | 极点位置随风漂 | 重跑低温低电源角并预留相位余量 |
| 输出摆幅达不到要求 | CS级Vov分配不合理 | 重分输出级电流和管子尺寸 |
| 瞬态波形有奇怪的肩 | 镜像极点或寄生极点 | 检查第一级负载管尺寸和走线 |
5. 个人流程与经验
5.1 一小时内完成的迭代:手算、仿真、回调
我拿到一个新的两级运放需求,不会直接开Cadence,而是先在纸上把电流、过驱动电压、gm、Cc、增益估算一遍。手算时间不超过20分钟,但能让我在仿真器里盯着曲线时心里有底,知道哪个指标跟预期偏差是“没算对”,哪个是“电路结构出了问题”。
仿真阶段的顺序固定是:DC工作点,AC开环,瞬态跟随器,然后PVT和蒙特卡洛。任何一个环节不过都只改一个变量。最忌讳的是相位裕度不够就同时动Cc、Rz、第二级电流,结果指标好了但不知道谁起了作用,后面换工艺角又全乱套。
5.2 什么情况下我会放弃这个拓扑
虽然单端两级运放好用,但它不是万能药。如果应用需要真正的高精度直流放大,失调会吃光动态范围,我会考虑加chopper或auto-zero;如果需要在极低功耗下拿到100dB增益,我还是会用折叠共源共栅加输出级的三级结构;如果系统里全是差分信号而且抗共模干扰要求很高,那就老老实实上全差分加CMFB。
判断标准很简单:结构越简单越好,但简单不能以牺牲核心指标为代价。5T-OTA+CS适合60到90dB增益、几十MHz带宽、输出摆幅要求不极端的场景;超过这个范围,别硬撑。
5.3 最后再分享一点实操体会
我做这类运放最深的体会是:宁可把第一级电流给足一点,也不要在补偿电容上抠面积。一颗1.2pF的密勒电容在版图里也就一坨,但它能让整个环路的相位行为变得可预测。反过来,为了省这0.3pF而去压低带宽,后面调试花的功夫远大于省下的那点面积。
还有就是仿真器里多跑一个之前完全没注意的角,可能比你在原理图上冥想一晚上更有用。当初某颗运放就是在常温tt角完美通过,却在低温低电源角的瞬态里暴露出30%过冲,最后查下来是输出级电流源负载的Vov在低温下涨得比预期快,压缩了输出摆幅。从那以后,我每次交付前都会把最差角当作过不过线的唯一标准。
单端两级运放是能让你建立完整设计直觉的绝佳训练场。把这一条流程走顺了,往后看到更复杂的结构,你也会习惯性地先问自己:这级管子在饱和区吗?这个极点为什么在这里?这种“先推理再仿真”的习惯,比记住任何网表都值钱。