数字后端——信号完整性分析

        随着光刻和集成电路制造工艺的不断进步,以及芯片的特征尺寸从深亚微米到纳米的迅速采用,人们一方面因为芯片的功能极大提高而受益,另一方面,当逻辑门的沟道长度减小时,门的开关时间会减小,这意味着输出驱动器上升时间变短,或者说时钟频率可以更高。同时,所有与信号完整性SI(signal integrity)相关的问题都变得更加严重。

        提起串扰,人们通常会首先想到PCB板级信号线相互作用和影响,事实也是如此,串扰往往和电磁干扰EMI联系在一起。信号完整性分析和研究包括宏观范围的物理互连(例如,IC封装、电路板、接插件、电缆等)如何影响信号和电源分布的质量,并采取新策略,例如,采用新的信号完整性设计技术,对设计用新的建模、仿真和测量工具进行验证。虽然芯片设计技术已经采用了 SiP并考虑了从芯片到封装的信号完整性,但是,实际上封装与芯片的分析是分别单独处理。在芯片的电学特性中,时序、串扰和功耗是三项相互相关的重要分析内容。因此,需要了解芯片在物理设施过程中的串扰产生和现象、产生的因素、对芯片引起的危害及其预防,即对串扰的分析和实际解决方案。

一、信号串扰与功能故障

1、串扰的产生

        芯片上的串扰是由互连线之间的寄生耦合引起的噪声,这种耦合反映了物理世界非理想化的特性。随着芯片特征尺寸的细化,互连线的物理尺寸以及间距变小,从而导致互连线之间的耦合效应增大,串扰随之产生并增强。

        串扰会导致信号延迟和毛刺两类问题,从而影响芯片的时序性能以及正常功能。在分析串扰时,我们将产生串扰信号源的网络称为侵害网络(aggressor net或attacker),受到串扰的网络称为受害网络(victom net)。当侵害网络上的信号在0 和1电平之间变换时,受害网络上会产生相应的串扰噪声,这种转换噪声能使受害网络的信号转换变慢、变快或出现非单调转换等现象,从而干扰或破坏信号。如果噪声使信号出现非单调转换,便将产生一个伪脉冲,叫做毛刺(glitch)。毛刺干扰有多种类型,主要分为(1)过冲,受害节点上的信号超过电源电压;(2)下冲,指受害节点上的信号低于接地电压。这些脉冲破坏了门电路所保存的状态,使门电路不起作用,或者起错误作用,从而引起带有门电路输入的触发器和锁存器出现功能故障,如下图所示。

2、噪声容限

         CMOS电路单元可以承受一定程度的噪声,而不会导致单元输出故障,这种特性称为噪声抵抗能力,我们通过噪声容限来对其说明。根据电压转换特征VTC(Voltage transfer characteristic)曲线,当处于单位增益(unity gain)点时,信号变化率最大,这时,噪声容限有两种定义方法:单源噪声容限(SSNM,single-source noise margin)和多源噪声容限(MSNM,multiple-source noise margin)。在工程中的实际噪声会来自电路中中的任意一级或多级。

        侵害网络的信号可以是强型(例如,上升时间短或转换率高,high slew rate),或者是弱型(例如,上升时间长或转换率低)。信号串扰可以是相加性,也可以是相减性的,侵害网络和受害网络之间的相对信号极性决定它们之间的耦合或串扰效应,即常说的米勒效应。

二、串扰信号分析

        串扰会导致信号延迟毛刺两类问题,从而影响芯片的时序性能以及正常功能。目前工业界用于串扰分析采用的工具包括Cadence公司的CeltIC或Synopsys公司的PT分析串扰脉冲和串扰延迟。

1、串扰分析

        串扰分析的内容主要分成两个方面,即串扰脉冲的分析串扰延迟的分析,分别体现为电压敏感值的计算以及延迟的计算。串扰的分析可以在芯片设计的各个阶段进行,它们都同时分析两种不同类型的噪声问题。

        分析噪声时,需要考虑的因素有:时序窗(timing window)、噪声阈值设定、噪声库以及噪声模型的选择和耦合电容的过滤等。

        (1)时间窗(TWF,timing window format)文档的应用是噪声分析中一个重要工具,它可以比较实时地反映芯片实际工作时的信号翻转情况,从而真实地分析噪声影响,避免过于悲观的噪声分析结果,从而降低设计的难度。

 

        如图所示,图中的两条相互影响的信号线O1和O2是经过I1和I2两个门电路传输过来的信号,假设I1的信号转变窗是在2ns和6ns之间,而I2的信号转换窗在5ns和9ns之间,则两个信号只在5ns和6ns之间的时间域内相遇,故只需在该范围内分析噪声即可,如果的时间窗在2ns和5ns之间,而I2信号的时间窗在6ns和9ns之间,则这两个信号没有交错的时间,故可以忽略其相互之间的噪声影响。EDA工具一般假设没有时间窗,计算出噪声问题,过滤低噪声网络,然后读入时间窗,对高噪声网络进行分析,从而降低分析的复杂性和时间。

        (2)在分析毛刺时,需要制定噪声阈值的大小,CeltIC的处理较为保守,一般为20% Vdd ,在Astro中一般默认为35% Vdd。也就是说在供电电压的多少百分比以内的噪声是安全的。

        (3)噪声库和噪声模型的选择影响EDA工具进行噪声分析的精确性和时间,在初步评估阶段一般选择精确度较为粗糙的算法,从而完成噪声的快速评估,在最后的sign-off阶段则需要选用精确度较高的算法,从而精确地定义噪声问题所在。

        对于延迟的计算,先要考虑由侵害网络与受害网络之间的耦合电容C_{c}和受害网络对地电容C_{gnd}产生的瞬态电压\triangle V_{2},根据下式决定受害网络的影响。 

        参数过滤也是减少计算复杂度的一种方法,主要的参数有:绝对耦合电容、相对耦合电容、单个峰值耦合噪声及累计峰值耦合噪声。当两条信号线之间的耦合电容小于一定值时,便忽略计算其噪声。当两条信号之间的耦合噪声小于一定的值,也认为是没有噪声影响,延迟计算主要有以下3种状况:

  • 最大可能延时:假设所有侵害网络静止,用保持电阻计算。
  • 最小延时:侵害网络与受害网络同向,用最快slew和最快vector计算。
  • 最大延时:侵害网络与受害网络反向,用最慢slew和最慢vector计算。

2、串扰与延迟

        耦合噪声也会改变关键路径延时,导致电路建立或保持时间的违例。当串扰使信号转换变慢或变快时叫做串扰延迟,通过增量延时分析可以捕捉到。

        如上图所示,所示输入in2从高电平变为低电平,通过反相器后导线in2_x 电平由低变高。同时,与之相临近的互连线a1,a2电平下降,由于耦合电容的存在导致in2_x由低向高的翻转过程中出现短暂的电平下降过程,使得上升时间增加。当a1的下降沿作用到受害网络,该信号的转换变慢,延迟明显增大,会导致产生setup的时序违例。

3、电压降与串扰

        电压降对于串扰的影响体现在两个方面:毛刺的传播延迟的变化。根据噪声容限的定义,其中毛刺的传播会产生电路的误操作,而延迟的变化则会产生setup和hold的时序违例。很多噪声sign-off的工具,基本上都支持这种带IR Drop的噪声分析,其中IR Drop文件有一定的格式,它可以是EDA工具输出的文件,也可以根据格式自己编写。

4、串扰与低功耗

        随着低功耗指标的深入,降低电压、多阈值单元、多电压区域等技术的应用,以及工艺的发展和演变,伴随低功耗而产生的一系列串扰问题也不可忽视。

        单一通过降低电压实现的低功耗技术主要有自适应电压调变技术,芯片的工作电压能够在一定范围内调整。从上面的分析得出,降低电压则晶体管的噪声容限阈值变小,可能会导致串扰脉冲的传播以及由不同路径上串扰延迟的增加而产生的setup和hold的时序违例,这种情况下对于噪声的分析和优化相对比较简单,只要解决最坏情况下的噪声问题即能保证芯片的稳定工作

        当采用多阈值多电压的技术时,噪声分析难度在于每种不同类型的噪声库的建立,以及EDA工具对于工艺变化影响的考虑。所以在低功耗条件下,需要定义多种工艺条件进行分析。

三、信号串扰的预防与修复

        解决串扰问题主要从预防串扰和修复串扰两个方面着手,方法有:提高受害网络驱动器的驱动强度在受害网络中插入缓冲器降低侵害网络驱动器的驱动强度将受害网络从主要侵害网络处移开等。 

1、串扰预防

