Fujitsu MAN3184, MAN3735, MAN3367 User Manual

C141-E124-01EN
MAN3184, MAN3367, MAN3735 SERIES
DISK DRIVES
SCSI LOGICAL INTERFACE SPECIFICATIONS
This Product is designed, developed and manufactured as contemplated for general use, including without limitation, general office use, personal use and household use, but is not designed, developed and manufactured as contemplated for use accompanying fatal risks or dangers that, unless extremely high safety is secured, could lead directly to death, personal injury, severe physical damage or other loss (hereinafter “High Safety Required Use”), including without limitation, nuclear power core control, airplane control, air traffic control, mass transport operation control, life support, weapon launching control. You shall not use this Product without securing the sufficient safety required for the High Safety Required Use. If you wish to use this Product for High Safety Required Use, please consult with our sale person in charge before such use
The contents of this manual is subject to change without prior notice.
All Rights Reserved. Co pyright ¤ 2001 FUJITSU LIMITED
FOR SAFE OPERATION
Handling of This manual
This manual conta ins important information fo r using this p roduc t. Rea d thor oughly befo re using the product. Use this product only after thoroughly reading and understanding especially the section “Important Alert Items” in this manual. Keep this manual handy, and keep it carefully.
FUJITSU makes every effort to prevent users and bystanders from being injured or from suffering damage to their property. Use the product according to this manual.
(Proceed to the Copyright Page)
C141-E124-01EN i
Related Standards
Specifications and functions of products covered by this manual comply with the following standards.
Standard (Text) No. Name Enacting Organization
ANSI X3. 131-1986 American National Standard for Information
ANSI X3. 131-1994 American National Standard for Information
X3T9.2/85-52 Rev 4.B COMMON COMMAND SET (CCS) of the
X3T9.2 855D Rev 12 WORKING DRAFT Information
T10/1236-D Rev 12 WORKING DRAFT Information
ANSI NCITS 306­199x
X3T10/994D Rev 18 WORKING DRAFT Information
T10/1302D Rev 11 WORKING DRAFT Information
Systems --- Small Computer System Interface (SCSI)
Systems --- Small Computer System Interface-2 (SCSI-2)
Small Computer System Interface (SCSI)
Technology SCSI-3 Parallel Interface
technology SCSI Pri mary Commands-2 (SPC-2) American National Standard for Information Technolo gy --- SCSI-3 Block Commands (SBC)
technology SCSI-3 Architecture Model (SAM)
technology SCSI Parallel Interface-3 (SPI-
3)
American National Standards Institute (ANSI) American National Standards Institute (ANSI) American National Standards Institute (ANSI) American National Standards Institute (ANSI) American National Standards Institute (ANSI) American National Standards Institute (ANSI) American National Standards Institute (ANSI) American National Standards Institute (ANSI)
All Rights Reserved, Co pyright ¤ 2001 Fujitsu, Limited
C141-E124-01ENii

REVISION RECORD

Edition Date
published
01 March, 2001
Revised contents
Specification No.: C141-E124-**EN
C141-E124-01EN iii
This manual explains concerning the MAH3182/MAH3091, MAK3728 and MAJ3364/MAJ3182/ MAJ3091 series 3.5 inch hard disk drives with internal SCSI controller.
The purpose of this manual is to provide specifications of each command and detailed explanations of their functions for use of these magnetic disk drives incorporated into user systems, and to present the information necessary for creating host system software. This manual is written for users who have a basic knowledge of hard disk drives and their use in computer systems.
The composition of manuals related to these disk drives and the range of subjects covered in this manual are shown in “Manual Organization,” provided on a subsequent page. Please use these other manuals along with this manual as necessary.
Remark:
Product development of MAK3728 described in this manual has been discontinued.
Composition and Contents of This Manual
This manual is composed of the 6 chapters shown below, a glossary and a list of abbreviations.
Chapter 1 Command Processing

PREFACE

This chapter describes the basic logical specifications related to SCSI command processing in the disk drives.
Chapter 2 Data Buffer Management
This chapter describes the data buffer configuration provided in the disk drives and concerning data transfer processing functions and cache operation.
Chapter 3 Command Specifications
This chapter describes specifications of SCSI commands provided by the disk drives and how to use them.
Chapter 4 Parameter Data Formats
This chapter describes the parameter data formats provided by the disk drives and how to use them.
Chapter 5 Sense Data and Error Recovery Methods
This chapter describes the configuration and contents of sense data which report to the host system when an error occurs, etc., key information necessary for error recovery, recommended procedures for error recovery to be executed through host system software and retry processing executed internally in the disk drives for recovery
C141-E124-01ENiv
Chapter 6 Disk Media Management
This chapter describes the procedure for initializing the disk media, methods of treating media defects and data recovery methods for the disk drives.
Glossary
The glossary explains technical terms which are necessary to the reader’s understanding when reading this manual.
List of Abbreviations
This list shows the full spelling of abbreviations used in this manual.
The model name of disk drives covered by this manual differs in its ending suffix (Note 1) depending on its device type (3 types), the electrical conditions of the SCSI interface used to connect the disk drive to the host system and its capacity and data format at the time it was shipped, but in this manual, excep t in cases where models need to be especially distinguished, a representative model name (Note 2) is used. In addition, these disk drives are called Intelligent Disk Drive (IDD), “drive” or “device” in this manual.
Note 1: Model Name
M AH 3
182 MC
Interface type MP: Low voltage differential 16-bit SCSI Ultra-160/m
MC: Low voltage differential 16-bit SCSI Ultra-160/m
SCA2 connector
Formatted capacity (100 MB units)
Disk size
Type AH: 1-inch height (7,200 rpm)
AK: Full-height (10,025 rpm) AJ: 1-inch height (10,025 rpm)
C141-E124-01EN v
Note 2: Typical model name
Type model name Model name MAH3182 MAH3182MP, MAH3182MC MAH3091 MAH3091MP, MAH3091MC MAK3728 MAK3728MP, MAK3728MC MAJ3364 MAJ3364MP, MAJ3364MC MAJ3182 MAJ3182MP, MAJ3182MC MAJ3091 MAJ3091MP, MAJ3091MC
Warning Indications
The following warning indications are shown in this manual to prevent the user and other nearby persons or property from being injured or damaged.
Note “Note” indicates the most effective method of use or information that is of value to the user.
Requesting for User’s Comments
Please use the User’s Comment Form attached to the end of this manual to identify user comments including error, inaccurate and misleading information of this manual. Contact to your Fujitsu representative for additional comment forms if required.
C141-E124-01ENvi

