什么是IR/EM
IR压降(IR-Drop)
IR压降是指出现在集成电路中电源和地网络上电压下降或升高的一种现象。随着半导体工艺的演进金属互连线的宽度越来越窄,导致它的电阻值上升,所以在整个芯片范围内将存在一定的IR压降。IR压降的大小决定于从电源PAD到所计算的逻辑门单元之间的等效电阻的大小SoC设计中的每一个逻辑门单元的电流都会对设计中的其它逻辑门单元造成不同程度的IR压降。如果连接到金属连线上的逻辑门单元同时有翻转动作,那么因此而导致的IR压降将会很大。然而,设计中的某些部分的同时翻转又是非常重要的,例如时钟网络和它所驱动的寄存器,在一个同步设计中它们必须同时翻转。因此,一定程度的IR压降是不可避免的。
IR压降可能是局部或全局性的。当相邻位置一定数量的逻辑门单元同时有逻辑翻转动作时,就引起局部IR压降现象,而电源网格某一特定部分的电阻值特别高时,例如R14远远超出预计时,也会导致局部IR压降;当芯片某一区域内的逻辑动作导致其它区域的IR压降时,称之为全局现象。
IR压降问题的表现常常类似一些时序甚至可能是信号的完整性问题。如果芯片的全局IR压降过高,则逻辑门就有功能故障,使芯片彻底失效,尽管逻辑仿真显示设计是正确的。而局部IR压降比较敏感,它只在一些特定的条件下才可能发生,例如所有的总线数据同步进行翻转,因此芯片会间歇性的表现出一些功能故障。而IR压降比较普遍的影响就是降低了芯片的速度。试验表明,逻辑门单元上5%的IR压降将使正常的门速度降低15%。
天线效应
0.4um以上的工艺,我们一般不大会考虑天线效应。而采用0.4um以下的工艺就不得不考虑这个问题了。Normally the first way to fix antenna effect is changing metal layers. Insering diode is thelast way. P&R tools can handle this automatically.其实foundry提供的PAE ratio,只是一个经验值,是留了很大的margin的。即便你的设计有antenna violation,也可以tapeout的可通过插入二极管的方法来解决天线效应,这样当金属收集到电荷以后就通过二极管来放电,避免了对栅极的击穿。
天线效应主要涉及工艺过程中直接连在栅上的金属长度过长,容易积聚游离电荷,而对栅造成损害,因此在连接栅的metal1上变换metal2,我的看法是1 直接连接栅的金属长度减小,电荷积累减少 2 给电荷提供另一可能通路
打个简单的比方,在宏观世界里,广播、电视的信号,都是靠天线收集的,在我们芯片里,一条条长的金属线或者多晶硅(polysilicon)等导体,就象是一根根天线,当有游离的电荷时,这些“天线”便会将它们收集起来,天线越长,收集的电荷也就越多,当电荷足够多时,就会放电。
那么,哪里来的这么多的游离电荷呢?IC现代制程中经常使用的一种方法是离子刻蚀(plasma etching),这种方法就是将物质高度电离并保持一定的能量,然后将这种物质刻蚀在wafer上,从而形成某一层。理论上,打入wafer的离子总的对外电性应该是呈现中性的,也就是说正离子和负离子是成对出现,但在实际中,打入wafer的离子并不成对,这样,就产生了游离电荷。另外,离子注入(ion implanting)也可能导致电荷的聚集。可见,这种由工艺带来的影响我们是无法彻底消除的,但是,这种影响却是可以尽量减小的。
这些电要放到哪里去呢?我们知道,在CMOS工艺中,P型衬底是要接地的,如果这些收集了电荷的导体和衬底间有电气通路的话,那么这些电荷就会跑到衬底上去,将不会造成什么影响;如果这条通路不存在,这些电荷还是要放掉的,那么,在哪放电就会对哪里造成不可挽回的后果,一般来讲,最容易遭到伤害的地方就是gate oxide。
通常,我们用“antenna ratio”来衡量一颗芯片能发生“antenna effect”的几率。“antenna ratio”的定义是:构成所谓“天线”的导体(一般是metal)的面积与所相连的gate oxide的面积的比率。这个比率越大,就越容易发生antenna effect。这个值的界定与工艺和生产线有关,经验值是300:1。我们可以通过DRC来保证这个值。随着工艺技术的发展,gate的尺寸越来越小,metal的层数越来越多,发生antenna effect的可能性就越大,所以,在0.4um/DMSP/TMSP以上工艺,我们一般不大会考虑antenna effect,而在0.25um以下工艺,我们就不得不考虑这个问题了。
EM电迁移
金属电迁移问题用来表示导致芯片上金属互连线断裂、熔化等的一些失效原因。当电子流过金属线时,将同金属线的原子发生碰撞,碰撞导致金属的电阻增大,并且会发热。在一定时间内如果有大量的电子同金属原子发生碰撞,金属原子就会沿着电子的方向进行流动。这将会导致两个问题:第一,移动后的原子将在金属上留下一个空位,如果大量的原子被移动,则连线断开;第二,被移动的原子必须停在某一个地方,如果这些原子停在某个地方使别的金属连线短路,则芯片的逻辑功能就被改变,从而发生错误。
电迁移是一个长时间的损耗现象,常常表现出经过一段时间后芯片有时序或功能性错误。如果芯片中某一根连线是唯一的,那么当发生电迁移问题以后,会导致整个芯片的功能失效。如果一些连线本来就有冗余设计,例如电源网络,当发生电迁移问题后,其中的一部分连线会断开,而其它部分的连线就会承受较大的IR压降问题。如果因为电迁移而导致了线路间的短路,那整个芯片就失效.
Copy from:http://blog.sina.com.cn/s/blog_48424c820100x3f6.html
STA相关基本的名词
setup:在时钟到来之前,数据保持稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器。(Tlogic_min+Tclock_q_min >Tskew+Thold)(Tskew考虑时钟树向前偏斜的情况)
hold:在时钟到来之后,数据保持稳定不变的时间, 如果保持时间不够,数据同样不能被打入触发器。(Tclock>Tclock_q_max+Tlogic_max+Tseup+Tskew)(Tskew考虑时钟树向后偏斜的情况)
降频一般是可以解决setup violation的,但是如果出现hold violation, 如果负slack的值比较大,一般要修改设计或约束,如果负slack值较小,可以在P&R阶段通过insert buffer 来fix掉
recovery:有些类似于setup检查,是指撤销复位时,rst变到非复位状态的电平必须在clk之前一定的时间到来,可以保证clk在采样时,DFF处于非复位状态
removal:有些类似与hold检查,但又不完全相同,它是指复位时,rst在clk到来之后还需要维持的时间,否则会出现复位不成功
clock skew:clock在不同时序器件clk脚上的时间差异叫做clock skew
clock uncertainty:clock在时序器件clk脚上的不确定性,包括clock jitter和clock skew两部分的总和.
clock transition:clock信号的skew时间。分为上升沿时间和下降沿时间。
clock gating:指门控时钟。由于低功耗的要求,有些模块会停止工作。通过停掉clock减少这些模块的耗电.
clock jitter:clock源是芯片外部管脚引入或是内部PLL产生的。clock的每个周期时间都会有微小的偏差,这种偏差叫做clock jitter.
clock latency:clock源到时序器件的clk脚的延迟叫做clock latency.
clock tree:从一个clock源出发,clock网络经过多级buffer,到达每个时序器件的clk脚。为了保证从clock源到每个器件clk脚的延时相差不多,clock在布局布线时做成树形网络结构,叫做clock tree.
/flowchart.js/