AR# 51687

设计咨询 MIG 7 系列 DDR3/DDR2 – v1.7 中使用 XADC 模块进行温度监控器校准的功能被添加到所有的 DDR3/DDR2 设计 (ISE 14.3/Vivado 2012.3)

描述

从 MIG v1.7版本开始,配合 ISE 14.3/Vivado 2012.3 设计工具,DDR3、DDR3L 和 DDR2 设计包含温度监控系统,可就温度变化和漂移保持读取数据窗口的 DQS 中心位置。本答复记录旨在补充《7 系列 FPGA 存储器接口解决方案用户指南 (AXI)》中提供的信息 (UG586) > DDR3 和 DDR2 存储器接口解决方案 > 内核架构 > PHY。

注意: 本答复记录是 Xilinx MIG 解决方案中心的一部分 (Xilinx 答复 34243)。Xilinx MIG 解决方案中心可解决所有与 MIG 相关的问题。无论您是要使用 MIG 来进行新设计还是要解决问题,请使用 MIG 解决方案中心来指导您获取相应的信息。

解决方案

简介

温度监控器校准采用了 7 系列 XADC 模块。MIG 7 系列设计对 XADC 模块进行实例化(在“user_design/rtl/clocking/mig_7series_v1_x_tempmon.v”模块中)并且以可配置的间隔进行轮询处理。 

XADC 输出当前温度,如果需要,MIG 设计则用此当前温度更新调整 DQS 和读取数据窗口。

读取 XADC 温度并根据需要进行调整的 rtl 位于“user_design/rtl/phy/mig_7series_v1_x_ddr_phy_tempmon.v”模块中。 

只要 Refresh 或 ZQ Short Calibration 被发送到 DRAM 并且所有待处理事务都已清空 DQ 总线,则存储器控制器发送启用信号 (tempmon_sample_en) 到 mig_7series_v1_x_ddr_phy_tempmon.v 模块。 

MIG 7 系列校准完成后,执行初始温度读取操作以建立基准。 

每个后续启用后,会将当前温度和基准温度进行对比。 

如果温度变化超过阈值,将触发 DQS 更新以读取窗口调整值,模块则会调整 PHASER_IN 精细延迟,从而减少温度漂移,并设置新的基准温度。 

该过程持续在整个正常操作过程中。 

XADC 模块每 10ms 进行温度轮询,存储器控制器在 Refresh 和 ZQ Calibration 期间执行任何必要的更新。

温度监控器校准可在所有支持的频率上使用。 

改变对于 MIG 7 系列 DDR3/DDR2 设计的性能规范不会造成影响或变化。

暂不使用 XADC 的设计

对于目前不使用 XADC 模块的设计,MIG 7 系列工具的 1.7 版将自动对存储器控制器设计中的 XADC 模块进行实例化。用户只需确保 MIG 中 FPGA 选项屏幕的 XADC 实例化选项设为启用,也就是默认设置。此外,也必须满足 XADC 电路板设置和下方 MIG 使用部分的要求。

使用 XADC 的设计

每个 7 系列设备只有一个 XADC。对于已经采用 XADC 模块的设计来说,可继续使用该模块,并定期向 MIG 7 系列代码提供温度。设计使用 XADC 必须:

  • 必须在 XADC 向导中启用“启用 DRP”(动态重配置端口)和“启用 DCLK”选项。这两个选项可用于对温度进行采样。它们是 MIG 7 系列温度监控系统所需的唯一 XADC 选项。其它所有选项应根据用户设计要求进行设置。
  • 包括每 1 到 10ms 内进行 DADDR 7b0 温度轮询。
  • DO[15:0]上轮询期间的 MSB 12 位温度回读必须提供给 MIG 内核。温度可能是 MIG 7 系列 DDR3 IP 的异步输入。


如欲了解有关 XADC 使用的具体信息,敬请参见《7 系列 FPGA XADC 双 12 位 1MSPS 模数转换器用户指南》