Manual Organization

Product/
Maintenance Manual
SCSI Physical
Interface Specifications
SCSI Logical Interface
Specifications
(This Manual)
1. General Description
2. Specifications
3. Data Format
4. Installation Requirements
5. Installation
6. Diagnostics and Maintenance
7. Error Analysis
8. Principle of Operation
1. SCSI Bus
2. SCSI Messages
3. Error Recovery
1. Command Processing
2. Data Buffe r Management
3. Command Specifications
4. Parameter Data Formats
5. Sense Data Error Recovery Methods
6. Disk Media Management
C141-E124-01EN vii

CONTENTS

page
CHAPTER 1 COMMAND PROCESSING ..................................................................................1-1
1.1 Command Format .........................................................................................................1-1
1.2 Status Byte....................................................................................................................1-7
1.3 Outline of Command Processing...................................................................................1-10
1.3.1 Single commands..........................................................................................................1-10
1.3.2 Command link...............................................................................................................1-11
1.3.3 Disconnect/reconnect processing..................................................................................1-13
1.3.4 Synchronous mode data transfer/wide mode data transfer............................................1-17
1.4 Command Queuing Function........................................................................................1-19
1.4.1 Untagged queuing.........................................................................................................1-19
1.4.2 Tagged queuing.............................................................................................................1-21
1.5 UNIT ATTENTION Condition ....................................................................................1-23
1.5.1 Generation of the UNIT ATTENTION condition ........................................................1-23
1.5.2 Response and Release Condition at UNIT ATTENTION Condition Hold State..........1-24
1.5.3 UNIT ATTENTION condition multiple hold...............................................................1-25
1.6 Sense Data Hold State...................................................................................................1-26
1.6.1 Sense data hold condition.............................................................................................1-26
1.6.2 Response and release conditions at sense data hold state .............................................1-27
1.7 Command Processing Exceptions.................................................................................1-28
1.7.1 Overlapping commands ................................................................................................1-28
1.7.2 Illegal LUN specification..............................................................................................1-29
1.7.3 Reserved operation code...............................................................................................1-29
1.7.4 Command processing in the not ready state..................................................................1-29
1.7.5 Error recovery processing.............................................................................................1-31
1.7.6 Reset processing...........................................................................................................1-33
1.7.7 Fatal hardware errors....................................................................................................1-35
1.8 Data Block Addressing.................................................................................................1-36
1.8.1 Definition of data space................................................................................................1-36
1.8.2 Logical block addressing..............................................................................................1-38
CHAPTER 2 DATA BUFFER MANAGEMENT ........................................................................2-1
2.1 Data Buffer...................................................................................................................2-1
2.1.1 Data buffer configuration and basic operation..............................................................2-1
C141-E124-01EN ix
2.1.2 Operation mode setting.................................................................................................2-5
2.2 Look-Ahead Cache Feature ..........................................................................................2-7
2.2.1 Caching operation.........................................................................................................2-7
2.2.2 Caching parameters.......................................................................................................2-9
2.2.3 Look-Ahead operation, Look-Ahead volume................................................................2-10
2.3 Write Cache..................................................................................................................2-11
CHAPTER 3 COMMAND SPECIFICATIONS...........................................................................3-1
3.1 Control/Sense Commands.............................................................................................3-1
3.1.1 TEST UNIT READY (00) ............................................................................................3-1
3.1.2 INQUIRY (12)..............................................................................................................3-2
3.1.3 READ CAPACITY (25)...............................................................................................3-14
3.1.4 CHANGE DEFINITION (40).......................................................................................3-16
3.1.5 M ODE SELECT (15) ...................................................................................................3-21
3.1.6 M ODE SELECT EXT ENDED (55) .............................................................................3-30
3.1.7 MODE SENSE (1A).....................................................................................................3-32
3.1.8 MODE SENSE EXTENDED (5A)...............................................................................3-38
3.1.9 R EZERO UNIT (01).....................................................................................................3-40
3.1.10 START/STOP UNIT (1B)............................................................................................3-41
3.1.11 RESERVE (16).............................................................................................................3-43
3.1.12 RESERVE EXTENDED (56)......................................................................................3-47
3.1.13 RELEASE (17) .............................................................................................................3-48
3.1.14 RELEASE EXT ENDED (57) ......................................................................................3-49
3.1.15 REQUEST SENSE (03)................................................................................................3-50
3.1.16 LOG SELECT (4C) ......................................................................................................3-52
3.1.17 LOG SENSE (4D) ........................................................................................................3-56
3.1.18 PERSISTENT RESERVE IN (5E)...............................................................................3-58
3.1.18.1 PERSISTENT RESERVE IN service actions...............................................................3-58
3.1.18.1.1 READ KEYS................................................................................................................3-59
3.1.18.1.2 READ RESERVATIONS.............................................................................................3-59
3.1.18.2 PERSISTENT RESERVE IN parameter data for READ KEYS..................................3-59
3.1.18.3 PERSISTENT RESERVE IN parameter data for READ RESERVATION.................3-61
3.1.18.3.1 Persistent reservations scope.........................................................................................3-63
3.1.18.3.1.1 Logical unit scope.........................................................................................................3-63
3.1.18.3.1.2 Element scope (not supported)......................................................................................3-63
3.1.18.3.2 Persistent reservations type...........................................................................................3-63
3.1.19 PERSISTENT RESERVE OUT (5F)............................................................................3-65
x C141-E124-01EN
3.1.19.1 PERSISTENT RESERVE OUT service actions...........................................................3-66
3.1.19.2 PERSISTENT RESERVE OUT parameter list.............................................................3-67
3.1.20 REPORT LUNS (A0)...................................................................................................3-69
3.1.21 REPORT DEVICE IDENTIFIER (A3)........................................................................3-71
3.1.22 SET DEVICE IDENTIFIER (A4) ................................................................................3-73
3.2 Data Access Commands................................................................................................3-75
3.2.1 READ (08)....................................................................................................................3-75
3.2.2 READ EXTENDED (28)..............................................................................................3-76
3.2.3 WRITE (0A).................................................................................................................3-77
3.2.4 WRITE EXTENDED (2A)...........................................................................................3-78
3.2.5 WRITE AND VERIFY (2E).........................................................................................3-79
3.2.6 VERIFY (2F)................................................................................................................3-80
3.2.7 SEEK (0B)....................................................................................................................3-81
3.2.8 SEEK EXTENDED (2B)..............................................................................................3-82
3.2.9 SET LIMITS (33) (Not Supported)..............................................................................3-83
3.2.10 SYNCHRONIZE CACHE (35)....................................................................................3-86
3.3 Format Commands........................................................................................................3-87
3.3.1 FORMAT UNIT (04) ...................................................................................................3-87
3.3.2 REASSIGN BLOCKS (07)...........................................................................................3-98
3.3.3 READ DEFECT DATA (37)........................................................................................3-102
3.4 Maintenance, Diagnostic Commands............................................................................3-107
3.4.1 SEND DIAGNOSTIC (1D)..........................................................................................3-107
3.4.2 RECEIVE DIAGNOSTIC RESULTS (1C)..................................................................3-114
3.4.3 WRITE BUFFER (3B).................................................................................................3-118
3.4.4 READ BUFFER (3C) ...................................................................................................3-124
3.4.5 READ LONG (3E).......................................................................................................3-129
3.4.6 WRITE LONG (3F)......................................................................................................3-131
3.4.7 WRITE SAME (41)......................................................................................................3-133
CHAPTER 4 PARAMETER DATA FORMATS.........................................................................4-1
4.1 Mode Parameters..........................................................................................................4-1
4.1.1 Read/Write error recovery parameters (page code = 1)................................................4-1
4.1.2 Disconnect/reconnect parameters (page code = 2)........................................................4-11
4.1.3 Format parameter (page code = 3)................................................................................4-15
4.1.4 Drive parameter (page code = 4)..................................................................................4-19
4.1.5 Verify error recovery parameters (page code = 7).......................................................4-21
4.1.6 Caching parameters (page code = 8).............................................................................4-23
C141-E124-01EN xi
4.1.7 Control mode parameters (page code = 0A)................................................................4-29
4.1.8 Notch parameter (page code = 0C)...............................................................................4-33
4.1.9 Informational exceptions control page (page code = 1C).............................................4-35
4.1.10 Additional error recovery parameters (page code = 21)...............................................4-39
4.2 Log Parameters.............................................................................................................4-40
4.2.1 Supprot log page (X'00')...............................................................................................4-40
4.2.2 Buffer overrun / underrun page (X'01').........................................................................4-41
4.2.3 Write error count page (X'02')......................................................................................4-43
4.2.3.1 Write errors recovered without delays (Page 02, Code 0000)......................................4-43
4.2.3.2 Write errors recovered with possible delays (Page 02, Code 0001).............................4-44
4.2.3.3 Total posted write errors (Page 02, Code 0002)...........................................................4-44
4.2.3.4 Total posted recoverable write errors (Page 02, Code 0003)........................................4-45
4.2.3.5 Total write bytes processed (Page 02, Code 0005).......................................................4-45
4.2.3.6 Total posted unrecoverable write errors (Page 02, Code 0006)....................................4-46
4.2.4 Read error count page (X'03').......................................................................................4-46
4.2.4.1 Read errors recovered without delays (Page 03, Code 0000).......................................4-47
4.2.4.2 Read errors recovered with possible delays (Page 03, Code 0001)..............................4-47
4.2.4.3 Total posted read errors (Page 03, Code 0002) ............................................................4-48
4.2.4.4 Total posted recoverable read errors (Page 03, Code 0003).........................................4-48
4.2.4.5 Total read bytes processed (Page 03, Code 0005)........................................................4-49
4.2.4.6 Total posted unrecoverable read errors (Page 03, Code 0006).....................................4-49
4.2.5 Verify error count page (X'05').....................................................................................4-50
4.2.5.1 Verify errors recovered without delays (Page 05, Code 0000).....................................4-50
4.2.5.2 Vefiry errors recovered with possible delays (Page 05, Code 0001) ............................4-51
4.2.5.3 Total posted verify errors (Page 05, Code 0002)..........................................................4-51
4.2.5.4 Total posted recoverable verify errors (Page 05, Code 0003) ......................................4-52
4.2.5.5 Total verify bytes processed (Page 05, Code 0005)......................................................4-52
4.2.5.6 Total posted unrecoverable verify errors (Page 05, Code 0006) ..................................4-53
4.2.6 Non-medium error count page (X'06')..........................................................................4-53
4.2.7 Temperature page (X'0D').............................................................................................4-54
4.2.7.1 Temperature (Page 0D, Code 0000).............................................................................4-54
4.2.7.2 Reference temperature (Page 0D, Code 0001)..............................................................4-55
4.2.8 Start-stop cycle counter page (X'0E')............................................................................4-55
4.2.8.1 Date of manufacture (Page 0E, Code 0001)..................................................................4-56
4.2.8.2 Accounting date (Page 0E, Code 0002)........................................................................4-57
4.2.8.3 Specified cycle count over device lifetime (Page 0E, Code 0003) ...............................4-57
4.2.8.4 Start-stop cycle counter (Page 0E, Code 0004) ............................................................4-58
xii C141-E124-01EN
4.2.9 Application client page (X'0F') .....................................................................................4-58
4.2.9.1 General usage application client parameter data (Page 0F, Code 0000-003F).............4-59
4.2.10 Self-test result page (X'10')...........................................................................................4-59
4.2.10.1 Self-test result parameter data (Page 10, Code 0001-0014)..........................................4-60
4.2.11 SMART status page (X'2F')..........................................................................................4-61
4.2.12 SMART data page (X'38').............................................................................................4-61
CHAPTER 5 SENSE DATA ERROR RECOVERY METHODS ..............................................5-1
5.1 Sense Data ....................................................................................................................5-1
5.1.1 Sense data format..........................................................................................................5-1
5.1.2 Sense data basic information.........................................................................................5-3
5.1.3 Sense data additional information.................................................................................5-11
5.2 INIT Error Recovery Methods (Recommended) ..........................................................5-12
5.2.1 Termination status analysis and error recovery methods ..............................................5-12
5.2.2 Sense data analysis and error recovery methods...........................................................5-15
5.2.3 Error logging.................................................................................................................5-23
5.3 Disk Drive Error Recovery Processing.........................................................................5-24
5.3.1 Error states and retry processing procedures ................................................................5-24
5.3.2 Auto alternate block allocation processing ...................................................................5-25
5.3.3 Error recovery processing control.................................................................................5-27
CHAPTER 6 DISK MEDIA MANAGEMENT............................................................................6-1
6.1 Defect Management......................................................................................................6-1
6.2 Disk Media Initialization..............................................................................................6-4
6.2.1 Initialization during installation....................................................................................6-4
6.2.2 Re-initialization ............................................................................................................6-5
6.3 Data Block Verification Methods (Recommended)......................................................6-7
6.4 Alternate Block Allocation Processing.........................................................................6-9
GLOSSARY.......................................................................................................................................GL - 1
ABBREVIATIONS...........................................................................................................................AB - 1
C141-E124-01EN xiii

