五、布局布线约束、系统优化参数、时序优化收敛 关键技术点

在实际的工程当中,出现了时序违例的情况如何解决呢?

本章内容将介绍例外约束、布局布线的具体操作,实现系统参数的优化。

**前言:**通过约束时钟,比如基准时钟,和生成时钟,让我们的综合工具知道我们的时序要求标准是多少,那么分析工具会根据布局布线之后的网络表进行分析,如果存在时序违例会给我们通过报告形式打印,另外布线的算法也会根据我们设置的时钟周期约束进行努力布线满足我们的时序要求。

这里写目录标题

    • 一、时序分析优化总体流程
    • 二、查看总体时序报告,追踪时序违例路径
      • 1.查看时序报告
      • 2.时序约束之例外约束
        • 1.先以Intra-clock为例,处理同时钟域时序违例问题:
          • Set false path
          • Set multicycle path
            • 1.什么样的路径是 multicycle?
            • 2.Set multicycle path 建立时间的约束
            • 3.Set multicycle path 保持时间的约束
        • 2.以Inter-clock为例,处理跨时钟时序违例问题:
      • 3.布局布线约束优化
        • 1.以div_timing工程为例,进行优化操作。
        • 2.更多电路优化内容补充
      • 4.设置 implementation 的 strategy 策略优化时序
      • 5.通过插入流水线寄存器提高时序余量

一、时序分析优化总体流程

在这里插入图片描述

二、查看总体时序报告,追踪时序违例路径

1.查看时序报告

