首页/文章/ 详情

STA-0. 静态时序分析概述

1年前浏览761

您好,我在芯片后端领域工作有十年时间,负责过多颗SoC芯片顶层的STA的工作。从这一篇文章开始,我会尝试着系统性地去介绍STA,力争让这个领域的新人能有一份“读这一本就够了”的原理性材料,也希望让更多有经验的人了解STA的底层的逻辑。


静态时序分析(Static Timing Analysis, 以下统一简称STA)是验证数字集成电路时序是否合格的一种方法,其中需要进行大量的数字计算,需要依靠工具进行,但是我们必须了解其中的原理。在综合工具(DC/Genus 等),布局布线工具(ICC2/Innovus 等),时序分析工具(PrimeTime/Tempus 等)中都嵌入了不同的STA引擎,这些引擎往往在时间和精度方面有一些折衷,但是目的就是以尽量小的误差去模拟物理器件和绕线的SPICE模型,从而更接近芯片生产出来后真实的性能。


为了更好地理解STA,有必要提一下时序仿真,它是另外一种验证数字集成电路时序是否合格的方法。下面用一张表来对比一下这两者之间的区别:

  • 第一点是激励波形,STA是不需要的激励波形的,但是需要SDC(Synopsys Design Constraint,时序约束),后续的文章会具体介绍SDC的内容, 而时序仿真时严重依赖激励波形的;

  • 第二点是完整度,STA能够对数字电路中所有的时序路径进行全面的检查,而时序仿真在覆盖率上有一定限制;

  • 第三点是效率,STA的比较简单,速度更快,而生成仿真需要的激励,建立仿真环境可能费时费力;

  • 第四点是鲁棒性,STA能够考虑到电路中串扰噪声以及OCV(On Chip Violation, 片上偏差)的影响,提高芯片制成后的良率,而时序仿真做不到这一点。


特性

STA

时序仿真

激励波形

不需要输入激励波形,但需要SDC

与激励波形有关

完整度

能够对电路中所有的时序路径进行全面检查

覆盖率有一定限制

效率

简单,速度快

仿真费时,产生激励费力

鲁棒性

能够考虑到串扰噪声以及OCV的影响

没有这方面的考量


既然,STA在数字集成电路中如此不可或缺,那具体是由哪些人负责,又是做什么具体的工作呢?关于这个问题,在不同的公司各有不同,但是负责STA的人一般都会同时负责综合,生成SDC,标准单元工艺库的选择,时序签核(Timing Signoff)及相关标准的制定等等。他们需要对设计有一定了解,更加需要对工艺的时序特性有全面地掌握,在系统性能指标的定义时需要提供参考意见。作为芯片时序性能检查的最后的把关人,需要一定经验的积累,同时也需要敏锐发现并解决潜在新问题的能力。(有没有感觉像是招聘JD:)


当然,STA也有它的局限性,需要通过仿真进行交叉验证。下面简单列举几个方面:

  • STA针对的是数字电路,和模拟电路相关的路径无法通过STA验证

  • 数字电路中产生的不定态在STA不会验证,这个需要通过仿真进行仔细检查确认

  • 电路中不同状态机之间的同步需求不能通过STA来验证

  • 对时钟生成电路的验证无法通过STA完成

  • 时序约束中会有例外情况,需要人工处理


历史文章推荐:

相关文章,在仿真秀官网搜索:

为什么PrimeTime修timing时,带physical aware还不如不带physical aware

关于Virtual clock

为什么异步时钟不要设false path


来源:白话IC
电路芯片材料
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-09-07
最近编辑:1年前
白山头
签名征集中
获赞 12粉丝 3文章 179课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