基于Siwave的PCB EMMC信号波形与眼图仿真-Die波形仿真与考虑封装耦合的波形仿真
基于Siwave的PCB EMMC信号波形与眼图仿真-Die波形仿真与考虑封装耦合的波形仿真本文接基于Siwave的PCB EMMC信号波形与眼图仿真本文工程下载基于Siwave的PCB EMMC信号波形与眼图仿真-Die波形仿真与考虑封装耦合的波形仿真-工程文件0、前言最近对信号完整性SI、功率完整性PI比较感兴趣博主六年前上本科时也是一个画板子好手平时用AD软件搞点FR4的简单嵌入式的电路板子玩玩几十兆的时钟玩得不亦乐乎放在现在真的是out了。现在像模像样的高大上的板子基本时钟频率非常高板子上CPU和高速内存对电源、信号线有许多的要求在实际投板前需要进行信号完整性SI、功率完整性PI的仿真因此来学习一下下。学习资料是于博士的书籍《信号完整性揭秘》还有配套的视频啥的非常好用简单开坑记录下。Siwave是Ansys旗下的软件专门用于SI和PI的仿真之前用它家的HFSS非常多这次也来尝尝鲜。软件的下载可以去老吴那边下载Ansys EM 2025 R2 电磁仿真安装包已发布。目录基于Siwave的PCB EMMC信号波形与眼图仿真-Die波形仿真与考虑封装耦合的波形仿真0、前言1、Die波形查看1.1、单信号线S参数仿真1.2、工程搭建1.3、原理图搭建1.3.1、S2P导入1.3.1、激励源的插入与设置1.3.2、驱动器的IBIS模型导入1.3.3、接收端的IBIS模型导入1.3.4、插入探头与波形查看1.4、添加仿真器1.4.1、瞬态仿真器1.4.2、眼图仿真器1.5、仿真与结果查看1.5.1、电压波形查看1.5.2、眼图查看2、Package考虑封装仿真2.1、工程搭建2.1.1、SNP导入2.1.2、激励时钟设置2.1.3、输出ibis设置2.1.4、接收端的ibis设置-Package模型2.1.4、接收端的ibis设置-Pin模型2.2 仿真器设置2.3 结果窗口创建2.4 考虑Package和PIN上波形对比1、Die波形查看1.1、单信号线S参数仿真书接上回基于Siwave的PCB EMMC信号波形与眼图仿真中使用向导就行了仿真是把芯片的好多引脚一起进行的工程量比较大。这边以单个信号线EMMC0_DAT0信号线为例构建仿真案例。找到之前向导生成的端口删除无关的留下DAT0的删除后如下所示设置仿真器仿真频率沿用基于Siwave的PCB EMMC信号波形与眼图仿真的进行设置启用SNP文件导出设置完成后点击Launch仿真完成后在文件夹下得到S2P文件1.2、工程搭建打开Ansys Electronics Desktop也就是HFSS的入口选择Circuit选项选择None1.3、原理图搭建1.3.1、S2P导入打开后保存一下工程插入刚刚仿真得到的s2p文件1.3.1、激励源的插入与设置激励源按照如下进行设置其中100MHz的数据率UI设置为10ns。上升沿和下降沿时间设置为10ps是比较理想的情况。码型设置为PRBS长度设置为7然后加入并重命名一个网络名称1.3.2、驱动器的IBIS模型导入下面插入驱动器的IBIS模型选择EMMC0_DATA0进行导入插入后旋转一下然后连接一下双击驱动器进行设置设置正确的模型并链接到外部的激励源1.3.3、接收端的IBIS模型导入下面放置接收端的导入dat0先全部连接一下修改接收端的配置1.3.4、插入探头与波形查看先插入电压探头插入步骤如下测眼图的也加上1.4、添加仿真器1.4.1、瞬态仿真器添加步骤如下设置步长和停止时间这个主要和时钟频率相关此处50MHz的时钟每个周期是20ns因此仿真25个周期步长10ps可以清晰查看到瞬态的波形变化1.4.2、眼图仿真器添加步骤如下无需额外设置直接OK1.5、仿真与结果查看启动仿真1.5.1、电压波形查看按照如下步骤添加按照如下步骤配置先查看Probe上面的波形结果如下把Die上的波形一起添加进来可以看到几乎是重合的1.5.2、眼图查看按照下面步骤选择注意要选择眼图求解器结果如下2、Package考虑封装仿真2.1、工程搭建2.1.1、SNP导入书接上回基于Siwave的PCB EMMC信号波形与眼图仿真中使用向导就行了仿真是把芯片的好多引脚一起进行的把所有引脚的仿真数据导出SNP文件导入后加上对应的网络名称如下所示2.1.2、激励时钟设置基于Siwave的PCB EMMC信号波形与眼图仿真中使用向导就行了仿真对DAT、CLK、CMD的时钟都详细说明了项目设置值原理说明Source-DataPRBS数据线用伪随机序列模拟真实DDR数据流用于评估ISI、串扰和眼图Source-CLKCustom Bit 1010时钟用固定交替序列1010形成稳定周期方波保证参考时序Source-CMDPRBS命令线为单边信号况此处添加这些激励源按照参数设置即可2.1.3、输出ibis设置齐刷刷的排练好了啊值得注意的是要用不同的时钟。DAT的用EYESRC_DATACMD要用EYESRC_CMDCLK要用EYESRC_CLK可以参考我的工程进行设置2.1.4、接收端的ibis设置-Package模型导入ibis的时候按照如下勾选上把所有的DAT信号和CMD、CLK也选上设置的时候选择查看die上的波形Buffer类型设置为输入所有的引脚都改一遍2.1.4、接收端的ibis设置-Pin模型搭建好的复制一份重命名为PINibis导入的时候配置和之前导入Package时候类似但是不要选择Use Package Model:设置的时候选择查看die上的波形Buffer类型设置为输入所有的引脚都改一遍2.2 仿真器设置用这个就行2.3 结果窗口创建如下设置创建结果窗口2.4 考虑Package和PIN上波形对比可以看到考虑package耦合后波形失真更加严重了