FIGURES

Pages
1.1 6-Byte CDB Basic Format.......................................................................................................1-2
1.2 10-Byte CDB Basic Format.....................................................................................................1-2
1.3 12-Byte CDB Basic Format.....................................................................................................1-3
1.4 Status Byte ...............................................................................................................................1-7
1.5 Data space configuration..........................................................................................................1-37
2.1 Data buffer configuration (in the case of 8 cache segments)...................................................2-2
2.2 Example of data buffer operation during read..........................................................................2-3
2.3 Example of data buffer operation during write.........................................................................2-4
2.4 Parameters for controlling reconnection timing .......................................................................2-5
2.5 Cache control parameters.........................................................................................................2-9
3.1 Standard INQUIRY data..........................................................................................................3-4
3.2 Command support data.............................................................................................................3-9
3.3 VPD information: VPD identifier list......................................................................................3-11
3.4 VPD information: device serial No.........................................................................................3-12
3.5 VPD information: operation mode..........................................................................................3-13
3.6 READ CAPACITY data ..........................................................................................................3-15
3.7 MODE SELECT parameter structure.......................................................................................3-23
3.8 MODE SELECT command (Group 0) parameter configuration..............................................3-25
3.9 MODE SELECT EXTENDED command (Group 2) parameter configuration........................3-31
3.10 MODE SENSE command (Group 0) parameter configuration................................................3-35
3.11 MODE SENSE EXTENDED command (Group 2) parameter configuration ..........................3-39
3.12 SET LIMITS command: Specifying the range where access is permitted...............................3-84
3.13 FORMAT UNIT command parameter list configuration.........................................................3-90
3.14 Defect descriptor: Byte distance from index format................................................................3-93
3.15 Defect descriptor: physical sector address format...................................................................3-94
3.16 REASSIGN BLOCK command: defect data list configuration...............................................3-99
3.17 READ DEFECT DATA command: Defect data configuration...............................................3-103
3.18 SEND DIAGNOSTIC command: parameter list configuration ..............................................3-110
3.19 SEND DIAGNOSTIC parameters: page code list...................................................................3-111
3.20 SEND DIAGNOSTIC parameters: logical/physical address conversion................................3-111
3.21 RECEIVE DIAGNOSTIC RESULTS command: Response data configuration.....................3-115
3.22 RECEIVE DIAGNOSTIC RESULTS response data: page code list......................................3-116
3.23 RECEIVE DIAGNOSTIC RESULTS response data: logical/physical address conversion....3-116
3.24 WRITE BUFFER command: buffer data (Mode = 000, 001).................................................3-119
3.25 READ BUFFER command: buffer data (Mode = 0000, 0001)...............................................3-125
3.26 READ BUFFER command: buffer descriptor..........................................................................3-127
3.27 READ BUFFER command: Echo buffer descriptor.................................................................3-128
xiv C141-E124-01EN
4.1 MODE SELECT parameters: read/ write error recovery par ameters........................................4-2
4.2 MODE SELECT parameters: disconnect/ reconnect pa rameters ..............................................4-11
4.3 MODE SELECT para meters: format parameters ....................................................................4-15
4.4 MODE SELECT para meters: drive parameters ......................................................................4-19
4.5 MODE SELECT parameters: verify error recovery parameters..............................................4-21
4.6 MODE SELECT para meters: caching parameters...................................................................4-23
4.7 MODE SELECT parameters: control mode parameters...........................................................4-29
4.8 MODE SELECT parameters: informal exception control page ..............................................4-35
4.9 MODE SELECT parameters: additional err or recovery parameters .......................................4-39
5.1 Expanded sense data format.................................................................................................. ...5-2
5.2 Sense key inherent information................................................................................................5-4
5.3 Analysis of the termination status.............................................................................................5-13

