min pulse width直译为“最小脉冲宽度”,脉冲宽度检查用来确保时序单元输入引脚的脉冲宽度满足最小要求。如果时钟引脚上的脉冲宽度小于指定的最小值,时钟可能没有正确的锁存数据。

1.约束方式

1)sdc

set_min_pulse_width -low/-high 2.0 [get_clocks clk]

2)timing library

2.计算方法

脉冲宽度检查分为高电平和低电平脉冲宽度检查两部分。

1)高电平脉冲宽度检查

close edge clock latency - open edge clock latency - required pulse width(high) =

(时钟初始下降沿时间 + 下降沿到达clock pin的clock network latency + CPPR - uncertainty(hold) ) - (时钟初始上升沿时间 + 上升沿到达clock pin的clock network latency) - required pulse width(high)

举例如下:

这里:

时钟源头起始下降时间=59 ns

时钟源头起始上升时间=0 ns

这里:

下降沿到达时序逻辑clock pin 的时间=1.77ns

上升沿到达时序逻辑clock pin 的时间=2.06ns

CPPR (clock reconvergence pessimism)=0.19ns

hold uncertainty=0.22ns

required pulse width(high)=0.12ns

所以高电平脉冲宽度检查的值为(59+1.77 +0.19 -0.22) - (0+2.06)-0.12=58.57

2)低电平脉冲宽度检查

open edge clock latency - close edge clock latency - required pulse width(low) =

(时钟周期 + 时钟初始上升沿时间 + 上升沿到达clock pin的clock network latency + CPPR - uncertainty(hold) ) - (时钟初始下降沿时间 + 下降沿到达clock pin的clock network latency) - required pulse width(low)

举例如下:

这里时钟周期+初始上升沿时间,即为第二个周期上升沿时间,等于531ns。

下降沿到达时序逻辑clock pin 的时间=1.84ns

上升沿到达时序逻辑clock pin 的时间=1.74ns

CPPR (clock reconvergence pessimism)=0.18ns

hold uncertainty=0.22ns

required pulse width(high)=0.12ns

所以低电平脉冲宽度检查的值为(531+1.74+0.18 -0.22) - (295+1.84)-0.12=235.74

3.解决方法

针对clock path可以:

1)缩短clock path(换LVT,修transition,调整clock pin靠近clock root);

2)换inverter长tree(成对的inverter上升时间与下降时间相互补偿)或者balance buffer(上升时间和下降时间几乎相等);

3)修crosstalk的Delta delay(主要的min pulse width问题来源就是crosstalk,Delta delay让一边latency更短,另一边更长)

4)用非对称cell 如normal buffer 来修只对high-pulse width或low-pulse witdh 一个方向的violation。

静态时序分析—脉冲宽度检查(Pulse Width Check)相关推荐

  1. 静态时序分析(STA)基本概念

    STA(Static Timing Analysis,静态时序分析)是时序分析方法中的一种,另一种叫时序仿真(Timing Simulation),不仅能验证时序还可以验证功能,时序分析通常指的就是这 ...

  2. 静态时序分析 第三章 标准单元库

    第三章 标准单元库 3.1 引脚电容(Pin Capacitance) 3.2 时序建模(Timing Modeling) 3.2.1 线性时序模型(Linear Timing Model) 3.2. ...

  3. java时序图工具_每日学习:静态时序分析入门面面观

    关注并标星大同学吧 每天1次,打卡学习 积累1个新知识,增1分职场底气 作者称谓:Jack xu 个人介绍:不断学习的数字后端工程师 微信公众号:志芯 半导体知识分享第41期 技能升级,从这里开始 本 ...

  4. 一念心动,一生绵延——如何修复min pulse width?

    今天我们来介绍如何来修复ECO阶段的min pulse width violation(最小脉冲宽度违例).首先,我们来介绍一下什么是min pulse width. min pulse width, ...

  5. 静态时序分析——基础概念

    一.简述 静态时序分析是检查系统时序是否满足要求的主要手段.以往时序的验证依赖于仿真,采用仿真的方法,覆盖率跟所施加的激励有关,有些时序违例会被忽略.此外,仿真方法效率非常的低,会大大延长产品的开发周 ...

  6. IC验证:静态时序分析

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.数字IC设计流程(前端+后端) 二.静态时序分析在芯片设计中的地位 三.静态时序分析的作用 四.静态时序分析过程 ...

  7. 翻译不是一个有效的路径_【第一章:绪论】静态时序分析圣经翻译计划

    本文由知乎赵俊军授权转载,知乎主页为https://www.zhihu.com/people/zhao-jun-jun-19 众所周知,静态时序分析是IC工程师必备知识点,也是秋招中笔试面试的高频考点 ...

  8. [静态时序分析简明教程(一)] 绪论

    静态时序分析简明教程一:绪论 一.写在前面 1.1 快速导航链接· 二.什么是静态时序分析 三.为什么需要时序约束 四.约束的第一步:综合 4.1 什么是综合 4.2 综合与时序约束的关系 4.2.1 ...

  9. 《静态时序分析实用方法》 第一章翻译

    第1章 引言 解释了什么是静态时序分析以及它如何用于时序验证.还描述了功率和可靠性方面的考虑. 概述了纳米设计的静态时序分析程序.本章解决了诸如什么是静态时序分析.噪声和串扰的影响是什么.如何使用这些 ...

最新文章

  1. IntelliJ IDEA中文乱码问题
  2. 苹果官网再度开售iPhone SE:这是在为新品清库存了?
  3. ASP用正则验证邮箱地址手机号码电话号码格式
  4. torch.nn.Module.eval
  5. objective-C 2.0
  6. suse11 mysql 5.7_SUSE Linux系统中单实例二进制方式安装MySQL 5.7.22
  7. win10计算机系统优化设置,有效提升Win10运行速度的基本优化设置方案
  8. 区块链 以太坊 solidity 事务控制和异常处理 require assert
  9. 跟我一起学习ZeroMQ(8):带broker的发布订阅模式:ZMQ_PUB、broker(ZMQ_XPUB和ZMQ_XSUB)、ZMQ_SUB
  10. 网络安全知识竞赛(国家信息安全水平考试NISP)模拟题1
  11. java osm pbf_OSM PBF 文件格式说明
  12. 到底什么是UI设计规范
  13. 网易笔试001(HR之声)
  14. [CTF] python的pip源更改及常用python库
  15. 区块链技术涉及哪些编程语言?
  16. 区块链溯源技术是什么
  17. 毕业设计 单片机智能录音器设计与实现 - 物联网 嵌入式
  18. web电子商城实现及源码
  19. 将本地电脑做外网映射
  20. android开发歌词滑动效果_Android 歌词同步滚动效果

热门文章

  1. 带小数的String转整数Integer
  2. 免费的瑞星2008杀毒软件!
  3. 数据库设计~电影院管理系统
  4. Ubuntu16.04 LTS安装NVIDIA显卡驱动
  5. 在面试时,HR问“你未来的职业规划是什么”,如何作答
  6. 边下边看的BT资源搜索下载工具:Tribler for Mac
  7. CCNA培训(一)20210710day01
  8. 第四部分:特殊用途的句子——第三章:虚拟
  9. 赵国鑫 java_花还有重开日吗?32 岁的罗斯又被廉价交易
  10. aws 亚马逊 服务器 运行docker run报错 Got permission denied while trying to connect to the Docker daemon socket