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.

Bank0<br />

Bank1<br />

Bank2<br />

Bank3<br />

Row0<br />

Row0 Bank0<br />

Row0 Bank0<br />

Row1 Row0 Bank1<br />

Row0 Bank1<br />

Row2<br />

Row1 Bank0<br />

Row0 Bank2<br />

...<br />

Row1 Bank1<br />

Row0 Bank3<br />

Row2 Bank0<br />

Row1 Bank0<br />

Row2 Bank1<br />

Row1 Bank1<br />

...<br />

Row1 Bank2<br />

Row1 Bank3<br />

Row n Bank0,<br />

Row2 Bank0<br />

Row0<br />

Row1<br />

Row2<br />

...<br />

Bank1<br />

Row2 Bank1<br />

...<br />

Row n<br />

Row0<br />

Row1<br />

Row2<br />

...<br />

Row n<br />

Row0<br />

Row1<br />

Row2<br />

...<br />

Row n<br />

Public Version<br />

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

Figure <strong>10</strong>-54. Simplified View of Bank-Row-Column vs Row-Bank-Column Bank Allocation<br />

Bank2,<br />

Bank3<br />

Row n Bank0<br />

Row n Bank1<br />

Row0 Bank2<br />

Row0 Bank3<br />

Row1 Bank2<br />

Row1 Bank3<br />

Row2 Bank2<br />

Row2 Bank3<br />

...<br />

Bank-Row-Column Bank1-Row-<br />

Bank0-Column<br />

Row n Bank2 Row n Bank2<br />

Row n Bank3 Row n Bank3<br />

Row-Bank-Column<br />

(Interleaved mode)<br />

sdrc_044<br />

The latency to charge another row in the same bank (that is, to close the opened page and to open<br />

another one) is bigger than the latency involved with an access to a given row in another bank. By moving<br />

bank select signals ahead of column and after row addresses, bank interleaving is likely to happen more<br />

often. More frequent use of the interleaved mode means less overall SDRAM access time and, thus,<br />

yields to better overall performance.<br />

In some use cases, several initiators access the same bank (bank0 for instance) in external SDRAM<br />

memory at the same time. With this kind of scenario, a lot of penalties are added because of rows opening<br />

and closing. The BANKALLOCATION setting improves the latency for reading and writing operations by<br />

optimizing memory accesses through the reduction of deactivate sequence use, thereby reducing time<br />

penalties.<br />

The bank1-row-bank0-column allocation is a good compromise between the legacy bank allocation<br />

(bank-row-column) and the full interleaving bank allocation (row-bank-column). In some use cases, it may<br />

be necessary to keep only half of the memory refreshed (on bank0 and bank1 for instance) while the other<br />

two banks are unused. In full interleaving bank allocation, the memory must be refreshed through the<br />

self-refresh mode, while with bank1-row-bank0-column, the memory can be refreshed through self-refresh<br />

mode or through partial array self-refresh mode.<br />

In the following, an example of latency is given based on a 512-Mbit SDRAM memory data sheet.<br />

Table <strong>10</strong>-<strong>10</strong>1 gives the duration for some AC timing parameters. The frequency used in the example is<br />

133 MHz ( that is, tCK = 7.5 ns). The CAS latency = 3.<br />

Table <strong>10</strong>-<strong>10</strong>1. Mobile DDR SDRAM AC Timing Parameters<br />

AC Timing Parameter Description Duration (ns)<br />

tRFC Autorefresh cycle time 80 (min)<br />

tRP Row precharge time 22.5 (or 3 tCK)<br />

2234 <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!