User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 308
UG585 (v1.11) September 27, 2016
Chapter 10: DDR Memory Controller
10.6 Initialization and Calibration
To start operation of the PS DRAM interface, the following sequence of operations must take place:
1. DDR clock initialization
2. DDR I/O buffers (DDR IOB) initialization and calibration
3. DDR controller (DDRC) register programming
4. DRAM reset and initialization
5. DRAM input impedance (ODT) calibration
6. DRAM output impedance (Ron) calibration
7. DRAM Training
a. Write leveling
b. Read DQS gate training
c. Read data eye training
This section is intended for reference and debug purposes only. Generally, programming for steps 1–
7 are provided by the Vivado® Design suite.
10.6.1 DDR Clock Initialization
Prior to DDR initialization, a DDR clock must be active. Both the DDR_2x and DDR_3x clocks must be
configured properly. The DDR_3x clock is the clock used by the DRAM and should be set to the
desired operating frequency (note that the data rate per bit is twice the operating frequency). The
DDR_2x clock is used by the interconnect and is typically set to 2/3 of the operating frequency. The
DDR PLL frequency should be set to an even multiple of the operating frequency.
Table 10-5 provides frequency configuration examples assuming a 50 MHz reference clock.
Table 10-5: Frequency Configuration Examples
Operating
Frequency
DDR PLL
Frequency
DDR_3x Clock
Frequency
DDR_2x Clock
Frequency
PLL Feedback
Divider
DDR_3x Clock
Divider
DDR_2x Clock
Divider
525.00 1050.00 525.00 350.00 21 2 3
400.00 1600.00 400.00 266.67 32 4 6