CY7C656xx EZ-USB HX2LP™ Low Power USB 2.0 Hub Controller Family Features ■ USB 2.0 Hub Controller ■ Automotive AEC 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 ■ 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 ■ Integrated Port Status Indicator Control ■ 24 MHz External Crystal (Integrated 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 Block Diagram CY7C65630 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+ Port Power Control Port Status USB Downstream Port 2 USB 2.0 PHY D- PWR#[1] LED D+ OVR#[1] Cypress Semiconductor Corporation Document Number: 38-08037 Rev. *M • Port Power Control D- PWR#[2] Port Status OVR#[2] 198 Champion Court LED • USB Downstream Port 4 USB Downstream Port 3 USB 2.0 PHY D+ D- 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 12, 2009 [+] Feedback CY7C656xx Block Diagram CY7C65620 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+ Port Power Control D- PWR#[1] Document Number: 38-08037 Rev. *M 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 25 [+] Feedback CY7C656xx Introduction EZ-USB HX2LP™ is Cypress’s next generation family of high performance, low power USB 2.0 hub controllers. HX2LP 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 of the 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. CY7C65630: 4-port/single transaction translator This device option is for ultra low power applications that require four downstream ports. All four ports share a single transaction translator. The CY7C65630 is available in 56 QFN and is also pin-for-pin compatible with the CY7C65640. 2. CY7C65620: This device option is for a 2-port bus powered application. Both ports share a single transaction translator. The CY7C65620 is available in a 56 QFN. 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. USB Serial Interface Engine The Serial Interface Engine (SIE) allows the CY7C656xx to communicate with the USB host. The SIE handles the following USB activities independently of the Hub Control Block. ■ Bit stuffing/unstuffing ■ Checksum generation/checking ■ TOKEN type identification ■ Address checking. Document Number: 38-08037 Rev. *M Hub Repeater The Hub Repeater manages the connectivity between upstream and downstream facing ports that are operating at the same speed. It supports full or low speed connectivity 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 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 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 TT 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 TT. If a high speed device is connected to this high speed hub, the route only includes the repeater and no TT, because the device and the hub are operating 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 device family are: ■ Standalone hubs ■ Motherboard hubs ■ Monitor hubs ■ Advanced port replicators ■ Docking stations ■ Split-PC designs ■ External personal storage drives ■ Keyboard hubs Page 3 of 25 [+] Feedback CY7C656xx Functional Overview The Cypress CY7C656xx USB 2.0 Hubs are high performance, low system cost solutions for USB. The CY7C656xx 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. System Initialization On power up, the CY7C656xx 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 12 for more details. After reading the EEPROM, if VBUSPOWER (connected to up-stream VBUS) is high, CY7C656xx 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, CY7C656xx 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 CY7C656xx 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 CY7C656xx operates as a normal 1.x hub (operating at full speed). Enumeration After a USB Bus Reset, CY7C656xx is in an unaddressed, unconfigured state (configuration value set to ’0’). During the enumeration process, the host sets the hub's address and configuration. After the hub is configured, the full hub functionality is available. Downstream Ports The CY7C656xx 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 12. Downstream D+ and D– pull down resistors are incorporated in CY7C656xx 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). On 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 after the port is enabled. Document Number: 38-08037 Rev. *M 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 CY7C656xx 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 overcurrent detection of downstream ports is managed by control pins connected to an external power switch device. PWR [n]# output pins of the CY7C656xx 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 is configured through the EEPROM; see Configuration Options on page 12. 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 CY7C656xx 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 Configuration Options on page 12. Page 4 of 25 [+] Feedback CY7C656xx Port Indicators The USB 2.0 port indicators are also supported directly by CY7C656xx. 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 CY7C656xx 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 CY7C656xx. The CY7C656xx port indicators has two modes of operation: automatic and manual. On power up the CY7C656xx defaults to automatic mode, where the color of the Port Indicator (green, amber, off) indicates the functional status of the CY7C656xx port. In automatic mode, the CY7C656xx 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 identifies the mapping of color to port state in automatic mode. Table 1. Automatic Port State to Port Indicator Color Mapping 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 on page 13. 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 enable 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 displays the color definition of the indicators when CY7C656xx is in manual mode.[1] Table 2. Port Indicator Color Definitions in Manual Mode 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 Note 1. Information presented in Table 1 and Table 2 is from USB 2.0 specification Tables 11-6 and 11-7, respectively. Document Number: 38-08037 Rev. *M Page 5 of 25 [+] Feedback CY7C656xx 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 x 8 mm)[2] 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 2. NC and Rsvd are for CY7C65620 only. Document Number: 38-08037 Rev. *M Page 6 of 25 [+] Feedback CY7C656xx Pin Description Table 3. Pin Assignments[3] Pin CY7C65630 Name CY7C65620 Name 3 7 11 15 19 23 27 33 39 55 VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC VCC Power Power Power Power Power Power Power Power Power Power N/A N/A N/A N/A N/A N/A N/A N/A N/A 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. 4 8 12 16 20 24 28 34 40 47 50 56 21 22 46 GND GND GND GND GND GND GND GND GND GND GND GND XIN XOUT RESET# 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 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 45 SELFPWR SELFPWR Input N/A VBUSPOWER VBUSPOWER Input N/A 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. 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). 26 SPI Interface 25 SPI_CS 48 SPI_SCK 49 SPI_SD Upstream Port 17 D– 18 D+ Type Default Description 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 KΩ resistor 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. Note 3. 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: 38-08037 Rev. *M Page 7 of 25 [+] Feedback CY7C656xx Table 3. Pin Assignments[3] (continued) CY7C65630 Name Downstream Port 1 Pin CY7C65620 Name Type Default 13 14 36 DD–[1] DD+[1] AMBER#[1] DD–[1] DD+[1] AMBER#[1] I/O/Z I/O/Z Output Z Z 1 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: 38-08037 Rev. *M Description 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. 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 (CY7C65620 only) 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 (CY7C65620 only) Power Switch Driver Output. Default is Active LOW. Polarity is controlled through EEPROM. Page 8 of 25 [+] Feedback CY7C656xx Default Descriptors This section presents the different descriptors that are available. The following tables list the functionality of each descriptor. Device Descriptor The standard device descriptor for CY7C656xx 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 CY7C656xx enumerates with the default descriptor values as shown in the following 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 Full Speed High Speed 0 0x12 0x12 1 0x01 0x01 2,3 0x0110 0x0200 4 0x09 5 0x00 6 7 Field Name Description bLength 18 bytes bDescriptorType DEVICE_DESCRIPTOR bcdUSB USB specification 2.0 (1.1 if forced FS) 0x09 bDeviceClass HUB 0x00 bDeviceSubClass None 0x00 0x01 bDeviceProtocol None 0x40 0x40 bMaxPacketSize0 64 bytes 8,9 0x04B4 0x04B4 wIdVendor VID (overridden by what is defined in EEPROM) 10,11 0x6560 0x6560 wIdProduct PID (overridden by what is defined in EEPROM) 12, 13 0x0915 0x0915 14 0x00 0x00 wbcdDevice DID (overridden by what is defined in EEPROM) iManufacturer Overridden by EEPROM 15 0x00 0x00 iProduct Overridden by EEPROM 16 0x00 0x00 iSerialNumber Overridden by EEPROM 17 0x01 0x01 bNumConfigurations One configuration supported Configuration Descriptor Byte Full Speed High Speed 0x09 Field Name bLength Description 0 0x09 1 0x02[4]/0x07[5] 2 0x0019 0x0019 wTotalLength Length of all other descriptors 4 0x01 0x01 bNumInterfaces 1 5 0x01 0x01 bConfigurationValue The configuration to use 6 0x00 0x00 iConfiguration 7 0xA0 0xE0 0xA0 0xE0 bmAttributes 8 0x28 0x57[4] bMaxPower 0x02[4]/0x07[5] bDescriptorType 9 bytes CONFIG_DESCRIPTOR Value depends on pin 45 - SELFPWR signal SELFPWR = 0 yields 0xA0 and =1 yields 0xE0 Notes 4. Configured speed descriptor. 5. Other speed descriptor. Document Number: 38-08037 Rev. *M Page 9 of 25 [+] Feedback CY7C656xx Interface Descriptor Byte Full Speed High Speed 0 0x09 0x09 Field Name 1 0x04 2 0x00 3 0x00 0x00 bAlternateSetting 4 0x01 0x01 bNumEndpoints 5 0x09 0x09 bInterfaceClass 6 0x00 0x00 bInterfaceSubClass 7 0x00 0x00 bInterfaceProtocol 8 0x00 0x00 iInterface Description bLength 9 bytes 0x04 bDescriptorType INTERFACE_DESCRIPTOR 0x00 bInterfaceNumber Endpoint Descriptor Byte Full Speed High Speed Field Name Description 0 0x07 0x07 bLength 7 bytes 1 0x05 0x05 bDescriptorType ENDPOINT_DESCRIPTOR 2 0x81 0x81 bEndpointAddress IN Endpoint #1 3 0x03 0x03 bmAttributes Interrupt 4,5 0x0001 0x0001 6 0xFF 0x0C wMaxPacketSize Maximum packet size bInterval Polling rate Device Qualifier Descriptor Byte Full Speed High Speed Field Name 0 0x0A 0x0A bLength 10 bytes 1 0x06 0x06 bDescriptorType DEVICE_QUALIFIER 2,3 0x0200 0x0200 4 0x09 0x09 5 0x00 0x00 bDeviceSubClass 6 0x01 0x00 bDeviceProtocol bcdUSB bDeviceClass 7 0x40 0x40 bMaxPacketSize0 8 0x01 0x01 bNumConfigurations 9 0x00 0x00 bReserved Document Number: 38-08037 Rev. *M Description Page 10 of 25 [+] Feedback CY7C656xx Hub Descriptor Byte All Speed Field Name Description 0 0x09 bLength 9 bytes 1 0x29 bDescriptorType HUB descriptor 2 0x04[6] 0x02 bNbrPorts Number of ports supported, CY7C65630 Number of ports supported, CY7C65620 3,4 0x0089[6] wHubCharacteristics b1, b0: Logical Power Switching Mode 00: Ganged power switching (all ports’ power at once). 01: Individual port power switching (Default in CY7C656xx). b2: Identifies a Compound Device 0: Hub is not part of a compound device (Default in CY7C656xx). 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 overcurrent status (Default in CY7C656xx). 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-/low speed downstream bus (Default in CY7C656xx). 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 CY7C656xx). b15,. b8: Reserved 5 0x32[6] bPwrOn2PwrGood Time from when the port is powered to when the power is good on that port. 6 0x28[6] 0xAE[6] bHubContrCurrent Maximum current requirement for the Hub Controller at full speed. Maximum current requirement for the Hub Controller at high speed. 7 0x00[6] bDeviceRemovable Indicates if the logical port has a removable device attached (0 = removable, 1 = non removable). 8 0xFF[6] bPortPwrCtrlMask Required for compatibility with software written for 1.0 compliant devices. Note 6. This value is configured through the external EEPROM. Document Number: 38-08037 Rev. *M Page 11 of 25 [+] Feedback CY7C656xx Configuration Options Byte 0: 0xD2 Systems using CY7C656xx 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 CY7C656xx can communicate with SPI EEPROM that are either double byte addressed or single byte with the ninth bit within the instruction byte, such as the 24LC040 parts use. The 25LC080 EEPROM uses the double byte address format. Therefore, the CY7C656xx can communicate with these parts. The '010s and '020s use the same command format that is used to interface with the ‘040 and hence these can also be used to interface with the CY7C656xx. 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. 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: 38-08037 Rev. *M 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] 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 would set 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 12 of 25 [+] Feedback CY7C656xx Byte 12: IllegalHubDescriptor, CompoundDevice, Full Speed Only, 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 can be set to allow CY7C656xx 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 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Value (MSB->LSB) 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 HubControllerPower High Speed Self Powered PowerOnTimer Document Number: 38-08037 Rev. *M Factory Fusable X X X X 0xD4 Load (continued) Byte 17 18 Value (MSB->LSB) IllegalHubDescriptor, CompoundDevice, FullspeedOnly, NoPortIndicators, Reserved, GangPowered, SingleTTOnly, Reserved AmberPolarity, GreenPolarity, ModulateIndicators, PowerControlPolarity, OverCurrentPolarity, OverCurrentMode1, OverCurrentMode2 Write Protect NumLangs SupportedStrings ActivePorts[3:0] RemovablePorts[3:0] LangID iManufacturer 19 20 21 22 23 24 a =24+2N b iProduct =a+2N c iSerialNumber =b+2N d iConfiguration(FS) =c+2N e iConfiguration(HS) =d+2N f iInterface(0) =e+2N g reserved =f+2N h=g+2N Strings N:NumLangs Factory Fusable X X X Byte 0: 0xD4 Needs to be programmed with 0xD4 X 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 X X Byte 4: PID (MSB) Most Significant Byte of Product ID Byte 5: Reserved Reserved Byte 6: DID (MSB) Most Significant Byte of Device ID Page 13 of 25 [+] Feedback CY7C656xx 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. Byte 17: IllegalHubDescriptor, CompoundDevice, Full Speed Only, 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 Document Number: 38-08037 Rev. *M that do not accept this, the IllegalHubDescriptor configuration bit may be set to allow CY7C656xx 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 overcurrent inputs are active HIGH. If not set, the overcurrent 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 overcurrent 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’, overcurrent detection is enabled. If this bit (Bit 0) is set to ‘1’, the hub reports overcurrent on a per-port basis. If set to ‘0’, the hub reports overcurrent as the summation of all ports’ current draw. Byte 19: Write Protect Writing the value 0x42 to this field enables Write Protect and any future writes to the EEPROM 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. Page 14 of 25 [+] Feedback CY7C656xx Byte 24: LangID 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 Description Reserved 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 iConfiguration 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 6 3 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). (full speed) The iConfiguration string index reported in the configuration descriptor, when operating at full speed 2 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 sets 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 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. Document Number: 38-08037 Rev. *M 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 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 15 of 25 [+] Feedback CY7C656xx Supported USB Requests Device Class Commands Table 5. Device Class Requests bmRequestType bRequest GetDeviceStatus Request 10000000B 0x00 0x0000 wValue 0x0000 wIndex 0x0002 wLength 2 Byte Device Status Data 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 Length Descriptor GetConfigDescriptor 10000000B 0x06 0x0002 Zero or Language ID Descriptor Length Descriptor GetDeviceQualifierDescriptor 10000000B 0x06 0x0006 Zero or Language ID Descriptor Length Descriptor GetOtherSpeedConfigurationDescriptor 10000000B 0x06 0x0007 Zero or Language ID Descriptor Length Descriptor GetConfiguration[7] 10000000B 0x08 0x0000 0x0000 0x0001 Configuration Value SetCongfiguration[7] 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 7. Only one configuration is supported in CY7C656xx. Document Number: 38-08037 Rev. *M Page 16 of 25 [+] Feedback CY7C656xx 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[8] 0 or 1 0x0000 0x0000 None ClearPortFeature 00100011B 0x01 Feature Byte 0: 0x00 0x0000 Selectors[8] Byte 1: Port 1, 2, 8, 16, 17, 18, 19, or 20 None ClearPortFeature 00100011B 0x01 Feature Selectors[8] Byte 0: 22 Byte 1: Port (PORT_INDICATOR) None SetHubFeature 00100000B 0x03 Feature Selector[8] 0 or 1 0x0000 0x0000 SetPortFeature 00100011B 0x03 Feature Selectors[8] 2, 4 or 8 Port 0x0000 None SetPortFeature 00100011B 0x03 Feature Selector[8] 21 (PORT_TEST) Byte 0: 0x0000 Selectors[8] 1,2, 3, 4 or 5 Byte 1: Port None SetPortFeature 00100011B 0x03 Feature Byte 0: 0x0000 Selector[8] 22 Selectors[10] (PORT_INDICATOR) 0, 1, 2, or 3 Byte 1: Port None GetHubDescriptor 10100000B 0x06 Descriptor Type and Descriptor Index Hub Descriptor Length 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 Document Number: 38-08037 Rev. *M 0x0000 Page 17 of 25 [+] Feedback CY7C656xx Table 6. Hub Class Requests (continued) Request bmRequestType bRequest wValue wIndex wLength Data Vendor Commands Read EEPROM 11000000B 0x02 0x00 0x00 Length Data This request results in reading length bytes of data 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 writing length bytes of data 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 Recipient Value C_HUB_LOCAL_POWER Feature Selector Hub 0 C_HUB_OVER_CURRENT Hub 1 PORT_CONNECTION Port 0 PORT_ENABLE Port 1 PORT_SUSPEND Port 2 PORT_RESET Port 4 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 Table 8. Test Mode Selector for Feature Selector PORT_TEST (0x21)[9] PORT_TEST Mode Description Selector Value Test_J 1 Test_K 2 Test_SE0_NAK 3 Test_Packet 4 Test_Force_Enable 5 Table 9. Port Indicator Selector for Feature Selector PORT_INDICATOR (0x22) Port Indicator Color Selector Value Port Indicator Mode Color set automatically as shown in Table 1 on page 5 0 Automatic Mode Amber 1 Manual Mode Green 2 Manual Mode Off 3 Manual Mode Notes 8. Selector values for different features are presented in Table 7 on page 18. 9. Selector values for different features are presented in Table 8 on page 18. 10. Selector values for different features are presented in Table 9 on page 18. Document Number: 38-08037 Rev. *M Page 18 of 25 [+] Feedback CY7C656xx Upstream USB Connection The following is a schematic of the USB upstream connector. Figure 2. USB Upstream Port Connection BUSPOWER VCC 2.2 μF 10V D– D– D+ D+ 100 kΩ GND SHELL Downstream USB Connection The following is a schematic of the USB downstream connector. Figure 3. USB Downstream Port Connection VCC PWRx 150 µF 10V 0.01 µF DD–[X] D– DD+[X] D+ GND SHELL LED Connection The following is a schematic of the LED circuitry. Figure 4. USB Downstream Port Connection 3.3V GREEN#[x] AMBER#[x] Document Number: 38-08037 Rev. *M 680Ω 680Ω Page 19 of 25 [+] Feedback CY7C656xx System Block Diagram Figure 5. Sample Schematic for 4-Port Self Powered Configuration 5V VBUSPOWER VBUS VCC D– 2.2 μF D– OVR1 10V D+ D+ DsPWR1 PWR1 15 kΩ 150 kΩ DsPWR4 Power PWR2 Management OVR2 PWR3 GND OVR3 PWR4 OVR4 SHELL DsPWR3 150 μF 10V DD–[1] DD+[1] 0.01 μF VCC D– D+ GND SHELL DsPWR2 DsPWR1 3.3V GREEN#[1] AMBER#[1] 680Ω 680Ω SPI_SD DO SPI_SCK SPI_CS DsPWR2 DI CLK SPI_SD 150 μF 10V CS SPI EEPROM DD–[2] DD+[2] 0.01 μF VCC D– D+ GND SHELL 24 MHz 3.3V 3.3V 3.3V GREEN#[2] 12 pF 12 pF XIN SELFPWR DsPWR3 GREEN[1] AMBER[1] GREEN[1] AMBER[1] GREEN[2] AMBER[2] GREEN[2] AMBER[2] RESET GREEN[3] AMBER[3] GREEN[3] AMBER[3] D– D- GREEN[4] AMBER[4] GREEN[4] AMBER[4] D+ D+ VBUSPOWER 3.3V VBUSPOWER 100K 0.1μF DD–[1] DD-[1] DD+[1] DD+[1] DD–[2] DD-[2] DD+[2] DD+[2] DD–[3] DD-[3] DD+[3] DD+[3] DD–[4] DD-[4] HX2LP PWR1 OVR1 PWR2 OVR2 PWR3 OVR3 PWR4 OVR4 SPI_CS SPI_SCK SPI_SD DD+[4] GND1 GND2 GND3 GND4 GND5 GND6 GND7 GND8 GND9 GND10 GND11 GND12 DD+[4] 680Ω XOUT 10K VCC1 VCC2 VCC3 VCC4 VCC5 VCC6 VCC7 VCC8 VCC9 VCC10 VCC11 AMBER#[2] 680Ω Document Number: 38-08037 Rev. *M PWR1 OVR1 PWR2 OVR2 PWR3 OVR3 PWR4 OVR4 SPI_CS 150 μF 10V DD-[3] DD+[3] 0.01 μF VCC D– D+ GND SHELL 3.3 V GREEN#[3] AMBER#[3] 680Ω 680Ω DsPWR4 150 μF 10V DD-[4] DD+[4] 0.01 μF VCC D– D+ GND SHELL SPI_SCK SPI_SD 3.3 V GREEN#[4] AMBER#[4] 680Ω 680Ω Page 20 of 25 [+] Feedback CY7C656xx Electrical Characteristics Absolute Maximum Ratings Operating Conditions Exceeding maximum ratings may impair the useful life of the device. These user guidelines are not tested. Storage Temperature ................................ –65°C to +150 °C Ambient Temperature with Power Applied: Commercial ....................................... 0°C to +70°C Automotive ................................... –40°C to +85°C Supply Voltage to Ground Potential ...............–0.5V to +4.0V TA (Ambient Temperature Under Bias) Commercial ........................... 0°C to +70°C Automotive ....................... –40°C to +85°C Supply Voltage............................................+3.15V to +3.45V Ground Voltage.................................................................. 0V FOSC (Oscillator or Crystal Frequency)...... 24 MHz ± 0.05% parallel resonant, 12 pF load capacitance, 0.5 mW DC Voltage Applied to Outputs in High Z State ....................................... –0.5V to VCC + 0.5V Power Dissipation (4 HS ports)..................................... 0.9 W Static Discharge Voltage........................................... > 2000V Maximum Output Sink Current per I/O ........................ 10 mA DC Electrical Characteristics Parameter VCC Description Conditions Supply Voltage Min Typ Max 3.15 3.3 3.45 V 18 V/ms VCC RampUp Ramp Rate on VCC Unit VIH Input High Voltage 2 5.25 V VIL Input Low Voltage –0.5 0.8 V ±10 μA Il Input Leakage Current 0 < VIN < VCC VOH Output Voltage High IOUT = 4 mA IOUT = –4 mA VOL Output Low Voltage IOH Output Current High IOL CIN ISUSP Suspend Current ICC Supply Current 2.4 V 0.4 V 4 mA Output Current Low 4 mA Input Pin Capacitance 10 pF 4 Active Ports 2 Active Ports No Active Ports μA 80 Full Speed Host, Full Speed Devices 86 110 mA 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: 38-08037 Rev. *M Page 21 of 25 [+] Feedback CY7C656xx Table 10. Serial Peripheral Interface Parameter Description Conditions Min Typ Max Unit Clock Rise/Fall Time 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 CY7C65630-56LFXC 56-Pin QFN 4-Port Punch Type QFN Bulk CY7C65630-56LFXCT 56-Pin QFN 4-Port Punch Type QFN Tape & Reel CY7C65630-56LTXC 56-Pin QFN 4-Port Sawn Type QFN Bulk CY7C65630-56LTXCT 56-Pin QFN 4-Port Sawn Type QFN Tape & Reel CY7C65630-56LFXA 56-Pin QFN 4-Port Automotive AEC grade CY7C65620-56LFXC 56-Pin QFN 2-Port Punch Type QFN Bulk CY7C65620-56LFXCT 56-Pin QFN 2-Port Punch Type QFN Tape & Reel CY7C65620-56LTXC 56-Pin QFN 2-Port Sawn Type QFN Bulk CY7C65620-56LTXCT 56-Pin QFN 2-Port Sawn Type QFN Tape & Reel CY4606 CY7C65630 USB 2.0 4-Port Hub Reference Design Kit CY4605 CY7C65620 USB 2.0 2-Port Hub Reference Design Kit Document Number: 38-08037 Rev. *M Page 22 of 25 [+] Feedback CY7C656xx Package Diagram The CY7C656xx is available in a space saving 56-pin QFN (8 × 8 mm). Figure 6. 56-Pin Sawn QFN (8 X 8 X 1.00 mm) 51-85187 *D Figure 7. 56-Pin QFN 8 x 8 mm LF56A (Subcon Punch Type with 6.1 x 6.1 EPad) 3)$% 6)%7 4/0 6)%7 "/44/- 6)%7 ;= ;= ;= ! # ;= -!8 ;= -!8 ;= ;= ;= -!8 ;= 2%& . ;= ;= ;= ;= = ! 0). )$ ;= 2 . ² ² # 3%!4).' 0,!.% ;= 62/'(5$%/( (;326(' 3$' ;= ;= ;= ;= ;= ;= ;= ;= ;= 8 ;= ;= 127(6 +$7&+$5($,662/'(5$%/((;326('0(7$/ 5()(5(1&(-('(&02 3$&.$*(:(,*+7J $//',0(16,216$5(,100>0,10$;@ 3$&.$*(&2'( 3$57 '(6&5,37,21 /) /< 67$1'$5' 3%)5(( 51-85144 *G Document Number: 38-08037 Rev. *M Page 23 of 25 [+] Feedback CY7C656xx Document History Page Document Title: CY7C656xx EZ-USB HX2LP™ Low Power USB 2.0 Hub Controller Family Document Number: 38-08037 Rev. ECN No. Orig. of Change Submission Date ** 131505 JTC *A 231329 KKU See ECN Changed load capacitors to 12 pF, updated part numbers, added functional overviews, block descriptions, pin configurations, default descriptors, configurations options, supported USB requests, electrical characteristics and package diagram *B 250869 ARI See ECN Added typical values for Icc in the DC Electrical Characteristics table, changed MPN CY7C65650 to CY7C65640B, added CY7C65620 package *C 330195 KKU See ECN Added Reset period in to the table in section ‘Serial Peripheral Interface’ Added 0xD4 EEPROM Load Added vendor command values Added VCC ramp rate Updated block diagram *D 342997 KKU See ECN Updated features list Removed from the Enumeration section “Once the hub is configured, the full hub functionality is available” Added reference to 0xD4 load to the Downstream Ports section Added reference to polarity control in the Power Switching and Over-current Detection sections Updated the Automatic Port State to Port Indicator Color Mapping table to match USB-IF spec changes Added LED modulation to the Port Indicators section Updated pin description table - SELFPWR# to SELFPWR and removed references to limitations of bus powered. Added reference to polarity control on PWR#, OVR# and LED control lines Updated Default descriptors Updated EEPROM list to include 25LC080 Removed NoEOPatEOF1 bit Added LED polarity control *E 498396 TEH See ECN Removed all references to HX1TT and Multi-TT Updated Block Diagrams to remove ports and TTs Removed Preliminary Updated Device ID default Added Write Protect Description Correct sample schematics to reflect latest RDK Updated Power Consumption Numbers Updated Part Numbers *F 570287 ARI See ECN Corrected typo in Table 3. Changed downstream port 4 signal labels from [3] to [4]. Added dimensions of E-Pads to Figure 6. *G 852600 KKU See ECN Changed feature “2-Port Single TT for bus power support” to “Bus powered configurations” Updated figure 5. Added blank EEPROM statement to the Device Descriptor section Added blank EEPROM statement to the Configuration Options section Added indicator for factory fusable options. Description of Change 02/12/2004 New data sheet Document Number: 38-08037 Rev. *M Page 24 of 25 [+] Feedback CY7C656xx Document History Page (continued) Document Title: CY7C656xx EZ-USB HX2LP™ Low Power USB 2.0 Hub Controller Family Document Number: 38-08037 Rev. ECN No. Orig. of Change Submission Date Description of Change *H 1019740 KKU/ARI See ECN Added to Features: Automotive AEC grade option (-40-85C). Added to Part numbers: CY7C65630-56LFXA: 56-pin QFN 4-Port Automotive AEC grade. Added absolute ambient temperature with power applied for automotive part. Added operational Ambient Temperature Under Bias for automotive part. Replaced TBD under absolute maximum power dissipation with 0.9 Watts. Removed internal part numbers referenced in figure 6 note 5. Changed “USB 2.0-Compliant” to “USB 2.0-Certified” Removable Ports updated to reflect logical ports. Edited for active voice. *I 2238608 KKU See ECN Block diagrams for CY7C656530 and CY7C65620 were altered in the *H revision and should not have been. Reverted diagrams to *G version *J 2370406 PYRS See ECN Changing the status from Preliminary to Final as per author’s confirmation *K 2657415 DPT/PYRS 02/10/09 Added package diagram for 56-pin Sawn QFN. *L 2705817 GOR/PYRS 05/13/09 Added new part numbers to the ordering information table *M 2719596 VIVG/AESA 06/16/2009 Added CY7C65620-56LFXA part in the ordering information table 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.com/sales. Products PSoC Clocks & Buffers psoc.cypress.com clocks.cypress.com Wireless wireless.cypress.com Memories memory.cypress.com Image Sensors image.cypress.com © Cypress Semiconductor Corporation, 2004-2009. The information contained herein is subject to change without notice. Cypress Semiconductor Corporation assumes no responsibility for the use of any circuitry other than circuitry embodied in a Cypress product. Nor does it convey or imply any license under patent or other rights. Cypress products are not warranted nor intended to be used for medical, life support, life saving, critical control or safety applications, unless pursuant to an express written agreement with Cypress. Furthermore, Cypress does not authorize its products for use as critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress products in life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges. Any Source Code (software and/or firmware) is owned by Cypress Semiconductor Corporation (Cypress) and is protected by and subject to worldwide patent protection (United States and foreign), United States copyright laws and international treaty provisions. Cypress hereby grants to licensee a personal, non-exclusive, non-transferable license to copy, use, modify, create derivative works of, and compile the Cypress Source Code and derivative works for the sole purpose of creating custom software and or firmware in support of licensee product to be used only in conjunction with a Cypress integrated circuit as specified in the applicable agreement. Any reproduction, modification, translation, compilation, or representation of this Source Code except as specified above is prohibited without the express written permission of Cypress. Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes without further notice to the materials described herein. Cypress does not assume any liability arising out of the application or use of any product or circuit described herein. Cypress does not authorize its products for use as critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress’ product in a life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges. Use may be limited by and subject to the applicable Cypress software license agreement. Document Number: 38-08037 Rev. *M Revised June 12, 2009 Page 25 of 25 TetraHub and EZ-USB HX2LP are trademarks of Cypress Semiconductor Corporation. All other product and company names mentioned in this document are trademarks of their respective holders. [+] Feedback