USB has been with us since 1998 or so, and has totally changed the way we do computers. It has made it possible to just plug something into your PC, game console or mobile device, and that thing just works right away with no major install needed. And while I’m no engineer, the good folks at the USB Implementers Forum have been sending over more and more info on the evolution of this pivotal connectivity standard, which I will here try to convey.
Most of you probably know that USB 3.0 is now the de facto USB standard, increasingly replacing USB 2.0. Officially, the USB IF refers to USB 2.0 as Hi-Speed USB (around 500MB/s), while USB 3.0 is SuperSpeed USB (around 5GB/s, or ten times faster). However, these are overall standards, or specifications, and involve more science and engineering than yours truly could ever hope to fathom.
But the thing is, each USB standard also has protocols inside, which determine the way it interacts with devices. If the protocol isn’t up to current speed standards, you’re not getting the full benefit of the latest USB tech.
So which protocol have we been using?
Well, it seems that since USB 1.1 or around 1999, we’ve all been on what is called Bulk-Only Transport, or BOT. This protocol was designed to talk to devices of over a decade ago, when a CD-ROM was still relevant and DVD was just coming into play. These devices didn’t really need much bandwidth, so the BOT protocol only handles one command at a time to save power and reduce latency. It wasn’t designed to carry tonnes of data, so there was no need for the protocol to query each device multiple times.
When USB 2.0 was finalised in 2000, BOT remained king of the protocols and nobody thought it urgent to replace it, because devices didn’t change much in the intervening couple of years. Finally, in 2008 the specs for USB 3.0 came about, and this was well into the broadband/high speed era, so it became clear a new protocol was needed.
To sum up, while very efficient and resource-friendly, BOT can only process one command at a time, so devices have to start the negotiation process all over whenever they need to move data. There’s no queuing, and no task management of multiple commands. BOT isn’t a smart standard, it doesn’t prioritise or determine which command is more important for PC performance.
With the round trip for commands in BOT taking so long, there’s no way the protocol could make the most of USB 3.0 specifications. This is why the USB IF decided to create a new protocol.
Enter UASP
USB Attached SCSI Protocol, or UASP, literally addresses each of the shortcomings listed above. It opens up the throttle and offers much better use of USB 3.0 bandwidth, because finally devices and commands can be queued. It also has command and task management, so potentially applications, devices and operating systems could use it to prioritise commands for better performance. The so called round trip for each command is greatly reduced, thanks to a four data pipe design that accommodates command, status, data in, and data out all at once. Additional channels can be integrated by specific vendors if so needed.
USB 3.0 Boost
Because of this more open-ended protocol, ASUS has been able to develop the USB 3.0 Boost utility, which automatically detects the best protocol for each device, and has multiple modes to accelerate USB performance. There’s normal mode, which I suppose just leaves things as they are, turbo mode which uses emulation algorithms to boost BOT-protocol devices, and of course UASP mode to accommodate the new protocol. Do note device drivers need to be able to talk to your PC in UASP for true compatibility, and applications like USB 3.0 Boost can help with that. To some extent they can emulate the driver should the native one lack compatibility.
USB 3.0 Boost will be bundled with several upcoming ASUS motherboards.
All USB logos used copyright USB-IF
Related Articles
-
http://twitter.com/cloudsmesh Vishal