0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

芯片后仿之SDF 3.0解析(三)

全栈芯片工程师 来源:全栈芯片工程师 2024-04-16 11:08 次阅读

本文接着解析SDF3.0的Timing Checks Entries、Timing Environment Entries两个部分。

(一)SDF3.0 Timing Checks主要分以下两种:

VCS/NC-Verilog仿真在timing violation时报出warning;

Timing Sign-Off工具报出timing check violations;

以时序分析工具Sign-Off为主,后仿为辅,SDF3.0 Timing Checks具体的类型如下:

Setup Timing Check

3a7f892a-fb1a-11ee-a297-92fbcf53809c.png

Hold Timing Check

3a9371ba-fb1a-11ee-a297-92fbcf53809c.png

SetupHold Timing Check

注意,示例中~reset必须为真(Ture),timing check才会进行,此外,12是建立时间要求,9.5是保持时间要求。

3a974114-fb1a-11ee-a297-92fbcf53809c.png

Recovery Timing Check

3aafcbda-fb1a-11ee-a297-92fbcf53809c.png

Removal Timing Check

3aba92a4-fb1a-11ee-a297-92fbcf53809c.png

Recovery/Removal Timing Check

示例中,recovery time为1.5个time unit,removal time为0.8个time unit。

3ac68988-fb1a-11ee-a297-92fbcf53809c.png

Skew Timing Check

3ad34830-fb1a-11ee-a297-92fbcf53809c.png

Width Timing Check

示例中,第一个minimum pulse width检查是posedge clock驱动的high phase;第二个minimum pulse width检查是negedge clock驱动的low phase;

3adfc3b2-fb1a-11ee-a297-92fbcf53809c.png

Period Timing Check

示例中,两个连续上升沿之间或两个连续下降沿之间的最小Cycle时间。

3af9813a-fb1a-11ee-a297-92fbcf53809c.png

No Change Timing Check

示例中,addr提前write下降沿4.5个time unit, addr晚于write上升沿3.5个time unit。

3b0c13b8-fb1a-11ee-a297-92fbcf53809c.png

(二)SDF3.0 Timing Environment Entries

SDF3.0 Timing Environment Entries分成Constraints与Timing Environment两个部分,首先解析Constraints。

1.Constraints

首先,SDF3.0 Timing Environment包括以下几类constraints:

a)Path Constraint 针对timing analysis中发现的关键路径添加的约束,PR工具可以利用这些约束优化physical design,该约束指定路径的最大延时; 如下图, y.z.i3是path起点,a.b.o1是path终点,25.1是起点和终点之间的maximum rise delay,15.6是起点和终点之间的maximum fall delay。

3b2cb384-fb1a-11ee-a297-92fbcf53809c.png

3b4322fe-fb1a-11ee-a297-92fbcf53809c.png

b)Period Constraint

时钟树上common clock到其驱动的leaf cell的路径的最大延迟约束。

3b4e11a0-fb1a-11ee-a297-92fbcf53809c.png

3b5ffa8c-fb1a-11ee-a297-92fbcf53809c.png

c)Sum Constraint

顾名思义,指的是几条路径的延时之和。示例中,约束两条net的延时之和小于67.3个time unit。

3b7239b8-fb1a-11ee-a297-92fbcf53809c.png

3b9670ee-fb1a-11ee-a297-92fbcf53809c.png

d)Skew Constraint

3ba9d1c0-fb1a-11ee-a297-92fbcf53809c.png

3bbc3888-fb1a-11ee-a297-92fbcf53809c.png

SDF3.0 Timing Environment Entries分成Constraints与Timing Environment两个部分,上文解析了Constraints,现在解析Timing Environment。Timing Environment包含以下4点约束

a)Arrival Time

3bc6508e-fb1a-11ee-a297-92fbcf53809c.png

b)Departure Time

3be1c3c8-fb1a-11ee-a297-92fbcf53809c.png

c)Slack Time

3bf5f7d0-fb1a-11ee-a297-92fbcf53809c.png

d)Waveform Specification

3c131b30-fb1a-11ee-a297-92fbcf53809c.png



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真
    +关注

    关注

    50

    文章

    4066

    浏览量

    133526
  • VCS
    VCS
    +关注

    关注

    0

    文章

    79

    浏览量

    9599
  • 时序分析
    +关注

    关注

    2

    文章

    127

    浏览量

    22563
  • 时钟树
    +关注

    关注

    0

    文章

    54

    浏览量

    10741

原文标题:芯片后仿之SDF 3.0解析(三)

