vivado实现分析与收敛技巧7-布局规划

关于布局规划
布局规划有助于设计满足时序要求。当设计难以始终如一满足时序要求或者从未满足时序要求时 AMD 建议您执行布局规划。如果您与设计团队协作并且协作过程中一致性至关重要, 那么布局规划同样可以发挥作用。布局规划可通过减少平均布线延迟来改进建立时间裕量( TNS WNS 。在实现期间 时序引擎致力于解决最差情况建立时间违例和所有保持时间违例。布局规划只能改进建立时间裕量。当网表采用层级结构时, 手动布局规划最为简单。如果综合将整个网表平铺 那么设计分析会明显变慢。请将综合设置为生成层级网表。对于 Vivado 综合 请使用
synth_design -flatten_hierarchy rebuilt
Vivado 综合默认策略
含交错逻辑路径的大型层级块可能分析难度较大。在较低的次级层级中采用独立逻辑结构的设计更便于分析。最好寄存层级模块的所有输出。走线穿过多个层级块的路径布局分析难度较大。
了解布局规划基础知识
并非每项设计都能始终满足时序。您可能需要为工具提供解决方案指南。布局规划支持您引导工具完成高层次层级布局或详细门电路布局。
您将通过修复最严重的问题或者最常见的问题来最大程度改进结果。例如 如果存在离群路径并且这些路径的裕量明显极差或者具有高层次的逻辑, 那么首先需修复这些路径。“ Reports ” → “ Timing ” → “ Create Slack Histogram ”(报告 > 时序 > 创建裕量直方图 命令可以提供离群路径视图。或者 如果在多个负时序裕量路径中出现相同的时序端点, 那么改善其中一条路径可能可为该端点上其他路径实现相同的改善效果。可考虑利用布局规划通过减少布线延迟或者增加非关键块上的逻辑密度来提高性能。逻辑密度是对应芯片上的逻辑封装紧密程度的指标。
布局规划可帮助您满足更高的时钟频率要求并提升结果的一致性。有多种方法适用于布局规划 每种方法都各有优缺点。
详细的门级布局规划
详细的门级布局规划涉及在器件上的特定 site 站点 内对个别叶节点单元进行布局。
详细的门级布局规划的优势
• 详细的门级布局规划适用于手动布线的信号线。
• 详细的门级布局规划可以最大限度发挥器件性能。
详细的门级布局规划的劣势
• 详细的门级布局规划较为耗时。
• 详细的门级布局规划需要具备有关器件和设计的广泛知识。
• 如果网表发生变更 详细的门级布局规划可能需重做。
建议 请将门级布局规划作为最终手段来使用。
信息复用
复用来自满足时序的设计的信息。如果设计无法始终如一满足时序 请使用此流程。要复用信息 请执行以下操作
1. 打开 2 个实现运行
a. 1 个对应满足时序的运行。
b. 1 个对应不满足时序的运行。
2. 查看 2 项设计之间的区别。
a. 通过 report_timing_summary 识别部分失败的时序路径。
b. 在满足时序的设计上 min_max 模式运行 report_timing 这样即可对满足时序的设计上的路径进行定时。
3. 比较时序结果
a. 时钟偏差
b. 数据路径延迟
c. 布局
d. 布线延迟
4. 如果路径端点之间的逻辑延迟量存在差异 请重新执行综合运行。
复查 I/O 和单元布局
复查设计中的单元布局。比较 2 I/O 报告 以复查 I/O 布局和 I/O 标准。确保所有 I/O 均已完成布局。通过简单搜索可以发现不含固定布局的所有 I/O 如下图所示。
如果不同运行间的时钟偏差发生改变 请考虑复用来自满足时序的运行的时钟原语布局。“ Clock Utilization 时钟使用率) 报告可列出时钟树驱动程序的布局 如下图所示。
LOC 约束可轻松复制到 XDC 约束文件中。
许多设计都已通过复用块 RAM DSP 布局来满足时序。请选择“ Edit > Find 编辑 > 查找 以列出实例。
添加布局约束
固定逻辑以便向 XDC 添加布局约束。
1. 从查找结果中选择宏。
2. 右键单击并选中“ Fix Cells 固定单元 ), 如下图所示。
复用布局
I/O 、全局时钟资源、块 RAM 宏和 DSP 宏布局十分便于复用。复用此布局有助于减少各网表版本之间的结果差异。这些原语通常具有稳定的名称。布局通常易于维护。
对增量编译复用布局
增量编译支持复用来自上一次运行的布局布线数据。只需在 place_design 前引用现有已布局或已布线的 DSP 即可完成复用设置。可复用完整设计、任一层级或单元类型( DSP 或块 RAM 。增量编译还可自动处理对设计某些部分执行的更改。

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

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

相关文章

Redis-安装、配置和修改配置文件、以及在Ubuntu和CentOS上设置Redis服务的开机启动和防火墙设置,以及客户端连接。

目录 1. Redis简介 2. 离线安装 2.1 准备工作 2.2 解压、安装 2.3 修改配置文件 2.4 redis服务与关闭 2.5 redis服务的开机启动 2.5.1 Ubuntu上的配置 2.5.2 centos上的配置 3. 在线安装 4. 设置防火墙 5. 客户端连接 1. Redis简介 Redis 是完全开源免费的&#x…

鼠标点击效果.html(网上收集6)

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>鼠标点击</title> </head><body> <script>(function () {var a_idx 0;window.onclick function (event) {var a new Array(…

docker 如何在容器内重启 php

要在Docker容器内重启PHP&#xff0c;您可以按照以下步骤进行操作&#xff1a; 1. 进入您的Docker容器。可以使用以下命令启动一个交互式的容器会话&#xff1a; docker exec -it <container_name> /bin/bash其中<container_name>是您的容器的名称。。 2. 在容器内…

【Python从入门到进阶】43.验证码识别工具结合requests的使用

接上篇《42、使用requests的Cookie登录古诗文网站》 上一篇我们介绍了如何利用requests的Cookie登录古诗文网。本篇我们来学习如何使用验证码识别工具进行登录验证的自动识别。 一、图片验证码识别过程及手段 上一篇我们通过requests的session方法&#xff0c;带着原网页登录…

人工智能 - 人脸识别:发展历史、技术全解与实战

目录 一、人脸识别技术的发展历程早期探索&#xff1a;20世纪60至80年代技术价值点&#xff1a; 自动化与算法化&#xff1a;20世纪90年代技术价值点&#xff1a; 深度学习的革命&#xff1a;21世纪初至今技术价值点&#xff1a; 二、几何特征方法详解与实战几何特征方法的原理…

golang实现文件上传(高并发+分块+断点续传+加密)

运行视频 // todo 根据前端传递文件加密 func (s *FileProcess) FileProcessEncryptionByFront(file multipart.File, h *multipart.FileHeader) interface{} { //根据字节直接处理文件 这个是前端传递的二进制流s.FileProcessInit() //文件初始化 设置原来文件…

代码随想录算法训练营第三十九天| 62 不同路径 63 不同路径 ||

目录 62 不同路径 63 不同路径 || 62 不同路径 class Solution {public int uniquePaths(int m, int n) {int f[][] new int[m][n];for(int i 0;i < m;i)f[i][0] 1;for(int i 0;i < n;i)f[0][i] 1;for(int i 1;i < m;i){for(int j 1;j < n;j){f[i][j] …

什么是Ros(三)- 常用工具简介

库&#xff1a;用于机器人的感知、运动控制、导航、仿真等领域。一些常用的库包括OpenCV、PCL&#xff08;Point Cloud Library&#xff09;、MoveIt、Gazebo等。 调试工具&#xff1a;&#xff08;如启动roslaunch、数据记录rosbag&#xff09; 可视化工具&#xff1a;&…

python安装与配置:在centos上使用shell脚本一键安装

介绍 Python是一种功能强大且广泛使用的编程语言&#xff0c;但在某些情况下&#xff0c;您可能需要安装和配置特定版本的Python。本教程将向您展示如何使用一个Shell脚本自动完成这个过程&#xff0c;以便您可以快速开始使用Python 3。 使用shell自动化安装教程 1. 复制脚本…

51单片机项目(19)——基于51单片机的传送带产品计数器

1.功能描述 应用背景: 某生产线的传送带上不断地有产品单向传送&#xff0c;传送时会通过光电传感器产生方波信号&#xff0c;将该信号(可以采用方波发生器来模拟该信号)直接传送给51单片机&#xff0c;利用计数器0计量产品(方波信号)的个数&#xff0c;利用.定时器1产…

Python海绵宝宝

目录 系列文章 写在前面 海绵宝宝 写在后面 系列文章 序号文章目录直达链接表白系列1浪漫520表白代码https://want595.blog.csdn.net/article/details/1306668812满屏表白代码https://want595.blog.csdn.net/article/details/1297945183跳动的爱心https://want595.blog.cs…

leetcode 209. 长度最小的子数组(优质解法)

代码&#xff1a; //时间复杂度 O(N) ,空间复杂度 O(1) class Solution {//采用滑动窗口的方法解决public int minSubArrayLen(int target, int[] nums) {int numsLengthnums.length;int minLengthInteger.MAX_VALUE;int left0;int right0;int sum0;while (right<numsLengt…

FindSecBugs支持的检测规则

很多SAST集成了FindSecBugs这个开源工具&#xff0c;其好处是直接对Class文件进行检测&#xff0c;也就是直接检测二进制问题&#xff0c;可以直接检测war、jar&#xff0c;还是非常方便的。虽然误报率较高&#xff0c;但是这些检测出来的安全漏洞很多是安全从业人员耳熟能详的…

【SpringBoot】讲清楚日志文件lombok

文章目录 前言一、日志是什么&#xff1f;二、⽇志怎么⽤&#xff1f;三.自定义打印日志3.1在程序中得到日志对象3.2使用日志打印对象 四.⽇志级别4.1日志级别有什么用4.2 ⽇志级别的分类与使⽤ 五.日志持久化六.lombok6.1添加lobok依赖注意&#xff1a;使⽤ Slf4j 注解&#x…

linux 内核进程管理介绍

Linux内核进程管理是操作系统中非常重要的一部分&#xff0c;它负责管理和调度系统中的进程。本文将介绍Linux内核进程管理的工作原理、调度算法等方面的内容。 一、进程的创建和销毁 在Linux中&#xff0c;进程的创建通过fork()系统调用完成。fork()会创建一个子进程&#xf…

Linux 多线程(C语言) 备查

基础 1&#xff09;线程在运行态和就绪态不停的切换。 2&#xff09;每个线程都有自己的栈区和寄存器 1&#xff09;进程是资源分配的最小单位&#xff0c;线程是操作系统调度执行的最小单位 2&#xff09;线程的上下文切换的速度比进程快得多 3&#xff09;从应用程序A中启用应…

Linux系列-1 Linux启动流程——init与systemd进程

背景&#xff1a; 最近对所有项目完成了一个切换&#xff0c;服务管理方式由&#xff1a; init-> systemd。对相关知识进行总结一下。 1.启动流程 服务器的整体启动流程如下图所示&#xff1a; POST&#xff1a; 计算机通电后进行POST( Power-On Self-Test )加电自检&am…

linux之buildroot(3)配置软件包

Linux之buildroot(3)配置软件包 Author&#xff1a;Onceday Date&#xff1a;2023年11月30日 漫漫长路&#xff0c;才刚刚开始… 全系列文章请查看专栏: buildroot编译框架_Once_day的博客-CSDN博客。 参考文档&#xff1a; Buildroot - Making Embedded Linux Easymdev.t…

Hdoop学习笔记(HDP)-Part.17 安装Spark2

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

canvas 轮廓路径提取效果

前言 微信公众号&#xff1a;前端不只是切图 轮廓 对内容做border效果&#xff0c;可以先看下代码运行的效果 内容是黑线构成的五角星&#xff0c;其轮廓就是红线的部分&#xff0c;本文主要介绍如何在canvas中实现这种效果 Marching Square 这里运用到的是marching square算法…