SanDisk SDSDH-1024 Product Manual - Page 52

Important

Page 52 highlights

Revision 2.2 Chapter 4 - SD Card Protocol Description SanDisk SD Card Product Manual CMD7 is issued with the reserved relative card address "0x0000," all cards transfer back to Stand-by State. This may be used before identifying new cards without resetting other already registered cards. Cards that already have an RCA do not respond to identification command flow in this state. Important: Card de-selection occurs if a specific card retrieves a CMD7 command with an unmatched RCA. This happens automatically if another card is selected and the CMD lines are common. Therefore, in the SD Card system, it will be the responsibility of the host to do either of the following. − Work with the common CMD line (after initialization is complete)). In this case the card de-selection will be done automatically (similarly to the MMC system). − Be aware of the necessity to de-select cards if the CMD lines are separate. All data communication in the Data Transfer Mode is point-to-point between the host and the selected SD Card (using addressed commands). All addressed commands are acknowledged with a response on the CMD line. The relationship between the various data transfer modes is summarized in Figure 4-8. More detailed information is listed below. • The stop command (CMD12) can abort all data read commands at any given time. The data transfer will terminate and the card will return to the Transfer State. The read commands are block read (CMD17), multiple block read (CMD18), send write-protect (CMD30), send SCR (ACMD51) and general command in read mode (CMD56). • The stop command (CMD12) can abort all data write commands at any given time. The write commands must be stopped prior to de-selecting the card with CMD7. The write commands are block write (CMD24 and CMD25), write CSD (CMD27), lock/unlock command (CMD42) and general command in write mode (CMD56). • When the data transfer is complete, the SD Card exits the Data Write State and moves to either the Programming State (successful transfer) or Transfer State (failed transfer). • If a block write operation is stopped and the block length and CRC of the last block are valid, the data will be programmed • The card may provide buffering for block write: the next block can be sent to the card while the previous is being programmed. If all write buffers are full, and the SD Card is in Programming State (refer to Figure 4-8), the DAT0 line will be kept low. • No buffering option is available for write CSD, write protection, and erase: no other data transfer commands will be accepted when the SD Card is busy servicing any one of the aforementioned commands. DAT0 line will be kept low as long as the card is busy and in the Programming State. Actually if the CMD and DAT0 lines of the cards are kept separate and the host keeps the busy DAT0 line disconnected from the other DAT0 lines (of the other cards), the host may access the other cards while the card is in busy. • Parameter-set commands are not allowed when the card is programming. Parameter-set commands are set block length (CMD16), erase block start (CMD32) and erase block end (CMD33). • Read commands are not allowed while the card is programming. • Moving another card from Stand-by to Transfer State (using CMD7) will not terminate a programming operation. The card will switch to the Disconnect State and release the DAT line. © 2004 SanDisk Corporation 4-8 12/08/04

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123

Chapter 4 – SD Card Protocol Description
Revision 2.2
SanDisk SD Card Product Manual
© 2004 SanDisk Corporation
4-8
12/08/04
CMD7 is issued with the reserved relative card address “0x0000,” all cards transfer back to
Stand-by State. This may be used before identifying new cards without resetting other
already registered cards. Cards that already have an RCA do not respond to identification
command flow in this state.
Important
:
Card de-selection occurs if a specific card retrieves a CMD7 command with
an unmatched RCA.
This happens automatically if another card is selected and the CMD
lines are common.
Therefore, in the SD Card system, it will be the
responsibility of the
host
to do either of the following.
Work with the common CMD line (after initialization is complete)).
In this case
the card de-selection will be done automatically (similarly to the MMC system).
Be aware of the necessity to de-select cards if the CMD lines are separate.
All data communication in the Data Transfer Mode is point-to-point between the host and
the selected SD Card (using addressed commands). All addressed commands are
acknowledged with a response on the CMD line.
The relationship between the various data transfer modes is summarized in Figure 4-8.
More detailed information is listed below.
The stop command (CMD12) can abort all data read commands at any given time. The
data transfer will terminate and the card will return to the Transfer State. The read
commands are block read (CMD17), multiple block read (CMD18), send write-protect
(CMD30), send SCR (ACMD51) and general command in read mode (CMD56).
The stop command (CMD12) can abort all data write commands at any given time. The
write commands must be stopped prior to de-selecting the card with CMD7. The write
commands are block write (CMD24 and CMD25), write CSD (CMD27), lock/unlock
command (CMD42) and general command in write mode (CMD56).
When the data transfer is complete, the SD Card exits the Data Write State and moves
to either the Programming State (successful transfer) or Transfer State (failed transfer).
If a block write operation is stopped and the block length and CRC of the last block are
valid, the data will be programmed
The card may provide buffering for block write:
the next block can be sent to the card
while the previous is being programmed. If all write buffers are full, and the SD Card is
in Programming State (refer to Figure 4-8), the DAT0 line will be kept low.
No buffering option is available for write CSD, write protection, and erase:
no other
data transfer commands will be accepted when the SD Card is busy servicing any one
of the aforementioned commands. DAT0 line will be kept low as long as the card is
busy and in the Programming State. Actually if the CMD and DAT0 lines of the cards
are kept separate and the host keeps the busy DAT0 line disconnected from the other
DAT0 lines (of the other cards), the host may access the other cards while the card is in
busy.
Parameter-set commands are not allowed when the card is programming. Parameter-set
commands are set block length (CMD16), erase block start (CMD32) and erase block
end (CMD33).
Read commands are
not
allowed while the card is programming.
Moving another card from Stand-by to Transfer State (using CMD7) will not terminate
a programming operation. The card will switch to the Disconnect State and release the
DAT line.