|Home > Protocols > Peripheral protocols > MMC_Protocol protocol|
This protocol describes an abstract, untimed interface between an MMC controller and an MMC or SD card.
The protocol contains methods that must be implemented by the master (controller) and some that must be implemented by the slave (card). This protocol is used by the reference PL180 MCI and MMC models. for further information on the protocol implementation, see the source file, %PVLIB_HOME%\LISA\MMC_Protocol.lisa.
Use of this protocol assumes knowledge of the MultiMediaCard specification, available from the MultiMediaCard Association, www.mmca.org.
The protocol has these behaviors:
For data transfer in the card to controller direction:
Rxbehavior on the controller to provide the read data. The call provides a pointer and a length. The ARM MMC reference model simulates device read latency by waiting a number of clock cycles prior to calling this behavior. If the controller is unable to accept the data, or wants to force a protocol error, it can return false in response to this behavior.
For data transfer in the controller to card direction:
Txbehavior on the controller. The call provides a pointer to an empty buffer to be written, and a length. The ARM MMC reference model simulates device write latency by waiting a number of clock cycles prior to each buffer being offered.
The card model must also implement: