什么是variation
统计一组数据的平均数据和距离平均数据的分布距离和分布概率,例如常见的正态分布(高斯分布)。
影响 IC 性能的主要变化来源是工艺、电压和温度,统称为 PVT。提供极端性能(最小延迟、最大延迟、典型延迟等)的 PVT 组合是一个球形工艺角(global corner)。在这个球形工艺角内,蚀刻工艺、掩模对准和光学邻近校正等局部变化的参数可能会显著改变性能。这些局部工艺变化参数会导致晶体管沟道长度、宽度、阈值电压和氧化层厚度的变化,进而表现为单一工艺角的单元时序弧的delay和slew的变化。
什么是AOCV(SBOCV)
AOCV 代表 Advanced OCV,SBOCV 代表 Stage Based OCV。为了阐明对 AOCV 的必要性,请考虑单个std cell和多个std cell的timing path的两种情况。与路径中的std cell数量多的path相比,孤立的单个std cell表现出更大的延迟变化。这是因为一些随机偏差效应倾向于在std cell group中相互抵消。例如,如果一个反相器显示出 5% 的性能变化,那么连接在一起的 10 个反相器将显示出远小于 50% 的变化。在 STA 中使用一个derate数字(如所有std cell的 OCV)会导致额外的悲观。AOCV 已被证明可以降低 65nm 及以下节点的悲观量,并且是 40nm 及以下节点的主流sign-off方法的一部分。
AOCV 表包含用于上升和下降转换的data path, clock path, early path和late paths的单元的derate numbers。
以下是 AOCV 表的一个示例:
上表显示了 rf_type(上升或下降,案例中是上升)、derate_type(erlay或late,案例中是late)、路径(data path或clock path,案例中是data path)和 object_type(lib_cell 或net,案例中是lib_cell)的关键字和值。最后两个索引深度(depth)和table表示path的的阶段深度和path的适用derate值。
下图显示了early derate(红色)和late derate(绿色)数字(在 y 轴上)作为 No(path 级数) 的函数。级数(在 x 轴上)。请注意,随着级数的增加,这两个数字都趋于收敛到 1.0。路径中的级数更多,它表现出随机偏差消除。
AOCV 在 40nm 技术节点以下表现不佳,为了改善这一点,我们需要进一步改善时序悲观量。AOCV 中使用的基于距离和级数的delay derate适用于 40nm 以上的技术节点,但对于40nm以下节点,我们需要进一步改进。为了解决这些问题,已经开发了POCV。POCV在20nm及以下的技术节点非常有效。
POCV 是一种比 OCV 和 AOCV 更现实的方法。此方法不使用基于距离和级数的delay derate。它使用delay sigma来模拟std cell的delay变化。POCV 优于 AOCV 的一个优势还在于它减少了基于GBA和基于PBA)之间的悲观量。
什么是正态分布
正态分布是一个在数学、物理及工程等领域都非常重要的概率分布,在统计学的许多方面有着重大的影响力。若随机变量X服从一个数学期望为μ、方差为σ2的正态分布,记为N(μ,σ2)。其概率密度函数为正态分布的期望值μ决定了其位置,其标准差σ决定了分布的幅度。当μ = 0,σ = 1时的正态分布是标准正态分布。
1、概率密度曲线在均值处达到最大,并且对称;
2、一旦均值和标准差确定,正态分布曲线也就确定;
3、当X的取值向横轴左右两个方向无限延伸时,曲线的两个尾端也无限渐近横轴,理论上永远不会与之相交;
4、正态随机变量在特定区间上的取值概率由正态曲线下的面积给出,而且其曲线下的总面积等于1 ;
5、均值可取实数轴上的任意数值,决定正态曲线的具体位置;标准差决定曲线的“陡峭”或“扁平”程度:标准差越大,正态曲线越扁平;标准差越小,正态曲线越陡峭。这是因为,标准差越小,意味着大多数变量值离均数的距离越短,因此大多数值都紧密地聚集在均数周围,图形所能覆盖的变量值就少些(比如1±0.1涵盖[0.9,1.1]),于是都挤在一块,图形上呈现瘦高型。
相反,标准差越大,数据跨度就比较大,分散程度大,所覆盖的变量值就越多(比如1±0.5涵盖[0.5,1.5]),图形呈现“矮胖型”。我们可以对照下图直观地看一下,图中黄色曲线为A,蓝色曲线为B,紫红色曲线为C。如图,我们可以看到均数的大小决定了曲线的位置,标准差的大小决定了曲线的胖瘦。A和B的均值一样,但标准差不同,所以形状不同,根据我们的描述,图形越瘦高,标准差越小,图形越扁平,标准差越大。确实如此,图中B的标准差是1/2,小于A的标准差1。
上一段落和图形来自知乎用户“小河”,原文链接:https://zhuanlan.zhihu.com/p/128809461。
这一段是我自己写的。正态分布的函数曲线对X轴求积分的和为1,就是概率函数的和。方差σ越小,概率分布越集中。如之前在SOCV部分的推断,当样本量足够大的时候,cell delay的平均delay会恢复到没有ocv的正常delay。所以如果用统计学的方法来更加精准的考虑ocv对cell delay的影响,找到合适的方差σ是很重要的。
什么是POCV
SOCV是Cadence提出的,和POCV类似。
POCV 代表 Parametric On-Chip Variation。POCV 的提出是为了解决 AOCV/SBOCV 在颗粒度、准确性、通用路径悲观去除和半循环路径方面的缺点。POCV 消除了对级数、路径类型和corner delay的需求,以在特征化阶段找到delay derate。它将这些步骤推进到静态时序分析中,从而解决了 AOCV/SBOCV 的缺点。POCV 已被证明可以降低 20nm 及以下节点的悲观量,并且是 16nm 及以下节点的sign-off方法的一部分。
POCV提供了统计优学势,而没有扩展statistical library characterization的开销。在 POCV 中,不是对std cell应用特定的delay derate,而是根据std cell的延迟变化方差 (σ) 计算std cell延迟。在 POCV 中,假设std cell的正态延迟值遵循正态分布曲线。下图显示了数据与平均值的正态分布曲线和标准偏差的示例。
在正态分布中,68% 的数据在 1σ 范围内,95% 的数据在 2σ 范围内,99.7% 的数据在 3σ 范围内。
POCV 偏差的信息以 LVF 格式直接提供给库本身。在 LVF 格式中,有两个索引用于input transition,另一个用于output load。POCV LVF 格式的示例如下所示。
通常 index-1 表示input transition,index-2 表示output load。如果设计中同时存在这两种数据类型,则默认情况下,具有单个 POCV 系数的文件具有比 POCV 转换加载表或 LVF 格式文件更高的优先级。
https://teamvlsi.com/2020/07/ocv-ocv-and-pocv-in-vlsi-comparative.html
https://www.parpath.com/blog/variation-blog/comparing-aocv-to-pocv