ISO/IEC 14776-326:2002
(Main)Information technology — Small Computer System Interface (SCSI) — Part 326: Reduced Block Commands (RBC)
Information technology — Small Computer System Interface (SCSI) — Part 326: Reduced Block Commands (RBC)
Technologies de l'information — Interface de petit système d'ordinateur (SCSI) — Partie 326: Commandes en bloc réduit (RBC)
General Information
Relations
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD
14776-326
First edition
2002-08
Information technology –
Small computer system interface (SCSI) –
Part 326:
Reduced block commands (RBC)
Reference number
ISO/IEC 14776-326:2002(E)
---------------------- Page: 1 ----------------------
INTERNATIONAL ISO/IEC
STANDARD
14776-326
First edition
2002-08
Information technology –
Small computer system interface (SCSI) –
Part 326:
Reduced block commands (RBC)
ISO/IEC 2002
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 the publisher.
ISO/IEC Copyright Office Case postale 56 CH-1211 Genève 20 Switzerland
• • •
PRICE CODE
R
For price, see current catalogue
---------------------- Page: 2 ----------------------
– 2 – 14776-326 © ISO/IEC:2002(E)
CONTENTS
FOREWORD . 5
INTRODUCTION .6
1 Scope . 7
2 Normative references. 7
3 Definitions, acronyms, keywords and conventions. 8
3.1 Definitions . 8
3.2 Acronyms . 9
3.3 Keywords. 9
3.4 Conventions .10
3.4.1 Non-numeric values .10
3.4.2 Numeric values .10
4 RBC device model .10
4.0 General .10
4.1 Removable medium device .11
4.2 Command usage.11
4.2.0 General.11
4.2.1 Using the INQUIRY command.11
4.2.2 Using the REQUEST SENSE command .12
4.2.3 FORMAT UNIT command progress determination .12
4.3 Using the PREVENT ALLOW MEDIUM REMOVAL command.12
4.3.0 General.12
4.3.1 START STOP UNIT command state restrictions.12
4.4 Logical blocks.13
4.5 Reservations .13
5 Reduced block commands .15
5.0 General .15
5.1 FORMAT UNIT command .15
5.2 READ(10) command .17
5.3 READ CAPACITY command .17
5.4 START STOP UNIT command .18
5.4.0 General.18
5.4.1 Power conditions .19
5.4.2 Control bits .20
5.5 SYNCHRONIZE CACHE command .20
5.6 WRITE(10) command.21
5.7 VERIFY command .22
5.8 MODE parameters .22
5.8.0 General.22
5.8.1 Mode parameter list .23
5.8.2 Mode parameter header.23
5.8.3 RBC device parameter page .23
6 SPC-2 Implementation requirements for RBC devices.24
6.0 General .24
6.1 INQUIRY command .25
---------------------- Page: 3 ----------------------
14776-326 © ISO/IEC:2002(E) – 3 –
6.1.0 General.25
6.1.1 INQUIRY vital product data pages .26
6.2 MODE SELECT(6) command .26
6.2.0 General.26
6.2.1 Save pages (SP) bit support .27
6.3 MODE SENSE(6) command.27
6.4 PREVENT ALLOW MEDIUM REMOVAL .27
6.5 REQUEST SENSE command.28
6.6 TEST UNIT READY command .28
6.7 WRITE BUFFER command .29
6.7.0 General.29
6.7.1 Download Microcode and save mode (101b) .29
6.7.2 Download Microcode with offsets and save mode (111b) .29
7 Asynchronous event notification for RBC devices .30
7.0 General .30
7.1 Unit attention .30
7.1.0 General.30
7.1.1 Power condition change notification .30
7.2 Deferred errors .31
7.3 Information exception condition notification .31
7.4 Event status notification.31
7.4.0 General.31
7.4.1 Event status sense information .31
7.4.2 POWER MANAGEMENT CLASS INFORMATION field .32
7.4.3 MEDIA CLASS EVENT INFORMATION field .33
7.4.4 DEVICE BUSY CLASS EVENT INFORMATION values .34
7.4.5 Event status retention .35
7.4.6 Removable medium device initial response.35
Annex A (normative) RBC device implementation requirements for SBP-2 .36
A.1 SBP-2 definitions .36
A.2 Acronyms .37
A.3 SBP-2 storage model (informative) .38
A.3.0 General.38
A.3.1 Model configuration .38
A.3.2 Reconnect/Power reset support (normative).39
A.4 Configuration ROM support (normative) .40
A.4.0 General.40
A.4.1 Unit Directory – Command_Set_Spec_ID.40
A.4.2 Unit Directory – Command_Set.40
A.4.3 Unit Directory – Logical_Unit_Number .40
A.5 Security support (normative) .41
A.6 Status block support (normative).41
A.7 Unsolicited status support (normative) .41
A.7.0 General.41
A.7.1 Unit attention condition .42
A.7.2 Event status retention .42
---------------------- Page: 4 ----------------------
– 4 – 14776-326 © ISO/IEC:2002(E)
Figure A.1 – Mass storage interface block diagram .38
Table 1 – RBC direct access commands that are allowed in the presence of various
reservations .14
Table 2 − Reduced Block Command set .15
Table 3 − FORMAT UNIT command .16
Table 4 – READ(10) Command Descriptor Block.17
Table 5 − READ CAPACITY Command Descriptor Block .17
Table 6 − READ CAPACITY data .18
Table 7 − START STOP UNIT Command Descriptor Block .18
Table 8 − POWER CONDITIONS .19
Table 9 − START STOP control bit definitions .20
Table 10 – SYNCHRONIZE CACHE Command Descriptor Block .21
Table 11 − WRITE(10) Command Descriptor Block .21
Table 12 − VERIFY Command Descriptor Block .22
Table 13 − Mode parameter list .23
Table 14 − RBC Device Parameter's page format.23
Table 15 − Required SPC-2 commands.25
Table 16 − Standard Inquiry data format.25
Table 17 − MODE SELECT(6) Command Descriptor Block .26
Table 18 − MODE SENSE(6) Command Descriptor Block.27
Table 19 − FAILURE PREDICTION ASCQ XY definitions .28
Table 20 − WRITE BUFFER Command Descriptor Block .29
Table 21 – Asynchronous Event conditions .30
Table 22 − Power condition sense code and qualifier values .30
Table 23 – Event status ASCQ values.31
Table 24 – EVENT STATUS INFORMATION field format.32
Table 25 – POWER MANAGEMENT CLASS INFORMATION field format .32
Table 26 – POWER MANAGEMENT CLASS EVENT field.32
Table 27 – POWER MANAGEMENT CLASS STATUS field.33
Table 28 – MEDIA CLASS INFORMATION field format .33
Table 29 − MEDIA CLASS EVENT field.33
Table 30 – DEVICE BUSY CLASS INFORMATION field format .34
Table 31 – DEVICE BUSY CLASS EVENT field.34
Table 32 – DEVICE BUSY CLASS STATUS field.34
---------------------- Page: 5 ----------------------
14776-326 © ISO/IEC:2002(E) – 5 –
INFORMATION TECHNOLOGY –
SMALL COMPUTER SYSTEM INTERFACE (SCSI) –
Part 326: Reduced Block Commands (RBC)
FOREWORD
1) ISO (International Organization for Standardization) and IEC (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.
2) In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1.
Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting.
Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote.
3) Attention is drawn to the possibility that some of the elements of this International Standard 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-326 was prepared by subcommittee 25: Intercon-
nection of information technology equipment, of ISO/IEC joint technical committee 1: Infor-
mation technology.
This publication has been drafted in accordance with the ISO/IEC Directives, Part 2.
---------------------- Page: 6 ----------------------
– 6 – 14776-326 © ISO/IEC:2002(E)
INTRODUCTION
This part of ISO/IEC 14776 specifies the functional requirements for the SCSI Reduced Block
Command set (RBC). RBC permits SCSI block logical units, such as flexible disks, rigid disks,
optical disks, etc., to be attached to computers, and it provides the definition for their use.
The Reduced Block Command set is designed to provide very efficient initiator-to-device
operation of input/output logical units by an operating system.
Annex A contains an implementation guide for RBC devices using SBP-2.
---------------------- Page: 7 ----------------------
14776-326 © ISO/IEC:2002(E) – 7 –
INFORMATION TECHNOLOGY –
SMALL COMPUTER SYSTEM INTERFACE (SCSI) –
Part 326: Reduced Block Commands (RBC)
1 Scope
This part of ISO/IEC 14776 defines a Reduced Block Command set for logical block devices.
The Reduced Block Commands, along with the required SPC-2 commands and their
restrictions described in this standard, fully specify the complete command set for RBC logical
block devices.
The purpose of this standard is to provide a command set of reduced requirements and
options from SCSI Block Commands (SBC) for block devices (see ISO/IEC 14776-321). The
reduced command set is intended to more closely match the functionality required for simple
block logical units. The specified commands place no restrictions on device performance. The
basic focus of this command set is to enable the command and control of rigid disks and
removable media devices attached to Serial Bus and utilizing SCSI Serial Bus Protocol 2
(SBP-2) (ISO/IEC 14776-232).
2 Normative references
The following referenced documents are indispensable for the application of this document.
For dated references, only the edition cited applies. For undated references, the latest edition
of the referenced document (including any amendments) applies.
ISO/IEC 13213:1994, Information technology – Microprocessor systems – Control and status
register (CSR) architecture for microcomputer buses
ISO/IEC 14776-232:2001, Information technology – Small Computer System Interface
(SCSI) – Part 232: Serial Bus Protocol 2 (SBP-2)
ISO/IEC 14776-312,– Information technology – Small Computer System Interface (SCSI) –
1)
Part 312: Primary commands 2 (SPC-2)
ISO/IEC 14776-321,– Information technology – Small Computer System Interface (SCSI-3) –
2)
Part 321: Block commands (SBC)
ISO/IEC 14776-362,– Information technology – Small Computer System Interface (SCSI) –
2)
Part 362: Multimedia commands 2 (MMC-2)
ISO/IEC 14776-412,– Information technology – Small Computer System Interface (SCSI) –
1)
Part 412: Architecture model 2 (SAM-2)
ANSI X3.301:1997, Information technology – SCSI-3 Primary Commands 2 (SPC)
ANSI/IEEE 1394:1995, High Performance Serial Bus
IEEE 1394a:2000, High Performance Serial Bus (Supplement to ANSI/IEEE 1394)
1)
Under consideration.
2)
To be published.
---------------------- Page: 8 ----------------------
– 8 – 14776-326 © ISO/IEC:2002(E)
3 Definitions, acronyms, keywords and conventions
3.1 Definitions
For the purpose of this document the following terms and definitions apply.
3.1.1
additional sense code
field in the sense data (see definition in ISO/IEC 14776-312)
3.1.2
additional sense code qualifier
field in the sense data (see definition in ISO/IEC 14776-312)
3.1.3
byte
eight bits of data
3.1.4
command descriptor block
structure of up to 16 bytes in length used to communicate a command from an initiator to a
device
3.1.5
event field
byte 0 of the sense data INFORMATION field (see Table 24 for the Event Status
INFORMATION field format) when the sense code indicates EVENT STATUS NOTIFICATION
(38h)
3.1.6
logical unit
part of the target that is an instance of a device model, for example, mass storage, CD-ROM
or printer. In devices that implement one or more logical units, the device type of the logical
units may differ
3.1.7
sense data
data describing an error or exceptional device condition that a device delivers to an initiator
(see definition in ISO/IEC 14776-312)
3.1.8
sense key
field in the sense data (see definition in ISO/IEC 14776-312)
3.1.9
status
response information sent from a device to an initiator upon completion of each command
3.1.10
unit attention condition
state that a logical unit maintains while it has asynchronous status information to report to one
or more initiators
3.1.11
vendor-specific
an item (for example, a bit, field, code value, etc.) which is not defined by this standard and
may be vendor defined
---------------------- Page: 9 ----------------------
14776-326 © ISO/IEC:2002(E) – 9 –
3.2 Acronyms
The following abbreviations are used in this standard:
ASC Additional Sense Code
ASCQ Additional Sense Code Qualifier
CDB Command Descriptor Block
RBC Reduced Block Commands (this standard)
SPC-2 SCSI Primary Commands 2
3.3 Keywords
Several keywords are used to differentiate levels of requirements and options, as follows:
3.3.1
expected
keyword used to describe the behavior of the hardware or software in the design models
assumed by this standard. Other hardware and software design models may also be
implemented
3.3.2
ignored
keyword that describes bits, bytes, quadlets, or fields whose values are not checked by the
recipient
3.3.3
mandatory
keyword that indicates items required to be implemented as defined by this standard
3.3.4
may
keyword that indicates flexibility of choice with no implied preference
3.3.5
optional
keyword that describes features which are not required to be implemented by this standard.
However, if any optional feature defined by this standard is implemented, it shall be
implemented as defined
3.3.6
reserved
keyword used to describe objects – bits, bytes and fields – or the code values assigned to
these objects in cases where either the object or the code value is set aside for future
standardization. Usage and interpretation may be specified by future extensions to this or
other standards. A reserved object shall be zeroed or, upon development of a future standard,
set to a value specified by such a standard. The recipient of a reserved object shall not check
its value. The recipient of a defined object shall check its value and reject reserved code
values
3.3.7
shall
keyword that indicates a mandatory requirement. Designers are required to implement all
such mandatory requirements to assure interoperability with other products conforming to this
standard
---------------------- Page: 10 ----------------------
– 10 – 14776-326 © ISO/IEC:2002(E)
3.4 Conventions
The following conventions are used.
3.4.1 Non-numeric values
Lowercase is used for words having the normal English meaning. 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 Clause 3 or in the text where they first appear.
Listed items in RBC do not represent any priority. Any priority is explicitly indicated. Formal
lists (for example, (a) red; (b) blue; (c) green) connoted by letters are in an arbitrary order.
Formal lists (for example, (1) red; (2) blue; (3) green) connoted by numbers are in a required
sequential order.
If a conflict arises between text, tables or figures, the order of precedence is as follows: text;
tables; figures. Not all the tables or figures are fully described in the text. Tables show data
format and values. Notes and IMPLEMENTATION notes do not constitute any requirements
for implementations.
a) The names of abbreviations, commands and acronyms are in all uppercase, for example
TEST UNIT READY command.
b) Fields containing only one bit are usually referred to as the "NAME" bit instead of the
"NAME" field.
c) Fields are shown in capital letters, for example LOGICAL BLOCK ADDRESS.
3.4.2 Numeric values
The ISO/IEC convention of numbering is used (i.e., the thousands and higher multiples are
separated by a space, and a comma is used as the decimal point, as in 65 536 or 0,5).
a) Decimal numbers are represented by Arabic numerals without subscripts or by their
English names, for example 42, or twelve.
b) Hexadecimal numbers are represented by digits from the character set 0 – 9 and A – F
followed by lower-case h, for example 2Ah.
c) Binary numbers are represented by digits from the character set 0 and 1, followed by
lower-case b, for example 0010 1010b.
d) The most significant bit of a binary quantity is shown on the left side and represents the
highest algebraic value position in the quantity.
e) For the sake of legibility, binary and hexadecimal numbers are separated into groups of
four digits separated by spaces.
4 RBC device model
4.0 General
RBC logical units store blocks of data for later retrieval. Each block of data is stored at a
unique location. Initiators issue WRITE commands to store the blocks of data (write
operations) and READ commands to retrieve the blocks of data (read operations). Other
commands issued by the initiator may also cause write and read operations to occur. A write
operation causes one or more blocks of data to be written on the medium. A read operation
causes one or more blocks of data to be read from the medium. A verify operation confirms
that one or more blocks of data were correctly written and may be read without error from the
medium.
Blocks of data are stored by a process that causes localized changes or transitions within the
medium. The changes made to the medium to store the blocks of data may be volatile (i.e. not
retained through off/on power cycles) or non-volatile (retained through off/on power cycles).
The medium may be divided in parts that are used for data blocks, parts that are reserved for
---------------------- Page: 11 ----------------------
14776-326 © ISO/IEC:2002(E) – 11 –
defect management, and parts that are reserved for use by the target for the management of
the logical unit.
4.1 Removable medium device
The medium in a RBC device may be removable (for example, used in a floppy disk drive) or
non-removable (for example, used in a fixed disk drive). Typically, removable medium is
contained within a cartridge (or jacket) to prevent damage to the recording surfaces.
A removable medium has an attribute of being mounted or de-mounted on a suitable transport
mechanism. A removable medium is mounted when the device/media combination is capable
of performing write or read operations and the initiator is informed of this status. A removable
medium is de-mounted at any other time (for example, during loading, unloading, or storage).
Initiators may determine whether a RBC removable medium device is capable of performing
read or write operations by one of three methods:
a) Enabling AERC in the device and examining the event information transmitted from the
device.
b) Issuing a TEST UNIT READY command and examining the returned status information.
c) Issuing a MODE SENSE command for Mode Page 06h (see 5.8.3) and examining the
state of the READD or WRITED bits in byte 11. If the READD bit is set to one, then the
media is not readable. If the WRITED bit is set to one, then the media is not writable.
Until the RBC removable medium device and media are ready to be accessed, a READ(10)
command shall cause the device to return status of CHECK CONDITION (02h), sense key of
NOT READY (02h), and an ASC of LOGICAL UNIT NOT READY (04h). The ASCQ shall
reflect the current state of the device/media.
When the device becomes ready, a unit attention condition shall be established. The sense
key field shall be set to UNIT ATTENTION (06h), and the ASC/ASCQ to EVENT STATUS
NOTIFICATION/MEDIA CLASS EVENT (38h/04h). The EVENT field contained within the
SENSE DATA INFORMATION field shall be set to NEW MEDIA READY FOR ACCESS (02h).
When the unit attention condition is delivered to the initiator, the status field shall be set to
CHECK CONDITION(02h).
4.2 Command usage
4.2.0 General
RBC devices are not required to support the REQUEST SENSE command or the SEND
DIAGNOSTIC command. Devices which do not provide the Auto Sense function,
Asynchronous Event Reporting, or the GET EVENT STATUS NOTIFICATION (see MMC-2 for
definition) command shall implement the REQUEST SENSE command.
All SENSE KEY, ADDITIONAL SENSE CODE and ADDITIONAL SENSE CODE QUALIFIER
names and values contained in this standard are defined in ISO/IEC 14776-312. No additional
or alternative meaning is intended by the use of such names and values in this standard.
4.2.1 Using the INQUIRY command
The INQUIRY command may be used by an initiator to determine the configuration of a logical
unit. RBC devices return information that includes type and standard version. The device may
also return the vendor identification number, model number and other vendor specific
information. It is recommended that devices provide the capability to return this information
upon completing power-on initialization. A device may take more time to return certain
portions of this information, especially if the information must be retrieved from the medium.
---------------------- Page: 12 ----------------------
– 12 – 14776-326 © ISO/IEC:2002(E)
4.2.2 Using the REQUEST
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.