MC2GH256NMCA-2SA00 SAMSUNG [Samsung semiconductor], MC2GH256NMCA-2SA00 Datasheet - Page 48

no-image

MC2GH256NMCA-2SA00

Manufacturer Part Number
MC2GH256NMCA-2SA00
Description
SAMSUNG MultiMediaCard
Manufacturer
SAMSUNG [Samsung semiconductor]
Datasheet
6.2.7 Data Write
The data transfer format of write operation is similar to the data read. For block oriented write data transfer, the CRC check
bits are added to each data block. The card performs a CRC parity check (see Chapter 6.4) for each received data block
prior to the write operation. By this mechanism, writing of erroneously transferred data can be prevented.
• Block Write
During block write (CMD24 - 27) one or more blocks of data are transferred from the host to the card with a CRC
appended to the end of each block by the host. A card supporting block write shall always be able to accept a block of data
defined by WRITE_BL_LEN. If the CRC fails, the card shall indicate the failure on the DAT0 line (see below); the trans-
ferred data will be discarded and not written, and all further transmitted blocks (in multiple block write mode) will be
ignored.
CMD25 (WRITE_MULTIPLE_BLOCK) starts a transfer of several consecutive blocks. Two types of multiple block write
transactions, identical to the multiple block read, are defined (the host can use either one at any time):
• Open-ended Multiple block write
• Multiple block write with pre-defined block count
The host can abort writing at any time, within a multiple block operation, regardless of the its type. Transaction abort is
done by sending the stop transmission command. If a multiple block write with pre-defined block count is aborted, the data
in the remaining blocks is not defined.
If either one of the following conditions occur, the card will reject the command, remain in Tran state and respond with the
respective error bit set.
• The host provides an out of range address as an argument to either CMD24 or CMD25. ADDRESS_OUT_OF_RANGE
• The currently defined block length is illegal for a write operation. BLOCK_LEN_ERROR is set.
• The address/block-length combination positions the first data block misaligned to the card physical blocks.
If the card detects an error (e.g. write protect violation, out of range, address misalignment, internal error, etc.) during a
multiple block write operation (both types) it will ignore any further incoming data blocks and remain in the Receive State.
The host must then abort the operation by sending the stop transmission command. The write error is reported in the
response to the stop transmission command.
If the host sends a stop transmission command after the card received the last data block of a multiple block write with a
pre-defined number of blocks, it is regarded as an illegal command, since the card is no longer in data state.
If the host uses partial blocks whose accumulated length is not block aligned, and block misalignment is not allowed (CSD
parameter WRITE_BLK_MISALIGN is not set), the card shall detect the block misalignment error during the reception of
the first misaligned block, abort the write operation, and ignore all further incoming data. As the host sends CMD12, the
card will respond with the ADDRESS_MISALIGN bit set and return to Tran state.
If the host sets the argument of the SET_BLOCK_COUNT command (CMD23) to all 0s, then the command is accepted;
however, a subsequent write will follow the open-ended multiple block write protocol (STOP_TRANSMISSION command -
CMD12 - is required).
Revision 0.3
The number of blocks for the write multiple block operation is not defined. The card will continuously accept and pro
gram data blocks until a stop transmission command is received.
The card will accept the requested number of data blocks, terminate the transaction and return to transfer state. Stop
command is not required at the end of this type of multiple block write, unless terminated with an error. In order to start
a multiple block write with pre-defined block count the host must use the SET_BLOCK_COUNT command (CMD23)
immediately preceding the WRITE_MULTIPLE_BLOCK (CMD25) command. Otherwise the card will start an open
-ended multiple block write which can be stopped using the STOP_TRANSMISION command.
is set.
ADDRESS_MISALIGN is set.
48
MultiMediaCard
Sep.22.2005
TM

Related parts for MC2GH256NMCA-2SA00