Net Delay在整个路径延时的占比是什么情况呢?

绕线延时(net delay)是怎么计算出来的呢?net delay在整个路径延时(path delay)的占比又是什么情况呢?针对关键路径,工具会如何降低net delay呢?下面我们就来逐步阐述。
net delay占比多高?
path delay = cell delay + net delay
你可能好奇net delay所占的比重如何?这个跟工艺和设计是相关的,但是总体上的趋势是,随着工艺尺寸缩小,net delay占比越来越高。下面是net delay占比的分布图,统计对象是基于12nm工艺的一个soc设计中的100万条路径。可以看出,很大一部分的path中的net delay占比超过20%。
net delay 计算公式
为了计算net delay,我们需要先提取出电容和电阻,如果已经有真实的绕线(route)或者预估的绕线(global route),那么只需要根据route在不同层(layer)的分布就可以提取出相对准确的寄生参数值,下图是在log中显示每一层的layer的单位电阻和电容值的实例,这些值的源头是foundary提供 tluplus /itf文件(本文以icc为例,其他eda工具会有较大差异,具体在pnr教程中会讲解):
但是,问题来了,在综合(synthesis)阶段,如果没有绕线的长度信息,也没有stdcell的位置信息,是怎么得到电阻电容值的呢?这就是wire load model在起作用了。
wire load model
下图是标准单元库.lib中定义的一种wire load model,名字是“zerowireload”,它是根据net的扇出(fanout)来预估长度(length),然后再根据所定义的单位长度的电阻(0.00001),以及单位长度电容(1)来计算net的寄生rc参数。不过图中的例子比较理想化,都是设成了0,完全不考虑net delay。在实际项目中,必要时,可以自己定义wire load model,尽量在综合阶段将net delay的影响考虑进去。
elmore delay 模型
既然已经有了寄生的rc信息,那怎么计算net delay呢?
对于单输入单输出的net,假设不考虑net之间的耦合电容(即不考虑噪声的影响),并且也不存在电阻性的反馈回路的情况,可以用elmore delay模型来计算net delay,如下图:
根据elmore delay公式,各节点的delay可以表示为:
如果把绕线用分布式rc模型来表示,如下图:
那么,net delay可以进一步化简为:
原因是cwire只能往前看到rwire/2的电阻,cload往前能看到rwire的电阻。
awe模型和arnoldi模型
awe(asymptotic waveform evaluation)和arnoldi都是是更高级的对rlc网络延时进行瞬态响应匹配近似的方法。当然,awe本身也有一阶模型,结果与elmore类似,但是误差也较大(与spice模型相比),可能达到74%,二阶awe模型的误差可以减少到22%,四阶awe的近似结果和spice模型的结果误差已经很小了。awe模型的优点是容易实现,缺点是数值不稳定,而arnoldi模型会更加稳健,在目前eda工具postroute阶段应用比较多。
net delay的优化
前面讲到net delay占整个path的比重很大一部分已经超过20%了,如何去优化这一部分net delay呢?
根据net delay的计算公式,减少r*c的值就能优化net delay。由于高层金属通常会比底层金属的单位长度rc更小,所以把路径上的net更多地绕在高层金属上,可以把关键路径优化得更好。具体到pnr工具的实现上,通常会有一个“layer promotion”的功能。
另外,对于高速的net,尤其是clock net,一般会特殊对待,给它们设置ndr(non-default-rule),让它们用更大的宽度(width)和间距(space),甚至加上shielding隔离它们,以保证这些高速的net不会被其它的net影响。当然设置ndr是有代价的,它们会占用更多的绕线资源,并不是越严格越好,常见的设置是,对clock net设置2倍宽度2倍间距(2w2s)的ndr。其实高速的net用更宽的rule还有一个dfm的原因,就是这些net的电子迁移(electro-migration,em)导致的绕线缺陷机率比普通net要高。在pnr教程中会详细介绍em,以及如何避免、修复em的违例的问题。
总结
对于net delay,需要了解它在整个path delay占的份量,熟悉wire load model,elmore delay,awe,arnoldi等概念。有些在后端的面试中也经常被问到。

搞一个grpc动态代理的想法,并初步实现
华为走出“黑屋子”背后:行业危机倒逼开放
2018年新能源汽车现状如何 国内外车企对比
3C数字钥匙技术规范解读
元宇宙虚拟房产价格被“炒上天”
Net Delay在整个路径延时的占比是什么情况呢?
Tsisen电动跑车!清华本科生58天造出真跑车
激光雷达初创企业Innoviz将借壳上市
这是一款实用的双面接触式电容压力传感器设计方案,拿走不谢
Linux系统真的很吃内存?
电子产品的命名有何逻辑 盘点那些「瞎命名」的数码产品
如何提高github访问速度
WTK6900H智能照明语音识别芯片方案
Cadence并购Forte Design Systems 强化高阶综合产品
中控智慧科技射频卡考勤机M300plus简介
VxWorks 6.8和Windows间的UDP网络通信
人工智能高速发展路上的基石有哪些
3-12V直流定时器电路
通用电阻器的原理及其分类
电磁阀的识别方法及应用电路