1)保护受害网络

        串扰产生在信号的转变过程中,而时钟信号的翻转概率最高,故合理的设计时钟网络可以有效地预防串扰的产生。时钟网络及其他高扇出网络包含许多级逻辑电路,时钟树网络中的每一个接收器都可能引起一个小的串扰增量,这些由时钟源至目的地的延迟之和(即总增量)足可以引起一个很大的定时扰乱。将时钟网络布线间隔增加1倍或2倍,再将时钟网络布线限制在拥挤程度不高的顶部金属层内,可以有效消除时钟网络的串扰延迟。屏蔽时钟网络布线是另一种方法,不过这种方法有一个缺点,那就是时钟等待时间会因接地电容增大而增加。虽然增加间隔采用屏蔽及利用保留金属层这3种方法适用于时钟和其他高扇出网络,但它们都会占用额外的布线空间和资源

2)增强受害网络对串扰的免疫力

        在串扰噪声干扰具有极强破坏性的异步网络上,应尽量使用高驱动单元。在复位网络的结构中使用髙驱动单元可提髙潜在侵害网络的门限,从而降低受害网络的受害程度和数量。

        在时钟树综合阶段使用高驱动单元,可降低串扰量,减少时钟树和复位树上的受害网络。减少时钟树的插入延迟也意味着沿启动时钟和捕获时钟路径上累加的递增串扰增最更少。

2、串扰修复

1)增强驱动器单元能力

        通过对受害增强网络上的驱动器的单元驱动能力可以修复最大延迟扰乱。在不产生新扰乱的情况下修复受害网络,我们可以根据串扰增量的大小来选择新驱动器强度,由此确定单元扩容的程度。

2)在受害网络上插入缓冲器

        插入缓冲单元是处理信号完整性时一项有效的修复技术,它可以解决因功能性故障、延迟和竞争条件(race condition)等现象造成的电容串扰噪声脉冲、过压与电压过低等问题。加入缓冲器的数量必须尽可能地少,因为插入大量的缓冲器可能造成电路布局上的额外拥挤或混乱,必须重新计算电路的寄生效应及时序信息,从而延长设计的周期时间。此外,若加入过多缓冲器,反而会增加受害网络的数量

3)插入延迟单元

        通过延迟单元插入可以修复最小延迟扰乱。该方法十分有效,实现起来也很简单。在失效路径上,将总的负slack除以延迟单元延迟值的保护间隔估计值,取四舍五入的结果作为插入单元的数量,便是在路径的两端点应该增加的延迟单元数量。

4)调整布线

        通过分析可以知道,合理地利用互斥的网络,不仅可以减少串扰,还可以减小延迟,从而提高芯片的功能。

        为了自动执行网络排斥修复,需要将网络隔离文件装入布线器中,启用定时驱动的间隔,并执行搜索和修复。也可以通过手工实现网络排斥来消除少量的扰乱。当受害网络处于拥挤区域时,需检查信号环境并实施可能难以自动完成的定制修复。

        网络排斥通常会减小失效路径上串扰增量值,但是很多情况下,这种减小的幅度还不足以修复扰乱。为了提高导线排斥一次通过的成功率,可以利用最小比率变量来确定哪条扰乱路径包含在一组必定要通过网络排斥来修复的路径中。可将这一组路径传递给一个定制程序,以便为布线器生成串扰制约条件。

3、虚拟串扰与靴值分析

        我们这里介绍的虚拟串扰是噪声分析中采用的一种简捷方案。在一个具有百万门的SoC设计中,总的网络(net)数目大约也是一百万条。为了分析一个受害网络受周围若干条侵害网络的作用,总的噪声分析数量是很庞大的。过高或过低地处理侵害网络的作用都不是科学的方法。在CeltIC噪声分析中,人们采用了统计学计算法,将多条小信号侵害网络编辑成组,并用一条虚拟侵害网络作为代表,这样就极大地减小了动态计算工作量。
        靴值(bootstrap,也称鞋值)分析是低噪声电子学中常用的一种分析方法,靴值噪声是作用于地线上的地冲或作用于电源上的上冲噪声干扰信号

         以上图中锁存器中的NMOS为例,考虑其输入端并将它作为受害网络进行分析,当它的数据输入端d 端口缺少buffer相连时,尽管时钟信号clk为0,靴值地冲噪声足够大时也会引起锁存器的错误导通。对于PMOS,类似的靴值上冲噪声足够大时也会引起它的错误导通。

