USB2.0 Speed Identification--differentiate between low-speed-high-velocity-full speed

Source: Internet
Author: User

USB2.0 is backwards compatible with usb1.x, i.e. USB2.0 supports high speed, full speed, low speed USB devices

(High-speed,full-speed,low-speed), while usb1.x does not support high-speed devices.

So if the high-speed device is connected to the usb1.x hub, it can only work at full speed.

So the speed of recognition is very important, otherwise there is no way to communicate at the desired speed.

**************************************************************************************

Full speed and low speed distinction

According to specifications, full speed and low speed are well differentiated. Because there is a 1.5K pull-up resistor on the device side,

When power is on, the data line with the pull-up resistor is pulled high,

Detects whether the device is full-speed or low-speed based on the level state of d+ or D.

Full speed, fast recognition is relatively simple, but usb2.0,usb1.x only a pair of data lines,

There is no way to have a third state to express the high-speed equipment, so the identification of high-speed equipment is slightly complex.

**************************************************************************************

High-speed equipment is the identity of a full-speed device, that is, as with full-speed equipment, the fast device also has a 1.5K pull-up resistor on the d+ side.

USB2.0 's hub treats the device as a full-speed device and then carries out a series of handshake signals to identify the identities of the two parties.

On the one hand, the hub to detect whether the equipment is high speed or full speed, on the other hand equipment to detect the hub is USB2.0 or usb1.x,

If the hub is USB2.0, the device is also high speed on the high-speed mode, otherwise it can only work in full speed mode.

When the hub is connected to a device or power-up, it reports to the host that the host resets the newly inserted device by sending a set_port_feature request to the hub.

The device reset operation is to drive the data line to the reset SE0 (d+,d-are all low) and lasts at least 10MS.

After the high-speed device is reset, a 17.78MA-size current is continuously poured into D through the internal current source.

Since the 1.5K pull-up resistor at the d+ end is still not removed, at the hub end, the full speed/low speed driver forms a 45 ohm terminating resistor,

The two resistors are connected in parallel to form a 45 ohm impedance, so a 800ma (17.78*45) voltage can be seen at the hub end,

This is the chirp K signal. The duration of Chirp K is 1ms-7ms.

On the hub side, although the reset signal has been issued and has been driving the SE0, but Usb2.0 's high-speed receiver has been testing the CHIRP K signal,

If it is not detected, continue the reset operation until the reset is complete and then work at full speed.

If it is just a full-speed hub and does not support the fast device, then the hub will not ignore the chirp K signal and the device will not switch to high-speed mode.

In the case of a high speed hub, the hub must reply to a series of kjkjkj within 100US after the Chirp K signal is sent. Sequence

Indicates to the device that this is a usb2.0 hub, where the KJ sequence is continuous and uninterrupted, and each k or J duration is 40us--60us.

Back to the device side, the device detects 6 chirp signals sent by the hub (3 to KJ), and it must switch to high-speed mode within 500US.

Switching actions are:

1. Disconnect the 1.5K pull-up resistor

2. Connecting the high-speed terminal resistor (high-speed termination) on the d+/d-is actually a full-speed/low-speed differential driver.

3. Enter the default high-speed state

After the execution of 1, 22 steps, the USB signal line to see the phenomenon has changed:

The chirp of the hub was reduced to half the original, 400mv.

This is because the device side is mounted with a new terminating resistor, and the original terminating resistor is connected in parallel, resulting in a 22.5 ohm

17.78*22.5 is 400mv, the signal amplitude after high-speed equipment operation is 400mv instead of full speed/low speed 3.3V.

The high-speed equipment and usb2.0 shook hands, began to carry out 480Mbps communication.

**************************************************************************************

The connection detection of high-speed equipment was initially carried out in the full-speed signal environment.

A handshake signal is transmitted between the high-speed device and the high-speed hub to indicate whether the device is a high-speed device.

If the handshake signal fails, the default is the full-speed device.

When the device is connected to the hub hub or host, the full speed and high speed device has a 1.5kω pull-up resistor on the d+ line,

