编者注:本文写得非常简洁明了,以最新的USB4无源的要求为例,介绍了如何使用ADS进行无源参数的仿真和判断。
概述:USB ,DP, CNVI以及LPDDR4,LPDDR5等协议,在仿真的时候除了需要查看有源眼图之外,往往还需要查看S参数的合规性。各种协议对于损耗的要求不尽相同,SerDes协议大多会要求插入损耗和回波损耗以及共模回波损耗,远端串扰等指标。本文从S参数处理出发,利用ADS的原理图和DATA处理软件,查看差模/共模S参数,旨在给大家分享一个方法。
1.单端差分参数的来源:
SerDes 协议单端参数一般有两个来源,对应不同的部件
(1)、FPC,FFC,CONN等器件的S参数主要来源于实际测试。利用网络分析仪测试完成后直接保存为SnP格式的S参数模型即可。当然也可以用EMPro进行3D仿真提取S参数,但系统厂商一般不会自己做。
(2)、主板(MB)和DB主要来自于仿真软件提取,例如ADS 中的SIPro/PIPro,我们也是利用ADS的SIPro/PIPro提取的,具体流程如下:
此时获得的S参数有两个问题需要解决:(1)ADS直接提取的S参数是单端的,需要转化成差分进行查看,当然软件可以自动将其转化成差模进行查看。如下操作即可:
(2)ADS提取的只有主板或者与之连接的小板的S参数,需要查看整个链路的S参数需要将所有的S参数级联到一起,整合成新的S参数查看,如下图一个含Retimer的USB4的链路结构。
2.级联S参数的一种方法
如上所讲,需要将各部件的S参数整合到一起看整个链路的损耗值是多少dB,当然对于经验丰富的工程师来讲不联合起来,也可以通过他们多年的丰富经验简单的相加关键频点的S参数就可以判断结果。我们只不过是提供一种方法,利用ADS中的Simulation-S-Param进行重新的整合提取.
(1)、导入已有所有的S参数,并将其正确地连接起来。步骤如下图:
(2)、添加TermG 连接到对应的Port或者可以直接添加Balun4做差模S参数仿真。下面分别把两种方法列举了出来。
A.加TermG:
B.加Balun:
(3)、添S-PARAMETERS仿真器,并设置扫描条件,添加SPOutput可输出SnP格式的S参数。
设置好之后扫描,在数据处理视窗中查看S参数结果。
3.数据处理视窗中的处理:
仿真后可进入数据处理视窗查看结果,并处理结果。首先可以查看单端仿真的结果:
USB4的协议里面要求的是差模损耗和共模损耗,首先需要将我们仿真的单端S参数转化成差分S参数:
加入USB4的共模回损标准:
可以看到在12G的时候差模的结果是Fail的,相差0.368dB需要优化。
下一步查看回损:
加入回损标准:
可以看到损耗是pass的,满足协议要求。
补充:损耗标准的公式:
A1=-3.5+8.3*log10(freq/12/1E9)
SS=if(freq>=0&&freq<=3E9)then -8.5 else if(freq>=3e9&&freq<=12e9)then A1 else 0
分段函数利用if(……)then A,else 的语句与C语言比较相似。
总结:利用原理图中的Simulation-S-Param可以很好的处理多级互联S参数,仿真快速,查看方便。ADS提供的DATA处理视窗可以很好的利用函数进行差模共模转换,并且快速的导入协议标准,查看仿真结果是否满足协议要求。
另外仿真工程师一定要熟悉差/共模转换的公式以及在Equation中编辑函数呈现协议标准的方法。