IBIS模型详解中文版Word文件下载.docx
《IBIS模型详解中文版Word文件下载.docx》由会员分享,可在线阅读,更多相关《IBIS模型详解中文版Word文件下载.docx(18页珍藏版)》请在冰豆网上搜索。
边缘速率或者是V/T波形的数据的测量.........................................................................7
2.2.4
试验测量获取I/V和转换信息的数据..............................................................................7
2.3
数据的写入....................................................................................................................8
2.3.1
IBS文件的头I信息........................................................................................................8
2.3.2
器件和管脚的信息.......................................................................................................8
2.3.3
关键词Model的使用.....................................................................................................9
3
用IBIS模型数据验证模型...............................................................................................................................................10
3.1
常见的错误...................................................................................................................10
3.2
IBIS模型的数据验证......................................................................................................12
3.2.1
Pullup、Pulldown特性...............................................................................................12
3.2.2
上升和下降的速度(Ramprate)..............................................................................12
3.2.3
上下拉特性和Ramprate的关系..................................................................................12
3.3
用IBIS模型数据验证模型参数的实例..............................................................................12
1绪论
1.1IBIS模型的介绍
IBIS(Input/OutputBufferInformationalSpecifation)是用来描述IC器件的输入、输出和I/OBuffer行为特性的文件,并且用来模拟Buffer和板上电路系统的相互作用。
在IBIS模型里核心的内容就是Buffer的模型,因为这些Buffer产生一些模拟的波形,从而仿真器利用这些波形,仿真传输线的影响和一些高速现象(如串扰,EMI等。
)。
具体而言IBIS描述了一个Buffer的输入和输出阻抗(通过I/V曲线的形式)、上升和下降时间以及对于不同情况下的上拉和下拉,那么工程人员可以利用这个模型对PCB板上的电路系统进行SI、串扰、EMC以及时序的分析。
IBIS模型中包含的是一些可读的ASCII格式的列表数据。
IBIS有特定的语法和书写格式。
IBIS模型中还包括一些电气说明如V、V、V以及管脚的寄生参数(如管脚的引线R、L、C)等。
有一点需要注意的是IBIS模型并不提供IC器件:
功能信息、逻辑信息、输入到输出的时间延迟等。
也就是说,IBIS模型只是提供了器件的输入、输出以及I/OBuffer的行为特性,而不是在IC器件给定不同的输入,测量对应不同的输出波形;
而是在描述器件有一个输入时,我们看不同情况下输出的特性(具体的说我们可以在输出端接一个电压源,这样我们在确保器件输出高电平或者是低电平时,调整电压源的数值,可以测出不同的电流,这样我们就可以在确保输出管脚输出某一个状态时得出一些I/V的数值,至于电压源具体的变化范围后面的内容会涉及到)。
所以对于器件商家而言IBIS模型不会泄漏器件的内部逻辑电路的结构。
要实现上面提到的对系统的SI和时序的仿真,那么需要的基本的信息就是Buffer的I/V曲线和转换特性。
IBIS模型中Buffer的数据信息可以通过测量器件得出也可以通过器件的SPICE模型转换得到。
IBIS是一个简单的模型,当做简单的带负载仿真时,比相应的全Spice三极管级模型仿真要节省10~15倍的计算量。
IBIS模型是基于器件的。
也就是说一个IBIS模型是对于整个器件的管脚而言的,而不是几个特殊的输入、输出或者是I/O管脚的Buffer。
因此,IBIS模型中除了一些器件Buffer的电气特性,还包括pin-buffer的映射关系(除了电源、地和没有连接的管脚外,每个管脚都有一个特定的Buffer),以及器件的封装参数。
IBIS提供两条完整的V-I曲线分别代表驱动器为高电平和低电平状态,以及在确定的转换速度下状态转换的曲线。
V-I曲线的作用在于为IBIS提供保护二极管、TTL推拉驱动源和射极跟随输出等非线性效应的建模能力。
一般而言,IC器件的输入、输出和I/O管脚的Buffer的行为特性是通过一定的形式描述的。
下面分别对于输入、输出和I/O管脚Buffer的表述形式作一个介绍。
对于一个输出或者是I/O管脚的Buffer需要下列的相关数据:
●
在输出为逻辑低时,输出管脚Buffer的I/V特性
在输出为逻辑高时,输出管脚Buffer的I/V特性
在输出的电平强制在V以上和GND以下时,输出管脚Buffer的I/V特性
Buffer由一个状态转换为另一个状态的转换时间
Buffer的输出电容
对于一个输入管脚的Buffer需要以下的数据:
输入Buffer的I/V曲线(包括电平高于V或者是低于GND)
Buffer的输入电容
一般情况,IBIS模型包含以下一些信息,IBIS模型的结构如下图1.1所示。
1.
关于文件本身和器件名字的信息。
这些信息用以下的关键词描述:
[IBISVer]IBIS的版本号,[FileName]文件的名称,[FileRev]文件的版本号,[Component]器件的名称和[Manufacturer].器件的制造商。
2.
关于器件的封装电气特性和管脚与Buffer模型的映射关系。
可以使用关键词[Package]和[Pin]描述。
3.
为了表述器件管脚的Buffer所需要的相关的数据信息。
关键词[Model]是用来表示每个Buffer的数据,具体的内容有:
Model_type(Buffer的类型)、Vinh、Vinl以及C_comp(IC芯片的电容)。
在前面的内容中提到了Buffer的特性描述,在IBIS模型中需要下面的一些关键词描述:
[Pull-up]、[Pull-down]、[GNDclamp]、[Powerclamp]和[Ramp]。
当然对于不同的Buffer可能不需要上面的全部的关键词来描述。
如OC和漏极开路电路就不需要[Pull-up]关键词的数据信息。
图1.1IBIS模型的结构图
下面就图1.1的内容作一个说明。
在图的右半部分的内容有[…]的是IBIS模型中的关键词;
没有方括号的条目则代表的是子参数的标题。
同时对于红颜色的字符“Y”标明在IBIS模型中是必选项;
而“N”则是标明该内容在IBIS模型中为任选项。
1.2IBIS的创建
创建一个标准的IBIS模型需要5个步骤。
具体的内容如下所示。
创建模型前的准备工作。
这包括:
确定模型的复杂度、确定器件的工作电压以及环境温度,获取器件本身的相关信息(如封装形式,封装参数等)。
通过直接测量或者是仿真的方法得出输出或者是I/O管脚的I/V曲线的数据。
将数据写入IBIS模型的列表中。
4
数据的验证。
以上是对于创建一个IBIS模型需要步骤的简要说明,所以下面就每一个步骤的具体操作做一个详细的介绍。
2IBIS模型的创建
2.1准备工作
2.1.1基本的概念
在创建IBIS模型之前首先是搜集信息。
这些信息包括:
确定IC器件的Buffer有几种类型、器件的封装形式以及工作电压、器件工作的温度、I/OBuffer是否工作在多电源情况以及钳位二极管(静电保护)的参考电源是否和Buffer相同等。
器件的封装信息有器件管脚的引线参数(引线电阻R、引线电感L、引线电容C)以及管脚和信号名的对应关系。
这里涉及到一个器件电容C(DieCapacitance)的概念,器件的电容和引线电容是不同的两个概念,但是两者是有关系的。
C=C-C
众所周知,一个IC器件的Buffer类型至少有两种:
基本的输出或者I/O的Buffer和输入Buffer。
一些复杂的器件也许有多种类型的Buffer。
例如时钟输出端的Buffer的驱动能力比较强,相对而言地址和数据线的输出端的Buffer的驱动能力就差一些,同样对于一些不太重要的信号的输出端的驱动能力就更低了。
现在的趋势是在IC器件内部使用尽可能少或者是单一类型的Buffer。
器件的Buffer的作用是提高器件的驱动能力,同时还起到一个隔离的作用。
如果器件的Buffer是单一的,这样所有的输出和I/O信号的I/V曲线都相同了,这也意味着IBIS模型的简化。
但是在实际的操作中,一般不是单一类型的,即使是单一类型的Buffer,也不是IC所有的输出和I/O管脚的I/V曲线也是不尽相同的。
因为每个管脚的输出电容、封装参数以及信号的功能都存在差异。
然而我们可以将一些信号分到一些适当的Buffer类型里。
具体的操作如下所述。
首先是按管脚的类型将输入管脚和输出或者I/O管脚分开。
输入管脚只需要I/V曲线,不需要上升或下降时间的信息。
在这基础上根据输入管脚的输入电容和封装参数加以区分,将具有相同的输入电容和封装参数的管脚分为一个集合。
对于输出和I/O管脚。
一般情况下首先是根据这些信号的功能分类。
然后再根据管脚的输出电容和封装参数分组。
例如,对于一个微处理芯片的地址信号线,数据信号线和控制信号线要分为3类,接着将以上的3类根据不同的输出电容和封装参数再分为不同的组。
在创建IBIS模型之前,根据I/OBuffer的特性和结构确定要创建的IBIS模型的版本号。
因为不同的版本号所支持的内容是有所区别的。
同时一个模型可以代表一个具体存在的器件,也可以代表一个典型封装的器件系列。
实际上IBIS模型提供了3中模式。
慢模式(驱动能力最弱,边缘变换最慢)、典型的模式和快模式(驱动能力最强,边缘变换最快)。
这些工作的模式一般是以下几种情况所决定:
硅片的工作环境。
如器件的功率和周围环境的温度。
硅片的操作的限制。
同步输出开关的数量。
2.1.2数据列表的信息
当我们一旦完成了以上工作后,就开始需要一些具体的信息来创建器件的一个IBIS模型。
有些具体的信息对于器件而言是整体性质的,直接填到IBIS文件的列表中;
而有些条目则是用来做仿真的数据。
一般而言创建者需要以下的信息:
IBISSpecification:
IBIS的说明信息(如IBIS的版本号)。
BufferSchematics:
器件的Buffer的类型(如标准的CMOS推拉电路、漏极开路等)。
ClampDiodeandPullupreferences:
钳位二极管和上拉参考电平。
对于一些器件而言钳位二极管和上拉参考电平可能是不同的(一般是钳位二极管连接的电平要比上拉参考电平小一些),尤其是多电源供电的器件。
PackagingInformation:
封装信息。
IBIS模型需要的管脚名和信号名以及管脚名和Buffer类型的对应关系列表。
PackagingElectrical:
封装的电气信息。
主要包括器件管脚的封装信息。
如R_pin、L_pin以及C_pin。
SignalInformation:
决定某些信号在创建IBIS模型可以忽略。
如一些测试盘垫或者一些静态的控制信号等可以忽略。
DieCapacitance:
器件的电容。
这是由盘垫看进去的电容(C_comp参数)。
VinLandVinHParameters:
一个完整的IBIS模型的输入和I/OBuffer的信息应该包括VinL和VinH参数。
2.2数据的提取
作完了准备工作,就需要确定器件所需要的I/V曲线和转换时间(U/T曲线)数据了。
对于输出和I/O管脚需要I/V曲线和rise/fall时间的信息,而对于输入管脚则只需要I/V曲线。
2.2.1利用Spice模型
如果我们可以得到有关器件的HSPICE模型或者是其他可以使用的SPICE模型,那么可以使用S2ibis(一个可以将SPICE模型转换位IBIS模型的软件)提取有关Buffer的I/V和V/T的曲线数据。
在没有SPICE模型或者是我们需要自己创建一个IBIS模型时,我们可以按照以下的一些方法进行数据的测量和校正,最终获得一个比较合理的IBIS数据模型。
2.2.2确定I/V数据
为了确定所需的I/V数据,首先要了解Buffer的操作。
分析Buffer的类型方案并且确定怎样将Buffer的输出变为逻辑低、逻辑高以及高阻状态。
下面的内容将详细的做一介绍。
仿真的操作。
对于器件的输出或者是I/OBuffer的典型的仿真示意图可以用图2.2.2表示。
被测器件是一个标准的推拉3-stateBuffer。
图2.2.2I/V仿真的实例
图2.2.2_1IBIS模型的示意图
其中DUT(DeviceUnderTest)是被测设备。
如图2.2.2所示所有的测量数据都是由OutputNode(盘垫)处测得。
对于图2.2.2_1所示的意义作一个简要的说明。
框图1和2代表了标准TTL(BiCMOS或者是CMOSI/OBuffer)上拉和下拉的输出。
框图3则是DC的I/V数据的获取,同时还代表了ESD或者是电压钳位。
框图4展示了输出的转换时间(上升沿和下降沿的波形)。
框图5则为从输出看到的pad和封装参数。
C_comp电容代表了输出pad、钳位二极管和输入晶体管的总电容。
那么对于封装参数则是管脚出线的电容、电感和电阻。
那么对于输入的管脚只需要框图3和5就可以了。
输出Buffer和一个独立的电压源相连。
当我们激活输入端时,就可以使得输出端得到我们所期望的输出状态(低、高或者是高阻),这样可以利用DC功能或者是传递函数分析功能扫描电压源的电压范围从-V到2*V同时记录下输出端的电流值。
如果直流分析引起收敛的问题(也就是说我们使用DC功能测量AC信号时出现的问题),那么我们需要使用AC或者是使用瞬态分析功能。
电压源变为一个慢的线性变化(100mV/ms)驱动输出端,同时记录输出端的电压和电流值,这样I/U随时间变化的数据就得出了。
I/OBuffer的数据。
对于一个I/O(3-stateable)Buffer需要4个I/V曲线来表征其特性,。
其相应的4个关键词分别是:
[Pullup]、[Pulldown]、[GNDClamp]以及[POWERClamp]。
4个曲线分别是:
Pullup晶体管工作(输出为高电平)、Pulldown晶体管工作(输出为低电平)还有两个输出为高阻状态时的曲线。
输出状态为高时,得到的数据则是形成[Pullup]的列表;
在输出状态为低时,所得到的数据是用来形成[Pulldown]列表的数据。
具体的信息如下表2.2.2-1所示。
表2.2.2-1I/OBuffer的特性曲线
关键词
特性曲线
备注
Pullup
输出状态为高时的Pullup曲线
Buffer的上拉晶体管导通,电压范围为-V到2*V的数据。
其中V=V-V
Pulldown
输出状态为低时的Pulldown曲线
GNDClamp
输出为高阻的曲线
在输出电压的数值小于GND的电压值时的I/V曲线。
POWERClamp
在输出电压的数值大于V的电压值时I/V的曲线。
对于上述的4个曲线必须在3中情况下分别测量:
最小工作电压值、典型的工作电压值和最大的工作电压值。
所以这意味着我们最终得到的将有12条I/V曲线。
输出Buffer的数据。
对于输出Buffer只需要2套数据曲线就可以了。
一个是Pullup曲线;
另一个就是Pulldown曲线。
两个曲线的定义和前面的内容是一致的。
因为输出管脚没有3态的模式,所以电源和地的钳位二极管的两个曲线就不需要晶体管的曲线区分了。
对于漏极开路或者是集电极开路的器件需要3个I/V曲线就可以了。
3个曲线分别是:
关键词[Pulldown]表示的曲线、关键词[GNDClamp]以及[POWERClamp]。
Pulldown的数据可以通过前面讲到的方法得出数据。
对于[GNDClamp]和[POWERClamp],可以通过使得Pulldown晶体管截止,然后扫描输出端的电压和电流值。
输入Buffer的数据。
当我们测量输入Buffer的数据时,我们可以使用同输出或者I/OBuffer的方法。
当然我们必须将电压源放置在输入端。
对于输入Buffer只需要[POWERClamp]和[GNDClamp]的I/V数据。
电压的范围。
在创建IBIS模型时,对于I/V曲线的数据取值范围是如何确定的呢?
我们知道器件的输出管脚的信号电压值在0-V之间摆动。
同时传输线在传输信号时,由于传输线的阻抗可能不匹配,所以会出现信号的反射现象。
我们考虑极端的情况:
对于一个短路的传输线的最大的负反射发生时,理论上在传输线上看到的电压为-V;
同时如果对于一个开路的传输线的最大的正反射发生时,理论上在传输线上看到的电压值为2*V。
所以我们将电压的范围确定为-V到2*V。
然而值得注意的是,如果一个器件的工作环境比较特殊下,那么该器件的输出可能超出该范围,所以I/V列表的数据限制还需要进一步扩展。
例如我们考虑一个3.3V的I/OBuffer在一个多电源的系统中工作(3.3V/5V)。
该器件的输出端可以在0到3.3V之间摆动,如果该输出端连接了一个工作电源为5V的器件,那么可能出现驱动端的输出电压超出3.3V。
在这种情况下。
我们需要将该器件的IBIS模型的电压范围由原来的-3.3V到6.6V扩展现在