U.S.B. speeds

Lennart Sorensen lsorense-1wCw9BSqJbv44Nm34jS7GywD8/FfD2ys at public.gmane.org
Wed Jun 16 19:23:07 UTC 2010


On Tue, Jun 15, 2010 at 08:30:16PM -0400, phiscock-g851W1bGYuGnS0EtXVNi6w at public.gmane.org wrote:
> Because of handshaking and protocol overhead, the effective transfer rate
> over USB is *much* less than the basic speed numbers would seem to
> indicate.
> It also depends on the type of transfer you are doing.
> 
> I don't know exact figures, but I do remember that USB 1.0 was in effect
> not all that much faster than a high baud rate serial connection, in the
> order of 100k bytes per second. (I'm going from memory...)

No, it easily outran a parallel port, so more like 800KB to 1000KB/sec.
There is overhead but it's not THAT high.  A serial port typically only
did 115200bps, so 115kbps.  A lot less than 12Mbps no matter how bad
the overhead is.

USB1 has a 1.5Mbit and a 12Mbit speed.  It also has different transfer
modes.  Some have more overhead than others.  Some are only for bulk
transfers, while others are for low latency.

USB2 added a 480Mbit speed to the other two.

USB3 adds a 4800Mbit speed on a seperate full duplex link.  The old link
is still USB2.

So the ratios are:
1:8:320:3200 (low speed:fullspeed:highspeed:superspeed)

USB1 and 2 is half duplex using a single differential link for all
transfers.  USB3 uses the same wires for USB1 and 2 conenctions, but has
two new differential pairs for transmit/receive full duplex at 4.8Gbps.
So USB1/2 connectors have 4 pins.  USB3 has 8 pins.  The new pins do
not interfere with old devices, so USB3 devices can plug into USB1
or 2 ports and work as long as the device supports USB1/2 (hopoefully
most will unless they want a very small market), and USB1/2 devices can
connect to USB3 ports.

-- 
Len Sorensen
--
The Toronto Linux Users Group.      Meetings: http://gtalug.org/
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://gtalug.org/wiki/Mailing_lists





More information about the Legacy mailing list