AN15454 Bus-Powered USB Hub Design Using EZ-USB HX2LP™/HX2VL Author: Prajith Cherakkoda Associated Project: No Associated Part Family: CY7C65620/30, CY7C65632/42 Software Version: N/A Related Application Notes: None If you have a question, or need help with this application note, contact the author at prji@cypress.com. With the arrival of the HX2LP/HX2VL families of hubs, you can design a hub for bus-powered operations. HX2LP consumes less than two unit loads for the core of the hub, which leaves three unit loads for downstream ports. This means that the hub can be configured to have two or three downstream ports and supply 100 mA per port. HX2VL consumes less than one unit loads for the core of the hub, which leaves four unit loads for downstream ports. This means that the hub can be configured to have two or three or four downstream ports and supply 100 mA per port. AN15454 guides the designer in using these families of hubs to create a bus-powered hub. Introduction Bus-Power Versus Self-Powered When designing a bus-powered hub, you should consider size, cost, and port configurations. These three items interact such that one cannot be considered independently of the others. The starting point should be the number of ports you want in the configuration. The HX2LP family in a bus-powered configuration can support at most three downstream ports and HX2VL family can support at most four downstream ports; some applications may choose to implement only two or three ports. These considerations affect the chip that should be used within the families. For a bus-powered hub the limiting factor is the amount of power available from the upstream port. In general, the upstream port has a 5-unit load. After considering the number of ports, you must determine the power source for the hub. A hub design can be made to be self-powered. For this, you must always have a power outlet. Because USB supplies bus power up to 500 mA (a 5-unit load), it is possible to run a hub from just this power source. The limitation of this is the downstream ports are only allowed to have 100 mA each. If the device you are trying to run requires more, it will not function under a bus-powered configuration. Because of this, it may be desirable to configure the hub to run in either bus or self-powered configuration. Note: In this application note, HX2LP will be used to refer both HX2LP and HX2VL except where noted. Power Bus-powered hubs draw all of their power for any internal functions and downstream-facing ports from the bus power on the hub's upstream port. Hubs that can limit their power consumptions to less than three unit loads are able to supply a single-unit load to two downstream ports. The HX2LP family of chips has several configuration options that help in controlling the power consumption of the hub design. If the power consumed by the chip is less, the design for the bus-powered application is better. These options are: The HX2LP family of hubs has description entries within an initialization EEPROM (of CY7C65620/30) and pin inputs to define the ability of the hub. The SELFPWR pin defines the mode in which the hub is functioning. If this pin is high, the hub defines in its descriptors a “self-powered” configuration. If this pin is low, the hub will define in its descriptors a “bus-powered” hub. The designer can either wire this input for a given configuration or attach a switch/logic control to allow the user to change the configuration of the hub. Figure 1 shows one such configuration. Downstream power configuration Indicators modulation (in CY7C65620/30) www.cypress.com Document No. 001-15454 Rev. *D 1 Bus-Powered USB Hub Design Using EZ-USB HX2LP™/HX2VL Figure 1. Sample Configuration In CY7C65620/30, along with this SELFPWR pin, there is a requirement of setting up the EEPROM load parameters such that they support the power configuration of the hub. In a 0xD4 load configuration, there are entries for the power consumption of the design (refer to the EZ-USB HX2LP™ Low Power USB 2.0 Hub Controller Family datasheet). These entries are: Maximum Power (FullSpeed) and Maximum Power (High-Speed). The values must be set to the worst-case values of a bus power configuration. The self-power hub draws its power not from the bus, but from the AC adapter attached to the hub. Therefore, the worst-case condition should be the buspowered mode. If the hub is to be capable of dynamically switching between bus-powered and self-powered (such as with the above circuit), an additional bit called Self Powerable in byte 18 should also be set. Downstream Power Configuration When configured as a bus-powered hub the downstream power will be limited to 100 mA; therefore, some devices (those consuming more than 1 unit load) do not function when the hub is configured for bus-powered configuration. When configured as self-powered, these ports receive a full 5-unit load (500 mA) of power. When the SELFPWR pin is changed from either self or bus-powered mode, the hub disables downstream devices and reports a configuration change to the host. The host then gets the new configuration from the hub and enumerates each device on the hub. This switching can be accomplished by either a switch that configures bus/self power, or logic circuits that detect the self power input and automatically set the SELFPWR pin to the proper condition (see Figure 1). www.cypress.com Indicator Modulation The CY7C65620/30 also has a mode to modulate the indicators with a square wave (50 percent duty cycle) signal. The result of doing this is to reduce the power consumption of the hub. The maximum amount of current required does not change in this configuration. What changes is the amount of average power required. This is useful when the hub is operating in a bus-powered configuration while on a battery-powered computer. This reduction in average power extends the operating time of the computer. This option is set through the 0xD4 EEPROM load option. It is found in byte 18 and is called Modulate Indicators. Setting this bit modulates the indicator’s control signal. Descriptors and EEPROM Settings The descriptors reported to the host computer can be altered through the use of an EEPROM or through the use of fuse ROMs. The hub allows the designer to configure necessary items such as the power consumption of the hub along with configuring the downstream ports. These options need to be set for each hub design to obtain compliance. The number of ports configured affects the power consumption of the hub, along with configuration LED modulation (in CY7C65620/30). Document No. 001-15454 Rev. *D 2 Bus-Powered USB Hub Design Using EZ-USB HX2LP™/HX2VL For lower volume designs, the cost-effective method of setting these values is through the configuration EEPROM. The bus used to communicate with the EEPROM is a SPI bus (CY7C65632/42 supports I2C EEPROM as well). If the design is a higher volume design, there are fuse-ROMs, which can be programmed by Cypress manufacturing to configure the hub with the designer's required configuration parameters. For these, contact your Cypress FAE through at http://www.cypress.com. About the Author Name: Prajith Cherakkoda Title: Applications Engineer Contact: prji@cypress.com Summary Currently, Cypress offers a family of high-speed hubs that can be configured in either single-transaction translator (TT) mode or the multiple-TT mode. These hubs support both bus and self-powered configurations. The designer needs to first derive the requirements for the environment. A hub with a single full-speed or low-speed port need not use a multi-TT configuration while a hub with multiple fullspeed devices transferring larger quantities of data has throughput benefits from using the multi-TT configuration. After the requirements are defined, you can easily configure these hubs for bus-powered use, and minimize the power consumption to support a lower power configuration. Contact Cypress technical support (www.cypress.com/support) for more information on this product. www.cypress.com Document No. 001-15454 Rev. *D 3 Bus-Powered USB Hub Design Using EZ-USB HX2LP™/HX2VL Document History Document Title: AN15454 – Bus-Powered USB Hub Design Using EZ-USB HX2LP™/HX2VL Document Number: 001-15454 Revision ECN Orig. of Change Submission Date Description of Change ** 3071630 AASI 10/26/2010 New application note. *A 3174854 AASI 02/16/2011 Updated sample configuration image to show a simpler implementation. Updated template. *B 3210564 LRDK 03/30/2011 Fixed typographical error. No content changes. *C 3228918 AASI 04/15/2011 Added information on HX2VL *D 4153589 PRJI 10/10/2013 Updated in new template. Completing Sunset Review. www.cypress.com Document No. 001-15454 Rev. *D 4 Bus-Powered USB Hub Design Using EZ-USB HX2LP™/HX2VL Worldwide Sales and Design Support Cypress maintains a worldwide network of offices, solution centers, manufacturer’s representatives, and distributors. To find the office closest to you, visit us at Cypress Locations. PSoC® Solutions Products Automotive cypress.com/go/automotive psoc.cypress.com/solutions Clocks & Buffers cypress.com/go/clocks PSoC 1 | PSoC 3 | PSoC 4 | PSoC 5LP Interface cypress.com/go/interface Lighting & Power Control cypress.com/go/powerpsoc cypress.com/go/plc Memory cypress.com/go/memory PSoC cypress.com/go/psoc Touch Sensing cypress.com/go/touch USB Controllers cypress.com/go/usb Wireless/RF cypress.com/go/wireless Cypress Developer Community Community | Forums | Blogs | Video | Training Technical Support cypress.com/go/support EZ-USB HX2LP is a trademark of Cypress Semiconductor Corp. All other trademarks or registered trademarks referenced herein are the property of their respective owners. Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone Fax Website : 408-943-2600 : 408-943-4730 : www.cypress.com © Cypress Semiconductor Corporation, 2010-2013. 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. This 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. www.cypress.com Document No. 001-15454 Rev. *D 5