Atmel Evaluation Kit AT91SAM9M10-G45-EK AT91SAM9M10-G45-EK Hoja De Datos

Los códigos de productos
AT91SAM9M10-G45-EK
Descargar
Página de 1361
 691
SAM9M10 [DATASHEET]
6355F–ATARM–12-Mar-13
 
35.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 HSMCI Command Regis-
ter (HSMCI_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 HSMCI Block Register (HSMCI_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 suspend/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 HSMCI Command Register.
35.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 interrupt 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 HSMCI
Interrupt Enable Register. The SDIO interrupt is sampled regardless of the currently selected slot.
35.10 CE-ATA  Operation
CE-ATA maps the streamlined ATA command set onto the MMC interface. The ATA task file is mapped onto MMC
register space.
CE-ATA utilizes five MMC commands:
• GO_IDLE_STATE (CMD0): used for hard reset.
• STOP_TRANSMISSION (CMD12): causes the ATA command currently executing to be aborted.
• FAST_IO (CMD39): Used for single register access to the ATA taskfile registers, 8 bit access only.
• RW_MULTIPLE_REGISTERS (CMD60): used to issue an ATA command or to access the control/status 
registers.
• RW_MULTIPLE_BLOCK (CMD61): used to transfer data for an ATA command.
CE-ATA utilizes the same MMC command sequences for initialization as traditional MMC devices.
35.10.1
Executing  an  ATA  Polling  Command
1.
Issue READ_DMA_EXT with RW_MULTIPLE_REGISTER (CMD60) for 8kB of DATA.
2.
Read the ATA status register until DRQ is set.
3.
Issue RW_MULTIPLE_BLOCK (CMD61) to transfer DATA.
4.
Read the ATA status register until DRQ && BSY are set to 0.
35.10.2
Executing  an  ATA  Interrupt  Command
1.
Issue READ_DMA_EXT with RW_MULTIPLE_REGISTER (CMD60) for 8kB of DATA with nIEN field set to 
zero to enable the command completion signal in the device.
2.
Issue RW_MULTIPLE_BLOCK (CMD61) to transfer DATA.
3.
Wait for Completion Signal Received Interrupt.
35.10.3
Aborting  an  ATA  Command
If the host needs to abort an ATA command prior to the completion signal it must send a special command to avoid
potential collision on the command line. The SPCMD field of the HSMCI_CMDR must be set to 3 to issue the CE-
ATA completion Signal Disable Command.