在Innovus使用reportDelayCalculation报了一个时序弧的delay,怎么读这个报告呢?
什么是时序弧
时序弧(Timing Arc)是用于描述数字电路中信号传播和时序关系的基本概念。 时序弧定义了信号穿过逻辑门或网络的传播,以及两个相关联引脚(pin)之间的时序关系。它代表了一种不可分割的路径或者两个引脚之间的约束,能告知EDA工具去考虑这两个引脚之间的路径及时序关系。
按涉及对象可分为单元时序弧(cell arcs)和连线延时序弧(net arcs)。单元时序弧又分为基本时序弧和约束时序弧两类,基本时序弧主要用于组合逻辑单元的延时信息,包括组合时序弧、边沿时序弧等;约束时序弧包括建立时序弧、保持时序弧等。
按逻辑状态分类分为同向时序弧(positive unate arc)、反向时序弧(negative unate arc)和不定态时序弧(non-unate arc);同向时序弧表示输入和输出端信号变化方向一致;反向时序弧表示输入和输出端信号变化方向相反;不定态时序弧表示输入信号与输出信号变化方向无固定确定关系。
时序弧是静态时序分析的基础数据,用于描述两个节点的延时信息,可帮助工程师分析和验证电路是否满足时序要求,确保电路在各种工作条件下能正确稳定地运行,避免出现数据错误、竞争冒险等问题。
报告解读
上图为该时序弧的延迟报告节选。
第6行和第7行指出了这个时序弧的起点和终点分别是同一个实例单元的一个输入端(A1)和唯一的输出端(Z),该实例的instance name(实例名)为g30352。
第8行指出该时序弧对应的实例的reference name(参考单元名)为XOR4D2BWP240H8P57PDLVT。该单元是一个XOR4(四输入异或门),该器件具有四个输入端,一个输出端。Reference name中“D2”代表该单元的驱动等级(Driver level为2),其中数字“2”应该代表该单元并联的栅极数量是普通”D1“的XOR4的两倍。”BWP”代表tap-less library(此处tap就是well tap的意思),也就是说该单元中的P阱和N阱没有预先钳位到VDD(电源)或VSS(地)上,需要额外的tap cell,作用是防止闩锁效用。“240”代表该单元的cell height(高度)。“H8”代表栅极长度。“P57”代表poly pitch。“PD”的含义我猜测是“physical design(物理设计)”。“LVT”代表栅极阈值电压low threshold voltage(低阈值电压)。
第10行指出该时序弧的敏感性(arc sence)为反向时序弧(negative unate arc)。
第11行的arc condition指出该报告是其他三个输入端处在某种电平情况下报出的,其他三个管脚状态会影响delay的情况。
第12行指出该报告报处的是cell delay,不是net delay。
14行到21行报的是具体delay信息。“Rise”和“Fall”分别代表rise delay(输出从低电平变为高电平时的延迟)和fall delay(输出从高电平变为低电平时的延迟)。“mean”代表平均延迟。“ns”代表单位是纳秒。“3-sigma”代表使用的是SOCV的库,sigma是正太分布的标准差,3-sigma 代表OCV随机数据分布范围(正太分布中落在此区间概率为99.73%),3-sigma delay代表;SOCV库中单元延迟等于本身的cell delay(均值) +3 sigma(三倍标准差)。“Timing derate”代表设计环境中额外加的OCV derate,该设计中cell delay都是“1”。“Derated cell delay“就是加上额外的OCV derate之后的cell delay。
25行到30行报的是transition信息。计算方法参考cell delay。