静态时序分析:时序弧以及其时序敏感(单调性)

相关阅读

静态时序分析icon-default.png?t=N7T8https://blog.csdn.net/weixin_45791458/category_12567571.html?spm=1001.2014.3001.5482


        在静态时序分析中,不管是组合逻辑单元(如与门、或门、与非门等)还是时序逻辑(D触发器等)在时序建模时都拥有多条时序弧(Timing Arc)。时序弧是用来描述信号(翻转)传播路径一种抽象。举例来说,对于组合逻辑单元,每个输入引脚(Pin)到输出引脚都有相应的时序弧;对于时序逻辑单元,有从时钟引脚到输出引脚的时序弧,也有从时钟引脚到数据引脚的建立、保持时间约束时序弧。每个时序弧都有时序敏感(Timing Sense),它描述了信号(翻转)在沿着时序弧传播过程中的翻转特性,即对应不同的输入翻转,输出是如何翻转的。时序敏感分为三类,分别是正单调性(Positive Unate)、负单调性(Negative Unate)和非单调性(Non Unate),下面详细说明这三者。

        一个时序弧的正单调性指的是,当不是时序弧起点的其他输入引脚的信号值固定为某一组特定值时,时序弧起点输入引脚的正翻转只可能引起时序弧终点输出引脚的正翻转,时序弧起点输入引脚的负翻转只可能引起时序弧终点输出引脚的负翻转,“可能”指的是时序弧起点输入引脚的翻转可能并不会导致时序弧终点输出引脚翻转,但在进行时序分析时我们不考虑这种情况,因为工具总是尽可能让信号(翻转)传播下去而不是在中间中断,这也意味着时序分析的结果是悲观的、保守的。例如,一个与门的每个输入引脚到输出引脚的时序弧都是正单调性的,如图1所示。

图1 与门的正单调时序弧

        在分析图1的与门中时序弧的时序敏感时,我们会固定非时序弧起点输入引脚的值为一组固定值(对于与门是1),因为只有其他输入引脚的值为1,才能使时序弧起点输入引脚的翻转传播到时序弧终点输出引脚,否则(当其他输入引脚的值存在0)输出会直接固定为0。对于与门的每一个引脚都应该这样分析,从这个例子中我们也可以看出,在根据时序弧进行时序分析时,不会考虑多个输入引脚同时翻转的情况(这很显然,因为一条时序弧中不会包含两个输入引脚,而时序路径由时序弧组成,自然也就无法分析多个输入引脚同时翻转了)。如果与门的例子明白了,那么对于或门时序弧的分析也是同理,它也是正单调性的,且会固定非时序弧起点输入引脚的值为0,原因也是为了让翻转传播。

        一个时序弧的负单调性指的是,当不是时序弧起点的其他输入引脚的信号值固定为某一组特定值时,时序弧起点输入引脚的正翻转只可能引起时序弧终点输出引脚的负翻转,时序弧起点输入引脚的负翻转只可能引起时序弧终点输出引脚的正翻转。例如,与非门和或非门的每个输入引脚到输出引脚的时序弧都是负单调性的,如图2所示。

图2  或非门的负单调时序弧

        就如正单调性一样, 在分析与非门的时序敏感时会固定非时序弧起点输入引脚的值为1,在分析与非门的时序敏感时会固定非时序弧起点输入引脚的值为0(如图2所示),这都是为了翻转的传播。

        一个时序弧的非单调性指的是,当不是时序弧起点的其他输入引脚的信号值固定为某一组特定值时,这个时序弧可能是正单调的也可能是负单调的,这取决于特定的不是时序弧起点的其他引脚的信号取值。也许这个解释比较晦涩难懂,下面将举例说明。

        一个异或门的每个输入引脚到输出引脚的时序弧都是非单调性的,如图3所示。