四、噪声数据库

        噪声模型噪声库是完成信号完整性分析的基础。不同的EDA工具提供商,在建立噪声模型和噪声库时,存在一定的差异。在0. 18um及以上工艺,噪声问题并不严重,用户一般用厂家提供的时序库. lib以及晶体管的SPICE模型,定义电压及电压波动值,通过make_cdb仿真建立cdB噪声库,分析噪声问题。在0. 18um及以下工艺,很多厂家都提供了相应EDA工具所使用的噪声模型和与其相对应的库。

1、噪声模型

        噪声模型是建立噪声库时所用的模型,模型决定了噪声分析的准确性。噪声模型分为标准单元噪声模型以及互连线的噪声模型 。

        单元噪声模型是以标准单元为基础,其建立的思想是以最简单的方法模拟晶体管的工作特性。晶体管的传统模型有BSIM3和BSIM4模型以及工业界通用的SPICE模型,单元噪声模型的准确性一般与SPICE模型比较衡量。

        用户可以自定义噪声(UDN,user-defined noise)模型,它是在数模混合设计中,针对于模拟的器件提出的一种模型。它只有逻辑单元层次(cell-level view)上的(模型)视窗,没有晶体管级的视窗。它包含输人输出管脚的电容、输入噪声容限和非线型驱动输出传输曲线。

2、噪声数据库

        目前工业界的噪声数据库主要有两个,一是Cadence公司在2000年推出并应用广泛的•cdB库,另一个是Synopsys公司在2006年推出基于CCSM的外延. lib库。

3、互连线噪声模型

        做噪声分析也要做互连线的RC提取,尤其要关注互连线的耦合电容所产生的耦合噪声电压信号的大小。

        基于噪声数据库的信号完整性分析还有许多内容,这里仅简单介绍,有兴趣可以查找资料深入了解。

        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/253702.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CMOS图像传感器——TDI CIS

一、面阵与线阵图像传感器 人们在日常生活中见到的相机大多基于普通的面阵图像传感器,这种相机多用来拍摄静止的物体。即使用它们來拍摄运动的物体,也仅仅是缩短了相邻两次拍摄的时间间隔,无需对所拍摄图像进行额外操作,对物体的运动方向和速度也没有限定条件。 除此之外,…

做好数据挖掘模型的9条经验总结

爱数据学习社 welcome数据挖掘是利用业务知识从数据中发现和解释知识(或称为模式)的过程,这种知识是以自然或者人工形式创造的新知识。当前的数据挖掘形式,是在20世纪90年代实践领域诞生的,是在集成数据挖掘算法平台发展的支撑下适合商业分析…

数字后端——低功耗设计物理实施

一、低功耗设计方案综述 为了实现集成电路的低功耗设计目标,我们需要在系统设计阶段就采用低功耗设计方案,因为随着设计流程的逐步推进,到了芯片设计实现阶段,降低芯片功耗的方法将越来越少,可节省功耗的百分比将不断下…

H5项目开发分享——用Canvas合成文字

以前曾用Canvas合成、裁剪、图片等《用H5中的Canvas等技术制作海报》。这次用Canvas来画文字。 下图中“老王考到驾照后”这几个字是画在Canvas上的,与在PS中打入的字非常接近,毫无违和感。 前面一段时间也在研读JavaScript设计模式相关的知识&#xff0…

CMOS图像传感器——SNR计算

图像质量评价在计算机视觉,人工智能,高清视频传输上面有很广泛的应用。目前,图像质量评价主要分为三个方向,有参考图像的质量评价,半参考的图像质量评价,以及无参考的图像质量评价。许多时候,我们利用CIS采集的RAW DATA本身就是含噪信号,因为我们往往不知道感兴趣的像素…

Java this 关键字的用法

this 关键字的用法 this 在类中就是代表当前对象,可以通过 this 关键字完成当前 对象的成员属性、成员方法和构造方法的调用。 那么何时用 this? 当在定义类中的方法时,如果需要调用该类对象,就可以用 this 来表示这个对象。也就是说&#x…

数字图像处理——中值滤波及其改进算法

一、算法介绍 中值滤波器是非线性滤波器的一个例子,它在保留图像特征方面非常有效。 但是,滤波器的窗口大小直接影响中值滤波器的性能。 较小的窗口保留了特征,但会导致噪声抑制的减少。 在较大窗口的情况下,噪声抑制很高&#xf…

