Vivado时序报告之Report pulse width详解

news/2024/12/22 14:57:18/

目录

一、前言

二、Report pulse width

2.1 Report pulse width

2.2 配置界面

2.3 分析结果


一、前言

    在进行时序分析时,除了slack的分析,还存在pulse width的检查,下面将对pulse width检查进行详细说明。在report timing summary报告中,也会带上Pulse Width检查结果。

二、Report pulse width

2.1 Report pulse width

        脉冲宽度检查是对信号波形进行一些规则检查,如检查设计是否满足每个时序单元时钟管脚的最小周期、最大周期、高脉冲时间和低脉冲时间要求,这些规则通常对应电路的功能限制。例如,对DSP时钟引脚的最小周期检查可以保证时钟驱动DSP单元时不会运行在一个高于内部DSP所能承受的频率。

        脉冲宽度检查不会影响综合和实现阶段,在vivado中,位流生成之前会执行该分析检查。当发生脉冲宽度违例时,说明有不合理的时钟定义或不合理的时钟结构包括太多的偏斜,此时需要去查看设计器件的数据规格,确认违例处的实际支持范围,可以简化时钟树或将时钟资源布局到更靠近违例引脚的位置。

2.2 配置界面

    进入“Reports->Timing->Report Pulse Width”

设置报告分析界面,相关配置选项如下

Results name:设置报告窗口名称,默认为timing_x的格式

Pins:可设置指定引脚进行检查,如果选择的非时钟单元引脚,如数据引脚,则报告为空

Clocks:可以通过此选择指定时钟进行检查,不指定时默认对所有时钟经过的时钟引脚进行检查

Check types:设置检查的类型,可选值有min_period,max_period,low_pulse,high_pulse,

max_skew,all,默认为all,即所有类型都检查。

only report pins/ports where check violations occur:勾选后报告只会显示违例的情况

Number of checks per check type per clock:设置对每个时钟检查报告的路径数,默认报告单条最差的路径

Significant digits:设置结果值的精度,默认为3,即小数点后3位

Export to file:勾选后,可以将报告结果以txt格式的文件导出,overwrite勾选表示覆盖原有的报告结果,Append表示不覆盖,进行结果内容的追加

Ignore command errors:执行命令时忽略命令的错误,直接运行,无任何返回信息 

Suspend message limits during command execution:勾选后则会忽略信息输出的限制,显示命令执行后所有的信息

Timer Settings窗口设置

interconnect:设置时序分析的连接延时,可选值有actual(实际布局布线后的延时,最精确),estimated(使用评估的延时),none(只考虑逻辑延时)

Speed grade:在时序分析时指定速率等级,但不会改变实际设计中的速率等级

Multi-corner configuration:设置slow corner、fast corner下的延时类型分析,默认时min_max都分析,可以只分析min或max,以及都不分析。

Disable flight delays:勾选后计算I/O延时不会考虑封装延时,flight delay即是在封装引脚到die pad间的延时。

2.3 分析结果

1)在Report Timing Summary的Design Timing Summary会有pulse width的总结报告

worst pulse width slack:报告最差的脉冲宽度slack值

Total Pulse width Negative Slack:所有脉冲宽度违例值之和,如果都不违例,则为0

Number of failing Endpoints:脉冲宽度违例的端点数目,上图为1个

Total Number of Enpoints:总的端点(时钟连接的时序单元)数目,上图为378个

下图示例为没有脉冲宽度违例,可以看出脉冲宽度违例和setup/hold违例是两个独立的概念

2) 在具体时序路径下有关于各时钟驱动所有时序引脚的pulse width报告

​3)也可在Reports->Timing->Report Pulse Width中专门生成脉冲宽度违例的报告,报告按时钟的角度进行分类

详细内容如下,每个时钟检查的类型,min period/max period,corner,lib pin,required时间,和actual时间,以及slack,slack计算方式为:actual-required


http://www.ppmy.cn/news/1524373.html

相关文章

Java语言程序设计基础篇_编程练习题*18.20 (显示多个圆)

目录 题目:*18.20 (显示多个圆) 习题思路 代码示例 输出结果 题目:*18.20 (显示多个圆) 编写一个Java程序显示多个圆,如图18-12b所示。这些圆都处于面板的中心位置。两个相邻圆之间相距10像素,面板和最大圆之间也相距10像素。…

Centos7 Hadoop 单机版安装教程(图文)

本章教程,主要记录如何在Centos7中安装Hadoop单机版。 一、软件安装包和基础环境 CentOS7.x,jdk8,hadoop 通过网盘分享的文件:Hadoop 链接: https://pan.baidu.com/s/1_qGI9QeXMAJNb3TydHhQGA?pwd=xnz4 提取码: xnz4 当然你也可以自己去官网下载。 java8:https://www.ora…

黑马点评22——最佳实践-批处理优化

文章目录 pipeline和mset集群模式下的批处理问题 pipeline和mset pipeline就是大数据量的导入,pipeline是在单机模式下的。 redis的处理耗时相比较网络传输的耗时其实是比较低的。 所以我们最好采用批处理, 集群模式下的批处理问题 在集群环境…

redis基本数据类型和常见命令

引言 Redis是典型的key-value(键值型)数据库,key一般是字符串,而value包含很多不同的数据类型: Redis为了方便我们学习,将操作不同数据类型的命令也做了分组,在官网( Commands | Do…

Mysql树形结构表-查询所有子集数据

表结构,这里只是个例子,所有的树形结构表均可用: CREATE TABLE zhkt_course_chapter (id bigint NOT NULL COMMENT 唯一id,course_id bigint NOT NULL COMMENT 所属课程id,name varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general…

最新版微服务项目搭建

一,项目总体介绍 在本项目中,我将使用alibabba的 nacos 作为项目的注册中心,使用 spring cloud gateway 做为项目的网关,用 openfeign 作为服务间的调用组件。 项目总体架构图如下: 注意:我的Java环境是17…

如何区分html和html5

HTML与HTML5在多个方面存在显著的区别。以下是对这些区别的详细分析: 1. 概念区别 HTML:HTML是HyperText Markup Language(超文本标记语言)的缩写,是一种用于创建网页和网页应用程序的标准标记语言。它通过一系列的标…

C++20那些事之何时使用可能性属性?

C20 引入了 [[likely]] 和 [[unlikely]] 这两个可能性属性,它们会给编译器优化提示,表示对应代码路径可能/不可能被执行。 乍一看,这似乎是一组很不错的属性,通过编译器优化,从而提高性能。但是事实并不是如此。 在C 标…