图3 异或门的非单调时序弧

         对于两输入异或门而言,当不是时序弧起点的另一个引脚值固定为1时,该时序弧是负单调;当不是时序弧起点的另一个引脚值固定为0时,该时序弧是正单调。在对这种元器件进行分析时,常常使用状态相关的时序模型,这在之后的文章中会进行解释。

        我们再举最后一个非单调性的例子,一个二选一数据选择器的选择输入引脚Sel到输出的时序弧是非单调性的。假设Sel为1选择A输入,Sel为0选择B输入。当A输入引脚值固定为0,B输入引脚值固定为1时,Sel输入引脚的正翻转(从选择B输出到选择A输出)会导致输出引脚的负翻转,Sel输入引脚的负翻转(从选择A输出到选择B输出)会导致输出引脚的正翻转,即体现负单调性;当A输入引脚值固定为1,B输入引脚值固定为0时,Sel输入引脚的正翻转(从选择B输出到选择A输出)会导致输出引脚的正翻转,Sel输入引脚的负翻转(从选择A输出到选择B输出)会导致输出引脚的负翻转,即体现正单调性。对于其他A、B的取值情况,Sel输入引脚的翻转不会导致输出翻转,所以不在考虑范围内。

        综上所述,一个时序弧的时序敏感指的是输出翻转和输入翻转的关系:如果时序弧起点输入引脚的正翻转只可能引起时序弧终点输出引脚的正翻转,时序弧起点输入引脚的负翻转只可能引起时序弧终点输出引脚的负翻转,则这段时序弧是正单调的;如果时序弧起点输入引脚的正翻转只可能引起时序弧终点输出引脚的负翻转,时序弧起点输入引脚的负翻转只可能引起时序弧终点输出引脚的正翻转,则这段时序弧是负单调的;如果某些情况下,时序弧起点输入引脚的正翻转可能引起时序弧终点输出引脚的正或负翻转,时序弧起点输入引脚的负翻转可能引起时序弧终点输出引脚的负或正翻转,即可能是正单调的也可能是负单调的,则这段时序弧是非单调的,对这种时序弧时序分析时要进行分类讨论。(注意描述中的”可能”二字)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/249423.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springCloud gateway 防止XSS漏洞

springCloud gateway 防止XSS漏洞 一.XSS(跨站脚本)漏洞详解1.XSS的原理和分类2.XSS漏洞的危害3.XSS的防御 二.Java开发中防范XSS跨站脚本攻击的思路三.相关代码(适用于spring cloud gateway)1.CacheBodyGlobalFilter.java2.XssRequestGlobalFilter.java…

强大的虚拟机Parallels Desktop 19 mac中文激活

Parallels Desktop是一款功能全面、易于使用的虚拟机软件,它为用户提供了在Mac电脑上同时运行多个操作系统的便利。 软件下载:Parallels Desktop 19 mac中文激活版下载 Parallels Desktop 19 mac具有快速启动和关闭虚拟机的能力,让用户能够迅…

STM32G4 系列命名规则

STM32G4产品线 基础型系列STM32G4x1 具有入门级模拟外设配置,单存储区Flash,支持的Flash存储器容量范围从32到512KB。 增强型系列STM32G4x3 与基本型器件相比具有更多数量的模拟外设,以及双存储区Flash,Flash存储器容量也提高…

C#学习笔记_类(Class)