Since the pull-down resistor is 15kω,d+, it will be added to the DC level of approximately 90%,

When the hub detects a high level of d+, it is considered to be connected to the full-speed device.

At this point, the software sends a reset signal to the hub via the reset command,

Let the hub drive a SE0 signal (both d+ and D-are low) over 10ms.

The high-speed device detects the reset signal and sends a chirp K signal to the hub (1~7ms time).

The high-speed receiver of the hub is detected within 2.5 microseconds of the device issuing the chirp K sequence.

The response transmits an alternating chirp K and chirp J signal sequence.

The device detects these 6 linear FM pulse chirp sequences (3 alternating KJ signal pairs),

The hub sets the connection port into a high-speed enabled state and disconnects the pull-up resistor from the d+.

Enable the high-speed device terminal and set the high-speed device default state.

**************************************************************************************

Data Transmission

The data rate achieved was 480 MB/s.

This needs to is transmitted down cables which were originally specified for a A-Z MB/s transmission rate,

To achieve if the link is conveying high speed data, each end of d+ and each end of D-is

Terminated with a, resistance to ground.

Data is sent by steering a current of 17.78 MA (derived from the positive supply): 17.78*22.5 = 400mv

into either the d+ or the d-line. This results in a voltage of 400mV to the line being the Federal Reserve with current.

The differential state of the "detected" at the receiving end by a differential receiver.

This arrangement was able to reliably receive data sent at 480 MB/s.

In fact the resistors is provided by the full Speed/low speed driver,

At each end of the link, applying a single Ended Zero.

The Fs/ls driver is designed to provide as accurate a termination resistance as possible.

By switching off the "high" transceiver current source, the line conditions is as defined for full speed/low speed.

In addition to the differential receiver, there is also a ' transmission envelope detector ' and a ' differential envelope de Tector '.

The transmission envelope detector produces a ' squelch ' signal if there is less than 100uV between the data lines,

Which means that there is no data being received.

The differential envelope detector detects if the far end have been unplugged,

As the differential voltage would double to about $ mV if the far end terminating resistors is not present.

(Further down the page you'll see how this is used by the host to detect, the unplugging of a high speed device.)

Negotiating High speed

To maintain the required compatibility, a high speed device would always present itself

Initially as a full speed device (by a 1.5K pullup resistor on d+).


The negotiation takes place during the Reset, which is, as we remember,

The first thing a host must does to a device before attempting data communication.

The high speed detection handshake are initiated by the device.

The hub would respond to it, if it was high speed capable.

What the device does

The device leaves its d+ 1.5K pullup resistor connected,

And does not terminate the lines with a resistors as it would for high speed.

But it is drives high speed current (17.78mA) to the d-line for at least a millisecond.

Now, remember this hub is applying a reset condition to the lines,

So effectively are already terminated as for high speed data.

As only one end of the the link is terminated, the hub would see about A + MV on D.

This condition is called a k-chirp.

A Full/low speed Hub would pay no attention to this condition,

But a high speed hub would detect it using its differential receiver and the absence of a squelch signal.

If The hub does not respond and then the rest of the reset,

and subsequent data transmissions would take place as was normal for a full speed device.

Hub Response

If The hub is a high speed capable then it'll monitor the K-CHIRP from the device until it sees it completing.

It must, within 100US, send a series of k-j chirp pairs to the device.

This means it would inject 17.78 MA alternately into the D-and the d+ lines.

Each of the these chirps lasts around 50us, and there are no gaps, between them.

The device has a to-see at least 3 chirp pairs before assuming that's the hub is high speed capable.

Switching to High speed

At the device disconnects its 1.5K pullup resistor,

The applies the high speed terminations (using it full speed data driver in SE0 mode),

and is thus in a, and perform high speed data transmission and reception.

The hub would continue to send chirp pairs up until 100-500 us before the end of Reset,

and the device would monitor these chirps.

At the time of the device termination is applied,

The amplitude of the chirp signals, viewed on an oscilloscope would is seen to halve in amplitude from 800mV to 400mV.

USB2.0 Speed Identification--differentiate between low-speed-high-velocity-full speed

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.