TABLES

1.1 Responses to Link Specification Commands............................................................................1-12
1.2 Types of Command and Disconnect Processing ......................................................................1-14
1.3 Sense data in not ready state ....................................................................................................1-30
1.4 Outline of SCSI Bus Error Recovery Processing.....................................................................1-31
1.5 Outline of disk drive error recovery processing.......................................................................1-32
1.6 Reset processing during write..................................................................................................1-34
3.1 MODE SENSE Data Type Specifications................................................................................3-34
3.2 Persistent reservations type codes............................................................................................3-64
3.3 PERSISTENT RESERVE OUT service action codes..............................................................3-66
3.4 PERSISTENT RESERVE OUT service action and valid parameters......................................3-68
3.5 FORMAT UNIT command defect processing .........................................................................3-96
3.6 Error recovery control flags during the self-diagnosis test.......................................................3-108
4.1 Combination of error recovery flags ........................................................................................4-7
5.1 Sense key..................................................................................................................................5-5
5.2 Sense and subsense codes ........................................................................................................5-6
5.3 Sense data error classification..................................................................................................5-16
5.4 Error recovery processing procedures......................................................................................5-19
5.5 Disk drive errors and number of retries....................................................................................5-28
C141-E124-01EN xv

CHAPTER 1 COMMAND PROCESSING

