CHAPTER 6 USB CONTROLLER
Preliminary User’s Manual S15543EJ1V0UM 333
Figure 6-3. Mailbox Configuration
31 0
U_TMSA(U_RMSA)
U_TMWA(U_RMWA)
U_TMBA(U_RMBA)
U_TMRA(U_RMRA)
When USB Controller writes an indication, the write pointer (U_TMWA or U_RMWA) is incremented. Every time
that USB Controller writes an indication, it also sets the transmit/receive finish bit of the corresponding EndPoint and,
issues an interrupt if it is not masked.
The write pointer is forced to jump to the start address (U_TMSA or U_RMSA) when it reaches the bottom address
(U_TMBA or U_RMBA). USB Controller uses the read pointer (U_TMRA or U_RMRA) to prevent the overwriting of
those indications that the VR4120A has not yet read out. The read pointer (U_TMRA or U_RMRA) is managed by the
VR4120A. Each time the VR4120A reads an indication from a MailBox, it writes the address to be read next time into
the read pointer register (U_TMRA or U_RMRA).
When both the write pointer (U_TMWA or U_RMWA) and read pointer (U_TMRA or U_RMRA) point to the same
address, USB Controller sets the TMF bit (transmit MailBox full) or RMF bit (receive MailBox full) of the USB General
Status Register 1 to indicate the MailBox full state and issues an interrupt if it is not masked.
In the MailBox full status, USB Controller will not issue the next indication. The VR4120A must read an indication
from the full MailBox and update the read pointer (U_TMRA or U_RMRA).