Information technology - Small Computer System Interface (SCSI) - Part 454: SCSI Primary Commands - 4 (SPC-4)

ISO/IEC 14776-454:2018(E) provides for many different types of SCSI devices and specifies the interfaces, functions and operations necessary to ensure interoperability between conforming SCSI implementations. This standard defines the SCSI commands that are mandatory and optional for all SCSI devices.

General Information

Status
Published
Publication Date
17-Apr-2018
Current Stage
PPUB - Publication issued
Start Date
18-Apr-2018
Completion Date
18-Apr-2018
Ref Project

Buy Standard

Standard
ISO/IEC 14776-454:2018 - Information technology - Small Computer System Interface (SCSI) - Part 454: SCSI Primary Commands - 4 (SPC-4)
English language
911 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (sample)

ISO/IEC 14776-454
Edition 1.0 2018-04
INTERNATIONAL
STANDARD
colour
inside
Information technology – Small Computer System Interface (SCSI) –
Part 454: SCSI Primary Commands – 4 (SPC-4)
ISO/IEC 14776-454:2018-04(en)
---------------------- Page: 1 ----------------------
THIS PUBLICATION IS COPYRIGHT PROTECTED
Copyright © 2018 ISO/IEC, Geneva, Switzerland

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é info@iec.ch
CH-1211 Geneva 20 www.iec.ch
Switzerland
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 21 000 terms and definitions in

Technical Specifications, Technical Reports and other English and French, with equivalent terms in 16 additional

documents. Available for PC, Mac OS, Android Tablets and languages. Also known as the International Electrotechnical

iPad. Vocabulary (IEV) online.

IEC publications search - webstore.iec.ch/advsearchform IEC Glossary - std.iec.ch/glossary

The advanced search enables to find IEC publications by a 67 000 electrotechnical terminology entries in English and

variety of criteria (reference number, text, technical French extracted from the Terms and Definitions clause of

committee,…). It also gives information on projects, replaced IEC publications issued since 2002. Some entries have been

and withdrawn publications. 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: sales@iec.ch.
---------------------- Page: 2 ----------------------
ISO/IEC 14776-454
Edition 1.0 2018-04
INTERNATIONAL
STANDARD
colour
inside
Information technology – Small Computer System Interface (SCSI) –
Part 454: SCSI Primary Commands – 4 (SPC-4)
INTERNATIONAL
ELECTROTECHNICAL
COMMISSION
ICS 35.200 ISBN 978-2-8322-5595-7

Warning! Make sure that you obtained this publication from an authorized distributor.

---------------------- Page: 3 ----------------------
ISO/IEC 14776-454:2018 © ISO/IEC 2018 - 2 -
Contents
Page

1 Scope........................................................................................................................................................... 40

2 Normative references................................................................................................................................... 40

3 Terms, definitions, symbols, abbreviations, and conventions ...................................................................... 45

3.1 Terms and definitions ......................................................................................................................... 45

3.2 Abbreviations and symbols................................................................................................................. 65

3.2.1 Abbreviations................................................................................................................................... 65

3.2.2 Symbols........................................................................................................................................... 67

3.2.3 Mathematical operators ................................................................................................................... 67

3.3 Keywords............................................................................................................................................ 68

3.4 Conventions........................................................................................................................................ 69

3.5 Numeric and character conventions ................................................................................................... 70

3.5.1 Numeric conventions ....................................................................................................................... 70

3.5.2 Units of measure ............................................................................................................................. 70

3.5.3 Byte encoded character strings conventions................................................................................... 71

3.6 Bit and byte ordering .......................................................................................................................... 71

3.7 Notation conventions .......................................................................................................................... 73

3.7.1 Notation for procedure calls............................................................................................................. 73

3.7.2 Notation for state diagrams ............................................................................................................. 74

3.7.3 Notation for flowcharts..................................................................................................................... 75

3.7.4 Notation for UML figures.................................................................................................................. 75

3.7.4.1 Overview....................................................................................................................................... 75

3.7.4.2 Class notation............................................................................................................................... 77

3.7.4.3 Class association relationships notation....................................................................................... 77

3.7.4.4 Class aggregation relationships notation...................................................................................... 78

