STA分析(六) cross talk and noise
在深亚微米技术(deep submicron)中,关于crosstalk和noise对design的signal integrate的影响越来越大。主要表现在glitch和对delay的影响。
1)metal layers越来越多;2)metal wire变得越来越薄而细;3)单位晶圆上的cells越来越多;4)供应电压越来越小,留给noise的margin越来越少。
2)时钟速率越来越快。
在分析crosstalk时,其中受影响的signal叫做victim。影响别的signal的叫做aggressors。对整个design的影响主要表现在带来glitch和影响的delay。
主要因为coupling capacitance,而使得信号之间相互影响。
首先讨论glitch:影响产生的glitch的大小(magnitude)的因素。
1)coupling capacitance越大,glitch的magnitude越大。
2)aggressors net的drive strength越大,the slew faster,glitch的magnitude越大。
3)grounded capacitance越小,glitch的magnitude越大。
4)victim net的driving strength越小,glitch的magnitude越大。
glitch的四种类型:positive/rise glitch在victim net为0时,negative/fall glitch在victim为1时,
overshoot glitch在victim为1,aggressor rise时,undershoot glitch在victim为0,aggressor fall时。
glitch的大小根据lib中的grounded capacitance,coupling capacitance,aggressors net和victim net的驱动能力来计算。
针对glitch的分析,有DC Threshold和ACThreshold两种,前者只分析glitch的magnitude,而后者还会分析glitch的width和fanout output load。
Models for DC margin:只要glitch的level小于VILmax,大于VIHmin即可。
Models for AC margin:1)只要glitch的width小于cell路径中的delay,这个glitch就不会对design有影响,不会传播下去。
2)只要output capacitance足够大,glitch也不会传递下去,不过这种方式本身delay很大。
在多个aggressors nets时,在同一个产生最大glitch的timing window下,分别计算glitch,然后取均方根RMS。
但是此时的多个aggressor,是与功能相关的,比如SCAN的CLK与正常logic的CLK是不能共存的,就不能算在一起。
Crosstalk Delay:由于对coupling capacitance的充放电,crosstalk会影响cell和interconnect本身的delay。
1)aggressor net steady:此时没有crosstalk,victim net的变化是正常的RC延时。
2)aggressor switching in same direction:此时因为coupling cap一般小于grouded cap,所以delay会变小。称为negative delay。
3)aggressor switching in oppo direction:此时delay会变大。称为positive crosstalk delay。
在分析crosstalk delay时,worst positive delay 和 worst negative delay分别计算rise/fall edge。
所以会有四种:positive rise delay,negative rise delay,positive rise delay,negative fall delay。
在多个aggressors nets时,在同一个产生最大delay的timing window下,分别计算delay,然后取均方根RMS。
但是此时的多个aggressor,是与功能相关的,比如SCAN的CLK与正常logic的CLK是不能共存的,就不能算在一起。
在STA分析时,worst condition for setup check是:launch clock path和data path有positive delay;
capture的clock path有negative delay。
worst condition for hold check是:launch clock path和data path有negative delay;
capture的clock path有positive delay。
对于hold check,其中因为crosstalk带来的delay,clock因为是同一个时钟,所以launch和capture的clock path不应有区别。所以在该worst condiion
下,The clock path is non_common。而setup因为隔了一个时钟,所以不存在这个情况。
在大型design中,对于crosstalk的分析会比较耗时。1)其中coupling cap较小时,可以忽略计算。
2)在多个aggressor时,将他们等效为一个virtual aggressor。
如何避免critical net的crosstalk。1)在同一metal layer中,critical net附近加入shield net(直接连接到vss/vdd)。
2)增加wire之间的space。
STA分析(六) cross talk and noise的更多相关文章
- 手机自动化测试:Appium源码分析之跟踪代码分析六
手机自动化测试:Appium源码分析之跟踪代码分析六 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.poptest推出手机自 ...
- STA分析(七) sdc
STA分析前的环境设置,包括:setup clocks,specifying IO characteristics 1)定义一个master clock:create_clock -name .. - ...
- STA分析(一) setup and hold
timing check可以分为Dynamic Timing Analysis(Post_sim)和Static Timing Analysis STA:可以分析的很全面:仿真速度也很快:可以分析控制 ...
- ABP源码分析六:依赖注入的实现
ABP的依赖注入的实现有一个本质两个途径:1.本质上是依赖于Castle这个老牌依赖注入的框架.2.一种实现途径是通过实现IConventionalDependencyRegistrar的实例定义注入 ...
- Duilib源码分析(六)整体流程
在<Duilib源码分析(一)整体框架>.<Duilib源码分析(二)控件构造器—CDialogBuilder>以及<Duilib源码分析(三)XML解析器—CMarku ...
- docker 源码分析 六(基于1.8.2版本),Docker run启动过程
上一篇大致了解了docker 容器的创建过程,其实主要还是从文件系统的视角分析了创建一个容器时需要得建立 RootFS,建立volumes等步骤:本章来分析一下建立好一个容器后,将这个容器运行起来的过 ...
- phpcms 源码分析六:index文件
这次是逆雪寒对index.php的分析: /* [/php] [ 本帖最后由 逆雪寒 于 2007-12-25 16:12 编辑 ] 尽量每天都有新的东西每天都能进一小步 现在开始讲 index.ph ...
- motan源码分析六:客户端与服务器的通信层分析
本章将分析motan的序列化和底层通信相关部分的代码. 1.在上一章中,有一个getrefers的操作,来获取所有服务器的引用,每个服务器的引用都是由DefaultRpcReferer来创建的 pub ...
- STA分析(五) parastics
互联线的寄生参数 一般一个cell或者block的连接pin就叫做一个net.在物理实现的时候,一条net可能会穿过几层metal,因为每个metal层的电阻,电容值都不一样.所以,在分析 net的寄 ...
随机推荐
- jpa中时间戳格式应该用哪种类型
遇到个bug,数据库时间存储用了datetime,但是下面的java jpa代码,查询回来,却只有日期. String innerSql = getInnerQuery(departmentId, k ...
- ELK系列三:Elasticsearch的简单使用和配置文件简介
1.定义模板创建索引: 首先定义好一个模板的例子 { "order":14, "template":"ids-1", "state ...
- C语言如何产生随机数
1.基本函数 在C语言中取随机数所需要的函数是: int rand(void); void srand(unsigned int n); rand()函数和srand()函数被声明在头文件stdlib ...
- How arduino IDE works?
test.ino void setup() { pinMode(,OUTPUT); } void loop() { digitalWrite(,HIGH); delay(); digitalWrite ...
- Unity性能优化之Draw Call(转)
Unity(或者说基本所有图形引擎)生成一帧画面的处理过程大致可以这样简化描述:引擎首先经过简单的可见性测试,确定摄像机可以看到的物体,然后把这些物体的顶点(包括本地位置.法线.UV等),索引(顶点如 ...
- 专访|HPE软件部中国区总经理李时:HPE引领IT战略新形态
2016年7月22日,「HPE&msup软件技术开放日」将在上海举办,msup携手HPE揭秘全球测试中心背后的12条技术实践. 李时:HPE软件部中国区总经理,将在本次开放日带来<HP ...
- PyQT5-QPushButton切换按钮
""" QPushButton:切换按钮就是QPsuhButton的一种特殊模式,他有两种状态:按下和未按下.我们在点击的时候切换两种状态,有很多场景会用到这个功能 Au ...
- CodeForces - 950D A Leapfrog in the Array 玄学题
题意:n个数1~n(n<=1e18)依次放在一个数组中,第i个数位置为2i-1,其它地方是空的.现在重复以下操作:将最右边的数放到离其左边最近的空的位置,直到所有数移到前一半的位置中.有q< ...
- android Instrumentation 转载
Android提供了一系列强大的测试工具,它针对Android的环境,扩展了业内标准的JUnit测试框架.尽管你可以使用JUnit测试Android工程,但Android工具允许你为应用程序的各个 ...
- JS 防止表单重复提交的方法
第一种:用flag标识,下面的代码设置checkSubmitFlg标志: <script language="”JavaScript”"> var checkSubmi ...