3-标准单元库

时序库概述

模型:

包含信息:库名、查找表、各参数单位

非线性延迟模型

延迟模型

以反相器为例,主要有两种延迟特征:

  • Tr: output rist delay
  • Tf: output fall delay

反相器的延迟主要取决与两个因素:

  • output load,指的是负载电容,负载电容越大,延迟也越大
  • transition time of the signal at the input,转化时间越大,延迟也越大

非线性延迟模型

非线性模型使用一个二维查找表指定延迟,如下图中的index1和index2,这两个是查找表的索引,查找表中会包含不同路径、上升或下降转换等不同的延迟信息。

上图是反相器输出端的延迟信息,可以看到cell_rise和cell_fall是两个独立的模型。

如果坐标并不在查找表中,应该怎么办呢?

实际参数是连续的,而查找表是离散的,所以这种情况肯定会发生的。我们可以将查找表映射到空间中,然后通过高斯消元法计算。某一点的延时,可以使用周围的四个点求解。

Slew Threshold and Slew Derating

在老工艺中,翻转域值会定为10%和90%,而随着工艺进步,会将域值设定到30%和70%。实际值沿用30%-70%,而库使用10%-90%,实际值范围只有一半,如果想得到实际值,那么就需要乘以slew_derate_from_library : 0.5 (70-30)/(90-10)

总而言之,库到实际值需要乘以derate

在自己K库的时候会用到这个参数,在低功耗等场景下,在原有库上做拓展,还要进行晶体管级仿真。

时序模型

组合逻辑

以二输入与门为例,两条timing arcs都是positive_unate,因此input pin rise对应output rise,反之相同。

会有四个查找表模型来指定延迟:

时序单元

时序单元的路径相比组合逻辑更加复杂。

建立时间:

保持时间:

CK->Q:

线载模型

分布式模型

线载模型,也使用查找表

若线长不在库的查找表中时,使用slop参数可以求解。