CY7C656xx EZ-USB HX2LP™ Low-Power USB 2.0 Hub Controller Family Features • In-system EEPROM programming • Configurable with external SPI EEPROM: • • • • • • • • • • USB 2.0 hub controller Automotive AEC grade option (–40 - 85C) 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/function compatible with CY7C65640 and CY7C65640A (TetraHub™) • Space saving 56-pin QFN • Single power supply requirement • • • • • — 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/disabled overcurrent timer — Overcurrent pin polarity — Indicator pin polarity — Compound device — Enable full-speed only — 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) Block Diagram CY7C65630 D+ — Ganged power switching — Self and bus powered compatibility — Fully configurable string descriptors for multiple language support D- USB 2.0 PHY 24 MHz Crystal — Disable port indicators 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 USB Downstream Port 2 Port Status PWR#[1] USB 2.0 PHY LED D+ OVR#[1] Cypress Semiconductor Corporation Document #: 38-08037 Rev. *H Port Power Control Port Status D- PWR#[2] LED D+ D- 198 Champion Court Port Power Control Port Status PWR#[3] OVR#[3] OVR#[2] • USB Downstream Port 4 USB Downstream Port 3 USB 2.0 PHY • USB 2.0 PHY LED D+ D- Port Power Control Port Status PWR#[4] LED OVR#[4] San Jose, CA 95134-1709 • 408-943-2600 Revised May 3, 2007 [+] Feedback CY7C656xx Block Diagram CY7C65620 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 (X1) Hub Repeater TT RAM Routing Logic USB Downstream Port 1 USB 2.0 PHY D+ Port Power Control Port Status D- PWR#[1] LED OVR#[1] USB Downstream Port 2 USB 2.0 PHY D+ D- Port Power Control Port Status PWR#[2] LED OVR#[2] Introduction EZ-USB HX2LP™ is Cypress’ 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 a 56 QFN and is also pin-for-pin compatible with the CY7C65640. Document #: 38-08037 Rev. *H USB Downstream Port 4 USB Downstream Port 3 USB 2.0 PHY D+ Port Power Control Port Status USB 2.0 PHY LED D+ D- PWR#[3] D- Port Power Control Port Status PWR#[4] OVR#[3] LED OVR#[4] 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’ 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 activity independently of the Hub Control Block. • Bit stuffing/unstuffing • Checksum generation/checking • TOKEN type identification • Address checking. Page 2 of 24 [+] Feedback CY7C656xx Hub Repeater System Initialization The Hub Repeater manages the connectivity between upstream and downstream facing ports that are operating at the same speed. It supports full-/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. 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 11 for more details. 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-/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-/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-/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 hub, the route only includes the repeater and no Transaction Translator since 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 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 as well as 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. 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. Once 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 11. 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. Once 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 once 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 Document #: 38-08037 Rev. *H Page 3 of 24 [+] Feedback CY7C656xx 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 over-current 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 can be configured through the EEPROM; see “0xD4 Load” on page 13. 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 over-current 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 over-current indication (output) signals. Upon detecting an over-current condition, the hub reports the 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 13. Port Indicators The USB 2.0 port indicators are also supported directly by the CY7C656xx. In accordance with 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 the CY7C656xx. There are two modes of operation for the CY7C656xx port indicators: 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 Document #: 38-08037 Rev. *H Enabled, Transmit, or TransmitR Green Suspended, Resuming, SendEOR, Restart_E/S Off Page 4 of 24 [+] Feedback CY7C656xx 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 13. Table 2 displays the color definition of the indicators when CY7C656xx is in manual mode.[1] 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. 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 #: 38-08037 Rev. *H Page 5 of 24 [+] 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 #: 38-08037 Rev. *H Page 6 of 24 [+] Feedback CY7C656xx Pin Description Table Table 3. Pin Assignments[3] Pin CY7C65630 Name CY7C65620 Name 3 VCC VCC Power N/A VCC. This signal provides power to the chip. Type Default Description 7 VCC VCC Power N/A VCC. This signal provides power to the chip. 11 VCC VCC Power N/A VCC. This signal provides power to the chip. 15 VCC VCC Power N/A VCC. This signal provides power to the chip. 19 VCC VCC Power N/A VCC. This signal provides power to the chip. 23 VCC VCC Power N/A VCC. This signal provides power to the chip. 27 VCC VCC Power N/A VCC. This signal provides power to the chip. 33 VCC VCC Power N/A VCC. This signal provides power to the chip. 39 VCC VCC Power N/A VCC. This signal provides power to the chip. 55 VCC VCC Power N/A VCC. This signal provides power to the chip. 4 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 8 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 12 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 16 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 20 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 24 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 28 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 34 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 40 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 47 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 50 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 56 GND GND Power N/A GND. Connect to Ground with as short a path as possible. 21 XIN XIN Input N/A 24-MHz Crystal IN or External Clock Input. 22 XOUT XOUT Output N/A 24-MHz Crystal OUT. (NC if external clock is used) 46 RESET# RESET# Input N/A 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. 45 SELFPWR SELFPWR Input N/A Self Power. Indicator for bus or self powered. 0 is bus powered, 1 is self powered. VBUSPOWER VBUSPOWER Input N/A 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 SPI_CS Output O SPI Chip Select. Connect to CS pin of the EEPROM. 48 SPI_SCK SPI_SCK Output O SPI Clock. Connect to EEPROM SCK pin. 49 SPI_SD SPI_SD I/O/Z Z SPI Dataline Connect to GND with 15-KΩ resistor and to the Data I/O pin of the EEPROM. 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 #: 38-08037 Rev. *H Page 7 of 24 [+] Feedback CY7C656xx Table 3. Pin Assignments[3] (continued) Pin CY7C65630 Name CY7C65620 Name Type Default Description Upstream Port 17 D– D– I/O/Z Z Upstream D– Signal. 18 D+ D+ I/O/Z Z Upstream D+ Signal. DD–[1] I/O/Z Z Downstream D– Signal. Downstream Port 1 13 DD–[1] 14 DD+[1] DD+[1] I/O/Z Z Downstream D+ Signal. 36 AMBER#[1] AMBER#[1] Output 1 LED. Driver output for Amber LED. Port Indicator Support. Default is Active LOW. Polarity is controlled through EEPROM. 35 GREEN#[1] GREEN#[1] Output 1 LED. Driver output for Green LED. Port Indicator Support. Default is Active LOW. Polarity is controlled through EEPROM. 30 OVR#[1] OVR#[1] Input 1 Overcurrent Condition Detection Input. Default is Active LOW. Polarity is controlled through EEPROM. 29 PWR#[1] PWR#[1] O/Z Z Power Switch Driver Output. Default is Active LOW. Polarity is controlled through EEPROM. Downstream Port 2 9 DD–[2] DD–[2] I/O/Z Z Downstream D– Signal. 10 DD+[2] DD+[2] I/O/Z Z Downstream D+ Signal. 38 AMBER#[2] AMBER#[2] Output 1 LED. Driver output for Amber LED. Port Indicator Support. Default is Active LOW. Polarity is controlled through EEPROM. 37 GREEN#[2] GREEN#[2] Output 1 LED. Driver output for Green LED. Port Indicator Support. Default is Active LOW. Polarity is controlled through EEPROM. 32 OVR#[2] OVR#[2] Input 1 Overcurrent Condition Detection Input. Default is Active LOW. Polarity is controlled through EEPROM. 31 PWR#[2] PWR#[2] O/Z Z Power Switch Driver Output. Default is Active LOW. Polarity is controlled through EEPROM. NC I/O/Z Z Downstream D– Signal. Downstream Port 3 5 DD–[3] 6 DD+[3] NC I/O/Z Z Downstream D+ Signal. 42 AMBER#[3] NC Output 1 LED. Driver output for Amber LED. Port Indicator Support. Default is Active LOW. Polarity is controlled through EEPROM. 41 GREEN#[3] NC Output 1 LED. Driver output for Green LED. Port Indicator Support. Default is Active LOW. Polarity is controlled through EEPROM. 53 OVR#[3] Reserved Input 1 Overcurrent Condition Detection Input. Default is Active LOW. Polarity is controlled through EEPROM. Reserved. Pull to deasserted state with external resistor (CY7C65620 only) 54 PWR#[3] NC O/Z Z Power Switch Driver Output. Default is Active LOW. Polarity is controlled through EEPROM. Downstream Port 4 1 DD–[4] NC I/O/Z Z Downstream D– Signal. 2 DD+[4] NC I/O/Z Z Downstream D+ Signal. 44 AMBER#[4] NC Output 1 LED. Driver output for Amber LED. Port Indicator Support. Default is Active LOW. Polarity is controlled through EEPROM. 43 GREEN#[4] NC Output 1 LED. Driver output for Green LED. Port Indicator Support. Default is Active LOW. Polarity is controlled through EEPROM. Document #: 38-08037 Rev. *H Page 8 of 24 [+] Feedback CY7C656xx Table 3. Pin Assignments[3] (continued) Pin CY7C65630 Name CY7C65620 Name 51 OVR#[4] Reserved Input 1 Overcurrent Condition Detection Input. Default is Active LOW. Polarity is controlled through EEPROM. Reserved. Pull to deasserted state with external resistor (CY7C65620 only) 52 PWR#[4] NC O/Z Z Power Switch Driver Output. Default is Active LOW. Polarity is controlled through EEPROM. Type Default Description 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 CY7C656xx is based on the information found in the SPI EEPROM. The information in Byte Full-Speed High-Speed 0 0x12 0x12 1 0x01 0x01 2,3 0x0110 0x0200 4 0x09 5 0x00 6 7 the EEPROM overrides the default descriptor values. If no EEPROM is used, the CY7C656xx enumerates with the default descriptor values as shown below. 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. 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 0 0x09 0x09 Field Name 1 0x02[4]/0x07[5] 2 0x0019 4 0x01 0x01 bNumInterfaces 1 5 0x01 0x01 bConfigurationValue The configuration to use bLength 0x02[4]/0x07[5] bDescriptorType 0x0019 wTotalLength 6 0x00 0x00 iConfiguration 7 0xA0 0xE0 0xA0 0xE0 bmAttributes 8 0x28 0x57[4] bMaxPower Description 9 Bytes CONFIG_DESCRIPTOR Length of all other descriptors 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 #: 38-08037 Rev. *H Page 9 of 24 [+] Feedback CY7C656xx Interface Descriptor Byte Full-Speed High-Speed 0 0x09 0x09 bLength Field Name 9 Bytes Description 1 0x04 0x04 bDescriptorType INTERFACE_DESCRIPTOR 2 0x00 0x00 bInterfaceNumber 3 0x00 0x00 bAlternateSetting 4 0x01 0x01 bNumEndpoints 5 0x09 0x09 bInterfaceClass 6 0x00 0x00 bInterfaceSubClass 7 0x00 0x00 bInterfaceProtocol 8 0x00 0x00 iInterface Endpoint Descriptor Byte Full-Speed High-Speed 0 0x07 0x07 1 0x05 2 0x81 Field Name Description bLength 7 Bytes 0x05 bDescriptorType ENDPOINT_DESCRIPTOR 0x81 bEndpointAddress IN Endpoint #1 bmAttributes Interrupt wMaxPacketSize Maximum Packet Size bInterval Polling Rate 3 0x03 0x03 4,5 0x0001 0x0001 6 0xFF 0x0C Device Qualifier Descriptor Byte Full-Speed High-Speed 0 0x0A 0x0A bLength 10 Bytes bDescriptorType DEVICE_QUALIFIER 1 0x06 0x06 2,3 0x0200 0x0200 Field Name Description bcdUSB 4 0x09 0x09 bDeviceClass 5 0x00 0x00 bDeviceSubClass 6 0x01 0x00 bDeviceProtocol 7 0x40 0x40 bMaxPacketSize0 8 0x01 0x01 bNumConfigurations 9 0x00 0x00 bReserved Hub Descriptor Byte All Speed 0 0x09 1 0x29 2 0x04[6] 0x02 Field Name Description bLength 9 Bytes bDescriptorType HUB Descriptor bNbrPorts Number of ports supported, CY7C65630. Number of ports supported, CY7C65620. Note 6. This value is configured through the External EEPROM. Document #: 38-08037 Rev. *H Page 10 of 24 [+] Feedback CY7C656xx Byte All Speed 3,4 0x0089[6] 5 Field Name Description 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 over-current 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 the Functional Overview Section and the Supported USB Requests Section. (Default in CY7C656xx). b15,. b8: Reserved 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 Configuration Options Systems using CY7C656xx 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 in order 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 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 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. Once the EEPROM is programmed a power cycle configures the chip as a hub class device. Document #: 38-08037 Rev. *H 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) Page 11 of 24 [+] Feedback CY7C656xx 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 Byte 0: 0xD2 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 4. 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 Document #: 38-08037 Rev. *H 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. 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 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’. Page 12 of 24 [+] Feedback CY7C656xx 0xD4 Load Byte 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 a =24+2N b =a+2N c =b+2N d =c+2N e =d+2N f =e+2N Byte 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 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 iProduct iSerialNumber iConfiguration(FS) iConfiguration(HS) iInterface(0) Document #: 38-08037 Rev. *H Factory Fusable X X X X Value (MSB->LSB) Factory Fusable g reserved =f+2N h=g+2N Strings N:NumLangs Byte 0: 0xD4 Needs to be programmed with 0xD4 Byte 1: VID (LSB) X 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 Most Significant Byte of Product ID Byte 5: Reserved X Reserved. Byte 6: DID (MSB) Most Significant Byte of Device ID Byte 7: EnabledOvercurrentTimer[3:0], DisabledOvercurrentTimer[3:0] X 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 4. Default: 8 ms = 0x88. Byte 8: MaximumPower (Full-Speed) X 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. X 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. Page 13 of 24 [+] Feedback CY7C656xx 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-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 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 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. 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. Bit Name Description 7 reserved Bit 3: Reserved. Set this bit to ‘0’. 6 reserved 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’. 5 iInterface (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 iConfiguration (full-speed) The iConfiguration string index reported in the configuration descriptor, when operating at full-speed. Bit 6: GreenPolarity. Indicates the polarity of the green indicator control. (1 = high, 0 = low) 2 iSerialNumber The iSerialNumber string index reported in the device descriptor. 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. 1 iProduct The iProduct string index reported in the device descriptor. 0 iManufacturer The iManufacturer string index reported in the device descriptor. 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) Document #: 38-08037 Rev. *H Page 14 of 24 [+] Feedback CY7C656xx Langs entries (2 * NumLangs bytes). The address b = a + 2 * NumLangs. 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 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 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. 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 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 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 Array of addresses for the iProduct strings. Each address is two bytes long, stored LSB first. The array has Num- Strings addressed by the string pointers. Strings must comply with the USB specification. The first byte must be the Supported USB Requests Device Class Commands Table 4. 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[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 Note 7. Only one configuration is supported in CY7C656xx. Document #: 38-08037 Rev. *H Page 15 of 24 [+] Feedback CY7C656xx Table 4. Device Class Requests (continued) Request bmRequestType bRequest SetInterface wValue wIndex Alternate Setting Interface Number wLength 0x0000 Data 00000001B 0x0B 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 Hub Class Commands Table 5. 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[9] 1,2, 3, 4 or 5 Byte 1: Port None 0x0000 Notes 8. Feature selector values for different feature is presented in Table 6 on page 17. 9. Selector values for different features are presented in Table 7 on page 17. Document #: 38-08037 Rev. *H Page 16 of 24 [+] Feedback CY7C656xx Table 5. Hub Class Requests (continued) Request bmRequestType bRequest wValue wIndex wLength Data SetPortFeature 00100011B 0x03 Byte 0: 0x0000 Feature Selectors[10] Selector[8] 22 (PORT_INDICATOR) 0, 1, 2, or 3 Byte 1: Port 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 11000000B 0x02 0x00 0x00 Data None Vendor Commands Read EEPROM Length 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. Test Mode Selector for Feature Selector PORT_TEST (0x21)[9] Table 6. Hub Class Feature Selector Feature Selector Recipient Value C_HUB_LOCAL_POWER Hub 0 Test_J 1 C_HUB_OVER_CURRENT Hub 1 Test_K 2 PORT_CONNECTION Port 0 Test_SE0_NAK 3 PORT_ENABLE Port 1 Test_Packet 4 PORT_SUSPEND Port 2 Test_Force_Enable 5 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 PORT_TEST Mode Description Selector Value Note 10. Selector values for different feature is presented in Table 8 on page 18. Document #: 38-08037 Rev. *H Page 17 of 24 [+] Feedback CY7C656xx Table 8. Port Indicator Selector for Feature Selector PORT_INDICATOR (0x22) Selector Value Port Indicator Mode Color Set Automatically as shown in Table 1 on page 4 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 10V 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 10V 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.3V GREEN#[x] AMBER#[x] Document #: 38-08037 Rev. *H 680Ω 680Ω Page 18 of 24 [+] 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] Document #: 38-08037 Rev. *H 680Ω XOUT 10K VCC1 VCC2 VCC3 VCC4 VCC5 VCC6 VCC7 VCC8 VCC9 VCC10 VCC11 AMBER#[2] 680Ω 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 19 of 24 [+] Feedback CY7C656xx Electrical Characteristics Absolute Maximum Ratings Operating Conditions Storage Temperature ................................ –65°C to +150 °C TA (Ambient Temperature Under Bias) Ambient Temperature with Power Applied: Commercial ........ 0°C to +70°C Commercial.................... 0°C to +70°C Automotive ..... –40°C to +85°C Automotive ................. –40°C to +85°C Supply Voltage............................................+3.15V to +3.45V Supply Voltage to Ground Potential .............. –0.5V to +4.0V Ground Voltage.................................................................. 0V DC Voltage Applied to Outputs in High Z State ...............................................................–0.5V to VCC + 0.5V FOSC (Oscillator or Crystal Frequency)...... 24 MHz ± 0.05% parallel resonant, fundamental mode, 12-pF load capacitance, 0.5 mW Power Dissipation (4 HS ports) .....................................0.9 W Static Discharge Voltage ...........................................> 2000V Max. Output Sink Current per I/O ................................10 mA DC Electrical Characteristics Parameter VCC Description Conditions Supply Voltage Min. Typ. Max. Unit 3.15 3.3 3.45 V 18 V/ms 5.25 V VCC RampUp Ramp rate on VCC VIH Input High Voltage VIL Input Low Voltage Il Input Leakage Current 0 < VIN < VCC VOH Output Voltage High IOUT = 4 mA VOL Output Low Voltage IOUT = –4 mA IOH IOL CIN Input Pin Capacitance ISUSP Suspend Current ICC 2 –0.5 0.8 V ±10 μA 2.4 V 0.4 V Output Current High 4 mA Output Current Low 4 mA 10 pF μA 80 Supply Current 4 Active ports 2 Active Ports No Active Ports 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 #: 38-08037 Rev. *H Page 20 of 24 [+] Feedback CY7C656xx Serial Peripheral Interface Parameter Description Conditions Min. Typ. Max. Unit Clock Rise/Fall Time 500 ns Clock Frequency 250 KHz Data Set-up 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 CY7C65630-56LFXA 56-pin QFN 4-Port Automotive AEC grade CY7C65620-56LFXC 56-pin QFN 2-Port CY4606 CY7C65630 USB 2.0 4-Port Hub Reference Design Kit CY4605 CY7C65620 USB 2.0 2-Port Hub Reference Design Kit Document #: 38-08037 Rev. *H Page 21 of 24 [+] Feedback CY7C656xx Package Diagram The CY7C656xx is available in a space saving 56-pin QFN (8 × 8 mm) Figure 6. 56-Lead QFN 8 x 8 MM LF56A (Subcon Punch Type with 6.1 x 6.1 EPAD) 3)$%6)%7 4/06)%7 "/44/-6)%7 ;= ;= ;= ! # ;=-!8 ;=-!8 ;= ;= ;= ;= ;=-!8 ;=2%& . ²² # 3%!4).'0,!.% ;= 62/'(5$%/( (;326(' 3$' ;= ;= ;= ;= ;= ;= ;= ;= ;= ;= $)! 0).)$ ;=2 . ;= ;= 8 ;= ;= 127(6 +$7&+$5($,662/'(5$%/((;326('0(7$/ 5()(5(1&(-('(&02 3$&.$*(:(,*+7J $//',0(16,216$5(,100>0,10$;@ 51-85144 *G Windows is a registered trademark of Microsoft Corporation. TetraHub and EZ-USB HX2LP are trademarks of Cypress Semiconductor Corporation. All product and company names mentioned in this document are trademarks of their respective holders. Document #: 38-08037 Rev. *H Page 22 of 24 © Cypress Semiconductor Corporation, 2006-2007. 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. [+] 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. Issue Date Orig. of Change Description of Change ** 131505 02/12/2004 JTC New Data Sheet *A 231329 See ECN KKU 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 See ECN ARI Added typical values for Icc in the DC Electrical Characteristics table, changed MPN CY7C65650 to CY7C65640B, added CY7C65620 package *C 330195 See ECN KKU 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 See ECN KKU 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 See ECN TEH 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 See ECN ARI 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 See ECN KKU 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. Document #: 38-08037 Rev. *H Page 23 of 24 [+] Feedback CY7C656xx Document Title: CY7C656xx EZ-USB HX2LP™ Low-Power USB 2.0 Hub Controller Family Document Number: 38-08037 REV. *H ECN NO. Issue Date 1019740 See ECN Document #: 38-08037 Rev. *H Orig. of Change Description of Change KKU/ARI 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” RemovablePorts updated to reflect logical ports. Edited for active voice. Page 24 of 24 [+] Feedback