文章出处:【微信号:全栈芯片工程师,微信公众号:全栈芯片工程师】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    仿出现了10种警告。。。求助

    仿出现了x态,前仿过了。现在还没带sdf呢,考虑是异常的warning,但我警告太多了。。。有的警告有一百多个,截图如下。各位大神帮忙看下,是哪种警告让我
    发表于 05-30 16:10

    运行实现时序仿真重新生成sdf文件

    / I1(0:0:0)(0:0:0))当我重新运行实现时序仿真时,该sdf文件将重新生成实际/先前的延迟约束。有没有办法保留编辑过的sdf文件并模拟而不重新生成它?提前致谢以上来自于谷歌翻译以下为原文
    发表于 11-07 11:30

    如何将PT产生的SDF文件反标设计进行仿真?

    RT,现在后端已把PR数据导出交付给了前端,我想问问,如何将PT产生的SDF文件反标设计进行仿真呢?现在知道需要将SDF文件引入到testbench里,所以问题很简单如何在testbench里加
    发表于 06-23 06:50

    怎样用calibreview格式提取参数做仿?有哪几种方法

    哪一种仿方法是正确的?您的意思是如果要把A、B、C这种cell放在一起仿真就必须要用到config吗?(C应该是calibre吧)顺便请教一下hierarchy-editor建立的这个config具体是干嘛用的?就只是为了数
    发表于 06-24 07:08

    SDF是什么?有何应用

    SDF-4.0隧道施工风机技术***隧道施工风机(SDF)系列
    发表于 09-02 09:09

    NodeMCU V3.0 Arduino开发点灯测试程序

    NodeMCU V3.0 Arduino开发点灯测试程序手头到了一个NodeMCU v3.0,3.0版本和2.0差别不大,只是v2.0串口芯片是CP2101,而v
    发表于 11-01 06:29

    STM8S全解析系列文章3---STM8S芯片配置,软件框架搭建

    STM8S全解析—系列文章3.STM8S芯片项目软件框架的搭建提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门pandas的使用提示:写完
    发表于 12-03 14:21 7次下载
    STM8S全<b class='flag-5'>解析</b><b class='flag-5'>之</b>系列文章3---STM8S<b class='flag-5'>芯片</b>配置,软件框架搭建

    ZigBee3.0数据包解析

    的,无法解析每个数据包含义,所以此抓包方法在ZigBee3.0开发过程的帮助不大。若采用第方抓包软件Ubiqua这个工具,就可以解析ZigBee3
    发表于 02-28 11:48 2661次阅读
    ZigBee<b class='flag-5'>3.0</b>数据包<b class='flag-5'>解析</b>

    Python在IC中的应用——文本处理

    SDF仿中往往生成的log中会有一些违例信息,Timing violation路径或者$setuphold违例,这些信息混杂在后仿log中。
    发表于 03-07 14:55 821次阅读

    什么是数字后仿?浅谈芯片数字后仿的那些事

    这是相对于数字前仿来说的。从概念上来说,数字验证包含两方面的内容,数字前仿和数字后仿
    的头像 发表于 03-15 14:51 9052次阅读

    解析SDF的Header Section信息与Cell Entries信息

    SDF文件是在VCS/NC-Verilog仿真运行时将STD/IO/Macro门级verilog中specify的延迟信息替换为QRC/Star-RC抽取的实际物理延时信息。
    的头像 发表于 05-06 09:54 2067次阅读
    <b class='flag-5'>解析</b><b class='flag-5'>SDF</b>的Header Section信息与Cell Entries信息

    详解芯片SDF文件 MCU芯片全流程设计

    SDF文件是在VCS/NC-Verilog仿真运行时将STD/IO/Macro门级verilog中specify的延迟信息替换为QRC/Star-RC抽取的实际物理延时信息。
    发表于 05-08 10:30 1.2w次阅读
    详解<b class='flag-5'>芯片</b><b class='flag-5'>SDF</b>文件 MCU<b class='flag-5'>芯片</b>全流程设计

    芯片仿SDF反标

    相对于RTL仿真,门级仿真占用的计算资源虽然很多,但是在静态时序检查(STA)工具普遍应用之前,带时序的动态门级仿真几乎可以说是唯一的timing sign-off手段了。
    的头像 发表于 06-08 10:07 2790次阅读
    <b class='flag-5'>芯片</b><b class='flag-5'>后</b><b class='flag-5'>仿</b>及<b class='flag-5'>SDF</b>反标

    芯片仿SDF 3.0解析

    SDF文件是在VCS/NC-Verilog仿真运行时将STD/IO/Macro门级verilog中specify的延迟信息替换为QRC/Star-RC抽取的实际物理延时信息,所以如果SDF文件
    的头像 发表于 12-18 09:56 1216次阅读
    <b class='flag-5'>芯片</b><b class='flag-5'>后</b><b class='flag-5'>仿</b><b class='flag-5'>之</b><b class='flag-5'>SDF</b> <b class='flag-5'>3.0</b><b class='flag-5'>解析</b>

    芯片仿真要点

    sign-off,写出SDF3.0用以后仿真,搭建仿真的验证环境,添加sc/io/macro的verilog model,仿真输出VCD给Redhawk/Voltus做功耗/IR Drop分析。
    的头像 发表于 10-23 09:50 478次阅读
    <b class='flag-5'>芯片</b><b class='flag-5'>后</b>仿真要点