1.1 Command Format

1.2 Status Byte
1.3 Outline of Command Processing
1.4 Command Queuing Function
1.5 UNIT ATTENTION Condition
1.6 Sense Data Hold State
1.7 Command Processing Exceptions
1.8 Data Block Addressing
This chapter describes the basic logical specifications of the IDD command processing functions.
Note:
1.1 Command Format
The IDD operates as the target (TARG) on the SCSI bus. In the explanations in this chapter, the IDD is mentioned as “TARG”, except in cases where a particularly clear distinction is necessary.
Input/output operation commands from INIT (initiator) to the IDD are accomplished by the CDB (Command Descriptor Block). The CDB is information transferred from INIT to TARG in the COMMAND phase. In a number of commands, the parameters which are necessary for command execution in the DATA OUT phase may be specified in addition to the CDB specification. Details concerning these are described in the specifications for each individual command in Chapter 3.
The CDB used by the IDD has 3 formats, these formats have length of 6, 10 and 12 bytes. The basic format of each respective CDB is shown in Figures 1.1, 1.2 and 1.3.
C141-E124-01EN 1 - 1
Bit Byte
0 Operation Code 1 LUN Logical Block Address (MSB) 2 Logical Block Address 3 Logical Block Address (LSB) 4 Transfer Data Length 5 Control Byte
76543210
Figure 1.1 6-Byte CDB Basic Format
Bit Byte
0 Operation Code 1 LUN 00000 2 Logical Block Address (MSB) 3 Logical Block Address 4 Logical Block Address 5 Logical Block Address (LSB) 600000000 7 Transfer Data Length (MSB) 8 Transfer Data Length (LSB) 9 Control Byte
76543210
Figure 1.2 10-Byte CDB Basic Format
C141-E124-01EN1 - 2
Bit Byte
0 Operation Code 1 LUN 00000 2 Logical Block Address (MSB) 3 Logical Block Address 4 Logical Block Address 5 Logical Block Address (LSB) 6 Transfer Data Length (MSB) 7 Transfer Data Length (LSB) 8 Transfer Data Length (MSB)
9 Transfer Data Length (LSB) 1000000000 11 Control Byte
76543210
Figure 1.3 12-Byte CDB Basic Format
The meanings of each of the fields in the CDB are explained below. Depending on the type of command, the basic format of the CDB, the definitions of fields and their meanings may differ. Details are described in the specifications for each individual command in Chapter 3.
(1) Operation code
Bit 76543210
Group Code Command Code
The leading byte of all CDBs shows the format and type of command to be executed.
a. Group code
The group code specifies the number of bytes and format of the CDB. The groups of commands shown below are used in the IDD.
x Group 0 (“000”):6-byte CDB (Shown in Figure 1.1) x Group 1 (“001”):10-byte CDB (Shown in Figure 1.2) x Group 2 (“010”):10-byte CDB (Shown in Figure 1.2) x Group 3 ("011"):Reserved Operation Code (Shown in Section 1.7.3.) x Group 4 ("100"):16-byte CDB x Group 5 ("101"):12-byte CDB (Shown in Figure 1.3)
C141-E124-01EN 1 - 3
b. Command code
Command code specifies the type of command in each group.
(2) LUN (Logical Unit Number)
This field specifies the address of the logical unit (device) connected under the TARG in cases where the IDENTIFY message is not used. If the IDENTIFY message is used, the value of the CDB’s LUN field is ignored when the LUN is specified.
Note:
It is possible that the definition of this field may be changed in future SCSI standards. It is recommended that the LUN be specified using the IDENTIFY message, and that a zero be specified in this CDB field.
(3) Logical block address
This field shows the leading logical data block address of the data block on the disk media to be processed by the command. In the group 0 CDB, 21-bit block addressing is possible and in the group 1, group 2 and group 5 CDBs, 32-bit block addressing is possible. Specifications for logical data block addressing in the IDD are described in Section 1.8.
(4) Transfer data length
In this field, the length of data to be transferred between INIT and TARG when the command is executed is specified by the number of logical data blocks or the number of bytes. In subsequent descriptions, the former is called the “transfer block count” and the latter is called the “transfer byte length” or “parameter list length.”
Furthermore, thi s field may be used with a diffe rent meaning, or it may not have any meaning at all, depending on the type of command. There are also some commands which allocate 3 or more bytes as the transfer data length field. Detailed specifications of these commands are described in the individual command specifications in Chapter 3.
a. Transfer block count
When the “Transfer Data Length” is specified as the “Transfer Block Count,” this field specifies the number of logical data blocks to be transferred between INIT and the IDD.
In commands where this field is 1 byte in length, if the field’s specified value is 0, it is regarded as specifying 256 blocks, and it is possible to specify a block count ranging from 1 to 256 blocks. On the other hand, in commands where this field is 2 bytes in length, if the field’s specified value is 0, no data transfer is executed. It is possible to specify a block count ranging from 0 to 65,535 blocks.
C141-E124-01EN1 - 4
b. Transfer byte length or parameter list length
When this field is specified as the “Transfer Byte Length” or “Parameter List Length,” that command specifies data length to be transferred between the INIT and the IDD, expressed as the number of bytes. When 0 is specified in this field, data transfer is not executed, except in cases where it is expressly stated in the individual command specifications in Chapter 3.
In commands which send parameters necessary for executing a command from the INIT to the IDD, this field is called the “Parameter List Length,” and it specifies the total number of types in the parameter list which the INIT is sending.
On the other hand, in commands for receiving information from the IDD (REQUEST SENSE, INQUIRY, etc.), this field is called the “Transfer Byte Length,” and specifies the maximum number of bytes which the INIT can receive (the number of bytes of area secured within the INIT for receiving information). The IDD transfers either the number of effective bytes of the type of information specified in the command, or the value specified in the “Transfer Byte Length” field, whichever is the smallest number of bytes, and only that number, to the INIT.
(5) Control byte
Bit 76543210
0000000Link
a. Link
Command link is specified by this bit is “1.” Details of the operation of the command link are described in Section 1.3.2.
b. Bit 7, 6 (vendor unique)
Except in cases where it is expressly specified in the individual commands, specification of these bits has no meaning, and the IDD disregards the specified values.
C141-E124-01EN 1 - 5
Note:
It is possible that bits 7 and 6 of the control byte will be used in future product specifications as an inherent control field. It is recommended that zeros be specified in this field.
(6) Handling an illegal CDB
If there is an error in the contents of a description (specification) in the CDB, or if there is an error in the specifications in parameters transferred from the INIT by CDB specifying, that command ends with a CHECK CONDITION status. In the case of a command to change the data on the disk media, when there is an error in the CDB’s specifications, the disk media is not changed by that command. But when there is an error in the parameters transferred in the DATA OUT phase, the contents of the disk media in the range specified by the command may be changed. Also, even in cases where there is an error in the CDB’s specifications in a command accompanying the DATA OUT phase, the DATA OUT phase is executed after the COMMAND phase is terminated, but those data are not used. For example, if there is an error in the CDB specification of a WRITE command, the IDD executes the transfers several bytes of data (the data length to be transferred is not specified), but those data are not written to the disk media. Details are described in the individual command specifications in Chapter 3.
If there is an error in the CDB specification in a command which executes disconnect processing (shown in Section 1.3.3), the disconnect processing may be executed after the COMMAND phase is terminated. In this case, reconnect processing is executed afterward and the status (CHECK CONDITION) is reported.
Note:
If a CDB with an undefined group code (group 3, 4) is specified, the IDD requests transfer of 10 bytes in the COMMAND phase. After that has been received, the status (CHECK CONDITION) is reported.
C141-E124-01EN1 - 6

