信号完整性分析学习--13--IBIS模型(2)

article/2025/8/30 6:08:26

        IBIS模型除了用于SI仿真,我们还可以从IBIS模型中得到一些有用的东西,如信号上升时间,输出阻抗以及封装延时等等。

从IBIS模型中可以获得信号上升时间信息

        IBIS模型中的关键字[Ramp]定义了buffer输出的上升下降沿的斜率。如下为micron的DDR3芯片的DQ_34_1600的[Ramp]语句。用 dv_r表示将R_load 接地情况下,逻辑电平状态(由低到高)转换的 20%到 80%的摆幅大小。

         由DDR3 的IO电压为1.5V可以计算出信号的上升下降时间为330ps左右(20%到 80%的上升时间为200ps这里为了仿真方便使用330ps)。由经验法则“当信号传输延时小于信号上升时间1/6时,互连线处在集总区域,不会体现出传输线效应。”可知,当信号传输延时小于55ps时,传输链路不会体现出传输线特性。也就是说如果当信号线的延时小于55ps的时候我们可以考虑采用直连的形式,而不需要使用任何匹配。

        一个经验丰富的信号完整性工程师通过IBIS模型中读取了信号上升时间,并根据PCB布局情况估算布线延时就能够大体得知接收端信号应该有什么样的特征,以及信号是否需要匹配。

确定buffer的输出阻抗

        由上一节的介绍我们能够从IBIS模型中得到输出buffer的上升时间,那么如果预估的布线延时超过了1/6的上升时间我们就需要通过增加匹配的方式来解决信号完整性问题。最简单的匹配方式就是源端的串联匹配,但如何确定最优的串联电阻值呢。我们也可以从IBIS模型中得到输出buffer的驱动能力,即buffer的输出阻抗 ,由于通常情况下传输线阻抗 控制在50ohm。那么就可以计算得到串联匹配电阻值  = 。下面我们来看如何得到驱动器的输出阻抗

        IBIS模型中的pulldown和pullup曲线分别为输出buffer的下管和上管的工作曲线。而数字电路只是简单的工作在晶体管的饱和区或者可变电阻区。由模拟电路的知识我们可以画出晶体管的直流负载线就可以找到操作点的电流电压值,由此计算出输出阻抗 下面以pulldown曲线为例说明输出阻抗 的求解过程。

一般情况IBIS模型中的每一条曲线都会对应typ、min、max三种情况,分别代表了不同的电压、温度下晶体管表现出的不同特性。负载线由50ohm上拉到VGS确定,对于micron DDR3的IBIS模型的DQ_34_1600 buffer的typ模式 ,由此可以确定直流负载线和两个坐标轴的交点(0V,30mA)、(1.5V,0A)。这样就能画出typ模式的直流负载线,进而得到操作点的电压和电流,计算得到 这个计算结果和DDR3手册中的34ohm非常接近,由此可知这种方式计算输出buffer的输出阻抗是完全正确的。如此我们就可以不通过仿真估算出需要添加的匹配电阻值。

         最优的  = 。在hyperlynx中搭建仿真电路进行仿真验证,由于我们只是通过pulldown曲线来计算输出阻抗,下面的仿真也只仿真一个下降沿。

 

        如上所示的仿真结果来看信号基本没有下冲,这就说明阻抗匹配已经做的很好了。细心的读者可能会想到,当我们增加了16.3ohm的 之后,晶体管的直流负载线已经发生了变化因为到VDDQ的电阻已经由50ohm变为了50+16.3=66.3ohm了,对于在一些饱和区线性度比较高的晶体管这个影响并不是很大,而对于一些在饱和区电阻变化很快的晶体管就会导致匹配的不理想存在下冲和过冲。

        我们也可以通过另一种更加简便的方法来得到输出阻抗Zout的值,用这种方法无需画出直流负载线。 我们做源端阻抗匹配的目的就是要让驱动器输出阻抗Zout加上源端串阻 得到的等效输出阻抗和传输线阻抗匹配。我们可以反过来思考当驱动器等效输出阻抗等于传输线阻抗时,驱动器阻抗和传输线阻抗之间由于分压使进入传输线的入射电压 ,那么通过传输线