打开 check Timing
在这里插入图片描述
打印时序报告 (report timing summary
这个报告会把所有约束和没有约束的路径时序报告都打印出来,这样可以看到那些路径出现时序违例了,方便我们观察。
在这里插入图片描述
报告如下,其中:
==Intra-clock paths ==同时钟域时序报告
Inter-clock path 跨时钟域时序报告(此部分一般我们需要直接设置 false path)
在这里插入图片描述

2.时序约束之例外约束

1.先以Intra-clock为例,处理同时钟域时序违例问题:

在这里插入图片描述
通过 from to 来看,源端:ini_reg ,目的端:RST 复位,属于复位信号时序违例
一般有两种处理方法:

  1. Set false path 因为本身复位没有办法保证到达每一个寄存器保证延迟一致时
    序不出现违例,这里约束是忽略对此路径的时序分析。
  2. Set multi cycle 约束我们的建立时间或者保持时间余量大于 1 个时钟周期。
Set false path

右击某条路径,设置 set false path 选择 startpoint to endpoint,然后点击ok即可。
(如果选择source clock to destination clock 会把这两个时钟域间交互的所有路径忽略掉,一般用于处理跨时钟域的时序违例(Inter-clock path))
在这里插入图片描述
在这里插入图片描述
连续设置几条以后re run一下,更新一下时序报告。

下面学习一下set multicycle的设置。

Set multicycle path
1.什么样的路径是 multicycle?

在这里插入图片描述

如上所示:
两级寄存器之间有复杂的组合逻辑,比如与或非等等组合逻辑运算, 这样此处的组合逻辑延迟可能超过一个时钟周期,直接套用之前我们学习的两级 寄存器的时序分析模型,一定会报时序错误。
有时候我们采集此信号未必需要在发射沿的下一个时钟周期采样,我们可能需要经过多个时钟周期采集数据,这样就形成了上图所描述 的:CE信号是一个时钟有效信号,经过 N 拍的延迟到达控制接收端寄存器的 CE 端,这样就会延迟 N 拍去采样。

2.Set multicycle path 建立时间的约束

选择某条路径,例如path101进行如下设置:
在这里插入图片描述
options默认选择下为建立时间设置
在这里插入图片描述

3.Set multicycle path 保持时间的约束

同样是对path101进行如下设置:
在这里插入图片描述
全部设置完成后 ** rerun ** 一下,重新查看时序报告。发现时序违例依然存在。如何进一步调整?
答: 我们之前设置的hold为2,但hold余量仍然不足,我们可以将hold继续向前调整。原理图如下:

在这里插入图片描述
重新rerun后,无时序违例情况。

2.以Inter-clock为例,处理跨时钟时序违例问题:

如下图所示,都是跨时钟域路径
在这里插入图片描述
这种时序违例,我们直接通过设置set false path源时钟到目的时钟的即可。

最终的时序报告如下:
在这里插入图片描述
时序报告没有问题后保存生成xdc文件,然后重新综合工程。若综合完成后还存在时序违例问题,则继续进行set false path 或者set multicycle 设置。
下一步进行布局布线

3.布局布线约束优化

完成上述的综合流程后,下面开始进行布局布线的约束。这里我们主要采用物理优化的方式,包括:

  • 布局后优化(post-place)
  • 布线后优化(post-route)
1.以div_timing工程为例,进行优化操作。

① 先观察工程的时序报告:
在这里插入图片描述

② 在工程中打开物理优化设置,并进行设置
在这里插入图片描述
③ 更改完 phy opt 参数后优化结果如下
在这里插入图片描述
④LOG 的报告如下
在这里插入图片描述

2.更多电路优化内容补充

图下的表提供了多种电路优化的方式。
在这里插入图片描述

  • 高扇出信号优化(high-fanout )
    可以明显看到:右侧的图片中白色的线已经被分割为多个起点然后扇出,这样使扇出延迟减小了,蓝色的线为优化前的效果。
    在这里插入图片描述
  • 布局优化效果(placement )
    使能了物理优化后,如果一些较长的关键路径存在,布局工具会自动的进行从新规划布局方案使得路径变短,从而优化时序。
    在这里插入图片描述
  • 重新分配布线连线(Rewiring )
    蓝色部分是慢速路径,绿色部分是快速路径,通过合理分配布线进行路径优化。
    在这里插入图片描述
    第二种情况:
    在这里插入图片描述
  • 关键逻辑组件的复制
    在这里插入图片描述
    -hold fix的优化
    例一:
    在这里插入图片描述
    例二:
    在这里插入图片描述
  • retiming 优化
    在这里插入图片描述

4.设置 implementation 的 strategy 策略优化时序

这里包含了很多的策略,哪种优化策略适合需要结合工程具体分析,通常来讲会尝试很多种优化策略对比观察时序变化。
在这里插入图片描述

5.通过插入流水线寄存器提高时序余量

这里以修改除法器ip的latency为例:
在这里插入图片描述
原理:
插入流水前:
在这里插入图片描述
插入流水线后:
在这里插入图片描述
插入流水线之后增加了 latency 但是换取了把两级 lut 延迟变为了 1 级 lut 延迟,这样时序就会变好。
此外还可以通过代码的方式插入流水。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024年阿里Android高级面试题分享,送给正在迷茫的你

前言 很多公司在招人这件事情上都会面临一个问题; “我们的招聘要求又不高,能做项目就行,但为什么就是招不到人?” 很多公司还面临一个问题,招聘的时候这人各方面都不错,但上岗了就是不出活,绩…

2024春招面试,文末有彩蛋

前言 Flutter 作为Google出品的一个新兴的跨平台移动客户端UI开发框架,正在被越来越多的开发者和组织使用,包括阿里的咸鱼、腾讯的微信等。 今天,我主要讲解Flutter中文本组件方面的Widget,包括Text、RichText、TextField&#…

元宇宙线上展厅——如何利用3D展示平台创新吸引客户与展示产品

在数字化转型的浪潮中,元宇宙线上展厅作为一种全新的虚拟展示平台,正以其独特的创新功能和沉浸式体验,吸引着越来越多的企业和用户的目光。 一、元宇宙线上展厅的创新功能 1、沉浸式体验与交互设计 元宇宙线上展厅通过先进的3D建模技术和VR技…

selenium4的相对定位

selenium4相对定位 Selenium 4新增了相对定位器,能帮助用户查找元素附近的其他元素。可用的相对定位器有above、below、toLeftOf、toRightOf、near。在Selenium 4中,find_element方法能够接受一个新方法withTagName,它将返回一个RelativeLoca…

《2023年DDoS攻击现状及趋势报告》

执行概要 与第一季度相比,2023年第二季度的DDoS攻击活动增长了387%。 电信公司遭受的攻击最为频繁,占总攻击量的50%,在2023年上半年发生了超过37,000次攻击;然而,在所有行业中,电信公司的攻击活动在同一时…

mac电脑总卡蓝屏是怎么回事,苹果电脑老卡蓝屏怎么办

电脑老卡蓝屏是比较常见的电脑故障之一,导致这一问题的出现很可能是电脑本身的硬件,或电脑上的驱动安装错误,没法运行,当然也不排除其他的一些因素。虽说电脑蓝屏是电脑几乎都会出现的小毛病,不足以致命,但…

Day19:信息打点-红蓝队自动化项目资产侦察武器库部署企查产权网络空间

目录 各类红蓝队优秀工具项目集合 自动化-武器库部署-F8x 自动化-网络空间-AsamF 自动化-企查信息-ENScan 自动化-综合架构-ARL&Nemo 思维导图 章节知识点 Web:语言/CMS/中间件/数据库/系统/WAF等 系统:操作系统/端口服务/网络环境/防火墙等 应…

一本书讲透ChatGPT,实现从理论到实践的跨越!大模型技术工程师必读

这里写目录标题 前言内容简介作者简介专家推荐读者对象目录直播预告 前言 OpenAI 在 2022 年 11 月推出了人工智能聊天应用—ChatGPT。它具有广泛的应用场景,在多项专业和学术基准测试中表现出的智力水平,不仅接近甚至有时超越了人类的平均水平。这使得 …

垃圾分类网站|基于Springboot框架+java+MYSQL数据库的垃圾分类网站开发设计与实现(可运行源码+数据库+文档)

目录 1.摘 要 2.系统结构设计 3.系统顺序图设计 4.数据库设计 5.系统详细设计 用户前台功能模块 管理员功能模块 垃圾分类管理员功能模块 论文参考 文末获取源码 1.摘 要 本论文主要论述了如何使用JAVA语言开发一个垃圾分类网站 ,本系统将严格按照软件开发…

探索直播美颜SDK背后的算法:如何实现高效的美颜处理?

直播中,美颜功能更是成为了吸引用户的一大利器,为了实现这一目标,各大直播平台纷纷推出了美颜功能,而直播美颜SDK背后的算法成为了实现这一功能的关键。 一、美颜算法的重要性 美颜算法在直播美颜SDK中扮演着至关重要的角色。它不…

isNaN和Number.isNaN()的区别

一句话概括: isNaN()会先尝试转换为数字,如果无法转换为数字则返回true,否则返回false Number.isNaN():直接检查一个值是否为NaN 示例如下: 对于isNaN() NaN直接就返回true "abc"是字符串且无法转换为数…

连锁经营如何降低财务成本和税务风险

连锁经营的财务是一个比较复杂的体系。连锁经营通过规模化运作,连锁企业可以享受采购、生产和销售方面的经济规模优势,从而降低采购成本、生产成本和运营成本。可以通过统一管理和监控各个门店的财务状况,实现资源的最优配置,减少…

如何单独设置cPanel的PHP扩展

我们在上周遇到购买Hostease的Linux虚拟主机客户网站页面需要使用mb_strlen函数。像这种需要特定PHP函数的设置需求,我们是可以单独在cPanel面板进行设置。 步骤 1:登录到 cPanel 打开您的 Web 浏览器,登录您的 cPanel 控制面板登录页面。 步…

Linux - 进程控制

1、进程创建 1.1、fork函数初识 在linux中fork函数时非常重要的函数&#xff0c;它从已存在进程中创建一个新进程。新进程为子进程&#xff0c;而原进程为父进程&#xff1b; #include <unistd.h> pid_t fork(void); 返回值&#xff1a;自进程中返回0&#xff0c;父进…

EC600模块通过AT指令接入阿里云物联网平台并发布属性

摘要&#xff1a;本文介绍一下如何通过EC600模块的AT指令&#xff0c;将设备属性值发送到阿里云物联网平台的方法。 这个模块供电可以是 5-16V 和电脑通过USB串口连接&#xff0c;4线即可。未来集成到自己的系统中的时候&#xff0c;可以直接发送指令即可。 使用的软件是FreeAT…

Claude3荣登榜首,亚马逊云科技为您提供先行体验!

Claude3荣登榜首&#xff0c;亚马逊云科技为您提供先行体验&#xff01; 个人简介前言抢先体验关于Amazon BedrockAmazon Bedrock 的功能 Claude3体验教程登录Amazon Bedrock试用体验管理权限详细操作步骤1.提交应用场景详细信息2.请求模型的访问权限3.请求成功&#xff0c;开始…

智慧合同管理平台:企业合同管理的数字化革新

在当今的商业环境中&#xff0c;合同管理已经成为企业运营中不可或缺的一环。传统的合同管理方式不仅耗时耗力&#xff0c;而且容易出错。为了解决这个问题&#xff0c;越来越多的企业开始转向使用智慧合同管理平台。本文将以道本科技智慧合同管理平台为例&#xff0c;详细介绍…

中航证券2024 AI智算时代已至,算力芯片加速升级

一、AI处史上最长繁荣期&#xff0c;算力国产化需求迫切 AI正处史上最长繁荣大周期 人工智能从1956 年被正式提出以来&#xff0c;经历了数十年的 发展历程。人工智能诞生初期&#xff0c;其研究主要分为三个流 派&#xff0c;即逻辑演绎、归纳统计和类脑计算。 人工智能研究的…

JasperReport指定自定义字体文件,解决中文不显示问题支持

原文链接&#xff1a;【JasperReports笔记05】JasperReport指定自定义字体文件&#xff0c;解决中文不显示问题支持Android_jasperreports导出pdf不显示中文-CSDN博客 目录 一、自定义字体文件 1.1、创建字体配置文件 1.2、创建fonts.xml字体文件 1.3、在Jasper Studio中添…

【STM32下UART协议的一些认识与使用方法】

STM32下UART协议的一些认识与使用方法 串口定义通用串行异步收发器 协议中相关的概念空闲位起始位数据位奇偶校验位三种校验方式BT接收数据的流程 停止位波特率总结 UART的三种工作方式UART控制器发送数据流程接收数据流程 UART初始化UART相关结构体和库函数 串口定义 通用串行…