AR# 44174

设计咨询 - 在启动后正确同步化SRL与触发器的技巧

描述


FPGA 架构中的 CLB SRL 和 CLB/IOB D 触发器 (DFF) 一直在所有器件中释放,使用 GWE(全局写使能)信号作为启动序列的一部分。需要注意的是,设计中使用的用户时钟与配置时钟 (CCLK) 是异步的。这可让同步元件在配置完成后改变状态。

GWE 会为配置时钟同步释放 SRL 和 触发器,并且会在该部分产生巨大的歪斜。因此,在同步设计中有时会产生两种类型的行为。Xilinx 确信绝大多数的设计将不会受到影响。
  • 由于 GWE 释放的同步元件与配置时钟有关,而与用户的系统时钟无关, 因此,触发器和 SRL 会产生时序违规。
  • 传递 GWE 信号表明 SRLs 和触发器的释放时间可能稍有不同,从而导致设计的某些部分在 其他部分之前启动。 

如果该设计符合下列标准之一,则应该在设计中实现此答复记录底部的解决方案,以防止此问题的发生:
  • 此设计依赖于 对初始化序列元件的同步启动,并使用 触发器和 SRL (这包括使用初始值的推导 SRL,检查映射报告以确定是否在设计中使用 SRL)。
  • 此设计依赖于对初始化序列元件的同步启动,该设计不会在同步元件启动后对其进行复位断言。无法进行 SRL 复位。

这种行为不是新现象,并且在所有 FPGA 器件系列中都存在。为了正确初始化 SRL 和触发器,我们建议始终采用以下解决方案之一。

解决方案


您可以使用两种不同的方法来确保设计与用户系统时钟保持同步启动。

1)第一种方法是控制驱动 SRL 和 D 触发器的时钟。
  • 在启动后的最初时间里,应停止时钟运行。
  • 当从 STARTUP 原语中断言 EOS 信号后,此时钟可以与用户的系统时钟同步重新 启动。
  • 控制此时钟的最佳方法是使用 BUFGCE、BUFR 复位或 BUFHCE。
    • 不要使用这些元件为时钟提供 DCM 反馈。对 DCM 的反馈时钟执行门控管理,可能会造成 DCM 的不可靠操作。只有在设计中涉及 SRL 和 DFF 元件的时钟才需要受控制。

2)  替代的方法是使用可控的单个同步元件的 CE 端口,而不是停止时钟的运行。  
  • 在启动后的最初时间里,不应 启用 CE 端口。 
  • 在从 STARTUP 原语中断言 EOS 信号后,可以使 CE 引脚与用户系统时钟保持同步。  
  • 该解决方案不适用于推断的 SRL 逻辑。如配合使用推断的 SRL,请采用第一种解决方案。
  • 请注意,这种技术可能更容易受到时序和路由问题的影响,因此只有在第一种解决方案不适用时才能使用。

以上两种技术都可根据情况正确使用。

链接问答记录

主要问答记录

相关答复记录

AR# 44174
日期 11/15/2012
状态 Active
Type 设计咨询
器件 More Less