高频电子线路实践(1)——晶体梯形滤波器设计与实物搭建
前言
在杭电半年学习了很多东西,但是学的速度比总结的速度快,导致学了很多东西没有记录下来,正好这个周末回家也没啥事情做,做完晶体滤波器的阻抗匹配就写篇文章总结一下吧。
做这个晶体滤波器是因为一个SSB纯模拟调制的题目,这个题的要求是1k-10k的信号频率混频到10MHz。一开始呢采用的是Weaver调制,但是实际做了一下发现因为我中频段两个Chebyshev滤波器的相位特性有点不一样,导致我最后这个系统的可用频带非常窄,必须要对不同的频率的正交信号去做幅度补偿和相位补偿才能达到超过-40dB的镜像边带压制度。最后和导师聊了一下,觉得还是采取多级混频滤波的方式一级级混上去比较可靠,毕竟不用考虑相位的问题。但是呢1k-10M实在是有点太远了,如果级数太少,那么就要求用矩形系数比较大的滤波器去做,中频需要用有源滤波的时候自激和GBW不够的概率有点高;如果级数太多,那么整个系统的复杂度就又比较高了,所以我在想,先用一个6-8阶的Ecliptic滤波器把频率搬到10-19k,然后直接混到24M,靠晶体滤波器的极高Q值和极高矩形系数去硬压,最后再下变频到10M附近。之所以不直接混到10M,主要原因是10M的晶振的串联谐振点和并联谐振点挨得太近了,直接设计出来的滤波器的带宽会偏小,把我需要的信号也被滤掉;24M晶振这一点就好很多,之后再下变频到10M用个三四阶LC都能滤的干干净净。
那么说了那么多,最关键的还是在24M晶体滤波器这一步,那么接下来我们就开始做它。
准备
仪器准备
本实验使用的仪器均为卓越科协硬件实验室仪器,具体使用到的仪器有:Rohde&Schwarz ZVL3矢量网络分析仪、盛普SP3060扫频仪、同惠TH2819A LCR电桥、Keysight 34461A万用表、热转印机。
材料
24MHz HC-49S直插晶振,贴片电阻若干,贴片电容若干,贴片电感若干,SMA座,覆铜板,蚀刻剂。
软件
本次实验中,采用Keysight Advanced Design System 2026作为主要工具进行模型构建和参数优化;使用Cadence OrCAD X Capture CIS 23.1作为原理图绘制软件;使用Cadence Allegro Enterprise PCB Designer Suite 23.1作为PCB图绘制软件。
一、二阶晶体滤波器设计
晶振的BVD模型
理论模型
理论上来说,晶振的等效模型是在模电书里有讲的,但是我问了下我队友,他们的课本里面没有讲。那我就简单的提一下。按照模电书上的理论,晶体可以等效为以下的BVD(Butterworth-Van Dyke)模型:

这个模型中有两个支路,
对于并联支路,我们有:
对于动态支路,我们有:
对于整体,我们有:
为了简化讨论,我们不妨假设这个晶振在串联谐振的时候是没有损耗的,即
类似的,当分母为趋近于0时,阻抗趋近于无穷大,此时信号几乎不能从晶振通过。仍然保持前文R=0的假设,此时
为了更好的理解,我用Keysight ADS建立了一个晶体的等效模型,并且使用S参数扫描获得其幅频曲线:


从这个曲线图我们可以看出,左边一个高高隆起的峰就是串联谐振点,而右边那个深深陷下去的谷就是并联谐振点。
参数测量
前面我们所说的是纯粹理论的分析,那么其值我们应该怎么测量得到呢?这个时候我们两个工具就要派上大用场了:盛普SP3060扫频仪、同惠TH2819A LCR电桥。
奇偶模分析法基础
在射频电路分析中,我们常使用一种叫做奇偶模分析法的方法,其根本原因是叠加原理,即将电源和负载各自拆分为两个源,然后对这两个源进行重新分组,如下所示:

假设输入信号源为
接下来我们分别考虑奇模和偶模对电路的影响,对于奇模信号,两边信号的激励相反,假如我们的网络是一个对称网络,那么在对称网络的中心点的电位就是0,可以视同接地;对于偶模信号,两边信号的激励相同,其在对称网络中心点的作用是相同的,那么中心点是等电位的,既不会有电流流入也不会有电流流出。
从上面的分析我们可以看出,我们把信号拆分成奇偶模,那么我们对称电路只要根据奇模和偶模的激励条件分析一半即可,可以简化我们电路的分析。在下面Cohn滤波器设计中我们将使用奇偶模分析法进行设计。
Cohn结构滤波器基本原理
二阶晶体滤波器设计中,我们常采用Cohn结构,就是将两个电容串联,然后通过一个耦合电容接地,原理图如下:

为什么在两级电容之间加上了这个耦合电容就能实现呢?此时我们前面说的奇偶模分析法就可以派上用场了。为了简化分析,我们不妨将中间的电容拆分为两个并联的值为一半的电容,如下图:

经过这个拆分之后,我们不妨假设两个晶振的参数完全相同,此时整个电路已经变成对称的电路了,接下来我们就可以用奇偶模分析法分析了。
奇模分析
首先我们进行奇模分析,即左右端口分别引入相反相位信号。此时显然,Y3和Y2之间的电位恒为0,此时可以视作直接对地短路,等效模型如下。

那么此时整个网络的谐振频率显然和没有接入C1时相同,为我们前文计算出的频率
偶模分析
接下来最关键解释整个电路出现第二个极点的原因,我们引入偶模信号。此时由于两边信号在两个电容处的作用是相同的,所以中间的支路不会有电流流过,可以视同开路,我们可以得到等效模型如下:

为了解释此时谐振点的变化,我们取其中的一半进行分析,并且将晶振等效成我们前文提到的BVD模型:

类似我们前面对晶振BVD模型谐振频率的计算,我们计算此时的谐振频率:
当信号能够无损通过该谐振网络时,我们不难知道
为了简化计算,我们同样假设晶振在此谐振点附近是无损耗的,即令
两边同除以
提取公因式:
通分并进一步化简:
最终解得谐振角频率
我们不妨和前面的正常的串联谐振进行比较:
此时我们发现,耦合电容
我们回到前面阻抗的表达式,并考虑它的极点(即并联谐振点),我们发现串联入这个电容之后分母和我们前面讨论晶振的BVD模型时并没有发生差别,这也就说明其下降和晶振几乎类似,也就解释了为什么它有如此陡峭的下降的原因。
Cohn结构滤波器设计
说了那么多理论,那么在实际设计过程中我们需要测量出晶振的这些参数然后手算吗?啊其实是不需要的(笑)。实际上我们只需要把参数量出来喂给ADS,然后把优化目标给ADS,让ADS用优化算法自己去算就行了。
使用ADS设计大致分为几个步骤:1.电路图绘制。2.优化变量设置。3.优化目标设置。4.优化器设置。5.优化和分析。
1.电路图绘制
打开ADS软件,选择ADS Enterprise + EM Bundle。第一次使用ADS设计,需要新建一个工作区。

创建好后就会自动进入工作区。之后想要进自己以前的工作区,可以选择Open Workspace,也可以直接在Recent Workspaces中进入。
接下来我们新建一个Schematic,如下图:

然后我们开始画原理图,用左边的元件搜索功能搜索XTAL放置晶振,CAPQ放置电容,修改好参数后连线:

然后我们放入S_Param参数模板,选上方菜单栏Insert-Template,在弹出来的框里面搜索S_Params,放置并连线:

最终效果如下,点上方Simulate即可看到结果:

2.优化变量设置
我们观察一下上面的幅频图,可以看出两个显然的问题:1.极点是飘的(按理应该是一个平坦的通带)。2.阻抗匹配是一点没匹上(匹配上时Smith圆图中
我们不妨设端阻抗为
我们在左侧搜索框内搜索VAR,并且放置VAR块,修改变量名。然后将我们的负载和电容都指定为这个变量,最终效果如下图所示:

接下来我们双击VAR块(弹出来的窗口默认是有点窄的,拉宽一点,不然看不到配置),开始选择并配置优化变量(默认

配置好后,可以看到两个变量都会变成val {opt a to b}的格式。
3.优化目标设置
从左侧的搜索栏里搜索Goal控件,并且放置到原理图中。我们这里有三个优化目标,所以需要放三个控件。
接下来开始配置目标:

我们这里需要配置三个目标,分别如下:
| 目标含义 | 目标名 | 值 | 目标 | 频率范围 |
|---|---|---|---|---|
| 通带增益 | PassGain | dB(S(2,1)) | >-3 | 23.99MHz - 24.01MHz |
| 阻抗匹配 | Match | dB(S(1,1)) | <-12 | 23.99MHz - 24.01MHz |
| 禁带衰减 | StopAttenuation | dB(S(2,1)) | <-40 | 24.02Mhz-24.03MHz |
然后注意,有个Weight参数,这个参数自己看情况调,就是给目标不同的权重,你觉得高重要性目标就给大权重,不重要的目标就给小权重。
4.优化器设置
在左侧搜索栏里面搜索Optim,放置优化控件。双击该控件配置。

在Optimization Type里面可以选择算法类型。一般来说我们使用Corana模拟退火算法,即Simulated Annealing Corana,这个算法速度会比较慢,但是我个人感受来说得到的效果最好。其他常用的有Random Minimax,使用随机算法结合最大值最小值算法,适合快速得到粗略结果;Quasi-Newton法,即通过二阶导数去扫描,适合粗扫过后精细得到参数。
然后选择底下的Number of iterations,表示迭代次数,对于非Random算法,设一个比较大的值即可(基本上在达到最大迭代次数之前就优化出来了)。
在正式开始Optimize之前,最好给你的VAR提供一个初值(例如
接下来我们点菜单栏,开始Optimize(Corana模拟退火算法可能会需要几十分钟乃至数小时,需要耐心等待):

如果你优化的时候发现变量的值一直卡在上限/下限不动了,那么要分情况进行处理,如果最后优化出的结果你觉得好的,那么你就改上下限;如果你感觉不好,优化器陷入死路了,那么你就要去考虑修改目标、修改电路图。
如果提示Iteration limited reached,如果你觉得满意了,你就点Update Design,然后Close;如果你觉得还不行,你就点Continue,然后会让你输需要多少轮,填个值进去继续跑。
对于模拟退火算法,跑到跑不动了就是优化完了,点Update Design然后Close,会自动弹出仿真结果,看一下如果没问题的话就算做完了:

二、阻抗匹配
阻抗匹配,其实就是在圆图上画线的艺术(雾)。我们可以用ADI的工具去匹配,但是我个人看法是想要很好的理解Smith圆图,最好还是使用ADS去匹配,而且ADS的工具是让你自己画弧去匹配,所以可定制度更高。
使用ADI的工具匹配

ADI的工具比较简单,就是你输入系统特征阻抗(通常是
值得注意的是Input Type怎么选,一般我觉得比较常见的是Series Complex Load和S-Parameters,前者把负载看成一个复电阻,根据实部和阻抗去算;后者基于S参数,也就是幅度和角度关系去计算;还有一种Parallel Complex Load是把负载看成一个电阻+一个“电容”,这个容值可能是负的,也就是整个系统呈现感性,这种模型我没怎么见过,不做讨论。我们的矢量网络分析仪的Smith Chart得到的结果直接就是Series Complex Load,所以我就用这个进行计算。前两种的换算非常简单,其实质就是极坐标(SParam)和直角坐标(Complex Load)的转换:
匹配好之后画到你电路图里即可。
使用ADS Smith Chart Tool匹配
ADS这个工具就挺好玩的,好像在Smith圆图上画画一样。选择上方工具栏Tools-Smith Chart,然后就会弹出匹配工具:

下一步我们设置负载阻抗,选中Network Schematic当中的

接下来我们先把左上角的Freq修改为目标匹配的频率,然后Z0设置为目标阻抗。选择左边的元件,元件默认是从负载开始向左添加,每加入一个元件,ADS就会让你画一条弧,然后你不断尝试,通过若干条弧将其匹配到圆心:

像我这里用了比较常见的L型匹配,也就是对地并一个电容(Shunt Capacitor),然后串一个电感(Series Inductor)。可以自己试试看使用这个方法匹配,并且和ADI工具匹配的结果进行对比。
理论上来说,你做到这一步之后,可以直接用ADS提供的INDQ和CAPQ去把这个匹配网络搭出来,然后直接Simulate看结果。但是Smith Chart允许你直接将你匹配的结果生成一个智能单元:(待补)
三、四阶晶体滤波器设计
(待补)
四、实物图绘制和构建
(待补)
五、上板测试与常见问题修复
(待补)
参考资料
[1] 童诗白等,《模拟电子技术基础(第五版)》,高等教育出版社