类的定义 类的定义是以关键字 class 开始,后跟类的名称。类的主体,包含在一对花括号内。 语法格式如下: 访问标识符 class 类名 {//变量定义访问标识符 数据类型 变量名;访问标识符 数据类型 变量名;访问标识符 数据类型 变量名;......//方…

【Day37】代码随想录之贪心_738.单调递增的数字_968.监控二叉树

文章目录 738.单调递增的数字968.监控二叉树 738.单调递增的数字 参考文档:代码随想录 题目: 给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。 (当且仅当每个相…

你的MiniFilter安全吗?

简介 筛选器管理器 (FltMgr.sys)是Windows系统提供的内核模式驱动程序, 用于实现和公开文件系统筛选器驱动程序中通常所需的功能; 第三方文件系统筛选器开发人员可以使用FltMgr的功能可以更加简单的编写文件过滤驱动, 这种驱动我们通常称为MiniFilter, 下面是MiniFilter的基本…

基于SpringBoot+Vue学科竞赛管理系统

文章目录 基于SpringBootVue学科竞赛管理系统1系统概述1.3系统设计思想 2相关技术2.1 MYSQL数据库2.2 B/S结构2.3 Spring Boot框架简介2.4 Vue简介 3系统分析3.1可行性分析3.1.1技术可行性3.1.2经济可行性3.1.3操作可行性 3.2系统性能分析3.2.1 系统安全性3.2.2 数据完整性 3.4…

【2024】大三寒假再回首:缺乏自我意识是毒药,反思和回顾是解药

2024年初,学习状态回顾 开稿时间:2024-1-23 归家百里去,飘雪送客迟。 搁笔日又久,一顾迷惘时。 我们饱含着过去的习惯,缺乏自我意识是毒药,反思和回顾是解药。 文章目录 2024年初,学习状态回顾一…

虚拟机(VMware)ubuntu16.04 直接连接网口设备 USRP 吊舱

编辑虚拟网络编辑器 点击之后 选择网卡之后,点击确定。 电脑配置 使用了:192.168.2.56 虚拟机内部配置 和PC的配置一致

【Matlab】音频信号分析及FIR滤波处理——凯泽(Kaiser)窗

一、前言 1.1 课题内容: 利用麦克风采集语音信号(人的声音、或乐器声乐),人为加上环境噪声(窄带)分析上述声音信号的频谱,比较两种情况下的差异根据信号的频谱分布,选取合适的滤波器指标(频率指标、衰减指标),设计对应的 FIR 滤波器实现数字滤波,将滤波前、后的声音…

Zoho Mail 2023:回顾过去,展望未来:不断进化的企业级邮箱解决方案

当我们告别又一个非凡的一年时,我们想回顾一下Zoho Mail如何融合传统与创新。我们迎来了成立15周年,这是一个由客户、合作伙伴和我们的敬业团队共同庆祝的里程碑。与我们一起回顾这段旅程,探索定义Zoho Mail历史篇章的敏捷性、精确性和创新性…

Spring 事务原理二

该说些什么呢?一连几天,我都沉溺在孤芳自赏的思维中无法自拔。不知道自己为什么会有这种令人不齿的表现,更不知道这颗定时炸弹何时会将人炸的粉身碎骨。好在儒派宗师曾老夫子“吾日三省吾身”的名言警醒了我。遂潜心自省,溯源头以…

C++初阶入门之命名空间和缺省参数的详细解析

个人主页:点我进入主页 专栏分类:C语言初阶 C语言进阶 数据结构初阶 Linux C初阶 欢迎大家点赞,评论,收藏。 一起努力,一起奔赴大厂 目录 一.前言 二.命名空间 2.1命名冲突的例子 2.2解决方案 2.3命…

MyBatis概述与MyBatis入门程序

MyBatis概述与MyBatis入门程序 一、MyBatis概述二、入门程序1.准备开发环境(1)准备数据库(2)创建一个maven项目 2.编写代码(1)打包方式和引入依赖(2)新建mybatis-config.xml配置⽂件…

node.js(nest.js控制器)学习笔记

nest.js控制器: 控制器负责处理传入请求并向客户端返回响应。 为了创建基本控制器,我们使用类和装饰器。装饰器将类与所需的元数据相关联,并使 Nest 能够创建路由映射(将请求绑定到相应的控制器)。 1.获取get请求传参…

祖传代码里的神逻辑

昨天做权限限制的需求,给自己配置了两个新的分组,然后就发现登录不了项目了,sql报错ORA-01795: maximum number of expressions in a list is 1000,一路debugger找到了元凶,看逻辑是想把两个不同表里的分组去重然后合并…

【CMU-自主导航与规划】M-TARE planner 配置与运行

M-TARE docker M-TARE 源码 一、依赖 Docker, Docker Compose, NVIDIA Container Toolkit, Nvidia GPU Driver(需要至少2个,带Nvidia GPU) 1.1 Docker docker -v #查询版本1.2 Docker Compose docker compose version1.3 …

分布式搜索引擎_学习笔记_3

分布式搜索引擎03 0.学习目标 1.数据聚合 **聚合(aggregations)**可以让我们极其方便的实现对数据的统计、分析、运算。例如: 什么品牌的手机最受欢迎?这些手机的平均价格、最高价格、最低价格?这些手机每月的销售…

Here Document免交互和Expect

文章目录 Here Document免交互和Expect自动化交互一、Here Document—免交互1、Here Document 免交互概述2、语法格式3、免交互的用法3.1 cat命令3.2 tee命令3.3 wc命令3.4 read命令3.5 passwd命令 4、Here Document 变量设定 二、Expect自动化交互1、expect基本使用1.1 脚本解…

【Linux】Linux基本指令

目录 1.ls指令 2.cd指令 3.touch指令 4.mkdir指令 5.rmdir指令和rm指令 5.1rmdir指令 5.2rm指令 6.man指令 7.cp指令 8.mv指令 9.cat指令 10.more指令 && less指令 10.1more指令 10.2less指令 11.head指令 && tail指令 11.1head指令 11.2tai…