时序弧

静态时序分析是基于时序弧数据的时序分析。时序弧是用来描述两个节点延时信息的数据,时序弧的信息一般分为连线延时和单元延时。连线延时是单元输出端口和扇出网络负载之间的延时信息;单元延时是单元输入端口到输出端口之间的延时信息。因此一条完整路径的时序信息计算由连线延时和单元延时组成。

连线延时没有功能属性,所以延时信息在分类上没有区别。单元延时中的时序弧分为基本时序弧约束时序弧两类,其中约束时序弧用来表示输入端口之间存在的时序约束的信息。

基本时序弧包括组合时序弧、边沿时序弧、复位清零时序弧、三态使能时序弧等

1.组合时序弧

组合时序弧是最基本的单元延时信息时序弧,主要用于表示组合逻辑单元的延时信息,在时序信息文件中可用如下文本进行声明。

timing_type : combinational;

由于组合时序弧也是默认的时序弧类型,因此没特别的声明的时序弧就是默认为组合时序弧。

组合时序弧根据单元功能逻辑的不同,分为以下3种不同逻辑状态下的延时弧:同向时序弧、反向时序弧和不定态时序弧。

(1)同向时序弧

同向时序弧表示输入端信号变化方向与输出端信号变化方向一致的时序弧,如下图所示。

同向时序弧在时序信息文件中通过定义相关PIN和相关逻辑状态信息(如:positive——unate)进行声明。

related_pin : "A";

timing_sense : positive_unate;

(2)反向时序弧

反向时序弧表示输入端信号变化方向与输出端信号变化方向相反的时序弧,如下图所示。

反向时序弧在时序信息文件中通过定义相关PIN和相关逻辑状态信息(如:negative_unate)进行声明。

related_pin : "A";

timing_sense : negative_unate;

(3)不定态时序弧

不定态时序弧表示输入信号变化方向与输出端信号变化方向无固定确定关系的时序弧,如下图所示。

不定态时序弧在时序信息文件中 通过定义相关PIN和相关逻辑状态信息(如:non_unate)进行声明。

related_pin :"A";

timing_sense :non_unate;

需要强调的是,其他类型的时序弧如果也存在不同的逻辑状态,也需要通过使用以上3种逻辑状态信息进行声明。

2.边沿时序弧

边沿时序弧用来表示时序单元从时钟信号有效沿到输出信号有效的延时信息。

如下图所示,从时序单元时钟高电平有效沿开始到时序单元Q输出端信号有效的延时即通过边沿时序弧表示。

边沿时序弧根据时钟信号有效沿的不同,分为上升有效沿和下降有效沿两种,在时序信息文件中通过时序弧类型信息falling_edge和rising_edge进行声明。

timing_type : falling_edge;

timing_type : rising_edge;

3.复位清零时序弧

复位清零时序弧用来表示具有复位清零端口的时序单元从复位清零信号有效沿到输出信号有效沿的延时信息。

如下图所示,从时序单元清零高电平有效沿开始到时序单元Q输出信号有效的延时即为复位清零时序弧表示。

复位清零时序弧根据复位和清零信号有效沿的不同,分为上升有效沿和下降有效沿两种,在时序信息文件中分别通过时序弧类型信息preset和clear进行声明。

timing_type : preset;

timing_type : clear;

4.三态使能时序弧

三态使能时序弧用来表示三态逻辑单元从使能信号有效到输出的延时信息。

如下图所示,从三态逻辑单元使能信号有效到三态输出的延时即通过三态使能时序弧表示。

三态使能时序弧中根据使能信号位有效与无效的不同,在时序信息文件中分别通过状态信息three_state_enable和three_state_disable进行声明。

timing_type : three_state_enable;

timing_type : three_state_disable;

约束时序弧

约束时序弧包括建立时序弧、保持时序弧、恢复时序弧、移除时序弧和脉宽时序弧等。

1.建立时序弧

建立时序弧用来表示时序单元获得正确数据信号所需要的约束信息,即在时钟沿有效前数据输入信号保持有效的时间信息。

如下图所示,在时序单元时钟高电平有效沿之前,信号必须已经有效的时间信息即通过建立时序弧表示。

建立时序弧根据时钟信号有效沿的不同,分为上升沿有效和下降沿有效两种,在时序信息文件中分别通过时序弧类型信息hold_rising和hold_falling进行声明。

timing_type : hold_rising;

timing_type : hold_falling;

2.保持时序弧

保持时序弧也是用来表示时序单元获得正确信号所需要的约束信息,即在时钟沿有效后数据输入信号继续维持有效的时间信息。

如下图所示,在时序单元时钟高电平有效沿之后,数据信号必须继续维持有效的时间信息通过保持时序弧表示。

保持时序弧根据时钟信号有效沿的不同,分为上升沿有效和下降沿有效两种,在时序信息文件中分别通过时序弧类型信息hold_rising和hold_falling进行声明。

timing_type : hold_rising;

timing_type : hold_falling;

3.恢复时序弧

恢复时序弧用来表示具有复位清零端口的时序单元成功使能所需要的约束信息,即在时钟沿有效前使能信号保持有效的时间信息。

如下图所示,在时序单元时钟高电平有效沿之前,清零信号必须提前有效的时间信息即通过恢复时序弧表示。