对于上面的例子而言VDDQ=1.5V,

        由此,我们可以直接在pulldown曲线中找到15mA对应的电压500mV,计算得到  

确定管脚的封装延时

        IBIS模型中可能会包含三种形式的封装信息,分别在[package] [pin] [package model]三个字段定义。下面来说明一下这三个字段的含义和区别。

        首先来看[package]字段,它是定义关于R_pkg,L_pkg, C_pkg参数的一个字段,这里定义的参数是一个笼统的数,为什么说它是笼统的呢,是因为它只有一组数就把器件所有的PIN脚都包括了。

         显然这种方式无法描述封装内不同管脚之间的寄生参数的差异性,在速率不是很高的情况下这种参数模型仿真得到的信号质量可能和实际偏差不大,但是仿真结果不能表示封装对信号时序的影响,同样随着信号速率的不断提高如DDR3等接口的仿真如果想得到准确的信号质量和时序结果不能仅仅依靠[package]字段的参数。一般大的IC厂家都不会只弄这么一组数据,还会在[pin]字段里描述了每个PIN脚的package参数,同时与管脚的编号、管脚的信号名称、管脚的模型名称相对应,如下所示:

        [pin]字段和[package]字段一样,仅仅用一阶的RLC电路来描述整个package的特性,可能在频率不太高的情况下可以做个参考,但是到了高频后这显然是不够的,PIN与PIN之间的耦合信息,IC内部的bondwire信息等等全部没有。最理想的做法是用3D全波电磁场建模解决问题,但这种想法并不现实package的3D模型不是每个厂家都能提供的。但是我们已经可以从[pin]字段的L_pin、C_pin中得到每个pin在封装内的延时信息:

        

        这样我们就可以通过PCB的布线控制来补偿芯片封装内部的延时偏差,高速总线的时序设计将能够得到最大限度的保障。

        IBIS5.0版本又引入了[package model]字段,让手头仅有的资源发挥出最大的作用。[package model]字段内容可以出现在.ibs文件里,也可以出现在一个单独的以.PKG为后缀名的文件里。先看一下它的整体结构:

 

        接下来3个字段[Manufacturer],[OEM],[Description]属于描述性质的,大家完全可以忽略,对仿真没有什么影响。

        [Number Of Pins],这个看字面意思应该也能理解了,就是器件的引脚个数。[Pin Numbers]字段中列出了封装中所有pin的编号。

        接下来的[Model Data]将是[package model]的核心内容,包含了[Resistance Matrix],[Inductance Matrix],[Capacitance Matrix],翻译过来就是电阻矩阵,电感矩阵和电容矩阵。后面有Banded_matrix,Sparse_matrix等关键字,分别表示为一维矩阵,多维矩阵。一维矩阵的情况就和[pin]字段中定义的R_pin、L_pin、C_pin效果一样并不包含pin和pin之间存在的耦合信息,多为矩阵则包含了pin和pin之间的耦合信息不仅能够进行信号质量仿真也可以进行串扰仿真。

        通过上面的分析可知,我们可以在[pin]、[package model]字段中获得每个管脚封装内部的延时信息,获得这一延时对我们来说有着怎样地意义呢?

        首先,我们知道互连线延时超过信号上升时间延时1/6时互连线就会表现出传输线效应。在2.4.3章节介绍源端匹配时我们已经了解匹配电阻的布局必须足够靠近驱动器才能和驱动器的输出电阻看成是集总电路,才能获得最好的匹配效果。由[ramp]参数可以读出驱动器的上升下降时间,我们可以用1/6信号上升时间减去封装内部的延时作为封装管脚到匹配电阻的PCB布线延时的约束。

        第二,由于我们在进行信号质量测试时只能在靠近输入管脚的封装处选择测试点。而对于一个输入管脚如果封装延时很大,我们在封装处测试得到的信号波形和芯片DIE实际接收到的波形将会存在很大的差异。

        在ADS中搭建仿真电路,有8.6nH的电感和2.25pF的电容来模拟封装参数,仿真来观测Vpkg和Vdie两点的电压波形差异。

        计算得到封装延时  = 139ps,此时的仿真结果如下图所示(红色实线为die内接收波形,蓝色短划线为封装处的测试波形) 。

        如上所示,两个波形存在比较明显的差异。封装处的测试波形在上升下降延都存在100ps左右的回沟,而且边沿要比die内测试到的波形要缓,幅度要比die内信号波形低。这一现象可以用反射的理论来解释,在封装处测试的波形实际上是由发送端的入射波和接收端反射产生的反射波的叠加产生,由于封装参数的存在导致入射波和反射波之间有一定的延时,在叠加的时候就导致回沟或者台阶的出现。   

        我们可以试着减小封装参数来看是否回购有效减小或者消失。将封装参数更改为电感6.01nH、电容1.52pF,计算得到封装延时  = 96ps,此时的仿真结果如下图所示(红色实线为die内接收波形,蓝色短划线为封装处的测试波形) 

 

         如上所示,两个波形之间的差异已经很小。封装处的测试波形在上升下降延的回沟都消失了,只是边沿要比die内测试到的波形要缓一点,幅度要比die内信号波形低。


