摘要:通过对基于IBIS模型的信号完整性仿真,分析在一个高速160MHzDSP(TMS320C6701)系统设计中成功应用的实例,阐述了基于IBIS模型的仿真分析在高速、复杂系统设计中的重要作用和实用性,描述了基于IBIS模型的仿真分析的一般过程。
关键词:IBIS模型 信号完整性 高速设计 仿真分析
对于高速系统而言,在设计过程中对设计进行仿真分析,将信号的完整性(SI)和时序问题解决在制版之前,尽可能地保证设计的一次成功是现在设计人员普遍采用的做法。仿真分析就是在设计的过程中,由EDA工具利用输入的器件模型数据进行分析,将成功的设计和有问题的地方直观地反馈给设计者,设计者根据反馈信息对设计进行修改完善的过程。然而早期的高速设计者们发现,如果一块PCB板上有上千个线网,进行基于电气模型的仿真分析,需要太大的运算量和太多的时间,是不切实际的。为此,开发出一种新的行为级的建模方法,这种方法被称为IBIS(I/O Buffer Information Specification)。
1 基于IBIS模型的信号完整性分析
1.1 IBIS模型和SPICE模型
仿真分析的基础是器件模型,器件模型的类型主要有两种。一种较早出现的是电气模型,比如SPICE模型。SPICE模型试图描述电路的实际电气连接,开发这种模型的初始目的是为了给集成电路的设计提供一个仿真环境,目前其主要的应用场合仍在于IC的设计和验证上。由于SPICE模型并不是为PCB的传输线及其它更大的结构而设计的,使用它来验证稍大的线网就显得不切合实际。另外,由于其要求描述电路的实际电气连接,芯片生产厂家担心会泄露自己的技术因而在提供模型时会不太积极。
另一种类型的模型就是IBIS行为模型,它描述器件在特定负载及特定封装下的输入输出行为而不是其实际的电气组成。与SPICE模型相比,IBIS模型的优势体现在三个方面:第一,由于IBIS模型保护了内部电路的私有信息而获得模型的芯片生产厂家的支持;第二,采用IBIS模型可以进行较快的仿真分析(比SPICE模型快25倍),这种优势在PCB板的密度越来越高,需要分析的关键线网越来越多的趋势下变得十分重要,因此IBIS模型获得EDA工具的支持;第三,IBIS模型易于获得(厂家提供或自己产生)和理解,而且因为包括I/O结构的非线性特性,封装参数及ESD结构,IBIS模型可以达到与SPICE模型相当的精度。另外IBIS模型不存在SPICE常有的不收敛问题。这些优势使其获得了设计者的支持。
由于IBIS模型的这些优势,使其在1993年形成初样至今短短数年就得以迅速的发展和广泛的应用,成为信号完整性模型的国际标准。
1.2 信号完整性分析
所谓信号完整性分析是分析由驱动器产生的信号经导线传输到负载后是否完整,受干扰的程度如何。在过去的低速数字设计中,设计者主要考虑逻辑上是否正确,而不用考虑信号传输的完整性。连接驱动器与负载之间的铜线被认为纯粹的短路线。随着对产品高性能的不断追求和半导体工艺的飞速发展,集成电路的速率越来越快,高速率的器件越来越普遍,信号完整性问题已成为设计者在高速数字设计中最为关心的问题。各类逻辑器件的速度如表1所示。
表1 逻辑器件的速率
Technolog | Rise/Fall(ns) |
ORIGINAL CMOS | 60 |
TTL,HCMOS | 11 |
LS TTL | 5.5 |
ALS | 4.4 |
FAST,FCT | <3.5 |
0.35μ CMOS ASIC | 0.2 |
ECL 10K | 2 |
ECL 100K | <1 |
0.8μCMOS | <0.1 |
理论上当信号的传输时延大于信号电平转换时延(沿速率)的20%时,连接驱动器与负载之间的铜线将被视为传输线而不是纯粹的短路线,这时就必须关注信号的完整性。以沿速率为1ns为例,如果走线时延大于200ps,则因视为传输线,而200ps仅对应于1 inch的走线长度。现在沿速率为1ns的器件已十分普遍,TMS320C6701的沿速率已达到了0.6ns。因此在现在的数字设计中,信号完整性分析几乎是不可回避的,即使采用速率稍慢的器件,如果系统组成复杂,布线过长时也必须进行信号完整性分析。
信号完整性问题主要源于高速驱动器陡峭的边沿,另外阻抗不匹配及邻近线网的电磁干扰也会损害信号的完整性。主要的信号完整性问题有:过冲和下冲,振铃,非单调性以及串扰等,如图1所示。如果不对这些信号完整性问题进行仔细的分析、检查并加以解决,将对系统性能造成严重影响。信号完整性分析的目的就是在实际物理实现之前发现信号完整性问题并尽可能将其解决。
2 一个实际的高速DSP系统设计中的信号完整性仿真分析
2.1 系统的构成
该系统是一个雷达信号处理机,DSP选用TI公司新近推出的TMS320C6701,该DSP采用0.18μmCMOS工艺制造,时钟速率高达167MHz,驱动器的沿速率为0.6ns。系统由两片TMS320C6701构成,每个DSP都配置各自的高速同步存储器(167MHz的SBSRAM)和异步存储器,同步存储器和异步存储器之间的总线用驱动器隔离。两个DSP之间两种交换数据的途径:一种是通过高速同步通讯口互连;另一种是通过FIFO进行数据交换。采用高速的CPLD完成译码和其它控制。两片高精度16位AD用于雷达信号的采集,一片高精度16位DA用于处理后信号的输出,AD和DA通过FIFO与各自的DSP相连。系统工作时钟的设计要求为160MHz,其高速数字部分的主要构成示意如图2。
该系统由435个元器件组成,线网达到4419个。系统中不仅有许多高速纯数字器件,还有对干扰十分敏感的数模混合器件和模拟器件。
系统包括7种电源网络,数字网络:1.8V、3.3V、5V及DGND,模拟网络:+5V、-5V及AGND。PCB采用8层设计:4层信号层和4层电源层。
2.2 仿真分析前的准备工作
2.2.1 EDA工具的选择
EDA工具包括原理图及PCB的制作和信号仿真分析两个部分。一般来说,这两个部分是相对独立的软件。对于高速设计而言,首先要选择一个好的信号仿真分析工具。有的信号仿真分析工具是基于IBIS模型的,有的是基于其它模型比如SPICE模型的;有的基于IBIS模型的工具的仿真分析功能不完全;另外,信号仿真分析工具与所用的原理图及PCB的制作工具之间是否有良好的接口关系也是必须考虑的因素。
本设计采用的原理图及PCB的制作工具是Mentor Graphics公司的BoardStation仿真分析也采用该公司出品的ICX。ICX是一个功能强大的基于IBIS模型的EDA工具,由布局器、仿真器、优化器及综合器等模块组成。布局器完成布局及布局分析;仿真器完成全功能的信号完整性分析和时序分析,分析可以在布线之前进行(pre_simulation),也可以在布线之后进行(post_simulation);优化器可以根据设计要求进行布局的优化、拓扑结构的优化、走线的优化及不同类型逻辑器件的优化选择;综合器则可以在设计规则的驱动下完成自动布线。
2.2.2 IBIS模型的获取和验证
由于器件模型是仿真分析的基础,因此在进行仿真分析之前必须将设计中所用到器件的IBIS模型准备好。器件的IBIS模型主要来自器件的生产厂家,从EDA工具厂家也可以获得一部分通用器件的IBIS模型。随着上述IBIS模型的优势获得广泛的认识,器件IBIS模型的获得变得越来越容易。对于那些实在找不到的IBIS模型,也可以通过一定方法自己生成。
器件模型的好坏直接决定仿真结论的可信程度,因此,在使用获得的IBIS模型进行仿真分析之前,必须验证IBIS模型的好坏。借助专门的工具可以进行模型的验证。一般来说,器件生产厂家和专业EDA厂家提供的IBIS模型可信度比较高。
2.2.3 关键线网的划分
对于复杂的设计,线网的数量可能高达数千个。为了缩短设计周期,在仿真分析之前应对设计中的关键与非关键线网进行划分。划分的原则主要是根据器件驱动器沿速率的高低和工作频率的高低;对时延敏感的线网,比如时钟信号,对曲线要求高的线网,比如FIFO的读写信号,即使速率不高,也应视为关键线网;另外,对于非高速线网,如果因为系统复杂而造成拓扑结构不好、走线过长,也应该作必要的仿真分析。
在本设计中,高速器件有:数字信号处理器TMS320C6701、133M SBSRAM GVT7118G36、高速CPLD EPM7128STC-6、高速总线驱动器和缓冲器SN74LVT162244、SN74LVT162245及SN74LVT125,这些器件的线网构成了本设计的高速线网,如图2所示。另外,AD和DA的读写时钟,FIFO的读写信号等其它一些信号也被视为关键线网。
2.3 不同阶段的仿真分析
ICX工具提供布线之前pre_simulation和布线之后的post_simulation。在原理图完成之后即可进行pre_simulation,此阶段的仿真分析主要是通过布线之前的信号完整性分析(不包括串扰),对布局进行指导,对逻辑器件的类型进行选择,决定那些信号需要端接,采用何种端接方法及端接电阻的阻值大小。
在pre_simulation指导完成布局布线之后,还可能存在一些信号完整性问题,相邻线网之间的串扰(pre_simulation没有考虑)是造成这些问题的主要原因。采用post_simulation功能再对完成布线后的设计进行进一步的仿真分析,此阶段的分析考虑了串扰在内的几乎所有的实际因素。根据post_simulation的仿真结果对设计在布线、线间距、端接位置和端接值等方面要做精细地调整,将信号完整性问题减小到可接受的范围之内。
2.4 通过仿真分析对设计进行修改
在设计中采用高速器件会产生许多逻辑分析难以解决的信号完整性问题,采用基于IBIS模型的信号完整性仿真分析能够将各种信号完整性问题发生的所在、程度等信息方便直观地提供给设计者。设计者据此对有问题的地方进行修改,再对修改后的设计进行仿真分析,对修改的效果进行验证,有时需要重复多次这个过程才能获得令人满意的结果。
在本设计中,首次进行仿真分析时暴露出许多严重的信号完整性问题,比如,过高的过冲和下冲,严重的振铃,非单调边沿以及过大的串扰等。通过在驱动端添加不同阻值的串联端接、在负载端添加不同阻值的并联端接、调整端接的位置、修改走线的拓扑结构、调整板层间的介质厚度甚至更换逻辑器件的类型等方法进行反复的修改与仿真验证,最终将各种信号完整性问题限制在可接受的范围之内。
图3给出工作频率为100MHz时DSP1数据线D8在驱动端添加33Ω的串联端接前后信号完整性分析的不同结果;图4给出工作频率100MHz时DSP1数据线D8在减小一些板层之间的介质厚度前后串扰的不同结果。
对高速、复杂的数字系统而言,基于IBIS模型的信号完整性仿真分析是设计中的得力助手。特别是对于在设计中第一次采用没有设计经验的高速器件的情况下,仿真分析显得尤为重要。在本设计中,借助于基于IBIS模型的信号完整性仿真分析,解决了许多信号完整性问题,制版后调试一次成功,避免了因信号完整性问题可能会带来的重复制版,缩短了设计周期。
上一篇:多核DSP结构与超核DSP结构
下一篇:介绍一种实时操作系统DSP/BIOS