恢复时序弧根据时钟信号有效沿的不同,分为上升沿有效和下降沿有效两种,所以在时序信息文件中分别通过时序弧类型信息recovery_rising和recovery_falling进行声明。

timing_type : recovery_rising;

timing_type : recovery_falling;

4.移除时序弧

移除时序弧也是用来表示具有复位清零信号端口在时序单元成功使能所需要的约束信息,即在时钟沿有效后使能信号维持有效的时间信息。

如下图所示,在时序单元时钟高电平有效沿之后,清零信号必须继续维持有效的时间信息通过移除时序弧表示

移除时序弧根据时钟信号有效沿的不同,分为上升沿有效和下降沿有效两种,所以在时序信息文件中分别通过时序弧信息removal_rising和removal_falling进行声明。

timing_type : removal_rising;

timing_type : removal_falling;

5.脉宽时序弧

脉宽时序弧也是用来表示时序单元获得正确信号所需要的约束信息,即时钟信号同一状态下维持有效的最小总时间信息,如下图所示。

脉宽时序弧根据信号有效状态的不同,分为高电平有效和低电平有效两种,在时序信息文件中通过时序弧类型信息min_pulse_width进行声明。

timing_type : min_pulse_width

timing lib时序弧相关推荐

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

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

  2. MCU学习笔记_STA及PT工具

    一.常用命令     1.restore_session         restore_session xx/xx/PTsavesessions/func_hsi_ss_1p35v_125c_max ...

  3. set_false_path 与 set_disable_timing 的区别

    在静态时序分析中, set_false_path 和 set_disable_timing 都可以用来设置 timing exceptions,告诉工具忽略某些特定的path,但是在使用过程中,这两个 ...

  4. Vivado使用技巧(17):时序异常 Timing Exception

    时序异常 英文名为Timing Exception,可以认为是时序例外或时序异常,"例外"或"异常"是指这部分时序的分析与大多数常规时序分析不同:下表给出了Vi ...

  5. 时序分析基本概念介绍--Timing Arc

    原标题:时序分析基本概念介绍--Timing Arc 今天我们要介绍的时序基本概念是Timing arc,中文名时序弧.这是timing计算最基本的组成元素,在昨天的lib库介绍中,大部分时序信息都以 ...

  6. 以下不属于时序逻辑电路的有_静态时序分析圣经翻译计划——附录B:SDF

    本附录将介绍标准延迟标注格式,并说明了如何在仿真中执行反标. 延迟格式描述了设计网表的单元延迟和互连走线延迟,无论设计是用两种主要硬件描述语言(VHDL或Verilog HDL)中的哪一种所描述的. ...

  7. 《Static Timing Analysis for Nanometer Designs》汇总传送门

    文章目录 [第一章 绪论](https://blog.csdn.net/yueguangmuyu/article/details/125721646) [第二章 STA相关概念](https://bl ...

  8. 静态时序时序分析-前言(Preface)

        时序,时序,时序! 这是负责设计半导体芯片的数字设计工程师的主要关注点. 它是什么,它是如何被描述的,以及如何验证(Verify)它? 大型数字设计的设计团队可能会花费数月的时间来设计架构,进 ...

  9. DC5:Tcl与Design Compiler (五)——综合库(时序库)和DC的设计对象+Comments

    本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 前面一直说到综合库/工艺库这些东西,现在就来讲讲讲 ...

最新文章

  1. C++中extern使用
  2. Flutter开发之Tooltip提示组件-3(42)
  3. 转: 学ppt的网址与素材
  4. 【Linux】一步一步学Linux——bg命令(131)
  5. 【转载】同步和互斥的POSIX支持(互斥锁,条件变量,自旋锁)
  6. LiveVideoStackCon深圳-服务端的任务越来越重
  7. c++ 箭头符号怎么打_老司机怎么测量三极管管型、管脚和性能?三极管测量此中有深意...
  8. 微星刀锋 无法进入bios_夏天来了 微星主板风扇转速调节攻略
  9. 多云场景下,程序员该如何管理云凭据?
  10. ModelSim SE 6.5破解
  11. leetcode349 python3 112ms 求两个数组的交集
  12. Java根类--Object类
  13. 文章目录---收藏不迷路
  14. 1-思科IOS设备管理
  15. 文本文档打开来是写字板怎么办
  16. 华为Nova7+1=荣耀50?我看未必
  17. [碎碎念]祝我的董小姐生日快乐~
  18. 栈迁移过程记录,栈指针rsp、rbp、rip、leave变化过程
  19. miui 9 android pay,小米9多功能NFC再升级,Mi Pay线上支付上线
  20. iOS开发月报#11|201905

热门文章

  1. 【JQuery】关于jQuery的load方法在Laravel里的使用
  2. pandas.tseries.offset, 获取季度,月度第一天(最后一天)
  3. 复制文本到word中时产生底色的去除方法
  4. 发布新一代微控制器 AURIX 2G 的背后,半导体巨头英飞凌如何应对汽车行业变革?...
  5. springboot项目中的 Request method 'POST' not supported问题
  6. 还在用Navicat?这款开源的数据库管理工具界面更炫酷!
  7. 论坛回顾|蚂蚁供应链安全建设实践
  8. torchaudio音频基础知识学习
  9. Google浏览器密码框自动弹出账号密码的解决方法
  10. png转svg格式并上传至iconfont