![Freescale Semiconductor MCF54455 Скачать руководство пользователя страница 274](http://html1.mh-extra.com/html/freescale-semiconductor/mcf54455/mcf54455_reference-manual_2330541274.webp)
Universal Serial Bus Interface – On-The-Go Module
Freescale Semiconductor
10-67
NOTE
MULT is a two-bit field in the device queue head. Isochronous endpoints do
not use the variable length packet protocol.
•
NAK responses are not used. Instead, zero length packets are sent in response to an IN request to
unprimed endpoints. For unprimed RX endpoints, the response to an OUT transaction is to ignore
the packet within the device controller.
•
Prime requests always schedule the transfer described in the dTD for the next (micro)frame. If
ISO-dTD remains active after that frame, ISO-dTD holds ready until executed or canceled by the
DCD.
The USB OTG in host mode uses the periodic frame list to schedule data exchanges to isochronous
endpoints. The operational model for device mode does not use such a data structure. Instead, the same
dTD used for control/bulk/interrupt endpoints is also used for isochronous endpoints. The difference is in
the managing of the dTD.
The first difference between bulk and ISO-endpoints is that priming an ISO-endpoint is a delayed
operation such that an endpoint becomes primed only after a SOF is received. After the DCD writes the
prime bit, the prime bit clears as usual to indicate to software that the device controller completed a
priming the dTD for transfer. Internal to the design, the device controller hardware masks that prime start
until the next frame boundary. This behavior is hidden from the DCD, but occurs so the device controller
can match the dTD to a specific (micro)frame.
Another difference with isochronous endpoints is that the transaction must wholly complete in a
(micro)frame. After an ISO transaction is started in a (micro)frame, it retires the corresponding dTD when
MULT transactions occur or the device controller finds a fulfillment condition.
The transaction error bit set in the status field indicates a fulfillment error condition. When a fulfillment
error occurs, the frame after the transfer failed to complete wholly, and the device controller retires the
current ISO-dTD and move to the next ISO-dTD.
Fulfillment errors are only caused due to partially completed packets. If no activity occurs to a primed
ISO-dTD, the transaction stays primed indefinitely. This means it is up to software must discard transmit
ISO-dTDs that pile up from a failure of the host to move the data.
Finally, the last difference with ISO packets is in the data level error managing. When a CRC error occurs
on a received packet, the packet is not retried similar to bulk and control endpoints. Instead, the CRC is
noted by setting the transaction error bit and the data is stored as usual for the application software to sort
out.
•
TX packet retired:
— MULT counter reaches zero.
— Fulfillment error (transaction error bit is set):
– # packets occurred > 0 AND # packets occurred < MULT
Содержание MCF54455
Страница 33: ...xxviii Freescale Semiconductor ...
Страница 67: ...Freescale Semiconductor 1 ...
Страница 125: ...Freescale Semiconductor 1 ...
Страница 145: ...Enhanced Multiply Accumulate Unit EMAC 5 21 Freescale Semiconductor ...
Страница 173: ...Cache 6 28 Freescale Semiconductor ...
Страница 179: ...Static RAM SRAM 7 6 Freescale Semiconductor ...
Страница 207: ...Power Management 9 16 Freescale Semiconductor ...
Страница 323: ...Reset Controller Module 13 8 Freescale Semiconductor ...
Страница 389: ...Pin Multiplexing and Control 16 44 Freescale Semiconductor ...
Страница 575: ...PCI Bus Controller 22 58 Freescale Semiconductor ...
Страница 600: ...Advanced Technology Attachment ATA Freescale Semiconductor 23 25 ...
Страница 601: ...Freescale Semiconductor 1 ...
Страница 842: ...I2 C Interface Freescale Semiconductor 33 16 ...
Страница 843: ...Freescale Semiconductor 1 ...
Страница 921: ...Revision History A 6 Freescale Semiconductor ...