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

相关阅读

静态时序分析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.mzph.cn/news/660920.shtml

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

相关文章

如何提高工业数据采集的效率和准确性-天拓四方

随着工业4.0和智能制造的兴起,工业数据采集的重要性日益凸显。通过数据采集,企业能够实时监控生产过程,优化资源配置,提高生产效率。在实时监控、生产优化、质量控制等方面,有效的数据采集系统能够为企业提供宝贵的洞察…

幻兽帕鲁服务器多少钱一台?腾讯云新版报价

腾讯云幻兽帕鲁服务器4核16G、8核32G和16核64G配置可选,4核16G14M带宽66元一个月、277元3个月,8核32G22M配置115元1个月、345元3个月,16核64G35M配置580元年1个月、1740元3个月、6960元一年,腾讯云百科txybk.com分享腾讯云幻兽帕鲁…

MongoDB安装以及卸载,通过Navicat 15 for MongoDB连接MongoDB

查询id: docker ps [rootlocalhost ~]# docker stop c7a8c4ac9346 c7a8c4ac9346 [rootlocalhost ~]# docker rm c7a8c4ac9346 c7a8c4ac9346 [rootlocalhost ~]# docker rmi mongo sudo docker pull mongo:4.4 sudo docker images 卸载旧的 sudo docker stop mong…

线上品牌展厅有哪些优点,如何打造线上品牌展厅

引言: 在当今数字化时代,品牌展示的方式也在不断演变,线上品牌展厅作为一种新型的展示方式,正逐渐成为品牌宣传的新宠。但是为什么需要线上品牌展厅,线上品牌展厅有哪些优势呢? 一.为什么需要线…

各品牌主板快速启动热键对照表及CMOS进入方法

各品牌主板快速启动热键对照表 主板品牌 启动按键 笔记本品牌 启动按键 主机品牌 启动按键 华硕主板 F8 联想笔记本 F12 联想台式机 F12 技嘉主板 F12 宏碁笔记本 F12 惠普台式机 F12 微星主板 F11 华硕笔记本 ESC 宏碁台式机 F12 梅捷主板 F9 惠普笔…

elementui 开始结束时间可以选择同一天不同时间段

先在main.js中导入 import moment from moment <el-row><el-col :span"12"><el-form-item label"考试开始时间" prop"startTime"><el-date-picker v-model"shiJuanXinXiForm.startTime" style"width: 100…

异步解耦之RabbitMQ(二)__RabbitMQ架构及交换机

异步解耦之RabbitMQ(一) RabbitMQ架构 RabbitMQ是一个基于AMQP&#xff08;Advanced Message Queuing Protocol&#xff09;协议的消息代理中间件&#xff0c;它通过交换机和队列实现消息的路由和分发。以下是RabbitMQ的架构图&#xff1a; Producer&#xff08;生产者&#…

孪生卷积神经网络(Siamese Convolutional Neural Network)的设计思路

孪生卷积神经网络&#xff08;Siamese Convolutional Neural Network&#xff09;是一种特殊类型的卷积神经网络&#xff0c;主要用于处理需要成对比较的数据&#xff0c;例如判断两个输入是否相似。 以下是孪生卷积神经网络的基本结构&#xff1a; 输入层&#xff1a;这一层…

019代码结构

什么是顺序结构&#xff1f; 什么是选择结构&#xff1f; boolean flag true; // 结果为true会执行大括号内的代码&#xff0c;否则不执行直接跳过 if(flag true){System.out.println("flag为真"); } 双if选择结构 if(flag true){// 结果为true会执行大括号内的代…

Vue3-Composition-API(二)

一、computed函数使用 1.computed 在前面我们讲解过计算属性computed&#xff1a;当我们的某些属性是依赖其他状态时&#xff0c;我们可以使用计算属性来处理 在前面的Options API中&#xff0c;我们是使用computed选项来完成的&#xff1b; 在Composition API中&#xff0c…

