Functional Description
1678
SLAU723A – October 2017 – Revised October 2018
Copyright © 2017–2018, Texas Instruments Incorporated
Universal Serial Bus (USB) Controller
27.3.1.6 Device Mode SUSPEND
When no activity has occurred on the USB bus for 3 ms, the USB controller automatically enters
SUSPEND mode. If the SUSPEND interrupt has been enabled in the USB Interrupt Enable (USBIE)
register, an interrupt is generated at this time. When in SUSPEND mode, the PHY also goes into
SUSPEND mode. When RESUME signaling is detected, the USB controller exits SUSPEND mode and
takes the PHY out of SUSPEND. If the RESUME interrupt is enabled, an interrupt is generated. The USB
controller can also be forced to exit SUSPEND mode by setting the RESUME bit in the USB Power
(USBPOWER) register. When this bit is set, the USB controller exits SUSPEND mode and drives
RESUME signaling onto the bus. The RESUME bit must be cleared after 10 ms (a maximum of 15 ms) to
end RESUME signaling.
To meet USB power requirements, the controller can be put into Deep Sleep mode which keeps the
controller in a static state. Hibernation mode should not be used for SUSPEND mode because all internal
state information is lost in hibernation.
NOTE:
When configured as a self-powered device, the USB module meets the response timing and
power draw requirements for USB compliance of SUSPEND mode. When configured as a
bus-powered device, the USB can operate in SUSPEND mode but produces a higher power
draw than required to be compliant.
27.3.1.7 Start-of-Frame
When the USB controller is operating in device mode, it receives a Start-Of-Frame (SOF) packet from the
host once every millisecond. When the SOF packet is received, the 11-bit frame number contained in the
packet is written into the USB Frame Value (USBFRAME) register, and an SOF interrupt is also signaled
and can be handled by the application. Once the USB controller has started to receive SOF packets, it
expects one every millisecond. If no SOF packet is received after 1.00358 ms, the packet is assumed to
have been lost, and the USBFRAME register is not updated. The USB controller continues and
resynchronizes these pulses to the received SOF packets when these packets are successfully received
again.
27.3.1.8 USB RESET
When the USB controller is in device mode and a RESET condition is detected on the USB bus, the USB
controller automatically performs the following actions:
•
Clears the USBFADDR register
•
Clears the USB Endpoint Index (USBEPIDX) register
•
Flushes all endpoint FIFOs
•
Clears all control and status registers
•
Enables all endpoint interrupts
•
Generates a RESET interrupt
When the application software driving the USB controller receives a RESET interrupt, any open pipes are
closed and the USB controller waits for bus enumeration to begin.
27.3.1.9 Connect and Disconnect
The USB controller connection to the USB bus is handled by software. The USB PHY can be switched
between normal mode and non-driving mode by setting or clearing the SOFTCONN bit of the
USBPOWER register. When the SOFTCONN bit is set, the PHY is placed in its normal mode, and the
USB0DP and USB0DM lines of the USB bus are enabled. At the same time, the USB controller is placed
into a state, in which it does not respond to any USB signaling except a USB RESET.