01.08.2013 Views

Chapter 10 Memory Subsystem.pdf

Chapter 10 Memory Subsystem.pdf

Chapter 10 Memory Subsystem.pdf

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Public Version<br />

SDRAM Controller (SDRC) <strong>Subsystem</strong> www.ti.com<br />

4. Program the CMDCODE field of the relevant manual command register to 0001.<br />

This ensures that all banks are idle by executing a precharge all command.<br />

5. Enable DLL by setting the ENADLL field of the relevant SDRC.SDRC_DLLA_CTRL register to 0x1.<br />

The amount of time the SDRC spends in power-down mode must not exceed the refresh period;<br />

otherwise, data becomes corrupted.<br />

<strong>10</strong>.2.5.4.3.4 Deep-Power-Down Mode Power Management<br />

When in deep-power-down mode the power distribution to the entire memory array is cut. The<br />

programming model for deep-power-down mode is as follows:<br />

Deep-power-down Mode Entry<br />

• Precharge all banks (CMDCODE: 0x1). This ensures that all banks are idle.<br />

• Enter deep-power-down mode (CMDCODE: 0x3).<br />

Deep-power-down Mode Exit<br />

• Exit deep-power-down mode (CMDCODE: 0x4).<br />

The MR and EMR values are retained upon exiting deep-power-down mode.<br />

NOTE: Because power-pown entry/exit sequences depend on memory devices, see the memory<br />

specification for the complete sequence.<br />

<strong>10</strong>.2.5.4.3.5 Manual Self-Refresh Mode Power Management<br />

The programming model for entering and exiting self-refresh mode is as follows:<br />

Self-Refresh Entry<br />

• Precharge all banks (CMDCODE: 0x1).<br />

• NOP (CMDCODE: 0x0)<br />

• Enter self-refresh mode (CMDCODE: 0x5).<br />

There is no need for the software to disable the autorefresh in the SDRC.SDRC_RFR_CTRL_p register<br />

before entering self-refresh. The autorefresh counter is reset in hardware so that an autorefresh cycle is<br />

automatically generated immediately after a self-refresh exit, and before any other command.<br />

Self-Refresh Exit<br />

• Exit self-refresh mode (CMDCODE: 0x6).<br />

• If needed, reconfigure SDRC registers as required.<br />

• Enable autorefresh by programming:<br />

– The relevant SDRC.SDRC_RFR_CTRL_p[23:8] ARCV field<br />

– The relevant SDRC.SDRC_RFR_CTRL_p[1:0] ARE field to the desired refresh burst<br />

<strong>10</strong>.2.5.5 Error Management<br />

All data transfers in the SDRC operate a system of full handshaking. A valid read or write request that is<br />

presented to the SDRC by the L3 interconnect sequencer results in the SDRC acknowledging the transfer<br />

by raising the SCmdAccept flag. Failure to do this within a defined temporal window constitutes an error.<br />

Errors can arise from the following sources:<br />

• Any transaction while the memory is in deep-power-down mode<br />

• An illegal initiator access. The address of the last illegal access is captured in the<br />

SDRC.SDRC_ERR_ADDR register<br />

If an error occurs, the software error handler performs the following actions:<br />

• Interrogates the ERRORVALID field of the SDRC.SDRC_ERR_TYPE register to verify the presence of<br />

an error<br />

2258 <strong>Memory</strong> <strong>Subsystem</strong> SPRUGN4L–May 20<strong>10</strong>–Revised June 2011<br />

Copyright © 20<strong>10</strong>–2011, Texas Instruments Incorporated

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!