9 sd/sdio card operations, 1 sdio data transfer type, 2 sdio interrupts – Rainbow Electronics AT91CAP9S250A User Manual

Page 773

Advertising
background image

773

6264A–CAP–21-May-07

AT91CAP9S500A/AT91CAP9S250A

41.9

SD/SDIO Card Operations

The MultiMedia Card Interface allows processing of SD Memory (Secure Digital Memory
Card) and SDIO (SD Input Output) Card commands.

SD/SDIO cards are based on the Multi Media Card (MMC) format, but are physically slightly
thicker and feature higher data transfer rates, a lock switch on the side to prevent accidental
overwriting and security features. The physical form factor, pin assignment and data transfer
protocol are forward-compatible with the MultiMedia Card with some additions. SD slots can
actually be used for more than flash memory cards. Devices that support SDIO can use small
devices designed for the SD form factor, such as GPS receivers, Wi-Fi or Bluetooth adapters,
modems, barcode readers, IrDA adapters, FM radio tuners, RFID readers, digital cameras and
more.

SD/SDIO is covered by numerous patents and trademarks, and licensing is only available
through the Secure Digital Card Association.

The SD/SDIO Card communication is based on a 9-pin interface (Clock, Command, 4 x Data
and 3 x Power lines). The communication protocol is defined as a part of this specification.
The main difference between the SD/SDIO Card and the MultiMedia Card is the initialization
process.

The SD/SDIO Card Register (MCI_SDCR) allows selection of the Card Slot and the data bus
width.

The SD/SDIO Card bus allows dynamic configuration of the number of data lines. After power
up, by default, the SD/SDIO Card uses only DAT0 for data transfer. After initialization, the host
can change the bus width (number of active data lines).

41.9.1

SDIO Data Transfer Type

SDIO cards may transfer data in either a multi-byte (1 to 512 bytes) or an optional block format
(1 to 511 blocks), while the SD memory cards are fixed in the block transfer mode. The
TRTYP field in the MCI Command Register (MCI_CMDR) allows to choose between SDIO
Byte or SDIO Block transfer.

The number of bytes/blocks to transfer is set through the BCNT field in the MCI Block Register
(MCI_BLKR). In SDIO Block mode, the field BLKLEN must be set to the data block size while
this field is not used in SDIO Byte mode.

An SDIO Card can have multiple I/O or combined I/O and memory (called Combo Card).
Within a multi-function SDIO or a Combo card, there are multiple devices (I/O and memory)
that share access to the SD bus. In order to allow the sharing of access to the host among
multiple devices, SDIO and combo cards can implement the optional concept of sus-
pend/resume (Refer to the SDIO Specification for more details). To send a suspend or a
resume command, the host must set the SDIO Special Command field (IOSPCMD) in the MCI
Command Register.

41.9.2

SDIO Interrupts

Each function within an SDIO or Combo card may implement interrupts (Refer to the SDIO
Specification for more details). In order to allow the SDIO card to interrupt the host, an inter-
rupt function is added to a pin on the DAT[1] line to signal the card’s interrupt to the host. An
SDIO interrupt on each slot can be enabled through the MCI Interrupt Enable Register. The
SDIO interrupt is sampled regardless of the currently selected slot.

Advertising