http://chatgpt.dhexx.cn/article/FRF0qY09.shtml

相关文章

初识IBIS模型

关注、星标公众号,精彩内容每日送达 来源:网络素材 半导体LSI的EDA模型之一是"IBIS模型",完整称为Input/Output Buffer Information Specification,是一个描述数字IC输入端和输出端电气特性的文本文件,在电路…

Cadence PCB仿真 使用Allegro PCB SI为BRD文件创建通用型IBIS模型的方法图文教程

⏪《上一篇》   🏡《总目录》   ⏩《下一篇》 1,概述 本文简单介绍使用Allegro PCB SI软件为BRD PCB设计文件中的元器件创建IBIS模型的方法。 2,创建方法 第1步:确定打开PCB文件的软件是 Allegro PCB SI 如果不是Allegro PCB SI,可执行File→Change Editor…更换软…

FPGA之IBIS模型编辑实战攻略

通常我们获得的FPGA IBIS模型是这款芯片的通用模型,在信号完整性仿真中使用起来,很不方便。究其原因,其实就是管脚映射不对。每个FPGA在实际应用时,都会根据产品功能、单板空间等情况,对FPGA的管脚做一个重新定义&…

Cadence PCB仿真使用Allegro PCB SI 创建含差分对网络元器件的IBIS模型图文教程

⏪《上一篇》   🏡《总目录》   ⏩《下一篇》 1,概述 本文简单介绍使用Allegro PCB SI软件为BRD PCB设计文件中的含有差分对网络的元器件创建IBIS模型的方法。 2,创建方法 第1步:确定打开PCB文件的软件是 Allegro PCB SI 如果不是Allegro PCB SI,可执行File→Chan…

高速电路设计与仿真之Model Integrity篇(IBIS模型介绍)

