微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > 求助一个dc或pt计算cell delay/transition的问题

求助一个dc或pt计算cell delay/transition的问题

时间:10-02 整理:3721RD 点击:

dc或者pt计算cell delaycell输出的transition的时候,根据的是input的trans和output的load。
问题
1.如果一个block,没有定义任何input信号的trans,值定义了input delay。那么block内部的第一个cell的delay和trans是不是就计算的不准确?同时,因为第一个cell的输出trans不准,会因此影响到后续所有cell的trans和delay?
2.如果使用set_driving_cell定义了input端口的驱动能力时,那么有些书上说,这个时候的input端口的trans和delay可以准确计算。我怀疑的是,driving_cell就是用lib里面的cell做驱动。但是这些cell的输出trans和delay都是根据这个cell的input trans和output load来确定。可是设计时并没有做这样的定义,那么这个set_driving_cell是如何准确计算的?

在线等,希望大家积极讨论。

1. 第一个cell不准,后续的基本是准的。因为transition过一个cell就恢复了。
2. 你仔细man set_driving_cell,可以指定所用cell的input trans,若不指定,则是0。至于load,端口所连cell即是。


非常感谢你的解答。至于第一个问题,我还有点疑惑
1.假设一个block的输入信号是A。约束没有给A信号加任何条件,那么A到其后的第一个cell B的输出trans就是一个不准的,原因是因为cell B的输出trans由其输入信号trans和输出load决定。但是我看你的回复的意思是说,cell B的输出trans会准,请问是这样么?能说明下原因么?
2.假设cell B的输出trans不准,那么B cell的输出trans就会影响到B后面的cell C的输出trans么?

在线等,希望大家积极讨论。

求解答。谢谢

再顶上去,求解答。

我也遇到了同样的问题,都说set_driving_cell好,可是我觉得这也都是假的啊,通过driving cell出来后的delay 和transition也是不准的数值啊,怎么可以拿来用呢?而且这个driving cell的选取也是个问题啊

lz现在弄清楚没啊?能给我也科普科普吗?

会不会第一个cell做外插

第一个set_driving_cell应该是虚拟一个外插,但实际没有的cell,这个命令可以选择driving_cell input pins的trans。如果估算的trans和实际的trans很closed。自然可以很好的完成时序计算,贴近实际。
但是如果这个trans估计不准,是不是说所有的delay计算都会一级一级的错误下去?这个是我比较关心的。因为平时sdc里面也就是简单的set_input_transition或者set_driving_cell。
请高手指导了。



我的意思是如果你没有设trans,我觉得default会是0,STA工具会根据tran=0,load_cap=第一个cell的input cap做外插(因为trans的index最小比如说1p,0在它的范围外)根据这个值据算出下一个cell的trans,这个trans肯定会在index范围里,所以开始做内插。加set_driving_cell同理,只是把这一步提前了一级。
以上是我对STA的理解

你说的NLDM的外插么?意思是说出现一个trans或者cap load不在table里面,然后做一个外插计算?

恩 仅是个人理解

你可以做个试验嘛,自己手动算一下外插算的output trans和DC报的一不一样

可以做个试验。
我的主要的目的是希望了解,是否说,如果trans用ideal的情况,即0ps 的trans,即使在外插NLDM计算时,第一个cell输出的trans都是与实际不符合的?从而导致所有后续的cell一级一级的trans计算错误,并且一级级的cell delay也会与实际有偏差,整个设计的时序分析就不会准确?
为了解决这个问题,我们在做约束是是不是最好将trans的设置的悲观些?

有道理,补充一下transition过几个cell后就会稳定了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top