Spartan-6的设计咨询 –  IODELAY2;延迟和早期边沿延迟和单数据位损坏-Xilinx-AMD社区-FPGA CPLD-ChipDebug

Spartan-6的设计咨询 – IODELAY2;延迟和早期边沿延迟和单数据位损坏

描述

Spartan-6 FPGA器件中的IODELAY2模块可能会遇到延迟数据边沿延迟,早期数据边沿延迟和单数据位损坏。针对所有生产状态Spartan-6 FPGA器件, Spartan-6 FPGA生产勘误表 (EN148)已针对此问题进行了更新:

https://www.xilinx.com/support/documentation/errata/en148.pdf

本答复记录描述了先前掩码修订器件的行为。

有关新掩码修订器件的详细信息,请参阅(Xilinx答复41083) 。有关如何识别先前和新掩码修订的详细信息,请参阅XCN11012

XA Automotive,XQ,Q级和XC低功率-1L器件将仅通过New Mask Revision发布。

注意: MCB不受此问题的影响。

IDELAY和ODELAY模式中的延迟数据边缘延迟
对于所有IDELAY_TYPE设置,当IDELAY_VALUE或ODELAY_VALUE为4或更高时,或者当用作输出延迟时,IODELAY2块可在上升沿或下降沿转换时添加最多350 ps的延迟。

此行为可以在所有数据速率下出现,并应包含在系统时序裕度分析中。

延迟数据边缘延迟解决方法
后期数据边沿延迟问题没有解决方法,必须在系统时序裕度分析中考虑。有关时序约束的指导,请参阅(Xilinx答复39046) ,以说明延迟的潜在变化。

ODELAY模式下的早期数据边缘延迟
在ODELAY模式下使用的IODELAY2模块可以在上升沿或下降沿转换的早期产生高达350 ps的数据边沿。早期数据边缘早于预期或正常数据边缘。对于所有ODELAY_VALUE设置,此行为可能以高于533 Mb / s的数据速率出现,并应包含在系统时序裕度分析中。

早期数据边缘延迟解决方法
增加的边沿延迟问题没有解决方法,必须在系统时序裕度分析中考虑。有关时序约束的指导,请参阅(Xilinx答复39046) ,以说明延迟的潜在变化。

IDELAY和ODELAY模式下的单数据位损坏
IODELAY2块可以破坏所有IDELAY_TYPE设置的单个数据位或用作输出延迟。

单数据位损坏变通方法
具体的解决方法基于IDELAY_TYPE的设置。以下指南建议根据IODELAY2的使用模式限制IODELAY2的使用。注意,IDELAY_TYPE是用于定义操作模式的属性;它与IDELAY_MODE或SERDES_MODE属性无关。另请注意,所有性能限制均以实际数据速率而非时钟频率为准。这些值与SDR或DDR或ISERDES2 DATA_RATE属性的使用无关。

  • IDELAY_TYPE = DEFAULT – 数据速率不得超过250 Mb / s以避免数据损坏。此模式最常用于低速注册输入,因此影响较低。
  • IDELAY_TYPE = FIXED或VARIABLE_FROM_ZERO或在ODELAY模式下使用时 – IDELAY_VALUE或ODELAY_VALUE不得超过表2中的值,以避免指定数据速率下的数据损坏。

    图片[1]-Spartan-6的设计咨询 –  IODELAY2;延迟和早期边沿延迟和单数据位损坏-Xilinx-AMD社区-FPGA CPLD-ChipDebug
  • IDELAY_TYPE = VARIABLE_FROM_HALF_MAX – 数据速率不得超过400 Mb / s,IODELAY2 IOCLK频率必须等于数据速率,正增量不得超过5以避免数据损坏。
  • IDELAY_TYPE = DIFF_PHASE_DETECTOR – 数据速率不得超过400 Mb / s。在400 Mb / s及以下时,时钟偏移的数据(包括封装跟踪差异)不得超过0.15单位间隔(UI)以避免数据损坏。在这种情况下,时钟偏移的数据意味着时钟边沿不能超过0.15UI进入(之后)数据脉冲。 .15 UI指南涉及以下事实:延迟时钟强制抽头值递增,因此过多的偏斜会导致抽头增加超出支持的范围。

受影响的器件

失败特征

  • 引脚上可能发生额外的边沿延迟,数据损坏或两者兼而有之。
  • 避免数据损坏的解决方法不能避免额外的边缘延迟。
  • 失败是间歇性的
  • 对于超过400 Mb / s的所有数据速率,FIXED模式下的最大抽头限制在中点之前。对于可变模式,这会将限制驱动为400 Mb / s或更低,例如VARIABLE_FROM_HALF_MAX。

风险

总体故障率非常低,并且与数据速率和使用的IODELAY2元件数量有关。

内存控制器块

请注意,内存控制器模块(MCB)接口不受IODELAY2问题的影响。

软件/用户指南
没有软件或用户指南更改来解决此问题。

补充指导
以下是帮助设计上述解决方案的附加指南。当使用IDELAY_TYPE作为VARIABLE_FROM_ZERO或VARIABLE_FROM_HALF_MAX时,监控当前的抽头值非常重要,这样它就不会违反指定的值。为此,设计一个计数器电路,每次增加抽头延迟值时加“1”,每减少抽头延迟值,减去“1”。可以监视此值以确保抽头值不高于指定的值以避免单个数据位损坏。

  • 避免每位偏移校正并使用时钟偏移校正来最小化易受影响的引脚数。
  • 请联系您的FAE或通过以下网址向Xilinx技术支持部门提供服务请求: https//www.xilinx.com
请登录后发表评论

    没有回复内容