Text preview for : Deskstar (DSAS) Interface Specification v4.0.pdf part of IBM Deskstar (DSAS) Interface Specification v4.0 IBM Deskstar (DSAS) Interface Specification v4.0.pdf
Back to : Deskstar (DSAS) Interface | Home
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
Satsuma SCSI
DASD Interface Specification
Release 4.00
Basic Features
PSSD Development.
Fujisawa.
FU-R89.
PN 66G9703 EC D60946
1 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
1
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
EC HISTORY
REV. 1.0 P/N. 66G9703 12/22/93
REV. 1.01 P/N. 66G9703 01/25/94
REV. 2.00 P/N. 66G9703 03/07/94
REV. 3.00 P/N. 66G9703 03/28/94
REV. 3.01 P/N. 66G9703 04/05/94
REV. 3.02 P/N. 66G9703 04/13/94
REV. 3.03 P/N. 66G9703 04/15/94
REV. 4.00 P/N. 66G9703 06/08/94
PN 66G9703 EC D60946
2 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
2
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
Contents
1.0 SCSI COMMAND SET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1 Flag and Link Bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3 FORMAT UNIT (04) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.1 Defect List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4 INQUIRY (12) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.5 MODE SENSE (1A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.5.1 Mode Parameter List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.6 MODE SELECT (15) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.7 PRE-FETCH (34) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.8 READ (08) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.9 READ CAPACITY (25) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.10 READ DEFECT DATA (37) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.10.1 Defect List Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.10.2 Bytes from Index Format (100b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.10.3 Physical Sector Format (101b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.11 READ EXTENDED (28) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.12 READ BUFFER (3C) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
1.12.1 Combined Header And Data (Mode 000) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
1.12.2 Read Data (Mode 010b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
1.12.3 Descriptor (Mode 011b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
1.13 READ LONG (3E) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
1.14 REASSIGN BLOCKS (07) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
1.15 RELEASE (17) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
1.16 REQUEST SENSE (03) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
1.17 RESERVE (16) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
1.17.1 Command Processing While Reserved . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
1.18 REZERO UNIT (01) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
1.19 SEEK (0B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
1.20 SEEK EXTENDED (2B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
1.21 SEND DIAGNOSTIC (1D) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
1.22 START/STOP UNIT (1B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
1.23 SYNCHRONIZE CACHE (35) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
1.24 TEST UNIT READY (00) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
1.25 VERIFY (2F) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
1.26 WRITE (0A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
1.27 WRITE EXTENDED (2A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
1.28 WRITE AND VERIFY (2E) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
1.29 WRITE BUFFER (3B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
1.29.1 Combined Header And Data (Mode 000b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
1.29.2 Write Data (Mode 010b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
PN 66G9703 EC D60946
3 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
3
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
1.29.3 Download Microcode (Mode 100b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
1.29.4 Download Microcode and Save (Mode 101b) . . . . . . . . . . . . . . . . . . . . . . . . . . 60
1.30 WRITE LONG (3F) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.0 SCSI Status Byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.0 SCSI MESSAGE SYSTEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.1 Supported Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.1.1 COMMAND COMPLETE (00) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.1.2 SYNCHRONOUS DATA TRANSFER REQUEST (01,03,01H) . . . . . . . . . . . . . . . . . . . . 66
3.1.3 SAVE DATA POINTER (02) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.1.4 RESTORE POINTERS (03) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.1.5 DISCONNECT (04) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.1.6 INITIATOR DETECTED ERROR (05) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.1.7 ABORT (06) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.1.8 MESSAGE REJECT (07) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.1.9 NO OPERATION (08) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.1.10 MESSAGE PARITY ERROR (09) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.1.11 LINKED COMMAND COMPLETE (0A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.1.12 LINKED COMMAND COMPLETE WITH FLAG (0B) . . . . . . . . . . . . . . . . . . . . . . . . 72
3.1.13 BUS DEVICE RESET (0C) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.1.14 ABORT TAG (0D) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.1.15 CLEAR QUEUE TAG (0E) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.1.16 QUEUE TAG MESSAGES(20h, 21h, 22h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.1.17 IDENTIFY (80 - FF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.2 Supported Message Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.3 Attention Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.4 SCSI Bus Related Error Handling Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.4.1 Unexpected BUS FREE Phase Error Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.4.2 MESSAGE OUT Phase Parity Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.4.3 MESSAGE IN Phase Parity Error (Message Parity Error) . . . . . . . . . . . . . . . . . . . . . 77
3.4.4 COMMAND Phase Parity Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.4.5 DATA OUT Phase Parity Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.4.6 INITIATOR DETECTED ERROR Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3.4.7 MESSAGE REJECT Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.0 Additional Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.1 SCSI Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.1.1 Priority of SCSI Status Byte Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.1.2 Invalid LUN in Identify Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.1.3 Incorrect Initiator Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.1.4 Command Processing During Execution of Active I/O process . . . . . . . . . . . . . . . . . 82
4.1.5 Unit Attention Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
4.1.6 Command Processing During Start-up and Format Operations . . . . . . . . . . . . . . . . . 85
4.1.7 Internal Error Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.1.8 Deferred error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
PN 66G9703 EC D60946
4 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
4
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
4.1.9 Degraded Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.1.10 Degrade mode handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.1.11 Command Processing While Reserved . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.2 Priority Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.3 Command queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.3.1 Queue depth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.3.2 Tagged queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.3.3 Untagged queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.3.4 Command queuing rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
4.3.5 Queue Full status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.3.6 Device behaviour on Command queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.4 Command reordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.4.1 Reorder method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.4.2 The restriction of reordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.4.3 Reordering general rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.5 Concurrent I/O Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.6 Back to Back Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.7 Write Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.8 Power Saving Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.8.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.9 Automatic Rewrite/Reallocate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.10 Segmented Caching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.10.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.10.2 Read Ahead . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.11 Reselection Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
4.12 Single Initiator Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.13 Non-arbitrating systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.14 Selection without ATN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.15 Multiple Initiator Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.15.1 Initiator Sense Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.15.2 Initiator Mode Select/Mode Sense Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.15.3 Initiator Data Transfer Mode Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.16 Options Jumper Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.17 Contingent allegiance Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
4.18 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
4.18.1 Reset Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
4.18.2 Reset Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
4.19 RAS Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.19.1 Power on Diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.19.2 Diagnostics Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.19.3 Diagnostics Fault Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.20 Idle Time Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.20.1 Random Seek Idle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
5.0 SCSI SENSE DATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
5.1 SCSI Sense Data Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
PN 66G9703 EC D60946
5 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
5
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
5.1.1 Sense Data Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
6.0 Recovery Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
PN 66G9703 EC D60946
6 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
6
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
Figures
1. SCSI Commands Supported . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2. SCSI Commands Supported . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3. FORMAT UNIT (04) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4. Format of Defect List Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5. Format of Defect List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
6. INQUIRY (12) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
7. MODE SENSE (1A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
8. Page Code Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
9. MODE Parameter List (Header) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
10. MODE Parameter Block Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
11. MODE Parameter Page Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
12. MODE SELECT (15) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
13. Pre-Fetch (34) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
14. READ (08) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
15. READ CAPACITY (25) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
16. Format of READ CAPACITY command reply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
17. Read Defect Data (37) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
18. Defect List Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
19. Defect Descriptors of Bytes from Index Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
20. Defect Descriptors of Physical Sector Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
21. Read Extended (28) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
22. READ BUFFER (3C) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
23. READ BUFFER Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
24. READ BUFFER DESCRIPTOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
25. READ LONG (3E) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
26. REASSIGN BLOCKS (07) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
27. Format of REASSIGN BLOCKS data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
28. RELEASE (17) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
29. REQUEST SENSE (03) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
30. RESERVE (16) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
31. REZERO UNIT (01) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
32. SEEK (0B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
33. SEEK EXTENDED (2B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
34. SEND DIAGNOSTIC (1D) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
35. START/STOP Unit (1B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
36. SYNCHRONIZE CACHE (35) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
37. TEST UNIT READY (00) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
38. VERIFY (2F) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
39. WRITE (0A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
40. WRITE EXTENDED (2A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
41. WRITE AND VERIFY (2E) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
42. WRITE BUFFER (3B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
43. WRITE BUFFER Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
PN 66G9703 EC D60946
7 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
7
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
44. WRITE LONG (3F) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
45. SCSI Status Byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
46. Supported Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
47. Synchronous Data Transfer Request. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
48. Initiator Request/Target Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
49. Target Response to Initiator's Transfer Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
50. Queue Tag Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
51. Format of Sense Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
52. Field Pointer Bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
53. Actual Retry Count Bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
54. Format Progress Indication Bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
| 55. UEC code definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Tables
1. Read Ahead handling per each command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
PN 66G9703 EC D60946
8 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
8
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
1.0 SCSI COMMAND SET
Summaries of the SCSI commands supported by the file are listed below. where O=optional,
M=mandatory, E=extended, R=reserved and V=vendor unique. The column "SCSI-1" refers to ANSI
version 1 standard. The column "CCS" refers to the ANSI sub-committee Common Command Subset
for DASD devices. The column "SCSI-2" refers to ANSI version 1 standard.
SCSI 1 CCS SCSI 2 CODE COMMAND
M M M 04h FORMAT UNIT
E M M 12h INQUIRY
O O O 15h MODE SELECT
O O O 1Ah MODE SENSE
O O O 34h PRE FETCH
M M M 08h READ
E M M 25h READ CAPACITY
E M M 28h READ EXTENDED
R O O 3Ch READ BUFFER
R R O 37h READ DEFECT DATA
R R O 3Eh READ LONG
O O O 07h REASSIGN BLOCKS
O M M 17h RELEASE
M M M 03h REQUEST SENSE
O M M 16h RESERVE
O O O 01h REZERO UNIT
O O O 0Bh SEEK
O O O 2Bh SEEK EXTENDED
O M M 1Dh SEND DIAGNOSTICS
O O O 1Bh START/STOP UNIT
R R O 35h SYNCHRONIZE CACHE
O M M 00h TEST UNIT READY
O O O 2Fh VERIFY
M M M 0Ah WRITE
E M M 2Ah WRITE EXTENDED
O O O 2Eh WRITE AND VERIFY
R O O 3Bh WRITE BUFFER
R R O 3Fh WRITE LONG
Figure 1. SCSI Commands Supported. (In Alphabetical order)
PN 66G9703 EC D60946
9 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
9
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
SCSI 1 CCS SCSI 2 CODE COMMAND
O M M 00h TEST UNIT READY
O O O 01h REZERO UNIT
M M M 03h REQUEST SENSE
M M M 04h FORMAT UNIT
O O O 07h REASSIGN BLOCKS
M M M 08h READ
M M M 0Ah WRITE
O O O 0Bh SEEK
E M M 12h INQUIRY
O O O 15h MODE SELECT
O M M 16h RESERVE
O M M 17h RELEASE
O O O 1Ah MODE SENSE
O O O 1Bh START/STOP UNIT
O M M 1Dh SEND DIAGNOSTICS
E M M 25h READ CAPACITY
E M M 28h READ EXTENDED
E M M 2Ah WRITE EXTENDED
O O O 2Bh SEEK EXTENDED
O O O 2Eh WRITE AND VERIFY
O O O 2Fh VERIFY
O O O 34h PRE FETCH
R R O 35h SYNCHRONIZE CACHE
R R O 37h READ DEFECT DATA
R O O 3Bh WRITE BUFFER
R O O 3Ch READ BUFFER
R R O 3Eh READ LONG
R R O 3Fh WRITE LONG
Figure 2. SCSI Commands Supported. (By Command Code)
1.1 Flag and Link Bits
Many of the structures in this section have fields names FLAG and LINK. The meaning of these fields
is defined below.
FLAG The Flag bit specifies which message the target shall return to the initiator if the link bit is one
and the command completes without any error. If Link is zero, Flag must also be zero. If Link
is one and the command terminates successfully, the file will send either the LINKED
COMMAND COMPLETE message (FLAG=0) or the LINKED COMMAND COMPLETE WITH
FLAG message (FLAG=1). Typically this bit is used to cause an interrupt in the initiator
between linked commands.
PN 66G9703 EC D60946
10 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
10
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
LINK This bit is set to one to indicate that the initiator desires an automatic link to the next
command upon successful completion of the current command. Upon successful completion
of the command, the file will return INTERMEDIATE GOOD status and then send one of the two
messages defined under Flag above.
Upon unsuccessful completion of the command, the file will return CHECK CONDITION status
or RESERVATION CONFLICT status and then send the COMMAND COMPLETE message. No
further commands in the chain are executed.
1.2 Abbreviations
These abbreviations are used throughout the following sections:
LUN. Logical Unit Number. An encoded three bit identifier for the logical unit.
VU. Vendor Unique bits.
LBA. Logical Block Address.
RSVD. Reserved.
MSB. Most Significant bit.
LSB. Least Significant bit.
PN 66G9703 EC D60946
11 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
11
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
1.3 FORMAT UNIT (04)
BIT
7 6 5 4 3 2 1 0
BYTE 0 Command code (04h)
BYTE 1 LUN Fmt Cmp List Format
Data Lst
BYTE 2 VU = 0
BYTE 3 (MSB)
BYTE 4 Interleave Factor (LSB)
BYTE 5 VU = 0 RSVD = 0 Flag Link
Figure 3. FORMAT UNIT (04)
The FORMAT command performs a physical formatting of the file media. This includes handling of
defective sectors, and the overwriting of all data areas with a constant data pattern. (Reserved areas
of the media are not affected by the FORMAT command.)
FmtDt set to one specifies that a Data Out phase follows the Command phase. The Data Out phase
consists of a defect list header followed by zero defect descriptors. FmtDt set to zero specifies that
no Data Out phase follows.
Cmplt set to one specifies that the GList (Grown Defect List) existing prior to the format not be
used and is discarded. The Drive is formatted with PList and DList (if specified). DList becomes the
new GList.
Note: The file manages two internal defect lists and one external. The primary defect list ("P"List)
is created at time of manufacture and cannot be altered. The grown defect list ("G"List) is built
after time of manufacture by the Initiators use of the REASSIGN BLOCK command and the Auto-
matic Reallocate function, The data defect list ("D"List) is an external list. It is supplied by the
initiator in the DATA OUT phase of the FORMAT UNIT command.
List Format specifies the format of the defect descriptor transferred to the Target when FmtData bit
is set to one.
Interleave Factor may be zero or one, either of which specifies an interleave of 1:1. Other Inter-
leave Factors are not supported because of the extensive buffering implemented in the file.
1.3.1 Defect List
PN 66G9703 EC D60946
12 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
12
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
BIT
7 6 5 4 3 2 1 0
BYTE 0 Reserved = 0
BYTE 1 FOV DPRY DCRT STPF IP DSP Immd 0
=0 =0 =0
BYTE 2 Defect list length MSB
BYTE 3 Defect list length LSB
Figure 4. Format of Defect List Header. Format of the defect list header sent during the data out phase when
FmtDt set to one.
BIT
7 6 5 4 3 2 1 0
BYTE 0 3 Defect Descriptor 0
BYTE 4n Defect Descriptor n
4n + 3
Figure 5. Format of Defect List. Format of the defect list sent during the data out phase when FmtDt set to one.
The Target has a limited implementation of the Format Option bits located in Bits 2 through 7 of Byte 1
of the Defect List Header (See Figure 4). If the Initiator attempts to select any function not implemented
by the Target, the Target terminate the command with Check Condition Status . The sense key is set to
Illegal Request and the additional sense code is set to Invalid Field in Parameter List .
FOV (Format Options Valid) bit of zero causes the Target to verify that the setting for the DPRY
(Disable Primary), DCRT (Disable Certification), STPF (stop Format), IP (Initialize Pattern), and DSP
(Disable Saving Parameters) bits are zero. If any of these bits are not zero, the Target terminates
the command with Check Condition Status . The sense key is set to Illegal Request and the addi-
tional sense code is set to Invalid Field in Parameter List .
Note: When FOV bit is one there is only one combination of the DPRY, DCRT, STPF, IP and DSP
bits allowed. Any other combinations return a Check Condition Status With a sense key of Illegal
Request and an additional sense code of Invalid Field In Parameter List . The supported combina-
tion are:
DPRY=0 DCRT=1 STPF=1 IP=0 DSP=0
PN 66G9703 EC D60946
13 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
13
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
DPRY(Disable Primary) bit set to zero indicates that the Target does not use portions of the
medium identified as defective in the primary defect PList for Initiator addressable logical blocks.
If the Target cannot locate the PList or it cannot determine whether a PList exists, the target termi-
nates the Format Unit command as described for STPF=1.
DCRT (Disable certification) bit must be set to one. The Target does not generate a CList (certif-
ication list ) nor perform a certification process while executing the Format Unit Command.
STPF (stop Format) bit must be set to one. If one or both of the following conditions occurs, the
Target terminates the Format Unit command with Check Condition Status . The sense key is set to
Medium Error and the additional sense code is set to either Defect List Not Found if the first condi-
tion occurred, or Defect List Error if the second condition occurred.
- The Target cannot locate a required defect list nor determine that the list exists.
- The Target encounters an unrecoverable error while accessing a required defect list.
IP (Initialization Pattern) bit must be set to zero. The Target initializes all data with zeros.
DSP (Disable Saving Parameters) bit must be set to zero. The Target saves all the Mode Select
savable parameters during the format operation.
IMMD (immediate) bit set to zero requests that status be returned at the end of the format opera-
tion. An immediate bit set to one requests that status be returned immediately. Good Status is
returned following the CDB validation and transfer of data in the Data Out phase. If the immediate
format operation terminates in error, Deferred Error Sense data is generated. With the immediate
bit set to one, the Link bit must be set to zero.
The Defect List Length field specifies the total length in bytes of the defect descriptors that follow. The
Target has an implementation limitation for number of defect descriptors. The number of defect
descriptor shall be less than 128. The defect list length must be equal to four times the number of
defect descriptors to follow, otherwise the command is terminated with Check Condition Status The
sense key is set to Illegal Request and the additional sense code is set to Invalid Field In Parameter
List . The defect descriptors must specify the defect based on the current Format Device parameters
reported by the Mode Sense command.
PN 66G9703 EC D60946
14 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
14
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
1.4 INQUIRY (12)
BIT
7 6 5 4 3 2 1 0
BYTE 0 Command Code = 12h
BYTE 1 LUN RSVD = 0 EVPD
BYTE 2 PAGE CODE
BYTE 3 RSVD = 0
BYTE 4 ALLOCATION LENGTH
BYTE 5 VU = 0 RSVD = 0 FLAG LINK
Figure 6. INQUIRY (12)
The INQUIRY command requests the parameters of the target to be sent to the initiator.
An EVPD bit of one specifies that the file shall return the vital product data page identified by the Page
Code field in the CDB.1 Page code specifies which page of vital product data information the file shall
return.
EVPD PAGE CODE Description
0 0 The file returns the standard INQUIRY data.
0 Non Zero The file returns CHECK CONDITION status with the sense key of
ILLEGAL REQUEST and the additional sense code of INVALID FIELD IN
CDB.
1 Supported The file returns the vital product data of page code requested.
1 Unsupported The file returns CHECK CONDITION status with the sense key of
ILLEGAL REQUEST and the additional sense code of INVALID FIELD IN
CDB.
1 The available VPD pages are defined in the addendum provided for each different file model in the section
entitled Inquiry Data Format.
PN 66G9703 EC D60946
15 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
15
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
Allocation Length specifies the number of bytes that the initiator has allocated for INQUIRY data to be
returned. An allocation length of zero implies that no data is to be returned. The file will terminate the
DATA IN phase when all available INQUIRY data has been transferred or when allocation length bytes
have been transferred, whichever is less.
If an INQUIRY command is received from an initiator with a pending unit attention condition (before the
target reports CHECK CONDITION status), the file processes the INQUIRY command. The unit attention
condition is not cleared by this action.
PN 66G9703 EC D60946
16 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
16
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
1.5 MODE SENSE (1A)
BIT
7 6 5 4 3 2 1 0
BYTE 0 Command code = 1Ah
BYTE 1 LUN RSVD = 0
BYTE 2 PCF Page Code
BYTE 3 RSVD = 0
BYTE 4 Allocation Length
BYTE 5 VU = 0 RSVD = 0 FLAG LINK
Figure 7. MODE SENSE (1A)
The MODE SENSE command provides a means for the file to report various device parameters to the
initiator. It is the complement to the MODE SELECT command.
Allocation Length indicates the maximum number of bytes the initiator has set aside for the DATA IN
phase. A value of zero is not considered an error. If the allocation length is smaller than the amount
available, then that portion of the data up to the allocation length will be sent. It is noted that this may
result in only a portion of a multi-byte field being sent.
Page Control Field: PCF (Page Control Field) defines the type of Page Parameter values to be
returned.
PCF Meaning
00 Report current values. The file returns the current values under which the logical unit is pres-
ently configured for the page code specified. The current values returned are:
1. The parameters set in the last successful MODE SELECT command.
2. The saved values if a MODE SELECT command has not been executed since the last
power-on, hard RESET condition, or BUS DEVICE RESET message .
Note: The file will not process the Mode Select command until the completion of spin-up.
Therefore, the initiator cannot modify the current values prior to the saved values being
read in.
01 Report changeable value. The file returns the changeable values for the page code specified.
The page requested shall be returned containing information that indicate which fields are
changeable. All bits of parameters that are changeable shall be set to one. Parameters that
PN 66G9703 EC D60946
17 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
17
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
are defined by the file shall be set to zero. If any part of a field is changeable all bits in that
field shall be set to one.
Note: For a value field such as the buffer ratios of page 2, the bit field will not indicate the
range of supported values but rather that the field is supported.
10 Report default value. The file returns the default values for the page code specified. The
parameters not supported by the file are set to zero.
11 Report saved value. The file returns the saved value for the page code specified.
Saved values are one of following :
the values saved as a result of MODE SELECT command
identical to the default values
zero when the parameters are not supported
The Page Length byte value of each page returned by the file indicates up to which fields are
supported on that page.
Page Code: This field specifies which page or pages to return. Page code usage is defined in
Figure 8.
Page Code Description
01h 38h Return specific page.
3Fh Return all available pages.
Figure 8. Page Code Usage
1.5.1 Mode Parameter List
The mode parameter list contain a header, followed by zero or more block descriptors, followed by
zero or more variable-length pages.
1.5.1.1 HEADER
PN 66G9703 EC D60946
18 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
18
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
7 6 5 4 3 2 1 0
BYTE 0 Mode Data Length
BYTE 1 Medium Type = 0
BYTE 2 WP RSVD = 0
BYTE 3 Block Descriptor Length (= 0 or 8)
Figure 9. MODE Parameter List (Header)
Mode Data Length. When using the MODE SENSE command, the mode data length field specifies
the length in bytes of the following data that is available to be transferred. The mode data length
does not include the length byte itself. When using the MODE SELECT command, this field is
reserved.
Medium Type field is always set to zero in the file. (Default medium type)
WP. When used with the MODE SELECT command, the write protect (WP) bit is reserved.
When used with the MODE SENSE command, a write protect (WP) bit of zero indicates that the
medium is write enabled.
Block Descriptor Length. This field specifies the length in bytes of the block descriptors.
When used with the MODE SELECT command, zero or eight are supported by the file.
When used with the MODE SENSE command, the file returns eight to indicate that only a single
block descriptor is available.
1.5.1.2 Block Descriptor
BYTE 0 Density code = 0
BYTE 1 Number of Blocks (MSB)
BYTE 2
BYTE 3 (LSB)
BYTE 4 RSVD = 0
BYTE 5 Block Length =
BYTE 6
BYTE 7 200h
Figure 10. MODE Parameter Block Descriptor
PN 66G9703 EC D60946
19 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
19
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
The Block descriptor provides formatting information about the Number of Blocks (user addressable) to
format at the specified Block Length.
Number of Blocks
When used with the MODE SELECT command, the Number of Blocks field must be;
- Zero to indicate all available blocks
- The exact number of blocks in the data area of the file, which can be obtained with the MODE
SENSE command.
Any other value is invalid, and causes the command to fail with CHECK CONDITION status.
When used with the MODE SENSE command, the field contain exact number of blocks.
Block Length
When used with the MODE SELECT command, the Block length field must contain 512, or the file
will terminate the command with CHECK CONDITION status.
When used with the MODE SENSE command, the field will return always contain 512 .
1.5.1.3 Page Descriptor
BYTE 0 PS RSVD=0 Page Code
BYTE 1 Page Length
BYTE Mode Parameters
2 n
Figure 11. MODE Parameter Page Format
Each mode page contains a page code, a page length, and a set of mode parameters.
When using the MODE SENSE command, a parameter savable (PS) bit of one indicates that the mode
page can be saved by the file in the reserved area of the file.
A PS bit of zero indicates that the supported parameters cannot be saved. When using the MODE
SELECT command, the PS bit is reserved (zero).
The pages supported are described in the product specific specification.
PN 66G9703 EC D60946
20 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
20
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
1.6 MODE SELECT (15)
BIT
7 6 5 4 3 2 1 0
BYTE 0 Command Code = 15h
BYTE 1 LUN PF=1 RSVD = 0 SP
BYTE 2 RSVD = 0
BYTE 3 RSVD = 0
BYTE 4 Parameter List Length
BYTE 5 VU = 0 RSVD = 0 FLAG LINK
Figure 12. MODE SELECT (15)
The MODE SELECT command provides a means for the initiator to specify LUN or device parameters to
the Target. It also allows an Initiator to specify options the Target uses in error recovery and Caching.
There is a single set of Mode Page parameters shared by all initiators.
PF A PF(Page Format) bit value of 1 indicates the data sent by the Initiator after the Mode
Select Header and the Block Descriptor, if any, complies to the Page Format. The Target
ignores this field since it only accepts mode parameters in the Page Format.
SP Save Pages. This indicates;
0 The drive shall not save the pages sent during the Data Out phase but will use them
for all following commands until the power is removed, a reset is received or a new
mode select command is received.
1 The drive will save the data in the reserved area of the disk. It will be used for all
following commands until another mode select command is issued, this information is
maintained over a power cycle or reset of the file.
Parameter List Length
This specifies the number of bytes to be sent from the initiator. A parameter list length of
zero suppresses data transfer and is not considered as an error.
The MODE SELECT parameter list contains a four-byte header, followed by zero or one block
descriptor followed by zero or more pages. The pages which are valid with this command are defined
in the addendum under the heading Mode Select Data. as they vary with the file model.
PN 66G9703 EC D60946
21 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
21
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
1.6.1.1 Application Note
The initiator should issue a MODE SENSE command requesting all Changeable values (see PCF field in
byte two of the CDB in 1.5, "MODE SENSE (1A)" on page 17) prior to issuing a MODE SELECT
command. This is necessary to find out which pages are implemented by the file and the length of
those pages. The file will return, in the Pages of the MODE SENSE command, the number of bytes
supported for each Page. The Page Length set by the initiator in the MODE SELECT command must be
the exact value as that returned by the file in MODE SENSE Page Length. If this is not true, the file will
return CHECK CONDITION status with sense key of ILLEGAL REQUEST. See 1.5, "MODE SENSE (1A)"
on page 17.
Note: If an initiator sends a MODE SELECT command that changes any parameters that apply to other
initiators, the file shall generate an unit attention condition for all initiators except the one that issued
the MODE SELECT command. The file shall set the additional sense code to PARAMETERS CHANGED
(2Ah).
PN 66G9703 EC D60946
22 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
22
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
1.7 PRE-FETCH (34)
BIT
7 6 5 4 3 2 1 0
BYTE 0 Command Code = 34h
BYTE 1 LUN Reserved = 0 Immed RelAdr
= 0
BYTE 2 (MSB) Logical Block Address
BYTE 3
BYTE 4
BYTE 5 (LSB)
BYTE 6 Reserved = 0
BYTE 7 (MSB) Transfer Length
BYTE 8 (LSB)
BYTE 9 VU = 0 Reserved = 0 FLAG LINK
Figure 13. Pre-Fetch (34)
The PRE-FETCH command requests the file to transfer data to the cache. No data is transferred to the
initiator.
Immed Immediate.
If the Immediate (Immed) bit of the CDB is zero:
If an error occurs while reading,error recovery procedures are attempted.
The Drive returns GOOD status or CHECK CONDITION status based on the
setting of the MODE SELECT Page 1 parameters.
If there is enough room in the segment for all of the Requested Data or if the
Transfer Length is zero and no error occurs while reading,the Drive returns
CONDITION MET status when the command completes.
If there is not enough room in the segment,the Transfer Length is not zero,
and no error occurred while reading,the Drive returns GOOD status when the
command completes.
If the Immediate (Immed) bit of the CDB is one:
If there is enough room in the segment for all of the Requested Data or if the
Transfer Length is zero,the Drive returns CONDITION MET status as soon as
the CDB is verified.
PN 66G9703 EC D60946
23 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
23
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
If there is not enough room in the segment and the Transfer Length is not
zero,the Drive returns GOOD status as soon as the CDB is verified.
The reading of data is handled the same as Read-Ahead operation.This
implies the prefetch may be terminated upon receipt of another command.
if an error is encountered:
1. The file terminates the Pre-Fetch operation and does not attempt to
recover the data.
2. The error is not reported to the Initiator for the current command. (the
error will be reported during the next command if the next command is a
Read command that requests the block which encountered the error.)
3. The blocks which were successfully read prior to the block in error are
retained in the cache.
RelAdr Relative Block Address. Must be set to zero, indicating that the logical block
address field specifies the first logical block of the range of logical blocks to be
operated on by this command. Relative address is not supported.
Transfer length The transfer length field specifies the number of contiguous blocks of data that
are to be transferred into the cache. A transfer length of zero indicates that
blocks are to be transferred into the cache until the segment is filled or there are
no more blocks on the media.
PN 66G9703 EC D60946
24 of 128 16JUN94
This document is the property of IBM. Its use is authorized only for responding to a request for quotation or for
the performance of work for IBM. All questions must be referred to the IBM purchasing department.
24
UNCLASSIFIED
IBM DASD INTERFACE SPECIFICATION
1.8 READ (08)
BIT
7 6 5 4 3 2 1 0
BYTE 0 Command Code = 08h
BYTE 1 LUN