Datasheet
Device Parameter Information
4−5
SLLS535E − April 2008 TUSB6250
4.3 Device Operation
4.3.1 Device Master Reset
An external master reset signal, asynchronous to the TUSB6250 internal clock, is needed to reset the
TUSB6250. This reset is referred to as the power-on reset throughout this document, which is connected to
the RSTI
terminal of the TUSB6250. Because the TUSB6250 has built-in noise debouncing circuitry, it also
requires a valid clock signal present during the required active-low master reset window. For the details of the
master reset timing requirement, see Section 13.2, Reset Timing Reference.
4.3.2 Clock Generation
The TUSB6250 requires an external 24-MHz crystal to be used. The integrated USB 2.0 UTMI-compliant PHY
generates all of the clock signals needed for the PHY analog, PLL, and digital logic. The PHY also generates
a 60-MHz clock used in the internal digital core of the TUSB6250.
4.3.3 Device Initialization
Because the TUSB6250 contains an integrated MCU, the device initialization process contains the following
two parts:
• Hardware registers and state machines are cleared to their defined default reset state after power-on reset
initialization. The TUSB6250 powers up with a default USB function address of zero and is disconnected
from the USB bus.
• The MCU executes a bootloader program in ROM (starting from address 0000h) to fetch the valid
application code from the external source and prepare for USB enumeration. The application code, once
in charge, may perform some initialization functions to configure the TUSB6250 to meet the requirement
of a particular end-product application.
Because the application code (firmware) space is in the internal RAM, the TUSB6250 firmware needs to be
downloaded from an external source into the RAM space designated for code usage (see Section 6.1, MCU
Memory Map, for detailed information).
After power-on reset is applied to the TUSB6250, the integrated MCU executes the bootloader program (also
referred as boot code) residing in the on-chip 8K-byte ROM mapped to the MCU program memory space; this
process is also referred to as booting.
The major tasks of the boot code are:
• To fetch the descriptors required for itself or the firmware to perform USB enumeration
• To download the application firmware from one of the two external sources available during booting: either
from an external I
2
C EEPROM connected to the I
2
C interface of the TUSB6250 or from the host PC via
the USB bus connection
The MCU executes a read from an external I
2
C EEPROM and checks whether it contains valid application
code by comparing the read value with the expected boot signature. If it contains valid code, the MCU executes
follow-up reads from the EEPROM and writes the code into the TUSB6250 internal 32K bytes of default code
RAM. If the external EEPROM does not contain any valid code, the MCU proceeds to boot from the USB.
The I
2
C EEPROM normally is preprogrammed with a valid application code image. It also contains all the
configurable USB descriptors and other configurable descriptors or parameters for the mass storage device
connected to the TUSB6250 ATA/ATAPI interface. For the option of booting from the USB host, the application
code may reside in the host PC. However, the external I
2
C EEPROM is still needed to store the USB 2.0
specification-required vendor ID and product ID specific to each individual end-product manufacturer.