3.7.4.5 Class generalization relationships notation .................................................................................. 80

3.7.4.6 Class dependency relationships notation ..................................................................................... 81

3.7.4.7 Object notation ............................................................................................................................. 81

3.7.5 Notation for EXTENDED COPY command segment descriptors .................................................... 81

4 General concepts......................................................................................................................................... 82

4.1 Introduction......................................................................................................................................... 82

4.2 Command Descriptor Block................................................................................................................ 82

4.2.1 CDB usage and structure ................................................................................................................ 82

4.2.2 Fixed length CDB formats ............................................................................................................... 83

4.2.2.1 Formats for 6-byte CDBs.............................................................................................................. 83

4.2.2.1.1 Generic 6-byte CDB format ....................................................................................................... 83

4.2.2.1.2 Typical 6-byte CDB format ........................................................................................................ 83

4.2.2.2 Formats for 10-byte CDBs............................................................................................................ 84

4.2.2.2.1 Generic 10-byte CDB format ..................................................................................................... 84

4.2.2.2.2 Typical 10-byte CDB format ...................................................................................................... 85

4.2.2.3 Formats for 12-byte CDBs............................................................................................................ 86

4.2.2.3.1 Generic 12-byte CDB format ..................................................................................................... 86

4.2.2.3.2 Typical 12-byte CDB format ...................................................................................................... 86

4.2.2.3.3 MAINTENANCE IN CDB format ................................................................................................ 87

4.2.2.3.4 MAINTENANCE OUT CDB format ............................................................................................ 88

4.2.2.3.5 SERVICE ACTION IN(12) CDB format .....................................................................................88

4.2.2.3.6 SERVICE ACTION OUT(12) CDB format ................................................................................. 89

4.2.2.4 Formats for 16-byte CDBs............................................................................................................ 89

4.2.2.4.1 Generic 16-byte CDB format ..................................................................................................... 89

4.2.2.4.2 Typical 16-byte CDB format, if eight-byte LBAs not supported ................................................. 90

4.2.2.4.3 Typical 16-byte CDB format with eight-byte LBAs supported.................................................... 91

4.2.2.4.4 SERVICE ACTION IN(16) CDB format .....................................................................................92

---------------------- Page: 4 ----------------------
ISO/IEC 14776-454:2018 © ISO/IEC 2018 - 3 -

4.2.2.4.5 SERVICE ACTION OUT(16) CDB format ................................................................................. 92

4.2.2.4.6 SERVICE ACTION BIDIRECTIONAL CDB format.................................................................... 93

4.2.3 Variable length CDB formats ........................................................................................................... 93

4.2.3.1 Generic variable length CDB format............................................................................................. 93

4.2.3.2 Typical 32-byte variable length CDB format ................................................................................. 95

4.2.4 Extended CDBs ............................................................................................................................... 96

4.2.4.1 XCDB model................................................................................................................................. 96

4.2.4.2 The XCDB format ......................................................................................................................... 96

4.2.5 Common CDB fields ........................................................................................................................ 98

4.2.5.1 Operation code ............................................................................................................................. 98

4.2.5.2 Service action ............................................................................................................................... 98

4.2.5.3 Logical block address ................................................................................................................... 98

4.2.5.4 Transfer length ............................................................................................................................. 99

4.2.5.5 Parameter list length..................................................................................................................... 99

4.2.5.6 Allocation length ........................................................................................................................... 99

4.3 Data field requirements ...................................................................................................................... 99

4.3.1 ASCII data field requirements.......................................................................................................... 99

4.3.2 Null data field termination and zero padding requirements ........................................................... 100

4.3.3 Variable type data field requirements ............................................................................................ 100

4.3.4 Port identifier field requirements.................................................................................................... 100

4.4 Secure random numbers .................................................................................................................. 101

4.5 Sense data ....................................................................................................................................... 101

4.5.1 Sense data introduction................................................................................................................. 101

4.5.2 Descriptor format sense data ........................................................................................................ 102

4.5.2.1 Descriptor format sense data overview ...................................................................................... 102

4.5.2.2 Information sense data descriptor .............................................................................................. 104

4.5.2.3 Command-specific information sense data descriptor................................................................ 105