工欲善其事必先利其器,高速电路的仿真离不开的就是Model Integrity仿真工具,而Model Integrity仿真用到的模型就是IBIS模型文件。使用Model Integrity不仅可以用来浏览模型,还可检查IBIS模型或DML模型(Cadence的模型格式&#xff…

信号完整性学习笔记-IBIS模型

1.IBIS模型是一种基于V/I曲线的对I/O Buffer 快速准确建模的方法,是反映芯片驱动和接收电气特性的一种国际标准,提供一种标准的文件格式来记录如驱动源输出阻抗、上升/下降时间及输入负载等参数,非常适合做振荡和串扰等高频效应的计算和仿真。…

IBIS模型参数

IBIS模型参数 作者:AirCity 2020.2.1 Aircity007sina.com 本文所有权归作者Aircity所有 下面是一个典型的IBIS模型,包括了各种参数符号。你在IBIS模型中看到的参数都在下面表示出来了。 PMOS导通,NMOS关闭,输出1;NMO…

Cadence导入IBIS模型用于仿真

SPICE模型库网址 查找SPICE模型的最佳位置是浏览供应商或制造商的网站,以下是部分常用的网址。 1、ADI https://www.analog.com/en/design-center/simulation-models/spice-models.html# 2、TI http://www.ti.com/design-resources/design-tools-simulation/models…

浅谈—IBIS入门理解

1.IBIS简介 IBIS(Input/Output Buffer Information Specification):输入输出缓冲器,是一个行为级模型,描述的是电压与电流、电压与时间的关系,也是一种基于V/I曲线的对于输入输出端口快速准确建模的方法,是反映芯片驱…

信号完整性分析学习--12--IBIS模型

前面说过信号完整性分析的三要素包括:信号、驱动接收器件和信号的传输通道。之前讲了信号的时域、频域特性,各种常见的电平标准其实就是驱动和接收芯片的基础知识。这一节我们将介绍有关IBS模型的知识,后面我们将会逐渐的接触信号完整性仿真分…

IBIS模型简介

一、如何生成IBIS模型,IBIS模型里包括什么 • 1.可以通过仿真过程中或基准测量中收集的数据来获得IBIS 模型。如果选择前一种方法,可以使用SPICE进行仿真, 收集每个输出/输出缓冲器的V/I和V/T数据。这样可以在模 型中包含过程转折数据。然后…

IBIS详细讲解

IBIS是Input/Output buffer information specification的缩写,从名字中可以看出,模型的主要作用是描述器件输出输出的特性。 简单来说,有IBIS模型比没有模型,仿真结果会更为准确。 在IBIS出现之前,仿真主要依靠SPICE模…

候选键与主键

候选键与主键 候选键 关系中能唯一标志一个元祖的最小属性集 关系实例上任何两个元祖的值在候选键的属性(集)上取值不同 主键(primary Key) 若一个关系有多个候选键,可选择其中的一个作为主键 包含候选键的属性集称为…

mysql是如何设置候选码_求关系模式中的候选键(软考,数据库)

求关系模式中的候选键,是软考中的考点,但视频中没有讲,所以得一提。 求闭包 给定关系模式R(U,F),U{A,B,C,D,E},F{B-A, D-A, A-E,AC-B},其属性AD的闭包为_____…

超键,候选键,主键,外键

前言: 对于刚学习数据库的童鞋来说,定会遇到这么一个问题,那就是数据库所说的各种键之间的关系以及区别,作为曾经在这个难点上有过痛苦经历的人来说,印象是比较深刻的,所以在这里我将我自己心中所了解到的四…

候选键的计算(数据库系统概论)

本篇博客是在学习数据库系统概论第六章(关系数据理论)后觉得直接去分析候选码有难度,就在网站上搜寻了一些资料,得出了一些结论,在这里分享一下,希望对大家有帮助!!! 算…

闭包及候选键求解方法

一、闭包 设X是函数依赖集,被X逻辑蕴涵的函数依赖全体构成的集合,称为函数依赖集X的闭包,记为。 设F是属性集U上的FD集,X是U的子集,那么(相对于F)属性集X的闭包用表示,它是一个从F集使用FD推理…

规范化理论:候选键的求解理论和算法

什么是关键码? 设关系模式R的属性集是U,X是U的一个子集,F是在R上成立的一个函数依赖集。如果X→U在R上成立(即X→U在中),那么称X是R的一个超键。如果X→U在R上成立,但对X的任一真子集都有→U不…

数据库中的超键 候选键 主键 外键

这里写目录标题 数据库中的超键 候选键 主键示例说明 数据库中的超键 候选键 主键 见下图: 示例说明 学号身份证姓名班号班位置SN001SF1张三CN_a3层SN002SF2李四CN_a3层SN003SF3王五CN_a3层SN004SF4李六CN_b4层SN005SF5谭七CN_b4层SN006SF6张三CN_a3层 由表可得…