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.

Public Version<br />

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

Host byte read and write access requests to a 16-bit wide NAND device are completed as 16-bit accesses<br />

on the device itself, because there is no byte-addressing capability on 16-bit wide NAND devices. This<br />

means that the NAND device address pointer is incremented on a Word16 basis and not on a byte basis.<br />

For a read access, only the requested byte is given back to the host, but the remaining byte is not stored<br />

or saved by the GPMC, and the next byte or Word16 read access gets the next Word16 NAND location.<br />

For a write access, the invalid byte part of the Word16 is driven to FF, and the next byte or Word16 write<br />

access programs the next Word16 NAND location.<br />

Generally, byte access to a 16-bit wide NAND device should be avoided, especially when ECC calculation<br />

is enabled. 8-bit or 16-bit ECC-based computations are corrupted by a byte read to a 16-bit wide NAND<br />

device, because the nonrequested byte is considered invalid on a read access (not captured on the<br />

external data bus; FF is fed to the ECC engine) and is set to FF on a write access.<br />

Host requests (read/write) issued in the chip-select memory region are translated in successive single or<br />

split accesses (read/write) to the attached device. Therefore, incrementing 32-bit burst requests are<br />

translated in multiple 32-bit sequential accesses following the access adaptation of the 32-bit to 8- or<br />

16-bit device.<br />

<strong>10</strong>.1.5.14.2 NAND Device-Ready Pin<br />

The NAND memory device provides a ready pin to indicate data availability after a block/page opening<br />

and to indicate that data programming is complete. The ready pin can be connected to one of the four<br />

WAIT GPMC input pins; data read accesses must not be tried when the ready pin is sampled inactive<br />

(device is not ready) even if the associated chip-select WAITREADMONITORING bit field is set. The<br />

duration of the NAND device busy state after the block/page opening is so long (up to 50 μs) that<br />

accesses occurring when the ready pin is sampled inactive can stall GPMC access and eventually cause<br />

a system time-out.<br />

NOTE: If a read access to a NAND flash is done using the wait monitoring mode, the device is<br />

blocked during a page opening, and so is the GPMC. If the correct settings are used, other<br />

chip-selects can be used while the memory processes the page opening command.<br />

To avoid a time-out caused by a block/page opening delay in NAND flash, disable the wait<br />

pin monitoring for read and write accesses (that is, set the GPMC.GPMC_CONFIG1_i[21]<br />

WAITWRITEMONITORING and GPMC.GPMC_CONFIG1_i[22] WAITREADMONITORING<br />

bits to 0, where i = 0 to 7), and use one of the following methods instead:<br />

• Use software to poll the WAITnSTATUS bit (n = 0 to 3) of the GPMC_STATUS register.<br />

• Configure an interrupt that is generated on the WAIT signal change (through the<br />

GPMC.GPMC_IRQENABLE register bits[11:8]).<br />

Even if the READWAITMONITORING bit is not set, the external memory nR/B pin status is<br />

captured in the programmed WAIT bit in the GPMC_STATUS register.<br />

The READWAITMONITORING bit method must be used fo rmemories other than NAND<br />

flash, if they require the use of a WAIT signal.<br />

<strong>10</strong>.1.5.14.2.1 Ready Pin Monitored by Software Polling<br />

The ready signal state can be monitored through the GPMC.GPMC_STATUS WAITxSTATUS bit (x = 0 to<br />

3). The software must monitor the ready pin only when the signal is declared valid. See the NAND device<br />

timing parameters to set the correct software temporization to monitor ready only after the invalid window<br />

is complete from the last read command written to the NAND device.<br />

<strong>10</strong>.1.5.14.2.2 Ready Pin Monitored by Hardware Interrupt<br />

Each gpmc_wait input pin can generate an interrupt when a wait-to-no-wait transition is detected.<br />

Depending on whether the GPMC.GPMC_CONFIG WAITxPINPOLARITY bits (x = 0 to 3) is active low or<br />

active high, the wait-to-no-wait transition is a low-to-high external WAIT signal transition or a high-to-low<br />

external WAIT signal transition, respectively.<br />

The wait transition pin detector must be cleared before any transition detection. This is done by writing 1<br />

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