AT43311 Features • • • • • • • • • Self-Powered Hub with Bus Power Controller Full Compliance with USB Spec Rev 1.0 Full Speed USB Host Interface Four Downstream Ports Downstream Support for Full Speed and Low Speed Transfer Rates Continual Monitoring of Port by System Host Individual Port Power Control USB Connection Status Indicators 6 MHz Oscillator with On-Chip PLL USB Hub Description The AT43311 is a fully compliant USB hub chip with 5 ports, one upstream port and four full/low-speed downstream ports. The AT43311 can be used as a stand alone or can provide a simple and quick method of adding USB ports to an existing device. As a repeater, the AT43311 provides upstream connectivity between the selected function and the host. Connectivity involves setting up and tearing down connections, handling bus faults, recovering from bus faults and detecting downstream device connections and disconnections. The AT43311 may also act as a hub controller managing the hub operations and recording the status of the hub, bus transactions, and downstream ports. In this mode, the AT43311 tracks and generates the bus enumeration, provides configuration information to the host, provides individual port status to the host, and controls the port operation based on host commands. AT43311 Preliminary Pin Configurations SOIC/DIP/Cerdip PWR2 PWR3 PWR4 VCC5 VSS OSC1 OSC2 LFT VCCA OVL4 OVL3 OVL2 OVL1 VREF GND STAT4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 PWR1 DP4 DM4 DP3 DM3 GND DP2 DM2 VCC3 DP1 XDM1 DP0 DM0 STAT1 STAT2 STAT3 0738A-A 1 LFT OSC1 OSC2 DP0 DM0 Block Diagram VCC5 TIMING AND CONTROL PORT 0 HUB CONTROLLER VCC3 HUB REPEATER Serial Interface Engine VCCA VREF Endpoint 0 GND PORT 1 Note: 2 1. DM4 DP4 OVL4 PORT 4 STAT4 PWR4 DM3 DP3 OVL3 PORT 3 STAT3 PWR3 DM2 DP2 PORT 2 OVL2 DM1 DP1 OVL1 STAT1 PWR1 Overcurrent Protection/ Reporting STAT2 PWR2 Endpoint 1 This document assumes that the reader is familiar with the Universal Serial Bus and therefore only describes the unique features of the AT43311 chip. For detailed information about the USB and its operation, the reader should refer to the Universal Serial Bus Specification Version 1.0, January 19, 1996. AT43311 AT43311 Pin Description Pin Description Pin Type Description OSC1 I Oscillator Input. Input to the inverting 6 MHz oscillator amplifier. OSC2 O Oscillator Output. Output of the inverting oscillator amplifier. LFT I VREF I Reference Voltage. This is an input pin that should be connected to an external voltage source. VREF is used internally as the reference voltage by the overload protection circuit to decide whether there is a problem with a port’s power supply. DP0 B Upstream Plus USB I/O. This pin should be connected to VCC3 through an external 1.5K Ω pullup resistor. DP0 and DM0 form the full speed differential signal pin pairs connected to the Host Controller or an upstream Hub. DM0 B Upstream Minus USB I/O DP[1:4] B Port Plus USB I/O. These pins should be connected to VSS through external 1.5K Ω resistors. DP[1:4] and DM[1:4] are the differential signal pin pairs to connect downstream USB devices. DM[1:4] B OVL[1:4] I Port Overload. These are the input signals used to indicate to the AT43311 that there is a power supply problem with the port. If OVL is asserted, the AT43311 will assert the corresponding PWR[1:4] pin and report the status to the USB Host. PWR[1:4] OD Power Switch. These are the output signals used to enable or disable the external voltage regulator supplying power to the port. PWR[1:4] is de-asserted when a power supply problem is detected at OVL[1:4]. For proper operation of PWR[1:4], an external pull-up resistor of 10K Ω to VCC5 is required. STAT[1:4] O Connect Status. These are output pins indicating that a port is properly connected. STAT[1:4] is asserted when the port is enabled. VCC3 V 3.3V Power Supply, used for the USB interface VCC5 V 5V Power Supply, main power supply for the AT43311 VCCA V 5V Analog Power Supply GND V Ground PLL Filter. For proper operation of the PLL, this pin should be connected through a 100 Ω resistor and 10 nF capacitor to ground (VSS) in parallel with a 2.2 nF capacitor (see Figure 1–Power Supply Connection). Port Minus USB I/O. These pins should be connected to VSS through external 15K Ω resistors. DP[1:4] and DM[1:4] are the differential signal pin pairs to connect downstream USB devices. 3 USB Hub Description The Hub Repeater implements a frame timer that is timed by the 12 MHz USB clock and is reset every time an SOF token is received from the Host. Hub Repeater The hub repeater is responsible for port connectivity setup and tear-down. The repeater also supports exception handling such as bus fault detection and recovery, and connect/disconnect detection. When a SOP token is detected on the upstream port, Port0, the AT43311 determines the speed of the transfer. A USB hub must not propagate a full speed transfer to a low speed port due to the possible misinterpretation of the data. The AT43311 will propagate the packet to all enabled downstream ports. Note: See USB Specification for further detail on bus states The AT43311 supports downstream data signaling at both 1.5 Mbps and 12 Mbps. Devices attached to the downstream ports are either full speed or low speed depending on which data line (DP or DM) is pulled high. If a port is enumerated as low speed, the output buffers operate at a slew rate between 75 ns and 300 ns. The AT43311 will not propagate any traffic to that port unless it is prefaced with a preamble PID. Low speed data following the preamble PID is propagated to both low and full speed devices. The AT43311 will enable low speed drivers within four fullspeed bit times of the last bit of a preamble PID, and will disable the drivers at the end of an EOP. The upstream traffic from any port to the host is propagated by Port0 using the full speed 4-20 ns slew rate drivers. All ports are independently driven and monitored on the DP and DM pins. The AT43311 detects or generates the ‘J’, ‘K’, and SE0 bus signaling states. Each hub port has single-ended and differential receivers on its DP and DM lines. The ports’ I/O buffers comply to the voltage levels and drive requirements as specified in the USB Specifications Revision 1.0. Hub Controller The hub controller manages and records the operations of the AT43311. During enumeration, the controller sends the host the configuration information. The controller also allows the host to retrieve the status of the downstream ports, and power the downstream ports. The controller applies power to the downstream ports on a per port basis. After configuration, the controller will enable the power to a downstream port upon a SetPortPower command by the host. The controller supports two endpoints and a Control Status register. Serial Interface Engine The Serial Interface Engine (SIE) converts data between the serialized USB format and usable data for the controller and repeater. To carry out these tasks, the SIE is able to detect or generate USB signaling. Once a valid operation is detected, the SIE translates the data depending on the operation. During a reception, the SIE will use the high speed clock supplied by the PLL to help synchronize and separate the synchronization information from the data. The data must be decoded before the SIE may supply the packet ID to the controller and repeater. The USB protocol uses Cyclical Redundancy Check (CRC), Non Return to Zero Invert (NRZI) data encoding and bit stuffing to improve the reliability of data transfers. The SIE must decode the NRZI and strip off the stuffed bit to determine the actual data. The CRC information will be used by the SIE to determine if a transmission error has occurred. If an error has occurred, the SIE will correct the data using CRC algorithms. Control Status Register Bit 0 1 4 Function Value Description 0 1 Set to 0 or 1 by a Set_Configuration Request Hub is not currently configured Hub is currently configured 0 1 Set to 0 or 1 by ClearFeature or SetFeature request Default value is 0 Hub is currently not enabled to request remote wakeup Hub is currently enables to request remote wakeup Hub configuration status Hub remote wakeup status 2 Endpoint0 STALL status 0 1 Endpoint0 is stalled Endpoint0 is stalled 3 Endpoint1 STALL status 0 1 Endpoint1 is not stalled Endpoint1 is stalled AT43311 AT43311 Endpoint0 Endpoint0 is the AT43311’s default endpoint used for enumeration of the Hub and exchange of configuration information and requests between the Host and the AT43311. Endpoint0 supports control transfers. Standard USB Device Requests and class-specific Hub Requests are supported through Endpoint0. The Hub Controller supports the following descriptors through Endpoint0 (Descriptors are described in detail in the Descriptors Section of this document): • Device Descriptor • Configuration Descriptor • Interface Descriptor • Endpoint Descriptor • Hub Descriptor Endpoint1 Endpoint1 is used by the Hub Controller to send status change information to the Host. Endpoint1 supports interrupt transfers. The Hub Controller samples the changes at the end of every frame at time marker EOF2 in preparation for a potential data transfer in the subsequent frame. The sampled information is stored as a byte in Status Change Register using a bitmap scheme. Each bit in the Status Change Register corresponds to one port as shown below. An IN Token packet from the Host to Endpoint1 indicates a request for port change status. If the Hub has not detected any change on the ports or any changes in the hub itself, then all bits in this register will be 0 and the Hub Controller will return a NAK to requests on Endpoint1. If a change in the port status exists, the Hub Controller will transfer the whole byte. The Hub Controller will continue to report a status change when polled until that particular change has been removed by a ClearPortFeature request from the Host. No status change will be reported by Endpoint1 until the AT43311 has been enumerated and configured by the Host through Endpoint0. Power Management The AT43311 is designed to be powered from the USB bus. As such, the power consumption for the AT43311 itself is less than 100 mA. However, downstream devices require separate power supplies. The AT43311 monitors and controls each power supply to the individual downstream devices. Careful design and selection of the power switch is required to meet the USB specification. The USB specifications requires that the voltage drop at the power switch be no more than 100 mV. USB requirements specify that a downstream device may use a maximum of 500 mA. These conditions are best met by using a MOSFET switch with an on resistance of 200 mΩ or less. As a sample power circuit, consider a P-channel enhancement mode MOSFET. The condition of the port’s power is monitored at the output side of the PMOS switch which is connected to the port’s OVL[1:4] pin. During an overcurrent condition, the MOSFET switch’s internal resistance causes the MOSFET’s output voltage to drop at the OVL[1:4] pin. If the MOSFET’s output voltage drops to less than the voltage at the VREF voltage reference pin, the AT43311 interprets this drop as an overcurrent condition. The AT43311 does internal filtering to make sure that spurious or switching transients are ignored. If an overcurrent condition exists, the AT43311 removes the power from that port by de-activating the port’s PWR[1:4] pin and reports the condition to the Host. Status Change Register Bit Function Value Meaning 0 Hub status change 0 1 No change in status Change in status detected 1 Port1 status change 0 1 No change in status Change in status detected 2 Port2 status change 0 1 No change in status Change in status detected 3 Port3 status change 0 1 No change in status Change in status detected 4 Port4 status change 0 1 No change in status Change in status detected Reserved 0 Default values 5-7 5 Figure 1. Power Supply Connection 3V REG. From upstream power regulator VCC5 GND VCC3 AT43311 5.5V VREF PWR OVL DP DM STAT To downstream device 5V POWER SUPPLY VCC5 VSS Figure 1 illustrates an example of the power supply connection for a AT43311 port. Careful consideration must be taken to avoid large ground current surges. There is the possibility that the upstream device and the self powered device will be sourced from different electrical power outlets which share no common ground. When designing the local power supply for the AT43311 or a self powered device, local 5V power must be isolated. This isolation can be achieved through a transformer or by proper design of the switching power supply. The GND of the Hub or device can then be safely connected to the upstream ports ground line for proper operation of the USB signals. Even though the devices in a USB network share a common ground (VSS), the two 5V supply voltages of the AT43311 based hub (the upstream’s bus power and the local power) must not be connected under any condition. Port [1:4] Power Control Each port has signals for port power management and for port status feedback (PWR[1:4], OVL[1:4], and STAT[1:4]). The AT43311 monitors and switches the power to each port individually. PWR[1:4] are open drain outputs that control the power to the downstream ports. The AT43311 asserts a low value to ports PWR[1:4] to turn on the power to the port. During 6 AT43311 power up, reset, and initialization of the Hub, PWR[1:4] is in-active. PWR[1:4] is asserted when the Host instructs the Hub to power the port through the SetPortPower = ON command. Additionally PWR[1:4] is de-asserted by the Hub when an overcurrent condition is detected at the port. For proper operation of PWR[1:4], an external pull-up resistor to VCC5 is required for PWR[1:4] pins. To control the power to the port, any switch with a low voltage drop with full power applied is acceptable. The AT43311 is designed for a simple, low cost P-channel MOSFET to use as the switch. To detect a port overload, the AT43311 compares OVL[1:4] to a common VREF defined by the designer. OVL[1:4] should be attached to the power supply of the respective downstream port. If OVL[1:4] drops below the reference voltage VREF for more than 1 ms, the AT43311 treats the drop in voltage as a fault condition on the port’s power supply. Upon this fault condition, the AT43311 sets the port’s PORT_OVER_CURRENT status bit and the port’s C_PORT_OVER_CURRENT bit. The AT43311 will additionally shut off the power to the port by de-activating the port’s PWR[1:4] signal. The STAT[1:4] pins are not required by the USB specification. STAT[1:4] provide feedback to the user whenever a device is properly connected to the port. An LED and series resistor connected to STAT[1:4] can be used to provide AT43311 visual feedback. The default state of STAT[1:4] is inactive. After a port is enabled AT43311 will assert the port’s STAT[1:4]. Oscillator and Phase-Locked-Loop To reduce EMI and power dissipation in the system, the AT43311 on-chip oscillator is designed to operate with a 6 MHz external crystal. An on-chip PLL generates the high frequency for the clock/data separator of the Serial Interface Engine. In the suspended state, the oscillator circuitry is turned off. A 6 MHz parallel resonance quartz crystal with a load capacitance of approximately 10 pF is recommended. If the crystal load capacitor is larger, external capacitors added to pins OSC1 and OSC2 are recommended. The values for these capacitors depends on the crystal and the layout of the board, but typically are 33 pF at OSC1 and 47 pF at OSC2. If the crystal used cannot tolerate the drive levels of the oscillator, a series resistor between OSC2 and the crystal pin may be used. Figure 2 shows how to properly connect the oscillator for the AT43311. Ceramic resonators are not recommended due to the frequency stability required by the USB specification (0.25%). If desired, the clock can be externally sourced. To clock externally, connect the clock source to the OSC1 pin, while leaving the OSC2 pin floating. The switching level at the OSC1 pin can be as low as 0.47V (see electrical specifications). A CMOS device is required to drive this pin to maintain good noise margins at the low switching level. For proper operation of the PLL, see Figure 1–Power Supply Connection. To provide the best operating condition for the AT43311, careful consideration of the power supply connections are recommended. Use short, low impedance connections to all power supply lines: VCC5, VCC3, VCCA, and VSS with 0.1 µF decoupling capacitors of high quality adjacent to the device pins. Descriptors Figure 2. Oscillator and PLL Connection The Hub Controller supports the following standard USB descriptors: Device, Configuration, Interface, and Endpoint Descriptors, as well as the class specific Hub Descriptor. All the required Standard Requests and Hub Class-Specific Requests are supported by the AT43311’s Hub Controller. 7 Device Descriptor The Device Descriptor provides general information about the AT43311 Hub. Offset 8 Field Description Size (bytes) Value 0 bLength Define size of descriptor = 18 bytes 1 12H 1 bDescriptorType Device descriptor type 1 01H 2 bcdUSB USB Spec. Release Number = Rev 1.0 2 00H 01H 4 bDeviceClass Class code = HUB_CLASSCODE = 09 1 09H 5 bDeviceSubClass Subclass code 1 00H 6 bDeviceProtocol Protocol code 1 00H 7 wMaxPacketSize0 Max. packet size for Endpoint0 = 8-bytes 1 08H 9 idVendor Vendor ID = Atmel Corporation 2 EBH 03H 10 idProduct Product ID = AT43311 2 11H 33H 12 bcdDevice Device release number Example: Rev A0 YY = 01 Rev B1 YY = 02 2 ZZH YYH ZZ = 00 ZZ = 01 14 iManufacturer Index of string descriptor describing manufacturer = not supported 1 00H 15 iProduct Index of string descriptor describing product = not supported 1 00H 16 iSerialNumber Index of string descriptor describing device’s serial no. = not supported 1 00H 17 bNumConfigurations Number of possible configurations = 1 1 01H AT43311 AT43311 Configuration Descriptor This Configuration Descriptor provides information about the AT43311’s configuration. Offset Field Description Size (bytes) Value 0 bLength Define size of this descriptor = 9 bytes 1 09H 1 bDescriptorType Descriptor type = Configuration 1 02H 2 wTotalLength 2 22H 00H 4 bNumInterface 1 01H 5 bConfigurationValue Argument value for this configuration to be used by Set Configuration command 1 01H 6 iConfiguration Index of string descriptor describing this configuration (not supported). 1 00H 7 bmAttributes Configuration characteristics = Bus and Self Powered with Remote Wakeup 1 E0H 8 MaxPower Maximum power consumption of USB device from bus = 100 mA 1 32H Total length of data returned for this configuration. Consists of the combined length of configuration, interface, endpoint and hub descriptors = 52 bytes Number of interfaces supported by this configuration. Interface Descriptor The Interface Descriptor provides information about the single interface which the AT43311 supports. Offset Field Description Size (bytes) Value 0 bLength Define size of this descriptor = 9 bytes. 1 09H 1 bDescriptorType Descriptor type = Interface 1 04H 2 bInterfaceNumber Number of interface = 1, index = 0 1 00H 3 bAlternateSetting Alternate setting value for the interface identified in the prior field = 0 1 00H 4 bNumEndpoints Number of endpoints used by this interface = 1 1 01H 5 bInterfaceClass Class code = HUB_CLASSCODE = 09 1 09H 6 bInterfaceSubClass Subclass code = 0 1 00H 7 bInterfaceProtocol Protocol code = 0 1 00H 8 iInterface Index of string descriptor describing this interface = not supported 1 00H 9 Endpoint Descriptor (1) The Endpoint Descriptor describes the Endpoint1 Descriptor which the Hub uses for status change report. Offset Field Description Size (bytes) Value 0 bLength Define size of this descriptor = 7 bytes 1 07H 1 bDescriptorType Descriptor type = endpoint 1 05H 2 bEndpointAddress The address of the IN endpoint 1 81H 3 bmAttributes Endpoint1 attribute =IN, Interrupt Transfer 1 03H 4 wMaxPacketSize Max. packet size Endpoint1 is capable of sending = 1 byte 2 01H 00H 6 bInterval Interval for polling endpoint for data transfers 1 FFH Size (bytes) Value Note: 1. There is no endpoint descriptor for Endpoint0. Hub Descriptor The Hub Descriptor describes the AT43311’s Hub and ports. Offset 10 Field Definition 0 bDescLength Define size of this descriptor = 9 bytes 1 09H 1 bDesriptorType Descriptor Type = HUB_DESCRIPTOR = 29 1 29H 2 bNbrPorts Number of downstream ports = 4 1 04H 3 wHubCharacteristics Hub’s characteristics: = Individual power switching = Hub is not part of a compound device = Individual Port Over-current Protection 2 09H 00H 5 bPwrOn2PwrGood Time from the time power-on sequence begins on a port until power is good on that port = 100 ms. 1 32H 6 bHubContrCurrent Maximum current requirements of the hub electronics = 100 mA. 1 64H 7 DeviceRemovable Indicates if a port has removable device. All downstream ports have removable devices 1 00H 8 PortPwrCtrlMask Indicates if a port is not affected by gang-mode power control request. All the AT43311’s ports require manual SetPortFeature (PORT_POWER) request to control the port’s power state. 1 1EH AT43311 AT43311 Standard Requests Clear Endpoint Feature All required Standard Requests are supported by the AT43311. Standard Requests, or commands, are sent to the AT43311 from the Host on the AT43311’s default pipe, endpoint0. These requests are made using control transfers to endpoint0. The request and request parameters are sent in a Setup packet which consists of eight bytes. The following sections describe which requests are supported by the AT43311 and the corresponding responses as well as those requests not supported and responded with a STALL packet. The Clear Endpoint Feature request causes the AT43311 to clear an endpoint’s stall status bit if the condition causing the stall has been removed. A Clear Endpoint Feature occurs if a setup packet from the Host is decoded as: Clear Device Feature A Clear Device Feature will disable its remote wakeup feature when the setup packet is: Field Value bmRequestType Byte 0 x0000000B bRequest Byte 1 01H wValue Byte 2 Byte 3 01H 00H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 00H 00H Field Value bmRequestType Byte 0 x0000002B bRequest Byte 1 01H wValue Byte 2 Byte 3 00H 00H wIndex Byte 4 Byte 5 00H for EP0 81H for EP1 00H Byte 6 Byte 7 00H 00H wLength Get_Configuration Get_Configuration returns one byte of data. Bit 0 will be a copy of bit 0 of the Controller_Status Register. All other bits will be set to 0. This action will be taken, if the Setup packet from host is decoded as: Field Value bmRequestType Byte 0 10000000B Clear Interface Feature bRequest Byte 1 08H AT43311 does not support this feature and will respond with a STALL if a setup packet from the Host is decoded as: wValue Byte 2 Byte 3 00H 00H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 01H 00H Field Value bmRequestType Byte 0 x0000001B bRequest Byte 1 01H wValue Byte 2 Byte 3 xxH xxH wIndex Byte 4 Byte 5 xxH xxH wLength Byte 6 Byte 7 xxH xxH 11 Get_Descriptor Get_Interface Get_Descriptor returns the requested descriptor. The last word of the Get_Descriptor request specifies the number of bytes the AT43311 is to return. If the requested descriptor is longer than the requested number of bytes, AT43311 will return only the requested number of bytes from the top of the descriptor. If the requested descriptor is shorter than the requested number of bytes, then the AT43311 indicates the end of the control transfer by sending a short data packet. The requested number of bytes from the top of AT43311’s Device Descriptor will be returned, if the Setup packet from host is decoded as: The AT43311 has a single interface with a value of 0. If it receives a Get_Interface Request with the value of 0000H as wIndex (bytes 2 and 3), the AT43311 will return a single byte with a value of 00H. For any other value of wIndex the AT43311 will return a STALL. Field Value bmRequestType Byte 0 10000000B bRequest Byte 1 06H wValue Byte 2 Byte 3 00H 01H wIndex Byte 4 Byte 5 00H 00H Byte 6 Byte 7 # of bytes requested wLength The requested number of bytes from AT43311’s Configuration Descriptor, Interface Descriptor, and Endpoint Descriptor will be returned, if the Setup packet from the Host is decoded as: Field Value bmRequestType Byte 0 10000000B bRequest Byte 1 06H wValue Byte 2 Byte 3 00H 02H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 # of bytes requested 12 AT43311 Field Value bmRequestType Byte 0 10000001B bRequest Byte 1 0AH wValue Byte 2 Byte 3 00H 00H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 01H 00H Get Device Status If the Setup packet from host is decoded as: Field Value bmRequestType Byte 0 10000000B bRequest Byte 1 00H wValue Byte 2 Byte 3 00H 00H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 02H 00H The Hub will return two bytes of data, byte 0 and byte 1, in little endian order: Byte 0, Bit 0 = 1, identifying the AT43311 as a self powered device. Byte 0, Bit 1 = copy of bit 1 of the Controller_Status Register. This bit reflects whether the AT43311’s remote wakeup capability is enabled or disabled. All other bits are set to 0. AT43311 Get Interface Status Set_Address If the Setup packet from host is decoded as: Set_Address sets the Hub’s address. The AT43311 will save the value of bytes 2 and 3 into a temporary buffer. After successful completion of the status stage, the AT43311 transfers the temporary value into the Hub_Address Register. The Hub_Address will be used as the Hub’s address in all future transactions. Set_Address will occur if the Setup packet from the Host is decoded as: Field Value bmRequestType Byte 0 10000001B bRequest Byte 1 0x00 wValue Byte 2 Byte 3 0x00 0x00 wIndex Byte 4 Byte 5 0xxx 0xxx wLength Byte 6 Byte 7 0x02 0x00 The Hub will respond with two bytes of data with all 0 value. Field bmRequestType Byte 0 x0000000B bRequest Byte 1 05H wValue Byte 2 Byte 3 Device Address wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 00H 00H Get Endpoint Status Get Endpoint Status returns two-bytes of data indicating the stall status of the endpoint. The first bit of the first byte returned reflects the status of the endpoint stall status bits of the Controller_Status Register described in section 3.6. These bits are set or cleared depending whether the endpoint is stalled or not: Current Endpoint Status First Byte Second Byte Stalled 01H 00H Not stalled 00H 00H Get Endpoint Status will execute if the following setup packet is decoded as: Field Value bmRequestType Byte 0 10000010B bRequest Byte 1 00H wValue Byte 2 Byte 3 00H 00H wIndex Byte 4 Byte 5 x0000001B for EP0 10000001B for EP1 00H Byte 6 Byte 7 02H 00H wLength Value Set_Configuration Set_Configuration sets bit 0 of the Controller_Status Register according to the value of byte 2 of the Setup packet. The AT43311 has only one configuration. The AT43311 will only set the bit if byte 2 is either 00H or 01H, and bytes 3 to 7 are all zeroes. For all other values, the Hub will respond with a STALL handshake packet. Set_Configuration occurs if the Setup packet from host is decoded as: Field Value bmRequestType Byte 0 x0000000B bRequest Byte 1 09H wValue Byte 2 Byte 3 00H or 01H 00H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 00H 00H 13 Set_Descriptor Set Endpoint Feature The AT43311 does not support this request. In response to this request, the AT43311 will send a STALL handshake packet. The Set_Descriptor occurs if the Setup packet from the Host is decoded as: Set Endpoint Feature sets the stall status bit of the Controller_Status Register. The stalled endpoint will exhibit the same behavior as in a stall condition. This feature is activated if a setup packet from the Host is decoded as: Field Value Field Value bmRequestType Byte 0 x0000010B 07H bRequest Byte 1 03H Byte 2 Byte 3 xxH xxH wValue Byte 2 Byte 3 00H 00H wIndex Byte 4 Byte 5 xxH xxH wIndex Byte 4 wLength Byte 6 Byte 7 xxH xxH Byte 5 00H for EP0 81H for EP1 00H Byte 6 Byte 7 00H 00H bmRequestType Byte 0 00000000B bRequest Byte 1 wValue Set Device Feature Set Device Feature enables the remote wakeup feature if a setup packet from the Host is decoded as: Field Value wLength Set_Interface The AT43311 has a single interface and responds with a STALL handshake packet if a Set_Interface request is received with a value other than 0000H as a wValue (bytes 2 and 3). bmRequestType Byte 0 x0000000B bRequest Byte 1 03H Field wValue Byte 2 Byte 3 01H 00H bmRequestType Byte 0 x0000001B bRequest Byte 1 0BH wIndex Byte 4 Byte 5 00H 00H wValue Byte 2 Byte 3 00H 00H wLength Byte 6 Byte 7 00H 00H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 00H 00H Set Interface Feature AT43311 does not support this feature and will respond with a STALL if a setup packet from the Host is decoded as: Field Value bmRequestType Byte 0 x0000001B bRequest Byte 1 03H wValue Byte 2 Byte 3 xxH xxH wIndex Byte 4 Byte 5 xxH xxH wLength Byte 6 Byte 7 xxH xxH 14 AT43311 Value Sync_Frame This request is for endpoints with isochronous transfers only which the AT43311 does not support. AT43311 will send a STALL packet if the setup packet from the Host is decoded as: Field Value bmRequestType Byte 0 10000001B bRequest Byte 1 0CH wValue Byte 2 Byte 3 xxH xxH wIndex Byte 4 Byte 5 xxH xxH wLength Byte 6 Byte 7 xxH xxH AT43311 Hub-specific Requests Clear_Port_Feature All required Hub-specific requests are supported by the AT43311’s Hub Controller. Hub-specific requests or commands are sent from the Host to the AT43311 using the default pipe (Endpoint0). Hub-specific requests are made using control transfers. The request and request parameters are sent in a setup packet consisting of eight bytes. Clear_Port_Feature disables a port feature. Note that only the relevant Clear Port commands are supported (see CLEAR_PORT Features Table). For example, the PORT_LOW_SPEED value is determined by the operation of the port of the attached device. Upon an in va li d r eq ue s t ( e .g. a C LE AR _P O RT r equ es t fo r PORT_LOW_SPEED), the AT43311 will return a STALL status to the host. Clear_Hub_Feature Clear_Hub_Feature resets a value reported in the Hub Controller status. The status relates to the local power and over current. AT43311 is a self-powered hub with a buspowered SIE and does not report over-current on a global basis. The Hub Controller will disable the reporting of Local Power Status (C_HUB_LOCAL_POWER) if the setup packet from the Host is decoded as: Field Value bmRequestType Byte 0 x0100000B bRequest Byte 1 01BH wValue Byte 2 Byte 3 00H 00H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 00H 00H AT43311 will respond with a STALL if the setup packet from the Host requests the Hub Controller to clear the Over Current Indicator (C_HUB_OVER_CURRENT): Field CLEAR_PORT Features Table ClearPort Feature SetPort Feature PORT_CONNECTION N N PORT_ENABLE Y Y PORT_SUSPEND Y Y PORT_OVER_CURRENT Y N PORT_RESET N Y PORT_POWER Y Y PORT_LOW_SPEED N N Port Feature The Hub Controller will respond to a Clear Port Feature request if the setup packet from the Host is decoded as: Field bmRequestType Byte 0 x0100011B bRequest Byte 1 01H wValue Byte 2 Byte 3 See Port Feature Selector Table wIndex Byte 4 Byte 5 Port Number wLength Byte 6 Byte 7 00H 00H Value bmRequestType Byte 0 x0100000B bRequest Byte 1 01H wValue Byte 2 Byte 3 01H 00H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 00H 00H Value 15 Get_Hub_Descriptor Port Feature Selector Table Feature Get_Hub_Descriptor returns the Hub Descriptor. The last word of the Get_Hub_Descriptor request specifies the number of bytes AT43311 is to return. If the requested number of bytes is less than the 9-bytes length of the Hub Descriptor, AT43311 will return only the requested number of bytes from the top of the descriptor. If the requested number of bytes is more than 9, then the returned data will be padded with trailing bytes of zeroes. This action will be taken if the Setup packet from the Host is decoded as: Value PORT_CONNECTION 00H PORT_ENABLE 01H PORT_SUSPEND 02H PORT_OVER_CURRENT 03H PORT_RESET 04H PORT_POWER 08H PORT_LOW _SPEED 09H Field C_PORT_CONNECTION 10H bmRequestType Byte 0 10100000B C_PORT_ENABLE 11H bRequest Byte 1 06H C_PORT_SUSPEND 12H wValue Byte 2 Byte 3 29H 00H C_PORT_OVER_CURRENT 13H wIndex C_PORT_RESET 14H Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 Number of Bytes Requested The Hub Controller will respond with a STALL if Port0 or a port higher than Port4 is addressed in this request. Get_Bus_State When a Get_Bus_State is detected, the Hub Controller will sample the bus status of Ports 1, 2, 3 and 4, at each EOF2 and will store the value in a register known as the Port_Bus_State registers. The value of the D- signal (pin DM[1:4]) will be in bit 0 and the value of the D+ signal (DP[1:4]) will be in bit 1of each port’s Port_Bus_State register. All other bits will be 0. The values of these two register bits will be transferred to the Host upon receipt of the Get_Bus_State request, if the setup packet from Host is decoded as: Field Value bmRequestType Byte 0 10100011B bRequest Byte 1 02H wValue Byte 2 Byte 3 00H 00H wIndex Byte 4 Byte 5 Port Number wLength Byte 6 Byte 7 01H 00H The Hub Controller will respond with a STALL if Port0 or a port higher than Port4 is addressed in this request. 16 AT43311 Value AT43311 Get_Hub_Status Get_Hub_Status returns the current Hub status that has changed since the previous acknowledgment of the setup packet of the Host. The Hub will returned two words of data as described in the following two tables. Word0 is the Hub Status Field, wHubStatus, and Word1 is the Hub Change Field,wHubChange. Hub Status Field, wHubStatus Bit Description 0 Local Power Status, indicates the state of the local power supply 0 = Local power supply good 1 = Local power supply lost 1 Over-Current Indicator, indicates over-current condition on a global hub basis. AT43311 reports over current condition on a per port basis therefore this bit is always read as 0 2-15 Reserved. Always read as 0’s Hub Change Field, wHubChange Bit Description 0 Local Power Status Change, C_HUB_LOCAL_POWER, corresponds to bit 0 of wHubStatus 0 = No change has occurred in local power status 1 = Local power status has changed 1 Over-Current Indicator Change, C_HUB_OVER_CURRENT, corresponds to bit 1 of wHubStatus. AT43311 reports over current condition on a per port basis and therefore this bit is always read as 0 2-15 Reserved. Always read as 0’s. A Get_Hub_Status will occur if the setup packet is decoded as: Field Value bmRequestType Byte 0 10100000B bRequest Byte 1 00H wValue Byte 2 Byte 3 01H 00H wIndex Byte 4 Byte 5 00H 00H wLength Byte 6 Byte 7 04H 00H 17 Get_Port_Status Get_Port_Status returns the current port status and the states that have changed since the previous acknowledgment. The AT43311 returns two words of data as described in the following two tables. Word0 is the Port Status Field, and Word1 is the Port Change Field. The AT43311 will respond with a STALL if Port0 or a port higher than Port4 is addressed in this request. Port Status Field, wPortStatus Bit 0 Current Connect Status: PORT_CONNECTION 0 = no device present on this port 1 = a device is present on this port 1 Port Enabled/Disabled: PORT_ENABLE 0 = Port is disabled 1 = Port is enabled 2 Suspend: PORT_SUSPEND 0 = Not suspended 1 = Suspended 3 Over-Current Indicator: PORT_OVER_CURRENT 0 = Power operation normal for this port 1 = Over-current condition exists for this port. Power to this port has been shut off. 4 Reset: PORT_RESET 0 = Reset signalling not asserted 1 = Reset signalling asserted 5-7 Reserved. Always read as 0’s. 8 Port Power: PORT_POWER 0 = This port is powered OFF 1 = This port is powered ON 9 Low Speed Device Attached: PORT_LOW_SPEED 0 = Full Speed device attached to this port 1 = Low Speed device attached to this port 10-15 18 Description Reserved. Always read as 0’s AT43311 AT43311 Port Change Field, wPortChange Bit Description 0 Connect Status Change: C_PORT_CONNECTION 0 = No change has occurred on Current Connect status 1 = Current Connect Status has changed 1 Port Enable/Disable Change: C_PORT_ENABLE 0 = No change has occurred on Port Enabled/Disabled status 1 = Port Enabled/Disabled status has changed 2 Suspend Change: C_PORT_SUSPEND 0 = No change 1 = Resume complete 3 Over-Current Indicator Change: C_PORT_OVER_CURRENT 0 = No change has occurred on Over-Current indicator 1 = Over-Current indicator has changed 4 Reset Change: C_PORT_RESET 0 = No change 1 = Reset complete 5-15 Reserved. Always read as 0’s. Get_Port_Status occurs if the setup packet from host is decoded as: Field Value bmRequestType Byte 0 10100011B bRequest Byte 1 00BH wValue Byte 2 Byte 3 00H 00H wIndex Byte 4 Byte 5 Port Number wLength Byte 6 Byte 7 04H 00H Set_Hub_Feature Set_Hub_Feature sets a value reported in the Hub status. The status relates to the local power and over current. The AT43311 is a self powered hub with its SIE powered from the bus. The AT43311 will respond with a STALL if the setup packet from the Host is decoded as: Field bmRequestType Byte 0 x0100000B bRequest Byte 1 03H wValue Byte 2 Byte 3 xxH xxH wIndex Byte 4 Byte 5 xxH xxH wLength Byte 6 Byte 7 xxH xxH Set_Hub_Descriptor The AT43311 has only one Hub Descriptor. Therefore the AT43311 does not support this request. It will respond with a STALL if the Setup packet from the Host is decoded as: Field Value Value bmRequestType Byte 0 00100000B bRequest Byte 1 07H wValue Byte 2 Byte 3 xxH xxH wIndex Byte 4 Byte 5 xxH xxH wLength Byte 6 Byte 7 xxH xxH 19 Set_Port_Feature Port Feature Selector Table Set_Port_Feature sets a value reported in the Hub Controller’s port status. The AT43311 supports all USB required features. Note that only the relevant Set Port commands are supported (see SET_PORT Features Table). For example, the PORT_LOW_SPEED value is determined by the operation of the port of the attached device. Upon an invalid request (e.g. a Set_PORT request for PORT_LOW_SPEED), the AT43311 will return a STALL status to the host. Feature SET_PORT Features Table ClearPort Feature SetPort Feature PORT_CONNECTION N N PORT_ENABLE Y Y PORT_SUSPEND Y Y PORT_OVER_CURRENT Y N PORT_RESET N Y PORT_POWER Y Y PORT_LOW_SPEED N N Port Feature The status relates to the port features as listed in the Port Feature Table. AT43311 will respond to Set Port Feature command if the setup packet from the Host is decoded as: Field Value bmRequestType Byte 0 x0100011B bRequest Byte 1 03H wValue Byte 2 Byte 3 See Port Feature Selector Table wIndex Byte 4 Byte 5 Port Number wLength Byte 6 Byte 7 00H 00H 20 AT43311 Value PORT_CONNECTION 00H PORT_ENABLE 01H PORT_SUSPEND 02H PORT_OVER_CURRENT 03H PORT_RESET 04H PORT_POWER 08H PORT_LOW _SPEED 09H C_PORT_CONNECTION 10H C_PORT_ENABLE 11H C_PORT_SUSPEND 12H C_PORT_OVER_CURRENT 13H C_PORT_RESET 14H AT43311 Absolute Maximum Ratings Operating Temperature .....................-55°C to +125°C *NOTICE: Storage Temperature ........................-65°C to +150°C Voltage on any pin with Respect to Ground ................................. -0.5V to 7.0V Maximum Operating Voltage ................................6.6V Stresses beyond those listed below may cause permanent damage to the device. This is a stress rating only and functional operation of the device at these or any other conditions beyond those indicated in the operational sections of this specification is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. DC Output Current ............................................16 mA DC Characteristics The values shown in this table are valid for TA = 0°C to 85°C, VCC5 = 4.4 to 5.25V, VCC3 = 3V ± 5%, unless otherwise noted. Power Supply Symbol Parameter VCC5,VCCA Condition Min Max Unit 5V Power Supply 4.40 5.25 V VCC3 3V Power Supply 3.15 3.45 V ICC5 5V Supply Current 100 mA ICC3 3V Supply Current 250 µA ICCS Suspended Device Current 250 µA USB Signals: DPx, DMx Symbol Parameter Condition Min Max Unit ILO Hi-Z Data Line Leakage 0V < VIN < 3.3V -10 +10 µA VDI Differential Input Sensitivity DPx and DMx 0.2 VCM Differential Common Mode Range 0.8 2.5 V VSE Single Ended Receiver Threshold 0.8 2.0 V VOL1 Static Output Low Voltage RL of 1.5K Ω to 3.6V 0.3 V VOH1 Static Output High Voltage RL of 15K Ω to GND 2.8 3.6 V Min Max Unit 0.5 V V PWR[1:4], STAT[1:4] Symbol Parameter Condition VOL1 Output Low Level, STAT[1:4] IOL = 8 mA VOH1 Output High Level, STAT[1:4] IOH = 8 mA VOL2 Output Low Level, PWR[1:4] IOL = 4 mA 0.5 V COUT Output capacitance 1 MHz 10 pF VCC5 - 0.5V V 21 Oscillator Signals: OSC1, OSC2 (1) Symbol Parameter Condition Min Max Unit fOSC Oscillator Frequency 6 MHz ± 0.25% 5.985 6.015 MHz VLH OSC1 switching level 0.47 1.20 V VHL OSC1 switching level 0.67 1.44 V CX1 Input capacitance, OSC1 9 pF CX2 Output capacitance, OSC2 9 pF C1/2 OSC1/2 capacitance 1 pF tSU Start-up time 6 MHz, fundamental 10 ms DL Drive level VCC5 = 5V, 6 MHz crystal, 120 Ω equiv series resistor 5 mW Min Max Unit +20 mV Note: 1. OSC2 must not be used to drive other circuitry. Comparator Signals: VREF, OVL[1:4] Symbol Parameter Condition VOS Input Offset voltage -20 AO Open loop gain 80 CMIRL Input CM range low CMIRH Input CM range high CMRR CM rejection ratio CINR Input capacitance, VREF# 10 pF CINL Input capacitance, all other 6 pF dB 0 1 KHz V VCC5 V 92 dB AC Characteristics Dpx, Dmx Driver Characteristics, Full Speed Operation Symbol Parameter Condition Min Max Unit TR Rise time CL = 50 pF 4 20 ns TF Fall time CL = 50 pF 4 20 ns TRFM TR/TF matching 90 110 % VCRS Output signal crossover 1.3 2.0 V ZDRV Driver output resistance 28 43 Ω 22 AT43311 Steady state drive AT43311 Dpx, Dmx Data Source Timings, Full Speed Operation Symbol Parameter Condition Min Max Unit TDRATE Full Speed Data Rate Average Bit Rate 11.97 12.03 Mbs TFRAME Frame Interval 0.9995 1.0005 ms TDJ1 TDJ2 Source Diff Driver Jitter To Next Transition For Paired Transitions -3.5 -4.0 3.5 4.0 ns ns TEOPT Source EOP Width 160 175 ns TDEOP Differential to EOP Transition Skew -2 5 TJR1 TJR2 Recvr Data Jitter Tolerance To Next Transition For Paired Transitions -18.5 -9 18.5 9 TEOPR1 TEOPR2 EOP Width at Receiver Must Reject as EOP Must Receive as EOP 40 82 ns ns ns ns ns DPx, DMx Driver Characteristics, Low Speed Operation Symbol Parameter Condition Min TR Rise time CL = 50 pF 75 TR Rise time CL = 350 pF TF Fall time CL = 50 pF TF Fall time CL = 350 pF TRFM TR/TF matching VCRS Output signal crossover Max Unit ns 300 75 ns ns 300 ns 80 120 % 1.3 2.0 V Min Max Unit 70 40 ns ns Dpx, Dmx Hub Timings, High Speed Operation Symbol Parameter Condition THDD1 THDD2 Hub Differential Data Delay with cable without cable THDJ1 THDJ2 Hub Diff Driver Jitter To Next Transition For Paired Transitions -3 -1 3 1 ns ns TSOP Data Bit Width Distortion after SOP -5 3 ns TEOPD Hub EOP Delay Relative to THDD 0 15 ns THESK Hub EOP Output Width Skew -15 15 ns 23 Dpx, Dmx Hub Timings, Low Speed Operation Symbol Parameter TLHDD Hub Differential Data Delay TLHDJ1 TLHDJ2 Downstr Hub Diff Driver Jitter To Next Transition For Paired Transitions TSOP Data Bit Width Distortion after SOP TLEOPD Hub EOP Delay Relative to THDD TLHESK Hub EOP Output Width Skew 24 AT43311 Condition Min Max Unit 300 ns -45 -15 45 15 ns ns -60 45 ns 0 200 ns -300 300 ns