如何在电路中获得S参数 - 9个方法(下)
继续上期内容。
方法6:Tran任务+全端口
优点:时域信号,可用于时域调制等。
局限:复杂且参数多(频域->时域->频域);仿真时间长且需要检查收敛;单端口网络激励(非完整S矩阵);
激励一个端口高斯Signal:
仿真时长需要比较长,确保时域收敛,不然S参数有波动;这个和时域求解器原理一样。
Tran任务中可勾选S参数计算,仅高斯激励计算的S参数才有意义:
我们拿S参数任务的结果对比,可见大致相同,但不100%完全一致:
检查时域信号的收敛状况:
方法7:Tran任务+端口+探针
优点:更多时域分析场景,比如时域调制等;
局限:复杂且影响因素多(频域->时域->频域);仿真时间长;单端口网络激励(非完整S矩阵);
我们保留端口1激励高斯信号,然后利用探针获取局部的信号,以便计算局部的S参数。多添加一个简单电路端口2,也有信号,用来模拟复杂的Transient电路。
这样结果文件夹就不是FD了,而是Spectral Density了:
和上期AC一样,探针结果只有电压电流,没有Signal(根号瓦)。需要手动获取S参数,那就还有要用耦合器区分入射反射的问题。
我们将两个Tran任务的结果一起和S参数任务结果对比,可见两个Tran任务结果很一致,但是都和S参数差一丁点。这是因为,这两个Tran任务用的是一个宏模型,我都没改vector fitting的任何设置,也没用IdEM。
放大看细节:
方法8:Tran任务+IDEM
优势:更先进的频域和电路转换;检查频域数据的质量;
局限:更多IDEM操作和学习,
方法6和7中都可以将频域数据的宏模型用IDEM重新拟合生成,我们以方法7中的电路为例,点击模块:
选择IDEM:
IDEM 中我们当然可以检查频域数据的质量,可见我们的频域数据并不完美:
因为我们的目的是要和S参数任务结果一致,并不是研究该频域数据质量和保证宏模型的物理性,所以这类我们就用高阶高精度拟合,不用强制无源:
导出宏模型进入电路(Design Studio):
还是Tran任务和手动计算S参数,与默认built-in宏建模相比,IdEM拟合的结果更加接近原始Spara任务结果:(但这不能说明原结果是对的,可能强制无源的模型才是质量更好一些)
当然仍有一点点差距,我们可以尝试增加时域时间提高收敛,或者再提高IdEM拟合精度等等。这些我们就不继续看了,总之,频域转时域再转频域不是一键容易的事,但是仍是一种计算S参数的方法。
方法9: Sweep任务+频谱线任务+电压源+探针+耦合器
优点:纯频域分析;可考虑谐波、调制等;探针获取局部S参数;无端口;
局限:操作较多;扫频计算较慢;
最后介绍一个特殊方法,扫频谱获得S参数。先定义频点参数,初始值不为零:
需要AC电压源和探针:
添加频谱线任务,谐波数量根据调制需求:
运行一次得到结果,添加后处理提取该频点的探针结果(幅值而已):
三个探针结果:
然后添加参数扫描,将频谱任务连带后处理都拖入其中:
运行参数扫描,得到众多结果后,进入后处理PP1,计算S11和S21:
如果想重新扫描,可以将S11和S21这两个关掉(默认On(parametric)是用于扫参计算)。
这样就得到1D结果:S参数线性幅值。如果想和S参数任务的1DC结果相比,还需要提取1DC的幅值;如果比dB幅值或相位,就相应修改S11和S21的后处理计算式吧。
小结:
方法6:Tran任务+全端口
优点:时域信号,可用于时域调制等。
局限:复杂且参数多(频域->时域->频域);仿真时间较长;需要检查收敛;全端口网络激励(完整S矩阵);
方法7:Tran任务+端口+探针
优点:更多时域分析场景,比如时域调制等;
局限:复杂且影响因素多(频域->时域->频域);仿真时间较长;需要检查收敛;单端口网络激励(非完整S矩阵);
方法8:Tran任务+IDEM
优势:更多时域分析场景,比如时域调制等;更先进的频域和电路转换;检查频域数据的质量;
局限:更多IDEM操作和学习;复杂且影响因素多(频域->时域->频域);仿真时间较长;需要检查收敛;单端口网络激励(非完整S矩阵);
方法9: Sweep任务+频谱线任务+电压源+探针+耦合器
优点:纯频域分析;可考虑谐波、调制等;探针获取局部S参数;无端口;
局限:操作较多;扫频计算时间更长;不可计算DC。