vivado时序方法检查6
2023-12-14 05:29:08
    		 
 TIMING-19 
 : 
 ODDR  
 上的生成时钟波形反相  
 
 
 生成时钟  
 <clock_name>  
 的波形与传入时钟  
 <clock_name>  
 的波形相比呈反相。  
 
 
 描述  
 
 
 前向时钟端口上的生成时钟应定义为与传入时钟相关。 
 DRC  
 警告报告称 
 , 
 通过对比传入源时钟发现 
 , 
 前向时钟端口上的生成时钟具有无效的波形( 
 例如 
 , 
 波形反向 
 ) 
 。这可能导致硬件故障 
 , 
 因为与前向时钟关联的端口的时序分析与器件上所发生的操作不匹配。  
 
 
 解决方案  
 
 
 修改  
 create_generated_clock  
 约束以定义与传入时钟定义匹配的正确波形。 
 
 
  TIMING-20 
  : 
  未设置时钟的锁存器  
 
 
  
  无法正确分析锁存器  
  <cell_name> 
  , 
  因为时序时钟无法访问其控制管脚  
  <pin_name> 
  。  
 
 
  
  描述  
 
 
  
  此 
   DRC  
  报告的是不受时序时钟约束的锁存器单元列表 
  , 
  这会影响生成的时序分析。强烈建议正确定义所有时钟以实现最大范围的时序路径覆盖, 
  并保证最高的准确性。否则后果可能导致时序分析覆盖范围不完整 
  , 
  从而导致硬件故障。  
 
 
  
  解决方案  
 
 
  
  解决办法是在时钟树的源端创建基准时钟或生成时钟 
  , 
  以驱动锁存器单元上未约束的控制管脚。  
 
 
  
   TIMING-21 
   : 
   MMCM  
   上的 
    COMPENSATION  
   属性无效  
  
 
   
   MMCM  
   <cell_name>  
   包含的与其反馈回路连接相关的 
    COMPENSATION  
   属性值无效。如果反馈回路连接至 
    FPGA外部, 
   该属性应设置为 
    EXTERNAL 
   。如果反馈回路位于 
    FPGA  
   内部 
   , 
   该属性应设置为 
    ZHOLD 
   。  
  
 
   
    描述  
   
 
    
    MMCM  
    补偿模式用于定义为输出时钟的延迟补偿配置 
     MMCM  
    反馈的方式。根据 
     MMCM  
    用例 
    , 
    反馈路径应与特定拓扑结构相匹配。此 DRC  
    警告报告称 
     MMCM  
    用例的拓扑结构与 
     COMPENSATION  
    属性值不匹配。这可能导致硬件中因时序分析不匹配而出现意外行为。  
   
 
    
    解决方案  
   
 
    
    建议在设计中 
    , 
    将 
     MMCM  
    的 
     COMPENSATION  
    属性的默认值 
     AUTO  
    保留不变。 
    Vivado IDE  
    将在电路拓扑结构上自动选择相应的补偿值。 
   
 
    
     TIMING-22 
     : 
     MMCM  
     上缺少外部延迟  
    
 
     
     MMCM  
     <cell_name>  
     具有外部反馈回路 
     , 
     但在  
     FBOUT  
     与  
     FBIN  
     之间未指定任何外部延迟。建议在连接到具有外部反馈回路的 FBOUT  
     管脚和  
     FBIN  
     管脚的 
      2  
     个端口之间使用 
      set_external_delay  
     指定外部延迟。  
    
 
     
     描述  
    
 
     
     如果反馈板载走线与外部组件的走线相匹配 
     , 
     那么可配置 
      MMCM  
     以进行外部纠偏。在计算 
      MMCM  
     补偿延迟时会使用外部延迟值。这可能导致硬件故障( 
     在 
      I/O  
     路径上尤其如此 
     ), 
     因为 
      MMCM  
     补偿的时序分析与器件上所发生的操作不匹配。  
    
 
     
     解决方案  
    
 
     
     在外部反馈输入和输出端口之间为已定义的外部走线延迟添加  
     set_external_delay  
     约束。 
    
 
     
     示例  
    
 
     
     set_external_delay -from <output_port> -to <input_port>  
    
 
     
     <external_delay_value>  
    
 
     
      TIMING-23 
      : 
      发现组合循环  
     
 
      
      在组合路径上已检测到时序循环。在  
      <cell_name1>  
      与  
      <cell_name2>  
      之间已禁用时序弧 
      , 
      以中断时序循环。  
     
 
      
      描述  
     
 
      
      组合逻辑的输出回馈到其输入 
      , 
      从而生成时序循环时 
      , 
      就会创建组合时序循环。此循环会无限循环相同路径运行且无法定时, 
      从而导致周期数徒然增加。为解决时序循环 
      , 
      Vivado IDE  
      会禁用循环中的单元上的时序弧  
      (timing arc) 
      。  
     
 
      
       解决方案  
      
 
       
       如果您不想创建组合反馈回路 
       , 
       请通过修改设计源文件 
        (RTL)  
       来纠正问题。但由于本应使用时序循环 
       , 
       因此请使用set_disable_timing 命令在最合理位置 
       ( 
       通常为反馈路径处 
       ) 
       中断时序循环 
       , 
       而不是交由 
        Vivado  
       时序在随机位置将其中断。  
      
 
       
        TIMING-24 
        : 
        仅最大延迟数据路径已被覆盖  
       
 
        
        时钟  
        <clock_name>  
        和  
        <clock_name>  
        之间的  
        set_clock_groups  
        或  
        set_false_path  
        覆盖了  
       
 
        
        set_max_delay -datapath_only 
        ( 
        。不建议覆盖 set_max_delay -datapath_only  
        约束。将时钟之间的  
        set_clock_groups  
        或  
        set_false_path  
        替换为点对点 set_false_path  
        约束。  
       
 
        
        描述  
       
 
        
        仅当  
        set_max_delay -datapath_only  
        约束被时钟间的  
        set_clock_groups  
        或  
        set_false_path  
        约束所覆盖时, 
        才会出现此 
         DRC  
        警告。如果点对点  
        set_false_path  
        约束覆盖  
        set_max_delay -datapath_only  
        约束 
        ,那么将不会生成此 DRC 
        。  
       
 
        
        解决方案  
       
 
        
        解决方案是将时钟之间的  
        set_clock_groups  
        或  
        set_false_path  
        替换为点对点伪路径约束 
        , 
        以避免错误覆盖set_max_delay -datapath_only 约束。  
       
 
      
    			文章来源:https://blog.csdn.net/cckkppll/article/details/134863788
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
    	本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!