Specifications

©Copyright 2001-2013 SD Group (Panasonic, SanDisk, Toshiba) and SD Card Association
Physical Layer Simplified Specification Version 4.10
134
Figure 5-9 : Data Port Write Operation by CMD49
5.7.2.3 Multiple Block Data Transfer
Multi-block data transfer can be supported by using CMD58/59. CMD58/59 are optional and SCR bit 35
is assigned as the support bit of CMD58/59. If CMD58/59 are supported, CMD48/49 shall be supported.
(1) Accessible Location
CMD58/59 are mainly used to transfer multiple pages of data through Data Port and also may be
used to access multiple pages of Extension Register. All 17-bit Address in the argument is
effective to recognize Data Port location. If the address is not Data Port, the address of CMD58/59
should indicate top of page boundary of Extension Register (Card masks Lower 9-bit address to
0). If a target address becomes illegal, operation will stop. For example, if data transfer encounters
a boundary between Data Port and Non Data Port, or function boundary, the card may terminate
the data transfer.
(2) Total Data Length
As there is not enough space in the argument to specify total data length, concept of "Block Unit"
is introduced. Total data length is determined by (Block Unit) x (Block Unit Count).
Two types of Block Units can be selected by Block Unit Select (BUS bit-34 in the argument)
either 512Bytes (BUS=0) for smaller data transfer or 32KBytes (BUS=1) for larger data transfer.
32KBytes is adopted for considering a cluster size of FAT file system. 32KByte Block Unit means
that 64 blocks (64 x 512Bytes) is considered as a data transfer unit. Block Unit Count is assigned
to Bit 16-08 in the argument. Total Data length is calculated as follows:
BUS=0: 512 Byte (Block Unit) x Block Unit Count (BUC)
BUS=1: 32KByte (Block Unit) x Block Unit Count (BUC)
Block Length is fixed to 512 bytes regardless of Block Unit.
(3) Busy Length and Access Time
Maximum busy length for each busy period and maximum data access time for each read data
block are defined as 1 second. Card should follow Function Specification if it defines shorter Busy
Length and Access Time.
(4) Abort Operation
CMD12 is used to force the card to go back to "tran" state. Host may issue CMD12 on detecting
timeout.
CMD
CMD49
R1
DAT[3:0]
512-Byte
Addr
Data Port
Write Data Port
A byte register field is assigned
as Write Data Port
Addr, FNO
Function
Device
1 byte
0xxx1
Busy
CRC
CRC Status