1.2 Status Byte

Figure 1.4 shows status byte format and the type of status that the IDD supports.
The status byte is one byte of information sent from the TARG to the INIT in the STATUS phase when one command is completed, and notifies the INIT of the results of the command’s execution. The status byte is also sent even in cases when the TARG is in a state which it makes it impossible for it to execute the command when it receives a request for an input/output operation. However, if the command is cleare d by switching to the BUS FREE p hase fo rcib ly through an ABORT T ASK SET message, an ABORT TASK message, a CLEAR TASK SET message, a TARGET RESET message, a RESET condition or a SCSI bus error state, etc., the status byte for that command is not reported.
After the TARG reports the status byte in the STATUS phase, it will always send a TASK COMPLETE message or a LINKED TASK COMPLET E (WITH FLAG) message to no tify the INIT of the validity of the status byte.
Bit 76543210
0 0 Status Byte Code 0
Bit 5 4 3 2 1
0 0 0 0 0 GOOD Status 0 0 0 0 1 CHECK CONDITION Status 0 0 0 1 0 CONDITION MET Status 0 0 1 0 0 BUSY Status 0 1 0 0 0 INTERMEDIATE Status 0 1 0 1 0 INTERMEDIATE CONDITION MET Status 0 1 1 0 0 RESERVATION CONFLICT Status 1 0 0 0 1 COMMAND TERMINATED Status 1 0 1 0 0 QUEUE FULL Status
Figure 1.4 Status Byte
C141-E124-01EN 1 - 7
(1) GOOD status
This status indicates that execution of the command ended normally.
(2) CHECK CONDITION status
This status is reported in the following cases a) to c). The IDD generates sense data when it reports this status and indicates the detailed cause. The INIT issues a REQUEST SENSE command when it receives this status and should sample sense data.
a) If the sense key of the sense data indicates RECOVERED ERROR [=1], the last command,
which is the last command, indicates that it ended normally with the error recovery processing executed by the IDD.
b) If the sense key of the sense data indicates UNIT ATTENTION [=6], it indicates that the IDD
was holding the UNIT ATTENTION condition. Details of the UNIT ATTENTION condition are described in Section 1.5.
c) In cases other than the above, it indicates that command execution is impossible, or that
command execution was terminated abnormally.
(3) CONDITION MET Status
This status is reported when it is possible to secure the cache memory area necessary for reading all the logical data blocks specified in the PRE-FETCH command (in the case of “Immed = 1”), or when reading of all the specified logical data block s is com pleted (in th e case of “Im m ed = 0”).
The IDD does not support the PRE-FETCH command. Therefore, this status is not reported.
(4) BUSY status
This status indicates that the IDD is in the busy state and it cannot receive a new command. Normally, an INIT that receives this status reissues the original command after waiting an appropriate period of time.
The IDD reports the BUSY status in the following cases (the command stack function is explained in Section 1.4).
a) If the IDD receives a new command while it is executing or is queuing command (except a
command without executing disconnect processing as shown in Section 1.3.3) but the INIT which issued that command does not satisfy the disconnect enable conditions.
b) If the IDD receives a command without executing disconnect processing (as shown in Section
1.3.3) while it is executing or is queuing command.
c) If the DISCONNECT message for command queuing has been rejected by the INIT while the
IDD is executing or queuing command.
d) If a command with executing untagged disconnect processing is received while the command
queue is full.
C141-E124-01EN1 - 8
(5) INTERMEDIATE status
This status indicates that a command which specifies a link (except the last command in a group of linked commands with “1” as its Link bit) has been completed normally. If a command which specifies a link is completed abnormally and the CHECK CONDITION status or RESERVATION CONFLICT status is reported, the command link is broken an the subsequent linked commands are not executed.
(6) INTERMEDIATE CONDITION MET Status
This status is reported when it is possible to secure the cache memory area necessary to read all the logical data blocks specified in a PRE-FETCH command which specifies a link (in the case of “Immed = 1”), or when reading of all the specified logical data blocks is completed (in the case of “Immed = 0”).
The IDD does not support the PRE-FETCH command. Therefore, this status is not reported.
(7) RESERVATION CONFLICT status
This status indicates that the IDD is reserved by another INIT, and that use is impossible until the reserved status is canceled. Normally, an INIT which receives this status reissues the original command after waiting an appropriate period of time.
(8) COMMAND TERMINATED status
This status is reported when the IDD has completed the executing input/output operation when it received a TERMINATE I/O PROCESS message from the INIT.
(9) QUEUE FULL status
This status is reported if the IDD cannot register a received tagged command in the command queue because there is no empty space in the command queue.
C141-E124-01EN 1 - 9

