01.08.2013 Views

Chapter 10 Memory Subsystem.pdf

Chapter 10 Memory Subsystem.pdf

Chapter 10 Memory Subsystem.pdf

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

M9<br />

Per-sector spares, separate ECC<br />

Spares covered by sector ECC<br />

All ECC at the end<br />

Write<br />

Read<br />

Mode Size0 Size1<br />

6<br />

5<br />

P E<br />

P E<br />

M<br />

Per-sector spares, separate ECC<br />

<strong>10</strong><br />

Spares covered by sector ECC<br />

All ECC at the end, left-padded<br />

M<br />

11<br />

Write<br />

Read<br />

Mode Size0 Size1<br />

6<br />

11<br />

P 1+E<br />

P E<br />

Per-sector spares, separate ECC<br />

Spares not covered by ECC<br />

All ECC at the end<br />

Mode Size0 Size1<br />

Write 6 0 U+E<br />

Read 4 SU E<br />

M<br />

Per-sector spares, separate ECC<br />

12<br />

Spares not covered by ECC<br />

All ECC at the end, left-padded<br />

Mode Size0 Size1<br />

Write 6 0 U+1+E<br />

Read 9 SU E<br />

Public Version<br />

www.ti.com General-Purpose <strong>Memory</strong> Controller<br />

Figure <strong>10</strong>-35. NAND Page Mapping and ECC: Per-Sector Schemes, With Separate ECC<br />

<strong>10</strong>.1.5.14.4 Prefetch and Write-Posting Engine<br />

Sector data Sector data<br />

Data0 Data1 Prot0 Prot1 Ecc0 Ecc1<br />

512 bytes 512 bytes<br />

0 1<br />

512 bytes 512 bytes P P 1 E 1 E<br />

512 bytes 512 bytes<br />

inactive<br />

size1<br />

size1<br />

0 1 inactive<br />

0 1<br />

512 bytes 512 bytes<br />

non-ECC spares<br />

P P E E<br />

0<br />

size0 size0 size1 size1<br />

0 1 0<br />

1 0 1<br />

Sector data Sector data<br />

Data0 Data1<br />

0 1<br />

0 1<br />

Sector data Sector data<br />

size0 size0<br />

size1<br />

U U E E<br />

size0<br />

1<br />

non-ECC spares<br />

Prot0 Prot1<br />

0<br />

size0 size0<br />

0<br />

1<br />

size0 size0<br />

non-ECC spares<br />

size1<br />

ECC<br />

inactive<br />

inactive<br />

ECC<br />

Pad Ecc0 Pad Ecc1<br />

U U 1 E 1 E<br />

size1 size1<br />

inactive<br />

0 i.<br />

size1<br />

size1 size1<br />

i. 0 i. 1<br />

Data0 Data1 Unprot0 Unprot1 Ecc0 Ecc1<br />

0 1<br />

Sector data Sector data non-ECC spares<br />

Data0 Data1<br />

0 1<br />

size0<br />

1<br />

Unprot0 Unprot1<br />

0 1 inactive<br />

ECC<br />

Pad Ecc0 Pad Ecc1<br />

1 size1 1 size1<br />

ECC<br />

size1<br />

1<br />

1 size1 1 size1<br />

gpmc_035<br />

NAND device data access cycles are usually much slower than the MCU system frequency; such NAND<br />

read or write accesses issued by the processor will impact the overall system performance, especially<br />

considering long read or write sequences required for NAND page loading or programming. To minimize<br />

this effect on system performance, the GPMC includes a prefetch and write-posting engine, which can be<br />

used to read from or write to any chip-select location in a buffered manner.<br />

The prefetch and write-posting engine uses an embedded 64 bytes (32 Word16) FIFO to prefetch data<br />

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

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

2161

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

Saved successfully!

Ooh no, something went wrong!