UM10208_2
© NXP B.V. 2007. All rights reserved.
User manual
Rev. 02 — 1 June 2007
287 of 362
NXP Semiconductors
UM10208
Chapter 23: LPC2800 SD/MMC
The power management logic controls an external power supply unit, and disables the
card bus output signals during the power-off or power-up phases. The power-up phase is
a transition phase between the power-off and power-on phases, and allows an external
power supply to reach the card bus operating voltage. Software keeps the MCI in the
power-up phase until the external power supply reaches the operating voltage.
The clock management logic generates and controls the MCICLK signal. The MCICLK
output can use either a clock divide or clock bypass mode. The clock output is inactive:
•
After reset.
•
During the power-off or power-up phases.
•
If the power saving mode is enabled and the card bus is in the IDLE state (eight clock
periods after both the command and data path subunits enter the IDLE phase).
4.3.3 Command path
The command path subunit sends commands to and receives responses from the cards.
4.3.4 Command path state machine
When the command register is written to and the enable bit is set, command transfer
starts. When the command has been sent, the Command Path State Machine (CPSM)
sets the status flags and enters the IDLE state if a response is not required. If a response
is required, it waits for the response (see
). When the response is received,
the received CRC code and the internally generated code are compared, and the
appropriate status flags are set.
When the WAIT state is entered, the command timer starts running. If the timeout is
reached before the CPSM moves to the RECEIVE state, the timeout flag is set and the
IDLE state is entered.
Note: The timeout period has a fixed value of 64 MCICLK clock periods.
Fig 34. Command path state machine
IDLE
PEND
SEND
WAIT
RECEIVE
Enabled and
Pending command
Disabled
Enabled and
command start
LastData
Wait for
response
Disabled or
no response
Disabled
or timeout
Response
started
Response received
or disabled or
command CRC failed