1.3 Outline of Command Processing

1.3.1 Single commands

Following shows single command processing examples which are the most basic operations on the SCSI bus. Furthermore, if disconnect processing is permitted, it may be accompanied by disconnect/reconnect processing during the command execution, depending on the type of command, but this operation is omitted in the following explanation. The disconnect function is described in Section 1.3.3.
1) The INIT sets the initial values for the command in the command pointer, data pointer and status pointer.
2) The INIT se lects the TARG in the SELECTION phase a fter obtaini ng the SCSI b us usage in the ARBIT RATION phase. Aft er the SELECTION p hase is ended, the SCSI bus contro l is entrusted to the TARG.
3) If the ATT ENTIO N conditio n exists when the TARG respond s to the SELECT ION phase, the TARG executes the MESSAGE OUT phase. Normally, the INIT sends the IDENTIFY message as the initial message and specifies the device (LUN) that is the object of the operation.
4) The TARG executes the COMMAND phase and receives the CDB from the INIT. The TARG judges the length of the CDB by the group code in the first byte of the CDB and requests transfer of the necessary number of bytes.
5) The TARG investigates the contents of the command and executes the requested operation. In the case of commands for which data transfer on the SCSI bus is necessary, the DATA IN or the DATA OUT phase is executed.
6) When execution of the command is completed, the TARG reports the execution results by the status byte in the STATUS phase to the INIT.
7) The TARG reports the TASK COMPLETE message to the INIT in the MESSAGE IN phase and enters the BUS FREE phase.
C141-E124-01EN1 - 10

1.3.2 Command link