环信快速集成,以及实际集成中遇到的坑

一.pod集成遇到的问题 1.直接pod 安装 pod EaseUI, :git > https://github.com/easemob/easeui-ios-hyphenate-cocoapods.git 在这个过程中,如果你pod已经安装了sdwebimage,mjrefresh等他自身包含的三方,就需要在你的podfile里面把这个给删…

用NPOI从DataBase到Excel '2

NPOI的C# Helper代码2 1 public static MemoryStream ExportXls(DataTable dt)2 {3 HSSFWorkbook wk new HSSFWorkbook();4 ISheet sheet null;5 6 string sheetName "Sheet1";7 if (!string.Is…

CMOS图像传感器——噪声模型

由于CMOS图像传感噪声的复杂性和不可控性,学者们一直在寻求一种能对其比较精确表的噪声模型。在图像降噪领域,为了降低算法设计的复杂度,人们普遍采用基于信道相关噪声的模型(即加性噪声),但其缺点就是不能精确地表示传感器的噪声。于是Hirakawa提出了一 种精确CMOS传感器…

TCp传输粘包问题

解决TCP网络传输“粘包”问题 当前在网络传输应用中,广泛采用的是TCP/IP通信协议及其标准的socket应用开发编程接口(API)。TCP/IP传输层有两个并列的协 议:TCP和UDP。其中TCP(transport control protocol,传…

AtomicIntegerArray和AtomicIntegerFieldUpdater

2019独角兽企业重金招聘Python工程师标准>>> AtomicIntegerArray 对int数组中元素的操作不是原子性的,所以存在并发操作时,我们应该使用AtomicIntegerArray类来代替int数组。 下面是验证演示代码: public class AtomicIntegerArra…

CMOS图像传感器——高动态范围

动态范围是CMOS 图像传感器中很重要的一项评价指标。动态范围指示了CMOS 图像传感器能够在同一帧图像中同时探测到的最大光强信号和最小光强信号的范围。动态范围通常用dB 形式来表示,其计算公式如下 其中Pmax 和Pmin 分别是最大非饱和光强与最小可探测光强。对于线性…

《Linux内核设计与实现》读书笔记(七)- 中断处理

中断处理一般不是纯软件来实现的,需要硬件的支持。通过对中断的学习有助于更深入的了解系统的一些底层原理,特别是驱动程序的开发。 主要内容: 什么是中断中断类型中断相关函数中断处理机制中断控制方法总结1. 什么是中断 为了提高CPU和外围硬…

入门视频采集与处理(学会分析YUV数据)

标签:分析码流 视频采集 RGB YUV 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://ticktick.blog.51cto.com/823160/555791做视频采集与处理,自然少不了要学会分析…

数字后端——时序验证

时序验证则是采用时序分析等方法验证设计是否满足时序收敛,这些时序检验工作包括反向标定(back-annotation)、时序与功耗的检验、时序与信号完整性的检验和当代低功耗纳米先进设计中的“多模式多端角”(MMMC,multi-mode multi-comer)检验。 一、反向标定…

Hadoop系列(三)MapReduce Job的几种提交运行模式

Job执行可以分为本地执行或者集群执行。hadoop集群安装部署在远程centos系统中。使用经典的WordCount代码为例。 1. 本地执行模式(本地为MacOS环境),无需启动远程的hadoop集群,本地job会提交给本地执行器LocalJobRunner去执行。 1…

常见视频接口介绍,VGA,YPbPr,DVI,HDMI,DisplayPort

1,VGA(D-SUB) 这种是显示器最常见的,用了很多年,色域空间是RGB,也就是红绿蓝,模拟信号,无音频 插头是15针的,实际所需的最小针数应该是5针,也就是RGB三色信号,水平…

芯片面积估计方法

一、概念 芯片面积的主要涵盖部分分为三部分 IO:芯片的信号及电源pad等Standard cell : 实现芯片的功能逻辑Macro block :第三方IP( PLL DAC POR Memory .etc )芯片面积估计就是通过目标工艺的库信息,设计的spec、以往设计的信息及&#xff…

WordPress开发之WP Custom Register Login插件试用

简介 WP Custom Register Login可以为你的WordPress网站前台增加注册、登录、找回密码的功能;你可以通过简码在任何页面上调用。此外,该插件还支持设置自动通过用户的电子邮件验证新帐户激活,自带算术验证码,有效防护垃圾注册。对…