高速PCB设计指南之三
第一篇 改进电路设计规程提高可测试性
随着微型化程度不断提高,元件和布线技术也取得巨大发展,例如BGA外壳封装的高集成度的微型IC,以及导体之间的绝缘间距缩小到0.5mm,这些仅是其中的两个例子。电子元件的布线设计方式,对以后制作流程中的测试能否很好进行,影响越来越大。下面介绍几种重要规则及实用提示。
通过遵守一定的规程(DFT-Design for Testability,可测试的设计),可以大大减少生产测试的准备和实施费用。这些规程已经过多年发展,当然,若采用新的生产技术和元件技术,它们也要相应的扩展和适应。随着电子产品结构尺寸越来越小,目前出现了两个特别引人注目的问题:一是可接触的电路节点越来越少;二是像在线测试(In-Circuit-Test)这些方法的应用受到限制。为了解决这些问题,可以在电路布局上采取相应的措施,采用新的测试方法和采用创新性适配器解决方案。第二个问题的解决还涉及到使原来作为独立工序使用的测试系统承担附加任务。这些任务包括通过测试系统对存储器组件进行编程或者实行集成化的元器件自测试(Built-in Self Test,BIST,内建的自测试)。将这些步骤转移到测试系统中去,总起来看,还是创造了更多的附加价值。为了顺利地实施这些措施,在产品科研开发阶段,就必须有相应的考虑。
1、什么是可测试性
可测试性的意义可理解为:测试工程师可以用尽可能简单的方法来检测某种元件的特性,看它能否满足预期的功能。简单地讲就是:
l 检测产品是否符合技术规范的方法简单化到什么程度?
l 编制测试程序能快到什么程度?
l 发现产品故障全面化到什么程度?
l 接入测试点的方法简单化到什么程度?
为了达到良好的可测试必须考虑机械方面和电气方面的设计规程。当然,要达到最佳的可测试性,需要付出一定代价,但对整个工艺流程来说,它具有一系列的好处,因此是产品能否成功生产的重要前提。
2、为什么要发展测试友好技术
过去,若某一产品在上一测试点不能测试,那么这个问题就被简单地推移到直一个测试点上去。如果产品缺陷在生产测试中不能发现,则此缺陷的识别与诊断也会简单地被推移到功能和系统测试中去。
相反地,今天人们试图尽可能提前发现缺陷,它的好处不仅仅是成本低,更重要的是今天的产品非常复杂,某些制造缺陷在功能测试中可能根本检查不出来。例如某些要预先装软件或编程的元件,就存在这样的问题。(如快闪存储器或ISPs:In-System Programmable Devices系统内可编程器件)。这些元件的编程必须在研制开发阶段就计划好,而测试系统也必须掌握这种编程。
测试友好的电路设计要费一些钱,然而,测试困难的电路设计费的钱会更多。测试本身是有成本的,测试成本随着测试级数的增加而加大;从在线测试到功能测试以及系统测试,测试费用越来越大。如果跳过其中一项测试,所耗费用甚至会更大。一般的规则是每增加一级测试费用的增加系数是10倍。通过测试友好的电路设计,可以及早发现故障,从而使测试友好的电路设计所费的钱迅速地得到补偿。
3、文件资料怎样影响可测试性
只有充分利用元件开发中完整的数据资料,才有可能编制出能全面发现故障的测试程序。在许多情况下,开发部门和测试部门之间的密切合作是必要的。文件资料对测试工程师了解元件功能,制定测试战略,有无可争议的影响。
为了绕开缺乏文件和不甚了解元件功能所产生的问题,测试系统制造商可以依靠软件工具,这些工具按照随机原则自动产生测试模式,或者依靠非矢量相比,非矢量方法只能算作一种权宜的解决办法。
测试前的完整的文件资料包括零件表,电路设计图数据(主要是CAD数据)以及有关务元件功能的详细资料(如数据表)。只有掌握了所有信息,才可能编制测试矢量,定义元件失效样式或进行一定的预调整。
某些机械方面的数据也是重要的,例如那些为了检查组件的焊接是否良好及定位是否所需要的数据。最后,对于可编程的元件,如快闪存储器,PLD、FPGA等,如果不是在最后安装时才编程,是在测试系统上就应编好程序的话,也必须知道各自的编程数据。快闪元件的编程数据应完整无缺。如快闪芯片含16Mbit的数据,就应该可以用到16Mbit,这样可以防止误解和避免地址冲突。例如,如果用一个4Mbit存储器向一个元件仅仅提供300Kbit数据,就可能出现这种情况。当然数据应准备成流行的标准格式,如Intel公司的Hex或Motorola公司的S记录结构等。大多数测试系统,只要能够对快闪或ISP元件进行编程,是可以解读这些格式的。前面所提到的许多信息,其中许多也是元件制造所必须的。当然,在可制造性和可测试性之间应明确区别,因为这是完全不同的概念,从而构成不同的前提。
4、良好的可测试性的机械接触条件
如果不考虑机械方面的基本规则,即使在电气方面具有非常良好的可测试性的电路,也可能难以测试。许多因素会限制电气的可测试性。如果测试点不够或太小,探针床适配器就难以接触到电路的每个节点。如果测试点位置误差和尺寸误差太大,就会产生测试重复性不好的问题。在使用探针床配器时,应留意一系列有关套牢孔与测试点的大小和定位的建议。
5、最佳可测试性的电气前提条件
电气前提条件对良好的可测试性,和机械接触条件一样重要,两者缺一不可。一个门电路不能进行测试,原因可能是无法通过测试点接触到启动输入端,也可能是启动输入端处在封装壳内,外部无法接触,在原则上这两情况同样都是不好的,都使测试无法进行。在设计电路时应该注意,凡是要用在线测试法检测的元件,都应该具备某种机理,使各个元件能够在电气上绝缘起来。这种机理可以借助于禁止输入端来实现,它可以将元件的输出端控制在静态的高欧姆状态。
虽然几乎所有的测试系统都能够逆驱动(Backdriving)方式将某一节点的状态带到任意状态,但是所涉及的节点最好还是要备有禁止输入端,首先将此节点带到高欧姆状态,然后再“平缓地”加上相应的电平。
同样,节拍发生器总是通过启动引线,门电路或插接电桥从振荡器后面直接断开。启动输入端决不可直接与电路相连,而是通过100欧姆的电阻与电路连接。每个元件应有自己的启动,复位或控制引线脚。必须避免许多元件的启动输入端共用一个电阻与电路相连。这条规则对于ASIC元件也适用,这些元件也应有一个引线脚,通过它,可将输出端带到高欧姆状态。如果元件在接通工作电压时可实行复位,这对于由测试器来引发复位也是非常有帮助的。在这种情况下,元件在测试前就可以简单地置于规定的状态。
不用的元件引线脚同样也应该是可接触的,因为在这些地方未发现的短路也可能造成元件故障。此外,不用的门电路往往在以后会被利用于设计改进,它们可能会改接到电路中来。所以同样重要的是,它们从一开始就应经过测试,以保证其工件可靠。
6、改进可测试性
使用探针床适配器时,改进可测试性的建议
套牢孔
l 呈对角线配置
l 定位精度为±0.05mm (±2mil)
l 直径精度为±0.076/-0mm (+3/-0mil)
l 相对于测试点的定位精度为±0.05mm (±2mil)
l 离开元件边缘距离至少为3mm
l 不可穿通接触
测试点
l 尽可能为正方形
l 测试点直径至少为0.88mm (35mil)
l 测试点大小精度为±0.076mm (±3mil)
l 测试点之间间隔精度为±0.076mm (±3mil)
l 测试点间隔尽可能为2.5mm
l 镀锡,端面可直接焊接
l 距离元件边缘至少为3mm
l 所有测试点应可能处于插件板的背面
l 测试点应均匀布在插件板上
l 每个节点至少有一个测试点(100%通道)
l 备用或不用的门电路都有测试点
l 供电电源的多外测试点分布在不同位置
元件标志
l 标志文字同一方向
l 型号、版本、系列号及条形码明确标识
l 元件名称要清晰可见,且尽可能直接标在元件近旁
7、关于快闪存储器和其它可编程元件
快闪存储器的编程时间有时会很长(对于大的存储器或存储器组可达1分钟)。因此,此时不容许有其它元件的逆驱动,否则快闪存储器可能会受到损害。为了避免这种情况,必须将所有与地址总线的控制线相连的元件置于高欧姆状态。同样,数据总线也必须能够被置于隔绝状态,以确保快闪存储器为空载,并可进行下步编程。
系统内可编程元件(ISP)有一些要求,如Altera,XilinX和Lattuce等公司的产品,还有其它一些特殊要求。除了可测试性的机械和电气前提条件应得到保证外,还要保证具有编程和确证数据的可能性。对于Altera和Xilinx元件,使用了连串矢量格式(Serial Vector Format SVF),这种格式近期几乎已发展成为工业标准。许多测试系统可以对这类元件编程,并将连串矢量格式(SVF)内的输入数据用于测试信号发生器。通过边界扫描键(Boundary-Scan-Kette JTAG)对这些元件编程,也将连串数据格式编程。在汇集编程数据时,重要的是应考虑到电路中全部的元件链,不应将数据仅仅还原给要编程的元件。
编程时,自动测试信号发生器考虑到整个的元件链,并将其它元件接入旁路模型中。相反,Lattice公司要求用JEDEC格式的数据,并通过通常的输入端和输出端并行编程。编程后,数据还要用于检查元件功能。开发部门提供的数据应尽可能地便于测试系统直接应用,或者通过简单转换便可应用。
8、对于边界扫描(JTAG)应注意什么
由基于复杂元件组成精细网格的组件,给测试工程师只提供很少的可接触的测试点。此时也仍然可能提高可测试性。对此可使用边界扫描和集成自测试技术来缩短测试完成时间和提高测试效果。
对于开发工程师和测试工程师来说,建立在边界扫描和集成自测试技术基础上的测试战略肯定会增加费用。开发工程师必然要在电路中使用的边界扫描元件(IEEE-1149.1-标准),并且要设法使相应的具体的测试引线脚可以接触(如测试数据输入-TDI,测试数据输出-TDO,测试钟频-TCK和测试模式选择-TMS以及ggf.测试复位)。测试工程师给元件制定一个边界扫描模型(BSDL-边界扫描描述语言)。此时他必须知道,有关元件支持何种边界扫描功能和指令。边界扫描测试可以诊断直至引线级的短路和断路。除此之外,如果开发工程师已作规定,可以通过边界扫描指令“RunBIST”来触发元件的自动测试。尤其是当电路中有许多ASICs和其它复杂元件时,对于这些元件并不存在惯常的测试模型,通过边界扫描元件,可以大大减少制定测试模型的费用。
时间和成本降低的程度对于每个元件都是不同的。对于一个有IC的电路,如果需要100%发现,大约需要40万个测试矢量,通过使用边界扫描,在同样的故障发现率下,测试矢量的数目可以减少到数百个。因此,在没有测试模型,或接触电路的节点受到限制的条件下,边界扫描方法具有特别的优越性。是否要采用边界扫描,是取决于开发利用和制造过程中增加的成本费用。衽边界扫描必须和要求发现故障的时间,测试时间,进入市场的时间,适配器成本进行权衡,并尽可能节约。在许多情况下,将传统的在线测试方法和边界扫描方法混合盐业的方案是最佳的解决方式
第二篇 混合信号PCB的分区设计
摘要:混合信号电路PCB的设计很复杂,元器件的布局、布线以及电源和地线的处理将直接影响到电路性能和电磁兼容性能。本文介绍的地和电源的分区设计能优化混合信号电路的性能。
如何降低数字信号和模拟信号间的相互干扰呢?在设计之前必须了解电磁兼容(EMC)的两个基本原则:第一个原则是尽可能减小电流环路的面积;第二个原则是系统只采用一个参考面。相反,如果系统存在两个参考面,就可能形成一个偶极天线(注:小型偶极天线的辐射大小与线的长度、流过的电流大小以及频率成正比);而如果信号不能通过尽可能小的环路返回,就可能形成一个大的环状天线(注:小型环状天线的辐射大小与环路面积、流过环路的电流大小以及频率的平方成正比)。在设计中要尽可能避免这两种情况。
有人建议将混合信号电路板上的数字地和模拟地分割开,这样能实现数字地和模拟地之间的隔离。尽管这种方法可行,但是存在很多潜在的问题,在复杂的大型系统中问题尤其突出。最关键的问题是不能跨越分割间隙布线,一旦跨越了分割间隙布线,电磁辐射和信号串扰都会急剧增加。在PCB设计中最常见的问题就是信号线跨越分割地或电源而产生EMI问题。
如图1所示,我们采用上述分割方法,而且信号线跨越了两个地之间的间隙,信号电流的返回路径是什么呢?假定被分割的两个地在某处连接在一起(通常情况下是在某个位置单点连接),在这种情况下,地电流将会形成一个大的环路。流经大环路的高频电流会产生辐射和很高的地电感,如果流过大环路的是低电平模拟电流,该电流很容易受到外部信号干扰。最糟糕的是当把分割地在电源处连接在一起时,将形成一个非常大的电流环路。另外,模拟地和数字地通过一个长导线连接在一起会构成偶极天线。
了解电流回流到地的路径和方式是优化混合信号电路板设计的关键。许多设计工程师仅仅考虑信号电流从哪儿流过,而忽略了电流的具体路径。如果必须对地线层进行分割,而且必须通过分割之间的间隙布线,可以先在被分割的地之间进行单点连接,形成两个地之间的连接桥,然后通过该连接桥布线。这样,在每一个信号线的下方都能够提供一个直接的电流回流路径,从而使形成的环路面积很小。
采用光隔离器件或变压器也能实现信号跨越分割间隙。对于前者,跨越分割间隙的是光信号;在采用变压器的情况下,跨越分割间隙的是磁场。还有一种可行的办法是采用差分信号:信号从一条线流入从另外一条信号线返回,这种情况下,不需要地作为回流路径。
要深入探讨数字信号对模拟信号的干扰必须先了解高频电流的特性。高频电流总是选择阻抗最小(电感最低),直接位于信号下方的路径,因此返回电流会流过邻近的电路层,而无论这个临近层是电源层还是地线层。
在实际工作中一般倾向于使用统一地,而将PCB分区为模拟部分和数字部分。模拟信号在电路板所有层的模拟区内布线,而数字信号在数字电路区内布线。在这种情况下,数字信号返回电流不会流入到模拟信号的地。
只有将数字信号布线在电路板的模拟部分之上或者将模拟信号布线在电路板的数字部分之上时,才会出现数字信号对模拟信号的干扰。出现这种问题并不是因为没有分割地,真正的原因是数字信号的布线不适当。
PCB设计采用统一地,通过数字电路和模拟电路分区以及合适的信号布线,通常可以解决一些比较困难的布局布线问题,同时也不会产生因地分割带来的一些潜在的麻烦。在这种情况下,元器件的布局和分区就成为决定设计优劣的关键。如果布局布线合理,数字地电流将限制在电路板的数字部分,不会干扰模拟信号。对于这样的布线必须仔细地检查和核对,要保证百分之百遵守布线规则。否则,一条信号线走线不当就会彻底破坏一个本来非常不错的电路板。
在将A/D转换器的模拟地和数字地管脚连接在一起时,大多数的A/D转换器厂商会建议:将AGND和DGND管脚通过最短的引线连接到同一个低阻抗的地上(注:因为大多数A/D转换器芯片内部没有将模拟地和数字地连接在一起,必须通过外部管脚实现模拟和数字地的连接),任何与DGND连接的外部阻抗都会通过寄生电容将更多的数字噪声耦合到IC内部的模拟电路上。按照这个建议,需要把A/D转换器的AGND和DGND管脚都连接到模拟地上,但这种方法会产生诸如数字信号去耦电容的接地端应该接到模拟地还是数字地的问题。
如果系统仅有一个A/D转换器,上面的问题就很容易解决。如图3 中所示,将地分割开,在A/D转换器下面把模拟地和数字地部分连接在一起。采取该方法时,必须保证两个地之间的连接桥宽度与IC等宽,并且任何信号线都不能跨越分割间隙。
如果系统中A/D转换器较多,例如10个A/D转换器怎样连接呢?如果在每一个A/D转换器的下面都将模拟地和数字地连接在一起,则产生多点相连,模拟地和数字地之间的隔离就毫无意义。而如果不这样连接,就违反了厂商的要求。
最好的办法是开始时就用统一地。如图4 所示,将统一的地分为模拟部分和数字部分。这样的布局布线既满足了IC器件厂商对模拟地和数字地管脚低阻抗连接的要求,同时又不会形成环路天线或偶极天线而产生EMC问题。
如果对混合信号PCB设计采用统一地的做法心存疑虑,可以采用地线层分割的方法对整个电路板布局布线,在设计时注意尽量使电路板在后边实验时易于用间距小于1/2英寸的跳线或0欧姆电阻将分割地连接在一起。注意分区和布线,确保在所有的层上没有数字信号线位于模拟部分之上,也没有任何模拟信号线位于数字部分之上。而且,任何信号线都不能跨越地间隙或是分割电源之间的间隙。要测试该电路板的功能和EMC性能,然后将两个地通过0欧姆电阻或跳线连接在一起,重新测试该电路板的功能和EMC性能。比较测试结果,会发现几乎在所有的情况下,统一地的方案在功能和EMC性能方面比分割地更优越。
#分割地的方法还有用吗?
在以下三种情况可以用到这种方法:一些医疗设备要求在与病人连接的电路和系统之间的漏电流很低;一些工业过程控制设备的输出可能连接到噪声很大而且功率高的机电设备上;另外一种情况就是在PCB的布局受到特定限制时。
在混合信号PCB板上通常有独立的数字和模拟电源,能够而且应该采用分割电源面。但是紧邻电源层的信号线不能跨越电源之间的间隙,而所有跨越该间隙的信号线都必须位于紧邻大面积地的电路层上。在有些情况下,将模拟电源以PCB连接线而不是一个面来设计可以避免电源面的分割问题。
#混合信号PCB设计是一个复杂的过程,设计过程要注意以下几点:
1.将PCB分区为独立的模拟部分和数字部分。
2.合适的元器件布局。
3.A/D转换器跨分区放置。
4.不要对地进行分割。在电路板的模拟部分和数字部分下面敷设统一地。
5.在电路板的所有层中,数字信号只能在电路板的数字部分布线。
6.在电路板的所有层中,模拟信号只能在电路板的模拟部分布线。
7.实现模拟和数字电源分割。
8.布线不能跨越分割电源面之间的间隙。
9.必须跨越分割电源之间间隙的信号线要位于紧邻大面积地的布线层上。
10.分析返回地电流实际流过的路径和方式。
11.采用正确的布线规则。
欲知更多信息请查询:www.sigcon.com、www.ultracad.com和www.hottconsultants.com。
第三篇 蛇形走线有什么作用?
请问各路大侠,蛇形走线有什么作用?为什么要蛇形走线?哪些类信号线需要蛇形走线,如果要进行蛇形布线,需要满足什么规则和注意什么问题?烦
劳大侠们指点一下.
RE:蛇形走线有什么作用? - 北京 / vhdl 回复于2000-9-15 9:11:00
>>电感作用
视情况而定,比如PCI板上的蛇行线就是为了适应PCI 33MHzClock的线长要求
RE:蛇形走线有什么作用? - 深圳 / jack 回复于2000-9-15 12:04:00
关于蛇形走线,因为应用场合不同具不同的作用,如果蛇形走线在电脑板中出现,其主要起到一个滤波电感的作用,提高电路的抗干扰能力,若在一般普通PCB板中,除了具有滤波电感的作用外,还可作为收音机天线的电感线圈等等.
RE:蛇形走线有什么作用? - Shanghai / clgoal 回复于2000-9-15 13:14:00
电脑主机板中的蛇形走线,主要用在一些时钟信号中,如PCIClk,AGPClk,它的作用有两点:1、阻抗匹配 2、滤波电感。对一些重要信号,如INTEL HUB架构中的HUBLink,一共13根,跑233MHz,要求必须严格等长,以消除时滞造成的隐患,绕线是唯一的解决办法。一般来讲,蛇形走线的线距>=2倍的线宽。
RE:蛇形走线有什么作用? - beijing / free 回复于2000-10-16 12:24:00
等长布线,尤其是在高频电路中的数据线。
RE:蛇形走线有什么作用? - 广西北海 / chenshu2000 回复于2000-10-19 9:18:00
有没有计算蛇形线电感量的公式或经验值?
RE:蛇形走线有什么作用? - 北京 / fangll 回复于2000-10-22 21:56:00
specctra可以编程设定网络走线的阻抗匹配规则和差分线走线规则
帮助里面讲了一些一般的设计原则
RE:蛇形走线有什么作用? - 大连 / nkhare 回复于2001-2-15 20:07:00
有时也兼作电阻作用。
RE:蛇形走线有什么作用? - jinan / wwx 回复于2001-2-15 22:51:00
实际是一个分布参数的 LC 滤波器。
RE:蛇形走线有什么作用? - 广州 / anrey 回复于2001-2-16 11:04:00
滤波
RE:蛇形走线有什么作用? - 珠海 / liangby 回复于2001-2-16 11:44:00
等长线。平横分布参数
RE:蛇形走线有什么作用? - 珠海 / bigcat 回复于2001-2-16 20:36:00
高速数字PCB板的等线长是为了使各信号的延迟差保持在一个范围内,保证系统在同一周期内读取的数据的有效性(延迟差超过一个时钟周期时会错读下一周期的数据),一般要求延迟差不超过1/4时钟周期,单位长度的线延迟差也是固定的,延迟跟线宽,线长,铜厚,板层结构有关,但线过长会增大分布电容和分布电感,使信号质量,所以时钟IC引脚一般都接RC端接,但蛇形走线并非起电感的作用,相反的,电感会使信号中的上升元中的高次谐波相移,造成信号质量恶化,所以要求蛇形线间距最少是线宽的两倍,信号的上升时间越小就越易受分布电容和分布电感的影响.
RE:蛇形走线有什么作用? - 北京 / BITLEFT 回复于2001-6-20 9:59:00
蛇行走线应该注意什么问题?如果,走得不好,对pcb板的抗干扰能力是不是不能好转,反而会有恶化作用?
RE:蛇形走线有什么作用? - GuangZhou / yxlian 回复于2001-6-20 11:19:00
简单地说,PCB上的任何一条走线在通过高频信号的情况下都会对该信号造成时延时,蛇形走线的主要作用是补偿“同一组相关”信号线中延时较小的部分,这些部分通常是没有或比其它信号少通过另外的逻辑处理;最典型的就是时钟线,通常它不需经过任何其它逻辑处理,因而其延时会小于其它相关信号。
14:44:00
哈,在微波电路中,大多蛇行线是为了减小PCB的面积!——因为线长有严格限制。
RE:蛇形走线有什么作用? - 珠海 / bigcat 回复于2001-6-20 19:14:00
等线长的蛇形走线没有任何抗干扰的功能,它的作用是将有时序要求的总线或时钟线的延迟控制在所要求的范围内,至于要求如果不会算也可从DATASHEET上得到,一般有时序要求的都会给出线长匹配的数据;在走线时一般遵循3W法则(绕线的间距要两倍于线宽),这样可消除线间78%的互感,尽量减少因电感变化而引起的阻抗不连续。
另外说明我不是高手,抬得越高摔得越痛;若想见识高手,可以到WWW。EDACHINA。COM的高速设计论坛上,有一篇解释版主回的解释线间串扰的帖子,有波形图和注释,这样可以知道什么样水平的是高手。
RE:蛇形走线有什么作用? - 上海市 / bab0523 回复于2001-7-10 13:35:00
主板中,蛇形走线基本上是为了等长, 不光HUBLINK,CPUCLK,PCICLK;IDE,DIMM也要绕线,绕线线距依据走线线距,可1:2,1:3,1:4——
RE:蛇形走线有什么作用? - 东莞 / yuanqui_cn 回复于2001-8-18 14:30:00
在2。4G的对讲机中用作电感,可是我不知怎样计算电感量,不知大侠有这方面的经验
RE:蛇形走线有什么作用? - hanzhou / wdyuut 回复于2001-8-22 15:35:00
RE:蛇形走线,大多为了实现总线间的长度匹配,或为了减少布线面积,从电磁干扰的角度来说,比较不利,增大了 环路面积,考虑到线间干扰,常常不能达到减少布线面积的目的
RE:蛇形走线有什么作用? - 东莞长安 / 蒋国伟回复于2001-8-22 18:21:00
短而窄的蛇形走线可做保险丝。
第四篇 确保信号完整性的电路板设计准则
信号完整性(SI)问题解决得越早,设计的效率就越高,从而可避免在电路板设计完成之后才增加端接器件。SI设计规划的工具和资源不少,本文探索信号完整性的核心议题以及解决SI问题的几种方法,在此忽略设计过程的技术细节。
1、SI问题的提出
随着IC输出开关速度的提高,不管信号周期如何,几乎所有设计都遇到了信号完整性问题。即使过去你没有遇到SI问题,但是随着电路工作频率的提高,今后一定会遇到信号完整性问题。
信号完整性问题主要指信号的过冲和阻尼振荡现象,它们主要是IC驱动幅度和跳变时间的函数。也就是说,即使布线拓扑结构没有变化,只要芯片速度变得足够快,现有设计也将处于临界状态或者停止工作。我们用两个实例来说明信号完整性设计是不可避免的。
实例之一:在通信领域,前沿的电信公司正为语音和数据交换生产高速电路板(高于500MHz),此时成本并不特别重要,因而可以尽量采用多层板。这样的电路板可以实现充分接地并容易构成电源回路,也可以根据需要采用大量离散的端接器件,但是设计必须正确,不能处于临界状态。
SI和EMC专家在布线之前要进行仿真和计算,然后,电路板设计就可以遵循一系列非常严格的设计规则,在有疑问的地方,可以增加端接器件,从而获得尽可能多的SI安全裕量。电路板实际工作过程中,总会出现一些问题,为此,通过采用可控阻抗端接线,可以避免出现SI问题。简而言之,超标准设计可以解决SI问题。
实例之二:从成本上考虑,电路板通常限制在四层以内(里面两层分别是电源层和接地层)。这极大限制了阻抗控制的作用。此外,布线层少将加剧串扰,同时信号线间距还必须最小以布放更多的印制线。另一方面,设计工程师必须采用最新和最好的CPU、内存和视频总线设计,这些设计就必须考虑SI问题。
关于布线、拓扑结构和端接方式,工程师通常可以从CPU制造商那里获得大量建议,然而,这些设计指南还有必要与制造过程结合起来。在很大程度上,电路板设计师的工作比电信设计师的工作要困难,因为增加阻抗控制和端接器件的空间很小。此时要充分研究并解决那些不完整的信号,同时确保产品的设计期限。
下面介绍设计过程通用的SI设计准则。
2、设计前的准备工作
在设计开始之前,必须先行思考并确定设计策略,这样才能指导诸如元器件的选择、工艺选择和电路板生产成本控制等工作。就SI而言,要预先进行调研以形成规划或者设计准则,从而确保设计结果不出现明显的SI问题、串扰或者时序问题。有些设计准则可以由IC制造商提供,然而,芯片供应商提供的准则(或者你自己设计的准则)存在一定的局限性,按照这样的准则可能根本设计不了满足SI要求的电路板。如果设计规则很容易,也就不需要设计工程师了。
在实际布线之前,首先要解决下列问题,在多数情况下,这些问题会影响你正在设计(或者正在考虑设计)的电路板,如果电路板的数量很大,这项工作就是有价值的。
3、电路板的层叠
某些项目组对PCB层数的确定有很大的自主权,而另外一些项目组却没有这种自主权,因此,了解你所处的位置很重要。与制造和成本分析工程师交流可以确定电路板的层叠误差,这时还是发现电路板制造公差的良机。比如,如果你指定某一层是50Ω阻抗控制,制造商怎样测量并确保这个数值呢?
其他的重要问题包括:预期的制造公差是多少?在电路板上预期的绝缘常数是多少?线宽和间距的允许误差是多少?接地层和信号层的厚度和间距的允许误差是多少?所有这些信息可以在预布线阶段使用。
根据上述数据,你就可以选择层叠了。注意,几乎每一个插入其他电路板或者背板的PCB都有厚度要求,而且多数电路板制造商对其可制造的不同类型的层有固定的厚度要求,这将会极大地约束最终层叠的数目。你可能很想与制造商紧密合作来定义层叠的数目。应该采用阻抗控制工具为不同层生成目标阻抗范围,务必要考虑到制造商提供的制造允许误差和邻近布线的影响。
在信号完整的理想情况下,所有高速节点应该布线在阻抗控制内层(例如带状线),但是实际上,工程师必须经常使用外层进行所有或者部分高速节点的布线。要使SI最佳并保持电路板去耦,就应该尽可能将接地层/电源层成对布放。如果只能有一对接地层/电源层,你就只有将就了。如果根本就没有电源层,根据定义你可能会遇到SI问题。你还可能遇到这样的情况,即在未定义信号的返回通路之前很难仿真或者模拟电路板的性能。
4、串扰和阻抗控制
来自邻近信号线的耦合将导致串扰并改变信号线的阻抗。相邻平行信号线的耦合分析可能决定信号线之间或者各类信号线之间的“安全”或预期间距(或者平行布线长度)。比如,欲将时钟到数据信号节点的串扰限制在100mV以内,却要信号走线保持平行,你就可以通过计算或仿真,找到在任何给定布线层上信号之间的最小允许间距。同时,如果设计中包含阻抗重要的节点(或者是时钟或者专用高速内存架构),你就必须将布线放置在一层(或若干层)上以得到想要的阻抗。
5、重要的高速节点
延迟和时滞是时钟布线必须考虑的关键因素。因为时序要求严格,这种节点通常必须采用端接器件才能达到最佳SI质量。要预先确定这些节点,同时将调节元器件放置和布线所需要的时间加以计划,以便调整信号完整性设计的指标。
6、技术选择
不同的驱动技术适于不同的任务。信号是点对点的还是一点对多抽头的?信号是从电路板输出还是留在相同的电路板上?允许的时滞和噪声裕量是多少?作为信号完整性设计的通用准则,转换速度越慢,信号完整性越好。50MHz时钟采用500ps上升时间是没有理由的。一个2-3ns的摆率控制器件速度要足够快,才能保证SI的品质,并有助于解决象输出同步交换(SSO)和电磁兼容(EMC)等问题。
在新型FPGA可编程技术或者用户定义ASIC中,可以找到驱动技术的优越性。采用这些定制(或者半定制)器件,你就有很大的余地选定驱动幅度和速度。设计初期,要满足FPGA(或ASIC)设计时间的要求并确定恰当的输出选择,如果可能的话,还要包括引脚选择。
在这个设计阶段,要从IC供应商那里获得合适的仿真模型。为了有效的覆盖SI仿真,你将需要一个SI仿真程序和相应的仿真模型(可能是IBIS模型)。
最后,在预布线和布线阶段你应该建立一系列设计指南,它们包括:目标层阻抗、布线间距、倾向采用的器件工艺、重要节点拓扑和端接规划。
7、预布线阶段
预布线SI规划的基本过程是首先定义输入参数范围(驱动幅度、阻抗、跟踪速度)和可能的拓扑范围(最小/最大长度、短线长度等),然后运行每一个可能的仿真组合,分析时序和SI仿真结果,最后找到可以接受的数值范围。
接着,将工作范围解释为PCB布线的布线约束条件。可以采用不同软件工具执行这种类型的“清扫”准备工作,布线程序能够自动处理这类布线约束条件。对多数用户而言,时序信息实际上比SI结果更为重要,互连仿真的结果可以改变布线,从而调整信号通路的时序。
在其他应用中,这个过程可以用来确定与系统时序指标不兼容的引脚或者器件的布局。此时,有可能完全确定需要手工布线的节点或者不需要端接的节点。对于可编程器件和ASIC来说,此时还可以调整输出驱动的选择,以便改进SI设计或避免采用离散端接器件。
8、布线后SI仿真
一般来说,SI设计指导规则很难保证实际布线完成之后不出现SI或时序问题。即使设计是在指南的引导下进行,除非你能够持续自动检查设计,否则,根本无法保证设计完全遵守准则,因而难免出现问题。布线后SI仿真检查将允许有计划地打破(或者改变)设计规则,但是这只是出于成本考虑或者严格的布线要求下所做的必要工作。
现在,采用SI仿真引擎,完全可以仿真高速数字PCB(甚至是多板系统),自动屏蔽SI问题并生成精确的“引脚到引脚”延迟参数。只要输入信号足够好,仿真结果也会一样好。这使得器件模型和电路板制造参数的精确性成为决定仿真结果的关键因素。很多设计工程师将仿真“最小”和“最大”的设计角落,再采用相关的信息来解决问题并调整生产率。
9、后制造阶段
采取上述措施可以确保电路板的SI设计品质,在电路板装配完成之后,仍然有必要将电路板放在测试平台上,利用示波器或者TDR(时域反射计)测量,将真实电路板和仿真预期结果进行比较。这些测量数据可以帮助你改进模型和制造参数,以便你在下一次预设计调研工作中做出更佳的(更少的约束条件)决策。
10、模型的选择
关于模型选择的文章很多,进行静态时序验证的工程师们可能已经注意到,尽管从器件数据表可以获得所有的数据,要建立一个模型仍然很困难。SI仿真模型正好相反,模型的建立容易,但是模型数据却很难获得。本质上,SI模型数据唯一的可靠来源是IC供应商,他们必须与设计工程师保持默契的配合。IBIS模型标准提供了一致的数据载体,但是IBIS模型的建立及其品质的保证却成本高昂,IC供应商对此投资仍然需要市场需求的推动作用,而电路板制造商可能是唯一的需方市场。
11、未来技术的趋势
设想系统中所有输出都可以调整以匹配布线阻抗或者接收电路的负载,这样的系统测试方便,SI问题可以通过编程解决,或者按照IC特定的工艺分布来调整电路板使SI达到要求,这样就能使设计容差更大或者使硬件配置的范围更宽。
目前,业界也在关注一种SI器件技术,其中许多技术包含设计好的端接装置(比如LVDS)和自动可编程输出强度控制和动态自动端接功能,采用这些技术的设计可以获得优良的SI品质,但是,大多数技术与标准的CMOS或者TTL逻辑电路差别太大,与现有仿真模型的配合不大好。
因此,EDA公司也正加入到“轻轻松松设计”的竞技场之中,人们为了在设计初期解决SI问题已经做了大量工作,将来,不必SI专家就能借助自动化工具解决SI问题。尽管目前技术还没有发展到那个水平,但是人们正探索新的设计方法,从“SI和时序布线”出发开始设计的技术仍在发展,预计未来几年内将诞生新的设计技术