Professional Documents
Culture Documents
Command Specification
Series
Rev1.0
Command Specification
2002-04-10 1/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
SCSI Commands
1. CDB
Command from the initiator to the drives in this series is performed by a CDB (Command Descriptor Block).
CDBs are classified into 3 sizes: 6, 10, and 12-byte length. Their basic formats will be shown below.
Bit
Byte
0
1
2
3
4
5
Flag(0)
Link(0)
Flag(0)
Link(0)
Flag(0)
Link(0)
Operation Code
LUN
Reserved
6-byte CDB
Bit
Byte
0
1
2
3
4
5
6
Operation Code
LUN
Reserved
7
8
9
Reserved
10-byte CDB
Bit
Byte
0
1
2
3
4
5
6
7
8
Operation Code
LUN
Reserved
9
10
11
Reserved
12-byte CDB
2002-04-10 2/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Reserved, Link, Flag, RelAdr, and LUN used in common by each CDB will be described below.
(1) Reserved
This field must be set to 0. The CHECK CONDITION status is returned otherwise.
(2) Link
Since the drive in this series does not support Link, this field must be set to 0. The CHECK CONDITION
status is returned otherwise.
(3) Flag
Since the drive in this series does not support Flag, this field must be set to 0. The CHECK CONDITION
status is returned otherwise.
(4) RelAdr
Since the drive in this series does not support RelAdr, this field must be set to 0.
(5) LUN (Logical Unit Number)
The drive in this series always sets this field to 0. If a value other than 0 is set, the drive accepts the
INQUIRY(12h) and REQUEST SENSE(03h) commands, and for other commands, it returns the CHECK
CONDITION status.
When receiving a command with an Identify message from the initiator, the drive in this series reefers to LUN
in the Identify message and ignores the LUN in the CDB.
2. Supported commands
The drive in this series supports the commands listed below.
Code
00h
01h
03h
04h
07h
08h
0Ah
0Bh
12h
15h
16h
17h
1Ah
1Bh
1Ch
1Dh
25h
28h
2Ah
2Bh
2Eh
2Fh
37h
55h
5Ah
E0h
E1h
E8h
EAh
Command
TEST UNIT READY
REZERO UNIT
REQUEST SENSE
FORMAT UNIT
REASSIGN BLOCKS
READ(6)
WRITE(6)
SEEK(6)
INQUIRY
MODE SELECT
RESERVE UNIT
RELEASE UNIT
MODE SENSE
START/STOP UNIT
RECEIVE DIAGNOSTIC RESULT
SEND DIAGNOSTIC
READ CAPACITY
READ(10)
WRITE(10)
SEEK(10)
WRITE AND VERIFY(10)
VERIFY(10)
READ DEFECT DATA
MODE SELECT(10)
MODE SENSE(10)
READ DELAY CHECK
WRITE DELAY CHECK
DUAL EDGE READ
DUAL EDGE WRITE
2002-04-10 3/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
The INQUIRY (12h) command is executed normally. The retention of UNIT ATTENTION CONDITION is not
cancelled.
The REQUEST SENSE (03h) command is executed normally. As sense data transferred to the initiator,
sense data that has generated UNIT ATTENTION CONDITION is returned. The retention of UNIT
ATTENTION CONDITION is cancelled.
Commands other than those described above return the CHECK CONDITION status and cancel the
retention of UNIT ATTENTION CONDITION. At this time, since UNIT ATTENTION=06h is written in a sense
key in the sense data, the initiator can determine the cause of generation of UNIT ATTENTION CONDITION
from the sense data by issuing the REQUEST SENSE command.
4. Sense data
The drive in this series generates sense data in the following cases.
(1)
(2)
When the CHECK CONDITION status is returned during execution of the SCSI command.
When UNIT ATTENTION CONDITION is generated.
Generated sense data is retained for the initiator that has issued the SCSI command. The retention of the sense data is
cancelled in the following cases.
(1)
(2)
(3)
The retention of the sense data is cancelled when the initiator issues a new SCSI command. If the new
command is the REQUEST SENSE (03h), the sense data being retained is transferred.
A command from an initiator other than the one for which the sense data is retained is accepted normally.
If RESET CONDITION occurs on a SCSI bus, or if an arbitrary initiator issues the Bus Device Reset
message, UNIT ATTENTION CONDITION is generated, the sense data that has generated UNIT
ATTENTION CONDITION is retained, and the previously retained sense data is lost.
2002-04-10 4/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
SCSI Messages
The drive in this series supports the following messages.
Code
00h
01h
02h
04h
05h
06h
07h
08h
0Ch
80-FFh
Message Name
COMMAND COMPLETE
EXTEND MESSAGE
SAVE DATA POINTER
DISCONNECT
INITIATOR DETECT ERROR
ABORT
MESSAGE REJECT
NO OPERAION
BUS DEVICE RESET
IDENTIFY MESSAGE
Length
5
4
5
0
01
1
02
2
03
3
m
If m = DEh, Dual Edge is designated, and No Operation (08h) is returned to the initiator to report that it is ready for Dual
Edge transfer. Before Dual Edge transfer, it is also necessary to use Synchronous Transfer Message to set the
synchronous transfer rate to 20 MB/s. If m is a value other than DEh, Message Reject is returned.
The format of DUAL EDGE SUM CHECK will be shown below.
Byte
MSG
0
01
1
03
2
DE
3
SUMH
4
SUML
After completion of the DUAL EDGE transfer status phase, the message above is transferred.
Complete message is transferred.
3
Status Byte Code
0
0
Status
GOOD
CHECK CONDITION
BUSY
RESERVATION CONFLICT
2002-04-10 5/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Byte
0
1
2
3
4
5
Flag(0)
Link(0)
Operation Code(00h)
LUN(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
02
02
05
05
05
06
ASC
04
04
20
24
25
29
ASQ
01
04
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
Flag(0)
Link(0)
Operation Code(01h)
LUN(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
02
02
03
05
05
05
06
ASC
04
04
06
20
24
25
29
ASQ
01
04
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
NO REFERENCE POSITION FOUND
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 6/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Flag(0)
Link(0)
Operation Code(03h)
LUN(0)
Reserved(0)
Reserved(0)
Reserved(0)
Allocation Length
Reserved(0)
Valid(0)
Error Code(70h)
Reserved(0)
Reserved(0)
Sense Key
Information(0)
Additional Sense Length(0Ah)
Command Specific Information(0)
2002-04-10 7/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
The following list shows errors reported in the drive in this series.
SenseKey
00
02
02
02
03
03
03
04
04
04
04
04
05
05
05
05
05
05
06
ASC
00
04
04
04
06
0C
11
02
32
40
47
48
20
21
24
25
26
3D
29
ASQ
00
00
01
04
00
02
00
00
00
NN
00
00
00
00
00
00
00
00
00
Description
NO SENSE INFORMATION
NOT READY, CAUSE NOT REPORTABLE
LOGICAL UNIT IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
NO REFERENCE POSITION FOUND
WRITE ERROR AUTO REALLOCATION FAILURE
UNRECOVERED READ ERROR
NO SEEK COMPLETE
NO DEFECT SPARE LOCATION AVAILABLE
DIAGNOSTIC FAILURE ON COMPONENT NN
PARITY ERROR
INITIATOR DETECTED ERROR
INVALID COMMAND OPERATION CODE
INVLID LBA ADDRESS
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORT
INVALID FIELD IN PARAMETER LIST
INVALID IDENTIFY FIELD
POWER ON, RESET, OR BUS DEVICE RESET OCURRED
If sense code 02-04-04 (LOGICAL UNIT NOT READY, FORMAT IN PROGRESS) is reported, information indicating the
progress of the formatting is set for Sense Key Specific.
Bit
Byte
15
16
17
7
SKSV
(MSB)
Reserved(0)
Progress Indication
(LSB)
2002-04-10 8/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Operation Code(04h)
LUN(0)
FmtData
CmpList(0)
Reserved(0)
(MSB)
Interleave
4
5
Reserved(0)
Flag(0)
(LSB)
Link(0)
If the FmtData bit is 1, FORMAT UNIT Parameter list from an initiator must be transferred.
The Interleave field is ignored.
The data format of FORMAT UNIT Parameter list will be shown below.
Bit
Byte
0
1
2
Immed
Reserved(0)
0
(MSB)
(LSB)
02
02
03
05
05
05
05
06
ASC
04
04
0C
20
24
25
26
29
ASQ
01
04
02
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
WRITE ERROR AUTO REALLOCATION FAILED
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
INVALID FIELD IN PARAMETER LIST
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 9/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Flag(0)
Link(0)
Operation Code(07h)
LUN(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Since the drive in this series has no replacing function for arbitrary blocks (uses automatic replacement of a drive linked
to the drive in this series), this command always retains 04-32-00 (NO DEFECT SPARE LOCATION AVAILABLE) as
error information, and reports the CHECK CONDITION status.
Error codes for REASSIGN BLOCKS will be listed below.
SenseKey
02
02
04
05
05
05
06
ASC
04
04
32
20
24
25
29
ASQ
01
04
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
NO DEFECT SPARE LOCATION AVAILABLE
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
Operation Code(08h)
(MSB)
Logical Block Address
LUN(0)
(LSB)
Transfer Length
Reserved(0)
Flag(0)
Link(0)
Logical Block Address designates a logical block address at which transfer begins.
Transfer Length designates the number of blocks to be transferred.
If 0 is designated for Transfer Length, 256 blocks are transferred.
Error codes for READ(6) will be listed below.
SenseKey
02
02
03
05
05
05
06
ASC
04
04
11
20
24
25
29
ASQ
01
04
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
UNRECOVERED READ ERROR
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 10/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
7. WRITE(6) [0A]
The WRITE (6) command transfers a designated number of blocks of data from an initiator to a designated logical block
address.
Bit
Byte
0
1
2
3
4
5
Operation Code(0Ah)
(MSB)
Logical Block Address
LUN(0)
(LSB)
Transfer Length
Reserved(0)
Flag(0)
Link(0)
Logical Block Address designates a logical block address at which transfer begins.
Transfer Length designates the number of blocks to be transferred.
If 0 is designated for Transfer Length, 256 blocks are transferred.
Error codes for WRITE(6) will be listed below.
SenseKey
02
02
03
04
05
05
05
06
ASC
04
04
0C
47
20
24
25
29
ASQ
01
04
02
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
WRITE ERROR AUTO REALLOCATION FAILED
PARITY ERROR
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
8. SEEK(6) [0B]
The SEEK (6) command shifts a head to a designated logical block address.
Bit
Byte
0
1
2
3
4
5
Operation Code(0Bh)
(MSB)
Logical Block Address
LUN(0)
(LSB)
Reserved(0)
Reserved(0)
Flag(0)
Link(0)
Logical Block Address designates a logical block address to which a head is shifted.
Error codes for SEEK(6) will be listed below.
SenseKey
02
02
03
05
05
05
06
ASC
04
04
02
20
24
25
29
ASQ
01
04
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
NO SEEK COMPLETE
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 11/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
9. INQUIRY [12]
The INQUIRY command transfers information about a device to an initiator.
Bit
Byte
0
1
2
3
4
5
Flag(0)
Link(0)
Operation Code(12h)
LUN
Reserved(0)
Reserved(0)
Reserved(0)
Allocation Length
Reserved(0)
Qualifier(0)
RMB(0)
ISO Version(0)
Reserved(0)
REL_A(0)
WB_32(0)
WB_16(0)
Sync(1)
Link(0)
TTD(0)
CmdQu(0)
SftRe(0)
Vendor Information
HAGIWARA
Product Identifier
SCS3-xxxxB
Firmware Revision Level
nnnn
Reserved(0)
Vendor Specific
If a value other than 0 is designated in the LUN field, as an exception, Qualifier=3, Peripheral Device Type = 1Fh is set.
2002-04-10 12/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
6
LUN(0)
Operation Code(15h)
PF
Reserved(0)
Reserved(0)
Reserved(0)
Parameter List Length
Reserved(0)
0
SP
Flag(0)
Link(0)
Mode Parameter List consists of 4 bytes of Mode Page Header, 8 bytes of Block Descriptor (if necessary), and variable
number of bytes of Page Descriptor.
The data format of Mode Parameter Header will be shown below.
Bit
Byte
0
1
2
3
2002-04-10 13/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Density Code(0)
(MSB)
1
2
Number of Blocks
(LSB)
Reserved(0)
(MSB)
5
6
(LSB)
Page Code
Page Length
Mode Parameter
See 13. MODE SENSE (6) [1A] for more detail information about Page Descriptor.
Error codes for MODE SELECT (6) will be listed below.
SenseKey
02
02
05
05
05
05
06
ASC
04
04
20
24
25
26
29
ASQ
01
04
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
INVALID FIELD IN PARAMETER LIST
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 14/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
6
LUN(0)
Operation Code(16h)
SPT
Third Party ID
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Flag(0)
0
0
Link(0)
If the SPT bit is 1, Third Party ID is used as the number of an initiator to be reserved.
If the SPT bit is 0, the drive is reserved for an initiator that has issued the command.
Reservation by this command is retained until any of the following conditions occurs.
(1) The reservation has been updated by the RESERVE UNIT command from a reserved initiator.
(2) The reservation has been cancelled by the RELEASE command from a reserved initiator.
(3) The BUS DEVICE RESET message has been issued from any initiator.
(4) A hardware reset has occurred.
When the drive in this series are reserved by an initiator, if an unreserved initiator issues a command other than the
REQUEST SENSE, INQUIRY, and RELEASE commands, this command returns the RESERVATION CONFLICT status
to reject the execution of the issued command.
Error codes for RESERVE UNIT will be listed below.
SenseKey
02
02
05
05
06
ASC
04
04
20
25
29
ASQ
01
04
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 15/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
6
LUN(0)
Operation Code(17h)
SPT
Third Party ID
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Flag(0)
0
0
Link(0)
If the SPT bit is 1, Third Party ID is used as the number of an initiator the reservation of which is released.
If the SPT bit is 0, the reservation of an initiator that has issued the RESERVE UNIT command.
When the drive in this series is not in the reserved state, even if the RELEASE command is issued, it is not considered to
be error.
Error codes for RELEASE UNIT will be listed below.
SenseKey
02
02
05
05
06
ASC
04
04
20
25
29
ASQ
01
04
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 16/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
6
LUN(0)
PC
Operation Code(1Ah)
0
DBD
Page Code
Reserved(0)
Allocation Length
Reserved(0)
Reserved(0)
Flag(0)
Link(0)
Allocation Length designates the number of bytes of mode data to be transferred to an initiator.
If DBD (Disable Block Descriptor) is 1, Block Descriptor is not transferred.
PC (Page Control) designates the type of Page Descriptor to be transferred.
Bit 7
0
0
1
1
Bit 6
0
1
0
1
Parameter Type
Current Value
Changeable Value
Default Value
Save Value
Description
Read/Write Recovery Page
Format Device Page
Rigid Disk Geometry Page
Caching Page
All Page
If Page Code 3Fh is designated, all Page Descriptors are transferred to an initiator.
Bit
Byte
0
3
4
11
12
N
Mode Parameter List consists of 4 bytes of Mode Page Header, 8 bytes of Block Descriptor (if DBD = 0), and a variable
number of bytes of Page Descriptor.
2002-04-10 17/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
WP(0)
MODE Parameter Length indicates the number of bytes of subsequent mode data.
WP and Medium Type are always set to 0.
If Block Descriptor Length is 0, Block Descriptor is not present. A value of 8 of Block Descriptor Length indicates that
Block descriptor is present subsequent to MODE Parameter Header.
The data format of Block Descriptor will be shown below.
Bit
Byte
Density Code(0)
(MSB)
1
2
Number of Blocks
(LSB)
Reserved(0)
(MSB)
5
6
(LSB)
The Number of Blocks field indicates the total number of blocks of the drive.
Block Length in Bytes indicates the number of bytes per block, and is always set to 512.
Bit
Byte
0
1
2
N
PS
Page Code
Page Length
Mode Parameter
2002-04-10 18/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
PS(0)
AWRE(1)
ARRE(0)
RC(0)
EER(0)
Correction Span(0)
Reserved(0)
9
11
DTE(0)
DCR(0)
Page Length(0Ah)
TB(0)
10
Page Code(01h)
1
2
PER(0)
Reserved(0)
(MSB)
Recovery Time Limit(0ffffh)
(LSB)
2002-04-10 19/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
PS(0)
7
8
(LSB)
(MSB)
Alternate Tracks per Disk(0)
9
10
(LSB)
(MSB)
Sectors per Track
11
12
(LSB)
(MSB)
Data Bytes per Physical Sector(200h)
13
14
(LSB)
(MSB)
Interleave(1)
15
16
(LSB)
(MSB)
Track Skew Factor(1)
17
18
(LSB)
(MSB)
Cylinder Skew Factor(1)
19
20
Page Length(16h)
5
6
(MSB)
3
4
Page Code(03h)
1
2
(LSB)
SSEC(1)
HSEC(0)
RMB(0)
SURF(0)
21
Reserved(0)
22
Reserved(0)
23
Reserved(0)
Reserved(0)
Sectors per Track indicates the number of sectors per track of a drive linked to the drive in this series.
Data Bytes per Physical Sector indicates the number of bytes per block, and is always set to 512.
2002-04-10 20/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
PS
1
2
Page Code(05h)
Page Length(16h)
(MSB)
Number of cylinders
(LSB)
5
6
Number of heads
(MSB)
8
9
(LSB)
(MSB)
10
11
12
(LSB)
(MSB)
Drive step rate(0)
13
14
15
(LSB)
(MSB)
Landing zone cylinder(0)
16
17
(LSB)
Reserved(0)
18
Rotation Offset(0)
19
Reserved(0)
20
21
RPL
22
Reserved(0)
23
Reserved(0)
Number of cylinders indicates the total number of cylinders of a drive linked to the drive in this series.
Number of heads indicates the number of heads of a drive linked to the drive in this series.
2002-04-10 21/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Caching Page
Bit
Byte
0
PS
Reserved(0)
WCE(0)
MF(0)
RCD(0)
(LSB)
(MSB)
Maximum Pre-fetch(0)
9
10
(MSB)
Page Length(0Ah)
Page Code(08h)
(LSB)
(MSB)
Maximum Pre-fetch Ceiling(0)
11
(LSB)
02
02
05
05
05
06
ASC
04
04
20
24
25
29
ASQ
01
04
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 22/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
6
LUN(0)
Operation Code(1Bh)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
0
Immed
LoEj(0)
Flag(0)
Start
Link(0)
If the Immed bit is 0, this command waits for the completion of the processing, and then reports the status.
If the Immed bit is 1, this command reports the status without waiting for the completion of the processing.
If the Start bit is 0, this command stops the rotation of the spindle motor of a drive linked to the drive in this series.
If the Start bit is 1, this command starts the rotation of the spindle motor of a drive linked to the drive in this series.
Error codes for START/STOP UNIT will be listed below.
SenseKey
02
02
02
05
05
05
06
ASC
04
04
04
20
24
25
29
ASQ
00
01
04
00
00
00
00
Description
NOT READY, CAUSE NOT REPORTABLE
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 23/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Operation Code(1Ch)
LUN(0)
Reserved(0)
Reserved(0)
(MSB)
(LSB)
Reserved(0)
Flag(0)
Link(0)
02
02
05
05
05
06
ASC
04
04
20
24
25
29
ASQ
01
04
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
SlfTst(1)
DevOfl
UntOfl
Flag(0)
(LSB)
Link(0)
Operation Code(1Dh)
LUN(0)
PF
2
3
Reserved(0)
(MSB)
Parameter List Length
4
5
Reserved(0)
ASC
ASQ
04
04
40
20
24
25
29
01
04
NN
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
DIAGNOSTIC FAILURE ON COMPONENT NN
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 24/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Operation Code(25h)
LUN(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Flag(0)
Link(0)
(MSB)
Last Logical Block Address
(LSB)
(MSB)
Block Length in Bytes(512)
(LSB)
Last Logical Block Address indicates the last accessible logical block address of a drive linked to the drive in this series.
Block Length in Bytes indicates the number of bytes per block, and is always set to 512.
Error codes for READ CAPACITY will be listed below.
SenseKey
02
02
05
05
05
06
ASC
04
04
20
24
25
29
ASQ
01
04
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 25/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
LUN(0)
Reserved(0)
(MSB)
4
5
(LSB)
6
7
Operation Code(28h)
1
2
Reserved(0)
(MSB)
Transfer Length
8
9
Reserved(0)
Flag(0)
(LSB)
Link(0)
Logical Block Address designates the first logical block address to be transferred.
Transfer Length designates the number of blocks to be transferred.
A value 0 of Transfer Length causes no data transfer.
Error codes for READ (10) will be listed below.
SenseKey
02
02
03
05
05
05
05
06
ASC
04
04
11
20
21
24
25
29
ASQ
01
04
00
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
UNRECOVERED READ ERROR
INVALID COMMAND OPERATION CODE
LOGICAL BLOCK ADDRESS OUT OF RANGE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 26/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Operation Code(2Ah)
1
2
LUN(0)
Reserved(0)
(MSB)
4
5
(LSB)
6
7
Reserved(0)
(MSB)
Transfer Length
8
9
Reserved(0)
Flag(0)
(LSB)
Link(0)
Logical Block Address designates a logical block address at which transfer begins.
Transfer Length designates the number of blocks to be transferred.
The value 0 of Transfer Length causes no data transfer.
Error codes for WRITE(10) will be listed below.
SenseKey
02
02
03
04
05
05
05
05
06
ASC
04
04
0C
47
20
21
24
25
29
ASQ
01
04
02
00
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
WRITE ERROR AUTO REALLOCATION FAILED
PARITY ERROR
INVALID COMMAND OPERATION CODE
LOGICAL BLOCK ADDRESS OUT OF RANGE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 27/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Operation Code(2Bh)
1
2
6
LUN(0)
Reserved(0)
(MSB)
4
5
(LSB)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Flag(0)
Link(0)
Logical Block Address designates a logical block address to which a head is shifted.
Error codes for SEEK (10) will be listed below.
SenseKey
02
02
04
05
05
05
05
06
ASC
04
04
02
20
21
24
25
29
ASQ
01
04
00
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
NO SEEK COMPLETE
INVALID COMMAND OPERATION CODE
LOGICAL BLOCK ADDRESS OUT OF RANGE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 28/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
ByteChk(0)
Operation Code(2Eh)
1
2
6
LUN(0)
Reserved(0)
(MSB)
4
5
(LSB)
6
7
Reserved(0)
(MSB)
Transfer Length
8
9
Reserved(0)
Flag(0)
(LSB)
Link(0)
Logical Block Address designates a logical block address at which transfer starts.
Transfer Length designates the number of blocks to be transferred.
The value 0 of Transfer Length causes no data transfer and verification.
Error codes for WRITE AND VERIFY (10) will be listed below.
SenseKey
02
02
03
05
05
05
05
06
ASC
04
04
0C
20
21
24
25
29
ASQ
01
04
02
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
WRITE ERROR AUTO REALLOCATION FAILED
INVALID COMMAND OPERATION CODE
LOGICAL BLOCK ADDRESS OUT OF RANGE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 29/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
ByteChk(0)
Operation Code(2Fh)
1
2
6
LUN(0)
Reserved(0)
(MSB)
4
5
(LSB)
6
7
Reserved(0)
(MSB)
Verification Length
8
9
Reserved(0)
Flag(0)
(LSB)
Link(0)
Logical Block Address designates a logical block address at which transfer begins.
Verification Length designates the number of blocks to be referenced.
The value of 0 of Verification Length causes no verification.
The Byte Chk bit is not supported, so must always be set to 0.
Error codes for VERIFY (10) will be listed below.
SenseKey
02
02
03
05
05
05
05
06
ASC
04
04
11
20
21
24
25
29
ASQ
01
04
00
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
UNRECOVERED READ ERROR
INVALID COMMAND OPERATION CODE
LOGICAL BLOCK ADDRESS OUT OF RANGE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 30/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Operation Code(37h)
LUN(0)
Reserved(0)
Reserved(0)
Plist
Glist
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
(MSB)
Allocation Length
8
9
Reserved(0)
Flag(0)
(LSB)
Link(0)
Allocation Length designates the number of bytes of alternate information transferred to an initiator.
The format of data transferred to an initiator will be shown below.
Bit
Byte
0
Reserved(0)
1
2
Reserved(0)
Plist
Glst
(MSB)
Defect List Length(0)
(LSB)
Since a drive cannot obtain alternate information, data in the format above (indicating that there is no alternate
information) is always transferred.
Plist, Glist, and Defect List Format of CDB are not examined, and only the value is copied onto the field with a name
identical to Defect list above.
Error codes for READ DEFECT DATA will be listed below.
SenseKey
02
02
05
05
05
06
ASC
04
04
20
24
25
29
ASQ
01
04
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 31/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Operation Code(55h)
LUN(0)
PF
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
SP
Reserved(0)
(MSB)
8
9
Reserved(0)
Flag(0)
(LSB)
Link(0)
Mode Parameter List consists of 8 bytes of Mode Page Header, 8 bytes of Block Descriptor (if necessary), and a variable
number of bytes of Page Descriptors.
The data format of Mode Parameter Header will be shown below.
Bit
Byte
0
Medium Type(0)
Reserved(0)
Reserved(0)
Reserved(0)
(MSB)
(MSB)
Block Descriptor Length(0 or 8)
(LSB)
2002-04-10 32/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Density Code(0)
(MSB)
1
2
Number of Blocks
(LSB)
Reserved(0)
(MSB)
5
6
(LSB)
Page Code
Page Length
Mode Parameter
See 13. MODE SENSE (6) [1A] for more detail information about Page Descriptor.
Error codes for MODE SELECT (10) will be listed below.
SenseKey
02
02
05
05
05
05
06
ASC
04
04
20
24
25
26
29
ASQ
01
04
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
INVALID FIELD IN PARAMETER LIST
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 33/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Operation Code(5Ah)
LUN(0)
DBD
PC
Reserved(0)
Page Code
Reserved(0)
Reserved(0)
Reserved(0)
Reserved(0)
(MSB)
Allocation Length
8
9
Reserved(0)
Flag(0)
(LSB)
Link(0)
Allocation Length designates the number of bytes of mode data to be transferred to an initiator.
If DBD (Disable Block Descriptor) is 1, Block Descriptor is not transferred.
PC (Page Control) designates a type of Page Descriptor to be transferred.
Bit 7
0
0
1
1
Bit 6
0
1
0
1
Parameter Type
Current Value
Changeable Value
Default Value
Save Value
Description
Read/Write Recovery Page
Format Device Page
Rigid Disk Geometry Page
Caching Page
All Page
If Page Code 3Fh is designated, all Page Descriptors are transferred to an initiator.
Bit
Byte
0
7
8
15
16
n
Mode Parameter List consists of 4 bytes of Mode Page Header, 8 bytes of Block Descriptor (if DBD = 0), and a variable
number of bytes of Page Descriptor.
2002-04-10 34/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
(MSB)
Mode Parameter Length
(LSB)
Medium Type(0)
WP(0)
Reserved(0)
Reserved(0)
Reserved(0)
(MSB)
(LSB)
MODE Parameter Length indicates the number of bytes of subsequent mode data.
WP and Medium Type are always set to 0.
The value of 0 of Block Descriptor Length indicates that Block Descriptor is not present. The value of 8 of Block
Descriptor Length indicates that Block Descriptor is present subsequent to MODE Parameter Header.
The data format of Block Descriptor will be shown below.
Bit
Byte
0
1
Density Code(0)
(MSB)
Number of Blocks
(LSB)
4
5
Reserved(0)
(MSB)
(LSB)
The Number of Blocks field indicates the total number of blocks of a drive.
Block Length in Bytes indicates the number of bytes per block, and is always set to 512.
See 13 MODE SENSE (6) [1A] for more detail information about Page Descriptor.
Error codes for MODE SENSE (10) will be listed below.
SenseKey
02
02
05
05
05
06
ASC
04
04
20
24
25
29
ASQ
01
04
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 35/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
Flag(0)
Link(0)
Operation Code(E0h)
LUN(0)
Reserved(0)
Reserved(0)
Initial Data Pattern
Pattern Control Byte
Reserved(0)
Reserved(0)
Reserved(0)
Allocation Length(80h)
Reserved(0)
This command performs Dual Edge read transfer in a data pattern designated by Initial Data Pattern and Pattern Control.
The number of transfers is always set to 128 bytes.
After data transfer, this command further transfers sum check words in the MSG IN phase.
Initial Data Pattern designates the first bytes in the data in phase.
Pattern Control Byte defines data subsequent to Initial Data Pattern. It designates data patterns in bits.
Bit
5
INCINV
4
INVFF
3
INV00
2
INV
1
DEC
0
INC
INC
If 1 is set, incremented data transfer is performed.
With the Initial Data Pattern value 00, transfer is performed in the order of 00 01 02
DEC
If 1 is set, decremented data transfer is performed.
With the Initial Data Pattern value 00, data transfer is performed in the order of 00 FF FE
INV
If 1 is set, inverted data transfer is performed.
With the Initial Data Pattern value 00, data transfer is performed in the order of 00 FF 00 FF
INV00 (INV WORD Boundary with 00)
If 1 is set, inverted data transfer is performed on every other byte.
With the Initial Data Pattern value 55, data transfer is performed in the order of 55 00 AA 00 55
INVFF (INV WORD Boundary with FF)
If 1 is set, inverted data transfer is performed on every other byte.
With the Initial Data Pattern value 55, data transfer is performed in the order of 55 FF AA FF 55
INCINV (INC WORD Boundary with INV)
If 1 is set, incremented data transfer is performed on every other byte. Inverted previous data is inserted
between the incremented data.
With the Initial Data Pattern value 00, data transfer is performed in the order of 00 FF 01 FE 02
DECINV (DEC WORD Boundary with INV)
If 1 is set, decremented data transfer is performed every other byte. Inverted previous data is inserted between
the decremented data.
With the Initial Data Pattern value 00, data transfer is performed in the order of 00 FF FF 00 FE
01 FD
SAME
If 1 is set, a single pattern data transfer is performed.
With the Initial Data Pattern value AA, data transfer is performed in the order of AA AA AA
2002-04-10 36/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
02
02
05
05
05
06
ASC
04
04
20
24
25
29
ASQ
01
04
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
Flag(0)
Link(0)
Operation Code(E1h)
LUN(0)
Reserved(0)
Reserved(0)
Initial Data Pattern
Pattern Control Byte
Reserved(0)
Reserved(0)
Reserved(0)
Allocation Length(80h)
Reserved(0)
This command performs Dual Edge write transfer in a data pattern designated by Initial Data Pattern and Pattern Control.
The number of transfers is always set to 128 bytes.
After data transfer, this command further transfers sum check words in the MSG IN phase.
On reception of an incorrect data pattern, this command reports the CHECK CONDITION status.
On occurrence of a parity error during transfer, this command retains 04-47-00(PARITY ERROR) as error information,
and reports the CHECK CONDITION status.
Initial Data Pattern designates the first byte in the DATA IN phase.
Pattern Control Byte defines data subsequent to Initial Data Pattern. It designates a data pattern in bits.
See 26. READ DELAY CHECK[E0] for more detail information about Pattern Control Byte.
Error codes for WRITE DELAY CHECK will be listed below.
SenseKey
02
02
04
05
05
05
06
ASC
04
04
47
20
24
25
29
ASQ
01
04
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
PARITY ERROR
INVALID COMMAND OPERATION CODE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 37/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
LUN(0)
Reserved(0)
(MSB)
4
5
(LSB)
6
7
Operation Code(E8h)
1
2
Reserved(0)
(MSB)
Transfer Length
8
9
Reserved(0)
Flag(0)
(LSB)
Link(0)
Logical Block Address designates a logical block address at which transfer begins.
Transfer Length designates the number of blocks to be transferred.
The Transfer Length value of 0 causes no data transfer.
Error codes for DUAL EDGE READ will be listed below.
SenseKey
02
02
03
05
05
05
05
06
ASC
04
04
11
20
21
24
25
29
ASQ
01
04
00
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
UNRECOVERED READ ERROR
INVALID COMMAND OPERATION CODE
LOGICAL BLOCK ADDRESS OUT OF RANGE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 38/39
SCS3-xxxxBA
Command Specification
Series
Rev1.0
LUN(0)
Reserved(0)
(MSB)
4
5
(LSB)
6
7
Operation Code(EAh)
1
2
Reserved(0)
(MSB)
Transfer Length
8
9
Reserved(0)
Flag(0)
(LSB)
Link(0)
Logical Block Address designates a logical block address at which transfer begins.
Transfer Length designates the number of blocks to be transferred.
The Transfer Length value of 0 causes no data transfer.
Error codes for DUAL EDGE WRITE will be listed below.
SenseKey
02
02
03
04
05
05
05
05
06
ASC
04
04
0C
47
20
21
24
25
29
ASQ
01
04
02
00
00
00
00
00
00
Description
LOGICAL UNIT IS IN PROCESS OF BECOMING READY
LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
WRITE ERROR AUTO REALLOCATION FAILED
PARITY ERROR
INVALID COMMAND OPERATION CODE
LOGICAL BLOCK ADDRESS OUT OF RANGE
INVALID FIELD IN CDB
LOGICAL UNIT NOT SUPPORTED
POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
2002-04-10 39/39