ADS设计2.4GHz切比雪夫微带带通滤波器:从理论到EM仿真实战
1. 项目概述从需求到方案最近在做一个射频前端的项目里面有个模块对带外抑制的要求特别高普通的巴特沃斯滤波器插损和带外滚降总是差那么点意思甲方爸爸的指标又卡得死。折腾了好几轮最后还是决定上切比雪夫Chebyshev滤波器。这玩意儿在通带内有等波纹波动换来的是更陡峭的过渡带说白了就是用通带内的一点“不完美”去换取带外更“干净”的信号。这次的设计目标是一个中心频率在2.4GHz带宽200MHz的带通滤波器带内波纹要求小于0.5dB带外2.6GHz处的抑制要大于40dB。手头的工具是Keysight的ADSAdvanced Design System这算是射频微波领域的“瑞士军刀”了从原理图仿真、版图仿真到协同仿真都能搞定。为什么选Chebyshev而不是其他巴特沃斯Butterworth的幅频响应最平坦但过渡带最缓椭圆函数Elliptic滤波器在带外有零点抑制能力最强但设计和实现也最复杂对元件公差极其敏感。切比雪夫是个很好的折中在给定的阶数下它能提供最陡的初始滚降。对于我这个项目40dB的抑制要求用巴特沃斯可能需要7阶甚至更高而用切比雪夫5阶就能稳稳达到这意味着更少的元件、更小的体积和更低的插损理论上。当然代价就是通带内那小于0.5dB的波纹对于大部分数字调制系统来说这点波纹完全在容忍范围内。整个设计流程会走一个完整的闭环先在ADS里用理想集总参数模型进行理论设计和仿真优化确保频响满足指标然后根据实际选用的板材比如Rogers RO4350B将集总元件转换为微带结构例如使用开路短截线实现并联电容高阻抗线实现串联电感进行分布式参数仿真接着画出版图进行电磁场EM仿真这一步会把微带线间的耦合、不连续性等所有寄生效应都考虑进去是最接近实际电路的结果最后对比三者结果进行迭代优化。我也会把过程中ADS的一些关键操作比如如何设置仿真模板、如何优化、如何导出数据、以及如何导入厂商的S2P模型文件进行联合仿真都捋清楚。2. 核心理论与设计指标分解2.1 切比雪夫滤波器的数学本质与电路实现切比雪夫滤波器的核心在于其传输函数基于切比雪夫多项式。这个多项式在归一化频率域内其值在±1之间振荡。当它被用于构建滤波器的幅频平方函数时就导致了通带内的等波纹波动。波纹的大小通常用通带内最大衰减 ( Ripple )单位dB来指定它直接关系到滤波器的反射系数和输入输出匹配。对于低通原型滤波器其元件值即归一化电感和电容值可以通过查表或公式计算获得这些值取决于滤波器的阶数 ( n ) 和通带波纹 ( \epsilon )。其中( \epsilon \sqrt{10^{Ripple/10} - 1} )。比如0.5dB波纹对应的 ( \epsilon ) 大约是0.3493。一个5阶0.5dB波纹的切比雪夫低通原型其元件值从信号源端开始假设两端都是50欧姆大概是g11.7058串联电感 g21.2296并联电容 g32.5408串联电感 g41.2296并联电容 g51.7058串联电感。注意对于两端阻抗相等的滤波器其结构是对称的。我们的目标是带通滤波器。这就需要用到低通到带通的频率变换。这个变换将低通原型的频率变量 ( \Omega ) 映射到带通的频率变量 ( \Omega ) 。变换公式为( \Omega (\Omega / \Omega_0 - \Omega_0 / \Omega) / (\Omega_2 - \Omega_1) * \Omega_0 ) 其中 ( \Omega_0 \sqrt{\Omega_1 \Omega_2} ) 是中心频率 ( \Omega_1 ) 和 ( \Omega_2 ) 是通带的下限和上限频率角频率。这个变换在电路上的体现就是把低通原型中的每一个串联电感 ( L_k ) 变换为一个串联LC谐振回路电感 ( L_k ) 和电容 ( C_k ) 串联其中 ( L_k L_k / (\Omega_2 - \Omega_1) ) ( C_k (\Omega_2 - \Omega_1) / (\Omega_0^2 L_k) ) 。同样每一个并联电容 ( C_k ) 变换为一个并联LC谐振回路电感 ( L_k ) 和电容 ( C_k ) 并联其中 ( C_k C_k / (\Omega_2 - \Omega_1) ) ( L_k (\Omega_2 - \Omega_1) / (\Omega_0^2 C_k) ) 。这样我们就得到了一个中心频率在 ( \Omega_0 )、带宽为 ( (\Omega_2 - \Omega_1) ) 的带通滤波器。2.2 设计指标与ADS设计向导初探把理论指标代入。中心频率 ( f_0 2.4GHz )带宽 ( BW 200MHz )所以通带下限 ( f_1 2.3GHz )上限 ( f_2 2.5GHz )。带内波纹 ( Ripple 0.5dB )。带外抑制要求在 ( f 2.6GHz ) 处衰减 ( Attenuation 40dB )。我们可以先估算所需阶数。对于切比雪夫滤波器归一化阻带频率 ( \Omega_s (f/f_0 - f_0/f) / (BW/f_0) )。将 ( f2.6GHz ) 代入得到 ( \Omega_s \approx 1.833 )。根据切比雪夫滤波器的衰减公式 ( Attenuation(dB) 10 \log_{10}[1 \epsilon^2 \cosh^2(n \cdot \operatorname{arccosh}(\Omega_s))] )。把 ( Attenuation40dB ) ( \epsilon0.3493 ) 代入反推可以算出 ( n ) 大约需要4.2因此选择5阶是足够的并且会留有一定裕量。在ADS中最快捷的起步方式是使用其内置的“Filter Design Guide”。新建一个原理图从“Tools”菜单下打开“Filter Design Guide”。选择“Bandpass”类型响应类型选“Chebyshev”。在参数设置页输入我们的指标Fcenter2.4GHzBWpass200MHzRipple0.5dBAstop40dBFstop2.6GHz这里Fstop可以只设一边因为切比雪夫是对称的。阶数Order可以先选“Minimum”让软件自动计算它会给出一个满足要求的最小阶数通常就是5阶。然后我们可以选择实现方式。对于初学者或快速验证可以选择“Lumped Components”集总元件这样ADS会直接生成一个由理想电感电容构成的原理图。注意Filter Design Guide给出的原理图是一个很好的起点但元件值可能不是最优的特别是当你后续要转换为微带结构时。它假设的是绝对理想的元件和无耗传输线。所以这个原理图主要用于验证频响是否满足理论指标真正的设计优化要从这里开始。3. ADS原理图仿真与优化实战3.1 搭建理想模型与S参数仿真假设我们通过Design Guide生成了一个5阶集总参数切比雪夫带通滤波器的原理图。电路结构通常是梯形网络串联支路是LC串联谐振并联支路是LC并联谐振到地。我们将其拷贝到我们的主设计原理图中。接下来需要设置仿真。从元件面板选择“Simulation-S_Param”控件放置一个SPS参数仿真控件。双击控件进行设置频率扫描类型选“Linear” Start1GHz Stop4GHz范围要覆盖通带和感兴趣的阻带 Step10MHz。步长越小曲线越平滑但仿真越慢。10MHz对于初始评估足够了。参数通常保持默认。在电路输入输出端口放置两个“Term”终端阻抗设为50欧姆。连接好电路后点击仿真按钮。在数据显示窗口Data Display插入一个矩形图添加S(2,1)即传输系数S21和S(1,1)输入反射系数S11的曲线。第一次仿真结果可能并不完美。S21曲线在通带内可能波纹不均匀或者中心频率有偏移S11在某些频点可能较差比如-10dB。这是因为Design Guide计算的是理论值没有考虑电路中的相互影响。我们需要进行优化。3.2 优化器设置与目标达成ADS的优化功能非常强大。我们回到原理图为每个电感L和电容C的“Value”属性添加优化变量。例如双击一个电感在“Value”栏输入L1然后会弹出对话框让你定义变量L1给它一个初始值就是当前值并设置优化范围比如L1的初始值是10nH我们可以设置范围从5nH到15nH。对所有电感电容都如此操作。然后放置一个“Optim”优化控件和“Goal”优化目标控件。优化算法可以选择“Random”或“Gradient”对于变量不多的情况“Gradient”收敛更快。在“Goal”控件中设置我们的优化目标S21通带目标dB(S(2,1))在频率范围2.3GHz到2.5GHz内 -1 dB考虑到0.5dB波纹最差点可能到-0.5dB留点裕量。权重可以设大一些比如10。S21阻带目标dB(S(2,1))在2.6GHz处 -40 dB。权重同样设为10。S11目标dB(S(1,1))在2.3GHz到2.5GHz内 -10 dB即回波损耗优于10dB。权重可以设为5。设置好之后运行优化。优化过程会持续迭代在数据显示窗口可以实时观察优化过程中的曲线变化。优化完成后不一定能100%完美满足所有目标但会非常接近。此时我们可以“更新”原理图中的变量值为优化后的值。然后务必再运行一次普通的S参数仿真以确认在固定了优化值之后性能是否稳定。实操心得优化时目标不要一下子设得太严苛。可以先优化通带S21和S11让带内特性先好起来然后再加入阻带抑制目标。另外优化变量的初始范围不要设得离初始值太远否则优化器容易陷入局部最优或无法收敛。有时候手动微调一两个关键元件比如第一个和最后一个谐振元件的值对匹配改善效果很明显。3.3 数据导出与模型导入仿真结果满意后我们可能需要导出数据用于报告或进一步分析。在数据显示窗口选中我们关心的曲线比如S21在菜单栏选择“File” - “Export”。可以导出为.csv、.s2pTouchstone格式或.txt文件。.s2p文件是标准的二端口网络参数文件可以被其他仿真软件如HFSS的电路仿真或测试设备读取。反过来如果我们有外部元件的模型比如一个功放管的ADS模型文件可能是.zap或.mdf或者从矢量网络分析仪测试得到的芯片S参数.s2p也需要导入ADS进行联合仿真。对于S2P文件在元件面板选择“Data Items” - “S2P File”控件放置到原理图中。双击该控件在“File Name”栏指定.s2p文件的路径。然后这个控件就代表了一个二端口网络其端口特性完全由文件中的数据定义。将它连接到滤波器电路中进行仿真可以评估滤波器与真实器件连接后的系统性能。对于更复杂的模型文件如.mdf可能需要通过ADS的模型库管理器Model Library来安装和调用。这通常涉及到将模型文件放入特定目录并在ADS中配置模型库路径。4. 从集总参数到微带结构的实现4.1 微带线等效原理与初步计算理想电感电容在低频好用但在2.4GHz这样的射频频率集总元件的寄生参数如电感的寄生电容、电容的寄生电感会变得非常显著而且很难找到高Q值的合适值元件。因此实际PCB实现通常采用分布参数的微带线结构。对于串联电感我们可以用一段高特性阻抗的微带线窄线来近似。一段特性阻抗为 ( Z_0 )、电长度为 ( \theta )弧度的传输线其T型等效电路包含串联阻抗 ( jZ_0 \tan(\theta/2) ) 和并联导纳 ( jY_0 \sin(\theta) )。当 ( \theta ) 很小小于30度时( \tan(\theta/2) \approx \theta/2 )所以串联阻抗近似为 ( jZ_0 \theta/2 )。而一个电感 ( L ) 的阻抗是 ( j\omega L )。令两者相等可以得到 ( L (Z_0 \theta) / (2\omega) )。给定频率和所需的电感量以及我们选择的板材决定有效介电常数 ( \epsilon_{eff} )我们就可以反推出微带线的宽度决定 ( Z_0 ) 和长度决定 ( \theta ) 。对于并联电容通常使用终端开路的微带短截线Open Stub。一段终端开路的传输线其输入阻抗是 ( Z_{in} -jZ_0 \cot(\theta) )。这相当于一个电容其容抗 ( 1/(\omega C) Z_0 \cot(\theta) )。同样对于小电长度( \cot(\theta) \approx 1/\theta )所以 ( C \approx \theta / (\omega Z_0) )。这样我们也能够根据所需的电容值来计算开路短截线的尺寸。以我们5阶滤波器中的第一个并联谐振回路为例它由并联的L和C组成。我们先根据集总参数值计算出该回路的谐振频率应该等于中心频率2.4GHz。然后我们将这个并联LC电路用一段特性阻抗为 ( Z_{p} )、电长度为 ( \theta_p ) 的终端短路短截线Shorted Stub来替代。因为终端短路的传输线其输入阻抗是 ( Z_{in} jZ_0 \tan(\theta) )这正好是一个感性电抗。但我们需要的是并联谐振所以更常用的结构是“半波长谐振器”或“发夹线”Hairpin结构这属于耦合微带线滤波器的范畴是更主流的设计方法。4.2 耦合微带线滤波器设计对于窄带到中等带宽的微带带通滤波器最常用的是平行耦合微带线结构。它由一系列并排放置的、长度为四分之一中心频率波长的微带线节构成相邻线节之间通过边缘场耦合。设计过程通常如下计算耦合系数和外部Q值根据滤波器的低通原型元件值g0, g1, ..., gn, gn1和相对带宽 ( FBW BW / f_0 )可以计算出各耦合节之间的耦合系数 ( M_{i,i1} ) 以及输入输出端的外部品质因数 ( Q_e )。对于切比雪夫滤波器( M_{i,i1} FBW / \sqrt{g_i g_{i1}} )( Q_{e,input} g_0 g_1 / FBW ) ( Q_{e,output} g_n g_{n1} / FBW )通常g0和gn1为1如果端接阻抗相等。确定微带线尺寸耦合系数 ( M ) 与耦合微带线的偶模阻抗 ( Z_{0e} ) 和奇模阻抗 ( Z_{0o} ) 有关( M (Z_{0e} - Z_{0o}) / (Z_{0e} Z_{0o}) )。外部Q值与输入输出微带线的特性阻抗有关。我们需要使用ADS的“LineCalc”工具或相关的微带线计算工具给定板材参数介电常数 ( \epsilon_r ) 板厚H铜厚T对于给定的目标 ( Z_{0e} ) 和 ( Z_{0o} )计算出耦合微带线的宽度W和间距S。同时每节微带线的长度在中心频率处是四分之一波长考虑有效介电常数后的导波长。在ADS中构建原理图使用ADS中的“MLIN”微带线和“MCFIL”耦合微带线元件来搭建滤波器。根据计算出的W、S、L长度值设置每个元件的参数。输入输出用50欧姆的微带线MLIN连接。搭建好原理图后同样进行S参数仿真和优化。此时优化的变量可以是每节耦合线的宽度、间距和长度。优化目标与之前集总参数时一致。由于模型已经是分布参数优化结果会更接近实际。4.3 版图生成与电磁仿真原理图仿真通过后下一步是生成版图Layout。在ADS原理图窗口中选择“Layout” - “Generate/Update Layout”。ADS会根据原理图中的微带线元件自动生成一个初步的版图。然而原理图中的“MCFIL”等元件模型是基于闭式公式的它假设耦合是理想的、均匀的没有考虑微带线拐弯、T型结、端口不连续性等效应。为了得到最精确的结果必须进行电磁EM仿真。在ADS的版图界面我们可以选择整个滤波器电路然后使用“Momentum”或“EMPro”进行电磁仿真。Momentum是ADS集成的矩量法求解器对于平面结构计算速度快精度高。设置仿真时需要正确定义叠层Substrate包括各层的材料导体、介质、厚度、介电常数、损耗角正切等。然后设置端口Port和仿真频率范围。EM仿真耗时远大于电路仿真但结果可信度最高。仿真完成后可以将EM仿真结果一个模型或S参数数据反标Back-annotate回原理图与原来的电路模型进行对比。通常会发现由于寄生耦合和边缘效应实际滤波器的中心频率可能会下移带宽可能变窄。这时就需要根据EM仿真结果返回去修改原理图中微带线的尺寸通常是微调长度然后再次更新版图并仿真形成一个迭代优化的过程。踩坑实录第一次做微带滤波器时我完全依赖原理图仿真结果就去制板了结果回来一测中心频率偏了将近100MHz。原因就是没有进行EM仿真忽略了耦合线端部的不连续性电容。后来在EM仿真中我通过稍微缩短谐振器的长度大约缩短了5-10 mils补偿了这个边缘电容第二次打样就准了很多。另外板材的介电常数一定要用供应商提供的实测值或准确值不同批次可能有微小差异对频率影响很大。5. 设计验证、调试与常见问题5.1 仿真与实测对比分析板子制作回来后需要用矢量网络分析仪VNA进行测试。将滤波器焊接上SMA接头用校准件对VNA进行全双端口校准后连接滤波器进行S参数测量。将实测的S21、S11曲线与ADS最终的EM仿真结果导入同一个图表进行对比。常见的偏差包括整体频偏如果整个响应曲线向低频或高频平移说明有效介电常数计算有误或板材参数不准确。这可以通过在仿真中微调介电常数来复现和修正。带宽变化如果带宽变宽或变窄说明耦合系数与实际不符。可能是耦合间距S的加工误差导致或者仿真中的耦合模型不够精确。带内波纹变大通常意味着损耗比仿真预期大。可能是板材的损耗角正切tanδ比标称值大或者铜箔表面粗糙度导致导体损耗增加。带外抑制恶化可能是由于屏蔽不好存在空间辐射耦合或者电源/地平面不完整引入了额外耦合。5.2 常见问题排查速查表问题现象可能原因排查与解决思路中心频率偏低1. 板材实际介电常数偏高。2. 微带线末端存在等效边缘电容使电长度增加。3. 焊接的SMA接头引入额外电容。1. 核实板材参数使用供应商批次实测值。2. 在EM仿真中检查场分布优化谐振器末端结构如切角。3. 在仿真中加入接头的3D模型或等效电路。通带插损过大1. 导体损耗铜箔粗糙度、厚度不足。2. 介质损耗板材tanδ大。3. 辐射损耗结构谐振、屏蔽不佳。4. 阻抗失配严重S11差。1. 选择表面处理好的板材如RTF铜确保线宽足够。2. 选择低损耗板材如Rogers RO4003C。3. 增加屏蔽腔优化滤波器结构避免高次模。4. 优化输入输出匹配电路。带内波纹不平坦1. 各谐振节耦合系数不准确。2. 加工误差导致对称性破坏。3. 外部Q值不匹配。1. 精细调整耦合微带线的间距S。2. 检查PCB加工精度要求对称结构严格对称。3. 调整输入输出耦合线的长度或宽度。阻带抑制不足1. 滤波器阶数不够。2. 寄生通带由于分布参数滤波器在更高频率会再次出现通带。3. 测试环境存在干扰或耦合。1. 增加滤波器阶数。2. 采用阶梯阻抗谐振器或缺陷地结构DGS来抑制寄生通带。3. 在屏蔽盒内测试检查测试电缆和连接器。仿真不收敛或出错1. 网格划分太粗或太细。2. 端口设置错误。3. 存在数值不稳定结构如极细的线。1. 调整EM仿真器的网格设置自适应网格通常可靠。2. 检查端口是否正确覆盖导体边缘参考地是否设置正确。3. 检查版图中是否有非物理结构的极短线或极小间隙。5.3 参数提取与模型修正如果实测结果与仿真有差异但又无法通过简单调整几何尺寸来补偿比如板材参数未知我们可以尝试从实测S参数中“提取”出等效的集总参数电路模型。在ADS中可以利用“频域参数拟合”功能。将实测的S2P文件导入然后使用“Simulation-S_Param”面板下的“SPModel”或“SNP”配合优化器拟合到一个预设的电路拓扑如五阶LC梯形网络。拟合得到的LC值可以反映电路的实际行为并与理论值对比找出哪个环节偏差最大。例如如果提取出的所有电容值都偏大那很可能意味着实际的有效介电常数偏高。这个过程也可以反过来用如果我们有一个复杂的器件如天线、封装的精确EM模型但想在系统级仿真中快速评估可以将其S参数拟合为一个简单的RLC等效电路这样在电路仿真中速度会快很多。最后关于ADS软件本身的一些小技巧。如果遇到“烧录”失败通常指将设计下载到FPGA或某些硬件平台与滤波器设计无关那多半是硬件连接或驱动问题。对于射频仿真更常见的是仿真速度慢。对于复杂的EM仿真可以合理设置仿真频带使用插值扫描代替连续扫描对于电路优化可以设置合理的变量范围和优化步长避免盲目全局搜索。ADS的PAM4仿真、相位噪声仿真等功能属于更高级的通信系统仿真范畴滤波器作为其中的一个无源部件其模型无论是S参数还是等效电路都可以被集成到这些系统仿真中去评估整体链路性能。