如果要在生成的 MIG 7 系列内核中禁用 XADC 的实例化,则将“XADC 实例化”选项设置为“禁用”。MIG 7 系列工具的“FPGA 选项”屏幕上也可提供该选项。禁用 XADC 实例化将创建顶层输入端口 device_temp_i[11:0]。12 个 MSB 位的“DO”DRP 端口应连接到此输入端口,无需任何转换。自 Vivado 2014.1 起,MIG 支持使用 1 到 116 uS 提供温度,因为 XADC 现在已启用平均值,而以前版本所用的刷新率为 1 到 10 uS。

对于 MIG 2014.1 和更高版本,XADC 的配置如下:
    启用了校正的连续序列模式
    启用校正系数
    针对校正启用了平均值
    平均值为 16,并针对温度通道启用了平均值
    MIG 配置温度测量更新时间:  ~116us

注意:通过 MIG 7 系列工具禁用 XADC 模块的实例化只能允许用户保持他们当前使用的模块。而不是禁用温度监控器校准的使用。MIG 7 系列 DDR3/DDR2 设计需要 XADC 模块和温度监控器校准保持读取数据窗口中 DQS 的中心位置。

EDK 中 DDRX 内核的 XADC 用法

在通过 EDK 生成 DDRX 内核时,MIG 7 系列中的“XADC 实例化”选项不可选。在生成的设计中,XADC 块的实例化取决于是否连接了顶层 device_temp_i 输入端口。如欲了解完整的详细信息,敬请参阅 7 系列 FPGA 存储器接口解决方案用户指南 (UG586)。

XADC 电路板设置和 MIG 的使用

只要遵循所有的 XADC 特定指南,MIG 7 系列 IP 就能使用该模块了。只要 VREFP/N 引脚连接到以下 XADC 支持选项之一,MIG 既可添加 XADC,也能使用设计中已经有的 XADC:

  • 连接到外部参考电源.
    注意: Vccadc 必须适当进行供电。请参见《7 系列 FPGA XADC 双 12 位 1MSPS 模数转换器用户指南》
  • 通过 XADC 指定的铁氧体磁珠接地.
    注意: Vccadc 必须适当进行供电。请参见《7 系列 FPGA XADC 双 12 位 1MSPS 模数转换器用户指南》
  • 电路板直接接地.
    注意:只有 XADC 专用于 MIG 时,此选项才适用。这足以实现 MIG 温度补偿所需的准确性。如果 VREFP/N 和 GNDADC 直接在板上接地,Vccadc 无需电源滤波,即可直接连接到 Vccaux。

纯 PHY 设计的注意事项:

MIG 7 系列控制器发送启用信号到mig_7series_v1_x_ddr_phy_tempmon.v 模块读取温度,如果需要,则调整 PHASER_IN 精细延迟。采用定制控制器的设计负责发送启用信号。我们建议遵循与 MIG 7 系列控制器相同的实现方案,在 Refresh 和 ZQ Calibration 期间发送启用信号。如欲了解有关仅限 PHY 的支持和用法的完整详情,敬请参阅 (Xilinx 答复 51204)

其它信息

  • 温度监控系统用来保持在温度变化和漂移情况下读取数据窗口 DQS 的中心位置。这与 Phaser_IN 中执行的动态位置调整不同,其要求在闲置和较长写入命令流中定期进行读取。需要定期读取以保持 Phaser_IN 位置的不断调整,并能在读取期间适当进行捕获。了解更多信息,敬请查看 (Xilinx 答复 43344)
  • 如欲了解有关如何运行仿真演示温度监控器电路根据温度变化更新 Phaser_IN TAP 的详情,敬请参见:(Xilinx 答复 52523)

修订历史记录
04/16/2014 - 使用 MIG 2014.1 XADC 更新进行了更新
03/06/2013 - 添加了 EDK 特定信息
10/23/2012 - 初始版本

链接问答记录

主要问答记录

Answer Number 问答标题 问题版本 已解决问题的版本
51954 MIG 7 Series DDR2/DDR3 - PHY Initialization and Calibration N/A N/A

相关答复记录

AR# 51687
日期 04/15/2014
状态 Active
Type 设计咨询
器件
IP