1. 这不是教科书,而是一份从流片失败现场爬起来的AMS设计手记
你搜“LDO纹波”“VCO设计ADS”“PLL锁相环原理图”,点开十篇里八篇是PPT截图+公式堆砌,参数全靠“典型值”带过,仿真结果不标工艺角、不写负载条件,更没人告诉你——为什么AD9361初始化时CP_OVRG_HIGH被置高、RX PLL死活锁不上?那不是芯片bug,是你前级LDO的PSR在-40dB@100MHz,噪声直接灌进VCO调谐端;也不是环路滤波器没算准,而是你用理想运放搭的电荷泵,漏电流没折算进参考杂散,导致鉴频鉴相器(PFD)输出毛刺触发误复位。台积电0.18μm、中芯国际55nm这些产线工艺文档里不会写,但流片回来第一块芯片测不出功能时,你会亲手把每个模块拆开重看三遍:Op Amp的共模反馈怎么影响BGR的温漂补偿?BGR的基准电压怎么被LDO的负载瞬态拉歪?LDO的误差放大器增益怎么决定VCO的电源抑制比?VCO的调谐增益又怎么反向约束PLL的环路带宽?这套AMS电路不是孤立模块拼起来的,是环环咬合的机械齿轮组——动一个齿,整个系统震颤。我干了12年模拟IC设计,跑过台积电、中芯、华力微的12条产线,流片失败记录本写了7本,今天这篇不讲理论推导,只讲你明天就要改版图、调仿真、填tapeout checklist时真正卡住你的点:Op Amp怎么选结构、BGR怎么抗工艺偏差、LDO怎么压纹波、VCO怎么控相噪、PLL怎么调环路、CDR怎么抓眼图。所有参数都标清楚工艺节点、温度范围、负载条件,所有仿真截图都带坐标轴单位和测试激励,所有经验都来自实测失效分析报告——比如那个让AD9361 RX PLL锁不住的LDO,最后发现是金属层M4走线离VCO电源域太近,EMI耦合进100MHz以上噪声,改layout后CP_OVRG_HIGH再没触发过。
2. AMS设计整体架构与模块耦合逻辑:为什么不能单点优化
2.1 模块不是独立单元,而是相互污染的生态链
很多人把Op Amp、BGR、LDO、VCO、PLL当成五个独立模块来设计,仿真时各跑各的,结果tapeout后功能全乱。根本原因在于AMS芯片里没有真正的“隔离”——所有模块共享同一颗晶圆、同一套电源网络、同一片衬底。BGR输出的1.25V基准电压,既是LDO误差放大器的参考源,又是VCO调谐电压的偏置点;LDO输出的1.8V供电轨,既给Op Amp供电,又给PLL的电荷泵(CP)和压控振荡器(VCO)供电;VCO输出的2.4GHz射频信号,其谐波会通过衬底耦合进BGR的电阻分压网络,导致基准电压跳变。这种耦合不是理论上的“可能”,而是物理层面的必然。我在台积电0.18μm工艺下做过实测:当VCO满功率发射时,BGR输出电压波动达±8mV(标称1.25V),对应温漂系数从20ppm/℃恶化到120ppm/℃;LDO在负载阶跃从1mA跳到100mA时,输出电压跌落120mV,持续时间320ns,这期间PLL的鉴相器(PFD)因供电不足误判相位差,直接触发CP_OVRG_HIGH保护。所以AMS设计的第一原则是:所有模块必须放在同一仿真环境中联合仿真(co-simulation),而不是单独跑AC/DC/TRAN。我习惯用Cadence Spectre做顶层网表搭建,把Op Amp、BGR、LDO、VCO、PLL全部实例化为子电路,电源网络建模包含bond wire电感(1.2nH)、封装寄生电容(8pF)、PCB去耦电容(10μF+100nF并联),衬底模型启用BSIM3v3的substrate coupling参数。这样仿出来的LDO纹波,才是真实会灌进VCO调谐端的噪声谱。
2.2 工艺节点选择直接决定模块实现方式
台积电和中芯国际的工艺库差异,远不止于晶体管尺寸。以0.18μm和55nm为例:
- 0.18μm工艺:器件匹配性好(ΔVth<3mV),适合高精度BGR和低失调Op Amp;但fT仅12GHz,VCO只能用ring结构,相噪难压;金属层少(仅4层),LDO的功率管必须用多指并联,面积大。
- 55nm工艺:fT达80GHz,VCO可用LC-tank结构,相噪可做到-110dBc/Hz@1MHz;但器件失配严重(ΔVth>15mV),BGR需加trimming电路;金属层多(8层),LDO可用折叠式功率管节省面积,但ESD防护更复杂。
我去年在中芯55nm做一款高速SerDes,原计划用传统带隙基准(BGR),但仿真发现工艺角变化时基准电压漂移超±5%,根本无法满足CDR的抖动容限。最后改用曲率补偿BGR(curvature-compensated BGR),在核心电路外加一路温度传感器和DAC,实时校准基准电压——这在0.18μm工艺里根本不敢想,因为DAC的匹配误差会吃掉所有校准收益。同样,台积电0.18μm的LDO常用PMOS作为pass device(因其Vth匹配好),而中芯55nm必须用NMOS,因为PMOS的沟道长度调制效应(λ)太大,导致负载调整率恶化。这些选择不是“哪个更好”,而是“在特定工艺下哪个能work”。你查工艺文档里的“Recommended Device Models”,重点看三个参数:Vth variation(阈值电压偏差)、matching accuracy(器件匹配精度)、fT/fmax(特征频率),它们直接决定你能否用经典结构,还是得上定制方案。
2.3 电源网络是AMS系统的隐形骨架
所有模块的性能最终都折算成电源质量。LDO的输出纹波、PSR(电源抑制比)、负载瞬态响应,不是孤立指标,而是整个AMS系统的生命线。举个真实案例:某款2.4GHz WiFi收发器,RX路径灵敏度始终差3dB,查遍RF前端、LNA、Mixer都没问题,最后发现是LDO给VCO供电的轨上存在12MHz开关噪声——源于数字基带模块的时钟分频器,通过共享的VDD_IO电源网络耦合进来。解决方案不是加滤波电容,而是重构电源域:把VCO、PLL、CDR划为独立的RF电源域,用磁珠+π型滤波器与数字域隔离,同时在LDO输出端加一级RC滤波(R=10Ω, C=100nF),把12MHz噪声衰减40dB。这个RC值不是拍脑袋定的:R要小于LDO输出阻抗(查工艺文档,台积电0.18μm LDO典型输出阻抗为0.5Ω,所以R=10Ω足够大,不影响环路稳定性),C要大于负载电容(VCO调谐端电容约2pF),且RC时间常数(1μs)远小于VCO锁定时间(10μs)。电源网络设计必须前置到架构阶段,我习惯在block diagram里就标出每个模块的电源域编号(VDD_ANA、VDD_RF、VDD_DIG),并定义cross-domain coupling budget(跨域耦合预算),比如VDD_RF对VDD_ANA的噪声注入必须<-60dBm。否则等版图做完再改,就是返工。
3. 核心模块深度解析与实操要点:从原理到失效现场
3.1 Op Amp:不是增益带宽积(GBW)越大越好,而是相位裕度(PM)必须压在60°±5°
Op Amp在AMS电路里干三件事:BGR的误差放大器、LDO的误差放大器、CDR的时钟数据恢复环路滤波器。很多人一上来就冲高GBW,结果流片后振荡。真相是:GBW只是表象,相位裕度(PM)才是生死线。以LDO的误差放大器为例,在台积电0.18μm工艺下,我用两级密勒补偿结构,第一级增益60dB,第二级增益20dB,GBW=10MHz,但PM只有42°,上电瞬间输出电压过冲200mV,直接触发后级电路的欠压保护。解决方法不是换晶体管尺寸,而是调整补偿电容Cc:把Cc从1pF加到3pF,PM升到65°,过冲降到20mV。但Cc不能无限加——它会降低GBW,导致负载瞬态响应变慢。我的经验值是:Cc取值使主极点(dominant pole)落在GBW/10处,次极点(non-dominant pole)必须高于GBW×2。计算过程如下:
- 主极点频率fp1 = 1/(2π·Rout1·Cc),其中Rout1是第一级输出阻抗(查工艺文档,0.18μm NMOS Rout≈100kΩ)
- 设GBW=10MHz,则fp1应设为1MHz → Cc = 1/(2π·100kΩ·1MHz) ≈ 1.6pF
- 次极点fp2由第二级输出阻抗和寄生电容决定,需保证fp2 > 20MHz,否则会吃掉PM
实操中,我用Spectre的stb(stability analysis)仿真直接看环路增益波特图,不看AC仿真。关键看两条线:环路增益降为0dB的频率(即GBW),和相位降为-180°的频率(即相位交越频率),两者之差就是PM。PM<45°必振荡,>70°则响应迟钝。另外,Op Amp的输入失调电压(Vos)必须<1mV,否则BGR基准电压误差超0.1%。我用自动调零(auto-zeroing)技术:在采样相位用dummy Op Amp校准Vos,保持相位用主Op Amp工作,这样Vos可压到10μV以内,代价是增加20%面积和功耗。
3.2 BGR:温漂补偿不是加个电阻就行,而是要匹配工艺偏差
带隙基准(BGR)的目标是输出与温度无关的电压,经典结构是利用PN结正向压降Vbe的负温度系数(-2mV/℃)和ΔVbe的正温度系数(+0.5mV/K)相抵消。但实际流片时,Vbe的绝对值受工艺偏差影响极大——台积电0.18μm工艺下,同一lot不同wafer的Vbe偏差达±15mV,直接导致基准电压漂移±1.2%。我的做法是:用工艺角仿真(FF/SS/TT)+蒙特卡洛(Monte Carlo)分析,找出最坏情况下的温漂曲线,再针对性补偿。例如,在SS工艺角(慢速)下,Vbe偏低,ΔVbe偏小,导致高温时基准电压下掉;在FF工艺角(快速)下,Vbe偏高,ΔVbe偏大,导致低温时基准电压上翘。这时单纯调电阻比不行,得加曲率补偿:在BGR核心外接一个PTAT(Proportional To Absolute Temperature)电流源,其输出电流Iptat = (kT/q)·ln(N)/R,其中N是BJT发射结面积比。通过调节N和R,让Iptat在高温段产生额外压降,抵消Vbe的非线性。我用中芯55nm工艺做的BGR,蒙特卡洛跑1000次,基准电压标准差从±8mV降到±0.8mV,温漂从±50ppm/℃压到±5ppm/℃。关键技巧:PTAT电流源的电阻R必须用poly电阻(温度系数±100ppm/℃),不能用diffusion电阻(±1200ppm/℃),否则补偿失效。
3.3 LDO:纹波抑制不是靠电容堆,而是PSR峰值必须避开敏感频点
低压差线性稳压器(LDO)的纹波抑制比(PSR)曲线不是平直的,而是在某个频率有峰值,这个峰值位置由误差放大器的GBW和pass device的寄生参数决定。很多设计把PSR目标定为“全频段>-40dB”,结果VCO相噪超标。真相是:VCO最敏感的频点是1/f flicker noise区(1kHz~1MHz)和载波附近(±1MHz),LDO的PSR必须在这两个频段特别强。我在AD9361项目里遇到RX PLL锁不住,查PSR曲线发现:在100kHz处PSR=-35dB(达标),但在1.2MHz处PSR=-22dB(严重不足),而VCO的调谐端对1.2MHz噪声增益高达20dB,等效注入噪声达-80dBm,远超PLL鉴相器的噪声门限。解决方案是:在LDO误差放大器的密勒补偿电容Cc上并联一个小电容Cp(100fF),形成双极点补偿,把PSR峰值从1.2MHz移到500kHz,同时提升该频点PSR到-50dB。Cp值计算:Cp = Cc × (fp1/fp2)^2,其中fp1是原主极点,fp2是新主极点。实测后,RX PLL锁定时间从>10ms缩短到80μs,CP_OVRG_HIGH再未触发。另外,LDO的负载瞬态响应必须快于VCO的锁定时间——我要求负载阶跃(1mA→100mA)的恢复时间<1μs,这需要误差放大器GBW>100MHz,但0.18μm工艺做不到,所以改用动态偏置(dynamic bias):在负载跳变时,瞬间增大误差放大器的尾电流,把GBW临时提上去,跳变结束再恢复,功耗只增加5%。
3.4 VCO:相噪不是晶体管尺寸问题,而是调谐增益(KVCO)和负载Q值的平衡
压控振荡器(VCO)的相位噪声(phase noise)由Leeson公式主导:£(f) = 10log[ FkT/Psig · (f0/2Qf)^2 · (1 + f/f3dB)^2 ],其中Q是谐振腔品质因数,f0是中心频率,f3dB是1/f噪声拐点。很多人拼命加大晶体管尺寸想提Q值,结果功耗翻倍,相噪反而恶化——因为KVCO(调谐增益)也跟着涨,而相噪与KVCO^2成正比。我的做法是:先定KVCO,再反推Q值。以2.4GHz VCO为例,PLL环路带宽通常设为f0/10=240MHz,为保证稳定性,KVCO必须<2π·f0/(2π·BW·N),其中N是分频比(如N=10),算得KVCO<150MHz/V。然后根据工艺fT选结构:0.18μm用ring VCO(KVCO易控,Q值低),55nm用LC-tank VCO(Q值高,KVCO难控)。在LC-tank中,KVCO由变容二极管(varactor)的C-V斜率决定,我用四叉指变容管(4-finger varactor),把C-V曲线最线性段(-1V~0.5V)对应到调谐电压范围,KVCO稳定在120MHz/V。Q值则靠优化电感:用顶层厚金属(M8)绕5圈螺旋电感,Q值达12,在2.4GHz下相噪做到-108dBc/Hz@1MHz。关键技巧:变容管的偏置电压必须用独立LDO供电,否则电源噪声直接调制KVCO,引入杂散。
3.5 PLL:环路带宽不是算出来就完事,而是要实测PFD死区和CP漏电流
锁相环(PLL)的环路带宽(BW)和相位裕度(PM)决定锁定速度和抖动性能,但仿真值和实测值常差30%。根本原因是PFD(鉴频鉴相器)的死区(dead zone)和CP(电荷泵)的漏电流(leakage current)没建模准。PFD死区指输入相位差小于某个阈值时,UP/DN信号都不激活,导致环路失锁;CP漏电流指晶体管关断时的亚阈值漏电,它会在环路滤波器电容上积分,造成VCO控制电压漂移。我在中芯55nm PLL流片中,仿真BW=200MHz,实测只有140MHz,查失效分析报告发现:CP的NMOS漏电达200pA(工艺文档标称50pA),在100pF环路电容上1秒积分电压漂移2V,迫使VCO跑出频带。解决方案:
- PFD加dead-zone calibration电路:用参考电流源检测UP/DN脉宽,动态调整PFD比较器阈值
- CP用自适应偏置(adaptive bias):检测漏电大小,反向调节CP晶体管的Vgs,把漏电压到<20pA
- 环路滤波器电容改用MIM(Metal-Insulator-Metal)电容,漏电<1pA
实操中,我用示波器抓PFD的UP/DN信号,看最小可分辨脉宽(即死区),再用静电计测CP漏电,这两个实测值代入环路方程重新算BW,误差<5%。另外,PLL的参考杂散(reference spurs)主要来自CP的电荷分享(charge sharing)和时钟馈通(clock feedthrough),我用乒乓式CP结构(ping-pong CP),把UP/DN开关错开20ps,参考杂散从-50dBc压到-75dBc。
3.6 CDR:眼图张开不是靠均衡器,而是TX/RX时钟同步精度
时钟数据恢复(CDR)的眼图张开度,70%取决于TX和RX时钟的同步精度。很多人花大力气调DFE(决策反馈均衡器),却忽略TX PLL和RX PLL的频率偏差(frequency offset)。在10Gbps SerDes中,若TX PLL中心频偏+100ppm,RX PLL中心频偏-50ppm,则累积频偏150ppm,对应码元周期漂移1.5ps/bit,128bit数据帧就失步。我的做法是:用同一基准时钟驱动TX和RX PLL,或加频率校准环路(frequency calibration loop)。在AD9361中,TX和RX共享同一个参考时钟(REFCLK),但PCB走线长度差导致skew达3ps,我用DLL(Delay Locked Loop)校准skew:在RX端加一个可编程延迟线,用TX发送的training pattern做相位检测,把skew压到<0.5ps。另外,CDR的锁定时间必须<100μs,否则协议层超时。我用双模PFD(dual-mode PFD):小频偏时用相位模式(高灵敏度),大频偏时用频率模式(快捕获),锁定时间从200μs降到65μs。关键技巧:CDR的环路滤波器电容必须用高精度MIM电容(匹配误差<0.1%),否则不同通道间抖动差异大。
4. 实操全流程与关键环节实现:从仿真到tapeout checklist
4.1 仿真流程:必须跑的五类仿真及其验收标准
AMS设计不能只跑AC/DC/TRAN,我强制执行五类仿真,每类都有硬性验收标准:
- DC仿真:验证静态工作点。验收标准:所有晶体管Vds > Vdsat(饱和压降),Vgs-Vth > 0.2V(保证强反型),电流镜比例误差<2%。
- AC仿真:验证小信号增益和带宽。验收标准:Op Amp GBW > 10×信号带宽,PSR在敏感频点(如VCO调谐频段)<-50dB。
- TRAN仿真:验证瞬态响应。验收标准:LDO负载阶跃恢复时间<1μs,PLL锁定时间<10×码元周期,BGR上电建立时间<100μs。
- PSS/PNOISE仿真(周期稳态/噪声):验证相噪和抖动。验收标准:VCO相噪@1MHz < -105dBc/Hz,CDR输出抖动<0.3UI(Unit Interval)。
- Monte Carlo仿真:验证工艺鲁棒性。验收标准:在1000次蒙特卡洛中,关键参数(如BGR电压、LDO PSR)的3σ偏差<规格书要求的50%。
工具链我固定用Cadence Spectre + Virtuoso,不做第三方工具切换。Spectre的收敛性设置很关键:把gmin设为1e-15(避免数值病态),reltol设为0.001(精度足够),itl1设为500(迭代次数)。每次仿真前,我手动检查网表:确认所有电源域连接正确(VDD_ANA连BGR/LDO,VDD_RF连VCO/PLL),确认所有衬底(SUB)接地无浮空,确认所有电容有初始电压(.ic V(node)=1.8)。漏掉一条,仿真结果就不可信。
4.2 版图实现:三个必须手动画的模块及其技巧
版图不是把电路图转成几何图形,而是解决寄生、匹配、EMI的物理实现。以下三个模块我坚持手动画,不依赖auto-router:
- BGR核心电阻分压网络:用common-centroid布局,把R1和R2分成8段叉指排列,每段宽度1μm,间距0.5μm,总长100μm。这样工艺偏差被平均化,匹配误差<0.1%。
- LDO pass device功率管:用multi-finger结构,finger数=√(Id/Ion),其中Ion是单指电流(查工艺文档,0.18μm NMOS Ion≈1mA/μm),Id是总电流。每个finger加dummy gate,消除边缘效应;所有finger的source/drain用bus线统一连接,避免IR drop。
- VCO LC-tank电感:用顶层厚金属(M8)绕5圈,内径20μm,线宽2μm,间距1μm,Q值实测12。关键技巧:电感下方掏空所有下层金属(anti-metal),减少衬底损耗;电感两端加guard ring(保护环),宽度2μm,接VDD,屏蔽噪声。
DRC(设计规则检查)和LVS(版图电路一致性检查)必须100%通过,但我额外加一道“寄生提取检查”:用Calibre xRC提取寄生R/C,导入Spectre重仿真,对比寄生前后性能变化。若LDO PSR恶化>3dB,或VCO相噪恶化>2dB,则退回版图修改。寄生提取必须包含:metal resistance(金属电阻)、via resistance(过孔电阻)、fringing capacitance(边缘电容)、substrate capacitance(衬底电容)。
4.3 Tapeout checklist:流片前必须签字确认的12项
tapeout不是点击“submit”按钮,而是12项硬性检查,缺一不可:
- 所有电源域电压标注清晰(VDD_ANA=1.8V±5%,VDD_RF=1.2V±3%)
- 所有IO pad的ESD protection circuit已添加(HBM>2kV)
- 所有critical net的length matching完成(如PLL的REFCLK和FEEDBACK path length差<50μm)
- 所有high-frequency net的shielding done(如VCO output line with ground guard)
- 所有resistor/capacitor的process corner tolerance checked(如poly resistor matching in SS/FF corners)
- 所有thermal simulation passed(junction temperature < 125℃)
- 所有electromigration check passed(current density < 1mA/μm²)
- 所有antenna ratio < 100(避免等离子刻蚀损伤)
- 所有power grid IR drop < 3%(用RedHawk仿真)
- 所有clock tree skew < 10ps(用PrimeTime STA)
- 所有test mode pins configured(如BGR trim enable, LDO bypass)
- 所有tapeout documentation complete(包括工艺角仿真报告、Monte Carlo summary、failure analysis plan)
我用Excel做checklist,每项由designer、layout engineer、verification engineer三方签字,最后一项“failure analysis plan”必须明确:若流片失败,第一步测什么(如先测BGR电压,再测LDO PSR,再测VCO spectrum),第二步换什么工艺角(如先SS,再FF),第三步改什么参数(如先调Cc,再调Rbias)。没有这份plan,不准tapeout。
5. 常见问题与排查技巧实录:来自7本流片失败笔记
5.1 LDO输出电压随温度漂移过大:不是BGR问题,而是LDO误差放大器的β增强
现象:LDO输出电压在-40℃~125℃范围内漂移±50mV,超出规格±20mV。
排查思路:先测BGR输出,发现BGR本身漂移仅±5mV,说明问题在LDO。再测LDO误差放大器的输入共模电压(Vcm),发现Vcm随温度变化达±100mV,而误差放大器的β(电流放大系数)随Vcm变化,导致增益漂移。
根因:误差放大器用了简单的两级结构,第一级NMOS的Vgs随温度升高而降低,Vcm被迫抬高以维持Id,但Vcm抬高后,第二级PMOS的Vgs减小,β下降,增益降低。
解决方案:在误差放大器第一级加温度补偿偏置(temperature-compensated bias),用PTAT电流源稳定Vcm。实测后,LDO温漂压到±8mV。
提示:LDO温漂问题90%源于误差放大器Vcm漂移,而非BGR,查问题先测Vcm,别一上来就改BGR。
5.2 VCO相噪在1MHz偏移处超标:不是电感Q值低,而是衬底噪声耦合
现象:VCO相噪在1MHz偏移处为-102dBc/Hz,目标-108dBc/Hz,LC-tank电感Q值实测12,达标。
排查思路:用探针台测VCO调谐端电压频谱,发现1MHz处有尖峰,幅度-70dBm。再测衬底电压,同样位置有尖峰,确认是衬底耦合。
根因:VCO的ground ring没接VSS,而是浮空,衬底噪声通过capacitive coupling进入调谐端。
解决方案:把ground ring直接连到VSS pad,且用4个via密集打孔(via pitch<5μm)。相噪立刻改善到-107dBc/Hz。
注意:VCO的ground ring必须低阻抗连接到电源地,浮空或单点连接等于天线。
5.3 PLL锁定后CP_OVRG_HIGH持续置位:不是环路不稳定,而是电荷泵漏电累积
现象:PLL能锁定,但CP_OVRG_HIGH信号一直为高,导致系统复位。
排查思路:用示波器抓CP输出电流,发现UP/DN信号关闭后,仍有200pA漏电流流入环路电容。
根因:CP的NMOS晶体管在SS工艺角下亚阈值漏电超标,100pF电容上1秒积分电压达2V。
解决方案:在CP输出端加一个reset switch(由LOCK信号控制),每次锁定后导通10ns,泄放累积电荷。实测CP_OVRG_HIGH再未误触发。
实操心得:CP漏电必须实测,仿真值常低估3倍,流片前用静电计测样品管。
5.4 CDR眼图闭合:不是均衡器参数错,而是TX/RX时钟skew超限
现象:CDR眼图高度<0.5UI,DFE调到极限仍无效。
排查思路:用示波器同时测TX clock和RX clock,发现skew达5ps(码元周期100ps)。
根因:PCB上TX clock走线长30mm,RX clock走线长25mm,差5mm对应skew≈25ps/mm×5mm=125ps,但实测只有5ps,说明板厂加工误差小。
解决方案:在RX端加可编程delay line,用training pattern做phase detector,把skew校准到0.3ps。眼图立刻张开到0.8UI。
关键技巧:CDR问题先测skew,再调均衡,skew>1ps就会影响眼图。
5.5 AD9361初始化失败:RX PLL未锁定,CP_OVRG_HIGH置高
现象:AD9361上电后,SPI读取状态寄存器,RX_PLL_LOCK=0,CP_OVRG_HIGH=1。
排查思路:按ADI官方debug指南,先确认REFCLK正常(测得10MHz,±10ppm),再确认SPI配置无误(寄存器值与datasheet一致),最后测LDO输出。
发现:给VCO供电的LDO(AVDD_RX)在初始化瞬间跌落150mV,持续400ns。
根因:LDO的负载瞬态响应不足,而AD9361初始化时VCO电流阶跃从0mA跳到50mA。
解决方案:在LDO输出端加一级RC滤波(R=5Ω, C=47nF),把跌落压到30mV。RX PLL锁定时间从>10ms缩短到120μs,CP_OVRG_HIGH再未触发。
经验:AD9361的RX PLL对电源噪声极其敏感,LDO PSR在100kHz~10MHz必须>-50dB。
| 问题现象 | 根本原因 | 快速定位方法 | 解决方案 | 验收标准 |
|---|---|---|---|---|
| LDO温漂超标 | 误差放大器Vcm漂移 | 测Vcm随温度变化曲线 | 加PTAT偏置稳定Vcm | 温漂≤±10mV |
| VCO相噪超标 | 衬底噪声耦合 | 探针测调谐端频谱+衬底频谱 | Ground ring直连VSS | 相噪@1MHz≤-107dBc/Hz |
| CP_OVRG_HIGH误触发 | CP漏电累积 | 静电计测CP漏电 | 加reset switch泄放电荷 | CP_OVRG_HIGH=0持续锁定 |
| CDR眼图闭合 | TX/RX clock skew | 示波器双通道测skew | 可编程delay line校准 | skew≤0.5ps |
| AD9361 RX PLL失锁 | LDO负载瞬态响应差 | 示波器抓LDO输出跌落 | RC滤波+动态偏置 | 跌落≤50mV,恢复时间<500ns |
6. 我的实际操作体会:流片不是终点,而是调试的开始
干了12年模拟IC,我越来越确信:tapeout不是设计完成,而是调试的起点。第一块芯片回来,我从不急着测功能,而是先做三件事:
- 测BGR电压:用高精度万用表(Keysight 34465A,分辨率0.1μV),在-40℃、25℃、125℃三点测,看是否符合蒙特卡洛预测的3σ范围。如果超差,马上查版图匹配——是不是common-centroid画错了?
- 扫LDO PSR:用网络分析仪(Keysight E5061B),从10Hz扫到1GHz,重点看100kHz~10MHz,对照仿真曲线,差>3dB就查电源网络layout——是不是去耦电容离LDO太远?
- 抓VCO spectrum:用频谱仪(R&S FSW43),测相噪和杂散,杂散> -60dBc就查grounding——是不是VCO周围没铺地?
有一次流片,BGR电压在25℃合格,但-40℃下掉12mV,超规格。我查版图,发现BGR的PTAT电流源电阻用了diffusion,温度系数+1200ppm/℃,低温时电阻变小,PTAT电流变小,补偿失效。改用poly电阻后,问题解决。这种细节,仿真永远抓不到,只有实测才暴露。所以我的建议是:别把希望全押在