上一篇:ADS 使用教程(十三)Working with Touchstone / S-Parameter files in ADS
这一节,我们来了解一下多维参数扫描(Multi-Dimensional Parameter Sweeps),该功能可以帮助我们探索不同参数组合对电路性能的影响。
到目前为止,我们一直在进行简单的S参数仿真。但在有些情况下,我们需要对变量运行扫描来检查电路性能。
首先,我们将之前使用的TestBench复制一份,并将副本命名为“TestBench_MyFilter_ParameterSweep”:
打开复制后的schematic,删除不必要的组件,只保留S参数仿真控制器和NETLIST INCLUDE。
首先,我们需要创建一些变量,并将变量赋值给组件。我们选择工具栏中的来插入变量。然后我们双击来添加变量。
首先,我们创建一个名为“myL”的变量用来扫描电感,为了贴近实际,我们将Variable Value设为41(不用添加单位),然后点击。然后再创建一个名为“myC”的变量,Variable Value设为22,然后点击(不要点击,否则会覆盖当前设置的变量)。然后点击“OK”,即可添加我们所需的变量:
我们进入到子设计中,将L1和C1值修改为我们刚刚定义的变量(注意带上单位):
此处我们仅放入了两个变量,在实际设计中我们可以按照自己的需要任意增删变量。
我们之前放置的S参数仿真控制器,默认是以频率(freq)为X轴的,由于此次我们的扫描变量是电容和电感的值,所以我们需要在Library Palettes中选择“Simulation-S_Param”,然后选择来进行扫描:
然后双击,定义此次扫描的参数是myL,从10开始,扫描到100,步长为5,总共进行19次测试。
然后我们选择“Simulations”选项卡,将其连接到已有的模拟器上。我们之前已经创建了名为“SP1”的S参数仿真,所以我们填入“SP1”,点击“Apply”。
然后点击来执行仿真。我们添加dB(S(2,1))的图像:
然后我们就可以看到,我们得到的仿真结果是一簇曲线,每条曲线分别对应着不同的电感值:
因为我们还定义了myC这个变量,所以我们可以创建嵌套循环来进行扫描。这种情况下,我们再复制一个PARAMETER SWEEP,然后将“SweepVar”修改为“myC”。为了创建嵌套循环,我们需要对其进行连接。我们将Sweep2的“SiminstanceName[1]”改为“Sweep1”。我们将myC的范围设为5-50:
双击两个PARAMETER SWEEP,我们可以看到步数都为19,所以我们总共需要进行19*19=361次仿真。点击进行仿真:
所有的数据组合都呈现在了plot中。
(To be continued......)
下一篇:ADS 使用教程(十五)Multi-Dimensional Data Processing in ADS