1、American National StandardDeveloped byfor Information Technology SCSI / ATA Translation - 3 (SAT-3)INCITS 517-2015INCITS 517-2015INCITS 517-2015American National Standardfor Information Technology SCSI / ATA Translation - 3 (SAT-3)SecretariatInformation Technology Industry CouncilApproved May 5, 201
2、5American National Standards Institute, Inc.AbstractThis standard specifies a translation layer between SCSI and ATA protocols. This translation layer isused by storage controllers to emulate objects in a SCSI logical unit using an ATA device, providing ca-pabilities defined by SCSI standards (e.g.,
3、 the SCSI Block Commands (SBC-3) and SCSI Primary Com-mands (SPC-4) standards). For the purposes of this standard, ATA device capabilities are defined byATA8-AAM, ACS-3, ATA8-APT, ATA8-AST, and SATA-3.1.Approval of an American National Standard requires review by ANSI that therequirements for due pr
4、ocess, consensus, and other criteria for approval havebeen met by the standards developer.Consensus is established when, in the judgement of the ANSI Board ofStandards Review, substantial agreement has been reached by directly andmaterially affected interests. Substantial agreement means much more t
5、hana simple majority, but not necessarily unanimity. Consensus requires that allviews and objections be considered, and that a concerted effort be madetowards their resolution.The use of American National Standards is completely voluntary; theirexistence does not in any respect preclude anyone, whet
6、her he has approvedthe standards or not, from manufacturing, marketing, purchasing, or usingproducts, processes, or procedures not conforming to the standards.The American National Standards Institute does not develop standards andwill in no circumstances give an interpretation of any American Natio
7、nalStandard. Moreover, no person shall have the right or authority to issue aninterpretation of an American National Standard in the name of the AmericanNational Standards Institute. Requests for interpretations should beaddressed to the secretariat or sponsor whose name appears on the titlepage of
8、this standard.CAUTION NOTICE: This American National Standard may be revised orwithdrawn at any time. The procedures of the American National StandardsInstitute require that action be taken periodically to reaffirm, revise, orwithdraw this standard. Purchasers of American National Standards mayrecei
9、ve current information on all standards by calling or writing the AmericanNational Standards Institute.American National StandardPublished byAmerican National Standards Institute, Inc.25 West 43rd Street, New York, NY 10036Copyright 2015 by Information Technology Industry Council (ITI)All rights res
10、erved.No part of this publication may be reproduced in anyform, in an electronic retrieval system or otherwise,without prior written permission of ITI, 1101 K Street NW, Suite 610, Washington, DC 20005. Printed in the United States of AmericaCAUTION: The developers of this standard have requested th
11、at holders of patents that may be re-quired for the implementation of the standard disclose such patents to the publisher. However, nei-ther the developers nor the publisher have undertaken a patent search in order to identify which, ifany, patents may apply to this standard. As of the date of publi
12、cation of this standard, followingcalls for the identification of patents that may be required for the implementation of the standard,notice of one or more such claims has been received. By publication of this standard, no positionis taken with respect to the validity of this claim or of any rights
13、in connection therewith. The knownpatent holder(s) has (have), however, filed a statement of willingness to grant a license underthese rights on reasonable and nondiscriminatory terms and conditions to applicants desiring to ob-tain such a license. Details may be obtained from the publisher. No furt
14、her patent search is con-ducted by the developer or publisher in respect to any standard it processes. No representation ismade or implied that this is the only license that may be required to avoid infringement in the use ofthis standard.iContentsPage1 Scope 12 Normative References 42.1 Normative r
15、eferences . 42.2 Approved references 42.3 References under development . 42.4 Other references 53 Definitions, symbols, abbreviations, and conventions . 63.1 Definitions 63.2 Symbols and abbreviations 113.3 Keywords . 123.4 SAT specific terminology 123.5 Conventions . 123.5.1 Overview . 123.5.2 Nume
16、ric conventions . 133.5.3 Bit and byte ordering . 133.5.4 Notation for byte encoded character strings 153.5.5 Notation for command descriptions . 153.5.6 Use of field names defined in ATA standards and specifications 163.5.7 Flowcharts . 174 General . 185 SCSI architecture 195.1 Overview 195.2 Multi
17、-Initiator Configurations . 205.3 Unit attention condition . 215.4 Handling errors in ATA commands . 215.5 ATA nexus loss 215.6 ATA hardware and software reset processing . 225.7 Maximum LBA 225.8 Translation of Large Physical Sectors 225.9 Reservations 275.10 Association between commands and CbCS p
18、ermission bits . 276 Command management model . 286.1 Overview 286.2 Multiple command processing 286.2.1 Comparison of SCSI task set management and ATA queuing . 286.2.2 Command translation overview . 286.2.3 Mapping of SCSI commands to ATA queued commands . 296.2.4 Commands the SATL queues internal
19、ly 296.2.5 Command queuing with multiple I_T nexuses . 296.2.6 Collateral abort with ATA queued commands . 296.3 Command priority . 306.4 Task management functions 306.4.1 Task management functions overview 306.4.2 Aborting ATA queued commands . 316.4.3 Aborting ATA non-queued commands 316.4.4 ABORT
20、 TASK 316.4.5 ABORT TASK SET 326.4.6 CLEAR ACA 326.4.7 CLEAR TASK SET 32ii6.4.8 I_T NEXUS RESET . 336.4.9 LOGICAL UNIT RESET 336.4.10 QUERY TASK . 346.4.11 QUERY TASK SET . 346.4.12 QUERY ASYNCHRONOUS EVENT . 346.4.13 Reset task management functions 346.5 CONTROL Byte 356.6 Conditions resulting from
21、 SCSI events translations . 356.6.1 Conditions resulting from SCSI events translations overview . 356.6.2 Hard reset 356.6.3 I_T nexus loss . 356.6.4 Logical unit reset . 366.6.5 Power loss expected . 366.7 Medium access and stopped state . 367 Summary of SCSI / ATA command mappings 378 SCSI Primary
22、 Commands (SPC) command mapping . 398.1 INQUIRY command 398.1.1 INQUIRY command overview . 398.1.2 Standard INQUIRY data 408.2 LOG SELECT command 428.2.1 LOG SELECT command overview 428.2.2 PC field translations 438.2.3 PAGE CODE field and SUBPAGE CODE field translations . 438.3 LOG SENSE command 43
23、8.3.1 LOG SENSE command overview 438.3.2 PC (page control) field 448.3.3 PAGE CODE and SUB PAGE CODE fields . 448.4 MODE SELECT (6) command . 458.4.1 MODE SELECT (6) command overview . 458.4.2 MODE SELECT (6) CDB fields . 458.5 MODE SELECT (10) command . 458.6 MODE SENSE (6) command . 468.6.1 MODE S
24、ENSE (6) command overview . 468.6.2 MODE SENSE (6) CDB fields . 468.7 MODE SENSE (10) command . 468.8 READ BUFFER command . 478.8.1 READ BUFFER command overview .478.8.2 MODE field 488.8.2.1 MODE field overview 488.8.2.2 Data mode 488.8.2.3 Descriptor mode . 488.9 REPORT TIMESTAMP command 488.9.1 RE
25、PORT TIMESTAMP command overview . 488.9.2 Timestamp origin . 498.10 REQUEST SENSE command 498.10.1 REQUEST SENSE command overview 498.10.2 Format operation in progress 508.10.3 SMART threshold exceeded condition 508.10.4 Stopped power condition . 518.10.5 Unit attention condition established . 518.1
26、0.6 Idle power condition 518.10.7 Standby power condition . 518.10.8 Sanitize operation in progress . 518.11 SECURITY PROTOCOL IN command . 518.11.1 ALLOCATION LENGTH field 52iii8.12 SECURITY PROTOCOL OUT command . 528.12.1 TRANSFER LENGTH field . 538.13 SEND DIAGNOSTIC command . 538.13.1 SEND DIAGN
27、OSTIC command overview . 538.13.2 SELF-TEST CODE field 558.13.3 SELFTEST bit 568.14 SET TIMESTAMP command 588.14.1 SET TIMESTAMP command overview . 588.15 TEST UNIT READY command . 588.15.1 TEST UNIT READY command overview 588.15.2 TEST UNIT READY command translation 588.16 WRITE BUFFER command 608.
28、16.1 WRITE BUFFER command overview . 608.16.2 WRITE BUFFER COMMAND TRANSLATION 618.16.2.1 MODE field . 618.16.2.2 Write data mode 02h 618.16.2.3 Download microcode mode 05h .628.16.2.4 Download microcode mode 07h .628.16.2.5 Download microcode mode 0Dh and mode 0Eh 648.16.2.6 Download microcode mode
29、 0Fh .659 SCSI Block Commands (SBC) command mapping 679.1 Translating LBA and transfer length and ATA command use constraints 679.1.1 Overview . 679.1.2 Direct logical block mapping model . 679.1.3 Indirect logical block mapping model 679.1.4 Selection of ATA block commands 679.2 FORMAT UNIT command
30、 699.2.1 FORMAT UNIT command overview 699.2.2 FORMAT UNIT parameter list . 699.2.3 FORMAT UNIT parameter list header field combinations . 709.2.4 DCRT bit 729.2.5 Initialization pattern descriptor . 729.2.5.1 Initialization pattern descriptor overview . 729.2.5.2 Initialization pattern actions 729.3
31、 READ commands overview 729.4 READ (10) command . 739.5 READ (12) command . 739.6 READ (16) command . 749.7 READ CAPACITY (10) command 749.7.1 READ CAPACITY (10) command overview 749.7.2 READ CAPACITY (10) parameter data . 759.8 READ CAPACITY (16) command 759.8.1 READ CAPACITY (16) command overview
32、759.8.2 READ CAPACITY (16) parameter data . 769.9 REASSIGN BLOCKS command 779.9.1 REASSIGN BLOCKS command overview 779.9.2 REASSIGN BLOCKS operation code .779.10 SANITIZE command 799.10.1 SANITIZE command overview 799.10.2 Sanitize using overwrite method . 809.10.2.1 OVERWRITE service action paramet
33、er list translation 809.10.2.2 Sanitize using overwrite method translation details 809.10.3 Sanitize using block erase method 819.10.4 Sanitize using cryptographic erase method 819.10.5 Exit the sanitize failure mode 829.11 START STOP UNIT command . 82iv9.11.1 START STOP UNIT command overview 829.11
34、.2 Processing ending status if an error occurs 939.11.3 START STOP UNIT START bit LOEJ bit combinations 949.11.4 NO_FLUSH translation .959.12 SYNCHRONIZE CACHE (10) command . 959.13 SYNCHRONIZE CACHE (16) command . 969.14 UNMAP command 979.14.1 UNMAP command overview . 979.14.2 Creating ATA LBA rang
35、e entries . 979.15 VERIFY (10) command 989.16 VERIFY (12) command 989.17 VERIFY (16) command 999.18 WRITE commands overview 999.19 WRITE (10) command 1019.20 WRITE (12) command 1029.21 WRITE (16) command 1039.22 WRITE AND VERIFY commands overview . 1039.23 WRITE AND VERIFY (10) command . 1049.24 WRI
36、TE AND VERIFY (12) command . 1059.25 WRITE AND VERIFY (16) command . 1069.26 WRITE LONG (10) command 1069.27 WRITE LONG (16) command 1079.28 WRITE SAME (10) command 1079.29 WRITE SAME (16) command 1089.29.1 WRITE SAME (16) command overview 1089.29.2 ANCHOR bit and UNMAP bit 1109.29.3 Writing the dat
37、a block 11010 Parameters for SAT implementations . 11210.1 Mode parameters . 11210.1.1 General information . 11210.1.2 Common mode page structures 11210.1.3 Commonly used SCSI mode pages overview . 11210.1.4 Mode parameter headers 11310.1.5 Mode parameter block descriptor fields 11410.1.6 Control mo
38、de page 11410.1.6.1 General translation . 11410.1.6.2 Extended self-test completion time . 11610.1.7 Control Extension mode page . 11610.1.8 Read-Write Error Recovery mode page 11710.1.9 Caching mode page 11810.1.10 Informational Exceptions Control mode page . 12010.1.10.1 Informational Exceptions C
39、ontrol mode page overview . 12010.1.10.2 Method of reporting informational exceptions (MRIE) 12010.1.11 Power condition mode pages 12110.1.11.1 Power condition mode pages overview 12110.1.11.2 Power condition mode page . 12110.1.11.2.1 Introduction to Power condition mode page 12110.1.11.2.2 Power c
40、ondition mode page processing if ATA EPC is supported 12110.1.11.2.2.1 Summary of ATA EPC supported processing . 12110.1.11.2.2.2 Field relationships between the ATA Power Conditions log and SCSI MODE SENSE command Power condition mode page . 12410.1.11.2.2.3 Changeable field processing 12610.1.11.2
41、.2.4 MODE SELECT processing to modify the ATA Power Conditions log . 12710.1.11.2.2.5 MODE SELECT command condition timer field translation for EPC 12810.1.11.2.3 Power condition mode page processing if ATA EPC is not supported 12810.1.11.2.4 Command completion for the Power condition mode page . 13
42、1v10.1.11.2.4.1 Summary command completion for the Power condition mode page 13110.1.11.2.4.2 Command translation errors . 13110.1.11.2.4.3 Errors returned by the ATA device . 13110.2 Log parameters 13210.2.1 Log parameters overview 13210.2.2 Application Client log page 13210.2.2.2 LOG SELECT transl
43、ation . 13310.2.2.3 LOG SENSE translation . 13410.2.3 Supported Log Pages log page . 13510.2.4 Supported Log Pages and Subpages log page . 13510.2.5 Self-Test Results log page 13610.2.5.1 Self-Test Results log page overview 13610.2.5.2 A method of determining ATA command selection for field translat
44、ions 13910.2.5.3 Sense key and additional sense code 14010.2.6 Informational Exceptions log page 14010.2.6.1 Informational Exceptions log page overview 14010.2.6.2 Additional sense code and additional sense code qualifier translations . 14110.2.6.3 Most recent temperature reading translation 14210.2
45、.7 Read Error Counters log page 14210.2.7.1 Read Error Counters log page overview 14210.2.7.2 Total Times Correction Algorithm Processed log parameter 14310.2.7.3 Total Uncorrected Errors log parameter . 14310.2.8 Temperature log page . 14410.2.8.1 Temperature log page overview . 14410.2.8.2 Current
46、 Temperature log parameter . 14410.2.8.3 Reference Temperature log parameter 14510.2.9 Solid State Media log page . 14610.2.9.1 Solid State Media log page overview . 14610.2.9.2 Percentage Used Endurance Indicator log parameter . 14610.2.10 Background Scan Results log page 14710.2.10.1 Background Sc
47、an Results log page overview 14710.2.10.2 Background Scan Status log parameter . 14710.2.11 General Statistics and Performance log page . 14810.2.11.1 General Statistics and Performance log page overview . 14810.2.11.2 General Statistics and Performance log parameters 14810.3 Vital product data para
48、meters 15010.3.1 Vital product data parameters overview 15010.3.2 Supported VPD Pages VPD page . 15010.3.3 Unit Serial Number VPD page . 15110.3.4 Device Identification VPD page . 15210.3.4.1 Device Identification VPD page overview . 15210.3.4.2 Logical unit name . 15210.3.4.2.1 Logical unit name ov
49、erview . 15210.3.4.2.2 Logical unit name derived from the world wide name . 15210.3.4.2.3 Logical unit name derived from the model number and serial number 15310.3.4.3 Examples of additional designation descriptors . 15410.3.4.3.1 Designation descriptors included by a SATL in an ATA host 15410.3.4.3.2 Designation descriptors included by a SATL in a SAS initiator device 15510.3.4.3.3 Designation descriptors included by a SATL in a SCSI to ATA protocol bridge 15610.3.5 Mode Page Policy VPD page 15610.3.6 Power Condition VPD page . 15710.3.7 Block Device Characteristics VPD page . 15910.3.8 B