Altium Demo系列_信号完整性分析SI仿真
- 格式:pdf
- 大小:1.26 MB
- 文档页数:15
⽤Altium做信号完整性仿真参考⽂档:Performing Signal Integrity AnalysesPutting Signal Integrity in its PlaceFPGA SI Tutorial - Setting UpFPGA SI Tutorial - Checking for Crosstalk⽤Altium做信号完整性仿真的步骤:1.在design->layer stack manager中设置电路板层叠的参数2.在design->rules中设置和信号完整性分析相关的规则3.tools->signal integrity->model assignment为需要仿真的器件添加模型,如IBIS模型4.tools->signal integrity->model assignment->analyze design对所有net进⾏信号完整性分析,这⼀步花的时间要多⼀点5.选择重要信号,进⾏反射和串扰分析5.1 对信号相关的各个引脚的模型进⾏选择5.2 进⾏分析⽤Altium做信号完整性分析的问题:1. 每改变⼀次设计,如改变⼀个电阻的值,都要重新做第3步,这⼀步是对所有信号进⾏分析,花的时间较多,⽽实际上我们关注的只是⼀些重要的信号.总的说来,就是花很多时间分析我们不关注的net,可不可以只对我们关注的net进⾏分析.2. 每做⼀次reanalyze design,⼜要到分析的信号列表中去找关注的信号,信号列表中包括了设计中所有的nets,所以每次都去找关注的信号很⿇烦.3.在对重要信号进⾏反射和串扰分析之前要对相关IC的引脚分配IO脚的输⼊输出模型,在步骤的第3步添加的IBIS模型,不能⾃动的分配到相应的引脚.⽽且每做⼀次reanalyze design,不仅仅要⾯对问题2,还要重新对相关IC的引脚分配IO脚的输⼊输出模型.4.在对信号进⾏反射和串扰之前,对相关IC的引脚分配IO脚的输⼊输出模型时,先选择引脚类型,有TRI,IN, OUT,BI这四种类型供选择,选择了类型之后,在供选择的模型中就列出了库中所有的该类型的模型,⽽不会列出其它类型的模型,这相当于⼀个滤波器的作⽤,⽅便我们选择.但是在⼀些芯⽚的IBIS中还定义了其它的类型,如AD9215的第13脚,类型为CLK.这样的话,由于引脚类型只有四类,没有CLK这⼀类,我们就⽆法使⽤这个模型了.总结起来,先不说AD做信号完整性的准确性,仅仅是问题中的1,2,3就使得我们⽤它来做信号完整性分析很不⽅便,不知道是否是因为我现在⽤的还不好,对⼀些功能还不会使⽤,还是本来就存在这样的问题. 第4个问题说明,有的IBIS中定义的模型是不使⽤的,这样它的准确性就不能保证.。
利用Cadence Allegro PCB SI进行SI仿真分析摘要本文主要针对高速电路中的信号完整性分析,利用Cadence Allegro PCB SI 工具进行信号完整性(SI)分析。
说明:本手册中的实例均采用Cadence SPB 16_2操作实现。
目录一、高速数字电路的基本知识 (3)1.1高速电路的定义 (3)1.2高速PCB的设计方法 (3)1.3微带线与带状线 (4)1.4常见的高速数字电路 (5)1.4.1 ECL(Emitter Coupled Logic)射级耦合电路 (5)1.4.2 CML(Current Mode Logic)电流模式电路 (6)1.4.3 GTL(Gunning Transceiver Logic)电路 (6)1.4.4 TTL(Transistor Transistor Logic)电路 (7)1.4.5 BTL(BackPlane Transceiver Logic)电路 (7)1.5信号完整性 (8)1.4.1 反射(Reflection) (8)1.4.2 串扰(Crosstalk) (8)1.4.3 过冲(Overshoot)与下冲(Undershoot) (9)1.4.4 振铃(Ringring) (9)1.4.5 信号延迟(Delay) (9)二、信号完整性分析和仿真流程 (11)2.1 SpecctraQuest interconnect Designer的性能简介 (11)2.2 SpectraQuest(PCB SI)仿真流程 (11)三、仿真前的准备 (13)3.1 IBIS模型 (13)3.1.1 IBIS模型介绍 (13)3.1.2 IBIS模型的获取方法 (14)3.1.2 验证IBIS模型 (14)3.2 预布局 (20)3.3 电路板设置要求(Setup Advisor) (23)3.3.1 叠层设置(Edit Cross-section) (24)3.3.2 设置DC电压值(Identify DC Nets) (25)3.3.3 器件设置(Device Setup) (26)3.3.4 SI模型分配(SI Model Assignment) (27)四、约束驱动布局 (35)4.1 预布局提取和仿真 (35)4.1.2 预布局拓扑提取分析 (37)4.1.3 执行反射仿真 (40)4.1.4 反射仿真测量 (42)4.2 设置和添加约束 (43)4.2.1 运行参数扫描 (43)4.2.2 为拓扑添加约束 (47)4.2.3 分析拓扑约束 (52)五、布线后仿真 (53)5.1 后仿真 (53)5.2反射仿真 (53)5.2.1 设置参数 (53)5.2.2指定要仿真的网络 (53)5.2.3 执行仿真 (55)5.3综合仿真 (57)5.4 串扰仿真 (57)5.5 Simultaneous Switching Noisie仿真 (57)5.6 多析仿真 (57)六、参考文献 (57)说明:本手册中的实例均采用Cadence SPB 16_2操作实现。
SI五款信号完整性仿真工具介绍(一)Ansoft公司的仿真工具现在的高速电路设计已经达到GHz的水平,高速PCB设计要求从三维设计理论出发对过孔、封装和布线进行综合设计来解决信号完整性问题。
高速PCB设计要求中国工程师必须具备电磁场的理论基础,必须懂得利用麦克斯韦尔方程来分析PCB设计过程中遇到的电磁场问题。
目前,Ansoft公司的仿真工具能够从三维场求解的角度出发,对PCB设计的信号完整性问题进行动态仿真。
Ansoft的信号完整性工具采用一个仿真可解决全部设计问题:SIwave是一种创新的工具,它尤其适于解决现在高速PCB和复杂IC封装中普遍存在的电源输送和信号完整性问题。
该工具采用基于混合、全波及有限元技术的新颖方法,它允许工程师们特性化同步开关噪声、电源散射和地散射、谐振、反射以及引线条和电源/地平面之间的耦合。
该工具采用一个仿真方案解决整个设计问题,缩短了设计时间。
它可分析复杂的线路设计,该设计由多重、任意形状的电源和接地层,以及任何数量的过孔和信号引线条构成。
仿真结果采用先进的3D图形方式显示,它还可产生等效电路模型,使商业用户能够长期采用全波技术,而不必一定使用专有仿真器。
(二)SPECCTRAQuestCadence的工具采用Sun的电源层分析模块:Cadence Design Systems的SpecctraQuest PCB信号完整性套件中的电源完整性模块据称能让工程师在高速PCB设计中更好地控制电源层分析和共模EMI。
该产品是由一份与Sun Microsystems公司签署的开发协议而来的,Sun最初研制该项技术是为了解决母板上的电源问题。
有了这种新模块,用户就可根据系统要求来算出电源层的目标阻抗;然后基于板上的器件考虑去耦合要求,Shah表示,向导程序能帮助用户确定其设计所要求的去耦合电容的数目和类型;选择一组去耦合电容并放置在板上之后,用户就可运行一个仿真程序,通过分析结果来发现问题所在。
基于Cadence Allegro SI 16.3的信号完整性仿真信号完整性是指信号在信号线上的质量。
信号具有良好的信号完整性是指当在需要的时候,具有所必需达到的电压电平数值。
差的信号完整性不是由某一因素导致的,而是由板级设计中多种因素共同引起的。
特别是在高速电路中,所使用的芯片的切换速度过快、端接元件布设不合理、电路的互联不合理等都会引起信号的完整性问题。
具体主要包括串扰、反射、过冲与下冲、振荡、信号延迟等。
信号完整性问题由多种因素引起,归结起来有反射、串扰、过冲和下冲、振铃、信号延迟等,其中反射和串扰是引发信号完整性问题的两大主要因素。
反射和我们所熟悉的光经过不连续的介质时都会有部分能量反射回来一样,就是信号在传输线上的回波现象。
此时信号功率没有全部传输到负载处,有一部分被反射回来了。
在高速的PCB中导线必须等效为传输线,按照传输线理论,如果源端与负载端具有相同的阻抗,反射就不会发生了。
如果二者阻抗不匹配就会引起反射,负载会将一部分电压反射回源端。
根据负载阻抗和源阻抗的关系大小不同,反射电压可能为正,也可能为负。
如果反射信号很强,叠加在原信号上,很可能改变逻辑状态,导致接收数据错误。
如果在时钟信号上可能引起时钟沿不单调,进而引起误触发。
一般布线的几何形状、不正确的线端接、经过连接器的传输及电源平面的不连续等因素均会导致此类反射。
另外常有一个输出多个接收,这时不同的布线策略产生的反射对每个接收端的影响也不相同,所以布线策略也是影响反射的一个不可忽视的因素。
串扰是相邻两条信号线之间的不必要的耦合,信号线之间的互感和互容引起线上的噪声。
因此也就把它分为感性串扰和容性串扰,分别引发耦合电流和耦合电压。
当信号的边沿速率低于1ns时,串扰问题就应该考虑了。
如果信号线上有交变的信号电流通过时,会产生交变的磁场,处于磁场中的相邻的信号线会感应出信号电压。
一般PCB板层的参数、信号线间距、驱动端和接收端的电气特性及信号线的端接方式对串扰都有一定的影响。
allegro_PCB_SI仿真IntroductionAllegro PCB SI仿真可以帮助人们在设计PCB 电路板时进行信号完整性仿真,以验证电路设计的有效性和稳定性。
这个工具是Cadence 公司的Allegro 系列产品中的一个,它可以让我们对PCB 电路板进行模拟分析,发现布线中的信号完整性问题,并接下来进行优化,从而得到更好的结果。
下面我们来详细讲解一下Allegro PCB SI仿真的使用。
功能与特点Allegro PCB SI仿真工具主要有以下功能和特点:1. 电路适配性:根据实际电路接口,自动生成仿真模型,无须手工绘制,可节省大量时间和精力。
2. 建模精度:采用仿真模型进行仿真分析,模型的建立过程和仿真数据的处理过程均达到高精度的要求。
3. 可视化展示:提供直观、易于理解的仿真结果图像,用户可对仿真结果进行直观的分析和判断。
4. 高效优化:在分析结果的基础上,提供了一系列可行性方案,以便优化布局和电路设计,提高设计质量和效率。
5. 多维度仿真:支持多种仿真方式,可以分析不同工作频率、物理层、仿真类型等多种因素的影响。
6. 构建模块化:支持多种最新技术,如DDR、PCIe等,可实现模块化的仿真分析。
使用步骤Allegro PCB SI仿真的使用步骤如下:1. 在Allegro 设计工具中添加SI 仿真属性:在Allegro 中进行PCB 设计工作的人员首先需要添加SI 仿真属性。
这时需要使用Allegro constraint manager 工具,在其中添加SI 属性和控制器约束等信息。
Allegro SI 分析扫描过程会依据这些信息实现电路仿真。
2. 运行Allegro SI 分析:电路设计人员在完成电路布线后,需要使用Allegro SI 分析来分析信号完整性情况,以发现和解决可能存在的电路问题。
执行步骤为:首先选择si_analysis 工具,在其菜单中选择指定布线仿真设置;然后在仿真window 中选择仿真起点、仿真长度等参数,然后点击Run。
基于Cadence_Allegro的高速PCB设计信号完整性分析与仿真覃婕;阎波;林水生【摘要】信号完整性问题已成为当今高速PCB设计的一大挑战,传统的设计方法无法实现较高的一次设计成功率,急需基于EDA软件进行SI仿真辅助设计的方法以解决此问题.在此主要研究了常见反射、串扰、时序等信号完整性问题的基础理论及解决方法,并基于IBIS模型,采用Cadence_Allegro软件的Specctraquest和Sigxp组件工具对设计的高速14位ADC/DAC应用系统实例进行了SI仿真与分析,验证了常见SI问题解决方法的正确性.%Signal Integrity (SI) problem has became one of the greatest challenge in high-speed PCB design area, the traditional design method is hard to realize high once-through design success, SI simulation aided design method based on EDA software is demanded to solve this problem. The basic theory and solutions of some normal SI problems such as reflection,crosstalk and timing are researched. SI analysis and simulation of a high-speed 14bits ADC/DAC application system based on Specctraquest and Sigxp in Cadence_Allegrospb 16. 0 are designed, the validity of the solutions to the SI problems is verified.【期刊名称】《现代电子技术》【年(卷),期】2011(034)010【总页数】4页(P169-171,178)【关键词】高速PCB设计;信号完整性;反射;串扰;时序;SI分析及仿真【作者】覃婕;阎波;林水生【作者单位】电子科技大学通信与信息工程学院,四川成都,611731;电子科技大学通信与信息工程学院,四川成都,611731;电子科技大学通信与信息工程学院,四川成都,611731【正文语种】中文【中图分类】TN919-340 引言随着半导体工艺的迅猛发展以及人们对信息高速化、宽带化的需求,高速PCB 设计已经成为电子产品研制的一个重要环节,信号完整性( Signal Integrity,SI)问题(包括反射、串扰、定时等)也逐渐发展成为高速PCB设计中难以避免的难题,若不能较好地解决信号完整性设计问题,将有可能造成高速PCB设计的致命错误,浪费财力物力,延长开发周期,降低生产效率。
Cadence PCB SI仿真流程——孙海峰高速高密度多层PCB板的SI/EMC(信号完整性/电磁兼容)问题长久以来一直是设计者所面对的最大挑战。
然而,随着主流的MCU、DSP和处理器大多工作在100MHz以上(有些甚至工作于GHz级以上),以及越来越多的高速I/O埠和RF前端也都工作在GHz级以上,再加上应用系统的小型化趋势导致的PCB 空间缩小问题,使得目前的高速高密度PCB板设计已经变得越来越普遍。
许多产业分析师指出,在进入21世纪以后,80%以上的多层PCB设计都将会针对高速电路。
高速讯号会导致PCB板上的长互连走线产生传输线效应,它使得PCB设计者必须考虑传输线的延迟和阻抗搭配问题,因为接收端和驱动端的阻抗不搭配都会在传输在线产生反射讯号,而严重影响到讯号的完整性。
另一方面,高密度PCB板上的高速讯号或频率走线则会对间距越来越小的相邻走线产生很难准确量化的串扰与EMC问题。
SI和EMC的问题将会导致PCB设计过程的反复,而使得产品的开发周期一再延误。
一般来说,高速高密度PCB需要复杂的阻抗受控布线策略才能确保电路正常工作。
随着新型组件的电压越来越低、PCB板密度越来越大、边缘转换速率越来越快,以及开发周期越来越短,SI/EMC挑战便日趋严峻。
为了达到这个挑战的要求,目前的PCB设计者必须采用新的方法来确保其PCB设计的可行性与可制造性。
过去的传统设计规则已经无法满足今日的时序和讯号完整性要求,而必须采取包含仿真功能的新款工具才足以确保设计成功。
Cadence的Allegro PCB SI提供了一种弹性化且整合的信号完整性问题解决方案,它是一种完整的SI/PI(功率完整性)/EMI问题的协同解决方案,适用于高速PCB设计周期的每个阶段,并解决与电气性能相关的问题。
Allegro PCB SI信号完整性分析的操作步骤,就是接下来将要介绍的。
一、Allegro PCB SI分析前准备:1、准备需要分析的PCB,如下图;2、SI分析前的相关设置,执行T ools/Setup Advisor,进入Database Setup Advisor 对话框,进行SI分析前的设置;(1)设置PCB叠层的材料、阻抗等,点击Edit Cross section,进入叠层阻抗等设置界面。
电路板级的信号完整性问题和仿真分析摘要:今天随着电子技术的发展,电路板设计中的信号完整性问题已成为PCB设计者必须面对的问题。
信号完整性指的是什么?信号在电路中传输的质量。
由于电子产品向高速、微型化的发展,导致集成电路开关速度的加快,产生了信号完整性问题。
常见的问题有反弹、振铃、地弹和串扰等等。
这些问题将会对电路板设计产生怎样的影响?通过理论分析探讨,找到解决它们的一些途径。
传统的PCB设计是在样机中去测试问题,极大的降低了产品设计的效率。
使用EDA工具分析,可以将问题在计算机中进行暴露处理,降低问题的出现,提高产品的设计效率。
这里以Altium Designer 6.0工具为例,介绍分析解决部分信号完整性问题的方法。
关键词:信号完整性 Altium Designer 6.0 仿真分析[中图分类号] O59 [文献标识码] A [文章编号] 1000-7326(2012)04-0125-0320世纪初叶,科学家先后发明了真空二极管和三极管,它代表人类进入了电子技术时代。
随后半导体晶体管和集成电路的出现,将电子技术推向了一个新的时期。
特别是IC芯片的发展,使电子产品越来越趋向于小型化、高速化、数字化。
但同时却给电子设计带来一个新的问题:体积减小导致电路的布局布线密度变大,而同时信号的频率也在迅速提高,如何处理越来越快的信号。
这就是我们硬件设计中遇到的最核心问题:信号完整性。
为什么我们以前在学校学习和电子制作中没有遇到呢?那是因为在模拟电路中,采用的是单频或窄频带信号,我们关心的只是电路的信噪比,没有去考虑信号波形和波形畸变;而在数字电路中,电平跳变的信号上升时间比较长,一般为几个纳秒。
元件间的布线不会影响电路的信号,所以都没有去考虑信号完整性问题。
但是今天,随着GHz时代的到来,很多IC的开关速度都在皮秒级别,同时由于对低功耗的追求,芯片内核电压越来越低,电子系统所能容忍的噪声余量越来越小,那么电路设计中的信号完整性问题就突现出来了。
信号完整性分析SI仿真DemoAltium Designer的SI仿真功能,可以在原理图阶段假定PCB环境进行布线前预仿真,帮助用户进行设计空间探索,也可以在PCB布线后按照实际设计环境进行仿真验证,并辅以虚拟端接,参数扫描等功能,帮助用户考察和优化设计,增强设计信心。
1.在Windows下打开SI_demo子目录,双击打开演示案例项目SI_demo.prjpcb,当前项目树中只有一页原理图SI_demo.schdoc,双击SI_demo.schdoc打开原理图。
观察到图中有U2和U3两个IC器件。
2.为器件指定IBIS模型(如果元件库中该器件已有正确的IBIS模型,则可跳过步骤2)通过双击器件U2,弹出以下窗口:点击Add右边的下拉箭头,选择Signal Integrity,为器件U2指定SI仿真用的IBIS模型。
在弹出的SI模型选择窗口中点击Import IBIS,选择U2对应的IBIS模型文件导入,本例中U2的IBIS模型文件为SI_demo文件夹中的文件5107_lmi.ibs,后面各窗口一直点击OK,直到回到原理图界面,U2的模型设定完成。
双击器件U3,按照同样的步骤为U3指定IBIS模型,其对应的IBIS模型文件为:edd2516akta01.ibs3.为关注的网络设定规则通过点击主菜单下的Place->Directives->Blanket,放置一个方框,将所关注的网络名称框住(本例中已经框住了LMID00-LMID15共16位数据总线)。
然后同样通过Place->Directives->PCB Layout, 放置一个PCB Rule规则符号,置于方框的边界上。
双击PCB Rule符号,编辑规则的属性,在以下窗口中依次点击红色矩形标记的按钮或填入相应的值:经过以上步骤,为LMID00-LMID15这16根信号线添加了一条规则:上升沿overshoot小于300mV(本例中已经预先设置,用户只需按步骤观察确认)。
第10章信号完整性分析37710.4.1 在信号完整性分析之前设定元件的SI模型在Altium Designer 15系统中,提供了若干种可以设定SI模型的元件类型,如IC(集成电路)、Resistor(电阻类元件)、Capacitor(电容类元件)、Connector(连接器类元件)、Diode(二极管类元件)以及BJT(双极性三极管类元件)等,对于不同类型的元件,其设定方法是不同的。
单个的无源元件,如电阻、电容等,设定比较简单。
1.无源元件的SI模型设定(1)在电路原理图中,双击所放置的某一无源元件,打开Array相应的元件属性对话框。
例如,这里打开前面章节的“单片机流水灯.SchDoc”原理图文件,双击一个电阻。
(2)单击元件属性对话框下方的“Add...”按钮,在系统弹出的模型添加对话框中,选择“Signal Integrity(信号完整性)”,如图10.4.1所示。
图10.4.1 模型添加对话框(3)单击“确定”按钮后,系统弹出如图10.4.2所示的“SignalIntegrity Model(信号完整性模型)”设定对话框。
在该设定框中,只需要在“Type(类型)”文本框中选中相应的类型,然后在下面的“Value(值)”文本框中输入适当的数值即可。
若在“Model(模型)”栏的类型中,元件的“Signal Integrity(信号完整性)”模型已经存在,则双击后,系统同样弹出如图10.4.2所示的对话框。
(4)单击“OK”按钮,即可完成该无源器件的SI模型设定。
Array图10.4.2 “Signal Integrity Model”设定对话框2.新建引脚模型对于IC类的元件,其SI模型的设定同样是在信号完整性模型设定框中完成的。
一般说来,只需要设定其技术特性就够了,如CMOS,TTL等。
但是在一些特殊的应用中,为了更为准确地描述引脚的电气特性,还需要进行一些额外的设定。
在信号完整性模型设定框的“Pin Models”部分,列出了元件的所有引脚,在这些引脚中,电源性质的引脚是不可编辑的。
在高速数字系统中,由于脉冲上升/下降时间通常在10到几百p秒,当受到诸如内连、传输时延和电源噪声等因素的影响,从而造成脉冲信号失真的现象;在自然界中,存在着各种各样频率的微波和电磁干扰源,可能由于很小的差异导致高速系统设计的失败;在电子产品向高密和高速电路设计方向发展的今天,解决一系列信号完整性的问题,成为当前每一个电子设计者所必须面对的问题。
业界通常会采用在PCB制板前期,通过信号完整性分析工具尽可能将设计风险降到最低,从而也大大促进了EDA设计工具的发展……信号完整性(Signal Integrity,简称SI)问题是指高速数字电路中,脉冲形状畸变而引发的信号失真问题,通常由传输线阻抗不匹配产生的问题。
而影响阻抗匹配的因素包括信号源的架构、输出阻抗(output impedance)、走线的特性阻抗、负载端的特性、走线的拓朴(topology)架构等。
解决的方式可以采用端接(termination)与调整走线拓朴的策略。
信号完整性问题通常不是由某个单一因素导致的,而是板级设计中多种因素共同作用的结果。
信号完整性问题主要表现形式包括信号反射、信号振铃、地弹、串扰等;1,Altium Designer信号完整性分析(机理、模型、功能)在Altium Designer设计环境下,您既可以在原理图又可以在PCB编辑器内实现信号完整性分析,并且能以波形的方式在图形界面下给出反射和串扰的分析结果。
Altium Designer的信号完整性分析采用IC器件的IBIS模型,通过对版图内信号线路的阻抗计算,得到信号响应和失真等仿真数据来检查设计信号的可靠性。
Altium Designer的信号完整性分析工具可以支持包括差分对信号在内的高速电路信号完整性分析功能。
Altium Designer仿真参数通过一个简单直观的对话框进行配置,通过使用集成的波形观察仪,实现图形显示仿真结果,而且波形观察仪可以同时显示多个仿真数据图像。
信号完整性是指信号在信号线上的质量。
信号具有良好的信号完整性是指当在需要的时候,具有所必需达到的电压电平数值。
差的信号完整性不是由某一因素导致的,而是由板级设计中多种因素共同引起的。
特别是在高速电路中,所使用的芯片的切换速度过快、端接元件布设不合理、电路的互联不合理等都会引起信号的完整性问题。
具体主要包括串扰、反射、过冲与下冲、振荡、信号延迟等。
信号完整性问题由多种因素引起,归结起来有反射、串扰、过冲和下冲、振铃、信号延迟等,其中反射和串扰是引发信号完整性问题的两大主要因素。
反射和我们所熟悉的光经过不连续的介质时都会有部分能量反射回来一样,就是信号在传输线上的回波现象。
此时信号功率没有全部传输到负载处,有一部分被反射回来了。
在高速的PCB中导线必须等效为传输线,按照传输线理论,如果源端与负载端具有相同的阻抗,反射就不会发生了。
如果二者阻抗不匹配就会引起反射,负载会将一部分电压反射回源端。
根据负载阻抗和源阻抗的关系大小不同,反射电压可能为正,也可能为负。
如果反射信号很强,叠加在原信号上,很可能改变逻辑状态,导致接收数据错误。
如果在时钟信号上可能引起时钟沿不单调,进而引起误触发。
一般布线的几何形状、不正确的线端接、经过连接器的传输及电源平面的不连续等因素均会导致此类反射。
另外常有一个输出多个接收,这时不同的布线策略产生的反射对每个接收端的影响也不相同,所以布线策略也是影响反射的一个不可忽视的因素。
串扰是相邻两条信号线之间的不必要的耦合,信号线之间的互感和互容引起线上的噪声。
因此也就把它分为感性串扰和容性串扰,分别引发耦合电流和耦合电压。
当信号的边沿速率低于1ns时,串扰问题就应该考虑了。
如果信号线上有交变的信号电流通过时,会产生交变的磁场,处于磁场中的相邻的信号线会感应出信号电压。
一般PCB板层的参数、信号线间距、驱动端和接收端的电气特性及信号线的端接方式对串扰都有一定的影响。
在Cadence 的信号仿真工具中可以同时对6条耦合信号线进行串扰后仿真,可以设置的扫描参数有:PCB的介电常数,介质的厚度,沉铜厚度,信号线长度和宽度,信号线的间距.仿真时还必须指定一个受侵害的信号线,也就是考察另外的信号线对本条线路的干扰情况,激励设置为常高或是常低,这样就可以测到其他信号线对本条信号线的感应电压的总和,从而可以得到满足要求的最小间距和最大并行长度。
DDR信号完整性仿真频率的确定——孙海峰仿真过程中,我们必须了解如何来确定各类总线的仿真激励源,即Memory Contoller-DIMM之间的各类总线信号工作中的实际频率及其时序特性等,或者认为是DDR-DIMM工作中的外部输入激励信号——因为仿真过程中,必须设置DIMM的模拟激励源,即CPU驱动端的信号,才能仿真DIMM接收端信号SI/窜扰等状况。
实际工作中,DDR各类信号工作频率特征如下图所示:在此基础上,我们如何确定DDR最佳的仿真激励源,如何确定最佳SI仿真频率呢?接下来,将做出详细的阐述。
1、确定DDR核心频率DDR核心频率,即DDR上DRAM颗粒的工作频率,它与DDR数据传输位数有关,由于:DDR等效数据传输频率=DRAM核心频率×DDR读取位数,那么我们即可了解DRAM核心频率=数据等效传输频率/读取位数。
对于不同类型的DDR,数据读取位数为:DDR1(DDR SDRAM):2 bit pre-fetch,同时读取(预取)2n的数据——数据读取位数2;DDR2:4 bit pre-fetch,同时读取(预取)4n的数据——数据读取位数4;DDR3:8 bit pre-fetch,同时读取(预取)8n的数据——数据读取位数8;结论:我们可以从数据传输频率,结合DDR类型,计算出核心频率。
2、确定DDR Controller(CPU)-DDR差分时钟仿真激励源——CK+/CK-差分时钟总线根据DDR时序图,我们可以知道,无论DDR1,DDR2,还是DDR3,DDRx 数据的最大实际传输频率均等于时钟频率,则DDRx最大数据等效工作频率(常说的DDRx能跑多少频率为等效值)为实际频率的2倍(周期为时钟周期1/2),如下图所示:结论:DDRx时钟总线仿真频率等于等效数据传输频率的1/2。
3、确定DDR Controller(CPU)-DDR地址/命令信号线仿真激励源——A*地址总线/BA*Bank地址选择信号/CAS(Column)列命令信号/RAS(Row)行命令信号/WE(Write)写命令使能端对于地址/命令信号仿真激励源的确定,即实际工作频率及其时序特性的确定,我们首先必须认识1-T/2-T这两种DDR常用时序工作模式。
在高速数字系统中,由于脉冲上升/下降时间通常在10到几百p秒,当受到诸如内连、传输时延和电源噪声等因素的影响,从而造成脉冲信号失真的现象;在自然界中,存在着各种各样频率的微波和电磁干扰源,可能由于很小的差异导致高速系统设计的失败;在电子产品向高密和高速电路设计方向发展的今天,解决一系列信号完整性的问题,成为当前每一个电子设计者所必须面对的问题。
业界通常会采用在PCB制板前期,通过信号完整性分析工具尽可能将设计风险降到最低,从而也大大促进了EDA设计工具的发展……信号完整性(Signal Integrity,简称SI)问题是指高速数字电路中,脉冲形状畸变而引发的信号失真问题,通常由传输线阻抗不匹配产生的问题。
而影响阻抗匹配的因素包括信号源的架构、输出阻抗(output impedance)、走线的特性阻抗、负载端的特性、走线的拓朴(topology)架构等。
解决的方式可以采用端接(termination)与调整走线拓朴的策略。
信号完整性问题通常不是由某个单一因素导致的,而是板级设计中多种因素共同作用的结果。
信号完整性问题主要表现形式包括信号反射、信号振铃、地弹、串扰等;1,Altium Designer信号完整性分析(机理、模型、功能)在Altium Designer设计环境下,您既可以在原理图又可以在PCB编辑器内实现信号完整性分析,并且能以波形的方式在图形界面下给出反射和串扰的分析结果。
Altium Designer的信号完整性分析采用IC器件的IBIS模型,通过对版图内信号线路的阻抗计算,得到信号响应和失真等仿真数据来检查设计信号的可靠性。
Altium Designer的信号完整性分析工具可以支持包括差分对信号在内的高速电路信号完整性分析功能。
Altium Designer仿真参数通过一个简单直观的对话框进行配置,通过使用集成的波形观察仪,实现图形显示仿真结果,而且波形观察仪可以同时显示多个仿真数据图像。
信号完整性分析SI仿真Demo
Altium Designer的SI仿真功能,可以在原理图阶段假定PCB环境进行布线前预仿真,帮助用户进行设计空间探索,也可以在PCB布线后按照实际设计环境进行仿真验证,并辅以虚拟端接,参数扫描等功能,帮助用户考察和优化设计,增强设计信心。
1.在Windows下打开SI_demo子目录,双击打开演示案例项目
SI_demo.prjpcb,当前项目树中只有一页原理图SI_demo.schdoc,双击
SI_demo.schdoc打开原理图。
观察到图中有U2和U3两个IC器件。
2.为器件指定IBIS模型(如果元件库中该器件已有正确的IBIS模型,则可跳
过步骤2)
通过双击器件U2,弹出以下窗口:
点击Add右边的下拉箭头,选择Signal Integrity,为器件U2指定SI仿真用的IBIS模型。
在弹出的SI模型选择窗口中点击
Import IBIS,选择U2对应的IBIS模
型文件导入,本例中U2的IBIS模型
文件为SI_demo文件夹中的文件
5107_lmi.ibs,后面各窗口一直点击
OK,直到回到原理图界面,U2的模
型设定完成。
双击器件U3,按照同样的步骤为U3
指定IBIS模型,其对应的IBIS模型
文件为:edd2516akta01.ibs
3.为关注的网络设定规则
通过点击主菜单下的Place->Directives->Blanket,放置一个方框,将所关注的网络名称框住(本例中已经框住了LMID00-LMID15共16位数据总线)。
然后同样通过Place->Directives->PCB Layout, 放置一个PCB Rule规则符号,置于方框的边界上。
双击PCB Rule符号,编辑规则的属性,在以下窗口中依次点击红色矩形标记的按钮或填入相应的值:
经过以上步骤,为LMID00-LMID15这16根信号线添加了一条规则:上升沿overshoot小于300mV(本例中已经预先设置,用户只需按步骤观察确认)。
按照同样的方法,用户也可以添加类似的规则,对上升沿undershoot,下降沿overshoot,下降沿undershoot等进行约束。
4.进入预仿真
点击主菜单Tools->Signal Integrity,进入SI仿真。
系统会根据预先设定的
PCB条件对所有存在IBIS模型的信号网络进行快速扫描,将结果显示在弹出的窗口中:
通过点击左下角的Menu->Setup Options可以修改预先设定的PCB条件。
此处传输线特性阻抗Track Impedance假定为50欧姆,线长Track Length假定为1000mil:
还需要对Supply Nets和Stimulus进行如下设定(本例已经预设):
设定完成后点击Analyze Design,即可按照新的设定条件仿真。
在快速扫描仿真结果显示窗口中,观察所有信号是否满足步骤3中设定的PCB Rule规则(Status为Passed或Failed)。
5.如需详细观察某信号(如LMID03)的波形,可以选中该信号然后点击右侧
的箭头,将该信号置入右侧小窗口,然后点击下方Reflection Waveforms,观察信号的实际波形:
可以看到,在当前情况下,波形十分理想,满足设计要求。
此时,用户往往想要知道,在实际PCB设计中,如果条件与预先设定的情况有偏差,比如线长超过1000mil,是否仍然能达到这样的效果,或者说线长增加到何种程度,将会使信号恶化到不能满足要求,这就是设计空间的探索。
6.设计空间探索
在步骤4中,通过改变预设的Track Length,可以观察不同线长情况下,信号的变化。
将线长改为10000mil,得到以下结果:
线长改为5000mil:
线长改为3000mil:
由此可以推断,3000mil以内的线长是安全的,因此可以在PCB设计时通过定义PCB规则来约束LMID00-LMID15这组总线的长度不超过3000mil.
7.PCB布线后的仿真验证
PCB布线完成后,Altium Designer将会根据实际PCB中环境进行SI仿真,以验证实际的PCB设计是否满足要求。
在本例中,右键点击project文件SI_demo.prjpcb,选择Add Existing to Project,将SI_demo目录中的SI_demo.pcbdoc文件加入项目中(即:PCB 布线完成)。
双击打开SI_demo.pcbdoc文件,首先对PCB的叠层设置进行确认,点击主菜单Design->Layer Stack Manager:
通过双击每一层的名称,可以在弹出的窗口中修改该层的厚度与介电常数(对于介质层),Altium Designer会自动根据输入的叠层情况计算出PCB传输线的阻抗用于SI仿真,而此时的线长也由Altium Designer自动根据PCB 布线进行提取。
(本例中叠层已预设,用户只需观察确认)
仿照步骤4中的操作,点击Tools->Signal Integrity,进入SI快速扫描,得到结果如下:
其中LMID15显示Failed,其上升沿Overshoot达到350mV。
仿照步骤5,单独观察LMID15的波形:
考虑两个方法对LMID15进行优化:一是缩短线长,在PCB中观察其走线过长,可以通过修改走线进行优化(此处不再赘述);二是通过加入端接来减小Overshoot.
8.虚拟端接优化
Altium Designer提供了虚拟端接的功能,在不修改设计文件的情况下,模拟端接进行仿真,寻找到最佳的端接优化方案以后再应用到实际设计中。
针对步骤7中的LMID15,选择串联端接,输入串联电阻值33欧,点击
Reflection Waveform:
观察端接前后的波形比对,其中绿色波形为Receiver端优化后的波形,确定此时的Overshoot已经远远低于设定阈值,优化后的设计满足要求:
9.参数扫描
步骤8中如果对端接电阻的值无法确定,可以采用参数扫描的方式进行观察,下图中勾选Perform Sweep,设定扫描步数为10,设定扫描的最小值和最大值分别为10欧和60欧:
Altium Designer将会从10欧到60欧等间距选取10个值进行扫描,得到一组曲线:
可以分别点击单个曲线右侧的名称进行观察,选择最佳方案:
注:本DEMO仅为帮助用户掌握Altium Designer的SI仿真功能用,演示软件功能和操作步骤为主,其中具体的设计参数值或与实际情况有偏差,仅供参考。