CY7C65621/31 EZ-USB HX2LP Lite™ Low Power USB 2.0 Hub Controller Family EZ-USB HX2LP Lite™ Low Power USB 2.0 Hub Controller Family Features ■ USB 2.0 hub controller ■ Automotive and Industrial Grade option (–40 °C to 85 °C) ■ Compliant with the USB 2.0 specification ■ USB-IF certified: TID# 30000009 ■ Windows Hardware Quality Lab (WHQL) compliant ■ Up to four downstream ports supported ■ Supports bus powered and self powered modes ■ Single transaction translator (TT) ■ Bus power configurations ■ Fit, form, and function compatible with CY7C65640 and CY7C65640A (TetraHub™) ■ Space saving 56-pin QFN ■ Integrated port status indicator control ■ 24 MHz external crystal (integrated phase locked loop (PLL)) ■ In-system EEPROM programming ■ Configurable with external SPI EEPROM: ❐ Vendor ID, Product ID, Device ID (VID/PID/DID) ❐ Number of active ports ❐ Number of removable ports ❐ Maximum power setting for high speed and full speed ❐ Hub controller power setting ❐ Power on timer ❐ Overcurrent detection mode ❐ Enabled and disabled overcurrent timer ❐ Overcurrent pin polarity ❐ Indicator pin polarity ❐ Compound device ❐ Enable full speed only ❐ Disable port indicators ❐ Ganged power switching ❐ Self and bus powered compatibility ❐ Fully configurable string descriptors for multiple language support ■ Single power supply requirement ❐ Internal regulator for reduced cost ■ Integrated upstream pull-up resistor ■ Integrated pull-down resistors for all downstream ports ■ Integrated upstream and downstream termination resistors Block Diagram – CY7C65631 D+ D- USB 2.0 PHY 24 MHz Crystal High-Speed USB Control Logic Serial Interface Engine PLL SPI_SCK SPI_SD SPI_CS SPI Communication Block USB Upstream Port Transaction Translator Hub Repeater TT RAM Routing Logic USB Downstream Port 1 USB 2.0 PHY D+ D- Port Power Control Port Status USB Downstream Port 2 USB 2.0 PHY PWR#[1] LED D+ OVR#[1] Cypress Semiconductor Corporation Document Number: 001-52934 Rev. *H • Port Power Control D- PWR#[2] Port Status OVR#[2] LED USB Downstream Port 4 USB Downstream Port 3 USB 2.0 PHY D+ D- 198 Champion Court Port Power Control Port Status USB 2.0 PHY PWR#[3] LED D+ OVR#[3] • D- Port Power Control Port Status PWR#[4] LED OVR#[4] San Jose, CA 95134-1709 • 408-943-2600 Revised June 21, 2016 CY7C65621/31 Block Diagram – CY7C65621 D+ D- USB 2.0 PHY 24 MHz Crystal High-Speed USB Control Logic Serial Interface Engine PLL SPI Communication Block USB Upstream Port SPI_SCK SPI_SD SPI_CS Transaction Translator (X1) Hub Repeater TT RAM Routing Logic USB Downstream Port 1 USB 2.0 PHY D+ Document Number: 001-52934 Rev. *H Port Power Control D- PWR#[1] Port Status OVR#[1] LED USB Downstream Port 2 USB 2.0 PHY D+ D- Port Power Control Port Status PWR#[2] LED OVR#[2] Page 2 of 27 CY7C65621/31 Contents Introduction ....................................................................... 4 USB Serial Interface Engine ........................................ 4 Hub Repeater .............................................................. 4 Transaction Translator ................................................ 4 Applications ...................................................................... 4 Functional Overview ........................................................ 4 System Initialization ..................................................... 4 Enumeration ................................................................ 4 Downstream Ports ....................................................... 5 Upstream Port ............................................................. 5 Power Switching .......................................................... 5 Overcurrent Detection ................................................. 5 Port Indicators ............................................................. 5 Pin Configuration ............................................................. 7 Pin Description Table ....................................................... 8 Default Descriptors ........................................................ 10 Device Descriptor ...................................................... 10 Configuration Descriptor ............................................ 10 Interface Descriptor ................................................... 11 Endpoint Descriptor ................................................... 11 Device Qualifier Descriptor ........................................ 11 Hub Descriptor .......................................................... 12 Configuration Options ................................................... 13 0xD0 Load ................................................................. 13 0xD2 Load ................................................................. 13 0xD4 Load ................................................................. 14 Document Number: 001-52934 Rev. *H Supported USB Requests .............................................. 17 Device Class Commands .......................................... 17 Hub Class Commands .............................................. 18 Upstream USB Connection ............................................ 20 Downstream USB Connections ..................................... 20 LED Connections ............................................................ 20 System Block Diagram ................................................... 21 Absolute Maximum Ratings .......................................... 22 Operating Conditions ..................................................... 22 Electrical Characteristics ............................................... 22 DC Electrical Characteristics ..................................... 22 USB Transceiver ....................................................... 22 AC Electrical Characteristics ..................................... 22 Ordering Information ...................................................... 23 Ordering Code Definitions ......................................... 23 Package Diagram ............................................................ 24 Acronyms ........................................................................ 25 Document Conventions ................................................. 25 Units of Measure ....................................................... 25 Document History Page ................................................. 26 Sales, Solutions, and Legal Information ...................... 27 Worldwide Sales and Design Support ....................... 27 Products .................................................................... 27 PSoC® Solutions ...................................................... 27 Cypress Developer Community ................................. 27 Technical Support ..................................................... 27 Page 3 of 27 CY7C65621/31 Introduction EZ-USB HX2LP Lite™ is Cypress’s next generation family of high performance, low power USB 2.0 hub controllers. HX2LP Lite is an ultra low power single chip USB 2.0 hub controller with integrated upstream and downstream transceivers, a USB Serial Interface Engine (SIE), USB Hub Control and Repeater logic, and Transaction Translator (TT) logic. Cypress has also integrated many external passive components such as pull up and pull down resistors, reducing the overall bill of materials required to implement a hub design. The HX2LP portfolio consists of: 1. CY7C65631: 4-port/single transaction translator hub, the route only includes the repeater and no Transaction Translator because the device and the hub operate at the same speed. When the hub is operating at full speed (the upstream port is connected to a full speed host controller), a high speed peripheral does not operate at its full capability. These devices only work at full speed. Full and low speed devices connected to this hub operate at their normal speed. Applications Typical applications for the HX2LP Lite device family are: ■ Standalone hubs ■ Motherboard hubs ■ Monitor hubs ■ Advanced port replicators ■ Docking stations This device option is for a 2-port bus powered application. Both ports share a single transaction translator. The CY7C65621 is available in a 56 QFN. ■ Split-PC designs ■ External personal storage drives All device options are supported by Cypress’s world-class reference design kits, which include board schematics, bill of materials, Gerber files, Orcad files, and thorough design documentation. ■ Keyboard hubs This device option is for ultra low power applications that require four downstream ports. All four ports share a single transaction translator. The CY7C65631 is available in a 56 QFN and is also pin-for-pin compatible with the CY7C65640. 2. CY7C65621: USB Serial Interface Engine The Serial Interface Engine (SIE) allows the CY7C65621/31 to communicate with the USB host. The SIE handles the following USB activity independently of the Hub Control Block. Functional Overview The Cypress CY7C65621/31 USB 2.0 hubs are high performance, low system cost solutions for USB. The CY7C65621/31 USB 2.0 hubs integrate 1.5 k upstream pull up resistors for full speed operation and all downstream 15 k pull down resistors and series termination resistors on all upstream and downstream D+ and D– pins. This results in optimization of system costs by providing built-in support for the USB 2.0 specification. ■ Bit stuffing/unstuffing ■ Checksum generation/checking ■ TOKEN type identification System Initialization ■ Address checking. On power up, the CY7C65621/31 reads an external SPI EEPROM for configuration information. At the most basic level, this EEPROM has the Vendor ID (VID), Product ID (PID), and Device ID (DID) for the customer's application. For more specialized applications, other configuration options can be specified. See Configuration Options on page 13 for more details. Hub Repeater The Hub Repeater manages connectivity between upstream and downstream facing ports that are operating at the same speed. It supports full speed, low speed, and high speed connectivity. According to the USB 2.0 specification, the HUB Repeater provides the following functions: ■ Sets up and tears down connectivity on packet boundaries ■ Ensures orderly entry into and out of the Suspend state, including proper handling of remote wakeups. Transaction Translator The Transaction Translator (TT) basically translates data from one speed to another. A TT takes high speed split transactions and translates them to full or low speed transactions when the hub is operating at high speed (the upstream port is connected to a high speed host controller) and has a full or low speed devices attached. The operating speed of a device attached on a downstream facing port determines whether the Routing Logic connects a port to the Transaction Translator or Hub Repeater. If a full or low speed device is connected to the hub operating at high speed, the data transfer route includes the Transaction Translator. If a high speed device is connected to this high speed Document Number: 001-52934 Rev. *H After reading the EEPROM, if VBUSPOWER (connected to up-stream VBUS) is high, CY7C65621/31 enables the pull up resistor on D+ to indicate its presence to the upstream hub, after which a USB Bus Reset is expected. During this reset, CY7C65621/31 initiates a chirp to indicate that it is a high speed peripheral. In a USB 2.0 system, the upstream hub responds with a chirp sequence, and CY7C65621/31 is in a high speed mode, with the upstream D+ pull up resistor turned off. In USB 1.x systems, no such chirp sequence from the upstream hub is seen, and CY7C65621/31 operates as a normal 1.x hub (operating at full speed). Enumeration After a USB Bus Reset, CY7C65621/31 is in an unaddressed, unconfigured state (configuration value set to ‘0’). During the enumeration process, the host sets the hub's address and configuration. When the hub is configured, the full hub functionality is available. Page 4 of 27 CY7C65621/31 Downstream Ports The CY7C65621/31 supports a maximum of four downstream ports, each of which may be marked as usable or removable in the extended configuration (0xD2 EEPROM load or 0xD4 EEPROM load, see Configuration Options on page 13. Downstream D+ and D– pull down resistors are incorporated in CY7C65621/31 for each port. Before the hubs are configured, the ports are driven SE0 (Single Ended Zero, where both D+ and D– are driven low) and are set to the unpowered state. When the hub is configured, the ports are not driven, and the host may power the ports by sending a SetPortPower command for each port. After a port is powered, any connect or disconnect event is detected by the hub. Any change in the port state is reported by the hubs back to the host through the Status Change Endpoint (endpoint 1). Upon receipt of SetPortReset request for a port with a device connected, the hub does as follows: ■ Performs a USB reset on the corresponding port ■ Puts the port in an enabled state ■ Enables the green port indicator for that port (if not previously overridden by the host) ■ Enables babble detection when the port is enabled. Babble consists of a non idle condition on the port after EOF2. If babble is detected on an enabled port, that port is disabled. A ClearPortEnable request from the host also disables the specified port. Downstream ports can be individually suspended by the host with the SetPortSuspend request. If the hub is not suspended, a remote wakeup event on that port is reflected to the host through a port change indication in the Hub Status Change Endpoint. If the hub is suspended, a remote wakeup event on this port is forwarded to the host. The host may resume the port by sending a ClearPortSuspend command. Upstream Port The upstream port includes the transmitter and the receiver state machine. The transmitter and receiver operate in high speed and full speed depending on the current hub configuration. The transmitter state machine monitors the upstream facing port while the Hub Repeater has connectivity in the upstream direction. This machine prevents babble and disconnect events on the downstream facing ports of this hub from propagating and causing the hub to be disabled or disconnected by the hub to which it is attached. Power Switching The CY7C65621/31 includes interface signals for external port power switches. Both ganged and individual (per-port) configurations are supported, with individual switching being the default. Initially all ports are unpowered. After enumerating, the host may power each port by sending a SetPortPower request for that port. The power switching and over-current detection of downstream ports is managed by control pins connected to an external power Document Number: 001-52934 Rev. *H switch device. PWR [n]# output pins of the CY7C65621/31 series are connected to the respective external power switch's port power enable signals. Note that each port power output pin of the external power switch must be bypassed with an electrolytic or tantalum capacitor as required by the USB specification. These capacitors supply the inrush currents, which occur during downstream device hot-attach events. The polarity of this pin can be configured through the EEPROM; see 0xD4 Load on page 14. Overcurrent Detection Overcurrent detection includes 8 ms of timed filtering by default. This parameter is configured from the external EEPROM in a range of 0 ms to 15 ms for both enabled ports and disabled ports individually. Detection of overcurrent on downstream ports is managed by control pins connected to an external power switch device. The OVR[n]# pins of the CY7C65621/31 series are connected to the respective external power switch’s port overcurrent indication (output) signals. After detecting an overcurrent condition, hub reports overcurrent condition to the host and disables the PWR# output to the external power device. The polarity of the OVR pins can be configured through the EEPROM; see 0xD4 Load on page 14. Port Indicators The USB 2.0 port indicators are also supported directly by CY7C65621/31. According to the specification, each downstream port of the hub optionally supports a status indicator. The presence of indicators for downstream facing ports is specified by bit 7 of the wHubCharacteristics field of the hub class descriptor. The default CY7C65621/31 descriptor specifies that port indicators are supported (wHubCharacteristics, bit 7 is set). If port indicators are not included in the hub, disable this bit through EEPROM settings. Each port indicator pin is strategically located directly on the opposite edge of the port with which it is associated. A port indicator provides two colors: green and amber. This is usually implemented as two separate LEDs, one amber and the other green. A combination of hardware and software control is used to inform the user of the current status of the port or the device attached to the port and to guide the user through problem resolution. Colors and blinking provide information to the user. The significance of the color of the LED depends on the operational mode of CY7C65621/31. The CY7C65621/31 port indicators has two modes of operation: automatic and manual. On power up the CY7C65621/31 defaults to automatic mode, where the color of the Port Indicator (green, amber, off) indicates the functional status of the CY7C65621/31 port. In automatic mode, the CY7C65621/31 turns on the green LED whenever the port is enabled and the amber LED when an overcurrent condition is detected. The color of the port indicator is set by the port state machine. Blinking of the LEDs is not supported in automatic mode. Table 1 on page 6 identifies the mapping of color to port state in automatic mode. Page 5 of 27 CY7C65621/31 Table 1. Automatic Port State to Port Indicator Color Mapping [1] Downstream Facing Hub Port State Powered Off Off or Amber, if due to an Overcurrent Condition Disconnected, Disabled, Not Configured, Resetting, Testing Off The LED control lines can also be modulated with a square wave for power conservation. The polarity of these pins is programmable, see 0xD4 Load on page 14. In manual mode, the indicators are under the control of the host, which can turn on the LEDs, or leave them off. This is done by a USB hub class request. Blinking of the LEDs is supported in manual mode. The port indicators allow the user to intervene in any error detection. For example, when babble is detected while plugging in a defective device, or when an overcurrent condition occurs, the port indicators corresponding to the downstream port blink green or only light the amber LED, respectively. Enabled, Transmit, or TransmitR Green Suspended, Resuming, SendEOR, Restart_E/S Off Table 2. Port Indicator Color Definitions in Manual Mode [2] Color Definition Off Port State Not Operational Amber Error Condition Green Fully Operational Blinking Off/Green Software Attention Blinking Off/Amber Hardware Attention Blinking Green/Amber Reserved Table 2 displays the color definition of the indicators when CY7C65621/31 is in manual mode.[1] Notes 1. Information presented in Table 1 is from USB 2.0 Specification Tables 11-6. 2. Information presented in Table 2 is from USB 2.0 Specification 11-7. Document Number: 001-52934 Rev. *H Page 6 of 27 CY7C65621/31 Pin Configuration DD–[4]/NC DD+[4]/NC VCC SPI_SCK 50 49 48 47 46 45 GREEN#[4]/NC SPI_SD 51 AMBER#[4]/NC GND 52 SELFPWR OVR#[4]/Rsvd 53 RESET PWR#[4]/NC 54 GND OVR#[3]/Rsvd 55 PWR#[3]/NC 56 VCC GND Figure 1. 56-pin Quad Flat Pack No Leads (8 mm × 8 mm) [3] 44 43 1 42 AMBER#[3]/NC 2 41 GREEN#[3]/NC 3 40 GND 4 GND 39 VCC DD–[3]/NC 5 38 AMBER#[2] DD+[3]/NC 6 37 GREEN#[2] VCC 7 36 AMBER#[1] GND 8 35 GREEN#[1] DD–[2] 9 34 GND DD+[2] 10 33 VCC VCC 11 32 OVR#[2] GND 12 31 PWR#[2] DD–[1] 13 30 OVR#[1] DD+[1] 14 20 21 22 23 24 25 VCC GND XIN XOUT VCC GND SPI_CS 26 27 28 GND 19 VCC 18 VBUSPOWER 17 D+ 16 GND VCC 15 D– 29 PWR#[1] Note 3. NC and Rsvd are for CY7C65621 only. Document Number: 001-52934 Rev. *H Page 7 of 27 CY7C65621/31 Pin Description Table Table 3. Pin Assignments [4] CY7C65621 Name VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC GND GND GND GND GND GND GND GND GND GND GND GND XIN XOUT RESET# Type Default Description 3 7 11 15 19 23 27 33 39 55 4 8 12 16 20 24 28 34 40 47 50 56 21 22 46 CY7C65631 Name VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC GND GND GND GND GND GND GND GND GND GND GND GND XIN XOUT RESET# Power Power Power Power Power Power Power Power Power Power Power Power Power Power Power Power Power Power Power Power Power Power Input Output Input N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 45 SELFPWR SELFPWR Input N/A Input N/A VCC. This signal provides power to the chip. VCC. This signal provides power to the chip. VCC. This signal provides power to the chip. VCC. This signal provides power to the chip. VCC. This signal provides power to the chip. VCC. This signal provides power to the chip. VCC. This signal provides power to the chip. VCC. This signal provides power to the chip. VCC. This signal provides power to the chip. VCC. This signal provides power to the chip. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. GND. Connect to ground with as short a path as possible. 24 MHz Crystal IN or external Clock Input. 24 MHz Crystal OUT. (NC if external clock is used) Active LOW Reset. This pin resets the entire chip. It is normally tied to VCC through a 100K resistor, and to GND through a 0.1 µF capacitor. Other than this, no other special power up procedure is required. Self Power. Indicator for bus or self powered. 0 is bus powered, 1 is self powered. VBUS. Connect to the VBUS pin of the upstream connector. This signal indicates to the hub that it is in a connected state, and may enable the D+ pull up resistor to indicate a connection. (The hub does so after the external EEPROM is read). SPI_CS SPI_SCK SPI_SD Output Output I/O/Z O O Z SPI Chip Select. Connect to CS pin of the EEPROM. SPI Clock. Connect to EEPROM SCK pin. SPI Dataline Connect to GND with 15 kresistor and to the Data I/O pin of the EEPROM. D– D+ I/O/Z I/O/Z Z Z Upstream D– Signal. Upstream D+ Signal. Pin 26 VBUSPOWE VBUSPOWE R R SPI Interface 25 SPI_CS 48 SPI_SCK 49 SPI_SD Upstream Port 17 D– 18 D+ Note 4. Unused port DD+/DD– lines can be left floating. Leave the port power, amber, and green LED pins unconnected, and deassert the overcurrent pin. Do not leave the overcurrent pin floating; it is an input. Document Number: 001-52934 Rev. *H Page 8 of 27 CY7C65621/31 Table 3. Pin Assignments [4]<continue> (continued) CY7C65631 Name Downstream Port 1 13 DD–[1] 14 DD+[1] 36 AMBER#[1] Pin CY7C65621 Name Type Default Description DD–[1] DD+[1] AMBER#[1] I/O/Z I/O/Z Output Z Z 1 Downstream D– Signal. Downstream D+ Signal. LED. Driver output for amber LED. Port indicator support. Default is active LOW. Polarity is controlled through EEPROM. LED. Driver output for green LED. Port indicator Support. Default is Active LOW. Polarity is controlled through EEPROM. Overcurrent Condition Detection Input. Default is active LOW. Polarity is controlled through EEPROM. Power Switch Driver Output. Default is active LOW. Polarity is controlled through EEPROM. 35 GREEN#[1] GREEN#[1] Output 1 30 OVR#[1] OVR#[1] Input 1 29 PWR#[1] PWR#[1] O/Z Z DD–[2] DD+[2] AMBER#[2] I/O/Z I/O/Z Output Z Z 1 Downstream Port 2 9 DD–[2] 10 DD+[2] 38 AMBER#[2] 37 GREEN#[2] GREEN#[2] Output 1 32 OVR#[2] OVR#[2] Input 1 31 PWR#[2] PWR#[2] O/Z Z NC NC NC I/O/Z I/O/Z Output Z Z 1 Downstream Port 3 5 DD–[3] 6 DD+[3] 42 AMBER#[3] 41 GREEN#[3] NC Output 1 53 OVR#[3] Reserved Input 1 54 PWR#[3] NC O/Z Z NC NC NC I/O/Z I/O/Z Output Z Z 1 Downstream Port 4 1 DD–[4] 2 DD+[4] 44 AMBER#[4] 43 GREEN#[4] NC Output 1 51 OVR#[4] Reserved Input 1 52 PWR#[4] NC O/Z Z Document Number: 001-52934 Rev. *H Downstream D– Signal. Downstream D+ Signal. LED. Driver output for amber LED. Port indicator support. Default is active LOW. Polarity is controlled through EEPROM. LED. Driver output for green LED. Port indicator support. Default is active LOW. Polarity is controlled through EEPROM. Overcurrent Condition Detection Input. Default is active LOW. Polarity is controlled through EEPROM. Power Switch Driver Output. Default is active LOW. Polarity is controlled through EEPROM. Downstream D– Signal. Downstream D+ Signal. LED. Driver output for amber LED. Port indicator support. Default is active LOW. Polarity is controlled through EEPROM. LED. Driver output for green LED. Port indicator support. Default is active LOW. Polarity is controlled through EEPROM. Overcurrent Condition Detection Input. Default is Active LOW. Polarity is controlled through EEPROM. Reserved. Pull to deasserted state with external resistor on the CY7C65621/31. Power Switch Driver Output. Default is active LOW. Polarity is controlled through EEPROM. Downstream D– Signal. Downstream D+ Signal. LED. Driver output for amber LED. Port indicator support. Default is active LOW. Polarity is controlled through EEPROM. LED. Driver output for green LED. Port indicator support. Default is active LOW. Polarity is controlled through EEPROM. Overcurrent Condition Detection Input. Default is Active LOW. Polarity is controlled through EEPROM. Reserved. Pull to deasserted state with external resistor on the CY7C65621/31 Power Switch Driver Output. Default is active LOW. Polarity is controlled through EEPROM. Page 9 of 27 CY7C65621/31 Default Descriptors This section presents the different descriptors that are available. There is a table for each that lists the functionality of each descriptor. Device Descriptor The standard device descriptor for CY7C65621/31 is based on the information found in the SPI EEPROM. The information in the EEPROM overrides the default descriptor values. If no EEPROM is used, the CY7C65621/31 enumerates with the default descriptor values as shown in the table. If a blank EEPROM is connected, the hub enumerates as vendor defined class instead of a hub class. This is for the purpose of programming the EEPROM with the Cypress driver. Byte 0 1 2,3 4 5 6 7 8,9 10,11 12, 13 14 15 16 17 Full Speed 0x12 0x01 0x0110 0x09 0x00 0x00 0x40 0x04B4 0x6560 0x0915 0x00 0x00 0x00 0x01 High Speed 0x12 0x01 0x0200 0x09 0x00 0x01 0x40 0x04B4 0x6560 0x0915 0x00 0x00 0x00 0x01 Field Name bLength bDescriptorType bcdUSB bDeviceClass bDeviceSubClass bDeviceProtocol bMaxPacketSize0 wIdVendor wIdProduct wbcdDevice iManufacturer iProduct iSerialNumber bNumConfigurations Description 18 Bytes Device_Descriptor USB Specification 2.0 (1.1 if forced FS) Hub None None 64 Bytes VID (overridden by what is defined in EEPROM) PID (overridden by what is defined in EEPROM) DID (overridden by what is defined in EEPROM) Overridden by EEPROM Overridden by EEPROM Overridden by EEPROM One Configuration Supported Field Name bLength bDescriptorType wTotalLength bNumInterfaces bConfigurationValue iConfiguration bmAttributes Description 9 bytes Config_Descriptor Length of all other descriptors 1 The configuration to use Configuration Descriptor Byte 0 1 2 4 5 6 7 8 Full Speed High Speed 0x09 0x09 0x02 [5]/0x07 [6] 0x02 [5]/0x07 [6] 0x0019 0x0019 0x01 0x01 0x01 0x01 0x00 0x00 0xA0 0xA0 0xE0 0xE0 0x28 0x57[5] Value depends on pin 45 - SELFPWR signal SELFPWR = 0 yields 0xA0 and =1 yields 0xE0 bMaxPower Notes 5. Configured speed descriptor. 6. Other speed descriptor. Document Number: 001-52934 Rev. *H Page 10 of 27 CY7C65621/31 Interface Descriptor Byte 0 1 2 3 4 5 6 7 8 Full Speed 0x09 0x04 0x00 0x00 0x01 0x09 0x00 0x00 0x00 High Speed 0x09 0x04 0x00 0x00 0x01 0x09 0x00 0x00 0x00 Field Name bLength bDescriptorType bInterfaceNumber bAlternateSetting bNumEndpoints bInterfaceClass bInterfaceSubClass bInterfaceProtocol iInterface Description 9 bytes Interface_Descriptor Endpoint Descriptor Byte Full Speed High Speed 0 0x07 0x07 1 0x05 0x05 bDescriptorType Endpoint_Descriptor 2 0x81 0x81 bEndpointAddress IN endpoint #1 3 0x03 0x03 4,5 0x0001 0x0001 6 0xFF 0x0C Field Name bLength Description 7 Bytes bmAttributes Interrupt wMaxPacketSize Maximum packet size bInterval Polling rate Device Qualifier Descriptor Byte Full Speed High Speed 0 0x0A 0x0A bLength Field Name 10 Bytes bDescriptorType Device_Qualifier 1 0x06 0x06 2,3 0x0200 0x0200 4 0x09 0x09 bDeviceClass 5 0x00 0x00 bDeviceSubClass 6 0x01 0x00 bDeviceProtocol 7 0x40 0x40 bMaxPacketSize0 8 0x01 0x01 bNumConfigurations 9 0x00 0x00 bReserved Document Number: 001-52934 Rev. *H Description bcdUSB Page 11 of 27 CY7C65621/31 Hub Descriptor Byte 0 1 2 All Speed 0x09 0x29 0x04 [7] 0x02 0x0089 [7] Field Name bLength bDescriptorType bNbrPorts bPwrOn2PwrGood bHubContrCurrent 7 0x32 [7] 0x28 [7] 0xAE [7] 0x00 [7] 8 0xFF [7] bPortPwrCtrlMask 3, 4 5 6 wHubCharacteristics bDeviceRemovable Description 9 bytes Hub descriptor Number of ports supported, CY7C65631. Number of ports supported, CY7C65621. b1, b0: Logical power switching mode 00: Ganged power switching (all ports’ power at once) 01: Individual port power switching (Default in CY7C65621/31) b2: Identifies a compound device, 0: Hub is not part of a compound device (Default in CY7C65621/31), 1: Hub is part of a compound device. b4, b3: Overcurrent protection mode 00: Global overcurrent protection. The hub reports overcurrent as a summation of all ports’ current draw, without a breakdown of individual port overcurrent status. 01: Individual port overcurrent protection. The hub reports overcurrent on a per-port basis. Each port has an over-current status (Default in CY7C65621/31). 1X: No overcurrent protection. This option is allowed only for bus powered hubs that do not implement overcurrent protection. b6, b5: TT Think Time 00: TT requires at most eight FS bit times of inter transaction gap on a full or low speed downstream bus (Default in CY7C65621/31). b7: Port indicators supported, 0: Port indicators are not supported on its downstream facing ports and the SetPortIndicator request has no effect. 1: Port indicators are supported on its downstream facing ports and the SetPortIndicator request controls the indicators. See Functional Overview and Supported USB Requests. (Default in CY7C65621/31). b15,. b8: Reserved Time from when the port is powered to when the power is good on that port Maximum current requirement for the Hub Controller at full speed. Maximum current requirement for the Hub Controller at high speed. Indicates if the logical port has a removable device attached (0 = removable, 1 = non-removable) Required for compatibility with software written for 1.0 compliant devices Note 7. This value is configured through the external EEPROM. Document Number: 001-52934 Rev. *H Page 12 of 27 CY7C65621/31 Configuration Options Byte 0: 0xD2 Systems using CY7C65621/31 may have the option of using a fuse ROM which is preset at the factory to configure the hub. Otherwise, it must have an external EEPROM for the device to have a unique VID, PID, and DID. The CY7C65621/31 can communicate with SPI EEPROM that are either double byte addressed or single byte with the 9th bit within the instruction byte, such as the 24LC040 parts use. The 25LC080 EEPROM uses the double byte address format, and therefore the CY7C656xx can communicate with these parts. The '010s and '020s use the same command format as is used to interface with the ‘040. Therefore, these can also be used to interface with the CY7C65621/31. If the attached EEPROM is blank (0xFF), the hub enumerates as a vendor class device. In this configuration, the hub connects to the Cypress driver to allow programming of the EEPROM. When the EEPROM is programmed a power cycle configures the chip as a hub class device. Needs to be programmed with 0xD2 Byte 1: VID (LSB) Least Significant Byte of Vendor ID Byte 2: VID (MSB) Most Significant Byte of Vendor ID Byte 3: PID (LSB) Least Significant Byte of Product ID Byte 4: PID (MSB)] Most Significant Byte of Product ID Byte 5: Reserved Reserved Byte 6: DID (MSB)] Most Significant Byte of Device ID Byte 7: EnabledOvercurrentTimer[3:0], DisabledOvercurrentTimer[3:0] 0xD0 Load With this EEPROM format, only a unique VID, PID, and DID must be present in the external SPI EEPROM. The contents of the EEPROM must contain this information in the following format: Byte Value 0 0xD0 1 VID (LSB) 2 VID (MSB) 3 PID (LSB) 4 PID (MSB) 5 reserved 6 DID (MSB) 0xD2 Load Byte Value (MSB->LSB) 0 0xD2 1 VID (LSB) 2 VID (MSB) 3 PID (LSB) 4 PID (MSB) 5 reserved 6 DID (MSB) 7 EnabledOverCurrentTimer[3:0], DisableOvercurrentTimer[3:0] 8 ActivePorts[3:0], RemovablePorts[3:0] 9 MaxPower 10 HubControllerPower 11 PowerOnTimer 12 IllegalHubDescriptor, CompoundDevice, FullspeedOnly, NoPortIndicators, Reserved, GangPowered, Reserved, Reserved Document Number: 001-52934 Rev. *H Count time in ms for filtering overcurrent detection. Bits 7–4 are for an enabled port, and bits 3–0 are for a disabled port. Both range from 0 ms to 15 ms. See section Port Indicators on page 5. Default: 8 ms = 0x88. Byte 8: ActivePorts[3:0], RemovablePorts[3:0] Bits 7–4 are the ActivePorts[3:0] bits that indicates if the corresponding port is usable. For example, a two-port hub that uses ports 1 and 4 sets this field to 0x09. The total number of ports reported in the Hub Descriptor: bNbrPorts field is calculated from this. Bits 3–0 are the RemovablePorts[3:0] bits that indicates whether the corresponding logical port is removable (set to high). Logical port numbers are from 1 to n where n is the total number of active ports. If port 2 is disabled then physical ports 1, 3, and 4 map to logical ports 1, 2, and 3. These bit values are reported appropriately in the HubDescriptor:DeviceRemovable field. Default: 0xFF. Byte 9: MaximumPower This value is reported in the ConfigurationDescriptor:bMaxPower field and is the current in 2 mA increments that is required from the upstream hub. Default: 0x28 = 80 mA for full speed and 0x57 = 174 mA for high speed. Byte 10: HubControllerPower This value is reported in the HubDescriptor:bHubContrCurrent field and is the current in milliamperes required by the hub controller. Default: 0x50 = 80 mA for full speed and 0xAE = 174 mA for high speed. Byte 11: PowerOnTimer This value is reported in the HubDescriptor: bPwrOn2PwrGood field and is the time in 2 ms intervals from the SetPortPower command until the power on the corresponding downstream port is good. Default: 0x32 = 100 ms. Page 13 of 27 CY7C65621/31 Byte 12: IllegalHubDescriptor, CompoundDevice, Full speedOnly, NoPortIndicators, Reserved, GangPowered, SingleTTOnly Bit 7: IllegalHubDescriptor. For GetHubDescriptor request, some USB hosts use a DescriptorTypeof 0x00 instead of HUB_DESCRIPTOR, 0x29. According to the USB 2.0 standard, a hub must treat this as a Request Error, and STALL the transaction accordingly (USB 2.0, 11.24.2.5). For systems that do not accept this, the IllegalHubDescriptor configuration bit may be set to allow CY7C65621/31 to accept a DescriptorType of 0x00 for this command. Default is 1. Bit 6: CompoundDevice. Indicates whether the hub is part of a compound device. This is reported in the HubDescriptor, wHub-Characteristics: b2. Default set to ‘0’. Bit 5: Fullspeed. Only configures the hub to be a full speed only device. Default is set to ‘0’. Bit 4: NoPortIndicators. Turns off the port indicators and does not report them as present in the HubDescriptor, wHubCharacteristics b7 field. Default is set to ‘0’. Bit 3: Reserved. Set this bit to ‘0’. Bit 2: GangPowered. Indicates whether the port power switching is ganged (set to 1) or per-port (set to ‘0’). This is reported in the HubDescriptor, wHubCharacteristics field, b4, b3, b1, and b0. Default is set to ‘0’. Bit 1: Reserved. Default is set to ‘0’. Bit 0: Reserved. Default is set to ‘0’. 0xD4 Load Byte Value (MSB->LSB) 0 1 2 3 4 5 6 7 0xD4 VID (LSB) VID (MSB) PID (LSB) PID (MSB) reserved DID (MSB) EnabledOverCurrentTimer[3:0], DisableOvercurrentTimer[3:0] MaxPower (Full speed) MaxPower (High speed) Reserved Reserved HubControllerPower Full Speed Bus Powered HubControllerPower High Speed Bus Powered HubControllerPower Full Speed Self Powered 8 9 10 11 12 13 14 Document Number: 001-52934 Rev. *H Factory Fusible X X X X X Byte Factory Fusible Value (MSB->LSB) 15 HubControllerPower High Speed Self Powered 16 PowerOnTimer 17 IllegalHubDescriptor, CompoundDevice, FullspeedOnly, NoPortIndicators, Reserved, GangPowered, SingleTTOnly, Reserved 18 AmberPolarity, GreenPolarity, ModulateIndicators, PowerControlPolarity, OverCurrentPolarity, OverCurrentMode1, OverCurrentMode2 19 Write Protect 20 NumLangs 21 SupportedStrings 22 ActivePorts[3:0] 23 RemovablePorts[3:0] 24 LangID a = 24 + 2N iManufacturer b = a + 2N iProduct c = b + 2N iSerialNumber d = c + 2N iConfiguration(FS) e = d + 2N iConfiguration(HS) f = e + 2N iInterface(0) g = f + 2N reserved h = g + 2N Strings N:NumLangs X X X Byte 0: 0xD4 Needs to be programmed with 0xD4 Byte 1: VID (LSB) Least Significant Byte of Vendor ID Byte 2: VID (MSB) X X Most Significant Byte of Vendor ID Byte 3: PID (LSB) Least Significant Byte of Product ID Byte 4: PID (MSB) X X Most Significant Byte of Product ID Byte 5: Reserved Reserved. Byte 6: DID (MSB) Most Significant Byte of Device ID Page 14 of 27 CY7C65621/31 Byte 7: EnabledOvercurrentTimer[3:0], DisabledOvercurrentTimer[3:0] Count time in ms for filtering overcurrent detection. Bits 7–4 are for an enabled port, and bits 3–0 are for a disabled port. Both range from 0 ms to 15 ms. See section Port Indicators on page 5. Default: 8 ms = 0x88. Byte 8: MaximumPower (Full Speed) This value is reported in the ConfigurationDescriptor:bMaxPower field and is the current in 2 mA increments that is required from the upstream hub when connected at full speed. Default: 0x28 = 80 mA for full speed. Byte 9: MaximumPower (High Speed) This value is reported in the ConfigurationDescriptor:bMaxPower field and is the current in 2 mA increments that is required from the upstream hub when connected at high speed. Default: 0x57 = 174 mA for high speed. Byte 10: Reserved Write zeros to this location. Byte 11: Reserved Write zeros to this location. Byte 12: HubControllerPower (Full Speed, bus powered) This value is reported in the HubDescriptor:bHubContrCurrent field and is the current in milliamperes required by the hub controller when connected on the upstream hub as a full speed. Default: 0x50 = 80 mA for full speed. Byte 13: HubControllerPower (High Speed, bus powered) This value is reported in the HubDescriptor:bHubContrCurrent field and is the current in milliamperes required by the hub controller when connected on the upstream hub as a high speed. Default: 0xAE = 174 mA for high speed. Byte 14: HubControllerPower (Full Speed, self powered) This value is reported in the HubDescriptor:bHubContrCurrent field and is the current in milliamperes required by the hub controller when connected on the upstream hub as a full speed. Default: 0x50 = 80 mA for full speed. Byte 15: HubControllerPower (High speed, self powered) This value is reported in the HubDescriptor:bHubContrCurrent field and is the current in milliamperes required by the hub controller when connected on the upstream hub as a high speed. Default: 0x64 = 100 mA for high speed. Byte 16: PowerOnTimer This value is reported in the HubDescriptor: bPwrOn2PwrGood field and is the time in 2 ms increments from the SetPortPower command until the power on the corresponding downstream port is good. Default: 0x32 = 100 ms. Document Number: 001-52934 Rev. *H Byte 17: IllegalHubDescriptor, CompoundDevice, Full speedOnly, NoPortIndicators, Reserved, GangPowered, Reserved Bit 7: IllegalHubDescriptor. For GetHubDescriptor request, some USB hosts use a DescriptorTypeof 0x00 instead of HUB_DESCRIPTOR, 0x29. According to the USB 2.0 standard, a hub must treat this as a Request Error, and STALL the transaction accordingly (USB 2.0, 11.24.2.5). For systems that do not accept this, the IllegalHubDescriptor configuration bit may be set to allow CY7C65621/31 to accept a DescriptorType of 0x00 for this command. Default set to 1. Bit 6: CompoundDevice. Indicates whether the hub is part of a compound device. This is reported in the HubDescriptor, wHub-Characteristics: b2. Default is set to ‘0’. Bit 5: Fullspeed. Only configures the hub to be a full speed only device. Default is set to ‘0’. Bit 4: NoPortIndicators. Turns off the port indicators and does not report them as present in the HubDescriptor, wHubCharacteristics b7 field. Default is set to ‘0’. Bit 3: Reserved. Set this bit to ‘0’. Bit 2: GangPowered. Indicates whether the port power switching is ganged (set to 1) or per-port (set to ‘0’). This is reported in the HubDescriptor, wHubCharacteristics field, b4, b3, b1, and b0. Default is set to ‘0’. Bit 1: Reserved. Default is set to ‘0’. Bit 0: Reserved. Default is set to ‘0’. Byte 18: AmberPolarity, GreenPolarity, SelfPowerable, ModulateIndicators, PowerControlPolarity, OverCurrentPolarity, OverCurrentMode1, OverCurrentMode2 Bit 7: AmberPolarity. Indicates the polarity of the amber indicator control. (1 = high, 0 = low) Bit 6: GreenPolarity. Indicates the polarity of the green indicator control. (1 = high, 0 = low) Bit 5: SelfPowerable. Indicates whether the hub is capable of operating in self-powered mode. If ‘0’, the hub is capable of bus-powered operation only. Bit 4: ModulateIndicators. If this bit is set, the indicator outputs are modulated by a square wave of 120 Hz, for power savings. If ‘0’, the outputs are static. Bit 3: PowerControlPolarity. If set, the power control outputs are active HIGH. If not set, the power control outputs are active LOW. Bit 2: OverCurrentPolarity. If set, the over-current inputs are active HIGH. If not set, the over-current inputs are active LOW. Bit 1: OverCurrentMode1. Reported as bit 4 of the wHubCharacteristics field of the hub descriptor. If set to ‘1’, this bit disables over-current detection. Bit 0: OverCurrentMode2. Reported as bit 3 of the wHubCharacteristics field of the hub descriptor. If Bit 1 of this byte is set to ‘0’, over-current detection is enabled. If this bit (Bit 0) is set to ‘1’, the hub reports over-current on a per-port basis. If set to ‘0’, the hub reports over-current as the summation of all ports’ current draw. Page 15 of 27 CY7C65621/31 Byte 19: Write Protect Writing the value 0x42 to this field enables Write Protect and any future writes to the EEPROM will fail. Default is set to ‘0’. Byte 20: NumLangs Number of supported string languages. CY7C656xx supports a maximum of 31 languages; if this field is set to ‘0’ or a number larger than 31, all string support is disabled. Byte 21: SupportedStrings This field contains a bitmap of strings supported by the hub. A set bit indicates that the standard string is supported. A bit not set indicates that the string is not supported. The hub controller returns a non-zero index for each string that is supported, and returns 0x00 for each string not supported, as indicated by this field. The bits in this field correspond to the following standard strings. Table 4. Byte 21 Supported Strings Bit Name 7 Reserved 6 Reserved 5 Interface (0) The iInterface string index reported in the first interface descriptor (alternate setting 0) 4 iConfiguration (High speed) The iConfiguration string index reported in the configuration descriptor, when operating at high speed 3 2 iConfiguration Description number of active ports. If port 2 is disabled then physical ports 1, 3, and 4 map to logical ports 1, 2, and 3. These bit values are recorded in the HubDescriptor:DeviceRemovable field. Default 0x0F. Byte 24: LangID Array of LangID codes supported by the hub. Each LangID consists of two bytes, stored LSB first. The array has NumLangs entries (2 × NumLangs bytes). Byte a: iManufacturer Array of addresses for the iManufacturer strings. Each address is two bytes long, stored LSB first. The array has NumLangs entries (2 × NumLangs bytes). (The starting EEPROM address is based upon the number entered for NumLangs. The address a = 24 + (2 × NumLangs). Byte b: iProduct Array of addresses for the iProduct strings. Each address is two bytes long, stored LSB first. The array has NumLangs entries (2 × NumLangs bytes). The address b = a + (2 × NumLangs). Byte c: iSerialNumber (Full speed) The iConfiguration string index reported in the configuration descriptor, when operating at full speed iSerial Number The iSerialNumber string index reported in the device descriptor 1 iProduct The iProduct string index reported in the device descriptor 0 iManufacturer The iManufacturer string index reported in the device descriptor Byte 22: ActivePorts[3:0] Bits 3–0 are the ActivePorts[3:0] bits that indicates if the corresponding port is usable. For example, a two-port hub that uses ports 1 and 4 would set this field to 0x09. The total number of ports reported in the Hub Descriptor: bNbrPorts field is calculated from this. Default 0x0F Byte 23: RemovablePorts[3:0] Bits 3–0 are the RemovablePorts[3:0] bits that indicates whether the corresponding logical port is removable (set to high). Logical port numbers are from 1 to n where n is the total Document Number: 001-52934 Rev. *H Array of addresses for the iSerialNumber strings. Each address is two bytes long, stored LSB first. The array has NumLangs entries (2 × NumLangs bytes). The address c = b + (2 × NumLangs). Byte d: iConfiguration(Full Speed) Array of addresses for the iConfiguration (full speed) strings. Each address is two bytes long, stored LSB first. The array has NumLangs entries (2 × NumLangs bytes). The address d = c + (2 × NumLangs). Byte e: iConfiguration(High Speed) Array of addresses for the iConfiguration (high speed) strings. Each address is two bytes long, stored LSB first. The array has NumLangs entries (2 × NumLangs bytes). The address e = d + (2 × NumLangs). Byte f: iInterface(0) Array of addresses for the iInterface(0) strings. Each address is two bytes long, stored LSB first. The array has NumLangs entries (2 × NumLangs bytes). The address f = e + (2 × NumLangs). Byte g: iInterface(1) Reserved Byte h: Strings Strings addressed by the string pointers. Strings must comply with the USB specification. The first byte must be the length of the string in bytes, the second must be 0x03, and the string must be in Unicode. Page 16 of 27 CY7C65621/31 Supported USB Requests Device Class Commands Table 5. Device Class Requests Request bmRequestType bRequest wValue wIndex wLength Data GetDeviceStatus 10000000B 0x00 0x0000 0x0000 0x0002 2 Byte Device Status GetInterfaceStatus 10000001B 0x00 0x0000 0x0000 0x0002 2 Byte Interface Status GetEndpointStatus 10000010B 0x00 0x0000 0x0000 0x0002 2 Byte Endpoint Status GetDeviceDescriptor 10000000B 0x06 0x0001 Zero or Language ID Descriptor Descriptor Length GetConfigDescriptor 10000000B 0x06 0x0002 Zero or Language ID Descriptor Descriptor Length GetDeviceQualifierDescriptor 10000000B 0x06 0x0006 Zero or Language ID Descriptor Descriptor Length GetOtherSpeedConfigurationDescriptor 10000000B 0x06 0x0007 Zero or Language ID Descriptor Descriptor Length GetConfiguration [8] 10000000B 0x08 0x0000 0x0000 0x0001 Configuration Value SetCongfiguration [8] 00000000B 0x09 Configuration Value 0x0000 0x0000 None GetInterface 10000001B 0xA 0x0000 0x0000 0x0001 Interface Number SetInterface 00000001B 0x0B Alternate Setting Interface Number 0x0000 None SetAddress 00000000B 0x05 Device Address 0x0000 0x0000 None SetDeviceRemoteWakeup 00000000B 0x03 0x01 0x0000 0x0000 None SetDeviceTest_J 00000000B 0x03 0x02 0x0100 0x0000 None SetDeviceTest_K 00000000B 0x03 0x02 0x0200 0x0000 None SetDeviceTest_SE0_NAK 00000000B 0x03 0x02 0x0300 0x0000 None SetDeviceTest_Packet 00000000B 0x03 0x02 0x0400 0x0000 None SetEndpointHalt 00000000B 0x03 0x00 0x0000 0x0000 None ClearDeviceRemoteWakeup 00000000B 0x01 0x01 0x0000 0x0000 None ClearEndpointHalt 00000000B 0x01 0x00 0x0000 0x0000 None Note 8. Only one configuration is supported in CY7C656xx. Document Number: 001-52934 Rev. *H Page 17 of 27 CY7C65621/31 Hub Class Commands Table 6. Hub Class Requests Request bmRequestType bRequest wValue wIndex wLength Data GetHubStatus 10100000B 0x00 0x0000 0x0000 0x0004 Hub status (See Table 11-19 of USB 2.0 Specifications) Change Status (See Table 11-20 of USB 2.0 Specifications) GetPortStatus 10100011B 0x00 0x0000 Byte 0: 0x00 0x0004 Byte 1: Port Port status (See Table 11-21 of USB 2.0 Specifications) Change Status (See Table 11-20 of USB 2.0 Specifications) ClearHubFeature 00100000B 0x01 Feature Selectors[9] 0 or 0x0000 1 0x0000 None ClearPortFeature 00100011B 0x01 Feature Selectors[9] 1, 2, Byte 0: 0x00 0x0000 8, 16, 17, 18, 19, or 20 Byte 1: Port None ClearPortFeature 00100011B 0x01 Feature Selectors[9] 22 Byte 0: 0x0000 (PORT_INDICATOR) Byte 1: Port None SetHubFeature 00100000B 0x03 Feature Selector[9] 0 or 1 0x0000 0x0000 SetPortFeature 00100011B 0x03 Feature Selectors[9] 2, 4 Port or 8 0x0000 None SetPortFeature 00100011B 0x03 Feature Selector[9] 21 (PORT_TEST) 0x0000 Byte 0: Selectors[9] 1,2, 3, 4 or 5 Byte 1: Port None SetPortFeature 00100011B 0x03 Feature Selector[9] 22 (PORT_INDICATOR) Byte 0: 0x0000 Selectors[10] 0, 1, 2, or 3 Byte 1: Port None GetHubDescriptor 10100000B 0x06 Descriptor Type and Descriptor Index ClearTTBuffer 00100011B 0x08 Dev_Addr, EP_Num TT_Port 0x0000 None ResetTT 00100000B 0x09 0x0000 Byte 0: 0x00 0x0000 Byte 1: Port None GetTTState 10100011B 0X0A TT_Flags Byte 0: 0x00 TT State Byte 1: Port Length TT State StopTT 00100011B 0x0B 0x0000 Byte 0: 0x00 0x0000 Byte 1: Port None Hub Descriptor Length Notes 9. Feature selector values for different features are presented in Table 7 on page 19. 10. Selector values for different features are presented in Table 9 on page 20. Document Number: 001-52934 Rev. *H Page 18 of 27 CY7C65621/31 Table 6. Hub Class Requests<continue> (continued) Request bmRequestType bRequest wValue wIndex wLength Data Vendor Commands Read EEPROM 11000000B 0x02 0x00 0x00 Length Data This request results in length bytes of data being read from the external memory device, and returned to the host. Data is read beginning with address 0. This request fails if there is no external memory device present. This request is only valid if the hub is in the Configured state; the request fails otherwise. Write EEPROM 01000000B 0x01 0x00 0x00 Length Data This request results in length bytes of data being written to the external memory device. Data is written beginning with address 0. This request fails if there is no external memory device present. This request is only valid if the hub is in the Configured state or if the external memory device write protect byte is set; the request fails otherwise. Table 7. Hub Class Feature Selector Feature Selector Recipient Value Table 8. Test Mode Selector for Feature Selector PORT_TEST (0x21)[11] C_HUB_LOCAL_POWER Hub 0 C_HUB_OVER_CURRENT Hub 1 Test_J 1 PORT_CONNECTION Port 0 Test_K 2 PORT_ENABLE Port 1 Test_SE0_NAK 3 PORT_SUSPEND Port 2 Test_Packet 4 PORT_RESET Port 4 Test_Force_Enable 5 PORT_POWER Port 8 PORT_LOW_SPEED Port 9 C_PORT_CONNECTION Port 16 C_PORT_ENABLE Port 17 C_PORT_SUSPEND Port 18 C_PORT_OVER_CURRENT Port 19 C_PORT_RESET Port 20 PORT_TEST Port 21 PORT_INDICATOR Port 22 PORT_TEST Mode Description Selector Value Note 11. Selector values for different features are presented in Table 8 on page 19. Document Number: 001-52934 Rev. *H Page 19 of 27 CY7C65621/31 Table 9. Port Indicator Selector for Feature Selector PORT_INDICATOR (0x22) Selector Value Port Indicator Mode Color set automatically as shown in Table 1 on page 6 Port Indicator Color 0 Automatic mode Amber 1 Manual mode Green 2 Manual mode Off 3 Manual mode Upstream USB Connection The following is a schematic of the USB upstream connector. Figure 2. USB Upstream Port Connection BUSPOWER VCC 2.2 F 10 V D– D– D+ D+ 100 k GND SHELL Downstream USB Connections The following is a schematic of the USB downstream connector. Figure 3. USB Downstream Port Connection VCC PWRx 150 µF 10 V 0.01 µF DD–[X] D– DD+[X] D+ GND SHELL LED Connections The following is a schematic of the LED circuitry. Figure 4. USB Downstream Port Connection 3.3 V GREEN#[x] AMBER#[x] Document Number: 001-52934 Rev. *H 680 680 Page 20 of 27 CY7C65621/31 System Block Diagram Figure 5. Sample Schematic for 4-Port Self Powered Configuration 5V VBUSPOWER VBUS VCC D– 2.2 F D– D+ DsPWR4 OVR1 10 V D+ DsPWR1 PWR1 15 k 150 k GND Power PWR2 Management DsPWR3 OVR2 PWR3 DsPWR2 OVR3 PWR4 OVR4 SHELL 150 F 10 V DD–[1] DD+[1] 0.01F VCC D– D+ GND SHELL DsPWR1 3.3 V GREEN#[1] AMBER#[1] 680 680 SPI_SD DO SPI_SCK SPI_CS DsPWR2 DI CLK SPI_SD 150 F 10 V CS SPI EEPROM DD–[2] DD+[2] 0.01F VCC D– D+ GND SHELL 24 MHz 3.3 V 3.3 V 3.3 V GREEN#[2] 12 pF 12 pF XIN SELFPWR VBUSPOWER 3.3 V DsPWR3 VBUSPOWER 100K RESET 0.1F D– D- D+ D+ DD–[1] DD-[1] DD+[1] DD+[1] DD–[2] DD-[2] DD+[2] DD+[2] DD-[3] DD+[3] DD–[4] DD-[4] DD+[4] DD+[4] HX2LP Lite GREEN[1] AMBER[1] GREEN[1] AMBER[1] GREEN[2] AMBER[2] GREEN[2] AMBER[2] GREEN[3] AMBER[3] GREEN[3] AMBER[3] GREEN[4] AMBER[4] PWR1 OVR1 PWR2 OVR2 PWR3 OVR3 PWR4 OVR4 SPI_CS SPI_SCK SPI_SD GND1 GND2 GND3 GND4 GND5 GND6 GND7 GND8 GND9 GND10 GND11 GND12 DD–[3] DD+[3] 680 XOUT 10K VCC1 VCC2 VCC3 VCC4 VCC5 VCC6 VCC7 VCC8 VCC9 VCC10 AMBER#[2] 680 Document Number: 001-52934 Rev. *H GREEN[4] AMBER[4] PWR1 OVR1 PWR2 OVR2 PWR3 OVR3 PWR4 OVR4 SPI_CS 150 F 10 V DD-[3] DD+[3] 0.01F VCC D– D+ GND SHELL 3.3 V GREEN#[3] AMBER#[3] 680 680 DsPWR4 150 F 10 V DD-[4] DD+[4] 0.01F VCC D– D+ GND SHELL SPI_SCK SPI_SD 3.3 V GREEN#[4] AMBER#[4] 680 680 Page 21 of 27 CY7C65621/31 Absolute Maximum Ratings Operating Conditions Storage temperature ................................ –65 °C to +150 °C TA (Ambient temperature under bias): Commercial ................................................... 0 °C to +70 °C Industrial ..................................................... –40 °C to 85 °C Automotive .................................................. –40 °C to 85 °C Ambient temperature with power applied: Commercial ................................................... 0 °C to +70 °C Industrial ..................................................... –40 °C to 85 °C Automotive .................................................. –40 °C to 85 °C Supply voltage .........................................+3.15 V to +3.45 V Supply voltage to ground potential ..............–0.5 V to +4.0 V Ground voltage ................................................................ 0 V DC voltage applied to outputs in high Z State ..................................... –0.5 V to VCC + 0.5 V Oscillator or Crystal Frequency (FOSC), parallel resonant, 12-pF load capacitance, 0.5 mW ................ 24 MHz ± 0.05% Power dissipation (4 HS ports) .................................... 0.9 W Static discharge voltage .......................................... > 2000 V Maximum output sink current per I/O ......................... 10 mA Electrical Characteristics DC Electrical Characteristics Parameter VCC Description Conditions Supply voltage Min Typ Max Unit 3.15 3.3 3.45 V VCC RampUp Ramp rate on VCC – – 18 V/ms VIH Input high voltage 2 – 5.25 V VIL Input low voltage Il Input leakage current 0 < VIN < VCC VOH Output voltage high VOL Output low voltage –0.5 – 0.8 V – – ±10 A IOUT = 4 mA 2.4 – IOUT = –4 mA – – 0.4 V V IOH Output current high – – 4 mA IOL Output current low – – 4 mA CIN Input pin capacitance – – 10 pF ISUSP Suspend current – 80 – A – 86 110 mA ICC Supply Current 4 Active Ports 2 Active Ports No Active Ports Full speed host, full speed devices High speed host, high speed devices – 231 260 mA High speed host, full speed devices – 154 180 mA Full speed host, full speed devices – 77 100 mA High speed host, high speed devices – 163 190 mA High speed host, Full speed devices – 136 160 mA Full speed host – 65 90 mA High speed host – 93 120 mA USB Transceiver USB 2.0 certified in full, low, and high speed modes. AC Electrical Characteristics Both the upstream USB transceiver and all four downstream transceivers have passed the USB-IF USB 2.0 Electrical Certification Testing. Document Number: 001-52934 Rev. *H Page 22 of 27 CY7C65621/31 Table 10. Serial Peripheral Interface Parameter Description Conditions Clock rise/fall time Min Typ Max Unit – – 500 ns Clock frequency – – 250 kHz Data setup time 50 – – ns Hold time 100 – – ns Reset period 1.9 – – ms Ordering Information Ordering Code Package Type CY7C65621-56LTXC 56-pin QFN 2-Port CY7C65621-56LTXI CY7C65621-56LTXCT 56-pin QFN 2-Port – Tape and Reel CY7C65621-56LTXIT CY7C65631-56LTXC 56-pin QFN 4-Port CY7C65631-56LTXI CY7C65631-56LTXCT 56-pin QFN 4-Port – Tape and Reel CY7C65631-56LTXIT CY4606 CY7C65631 USB 2.0 4-Port hub reference design kit CY4605 CY7C65621 USB 2.0 2-Port hub reference design kit Ordering Code Definitions CY 7 C 65 XXX - 56LT X X X X = blank or T blank = Tube; T = Tape and Reel Temperature Range: X = C or I or A C = Commercial; I = Industrial; A = Automotive Pb-free Package Type: 56LT = 56-pin QFN (Sawn Type) XXX = 621 or 631 621 = Two port hub; 631= Four port hub Family Code: 65 = USB Hubs Technology Code: C = CMOS Marketing Code: 7 = Cypress products Company ID: CY = Cypress Document Number: 001-52934 Rev. *H Page 23 of 27 CY7C65621/31 Package Diagram The CY7C65621/31 is available in a space saving 56-pin QFN (8 × 8 mm). Figure 6. 56-pin QFN (8 × 8 × 1.0 mm) LT56 6.1 × 6.1 E-Pad (Sawn) Package Outline, 51-85187 51-85187 *G Document Number: 001-52934 Rev. *H Page 24 of 27 CY7C65621/31 Acronyms Document Conventions Table 11. Acronyms Used in this Document Units of Measure Acronym Description EEPROM electrically erasable programmable read-only memory I/O input/output LED light-emitting diode LSB least-significant bit MSB most-significant bit PLL phase locked loop SIE serial interface engine SPI serial peripheral interface ROM read-only memory QFN quad-flat no-leads TT transaction translator USB universal serial bus USB-IF universal serial bus implementor’s forum Document Number: 001-52934 Rev. *H Table 12. Units of Measure Symbol Unit of Measure °C degree Celsius kHz kilohertz k kilohm MHz megahertz µA microampere µF microfarad mA milliampere mm millimeter ms millisecond mW milliwatt ns nanosecond ohm % percent pF picofarad V volt W watt Page 25 of 27 CY7C65621/31 Document History Page Document Title: CY7C65621/31, EZ-USB HX2LP Lite™ Low Power USB 2.0 Hub Controller Family Document Number: 001-52934 Rev. ECN Orig. of Change Submission Date ** 2683316 OGC / PYRS 04/15/2009 New Data Sheet for CY7C65621/31 *A 2937054 STVC 05/25/2010 Rearranged parts under Ordering Information in alphabetical order. Deleted Figure 7: QFN 8x8mm LF56A with 6.1x6.1 EPAD diagram Updated Package Diagram. Updated description for Pins 51 and 53. Updated links in Sales, Solutions, and Legal Information. Updated table formats. *B 2953993 DSG 06/16/2010 Removed inactive parts from Ordering Information. *C 3180356 ODC 02/23/2011 Removed automotive references from the datasheet since the parts are no longer active.This includes “Automotive AEC grade option (–40 °C to +85 °C)” in Features section and “Automotive –40 °C to +85 °C” which appears twice in Electrical characteristics section. Added Ordering Code Definitions. Added Units of Measure. Updated to new template. *D 3404912 AASI 10/13/2011 Added watermark. *E 3453432 ASHC 12/07/2011 Removed watermark. Updated Package Diagram. Updated to new template. *F 3846590 PDAV 12/19/2012 Updated Features (Added Industrial Grade and Automotive Grade information). Updated Absolute Maximum Ratings (Added Industrial Grade and Automotive Grade information). Updated Operating Conditions (Added Industrial Grade and Automotive Grade information). Updated Ordering Information (Updated part numbers). *G 4799279 GINS 06/16/2015 Updated Package Diagram: spec 51-85187 – Changed revision from *F to *G. Updated to new template. Completing Sunset Review. *H 5316710 HBM 06/21/2016 Updated Figure 5. Document Number: 001-52934 Rev. *H Description of Change Page 26 of 27 CY7C65621/31 Sales, Solutions, and Legal Information Worldwide Sales and Design Support Cypress maintains a worldwide network of offices, solution centers, manufacturer’s representatives, and distributors. To find the office closest to you, visit us at Cypress Locations. PSoC® Solutions Products ARM® Cortex® Microcontrollers Automotive cypress.com/arm cypress.com/automotive Clocks & Buffers Interface Lighting & Power Control Memory cypress.com/clocks cypress.com/interface PSoC 1 | PSoC 3 | PSoC 4 | PSoC 5LP Cypress Developer Community Community | Forums | Blogs | Video | Training cypress.com/powerpsoc cypress.com/memory PSoC cypress.com/psoc Touch Sensing Technical Support cypress.com/support cypress.com/touch USB Controllers Wireless/RF cypress.com/psoc cypress.com/usb cypress.com/wireless © Cypress Semiconductor Corporation, 2009-2016. This document is the property of Cypress Semiconductor Corporation and its subsidiaries, including Spansion LLC ("Cypress"). This document, including any software or firmware included or referenced in this document ("Software"), is owned by Cypress under the intellectual property laws and treaties of the United States and other countries worldwide. Cypress reserves all rights under such laws and treaties and does not, except as specifically stated in this paragraph, grant any license under its patents, copyrights, trademarks, or other intellectual property rights. If the Software is not accompanied by a license agreement and you do not otherwise have a written agreement with Cypress governing the use of the Software, then Cypress hereby grants you under its copyright rights in the Software, a personal, non-exclusive, nontransferable license (without the right to sublicense) (a) for Software provided in source code form, to modify and reproduce the Software solely for use with Cypress hardware products, only internally within your organization, and (b) to distribute the Software in binary code form externally to end users (either directly or indirectly through resellers and distributors), solely for use on Cypress hardware product units. Cypress also grants you a personal, non-exclusive, nontransferable, license (without the right to sublicense) under those claims of Cypress's patents that are infringed by the Software (as provided by Cypress, unmodified) to make, use, distribute, and import the Software solely to the minimum extent that is necessary for you to exercise your rights under the copyright license granted in the previous sentence. Any other use, reproduction, modification, translation, or compilation of the Software is prohibited. CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS DOCUMENT OR ANY SOFTWARE, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes to this document without further notice. Cypress does not assume any liability arising out of the application or use of any product or circuit described in this document. Any information provided in this document, including any sample design information or programming code, is provided only for reference purposes. It is the responsibility of the user of this document to properly design, program, and test the functionality and safety of any application made of this information and any resulting product. Cypress products are not designed, intended, or authorized for use as critical components in systems designed or intended for the operation of weapons, weapons systems, nuclear installations, life-support devices or systems, other medical devices or systems (including resuscitation equipment and surgical implants), pollution control or hazardous substances management, or other uses where the failure of the device or system could cause personal injury, death, or property damage ("Unintended Uses"). A critical component is any component of a device or system whose failure to perform can be reasonably expected to cause the failure of the device or system, or to affect its safety or effectiveness. Cypress is not liable, in whole or in part, and Company shall and hereby does release Cypress from any claim, damage, or other liability arising from or related to all Unintended Uses of Cypress products. Company shall indemnify and hold Cypress harmless from and against all claims, costs, damages, and other liabilities, including claims for personal injury or death, arising from or related to any Unintended Uses of Cypress products. Cypress, the Cypress logo, Spansion, the Spansion logo, and combinations thereof, PSoC, CapSense, EZ-USB, F-RAM, and Traveo are trademarks or registered trademarks of Cypress in the United States and other countries. For a more complete list of Cypress trademarks, visit cypress.com. Other names and brands may be claimed as property of their respective owners. Document Number: 001-52934 Rev. *H Revised June 21, 2016 Page 27 of 27