AR# 71696

UltraScale/UltraScale+ DDR4 - Add support for changing Refresh Parameters through Tcl flow


Version Found: DDR4 v2.2 (Rev. 5)

Version Resolved: See (Xilinx Answer 69035)

The timing parameters tREFI, tRFC and tRFC_dlr can only be modified by creating a custom CSV for going over temperature.


In Vivado 2018.3, user parameters have been added to the DDR4 IP so that the refresh timing can be adjusted without having to modify the RTL manually.

User Parameter
Value FormatDefault ValueUnits

Note: We do not validate the values entered. 

It is the responsibility of the user to enter the correct values.

  1. Generate the DDR4 IP.

  1. In the Generate Output Products section, select "Skip" instead of "Generate".

  1. To set tREFI, run the following command in the Tcl console:

set_property -dict [list CONFIG.C0.DDR4_TREFI <value_to_be_set>] [get_ips <ip_name>]

For example:

set_property -dict [list CONFIG.C0.DDR4_TREFI {7800000}] [get_ips ddr4_0]
  1. To set tRFC, run the following command in the Tcl console:

set_property -dict [list CONFIG.C0.DDR4_TRFC <value_to_be_set>] [get_ips <ip_name>]

For example:

set_property -dict [list CONFIG.C0.DDR4_TRFC {260000}] [get_ips ddr4_0]
  1. To set tRFC_dlr, run the following command in the Tcl console: 

set_property -dict [list CONFIG.C0.DDR4_TRFC_DLR <value_to_be_set>] [get_ips <ip_name>]

For example:

set_property -dict [list CONFIG.C0.DDR4_TRFC_DLR {40000}] [get_ips ddr4_0]

Note: TRFC_DLR can only be set for 3DS-memory parts.

  1. Proceed to Generate Output Products for your IP.

Note: This will work for ALL Output Product Types: "Global", "OOC per IP", "OOC per BD", etc.

Note: For Block Diagrams, the get_ips command should be replaced with get_bd_cells

Revision History:

11/05/2018 - Created Answer Record



Answer Number 问答标题 问题版本 已解决问题的版本
69035 UltraScale/UltraScale+ DDR4 - Release Notes and Known Issues N/A N/A
AR# 71696
日期 12/10/2018
状态 Active
Type 版本说明
器件 More Less