ISO/IEC 14776-251:2014
(Main)Information technology - Small computer system interface (SCSI) - Part 251: USB attached SCSI (UAS)
Information technology - Small computer system interface (SCSI) - Part 251: USB attached SCSI (UAS)
ISO/IEC 14776-251:2014(E) describes a SCSI transport protocol for USB-2 and USB-3 with the following properties: a) mechanism to send commands associated with any SCSI standard to a USB device; b) complies with SCSI Architecture Model - 4 (e.g., autosense and command queuing) and c) other capabilities.
Technologies de l'information — Interface de petit système d'ordinateur (SCSI) — Partie 251: Titre manque
General Information
- Status
- Published
- Publication Date
- 16-Apr-2014
- Technical Committee
- ISO/IEC JTC 1/SC 25 - Interconnection of information technology equipment
- Current Stage
- 6060 - International Standard published
- Start Date
- 17-Apr-2014
- Due Date
- 09-May-2015
- Completion Date
- 09-May-2015
Relations
- Consolidated By
ISO 21487:2012/Amd 2:2015 - Small craft - Permanently installed petrol and diesel fuel tanks - Amendment 2 - Effective Date
- 06-Jun-2022
Overview
ISO/IEC 14776-251:2014 - commonly called USB Attached SCSI (UAS) - defines a SCSI transport protocol that operates over USB-2 and USB-3 links. The standard specifies how to deliver any SCSI command set to a USB device while conforming to the SCSI Architecture Model – 4 (SAM-4) behaviors such as autosense and command queuing. ISO/IEC 14776-251 describes the transport model, USB resource and descriptor requirements, information units (IUs), task management, and error handling for SCSI over USB.
Key Topics and Requirements
- Transport model and IUs: Specifies Information Units (e.g., COMMAND IU, RESPONSE IU, READ READY, WRITE READY, SENSE IU) and sequences for non‑data, data-in, data-out, bi‑directional and multi-command transfers.
- SCSI semantics: Ensures compliance with SCSI Architecture Model‑4 features such as autosense, tagged command queuing and expected SCSI command semantics.
- USB integration: Defines required USB class-specific requests, device/interface/configuration descriptors, and bulk endpoint behavior for UAS operation on USB‑2 and USB‑3.
- Task management: Describes task management IUs, task attributes, and procedures for executing and reporting task management functions.
- Error handling and recovery: Covers USB error reporting, mapping delivery results to SCSI sense data, I_T Nexus loss, resets, and target power‑loss considerations.
- Protocol services: Lists SCSI Application Layer transport protocol services (e.g., Send SCSI Command, Send Data‑In/Out, Command Complete) and their expected interactions.
Applications and Practical Value
- Enables high-performance storage devices (SSDs, HDD enclosures, NVMe-to-USB bridges) to expose SCSI command sets over USB with lower latency and improved parallelism compared to legacy USB mass-storage transports.
- Useful for device firmware developers, storage device vendors, USB controller and host-stack implementers, and OS kernel engineers implementing UAS drivers.
- Helps integrators and test engineers validate interoperability, command queuing behavior and error recovery between USB hosts and SCSI-capable USB devices.
- Supports deployment scenarios where standard SCSI features (autosense, tagged queuing) are required over commodity USB physical layers.
Who Would Use This Standard
- Firmware and hardware engineers designing USB storage devices or bridges
- Operating system and driver developers implementing UAS support
- Test labs and QA teams performing conformance and interoperability tests
- Product managers and architects evaluating storage transport options for USB-based products
Related Standards
- Other parts of the ISO/IEC 14776 SCSI family (SCSI architecture and command specifications)
- Relevant USB specifications (USB‑2.0, USB‑3.x) and USB class documentation (for device descriptors and endpoint usage)
Keywords: ISO/IEC 14776-251, USB Attached SCSI, UAS, SCSI over USB, SCSI Architecture Model‑4, USB‑2, USB‑3, command queuing, autosense, SCSI transport protocol.
Frequently Asked Questions
ISO/IEC 14776-251:2014 is a standard published by the International Organization for Standardization (ISO). Its full title is "Information technology - Small computer system interface (SCSI) - Part 251: USB attached SCSI (UAS)". This standard covers: ISO/IEC 14776-251:2014(E) describes a SCSI transport protocol for USB-2 and USB-3 with the following properties: a) mechanism to send commands associated with any SCSI standard to a USB device; b) complies with SCSI Architecture Model - 4 (e.g., autosense and command queuing) and c) other capabilities.
ISO/IEC 14776-251:2014(E) describes a SCSI transport protocol for USB-2 and USB-3 with the following properties: a) mechanism to send commands associated with any SCSI standard to a USB device; b) complies with SCSI Architecture Model - 4 (e.g., autosense and command queuing) and c) other capabilities.
ISO/IEC 14776-251:2014 is classified under the following ICS (International Classification for Standards) categories: 35.200 - Interface and interconnection equipment. The ICS classification helps identify the subject area and facilitates finding related standards.
ISO/IEC 14776-251:2014 has the following relationships with other standards: It is inter standard links to ISO 21487:2012/Amd 2:2015. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.
ISO/IEC 14776-251:2014 is available in PDF format for immediate download after purchase. The document can be added to your cart and obtained through the secure checkout process. Digital delivery ensures instant access to the complete standard document.
Standards Content (Sample)
ISO/IEC 14776-251
Edition 1.0 2014-04
INTERNATIONAL
STANDARD
colour
inside
Information technology – Small computer system interface (SCSI) –
Part 251: USB Attached SCSI (UAS)
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form
or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from
either IEC or IEC's member National Committee in the country of the requester. If you have any questions about
ISO/IEC copyright or have an enquiry about obtaining additional rights to this publication, please contact the address
below or your local IEC member National Committee for further information.
IEC Central Office Tel.: +41 22 919 02 11
3, rue de Varembé Fax: +41 22 919 03 00
CH-1211 Geneva 20 info@iec.ch
Switzerland www.iec.ch
About the IEC
The International Electrotechnical Commission (IEC) is the leading global organization that prepares and publishes
International Standards for all electrical, electronic and related technologies.
About IEC publications
The technical content of IEC publications is kept under constant review by the IEC. Please make sure that you have the
latest edition, a corrigenda or an amendment might have been published.
IEC Catalogue - webstore.iec.ch/catalogue Electropedia - www.electropedia.org
The stand-alone application for consulting the entire The world's leading online dictionary of electronic and
bibliographical information on IEC International Standards, electrical terms containing more than 30 000 terms and
Technical Specifications, Technical Reports and other definitions in English and French, with equivalent terms in 14
documents. Available for PC, Mac OS, Android Tablets and additional languages. Also known as the International
iPad. Electrotechnical Vocabulary (IEV) online.
IEC publications search - www.iec.ch/searchpub IEC Glossary - std.iec.ch/glossary
The advanced search enables to find IEC publications by a More than 55 000 electrotechnical terminology entries in
variety of criteria (reference number, text, technical English and French extracted from the Terms and Definitions
committee,…). It also gives information on projects, replaced clause of IEC publications issued since 2002. Some entries
and withdrawn publications. have been collected from earlier publications of IEC TC 37,
77, 86 and CISPR.
IEC Just Published - webstore.iec.ch/justpublished
Stay up to date on all new IEC publications. Just Published IEC Customer Service Centre - webstore.iec.ch/csc
details all new publications released. Available online and If you wish to give us your feedback on this publication or
also once a month by email. need further assistance, please contact the Customer Service
Centre: csc@iec.ch.
ISO/IEC 14776-251
Edition 1.0 2014-04
INTERNATIONAL
STANDARD
colour
inside
Information technology – Small computer system interface (SCSI) –
Part 251: USB Attached SCSI (UAS)
INTERNATIONAL
ELECTROTECHNICAL
COMMISSION
PRICE CODE
B
ICS 35.200 ISBN 978-2-8322-1507-4
– 2 – ISO/IEC 14776-251:2014 © ISO/IEC 2014
CONTENTS
FOREWORD. 6
INTRODUCTION . 8
SCSI standards family . 8
1 Scope .10
2 Normative references .10
3 Terms, definitions, symbols, abbreviations and conventions .10
3.1 Terms and definitions.10
3.2 Symbols and abbreviations .13
3.3 Keywords.13
3.4 Editorial conventions.14
3.5 Numeric and character conventions .15
3.5.1 Numeric conventions.15
3.5.2 Byte encoded character strings conventions.15
3.6 Sequence figure notation .16
3.7 Notation for procedures and functions.16
4 Model .17
4.1 Overview.17
4.2 Tag handling.18
4.3 Data transfers .18
4.4 UAS domain.19
4.5 Addressing.20
4.6 World wide name .20
4.7 Resets .20
4.8 I_T Nexus loss.21
4.9 Target power loss expected .21
4.10 USB error handling .21
5 USB.22
5.1 Overview.22
5.2 USB resource requirements .22
5.2.1 Overview.22
5.2.2 USB class specific requests .22
5.2.3 USB descriptors .22
6 Transport.27
6.1 Overview.27
6.2 IUs.27
6.2.1 Overview.27
6.2.2 COMMAND IU.28
6.2.3 READ READY IU .29
6.2.4 WRITE READY IU.29
6.2.5 SENSE IU .30
6.2.6 RESPONSE IU.30
6.2.7 TASK MANAGEMENT IU .31
6.3 Information unit sequences .33
6.3.1 Overview.33
6.3.2 Non-data command/sense sequence.34
6.3.3 Non-data command/response sequence .35
6.3.4 Data-out command sequence.36
6.3.5 Data-in command sequence.37
6.3.6 Task management function sequence .37
6.3.7 Bi-directional command sequence.38
6.3.8 Multiple command example .38
6.4 Transport requirements.41
7 SCSI Application Layer transport protocol services.42
7.1 SCSI transport protocol services overview .42
7.2 Send SCSI Command transport protocol service .43
7.3 SCSI Command Received transport protocol service .44
7.4 Send Command Complete transport protocol service.44
7.5 Command Complete Received transport protocol service .45
7.6 Send Data-In transport protocol service .46
7.7 Data-In Delivered transport protocol service .46
7.8 Receive Data-Out transport protocol service.46
7.9 Data-Out Received transport protocol service.47
7.10 Terminate Data Transfer transport protocol service.47
7.11 Data Transfer Terminated transport protocol service.48
7.12 Send Task Management Request transport protocol service.48
7.13 Task Management Request Received transport protocol service .49
7.14 Task Management Function Executed transport protocol service .49
7.15 Received Task Management Function Executed transport protocol service .51
7.16 USB Acknowledgement.52
8 Device server error handling.53
– 4 – ISO/IEC 14776-251:2014 © ISO/IEC 2014
Figure 1 – SCSI document structure.8
Figure 2 – Example Sequence figure .16
Figure 3 – USB Model .17
Figure 4 – Example Simple UAS domain .19
Figure 5 – Example Complex UAS Domain.20
Figure 6 – UAS sequence figure notation .34
Figure 7 – Non-data transfer with Sense.34
Figure 8 – Non-data Transfer with Response.35
Figure 9 – Write Data Transfer .36
Figure 10 – Read Data Transfer .37
Figure 11 – Task management .37
Figure 12 – Bi-directional Data Transfer .38
Figure 13 – Multiple Command example.40
Table 1 – Numbering conventions . 15
Table 2 – Device descriptor . 22
Table 3 – Configuration descriptor. 23
Table 4 – Interface Descriptor. 24
Table 5 – Bulk-in endpoint descriptor. 24
Table 6 – Bulk-out endpoint descriptor . 25
Table 7 – Pipe Usage Descriptor . 25
Table 8 – Pipe ID. 26
Table 9 – IU ID field summary. 27
Table 10 – IU Header . 27
Table 11 – COMMAND IU. 28
Table 12 – TASK ATTRIBUTE field . 28
Table 13 – READ READY IU . 29
Table 14 – WRITE READY IU. 29
Table 15 – SENSE IU . 30
Table 16 – RESPONSE IU. 30
Table 17 – RESPONSE CODE field . 31
Table 18 – TASK MANAGEMENT IU . 31
Table 19 – task management function field. 32
Table 20 – Execute Command procedure call transport protocol services . 42
Table 21 – Execute Command procedure call transport protocol services . 43
Table 22 – Send SCSI Command transport protocol service arguments . 43
Table 23 – SCSI Command Received transport protocol service arguments. 44
Table 24 – Send Command Complete transport protocol service arguments . 45
Table 25 – Command Complete Received transport protocol service arguments . 45
Table 26 – Send Data-In transport protocol service arguments. 46
Table 27 – Data-In Delivered transport protocol service arguments . 46
Table 28 – Receive Data-Out transport protocol service arguments. 47
Table 29 – Data-Out Received transport protocol service arguments. 47
Table 30 – Terminate Data Transfer transport protocol service arguments . 48
Table 31 – Data Transfer Terminated transport protocol service arguments . 48
Table 32 – Send Task Management Request transport protocol service arguments . 48
Table 33 – Task Management Request Received transport protocol service arguments . 49
Table 34 – Task Management Function Executed transport protocol service arguments. 50
Table 35 – Received Task Management Function Executed transport
protocol service arguments . 51
Table 36 – USB Acknowledgement. 52
Table 37 – Delivery Result to additional sense code mapping . 53
– 6 – ISO/IEC 14776-251:2014 © ISO/IEC 2014
INFORMATION TECHNOLOGY –
SMALL COMPUTER SYSTEM INTERFACE (SCSI) –
Part 251: USB Attached SCSI (UAS)
FOREWORD
1) ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission)
form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC
participate in the development of International Standards through technical committees established by the
respective organization to deal with particular fields of technical activity. ISO and IEC technical committees
collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental,
in liaison with ISO and IEC, also take part in the work. In the field of information technology, ISO and IEC have
established a joint technical committee, ISO/IEC JTC 1.
2) The formal decisions or agreements of IEC and ISO on technical matters express, as nearly as possible, an
international consensus of opinion on the relevant subjects since each technical committee has representation
from all interested IEC National Committees and ISO member bodies.
3) IEC, ISO and ISO/IEC Publications have the form of recommendations for international use and are accepted by
IEC National Committees and ISO member bodies in that sense. While all reasonable efforts are made to ensure
that the technical content of IEC, ISO and ISO/IEC publications is accurate, IEC or ISO cannot be held
responsible for the way in which they are used or for any misinterpretation by any end user.
4) In order to promote international uniformity, IEC National Committees and ISO member bodies undertake to
apply IEC, ISO and ISO/IEC publications transparently to the maximum extent possible in their national and
regional publications. Any divergence between any ISO, IEC or ISO/IEC publication and the corresponding
national or regional publication should be clearly indicated in the latter.
5) ISO and IEC do not provide any attestation of conformity. Independent certification bodies provide conformity
assessment services and, in some areas, access to IEC marks of conformity. ISO or IEC are not responsible for
any services carried out by independent certification bodies.
6) All users should ensure that they have the latest edition of this publication.
7) No liability shall attach to IEC or ISO or its directors, employees, servants or agents including individual experts
and members of their technical committees and IEC National Committees or ISO member bodies for any personal
injury, property damage or other damage of any nature whatsoever, whether direct or indirect, or for costs
(including legal fees) and expenses arising out of the publication of, use of, or reliance upon, this ISO/IEC
Publication or any other IEC, ISO or ISO/IEC publications.
8) Attention is drawn to the normative references cited in this publication. Use of the referenced publications is
indispensable for the correct application of this publication.
9) Attention is drawn to the possibility that some of the elements of this ISO/IEC Publication may be the subject of
patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.
International Standard ISO/IEC 14776-251 was prepared by subcommittee 25: Interconnection of
information technology equipment, of ISO/IEC joint technical committee 1: Information technology.
The list of all currently available parts of the ISO/IEC 14776 series, under the general title Information
technology – Small computer system interface (SCSI), can be found on the IEC web site.
This International Standard has been approved by vote of the member bodies, and the voting results
may be obtained from the address given on the second title page.
This publication has been drafted in accordance with the ISO/IEC Directives, Part 2.
IMPORTANT – The “colour inside” logo on the cover page of this publication indicates that it
contains colours which are considered to be useful for the correct understanding of its
contents. Users should therefore print this publication using a colour printer.
– 8 – ISO/IEC 14776-251:2014 © ISO/IEC 2014
INTRODUCTION
This International Standard standard encompasses the following:
Clause 1 describes the scope.
Clause 2 provides normative references for the entire standard.
Clause 3 provides definitions, abbreviations, and conventions used within the entire standard.
Clause 4 describes the model.
Clause 5 describes USB requirements.
Clause 6 describes transport requirements (e.g., IUs).
Clause 7 describes the SCSI Application Layer Transport Protocol Services.
Clause 8 describes device server error handling.
SCSI standards family
Figure 1 shows the relationship of this standard to the other standards and related projects in the SCSI
family of standards as of the publication of this standard.
Primary command set
Device-type specific command sets
(shared for all device types)
(e.g., SBC-2, SSC-2)
(SPC-3)
SCSI transport protocols
(e.g., SAS-2, FCP-4, this standard)
Interconnects
(e.g., SAS-2, Fibre Channel)
Figure 1 — SCSI document structure
The SCSI document structure in figure 1 is intended to show the general applicability of the documents
to one another. Figure 1 is not intended to imply a relationship such as a hierarchy, protocol stack, or
system architecture.
SCSI Architecture Model: Defines the SCSI systems model, the functional partitioning of the SCSI
standard set and requirements applicable to all SCSI implementations and implementation standards.
Device-Type Specific Command Sets: Implementation standards that define specific device types
including a device model for each device type. These standards specify the required commands and
behaviors that are specific to a given device type and prescribe the requirements to be followed by a
SCSI initiator device when sending commands to a SCSI target device having the specific device type.
The commands and behaviors for a specific device type may include by reference commands and
behaviors that are shared by all SCSI devices.
Shared Command Set: An implementation standard that defines a model for all SCSI device types.
This standard specifies the required commands and behavior that is common to all SCSI devices,
regardless of device type, and prescribes the requirements to be followed by a SCSI initiator device
when sending commands to any SCSI target device.
SCSI Transport Protocols: Implementation standards that define the requirements for exchanging
information so that different SCSI devices are capable of communicating.
SCSI Architecture Model
(SAM-4)
Interconnects: Implementation standards that define the communications mechanism employed by
the SCSI transport protocols. These standards may describe the electrical and signaling requirements
essential for SCSI devices to interoperate over a given interconnect. Interconnect standards may allow
the interconnection of devices other than SCSI devices in ways that are outside the scope of this
standard.
The term SCSI is used to refer to the family of standards described in this introduction.
– 10 – ISO/IEC 14776-251:2014 © ISO/IEC 2014
INFORMATION TECHNOLOGY –
SMALL COMPUTER SYSTEM INTERFACE (SCSI) –
Part 251: USB Attached SCSI (UAS)
1 Scope
This part of ISO/IEC 14776 describes a SCSI transport protocol (see ISO/IEC 14776-414) for USB-2
and USB-3 with the following properties:
a) mechanism to send commands associated with any SCSI standard to a USB device;
b) complies with SCSI Architecture Model - 4 (e.g., autosense and command queuing); and
c) other capabilities.
2 Normative references
The following documents, in whole or in part, are normatively referenced in this document and are
indispensable for its application. For dated references, only the edition cited applies. For undated
references, the latest edition of the referenced document (including any amendments) applies.
ISO/IEC 14776-414, Information technology, Small Computer System Interface (SCSI) – Part 414:
SCSI Architecture Model-4 (herein referred to as SAM-4)
IEC 62680-1, Universal serial bus interfaces for data and power – Part 1: Universal serial bus
specification, revision 2.0 (herein referred to as USB-2)
ANSI INCITS 513-2004, SCSI Primary Commands-4 (herein referred to as SPC-4) [T10/1731-D]
Universal Serial Bus 3.0 Specification Revision 1.0 (herein referred to as USB-3). November 12, 2008
Universal Serial Bus Mass Storage Class Specification Overview Rev 1.3 (herein referred to as MSC).
September 5, 2008
3 Terms, definitions, symbols, abbreviations and conventions
3.1 Terms and definitions
For the purposes of this document, the following terms and definitions apply.
3.1.1
application client
object that is the source of SCSI commands
Note 1 to entry: See ISO/IEC 14776-414.
3.1.2
Bulk-in Endpoint Descriptor
USB Endpoint Descriptor with the BM ATTRIBUTES field set to 02h and bit 7 of the bEndPoint address
field set to 1
1. ANSI INCITS 447-2008
2. planned as ISO/IEC 14776-454
For more information on the current status of these documents, contact the INCITS Secretariat at
202-737-8888 (phone), 202-638-4922 (fax) or via E-mail at incits@itic.org. To obtain copies of these
documents, contact Global Engineering at 15 Inverness Way, East Englewood, CO 80112-5704 at
303-792-2181 (phone), 800-854-7179 (phone), or 303-792-2192 (fax) or see http://www.incits.org.
3. For information on the current status of USB documents, see the USB Implementers Forum at
http://www.usb.org.
3.1.3
Bulk-in pipe
pipe (see 3.1.9) used to transfer data and status from the UAS target port to the UAS initiator port
3.1.4
Bulk-out Endpoint Descriptor
USB Endpoint Descriptor with the BM ATTRIBUTES field set to 02h and bit 7 of the bEndPoint address
field set to 0
3.1.5
Bulk-out pipe
pipe (see 3.1.9) used to transfer data and commands from the UAS initiator port to the UAS target port
3.1.6
default pipe
message pipe (see 3.1.9) created by the USB System Software to pass control and status information
between the host and a USB device’s endpoint zero (see USB-2)
3.1.7
Information Unit
IU
formatted collection of data that carries command, task management function, sense, response, read
ready, or write ready information (see 6.2)
3.1.8
Logical Unit Number
LUN
64-bit identifier for a logical unit
Note 1 to entry: See ISO/IEC 14776-414.
3.1.9
pipe
logical abstraction using USB endpoints representing an association between a function (see USB-2
and USB-3) of a USB device and an application client
3.1.10
read data
data transferred to the SCSI application client’s data-in buffer from the SCSI device server, as
requested by the Send Data-In transport protocol service
3.1.11
service deliver subsystem
part of the USB I/O system which transmits information between the UAS initiator port and the UAS
target port
EXAMPLE USB hubs, USB cables.
3.1.12
task manager
object that controls the sequencing of commands and processes task management functions
Note 1 to entry: See ISO/IEC 14776-414.
3.1.13
transaction packet
TP
header packet used to communicate information between a UAS target device and a UAS initiator
device
Note 1 to entry: See Universal Serial Bus 3.0.
– 12 – ISO/IEC 14776-251:2014 © ISO/IEC 2014
3.1.14
UAS domain
one UAS initiator port and one or more UAS target ports (see 4.4)
3.1.15
UAS initiator device
USB host that contains one or more UAS initiator ports
Note 1 to entry: For USB host, see Universal Serial Bus 2.0 and Universal Serial Bus 3.0.
3.1.16
UAS initiator port
USB host and USB host port components
Note 1 to entry: For USB host, see Universal Serial Bus 2.0.
Note 2 to entry: For USB host port components, see Universal Serial Bus 2.0 and Universal Serial Bus
3.0.
3.1.17
UAS target device
USB device that contains one or more UAS target ports that attach to a UAS initiator device
3.1.18
UAS target port
USB interface that contains two USB Bulk-in endpoints, two USB Bulk-out endpoints and the default
USB control endpoint
3.1.19
USB device
one or more USB interfaces and the default control endpoint
Note 1 to entry: See Universal Serial Bus 2.0 and Universal Serial Bus 3.0.
3.1.20
USB endpoint
collection of characteristics describing the USB device implementation of a pipe
Note 1 to entry: See 3.1.9, and Universal Serial Bus 2.0 and Universal Serial Bus 3.0.
3.1.21
USB interface
description of one or more USB endpoints
Note 1 to entry: See Universal Serial Bus 2.0 and Universal Serial Bus 3.0.
3.1.22
USB Packet
unit of data formatted for transmission over Super Speed USB or High Speed USB
3.1.23
write data
data transferred from the SCSI application client’s data-out buffer to the SCSI device server, as
requested by the Request Data-Out transport protocol service
3.2 Symbols and abbreviations
Abbreviation Meaning
x multiplication
/ division
or NE not equal
or LE less than or equal to
± plus or minus
approximately
+ add
- subtract
< or LT less than
= or EQ equal
> or GT greater than
or GE greater than or equal to
IU Information Unit
LSB Least significant bit
LUN Logical unit number
MSB Most significant bit
MSC Mass Storage Class
SAM-4 SCSI Architecture Model-4
SCSI Small Computer System Interface
SPC-4 SCSI Primary Commands-4
UAS USB Attached SCSI (this standard)
USB Universal Serial Bus (see USB-2 and USB-3)
USB-2 Universal Serial Bus Revision 2.0
USB-3 Universal Serial Bus 3.0 Revision 1.0
3.3 Keywords
invalid
a keyword used to describe an illegal or unsupported bit, byte, word, field or code value; receipt by a
device server of an invalid bit, byte, word, field or code value shall be reported as error
mandatory
a keyword indicating an item that is required to be implemented as defined in this standard
may
a keyword that indicates flexibility of choice with no implied preference
may not
a keyword that indicates flexibility of choice with no implied preference
obsolete
a keyword indicating that an item was defined in prior SCSI standards but has been removed from this
standard
option, optional
keywords that describe features that are not required to be implemented by this standard; however, if
any optional feature defined by this standard is implemented, then it shall be implemented as defined in
this standard
– 14 – ISO/IEC 14776-251:2014 © ISO/IEC 2014
reserved
a keyword referring to bits, bytes, words, fields, and code values that are set aside for future standard-
ization; a reserved bit, byte, word, or field shall be set to zero, or in accordance with a future extension
to this standard. Recipients are not required to check reserved bits, bytes, words, or fields for zero
values; receipt of reserved code values in defined fields shall be reported as error
shall
a keyword indicating a mandatory requirement; designers are required to implement all such mandatory
requirements to ensure interoperability with other products that conform to this standard
should
a keyword indicating flexibility of choice with a strongly preferred alternative
vendor specific
something (e.g., a bit, field, code value) that is not defined by this standard; specification of the refer-
enced item is determined by the SCSI device vendor and may be used differently in various implemen-
tations
3.4 Editorial conventions
Certain words and terms used in this standard have a specific meaning beyond the normal English
meaning. These words and terms are defined either in subclause 3.1 or in the text where they first
appear.
Upper case is used when referring to the name of a numeric value defined in this specification or a
formal attribute possessed by an entity. When necessary for clarity, names of objects, procedure calls,
arguments or discrete states are capitalized or set in bold type. Names of fields are identified using
small capital letters (e.g., NACA bit).
Names of procedure calls are identified by a name in bold type (e.g., Execute Command). Names of
arguments are denoted by capitalizing each word in the name (e.g., Sense Data is the name of an
argument in the Execute Command procedure call).
Quantities having a defined numeric value are identified by large capital letters (e.g., CHECK
CONDITION). Quantities having a discrete but unspecified value are identified using small capital
letters (e.g., TASK COMPLETE, indicates a quantity returned by the Execute Command procedure call).
Such quantities are associated with an event or indication whose observable behavior or value is
specific to a given implementation standard.
Lists sequenced by lowercase or uppercase letters show no ordering relationship between the listed
items.
EXAMPLE 1 - The following list shows no relationship between the named items:
a) red (i.e., one of the following colors):
A) crimson: or
B) amber;
b) blue; or
c) green.
Lists sequenced by numbers show an ordering relationship between the listed items.
EXAMPLE 2 - The following list shows an ordered relationship between the named items:
1) top;
2) middle; and
3) bottom.
Lists are associated with an introductory paragraph or phrase, and are numbered relative to that
paragraph or phrase (i.e., all lists begin with an a) or 1) entry).
If a conflict arises between text, tables, or figures, the order of precedence to resolve the conflicts is
text; then tables; and finally figures. Not all tables or figures are fully described in the text. Tables show
data format and values.
Notes and examples do not constitute any requirements for implementors.
3.5 Numeric and character conventions
3.5.1 Numeric conventions
A binary number is represented in this standard by any sequence of digits comprised of only the Arabic
numerals 0 and 1 immediately followed by a lower-case b (e.g., 0101b). Underscores or spaces may be
included in binary number representations to increase readability or delineate field boundaries (e.g.,
0 0101 1010b or 0_0101_1010b).
A hexadecimal number is represented in this standard by any sequence of digits comprised of only the
Arabic numerals 0 through 9 and/or the upper-case English letters A through F immediately followed by
a lower-case h (e.g., FA23h). Underscores or spaces may be included in hexadecimal number
representations to increase readability or delineate field boundaries (e.g., B FD8C FA23h or
B_FD8C_FA23h).
A decimal number is represented in this standard by any sequence of digits comprised of only the
Arabic numerals 0 through 9 not immediately followed by a lower-case b or lower-case h (e.g., 25).
This standard uses the following conventions for representing decimal numbers:
a) the decimal separator (i.e., separating the integer and fractional portions of the number) is a
period;
b) the thousands separator (i.e., separating groups of three digits in a portion of the number) is a
space; and
c) the thousands separator is used in both the integer portion and the fraction portion of a number.
Table 1 shows some examples of decimal numbers using various numbering conventions.
Table 1 – Numbering conventions
French English This standard
0,6 0.6 0.6
3,141 592 65 3.14159265 3.141 592 65
1 000 1,000 1 000
1 323 462,95 1,323,462.95 1 323 462.95
A decimal number represented in this standard with an overline over one or more digits following the
decimal point is a number where the overlined digits are infinitely repeating (e.g., 666.6 means
666.666 666. or 666 2/3, and 12.142 857 means 12.142 857 142 857. or 12 1/7).
3.5.2 Byte encoded character strings conventions
When this standard requires one or more bytes to contain specific encoded characters, the specific
characters are enclosed in single quotation marks. The single quotation marks identify the start and end
of the characters that are required to be encoded but are not themselves to be encoded. The
characters that are to be encoded are shown in the case that is to be encoded.
An ASCII space character (i.e., 20h) may be represented in a string by the character ‘¬’ (e.g.,
‘SCSI¬device’).
The encoded characters and the single quotation marks that enclose them are preceded by text that
specifies the character encoding methodology and the number of characters required to be encoded.
EXAMPLE - Using the notation described in this subclause, stating that eleven ASCII characters
‘SCSI device’ are to be encoded would be the same writing out the following sequence of byte values:
53h 43h 53h 49h 20h 64h 65h 76h 69h 63h 65h.
– 16 – ISO/IEC 14776-251:2014 © ISO/IEC 2014
3.6 Sequence figure notation
A sequence figure describes sequences of communication between a requestor and a responder.
Figure 2 is an example sequence figure. A line with an arrowhead that points to the responder
represents a communication from the requestor to the responder. A line with an arrowhead that points
to the requestor represents a communication from the responder to the requestor.
Each line with an arrowhead has a label. The label describes the communication between the
requestor and the responder.
Communications that appear near the top of a sequence figure occur earlier in time than
communications that appear below them.
Figure 2 – Example Sequence figure
3.7 Notation for procedures and functions
In this standard, the model for functional interfaces between objects is the callable procedure. Such
interfaces are specified using the following notation:
[Result =] Procedure Name (IN ([input-1] [,input-2] …), OUT ([output-1] [,output-2] …))
Where:
Result A single value representing the outcome of the procedure or
function.
Procedure Name descriptive name for the function to be performed.
IN (Input-1, Input-2, …) A comma-separated list of names identifying caller-supplied input
data objects.
OUT (Output-1, Output-2, …) A comma-separated list of names identifying output data objects to
be returned by the procedure.
[…] Brackets enclose optional or conditional parameters and
arguments.
This notation allows data objects to be specified as inputs and outputs.
In this standard, the notation Procedure Name () is used to indicate the name of a procedure without
specifying the input data objects or output data objects.
4 Model
4.1 Overview
A UAS target port shall support a single I_T nexus. The minimum configuration for a UAS target port
(see figure 3) consists of:
a) the Default pipe (see USB-2);
b) two Bulk-in pipes:
A) Status pipe; and
B) Data-in pipe;
and
c) two Bulk-out pipes:
A) Command pipe; and
B) Data-out pipe.
Figure 3 – USB Model
The Default pipe, required by both USB-2 and USB-3, is not defined in this standard.
The UAS target port receives IUs from the UAS initiator port using the Command pipe and responds
with IUs using the Status pipe.
– 18 – ISO/IEC 14776-251:2014 © ISO/IEC 2014
The Data-in pipe transmits read data (i.e., data to the application client's data-in buffer). The Data-out
pipe transmits write data (i.e., data from the application client's data-out buffer).
The UAS target port shall have sufficient buffering or other resources available to receive commands
after the USB device has entered the USB configured state (see USB-2 or USB-3). The UAS initiator
port should have sufficient buffering available to receive status from the UAS target port after the USB
device has entered the USB configured state (see USB-2 and USB-3).
If the UAS target port is unable to send status to the UAS initiator port when said status is available,
then the target port may abort all commands in the task set and all commands that the target port
receives until the UAS target port is able to terminate a command with CHECK CONDITION status with
the sense key set to UNIT ATTENTION with the additional sense code set to COMMANDS CLEARED
BY DEVICE SERVER. If:
a) the CREDIT_HP_TIMER (see USB-3) has been started and has not expired;
b) the CREDIT_HP_TIMER (see USB-3) has not been started and less than 5 ms has elapsed
since the last transmission of an ACK packet from the UAS initiator port; or
c) less than 5 ms has elapsed since the last transmission of an IN packet (see USB-2) from the
UAS initiator port for a High Speed device,
then the UAS target port shall not take any action to abort commands resulting from a failure to be able
to send status to the UAS initiator.
4.2 Tag handling
The TAG field in a COMMAND IU (see 6.2.2) contains the command identifier as defined in SAM-4. The
TAG field in a TASK MANAGEMENT IU (see 6.2.7) is an association between a SAM-4 Received Task
Management Function Executed and a SAM-4 Send Task Management Request. The number space
used in the TAG fields is shared across COMMAND IUs and TASK MANAGEMENT IUs (i.e., if the same
tag is used for a concurrent COMMAND IU and TASK MANAGEMENT IU, then the device shall report
an error as defined in this subclause).
If a UAS target device performs tag checking and a UAS target port calls SCSI Command Received ()
with a tag already in use by another command (i.e., an overlapped command) in any logical unit, then
the task router and task manager(s) shall:
a) abort all task management functions received on that I_T nexus; and
b) respond to the overlapped command as defined in
...




Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...