【Xilinx】时序约束学习 TIMING-1: 时钟修改块上的时钟波形无效

2024-04-18 13:44

本文主要是介绍【Xilinx】时序约束学习 TIMING-1: 时钟修改块上的时钟波形无效,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        在 <cell_type> 输出 <pin_name> 上指定的时钟 <clock_name> 的时钟波形无效, 与时钟修改块 (CMB) 设置不匹配。该时钟波形为 <VALUE>。期望的波形为 <VALUE>。

描述

        Vivado Design Suite 会根据 CMB 设置和传入主时钟的特性, 在 CMB 输出上自动衍生时钟。如果用户在 CMB 输出上定义生成时钟, 那么 Vivado 不会在同一定义点(信号线或管脚) 上自动衍生生成时钟。 DRC 警告报告称用户定义的生成时钟与 Vivado 将自动创建的自动衍生时钟不匹配。这可能导致硬件故障, 因为设计的时序约束与器件上所发生的约束不匹配。

学习:

CMB--时钟调整模块(Clock Modifying Blocks,CMB)

Vivado时序工具能够识别设计中时钟调整模块(Clock Modifying Blocks,CMB)及其输入主时钟的变更特性。自动为CMB输出的时钟信号创建约束,指定其相对源时钟的波形关系。

解决方案

        如果无需用户定义的生成时钟, 请移除约束并改为使用自动衍生时钟。如果需要约束, 请验证生成时钟约束与自动衍生时钟波形是否匹配, 或者修改 CMB 属性以与期望的时钟波形相匹配。如果要强制设置自动衍生时钟的名称, 建议使用仅定义 -name 选项的 create_generated_clock 约束以及定义该时钟的对象(通常为 CMB 的输出管脚) 的名称。请参阅《Vivado Design Suite 用户指南: 使用约束》 (UG903), 以了解有关创建生成时钟的信息以及自动衍生时钟重命名约束的限制。

示例

        在图中, 在 MMCM 实例管脚 CLKOUT0 上定义了 create_generated_clock 约束, 但此约束与 Vivado 从MMCM 属性设置生成的自动衍生波形不匹配。

        如需仅对自动衍生时钟进行重命名, 请在约束文件中的主时钟定义后使用以下约束:
create_generated_clock -name clkName [get_pins clk_gen_i0/clk_core_i0/inst/mmcme3_adv_inst/CLKOUT0]

这篇关于【Xilinx】时序约束学习 TIMING-1: 时钟修改块上的时钟波形无效的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/914942

相关文章

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

Linux中修改Apache HTTP Server(httpd)默认端口的完整指南

《Linux中修改ApacheHTTPServer(httpd)默认端口的完整指南》ApacheHTTPServer(简称httpd)是Linux系统中最常用的Web服务器之一,本文将详细介绍如何... 目录一、修改 httpd 默认端口的步骤1. 查找 httpd 配置文件路径2. 编辑配置文件3. 保存

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

Nginx 413修改上传文件大小限制的方法详解

《Nginx413修改上传文件大小限制的方法详解》在使用Nginx作为Web服务器时,有时会遇到客户端尝试上传大文件时返回​​413RequestEntityTooLarge​​... 目录1. 理解 ​​413 Request Entity Too Large​​ 错误2. 修改 Nginx 配置2.1

Python对PDF书签进行添加,修改提取和删除操作

《Python对PDF书签进行添加,修改提取和删除操作》PDF书签是PDF文件中的导航工具,通常包含一个标题和一个跳转位置,本教程将详细介绍如何使用Python对PDF文件中的书签进行操作... 目录简介使用工具python 向 PDF 添加书签添加书签添加嵌套书签Python 修改 PDF 书签Pytho

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示