USB Attached SCSI (UAS) or USB Attached SCSI Protocol (UASP) is a
computer protocol used to move data to and from
USB
Universal Serial Bus (USB) is an industry standard, developed by USB Implementers Forum (USB-IF), for digital data transmission and power delivery between many types of electronics. It specifies the architecture, in particular the physical ...
storage devices such as
hard drive
A hard disk drive (HDD), hard disk, hard drive, or fixed disk is an electro-mechanical data storage device that stores and retrieves digital data using magnetic storage with one or more rigid rapidly rotating hard disk drive platter, pla ...
s (HDDs),
solid-state drive
A solid-state drive (SSD) is a type of solid-state storage device that uses integrated circuits to store data persistently. It is sometimes called semiconductor storage device, solid-state device, or solid-state disk.
SSDs rely on non- ...
s (SSDs), and
thumb drives. UAS depends on the USB protocol, and uses the standard
SCSI
Small Computer System Interface (SCSI, ) is a set of standards for physically connecting and transferring data between computers and peripheral devices, best known for its use with storage devices such as hard disk drives. SCSI was introduced ...
command set. Use of UAS generally provides faster transfers compared to the older
USB Mass Storage Bulk-Only Transport (BOT) drivers.
UAS was introduced as part of the
USB 3.0 standard, but can also be used with devices complying with the slower USB 2.0 standard, assuming use of compatible hardware, firmware and drivers. UAS was developed to address the shortcomings of the original USB Mass Storage Bulk-Only Transport protocol, i.e., an inability to perform command queueing or out-of-order command completions. To support these features, the Bulk Streaming Protocol was added to the
USB3 specification, and Streams support was added to the USB host controller interface (
Extensible Host Controller Interface
The eXtensible Host Controller Interface (xHCI) is a technical specification that provides a detailed framework for the functioning of a computer's host controller for Universal Serial Bus (USB). Known alternately as the USB 3.0 host controller ...
).
Overview
UAS is defined across two standards, the T10 "USB Attached SCSI" (T10/2095-D) referred to as the "UAS" specification, and the USB "Universal Serial Bus Mass Storage ClassUSB Attached SCSI Protocol (UASP)" specification. The T10 technical committee of the
International Committee for Information Technology Standards
The InterNational Committee for Information Technology Standards (INCITS), (pronounced "insights"), is an ANSI-accredited standards development organization composed of Information technology developers. It was formerly known as the X3 and NCIT ...
(INCITS) develops and maintains the UAS specification; the
SCSI Trade Association (SCSITA) promotes the UAS technology. The
USB mass-storage device class (MSC) Working Group develops and maintains the UASP specification; the
USB Implementers Forum
USB Implementers Forum, Inc. (USB-IF) is a nonprofit organization created to promote and maintain USB (Universal Serial Bus), a set of specifications and transmission procedures for a type of cable connection that has since become used widely fo ...
, Inc. (USB-IF) promotes the UASP technology.
UAS drivers generally provide faster transfers when compared to the older USB Mass Storage Bulk-Only Transport (BOT) protocol drivers.
Although UAS was added in the
USB 3.0 standard, it can also be used at USB 2.0 speeds, assuming compatible hardware.
When used with an SSD, UAS is considerably faster than BOT for random reads and writes given the same USB transfer rate. The speed of a native
SATA 3 interface is 6.0 Gbit/s. When using a USB 3.0 link (5.0 Gbit/s), which is slower than a SATA3 link, the performance is limited by the USB link. However, later USB protocols have higher transfer rates, with USB4 allowing 80 Gbit/s. A UAS drive can be implemented using a SATA3 drive attached through a SATA–UAS bridge with the SATA transfer rate limiting throughput, however, a native UAS SSD can take full advantage of higher USB transfer rates.
The original UAS standard (ANSI INCITS 471-2010 and ISO/IEC 14776-251:2014) can be referred to as ''UAS-1''. A UAS-2 project was started by T10 but cancelled. That effort was resurrected as ''UAS-3'', which is now a published standard (INCITS 572-2021). Apart from being based on later versions of other SCSI standards (e.g. SAM-6 and SPC-6, both under development) the technical author described the changes between UAS-1 and UAS-3 as follows: "allow the device to switch data transfers from one command to another before the current command is complete".
Hardware support
USB controller/hub
In July 2010
SemiAccurate reported that
Gigabyte Technology
GIGA-BYTE Technology Co., Ltd. (commonly referred to as Gigabyte Technology or simply Gigabyte) is a Taiwanese manufacturer and distributor of computer hardware.
Gigabyte's principal business is motherboards, It shipped 4.8 million motherboards i ...
had introduced working UAS drivers for their hardware using
NEC
is a Japanese multinational information technology and electronics corporation, headquartered at the NEC Supertower in Minato, Tokyo, Japan. It provides IT and network solutions, including cloud computing, artificial intelligence (AI), Inte ...
/
Renesas chips.
A comparative performance review by VR-Zone in August 2011 concluded that only the NEC/Renesas chips had working UAS drivers. The same Renesas UAS driver (for Windows) also works with AMD's
A70M and A75 Fusion Controller Hubs, the USB part of which was co-developed by AMD and Renesas. In October 2011, ASMedia USB controllers chips had gained driver support as well (they had support on the hardware side before).
As for support by Intel
Platform Controller Hub (PCH), an article in MyCE notes: "The native Intel USB3 UASP solution is only supported under Windows 8. To further complicate matters, not all
Z77 motherboards support USB3 UASP. A license is required to implement UASP, and not all motherboard manufacturers are prepared to pass on the extra cost of this license to the end user."
A few
Allwinner Technology SoCs feature UAS support over USB 2.0 in Linux.
Storage devices
Of USB–SATA bridges, "the LucidPort USB300 and USB302,
Symwave SW6315,
Texas Instruments
Texas Instruments Incorporated (TI) is an American multinational semiconductor company headquartered in Dallas, Texas. It is one of the top 10 semiconductor companies worldwide based on sales volume. The company's focus is on developing analog ...
TUSB9261 and the
VLI VL700 controllers all support UASP, while the
ASMedia ASM1051 and ASM1051E as well as the Fujitsu MB86C30A doesn't."
Fujitsu lists some higher-end chips like the MB86C311A that do support UAS. ASMedia 1053-s and 1153 support UAS.
[
Silicon Motion's SM232x family of USB Flash Drive (UFD) controllers offers full USB 3.2 UAS performance, reaching data transfer speeds of up to 2 Gbyte/s.
]
Operating system support
Microsoft
Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
added native support for UAS to Windows 8
Windows 8 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on August 1, 2012, made available for download via Microsoft ...
. Drives supporting UAS load Uaspstor.sys instead of the older Usbstor.sys. Windows 8 supports UAS by default over USB 2.0 as well. UAS drivers and products are certified by Microsoft using the Windows Hardware Certification Kit.
Apple added native support for UAS to OS X 10.8 Mountain Lion; drives using UAS show up in System Information → Software → Extensions as IOUSBAttachedSCSI (or IOUSBMassStorageUASDriver, depending on the version of OS X) "Loaded: Yes". Drives listed with "Loaded: No" are defaulting to the older, slower Bulk Only Transport (BOT) mode. This may occur if the drive's USB controller, the Mac's USB port, or any attached USB hub doesn't support UASP mode.
The Linux kernel
The Linux kernel is a Free and open-source software, free and open source Unix-like kernel (operating system), kernel that is used in many computer systems worldwide. The kernel was created by Linus Torvalds in 1991 and was soon adopted as the k ...
has supported UAS since 8 June 2014 when the version 3.15 was released.
However, some distributions of Linux
Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
such as Ubuntu
Ubuntu ( ) is a Linux distribution based on Debian and composed primarily of free and open-source software. Developed by the British company Canonical (company), Canonical and a community of contributors under a Meritocracy, meritocratic gover ...
(from v11.xx onwards) have reported issues with some misbehaving hardware. The kernel has a built-in blocklist for devices with "quirks" defined in . Temporary additional quirks can be added via procfs or kernel command line ().
FreeBSD
FreeBSD is a free-software Unix-like operating system descended from the Berkeley Software Distribution (BSD). The first version was released in 1993 developed from 386BSD, one of the first fully functional and free Unix clones on affordable ...
does not support UAS as of August 2018.
On older operating systems that do not support UAS class, a UAS device may be run in USB Mass Storage Bulk-Only Transport mode for compatibility.
Goals
* Designed to directly address the failings of the USB mass-storage device class bulk-only transports (BOT)
** Enables command queuing and out-of-order completions for USB mass-storage devices
** Eliminates software overhead for SCSI
Small Computer System Interface (SCSI, ) is a set of standards for physically connecting and transferring data between computers and peripheral devices, best known for its use with storage devices such as hard disk drives. SCSI was introduced ...
command phases
** Enables TRIM (UNMAP in SCSI terminology) operation for SSDs[New API allows apps to send "TRIM and Unmap" hints to storage media]
* Up to 64K commands may be queued
* SCSI Architectural Model (SAM-4) compliant
* USB 3.0 SuperSpeed and USB 2.0 High-Speed versions defined
** USB 3.0 SuperSpeed – host controller (xHCI) hardware support, no software overhead for out-of-order commands
** USB 2.0 High-speed – enables command queuing in USB 2.0 drives
* Streams were added to the USB 3.0 SuperSpeed protocol for supporting UAS out-of-order completions
** USB 3.0 host controller (xHCI) provides hardware support for streams
See also
* SCSI / ATA Translation
References
External links
USB Attached SCSI3 (UAS-3)
USB Attached SCSI Protocol (UASP) v1.0 and Adopters Agreement
2009-06-24
* , 2013-03-04
(data on t10.org)
USB Attached SCSI Protocol (UASP)
(PDF)
{{USB
Attached SCSI
SCSI
Computer storage buses