Advertisement

为什么先进工艺需要check那么多corner?

阅读量:

随着工艺技术的进步越高,其制造过程中的偏差也随之变得更为显著,从而直接造成了大量 quality corners 的产生. 具体而言, rc corners 包括但不限于以下几种: rcworst、cworst、rcbes 和 cbest 情况. 此外,部分制造厂还会对 rc 的取值范围进行规范,例如 cworst_T 型别采用的是 1.5 σ 以内的取值范围.

此外

因此,在新型工艺下,RC角的数量会有所增加;同时结合温度反转效应的影响,则使得signoff角较旧工艺而言要多出许多。另一方面我们也会注意到hold型signoff角相较于setup型要超出不少这一现象的存在原因是什么?

该方法的实现条件为setup不满足的情况下,在芯片设计中通常会采取降频处理可以使芯片正常运行,并且在设计过程中我们通常会将clock频率设置偏高以预留足够的安全余量。然而,在实际应用中若出现hold约束不满足的情况,则缺乏有效的修复手段。因此,在进行系统测试时应当尽可能覆盖所有可能的工作模式并应在尽可能多的边界条件下进行hold约束验证

基于上述论述,在分析ffcbest hold check满足情况的基础上,请问在这种情况下是否有必要进一步考察ffcbest ffcworst?

深入理解相关问题,可从hold check公式出发进行分析:时序松弛量等于总发射时钟延迟与数据路径延迟之和减去捕获时钟延迟及Hold Check项。

为了便于大家理解,请举一个极端的例子。假设launch clock path delay和launch clock data path delay均为零,则capture clock path delay则显著较大。

对于hold slack的计算式为:launch clock path delay + data path delay - capture_clock_path_delay = -capture_clock_path_delay。可以看出,在这种情况下,捕获器时序延迟越大,则hold slack越难以满足要求。显然可以看出,在最坏情况(ffcworst)下时序延迟值更大。因此可以得出结论:在这种特殊情况下,ffcbest hold无法覆盖住ffcworst的情况。

然而上文所举的例子过于极端化了情况,请看下面另一个具体实例:假设在 launch clock path data path中主要表现为cell延迟,在 capture clock path 的主要延迟则源于net延迟。在此情境下, ffcworst方案下的 capture clock path 延迟必然超过ffcbest方案,并由此引发在ff cworst方案下的hold操作变得更加困难

非常复杂的是芯片的生产制造及使用环境。为了确保不同体质类型的芯片能够在各个使用场景下均能正常运行。我们应尽量多地满足timing要求在各个角落,并以此增强芯片稳定运行的能力。

#小编是一名经验丰富的数字后端工程师,在编程领域有深厚的造诣。他对脚本编写和流程优化有着独到见解,并致力于为用户提供编程相关问题的解答与支持。如需了解更多,请访问星球芯冰乐获取更多知识干货分享与答疑服务。

全部评论 (0)

还没有任何评论哟~