4.5.2.4 Sense key specific sense data descriptor .................................................................................. 106

4.5.2.4.1 Sense key specific sense data descriptor overview ................................................................ 106

4.5.2.4.2 Field pointer sense key specific information............................................................................ 107

4.5.2.4.3 Actual retry count sense key specific information....................................................................108

4.5.2.4.4 Progress indication sense key specific information ................................................................. 108

4.5.2.4.5 Segment pointer sense key specific information ..................................................................... 109

4.5.2.4.6 Unit attention condition queue overflow sense key specific information.................................. 109

4.5.2.5 Field replaceable unit sense data descriptor .............................................................................. 110

4.5.2.6 Another progress indication sense data descriptor .................................................................... 110

4.5.2.7 Forwarded sense data................................................................................................................ 111

4.5.2.8 Vendor specific sense data descriptors...................................................................................... 112

4.5.3 Fixed format sense data ................................................................................................................ 113

4.5.4 Returning a value in the INFORMATION field in the sense data ....................................................... 114

4.5.5 Returning a value in the COMMAND-SPECIFIC INFORMATION field in the sense data ......................... 115

4.5.6 Current information........................................................................................................................ 115

4.5.7 Deferred errors .............................................................................................................................. 116

4.5.8 Sense key and additional sense code definitions..........................................................................117

5 Model common to all device types............................................................................................................. 136

5.1 Introduction to the model common to all device types...................................................................... 136

5.1.1 Overview........................................................................................................................................ 136

5.1.2 Important commands for all SCSI device servers ......................................................................... 136

5.1.2.1 Commands implemented by all SCSI device servers................................................................. 136

5.1.2.2 Commands recommended for all SCSI device servers.............................................................. 136

5.1.2.3 Using the INQUIRY command.................................................................................................... 136

5.1.2.4 Using the REPORT LUNS command ......................................................................................... 136

5.1.2.5 Using the TEST UNIT READY command................................................................................... 137

5.1.2.6 Using the REQUEST SENSE command .................................................................................... 137

5.1.3 Implicit head of queue ................................................................................................................... 137

5.2 Device clocks and timestamps ......................................................................................................... 137

---------------------- Page: 5 ----------------------
ISO/IEC 14776-454:2018 © ISO/IEC 2018 - 4 -

5.3 Device specific background functions .............................................................................................. 138

5.3.1 Introduction.................................................................................................................................... 138

5.3.2 Suspending and resuming device specific background functions ................................................. 139

5.4 Downloading and activating microcode ............................................................................................ 140

5.4.1 Downloading microcode ................................................................................................................ 140

5.4.2 Activating microcode ..................................................................................................................... 144

5.5 Error history ...................................................................................................................................... 145

5.5.1 Error history overview.................................................................................................................... 145

5.5.2 Retrieving error history with the READ BUFFER command.......................................................... 145

5.5.3 Adding application client error history with the WRITE BUFFER command ................................. 148

5.5.4 Clearing error history with the WRITE BUFFER command........................................................... 148

5.6 Identifying information ...................................................................................................................... 149

5.7 Medium auxiliary memory................................................................................................................. 149

5.8 Parameter rounding.......................................................................................................................... 150

5.9 Parsing variable length parameter lists and parameter data ............................................................ 151

5.10 Pollable condition information......................................................................................................... 152

5.10.1 Information that does not represent an exception condition........................................................ 152

5.10.2 REQUEST SENSE pollable sense data ...................................................................................... 152

5.10.2.1 Making information available for the REQUEST SENSE command ........................................ 152

5.10.2.2 Selecting pollable sense data to return .................................................................................... 152

5.10.2.3 Returning one or more progress indications............................................................................. 152

5.10.3 Log parameter pollable device condition information .................................................................. 153

5.11 Power management ....................................................................................................................... 153

5.11.1 Power management overview ..................................................................................................... 153

5.11.2 Power consumption management ............................................................................................... 153

5.11.3 Power conditions management ................................................................................................... 154

5.11.4 Active power condition................................................................................................................. 155

5.11.5 Idle power conditions................................................................................................................... 155

5.11.6 Standby power conditions ........................................................................................................... 156

5.11.7 Power condition pollable sense data ........................................................................................... 156