有哪些好用的洗地机推荐?洗地机品牌推荐

在如今快节奏的生活中&#xff0c;人们对于家居清洁的需求也越来越高。洗地机无疑成为了很多家庭清洁的得力助手。然而&#xff0c;在众多品牌和型号中&#xff0c;到底哪款洗地机值得入手呢&#xff0c;这可能是很多人都会发出的疑问&#xff0c;下面&#xff0c;我们接下来一…

JDBC - 结构优化1

JDBC - 结构优化1 文章目录 JDBC - 结构优化1三层架构1 什么是三层架构2 三层架构项目搭建 结构优化1 - 学生信息管理1 封装工具类2 ORM3 DAO 三层架构 1 什么是三层架构 **三层架构&#xff1a;**将程序划分为表示层, 业务逻辑层, 数据访问层三层&#xff0c;各层之间采用接…

vit细粒度图像分类(七)TBNet学习笔记

1.摘要 细粒度鸟类图像识别致力于实现鸟类图像的准确分类&#xff0c;是机器人视觉跟踪中的一项基础性工作。鉴于濒危鸟类的监测和保护对保护濒危鸟类具有重要意义&#xff0c;需要采用自动化方法来促进鸟类的监测。在这项工作中&#xff0c;我们提出了一种新的基于机器人视觉…

代码随想录算法训练营29期|day36任务以及具体安排

第八章 贪心算法 part05 435. 无重叠区间 class Solution {public int eraseOverlapIntervals(int[][] intervals) {Arrays.sort(intervals, (a,b)-> {return Integer.compare(a[0],b[0]);});if(intervals.length 1) return 0;int result 0;for(int i 1 ; i < interva…

分布式事务(三)—— 两阶段提交解决方案(2PC)

系列目录&#xff1a; 《分布式事务&#xff08;一&#xff09;—— 事务的基本概念》 《分布式事务&#xff08;二&#xff09;—— CAP和Base理论》 一、常见分布式事务解决方案 两阶段提交&#xff08;2PC&#xff0c;Two-phase Commit&#xff09;TCC补偿模式基于本地消…

springboot mybatis-plus 项目分层笔记

整体定义 config: 配置项&#xff0c;包含configuration注解 constants: 常量类enums: 枚举 exceptions: 全局异常处理&#xff0c;自定义异常&#xff0c;RestControllerAdvice 注解 fia3: 三大器依据执行顺序&#xff1a;过滤器filter、拦截器interceptor、切面aop 简称 fia…

算法设计与分析实验:快速选择与单调栈

目录 一、找到K个最接近的元素 1.1 具体思路 1.2 思路展示 1.3 代码实现 1.4 复杂度分析 1.5 运行结果 二、前K个高频元素 2.1 思路一&#xff1a;哈希表 2.2 思路二&#xff1a;快速选择 2.3 思路三&#xff1a;堆 三、柱形图中的最大矩形 3.1 具体思路 3.2 思路…

Mysql单行函数练习

数据表 链接&#xff1a;https://pan.baidu.com/s/1dPitBSxLznogqsbfwmih2Q 提取码&#xff1a;b0rp --来自百度网盘超级会员V5的分享 单行函数练习 单行函数(一行数据返回一个结果) #1.显示系统时间(注:日期时间) #2.查询员工工号,姓名,工资以及提高百分之20后的结果(new…

2024年Java SpringBoot 计算机软件毕业设计题目推荐

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行交流合作✌ 主要内容&#xff1a;SpringBoot、Vue、SSM、HLM…

Flume搭建

压缩包版本&#xff1a;apache-flume-1.9.0-bin.tar 百度盘链接&#xff1a;https://pan.baidu.com/s/1ZhSiePUye9ax7TW5XbfWdw 提取码&#xff1a;ieks 1.解压 tar -zxvf /opt/software/apache-flume-1.9.0-bin.tar.gz -C /opt/module/ 2. 修改文件名 [rootbigdata1 opt]…