RM0082
HS_USB 2.0 device
Doc ID 018672 Rev 1
465/844
23.3
Main functions description
23.3.1 UTLI
The USB
transaction layer interface
(UTLI) of the UDC-AHB subsystem interfaces with the
UDC and the FIFOs to handle data reception/transmission with and USB host.
Main tasks of UTLI are:
●
Interfaces to the UDC,
●
Interfaces to endpoint-specific TxFIFOs (
Section 23.3.5: Endpoint FIFO controller
) when transmitting data in response to in requests from USB
host,
●
Interfaces to the common RxFIFO (
Section 23.3.4: Receive FIFO controller
) when
receiving out data from the USB host,
●
Works with the CSRs block (
Section 23.3.6: Control and status registers
) to maintain
correct status and control,
●
Works with the interrupt manager block (
Section 23.3.2: Interrupt manager
) to generate
proper interrupts to the application,
●
Interfaces to the SOF tracker (
) to ensure that isochronous
data is transmitted in intended frame.
In particular, during data reception from an USB Host (that is, an out transaction), the UTLI
directly read incoming data from the UDC and writes them to the receive FIFO
(
Section 23.3.4: Receive FIFO controller
). Besides, for data transmission to an USB Host
(that is, an in transaction), the UTLI reads data to be transmitted from relevant endpoint
FIFO (
Section 23.3.5: Endpoint FIFO controller (Transmit FIFO controller)
) and provides
them to UDC.
23.3.2 Interrupt
manager
The
interrupt manager
block controls the generation of interrupts to the application. In
particular, exchanging information with the UTLI, an interrupt is issued by the
interrupt
mana
ger when any of the following device-level events occurs:
●
Reception of a SOF token from the USB Host,
●
Detection of a USB suspend,
●
Detection of a USB reset,
●
Completion of speed enumeration,
●
Reception of a Set Interface command (defined in USB specification),
●
Reception of a Set Configuration command (defined in USB specification).
In addition, the interrupt manager also triggers an interrupt when any of the following
endpoint-specific events occurs:
●
Reception of a request for in data,
●
Reception of an out data packet,
●
Reception of 8 bytes of SETUP data packet,
●
An application error resulting in an AHB error response.
The interrupt manager block maintains the device interrupt register (
) and the device interrupt mask register (