The command link function is a function which causes the TARG to execute continuous processing of multiple commands. Following shows examples of command link processing.
1) The INIT sets the initial values for the command in the command pointer, data pointer and status pointer.
2) Obtaining the SCSI bus usage, selection of the TARG and specification of the LUN by the IDENTIFY message are the same as in the case of single command.
3) The TARG receives commands from the INIT in the COMMAND phase, but “1” is specified in the Link bit of the control byte of the CDB.
4) The TARG analyzes the command and executes the requested processing.
5) If processing of the command is completed normally, the TARG reports the INTERMEDIATE status in the STATUS phase to the INIT. At this time, the command link function becomes effective.
6) The TARG informs the INIT of the LINKED TASK COMPLETE or the LINKED TASK COMPLETE WITH FLAG message, depending on the value of the Flag bit in the control byte of the CDB. When the INIT has received the LINKED TASK COMPLETE (WITH FLAG) message, the command, data and status pointers are updated to the initial values for the next linked command.
7) The TARG enters the COMMAND phase immediately after the MESSAGE IN phase and receives the command to be executed next. After that, it performs either single command (Link bit = “0”) processing o r command link (Link bit = “1”) proc essing.
The command link continues until a command with “0” specified in the Link bit of its CDB is issued or until a command terminates abnormally.
The command link function is made effective only in the case that commands with link specifications are completed normally. If a command with a link specification is completed in an error state or in an exception state, the command link function is invalidated. Table 1.1 shows the response of the IDD when commands with a Link specification are terminated.
C141-E124-01EN 1 - 11
Table 1.1 Responses to Link Specification Commands
Flag End Status Status Message Link Function
0
1
u
0
1
u
u
u
u
Completed
Normally
Completed
Normally
Completed
Abnormally
Conditions Met INTERMEDIATE
Conditions Met INTERMEDIATE
Unable to Start
Receive
Reserved State RESERVATION
Forced
Termination
Queue Full State QUEUE FULL TASK COMPLETE Not Effective
INTERME DIATE LINKED TASK COMPLETE Effective
INTERMEDIATE LINKED TASK COMPLETE WITH
FLAG
CHECK CONDITION TASK COMPLETE Not Effective
LINKED TASK COMPLETE Effective
CONDITION MET
LINKED TASK COMPLETE WITH
CONDITION MET
BUSY TASK COMPLETE Not Effective
CONFLICT
COMMAND
TERMINATED
FLAG
TASK COMPLETE Not Effective
TASK COMPLETE Not Effective
Effective
Effective
Only a single logical unit can operate a series of linked commands. When the IDD receives the first command, the logical unit specified by the IDENTIFY message or the LUN field of the CDB becomes the object of operation in a series of linked commands and the values specified in the LUN field in the second and subsequent CDBs are disregarded.
Note:
An INIT which uses the command link function must make the ATN signal in the SELECTION phas e TRUE and not ify the TARG that it i s capa ble o f receiving messages other than the
TASK
COMPLETE message. If “1” has been specified in the Link bit of the CDB without the ATN being made TRUE by the INIT in the SELECTION phase, the IDD terminates that command abnormally by sending a CHECK CONDITION status (ILLEGAL REQUEST [=5] / Invalid field in CDB [=24-00]).
C141-E124-01EN1 - 12

1.3.3 Disconnect/reconnect processing

When processing is performed by the TARG during the command execution process which does not require operation on the SCSI bus, the TARG can return the SCSI bus to the BUS FREE phase temporarily by disc onnect p roce ssing and exe cute command int ernally. T hrough thi s function, the INIT is enabled to process multiple commands on the SCSI bus.
(1) Disconnect permission conditions and commands with executing disconnect process
If all of the conditions shown below for permitting a disconnect are satisfied, the IDD executes disconnect processing. However, As shown in Table 1.2, disconnect processing may be valid or invalid, and the disconnect processing execution timing may differ, depending on the type of command.
Conditions for Permitting a Disconnect
1) The SCSI ID of the INIT is notified in the SELECTION phase.
2) The I NIT generates the ATTENTION condition in the SELECTION phase.
3) The INIT notifies the TARG that disconnect processing is permitted by an IDENTIFY message.
C141-E124-01EN 1 - 13
Table 1.2 Types of Command and Disconnect Processing
Commands with executing disconnect processing. (
Commands without executing disconnect processing. (
C CHANGE DEFINITION (40) O F FORMAT UNIT (04) O
I INQUIRY (12) O
L LOG SELECT (4C) O
LOG SENSE (4D) O
M MODE SELECT (15) O
MODE SELECT EXTENDED (55) O MODE SENSE (1A) O
MODE SENSE EXTENDED (5A) O N P PERSISTENT RESERVE IN (5E) O
PERSISTENT RESERVE OUT (5F) O R READ (08) O
READ BUFFER (3C) O
READ CAPACITY (25) O
READ DEFECT DATA (37) O
READ EXTENDED (28) O
READ LONG (3E) O
REASSIGN BLOCKS (07) O
RECEIVE DIAGNOSTIC RESULTS (1C) O
RELEASE (17) O
REPORT DEVICE IDENTIFIER (A3) O
REPORT LUN (A0) O
REQUEST SENSE (03) O
RESERVE (16)
REZERO UNIT (01) O S SEEK (0B) O
SEEK EXTENDED (2B) O
SEND DIAGNOSTIC (1D) O
SET DEVICE IDENTI FIER (A4) O
START/STOP UNIT (1B) O
SYNCHRONIZE CACHE (35) O T TEST UNIT READY (00) O VVERIFY (2F) O
WWRITE (0A) O
WRITE AND VERIFY (2E) O
WRITE BUFFER (3B) O
WRITE EXTENDED (2A) O
WRITE LONG (3F) O
WRITE SAME (41) O
Note 1
)
Note 2
)
(
Note 1
(
Note 2
) Commands without executing disconnect processing: In cases only where commands are
issued without a tag, queuing processing (see Section 1.4) and disconnect processing cannot be performed in the execution sequence.
) Commands with executing disconnect processing: Regardless of command queuing, in a
command’s execution process (after the COMMAND phase is completed, or during or after the completion of data transfer), dis conn ect processin g is perf orm ed. How ev er, in th e case of comm an ds with a data state (in cases where it is hit in the cache, etc.), or with a number of processing modes,
C141-E124-01EN1 - 14
Loading...
+ 272 hidden pages