5.11.8 Power condition state machine.................................................................................................... 157

5.11.8.1 Power condition state machine overview ................................................................................. 157

5.11.8.2 PC0:Powered_On state............................................................................................................ 158

5.11.8.2.1 PC0:Powered_On state description ...................................................................................... 158

5.11.8.2.2 Transition PC0:Powered_On to PC4:Active_Wait................................................................. 159

5.11.8.3 PC1:Active state ....................................................................................................................... 159

5.11.8.3.1 PC1:Active state description.................................................................................................. 159

5.11.8.3.2 Transition PC1:Active to PC5:Wait_Idle ................................................................................ 159

5.11.8.3.3 Transition PC1:Active to PC6:Wait_Standby......................................................................... 159

5.11.8.4 PC2:Idle state ........................................................................................................................... 159

5.11.8.4.1 PC2:Idle state description...................................................................................................... 159

5.11.8.4.2 Transition PC2:Idle to PC4:Active_Wait ................................................................................ 160

5.11.8.4.3 Transition PC2:Idle to PC5:Wait_Idle .................................................................................... 160

5.11.8.4.4 Transition PC2:Idle to PC6:Wait_Standby.............................................................................160

5.11.8.5 PC3:Standby state.................................................................................................................... 160

5.11.8.5.1 PC3:Standby state description .............................................................................................. 160

5.11.8.5.2 Transition PC3:Standby to PC4:Active_Wait......................................................................... 161

5.11.8.5.3 Transition PC3:Standby to PC6:Wait_Standby ..................................................................... 161

5.11.8.6 PC4:Active_Wait state.............................................................................................................. 161

5.11.8.6.1 PC4:Active_Wait state description ........................................................................................ 161

5.11.8.6.2 Transition PC4:Active_Wait to PC1:Active ............................................................................162

5.11.8.7 PC5:Wait_Idle state.................................................................................................................. 162

5.11.8.7.1 PC5:Wait_Idle state description ............................................................................................ 162

5.11.8.7.2 Transition PC5:Wait_Idle to PC2:Idle .................................................................................... 162

5.11.8.8 PC6:Wait_Standby state .......................................................................................................... 163

5.11.8.8.1 PC6:Wait_Standby state description ..................................................................................... 163

5.11.8.8.2 Transition PC6:Wait_Standby to PC3:Standby ..................................................................... 163

---------------------- Page: 6 ----------------------
ISO/IEC 14776-454:2018 © ISO/IEC 2018 - 5 -

5.12 Reservations................................................................................................................................... 163

5.12.1 Persistent Reservations overview ............................................................................................... 163

5.12.2 Third party persistent reservations .............................................................................................. 168

5.12.3 Exceptions to SPC-2 RESERVE and RELEASE behavior.......................................................... 168

5.12.4 Persistent reservations interactions with IKEv2-SCSI SA creation ............................................. 169

5.12.5 Preserving persistent reservations and registrations................................................................... 169

5.12.5.1 Requirements for preserving persistent reservations and registrations ................................... 169

5.12.5.2 Preserving persistent reservations and registrations through power loss ................................ 169

5.12.5.3 Nonvolatile memory considerations for preserving persistent reservations and registrations.. 170

5.12.5.4 Loss of persistent reservation information................................................................................ 170

5.12.5.4.1 Loss of persistent reservation information overview.............................................................. 170

5.12.5.4.2 Recoverable loss of persistent reservation information......................................................... 170

5.12.5.4.3 Unrecoverable loss of persistent reservation information overview ...................................... 171

5.12.6 Finding persistent reservations and reservation keys ................................................................. 171

5.12.6.1 Summary of commands for finding persistent reservations and reservation keys ................... 171

5.12.6.2 Reporting reservation keys....................................................................................................... 171

5.12.6.3 Reporting the persistent reservation......................................................................................... 171

5.12.6.4 Reporting full status.................................................................................................................. 172

5.12.7 Registering .................................................................................................................................. 172

5.12.8 Registering and moving the reservation ...................................................................................... 176

5.12.9 Reserving .................................................................................................................................... 177

5.12.10 Persistent reservation holder..................................................................................................... 178

5.12.11 Releasing persistent reservations and removing registrations
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.