Architecture
397
SPRUH82C – April 2013 – Revised September 2016
Copyright © 2013–2016, Texas Instruments Incorporated
DDR2/mDDR Memory Controller
14.2.16.1 DDR2/mDDR Memory Controller Clock Stop Procedure
NOTE:
If a data access occurs to the DDR2/mDDR memory after completing steps 1-4, the DLL will
wake up and lock, then the MCLK will turn on and the access will be performed. Following
steps 5 and 6, in which the clocks are disabled , all DDR2/mDDR memory accesses are not
possible until the clocks are reenabled.
In power-down mode, the DDR2/mDDR memory controller input clocks (VCLK and 2X_CLK)
may not be gated off. This is a limitation of the DDR2/mDDR controller. For this reason,
power-down mode is best suited as a power savings mode when SDRAM is being used
intermittently and the system requires power savings as well as a short recovery time. You
may use self-refresh mode if you desire additional power savings from disabling clocks.
To achieve maximum power savings VCLK, MCLK, 2X_CLK, DDR_CLK, and DDR_CLK should be gated
off. The procedure for clock gating is described in the following steps.
1. Allow software to complete the desired DDR transfers.
2. Change the SR_PD bit to 0 and set the LPMODEN bit to 1 in the DDR2 SDRAM refresh control
register (SDRCR) to enable self-refresh mode. The DDR2/mDDR memory controller will complete any
outstanding accesses and backlogged refresh cycles and then place the external DDR2/mDDR
memory in self-refresh mode.
3. Set the MCLKSTOPEN bit in SDRCR to 1. This enables the DDR2/mDDR memory controller to shut
off the MCLK.
4. Wait 150 CPU clock cycles to allow the MCLK to stop.
5. Program the PSC to disable the DDR2/mDDR memory controller VCLK. You must not disable VCLK in
power-down mode; use only for self-refresh mode (see notes in this section).
6. For maximum power savings, the PLL/PLLC1 should be placed in bypass and powered-down mode to
disable 2X_CLK. You must not disable 2X_CLK in power-down mode; use only for self-refresh mode
(see notes in this section). For information on programming PLLC1, see the
Phase-Locked Loop
Controller (PLLC)
chapter.
To turn clocks back on:
1. Place the PLL/PLLC1 in PLL mode to start 2X_CLK to the DDR2/mDDR memory controller.
2. Once 2X_CLK is stable, program the PSC to enable VCLK.
3. Set the RESET_PHY bit in the DDR PHY reset control register (DRPYRCR) to 1. This resets the
DDR2/mDDR memory controller PHY. This bit will self-clear to 0 when reset is complete.
4. Clear the MCLKSTOPEN bit in SDRCR to 0.
5. Clear the LPMODEN bit in the DDR2 SDRAM refresh control register (SDRCR) to 0.
14.2.17 Emulation Considerations
The DDR2/mDDR memory controller will remain fully functional during emulation halts to allow emulation
access to external memory.
NOTE:
VTP IO calibration must be performed before emulation tools attempt to access the register
or data space of the DDR2/mDDR memory controller. A bus lock-up condition will occur if the
emulation tool attempts to access the register or data space of the DDR2/mDDR memory
controller before completing VTP IO calibration. See
for information on VTP
IO calibration.