Type: Answers, How-To

Area: EMIF, Intellectual Property

IP Product: DDR3 SDRAM Controller MegaCore supporting UniPHY

How do I set the DDR3 UniPHY memory controller timing parameters from the External Memory vendor DDR3 datasheet ?


The External Memory Interface Handbook Volume 2, Section I, Chapter 9, "Implementing and Parameterizing Memory IP" has details on how to select the timing parameters but the description below is a more concise summary.

If a preset for the desired DDR3 component does not exist, the recommended approach is to select a similar preset as a starting point and then modify the parameters as required.
Note that some of the parameters are dependent on the memory controller PHY Setting "Memory Clock Frequency" parameter. Even if you are using an existing Altera preset, you may need to modify some parameters if you are clocking at a lower frequency than the maximum frequency for the memory speed grade being used.

The flow below is recommended when using a Micron DDR3 Memory Device.

Ensure that the DDR3 megawizard has been parameterized for the DDR3 speed grade device being used and the frequency of operation. Some parameters are frequency dependent (tRTP, tWTR, tRRD), page size dependent (tFAW, tRRD), and speed grade dependent (CL, CWL,  tRAS, tRCD, tRP).

For parameters CL, CWL, tRAS, tRCD, tRP, select these values directly from the device speed bin table. For CAS latency (CL) and CAS write latency (CWL), select the values for the clock period being used.

For the remaining timing parameters, get the values from the Micron DDR3 datasheet in the tables titled "Electrical Characteristics and AC Operating Conditions". Select the parameters in the column corresponding to the data rate of memory speed grade being used.  For example, for a -125 speed grade device (800MHz), use the DDR3-1600 column.

  • Where the parameters are specific values in ps, ns, us or fractions,  use these directly.
  • Where the parameters are multiples of a clock period (tWTR, tRTP, tRRD), use the actual memory clock period to calculate these values.

A similar flow is used for other DDR3 memory vendors where the parameters may be in different tables in the data sheet.