advertisement
Hard Disk Drive Specification
Ultrastar C10K600
2.5 inch Serial Attached SCSI (SAS) Hard
Disk Drive
Models: HUC106060CSS601
HUC106045CSS601
HUC106030CSS601
Version: 3.0
19 November 2012
Warning: Printed copies of this document are considered current only on the date of print. Replacement and disposal of downlevel versions is the responsibility of the document holder.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specificationn
1st Edition (Rev 3.0) (19 November 2012)
The following paragraph does not apply to the United Kingdom or any country where such provisions are inconsistent with local law: HGST, A WESTERN DIGITAL COMPANY, PROVIDES THIS PUBLICATION "AS IS" WITHOUT WAR-
RANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer or express or implied warranties in certain transactions, therefore, this statement may not apply to you.
This publication could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. HGST may make improvements or changes in any products or programs described in this publication at any time.
It is possible that this publication may contain reference to, or information about, HGST products (machines and programs), programming, or services that are not announced in your country. Such references or information must not be construed to mean that HGST intends to announce such HGST products, programming, or services in your country.
Technical information about this product is available by contacting your local HGST representative or on the Internet at http:/
/www.hgst.com
HGST may have patents or pending patent applications covering subject matter in this document. The furnishing of this document does not give you any license to these patents.
© Copyright HGST, a Western Digital company
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
Table of Contents
7.1.1 29 pin Serial Attached SCSI (SAS) Connector Definition ...............................19
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
10.6 MTBF (Mean Time Between Failure): 2.0M hours. ............................................29
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
18.10.2 Mode Page 00 (Vendor Unique Parameters) ................................................135
18.10.3 Mode Page 01 (Read/Write Error Recovery Parameters).............................137
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
18.10.4 Mode Page 02 (Disconnect/Reconnect Parameters) .....................................142
18.10.5 Mode Page 03 (Format Device Parameters) .................................................144
18.10.6 Mode Page 04 (Rigid Disk Drive Geometry Parameters) ............................146
18.10.7 Mode Page 07 (Verify Error Recovery Parameters).....................................147
18.10.9 Mode Page 0A (Control Mode Page Parameters).........................................150
18.10.14 Mode Page 1C (Informational Exceptions Control) ...................................163
18.20.1 Combined Header And Data (Mode 00000b)...............................................184
18.20.4 Read Data from Echo Buffer (Mode 01010b) ..............................................186
18.20.6 Expander Communications and Echo Buffer (Mode 11010b) .....................186
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
18.27 RECEIVE DIAGNOSTICS RESULTS (1C) ........................................................199
18.32 REPORT SUPPORTED OPERATION CODES (A3/0C) ....................................207
18.33 REPORT SUPPORTED TASK MANAGEMENT FUNCTIONS (A3/0D).........212
18.59.1 Combined Header And Data (Mode 00000b)...............................................251
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
18.59.4 Download Microcode and Save (Mode 00101b) -Single Binary File ..........253
18.59.5 Download Microcode and Save (Mode 00111b) - Multiple Binary Files ....253
18.59.7 Enable Expander Communications Protocol (Mode 11010b) ......................254
20.1.4 Command Processing During Execution of Active I/O Process ....................264
20.1.6 Command Processing During Startup and Format Operations.......................267
20.10.2 Initiator Mode Select/Mode Sense Parameters .............................................279
20.12.2 Self-test via SEND DIAGNOSTIC Command.............................................281
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
21.1.2 Federal Information Processing Standards (FIPS)..........................................297
21.3 Implementation Features and Details Outside of TCG Specifications ....................298
21.4.1 Advanced Encryption Standard(AES) Support ..............................................299
21.4.3 Pseudo Random Number Generation (PRNG) ...............................................300
21.5.1 Admin SP C_PIN Table and Locking SP C_PIN Table .................................301
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
22.2.7 Command Specific Information (Byte 8 through 11) .....................................314
22.2.8 Additional Sense Code/Qualifier (Byte 12 and 13) ........................................315
22.2.12 Vendor unique error information (Byte 20 through 23) ...............................346
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
List of Tables
Table 5.Block assignment of World Wide ID in INQUIRY Command....................8
Table 12.Data transfer speed (sector size 512 Byte case)..........................................13
Table 15.Maximum allowable surface temperatures .................................................23
Table 17.Power Supply Generated Ripple at Drive Power Connector......................28
Table 31.Additional Response Information argument for Query Async Event.........61
Table 42.Defect Descriptor - Block Format (for n + 1 defects) ................................74
Table 43.Defect Descriptor - Bytes From Index Format (for n = 1 defects) .............75
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
Table 44.Defect Descriptor - Physical Sector Format (for n + 1 defects) .................76
Table 48.Inquiry Data - EVPD = 1 (Page Code = 00h).............................................79
Table 49.Inquiry Data - EVPD = 1 (Page Code = 03h).............................................81
Table 50.Inquiry Data - EVPD = 1 (Page Code = 80h).............................................83
Table 51.Inquiry Data Format - EVPD = 1, (Page Code - 83h) ................................84
Table 52.Inquiry Data Format - EVPD = 1, (Page Code - 86h) ................................85
Table 53.Inquiry Data Format - EVPD = 1, (Page Code - 87h) ................................86
Table 54.Inquiry Data Format - EVPD = 1, (Page Code - 88h) ................................87
Table 55.Inquiry Data Format - EVPD = 1, (Page Code - 8Ah) ...............................89
Table 56.Inquiry Data - EVPD = 1 (Page Code = 90h).............................................90
Table 57.Protocol-specific logical unit information descriptor .................................90
Table 58.Inquiry Data - EVPD = 1 (Page Code = B1h) ............................................91
Table 59.Inquiry Data - EVPD = 1 (Page Code = D1h) ............................................92
Table 60.Inquiry Data - EVPD = 1 (Page Code = D2h) ............................................93
Table 78.Log Sense Page 10, Extended Segment Number........................................113
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
Table 96.Mode Page 01 (Vendor Unique Parameters) ..............................................137
Table 97.Mode Page 02 (Disconnect/Reconnect Parameters)...................................142
Table 98.Mode Page 03 (Format Device Parameters) ...............................................144
Table 99.Mode Page 04 (Rigid Disk Drive Geometry Parameters) ..........................146
Table 100.Mode Page 07 (Verify Error Recovery Parameters).................................147
Table 102.Page 0A (Control Mode Page Parameters) ...............................................150
Table 107.Page 18h (Protocol-Specific Logical Unit mode page) ............................155
Table 108.Short (Port Control Parameters) Short Format .........................................156
Table 110.PHY Control and Discover (Subpage 1) ..................................................158
Table 116.Page 1C (Informational Exceptions Control) ...........................................163
Table 120.PERSISTENT RESERVE IN, Service Action Codes ..............................167
Table 121.PERSISTENT RESERVE IN, parameter data for Read Keys .................168
Table 122.PERSISTENT RESERVE IN, parameter data for Read Reservations.....169
Table 123.PERSISTENT RESERVE IN, Read Reservation Descriptor...................169
Table 124.PERSISTENT RESERVE OUT (5F) .......................................................170
Table 125.PERSISTENT RESERVE OUT, Service Action Code............................171
Table 126.PERSISTENT RESERVE OUT, Type Code ...........................................171
Table 128.PERSISTENT RESERVE OUT, Service Action, Parameters .................173
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
Table 141.Format of READ CAPACITY command reply........................................188
Table 148.Defect Descriptors of Bytes from Index Format ......................................193
Table 149.Defect Descriptors of Physical Sector Format..........................................193
Table 153.Defect Descriptors of Bytes from Index Format ......................................195
Table 154.Defect Descriptors of Physical Sector Format..........................................195
Table 158.RECEIVE DIAGNOSTIC RESULTS (1C) .............................................199
Table 164.REPORT DEVICE IDENTIFIER (A3/05)...............................................204
Table 168.REPORT SUPPORTED OPERATION CODES (A3/0C) .......................207
Table 172. One_command parameter data format.....................................................209
Table 173.One_command parameter support field....................................................210
Table 175.Command timeouts descriptor Command Specific Field usage ..............211
Table 176.Report Supported Task Management Functions (A3/0D) ........................212
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
Table 184.SEND DIAGNOSTIC Function Code (1D) .............................................220
Table 189.SET DEVICE IDENTIFIER (A4/06) .......................................................226
Table 190.SET DEVICE IDENTIFIER, Parameter List ...........................................226
Table 193.SYNCHRONIZE CACHE (10) - (35) ......................................................230
Table 205.WRITE AND VERIFY (10) - (2E) ..........................................................247
Table 215.SCSI Status Byte. Format of the SCSI STATUS byte. ...........................261
Table 216.Spindle Motor Degraded Mode - Disable Auto Start ...............................269
Table 217.Spindle Motor Degraded Mode - Auto Start Delay/Spinning Up ............270
Table 218.Spindle Motor Degraded Mode - Spindle Start Failure............................271
Table 219.Spindle Motor Degraded Mode - Spindle Stopped by Command............272
Table 220.Self Configuration Failure Degraded Mode ............................................273
Table 221.Format Command Failure Degraded Mode ..............................................274
Table 222.Sense data combinations with auto/recommend rewrite/reallocate..........278
Table 227.HGST Implemetation of Admin SP_CPIN Table and Locking C_PIN ...301
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
Table 228.HGST Implementation of K_AES_256 Table..........................................301
Table 229.HGST Implementation of Locking SP Access Control Table..................302
Table 230.HGST Implementation of Locking Info Table .........................................302
Table 231.HGST Implementation of Locking SP Locking Table .............................303
Table 235.Modified Admin SP AccessControl Table ...............................................305
Table 236.T10 SCSI Commands Behavior Table .....................................................307
Table 237.TCG Enterprise SSC Commands Behavior ............................................309
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
1.0 General
1.1 Introduction
This document describes the specifications of the following HGST 2.5 inch SAS drives.
Table 1: Product ID table
Drive Name
Ultrastar C10K600-600
Ultrastar C10K600-450
Ultrastar C10K600-300
Model Name
HUC106060CSS601
HUC106045CSS601
HUC106030CSS601
Type
UTCSSB600
UTCSSB450
UTCSSB300
Capacity (GB) Interface
Note: The specifications in this document are subject to change without notice.
For technical and ordering information, please visit our website at http://www.hgst.com.
1.2 Glossary
GB
HDD
MB
KB
Word
BMS
Kb
Mb
SAS
SFF
S.M.A.R.T.
Meaning
Background Media Scan
Kilobit = 1000 bits
Megabit = 1,000,000 bits
Gigabyte = 1,000,000,000 bits
Hard Disk Drive
Megabyte = 1,000,000 bytes
Kilobyte = 1000 bytes
Serial Attached SCSI
Small Form Factor
Self-Monitoring and Reporting Technology
1.3 Caution
This drive can be damaged by ESD (Electric Static Discharge). Any damages incurred to the drive after its removal from the shipping package and the ESD protective bag are the responsibility of the user.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
1
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
2
2.0 Outline of the Drive
• Storage capacities of 600GB, 450 GB, and 300 GB
• 6 Gbps SAS interface
• Supports dual-ported operations
• Supports full duplex operations
• Variable sector size (512 - 528 in multiples of eight)
• Tagged Command Queuing support
• Automatic read/write data transfer
• 3.7 ms seek time in read operation for 600 GB
• 3.7 ms seek time in read operation for 450 GB
• 3.7 ms seek time in read operation for 300 GB
• Adaptive read ahead algorithm
• Write Cache
• Back to back write
• ECC On The Fly correction
• Automatic defect reallocation
• Self diagnostics at power on
• Closed loop actuator servo
• Load / Unload
• 10,020 RPM spindle rotation speed
• Automatic actuator lock
• (S.M.A.R.T.)
• ANSI T10 Protection Information (End-to-End)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
3
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
4
3.0 Fixed-disk Subsystem Description
3.1 Control Electronics
The drive is electronically controlled by a microprocessor, logic modules, digital/analog modules and various drivers and receivers. The control electronics perform the following major functions:
• Perform self-checkout (diagnostics)
• Conduct a power-up sequence and calibrate the servo.
• Monitor various timers for head settling, servo failure, etc.
• Analyze servo signals to provide closed-loop control. These include position error signal and estimated velocity.
• Control of the voice coil motor driver to align the actuator onto a desired position
• Monitor the actuator position and determine the target track for a seek operation.
• Constantly monitor error conditions of the servo and take corresponding action if an error occurs.
• Control starting, stopping, and rotating speed of the spindle.
• Control and interpretation of all interface signals between the host controller and the drive
• Control of read/write accessing of the disk media, including defect management and error recovery
3.2 Head Disk Assembly
The head/disk assembly (HDA) is assembled in a clean room environment and contains disks, a spindle motor, actuator assembly, and voice coil motor. Air is constantly circulated and filtered when the drive is operational. Venting of the HDA is accomplished via a breather filter.
The spindle is driven directly by a brushless, sensorless DC drive motor. Dynamic braking is used to stop the spindle quickly.
3.3 Actuator
The read/write heads are mounted in the actuator. The actuator is a swing-arm assembly driven by a voice coil motor. A closed-loop positioning servo controls the movement of the actuator. An embedded servo data pattern supplies feedback to the positioning servo to keep the read/write heads centered over the desired track.
The actuator assembly is balanced to allow vertical or horizontal mounting without adjustment.
Heads are moved out from the disks (unloaded) to protect the disk data during shipping, moving, or storage. At power down, the heads are automatically unloaded from over the disk area and the head actuator locking mechanism will secure the heads in the unload position.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
5
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
6
4.0 Drive Characteristics
4.1 Formatted Capacity
Table 2: Formatted Capacity
Description
Label capacity
Number of heads
Number of disks
Total data bytes (512 bytes/sector)
Total logical data blocks
HUC106060CSS601 HUC106045CSS601 HUC106030CSS601
600 GB 450 GB 300 GB
6
3
600,127,266,816
6
3
450,098,159,616
3
2
300,069,052,416
1,172,123,568
(45DD2FB0h)
879,097,968
(3465F870h)
586,072,368
(22EEC130h)
4.2 Data Sheet
Table 3: Data Sheet
Buffer to/from media
Host to / from buffer (interface transfer rate)
Data buffer size
Number of buffer segments
Rotational speed
Recording density
Track density
Areal density
Number of Notches
1219 - 2029 [Mb/sec]
1.5 Gbps, 3.0 Gbps or 6.0 Gbps
64 MB
1 - 254
10,020 RPM
1623 [Kbpi] (Max)
208,964 [TPI] (average)
341 [Gb/sq. in.]
39
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
7
4.3 Inquiry Information
4.3.1 Product ID
Table 4: Product ID in Inquiry Command
Product ID
HUC106060CSS601
HUC106045CSS601
HUC106030CSS601
Description
600 GB, SAS
450 GB, SAS
300 GB, SAS
4.3.2 World Wide ID - Block Assignment
Block Assignment of World Wide ID is as follows:
Table 5: Block assignment of World Wide ID in INQUIRY Command
Manufacturing Site
Thailand
Product
HUC106060CSS601
HUC106045CSS601
HUC106030CSS601
Block Assignment
001h
(1)
001h
(1)
001h
(1)
Note (1) - Additional block assignment will be issued as needed based on actual production volume.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
8
4.4 Cylinder allocation
Table 6: Cylinder allocation
User Cylinder Allocation
1785
1764
1740
1680
1680
1680
1627
1610
1575
1540
1960
1960
1932
1920
1890
1890
1848
1848
1820
1785
26
27
28
29
22
23
24
25
30
31
16
17
18
19
12
13
14
15
20
21
8
9
6
7
4
5
2
3
10
11
0
Notch Sectors /Tracks Start Cylinder End Cylinder
2220 1 2203
1 2205 2204 5607
2184
2170
2152
2100
2100
2100
2061
2040
2016
1995
5609
8813
11016
13420
17325
21231
25237
27139
30244
34149
8812
11015
13419
17324
21230
25235
27138
30243
34148
37152
37154
39557
42061
45265
46567
49071
51674
53677
55780
59586
61789
63992
66195
69299
72204
75208
78212
81116
83420
87125
63991
66194
69298
72202
75207
78211
81115
83418
87124
90929
39556
42059
45264
46566
49069
51673
53676
55779
59584
61788
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
9
35
36
37
38
32
33
34
1500
1470
1428
1400
1365
1344
1312
90930
94435
98241
101545
104349
107354
109156
94434
98240
101544
104348
107353
109155
111559
medium format for specific drives.
4.5 Performance characteristics
Drive performance is characterized by the following parameters:
•Command overhead
•Mechanical head positioning
- Seek time
- Latency
•Data transfer speed
•Buffering operation (read ahead/write cache)
Note: All the above parameters contribute to drive performance. There are other parameters that contribute to the performance of the actual system. This specification tries to define the bare drive characteristics, not system throughput, which depends on the system and the application.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
10
4.5.1 Mechanical positioning
4.5.1.1 Average seek time (including settling)
Table 7: Mechanical positioning performance
Model
600 GB
450 GB
300 GB
Command
Read
Write
Read
Write
Read
Write
Typical (ms)
3.7
4.2
3.7
4.2
3.7
4.2
Max
4.4
5.0
4.4
5.0
4.4
5.0
“Typical” and “Max” are used throughout this document and are defined as follows:
Typical
Max
Average of the drive population tested at nominal environmental and voltage conditions.
Maximum value measured on any one drive over the full range of the environmental and voltage conditions.
(See 8.0, “Environment” on page 21and Section 9.0, “DC Power Requirements” on page 25 for ranges.)
The seek time is measured from the start of the actuator’s motion to the start of a reliable read or write operation. “Reliable read or write” implies that error correction or recovery is not used to correct arrival problems. The average seek time is measured as the weighted average of all possible seek combinations.
Weighted average =
Max
∑
n
= 1
=
(
(
+
Where:
max n
= Maximum seek length
= Seek length (1 to max)
Tn.in
= Inward measured seek time for an n track seek
Tn.out = Outward measured seek time for an n track seek
)
)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
11
4.5.1.2 Full stroke seek time
Table 8: Full stroke seek time
Command
Read - All models
Write - All models
Typical (ms)
7.3
7.9
Max
8.6
9.4
Full stroke seek is measured as the average of 1,000 full stroke seeks with a random head switch from both directions
(inward and outward).
4.5.2 Average latency
Table 9: Latency time
Rotation
10,020 RPM
Table 10: Drive ready time
Model
600 GB Model
450 GB Model
300 GB Model
Time for a revolution (ms)
5.99
Typical (sec)
20
20
12
Maximum (sec)
29.9
29.9
29.9
Average latency (ms)
2.99
4.5.3 Spindle stop time
Table 11: Spindle stop time
Model
600 GB Model
450 GB Model
300 GB Model
Typical (sec)
12
12
10
Maximum (sec)
15
15
15
The period from power off to the complete stop of the rotating spindle is categorized as’operating’. The Operating shock crite-
ria apply during this period. Refer to section Operating shock, page 37.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
12
4.5.4 Data transfer speed
Table 12: Data transfer speed (sector size 512 Byte case)
Description Disk-buffer transfer
Measured typical values for maximum sustained data transfer rate
Model
600 GB
450 GB
300 GB
Typical (MB / Sec)
Read Write
175
174
173
175
174
171
Measured typical values for minimum sustained data transfer rate
600 GB
450 GB
300 GB
109
124
108
109
124
105
Notes:
• For this table, '1 MB / sec' should be interpreted as 1,000,000 bytes per second.
• Sustained data transfer rate refers to performance under the following usage pattern of the HDD
• Read contiguous and monotonically increasing LBAs for 15 seconds (several thousand disk revolution times - to allow averaging to minimize the impact of delays or caching at the beginning of the measurement)
• Read commands must have sufficiently long transfer length and be queued deeply enough so that data is moved from the HDD buffer to the host faster than the HDD moves data from disk to buffer. This allows the HDD disk-to-buffer rate to be the limiting factor. Insufficient transfer length or queue depth will result in performance below the sustained data transfer rate.
• Similar conditions must be met for Write commands.
• Sustained data transfer rate differs from the instantaneous transfer rate because of the time required to reposition the read/ write head on successive tracks.
• Instantaneous disk-buffer transfer rate is derived by: (Number of 512B sectors on a track) x 512 x (revolutions/sec)
• Refer to 4.4 table 6 for sectors/track information
• The number of sectors per track will vary as a result of zoned recording and adaptive formatting.
4.5.5 Buffering operation (read ahead/write cache)
This hard disk drive has a buffer for read ahead (see 20.8, “Segmented Caching” on page 259)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
13
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
14
5.0 Data Integrity
No more than one sector can be lost by power down during a write operation while write cache is disabled. If power down occurs before completion of a data transfer from write cache to disk while write cache is enabled, the data remaining in the write cache will be lost. To prevent this data loss at power off, the following action is recommended:
• Confirm successful completion of a SYNCHRONIZE CACHE (35h) command
5.1 Equipment Status
Equipment status is available to the host system any time the drive is not ready to READ, WRITE or SEEK. This status normally exists at power-on time and will be maintained until the following conditions are satisfied:
• Access recalibration/tuning is complete
•
• Spindle speed meets requirements for reliable operations
Self-check of drive is complete
Appropriate error status is made available to the host system if any of the following conditions occur after the drive has become ready:
• Spindle speed goes outside of requirements for reliable operation
• “Write fault” is detected
5.2 Error Recovery Procedure
Errors occurring with the drive are handled by the error recovery procedure.
Errors that are uncorrectable after application of the error recovery procedures are reported to the host system as non-recoverable errors.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
15
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
16
6.0 Physical Format
Media defects are remapped to the next available sector during the Format Process in manufacturing. The mapping from Logical Block Address (LBA) to the physical Block locations is calculated using internally maintained tables.
6.1 Shipped Format (P-List)
• Data areas are optimally used.
• All pushes generated by defects are absorbed by available tracks of the inner notch.
P-List Physical Format
Note: Defects are skipped without any constraint, such as track or cylinder boundary. The calculation from LBA to physical is done automatically by internal table.
6.2 Reassigned Format (G-List)
• G-List has a capacity of 6600 Customer LBAs.
• Multiple reassignments of the same Customer LBA do not increase the number of G-List entries.
• A track for spare sectors is inserted after every 700 nominal customer tracks.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
17
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
18
7.0 Electrical Interface
7.1 SAS Connector
The drive uses the standard 29 pin Serial Attached SCSI (SAS) connector which conforms to the mechanical requirements of
SFF 8482. The connector is expected to be used in an environment which uses a common connector structure for racking disk drives in a cabinet. The connector allows for plugging a drive directly into a backplane by providing the necessary electrical connection. Mechanical stability and device retention must be provided by a mechanism outside the drive.
7.1.1 29 pin Serial Attached SCSI (SAS) Connector Definition
Diagram of top and bottom of connector showing pinouts.
S3
S4
S5
S6
S7
Table 13: 29-pin Connector Signal Definition
Pin Number Signal
S1
S2
GND
RP+
RP-
GND
TP-
TP+
GND
Description
GND for SAS Primary Port
SAS Primary Port Receive
(positive) signal
SAS Primary Port Receive
(negative) signal
GND for SAS Primary Port
SAS Primary Port Transmit
(negative) signal
SAS Primary Port Transmit
(positive) signal
GND for SAS Primary Port
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
19
S8
S9
S10
S11
S12
S13
S14
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
P13
P14
P15
Pin Number
GND
RS+
RS-
GND
TS-
TS+
GND
+3.3V
+3.3V
+3.3V
Signal
GND
GND
GND
+5V-Charge
+5V
+5V
GND
READY LED
GND
+12V=Charge
+12V
+12V
Description
GND for SAS Secondary
Port
SAS Secondary Port
Receive (Positive) signal
SAS Secondary Port
Receive (negative) signal
GND for SAS Secondary
Port
SAS Secondary Port
Receive (negative) signal
SAS Secondary Port
Receive (positive) signal
GND for SAS Secondary
Port
NOT USED (Pins P1-P3 tied internally)
NOT USED (Pins P1-P3 tied internally)
NOT USED (Pins P1-P3 tied internally)
GROUND
GROUND
GROUND
Pre-charge pin for +5V
+5V power supply input
+5V power supply input
GROUND
READY LED output
GROUND
Pre-charge pin for +12V
+12V power supply input
+12V power supply input
7.1.2 Voltage and Ground Signals
The 12V and 5V contacts provide all of the voltages required by the drive. The two voltages share a common ground plane to which all of the ground contacts are connected.
7.1.3 Ready LED output
The drive provides an open-drain driver with 15mA of current sink capability to the Ready LED Output signal. The cathode of the LED should be connected to this signal. The LED and the current-limiting resistor must be provided by the enclosure.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
20
8.0 Environment
8.1 Temperature and humidity
Table 14: Operating and non-operating conditions
Operating conditions
Ambient Temperature
Relative humidity
Maximum wet bulb temperature
Maximum surface temperature gradient
Altitude
Shipping conditions
5°C to 55ºC
5 to 90%, non-condensing
29.4ºC, non-condensing
20ºC/hour
-305 to 3,048 m
Ambient Temperature
Relative humidity
Maximum wet bulb temperature
Maximum surface temperature gradient
Altitude
Storage conditions
Ambient Temperature
Relative humidity
Maximum wet bulb temperature
Altitude
-40°C to 70ºC
5 to 95%, non-condensing
35ºC, non-condensing
30ºC/hour
-305 to 12,192 m
0°C to 65ºC
5 to 90%, non-condensing
35ºC, non-condensing
-305 to 12,192 m
Environments that contain elevated levels of corrosives (e.g. hydrogen sulfide, sulfur oxides, or hydrochloric acid) should be avoided. Care must be taken to avoid using any compound/material in a way that creates an elevated level of corrosive materials in the atmosphere surrounding the disk drive. Care must also be taken to avoid use of any organometallic (e.g. organosilicon or organotin) compound/material in a way that creates elevated vapor levels of these compounds/materials in the atmosphere surrounding the disk drive.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
21
50
40
30
20
10
0
100
90
80
70
60
0
Cobra-D Environmental Specifications
10
WetBulb 29.4C
20 30 40 50
Temperature (C)
Storage
Operating
WetBulb 35C
60 70 80
8.2 Storage requirements
8.2.1 Packaging
The drive or option kit must be heat-sealed in a moisture barrier bag supplied by HGST, a Western Digital Company.
8.2.2 Storage time
Cumulative storage time in the package must not exceed six months. After the drive is unpackaged, it must not remain inoperative for longer than six months.
8.3 Corrosion test
The hard disk drive shows no signs of corrosion inside or outside of the hard disk assembly and remains functional after being exposed to a temperature of 50ºC and relative humidity of 90% for seven days
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
22
8.4 Cooling requirements
Drive component temperatures must remain within the limits specified in the following table. Maximum component temperature ratings must not be exceeded under any operating condition. The drive may require forced air cooling to meet the specified, maximum operating temperatures.
Table 15: Maximum allowable surface temperatures
Module name
HDD base casting
Location
as noted in picture
Maximum allowable surface temperature
60ºC
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
23
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
24
9.0 DC Power Requirements
The following voltage specification applies at the drive power connector. Connections to the drive should be made in a safety extra low voltage (SELV) circuit. There is no power on or power off sequencing requirement.
Adequate secondary over-current protection is the responsibility of the system.
Table 16: Input Voltage and Drive Capacitance
Supply
5 V
12 V
Tolerance
+/- 5%
+/- 5%
Absolute Max
Spike Voltage
5.5 V
15 V
Supply Rise Time
0-200 ms
0-400 ms
Note: -8% is acceptable during spin up, but the spin up time is not guaranteed.
Capacitance
104 uF
60 uF
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
25
9.1 Power Supply Current, Average and Peak
The following current and power requirements are typical when operating under the following conditions: Nominal 5 and 12V,
Background Media Scan (BMS) disabled for Idle, Write Caching disabled and the drive reporting a temperature of 45C.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
26
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
27
9.2 Ripple Voltage
Table 17: Power Supply Generated Ripple at Drive Power Connector
+5 V DC
+12 V DC
Maximum (mV pp)
250
250
MHz
0-10
0-10
During drive start up and seek, 12 volt ripple is generated by the drive (referred to as dynamic loading). If the power of several drives is daisy chained, the power supply ripple plus other drive dynamic loading must remain within the regulation tolerance of +5%. A common supply with separate power leads to each drive is a more desirable method of power distribution.
To prevent external electrical noise from interfering with the drive's performance, the drive must be held by four screws in a user system frame that has no electrical level difference at the four screw positions. The drive enclosure must not be used in the current return path of the drive power supply. The maximum common-mode noise current passing through the drive must not exceed 20 mA.
9.3 Power Consumption Efficiency Index
Table 18: Power Consumption Efficiency Index
Model
Power Consumption Efficiency Index -Idle Mode (W/GB)
600 GB Model 450 GB Model 300 GB Model
0.0064
0.0085
0.0114
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
28
10.0 Reliability
10.1 Start/Stop Cycles
The drive is designed to withstand a minimum of 50,000 start/stop cycles at ambient environment.
The drive is designed to withstand a minimum of 10,000 start/stop cycles at the operating environment conditions specified in
Chapter 8.0, “Environment” on page 21.
10.2 Load/Unload Cycles
The drive is designed to withstand a minimum of 300,000 load/unload cycles at the operating environmental conditions speci-
fied in Chapter 8.0, “Environment” on page 21
10.3 Data Reliability
The probability of an uncorrectable data error is 1 in 1x10
16
bits read.
ECC implemention:
• 1 symbol = 10 bits
• 1 interleaves
• 16 symbols, On-The-Fly correction
• Up to 30 symbols (total) Off-Line correction with burst error information
• LBA seeded 32 bit CRC for ECC miscorrect detection
10.4 Seek errors
A non-recoverable seek/ID miscompare error is defined as a seek operation that cannot be recovered by the error recovery procedure of the drive. The drive reports sense key 04 and sense code 02 for this error.
No drive has more than one non-recoverable seek/ID miscompare error per 100 million seek operations (1 in 1x 10
8 operated at the full range of voltage and environmental conditions.
) when
10.5 Failure prediction (S.M.A.R.T)
A recoverable equipment error is an error other than a seek/ID miscompare error or read error that is detected and corrected by the drive error recovery procedure. Examples are Write Fault, Drive Not Ready and internal drive errors.
SMART Monitoring Parameters are checked to determine if the (Read/Write/Seek) error rates exceed the drive’s threshold value when an error occurs and a minimum amount of operation has been completed. A check is also performed for a minimum level of Spare Sector Availability.
The Head Load / Unload Count, Spin Up Time and Spin Up Retry Count parameters are checked prior to reporting a “Ready” condition at Power On.
Non-recoverable equipment errors indicate a defective drive.
10.6 MTBF (Mean Time Between Failure): 2.0M hours.
This MTBF target is based on a sample population and is estimated by statistical measurements and acceleration algorithms under nominal operating conditions. MTBF ratings are not intended to predict an individual drive’s reliability. MTBF does not constitute a warranty.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
29
10.7 Preventive Maintenance
None.
10.8 Temperature Warning
Temperature Warning is enabled by setting the EWASC (Enable Warning Additional Sense Code) bit to 1 and setting DEX-
The drive temperature is reported in Log Sense page 2F. Refer to Section Log Sense Page 2F.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
30
11.0 Mechanical Specifications
11.1 Outline
11.2 Mechanical Dimensions
The drive complies with SFF-8201.
Table 19: Physical Dimensions
Height [mm]
Width [mm]
Length (base) [mm]
Length (including connector) [mm]
14.8 ± 0.2
70 ± 0.1
100.3 ± 0.15
100.6 ± 0.7
600 GB Model 204 grams
Weight [grams - maximum] 450 GB Model 204 grams
300 GB Model 196 grams
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
31
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
32
11.3 Interface Connector
The interface conforms to the specification SFF-8223, 2.5 Drive Form Factor with Serial Connector.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
33
11.4 Mounting Positions and Tappings
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
34
11.5 Drive Mounting
The drive will operate in all axes (6 directions). Performance and error rate will stay within specification limits if the drive is operated in the other orientations from which it was formatted.
The recommended mounting screw torque is 0.45 Nm (4.5 Kgf-cm). The recommended mounting screw depth is 2.5 mm maximum for bottom and 3.0 mm maximum for horizontal mounting.
To avoid performance degradation, mount the drive in the system securely enough to prevent excessive motion or vibration of the drive at seek operation or spindle rotation, using appropriate screws or equivalent mounting hardware. Consult with the issuer of this specification for actual application if necessary.
Drive level vibration tests and shock tests are to be conducted with the drive mounted to a table using the bottom four screws.
11.6 Heads Unload and Actuator Lock
Heads are moved out from the disks (unload) to protect the disk data during shipping, moving or storage. At power down, the heads are automatically unloaded from over the disk area and the head actuator locking mechanism will secure the heads in the unload position.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
35
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
36
12.0 Vibration and Shock
All vibration and shock measurements in this section are made with a bare drive. The input for the measurements are applied to the normal drive mounting points unless noted otherwise.
12.1 Operating Vibration
12.1.1 Random Vibration
The drive is designed to operate without unrecoverable errors while being subjected to the vibration levels as defined below.
The assessments are carried out during 30 minutes of random vibration using the power spectral density (PSD) levels as follows.
No Errors:
0.4 G RMS, 5-500 Hz, flat PSD profile for each of the three mutually perpendicular axes.
No Data Loss: 1.2 G RMS, 5-500 Hz, flat PSD profile for each of the three mutually perpendicular axes.
No Data Loss: 1.5 G RMS, 10-300 Hz for each of the three mutually perpendicular axes.
Note:
The specified levels are measured at the mounting points.
12.1.2 Swept Sine Vibration
The drive will meet the criterion while operating in the respective conditions as described below.
No errors:
1.0g @ 5-500 Hz sine wave, 0.5 octave/minute sweep rate
No data loss:
1.5g @ 5-500 Hz sine wave, 0.5 octave/minute sweep rate
12.2 Non-operating Vibrations
The drive will not sustain permanent damage or loss of recorded data after being subjected to the environments as described below.
12.2.1 Random Vibration
The test consists of a random vibration applied for each of the three mutually perpendicular axes. A time duration of ten minutes per axis.
1.2 G RM S, 5-500 Hz, flat PSD profile.
12.2.2 Swept Sine Vibration
The test consists of a swept sine vibration applied for each of the three mutually perpendicular axes.
3.0 G 0-peak, 5 - 500 Hz sine wave, 0.5 octave/minute sweep rate.
12.3 Operating shock
The drive will meet the criterion while operating in the respective conditions as described below.
No data loss: 15G, 11 ms duration, half sine wave shock pulse
No data loss: 60G, 2 ms duration, half sine wave shock pulse
The shock pulses of each level are applied to the drive, ten pulses for each direction and for all three mutually perpendicular axes. There must be a minimum of thirty seconds delay between shock pulses. The input level is applied to a base plate where the drive is attached using four mounting screws.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
37
12.4 Non-operating shock
The drive will not sustain permanent damage or loss of recorded data after being subjected to the environments as described below.
12.4.1 Half sine wave shock pulse
100 G, 11 ms duration, half sine wave pulse
300 G, 2 ms duration, half sine wave pulse
200 G, 0.5 ms duration, half sine wave pulse
The shocks are applied in each direction of the drive for the three mutually perpendicular axes, one axis at a time. The input level is applied to a base plate where the drive is attached using four mounting screws.
12.4.2 Rotational shock
30,000 radians /second
2
, 1 ms duration
20,000 radians /second
2
, 2 ms duration
The shock input is applied around the axis of the actuator pivot. The shock input does not displace the heads from the actuator latched position.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
38
13.0 Acoustics
13.1 Sound power levels
The upper limit criteria of A-weighted sound power levels are given in Bel, relative to one pico watt, and are shown in the following table. The measurement method is in accordance with ISO-7779.
Table 20: A-weighted sound power levels
Model
600 GB
450 GB
300 GB
Mode
Idle
Operating
Idle
Operating
Idle
Operating
A-weighted sound power level (Bel)
Typical
2.9
3.8
2.9
3.8
2.9
3.8
Maximum
3.2
4.1
3.2
4.1
3.2
4.1
Background power levels of the acoustic test chamber for each octave band are to be recorded. Sound power levels are measured with the drive supported by spacers so that the lower surface of the drive is located at a height of 25 cm from the chamber floor.
No sound-absorbing material shall be used. The acoustical characteristics of the drive subsystem are measured under the following conditions.
Idle Mode:
Powered on, disks spinning, track following, unit ready to receive and respond to host commands.
Operating Mode
Continuous random cylinder selection and seek operation of the actuator with dwell time at each cylinder. Seek rate for the drive is calculated per the formula below:
Ns = average seek rate in seeks/sec where:
Ns = 0.4 / (Tt + Tl)
Tt = published random seek time
Tl = time for the drive to rotate by half a revolution
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
39
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
40
14.0 Identification
14.1 Labels
The following labels are affixed to every hard disk drive shipped from the drive manufacturing location in accordance with appropriate hard disk drive assembly drawing:
• A label containing HGST, a Western Digital Company logo, HGST part number and the statement “Made by HGST,” or HGST approved equivalent.
• A label containing drive model number, manufacturing date, formatted capacity, country of origin or HGST approved equivalent and UL, C-UL, TUV, CE, MIC, BSMI,CTICK, RoHS and Recycle logos.
• A bar code label containing the drive serial number.
• A user designed label, per agreement
• Interface definition mark, SAS-3 Model
The labels may be integrated with other labels.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
41
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
42
15.0 Electromagnetic Compatibility
The drive, when installed in a suitable enclosure and exercised with a random accessing routine at a maximum data rate will comply with the worldwide EMC requirements listed below.
The drive is designed for system integration and installation into a suitable enclosure for use. As such, the drive is supplied as a subassembly and is not subject to Subpart B of Part 15 of the FCC Rules and Regulations.
The design of the drive serves to minimize radiated emissions when installed in an enclosure that provides reasonable shielding. As such, the drive is capable of meeting FCC Class B limits. However, it is the users responsibility to assure that the drive meets the appropriate EMC requirements in their system. Shielded I/O cables may be required if the enclosure does not provide adequate shielding, with the shields grounded to the enclosure and to the host computer.
Radiated and Conducted EMI
CISPR22
AS/NZS CISPR22
Class B
Class B
CNS13438 (Taiwan)
EN55022 (EU)
FCC Title47 Part 15 (USA)
GB9254 (China)
Class B
Class B
Class B
Class B
Class B
Class B
ICES-003, Issue 4
VCCI (Japan)
ITE Immunity
EN55024
Power Line Harmonics
EN61000-3-2 (EU)
GB17625.1 (China)
Voltage Fluctuations and Flicker
EN61000-3-3 (EU)
GB17625.2 (China)
15.1 Class B Regulatory Notices
European Union
This product is in conformity with the protection requirements of EU Council Directive 2004/108/EC on the approximation of the laws of the Member States relating to electromagnetic compatibility. Conformity is based on compliance to the following harmonized standards:
• EN 55022: 2006 + A1:2007 (Class B )
• EN 55024: 1998 +A1:2001 +A2:2003
• EN 61000-3-2: 2006
• EN 61000-3-3:1995 + Al:2001 + A2:2005
This product is also in conformity with the protection requirements of EU Council Directive 2006/95/EC on the harmonization of the laws of the Member States relating to electrical equipment designed for use within certain voltage limits. Conformity is based on compliance to the following harmonized standards:
• EN 60950-1:2006 with Am. 11, Second Edition
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
43
• IEC 60950-1:2005, Second Edition
• UL 60950-1, Second Edition, 2007-03-27
• CSA C22.2 No. 60950-1-07, Second Edition, 2007-03
HGST cannot accept responsibility for any failure to satisfy the protection requirements resulting from a non-recommended modification of the product, including the fitting of non-HGST option cards.
This product has been tested and found to comply with the limits for Class B Information Technology Equipment according to
European Standard EN 55022. The limits for Class B equipment were derived for typical residential environments to provide reasonable protection against interference with licensed communication devices.
Canada
This Class B digital apparatus complies with Canadian ICES-003.
Cet appareil numérique de la classe B est conforme à la norme NMB-003 du Canada.
Germany
Deutschsprachiger EU Hinweis:
Hinweis für Geräte der Klasse B EU-Richtlinie zur Elektromagnetischen Verträglichkeit Dieses Produkt entspricht den Schutzanforderungen der EU-Richtlinie 89/336/EWG zur Angleichung der Rechtsvorschriften über die elektromagnetische Verträglichkeit in den EU-Mitgliedsstaaten. und hält die Grenzwerte der EN 55022 Klasse B ein. Um dieses sicherzustellen, sind die Geräte wie in den Handbüchern beschrieben zu installieren und zu betreiben. Des Weiteren dürfen auch nur von der HGST empfohlene Kabel angeschlossen werden. HGST übernimmt keine Verantwortung für die Einhaltung der Schutzanforderungen, wenn das Produkt ohne Zustimmung der HGST verändert bzw. wenn Erweiterungskomponenten von Fremdherstellern ohne Empfehlung der HGST gesteckt/eingebaut werden.
Deutschland: Einhaltung des Gesetzes über die elektromagnetische Verträglichkeit von Geräten
Dieses Produkt entspricht dem "Gesetz über die elektromagnetische Verträglichkeit von Geräten (EMVG)". Dies ist die
Umsetzung der EU-Richtlinie 89/336/EWG in der Bundesrepublik Deutschland.
Zulassungsbescheinigung laut dem Deutschen Gesetz über die elektromagneti-sche Verträglichkeit von Geräten (EMVG) vom
18. September 1998 (bzw. der EMC EG Richtlinie 89/336) für Geräte der Klasse B Dieses Gerät ist berechtigt, in Übereinstimmung mit dem Deutschen EMVG das EG-Konformitätszeichen - CE - zu führen. Verantwortlich für die Konformitätserklärung nach Paragraf 5 des EMVG ist die HGST, a Western Digital Company , 5600 Cottle road, San Jose, California 95193.
Informationen in Hinsicht EMVG Paragraf 4 Abs. (1) 4:
Das Gerät erfüllt die Schutzanforderungen nach EN 55024 und EN 55022 Klasse B.
Korea (MIC)
Taiwan (BSMI)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
44
16.0 Standards
The drive is certified under the following safety standards for use in Information Technology Equipment, including Electrical
Business Equipment:
EN 60950-1:2006 with Am. 11, Second Edition, Europe
IEC 60950-1:2005, Second Edition, International
UL 60950-1, Second Edition, 2007-03-27, USA
CSA C22.2 No. 60950-1-07, Second Edition, 2007-03, Canada
The UL recognition, or the C-UL certification, is maintained for the duration of the product manufacturing life cycle. The UL and C-UL recognition marks appear on the drive label.
16.1 European Standards Compliance
This product is certified to the EN 60950-1:2006 with Am. 11, Second Edition safety standard for Europe.
16.2 German Safety Mark
The product is certified by TUV to meet EN 60950-1:2006 with Am. 11, Second Edition safety standard under the Bauart
Mark.
16.3 Flammability
The printed wiring boards, flex cables, and connectors used in this drive meet or exceed the UL minimum flammability classifications listed in the table below.
The flammability ratings are marked on the printed wiring boards and flex cables.
Component Flammability Rating
Rigid Printed Wiring Board
Flex Cable - no components
Min. V-1
Min. V-2
Flex Cable with components
Interface & motor connectors
Serial Connector
Min. V-1
Min. V-2
Min. V-1
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
45
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
46
17.0 SAS Attachment
This section defines some basic terminology and describes the behavior of the drive when attached to a
S
erial
A
ttached
S
csi
(i.e. SAS) domain.
17.1 General
This section introduces some of the terminology that is used in describing Serial Attached SCSI (i.e. SAS).
SAS is logically a bi-directional, point to point serial data channel that leverages the Scsi protocol set. Nodes are physically connected via a Port.
Ports may be connected point-to-point via SAS expanders, to form a complex switching network, referred to as a SAS domain.
SAS is defined in terms of a hierarchy of functions or 'protocol layers'. This discussion will focus in on the aspects of SAS that are relevant to this product.
• SCSI Application Layer - Clause 10
• SSP Transport Layer (
S
erial
S
CSI
P
rotocol) - Clause 9
•
•
• SAS Port Layer - Clause 8
SSP Link Layer - Clause 7
SAS PHY Layer - Clause 6
• SAS Physical Layer - Clause 5
All layers are defined in the following ANSI standard.
• "Serial Attached SCSI - 2 (SAS-2)"
In addition, this drive claims compliance with the following ANSI standards.
•
• SCSI Architecture Model (SAM-3)
SCSI Block Commands (SBC2)
17.2 SAS Features
The following SAS features are supported by the Drive.
• SAS Compliance
- "Serial Attached SCSI - 2 (SAS-2)”
• SAS Protocol
- This drive supports
S
erial
S
csi
P
rotocol (SSP).
- STP (Tunneled SATA) and SMP (Management protocol) protocols are
NOT supported.
• SAS Dual Ported Operation
- single PHY ports (i.e. Narrow port. Wide Port NOT supported)
- ports function independently with separate firmware controls
- Multiple DMA engines capable of accessing either port
- full duplex and dual port DMA data/data operations
- Maximum outstanding credit of four per port
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
47
• Physical Link Rates
- G1 (1.5 Gbps), G2 (3.0 Gbps), and G3 (6.0 Gbps) supported
- Largely Automated OOB and speed negotiation sequences
- Optional Support for the hot-plug timeout in hardware
• Partial support for Disconnect/Reconnect Mode Page (0x02)
- Maximum Connect Time Limit - SUPPORTED
- Bus Inactivity Time Limit - NOT SUPPORTED
- Maximum Burst Size - SUPPORTED
- First Burst Size - NOT SUPPORTED
•Others...
- Connection Rate Matching
- Hard Reset primitive sequence detection and validation in hardware
- Support for NOTIFY (Enable Spin-up) and NOTIFY (Power Loss Expected)
- Hashed WWN validation in hardware
- extended CDB support
17.3 SAS Names and Identifiers
In SAS, device and port names are worldwide unique names within a transport protocol. Port identifiers are the values by which ports are identified within a domain, and are used as SAS addresses. Phy identifiers are unique within a device.
Table 21: Names and identifiers
Object
Port Identifier
Port Name
Device Name
Phy Identifier
SAS Implementation
SAS address
Not defined
SAS address
Phy identifier
Where the SAS Address format is defined by ANSI as follows:
Byte/Bit
0
5
6
3
4
7
1
2
7 6
NAA (5h)
(LSB)
5 4 3
IEEE Company ID
(MSB)
Vendor Specific Identifier
(LSB)
2
(MSB)
1
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
48
0
The SAS Device Name is a unique SAS address world wide name. This device name is reported through the SCSI Vital Products Data.
Each of the two SAS ports also has a unique SAS address world wide name. These port identifiers are reported in the IDEN-
TIFY Address frame and are used as source and destination addresses in the OPEN address frame. They are also reported through the SCSI Vital Products Data.
Since this drive is one device with two ports it has three SAS addresses. All SAS Addresses are in 64-bit IEEE Registered
Name format, as illustrated in Table 22.
Table 22: IEEE Registered Name format
63-60 59-36
0101 OUI in Canonical Form
Bit
35-24
Block Assignment
23-2
S/N
1-0
Object
The Name Address Authority field (5h) specifies the format used for the rest of the name as follows:
Field
OUI
Block Assignment
Object
S/N
Description
Organizationally Unique Identifier (24 bits). Canonical form means that each byte is stored in “bit reversed” order.
Block assignment within HGST, a Western Digital Company
Device Name/Port Identifier
00b
01b
Device
Port 1
10b Port 2
11b Not assigned
Sequentially increasing drive serial number assigned at manufacturing.
17.4 Spin up
The drive supports the Active Wait, Active, and Stopped states specified by the SAS standard. After power on, the drive enters the Active Wait state. The Drive will not spin up it's spindle motor after power on until it receives a NOTIFY (Enable Spinup) primitive on either port to enter the Active state. If a NOTIFY (Enable Spinup) primitive is received prior to receiving a Start-
Stop Unit command with the Start bit set to one, spin up will begin immediately. For SAS, this is analogous to auto-spinup function in legacy SCSI. This provision allows the system to control the power spikes typically incurred with multiple drives powering on (and spinning up) simultaneously.
If a StartStop command with the Start bit set to one is received prior to receiving a NOTIFY (Enable Spinup), the Drive will not start it’s spindle motor until Notify (Enable Spinup) is received on either port. Successful receipt of a NOTIFY (Enable
Spinup) is a prerequisite to spin up.
If the StartStop Unit command with the Start bit set, also has the immediate bit set, status will be returned prior to actually spinning up the motor, but the actual act of spinning up the motor is deferred until receipt of the NOTIFY (Enable Spinup) primitive. If a media access command is received after sending immediate Status and prior to receiving a NOTIFY (Enable
Spinup), the Drive will terminate the command with CHECK CONDITION status with a sense key of NOT READY and an additional sense code of LUN NOT READY, NOTIFY (ENABLE SPINUP) REQUIRED. If a media access command is received after receiving the NOTIFY (Enable Spinup) primitive and before the drive is finished spinning up, the Drive will terminate the command with CHECK CONDITION status with a sense key of LUN NOT READY and an addition sense code of
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
49
LUN IS IN THE PROCESS of BECOMING READY.
NOTIFY
(ENABLE SPINUP )
Active
STOP UNIT
Power On Active Wait
STA R T U NIT
S TOP U NIT
Stopped
17.5 PHY Layer
The Phy layer defines 8b10b coding and OOB signals. The Phy layer is the interface between the link layer and the physical layer. This section describes Phy Layer behaviors of the Drive. For a complete description of SAS Phy Layer, please see the
ANSI specification, SAS 1.1.
17.5.1 Link Reset Sequence
The Link Reset Sequences for SAS are defined in the SAS 2 ANSI specification and shown below. As show in the diagram, a
Phy Reset sequence, consists of an OOB sequence, followed by speed negotiations. Link Reset Sequences will always include a PHY Reset Sequence, followed by an Identification Sequence. Inclusion of a Hard reset sequence is optional. If Hard Reset is performed, it will be preceded by a Phy Reset sequence, and will be followed by Phy Reset/Identification sequences.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
50
SAS Time
Link Reset sequence
Phy Reset sequence
OOB sequence Speed Negotiation sequence
Identification sequence
SAS w/Hard Reset
Phy Reset sequence
Time
Link Reset Sequence with hard Reset
Hard Reset Sequence
Phy Reset sequence Identification sequence
17.5.2 Hard Reset
A Hard Reset sequence on a port will not affect the other port, but the outstanding commands on the other port will be aborted due to the LUN reset associated with the Hard Reset. The effect of a Hard Reset will be similar to a Power on Reset, and will result in the re-initialization of all Drive resources. The first command issued from every initiator on the port that received the
Hard Reset will result in a CHECK CONDITION with a sense key of UNIT ATTENTION and an additional sense code of
SCSI BUS RESET OCCURRED. The first command issued from every initiator on the other port will result in a CHECK
CONDITION and an additional sense code of BUS DEVICE RESET OCCURRED.
A Hard Reset Sequence will never be issued by the Drive. A link reset will be initiated by the drive on the affected port upon completion of Hard Reset processing.
17.5.3 SAS OOB (Out of Band)
Out of band (OOB) signals are low-speed signal patterns detected by the Phy that do not appear in normal data streams. They consist of defined amounts of idle time followed by defined amounts of burst time. During the idle time, D.C. idle is transmitted. During the burst time, ALIGN (0) primitives are transmitted repeatedly. The signals are differentiated by the length of idle time between the burst times.
As a SAS compliant device, the Drive uses three OOB signals: COMINIT/COMRESET and COMWAKE and COM-
SAS.OOB operations are beyond the scope of this specification. Please refer to the ANSI SAS 2 specification for more details.
The drive will initiate OOB by sending COMINITs, under the following conditions:
• POR
• loss of sync
• Identify timeout
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
51
17.5.4 SAS Speed Negotiation
The Drive supports G1 (1.5 Gbps), G2 (3.0 Gbps), and G3 (6.0 Gbps) negotiation speeds. The default maximum negotiation rate is G3 speed (per byte 32 in the Phy Control and Discover Mode Page 19 subpage 1). Drive is SAS2 device and supports
SNW-1, SNW-2, and SNW-3 speed negotiation with Phy capabilities exchange, and training (Train-SNW). Phy capabilities is defined in table below:
Phy Capabilities:
Byte /Bit
0
1
7 6
Start =1b TX SSC
Type = 0b
G1 Without
SSC=1b
G1 With
SSC=1b
5
Reserved
G2 Without
SSC=1b
4
G2 With
SSC=1b
3 2 1 0
Requested Logical Link Rate = 0h
G3 Without
SSC=1b
G3 With
SSC=1b
Reserved
2
3
Reserved
Reserved
Parity
•
Start bit is 1 to indicate the beginning of the Phy capabilities
• TX SSC Type bit is set to 1 to indicate that Phy’s transmitter uses center-spreading SSC when SSC is enabled.
A TX SSC TYPE bit set to 0 indicates that Phy’s transmitter uses down-spreading SSC when SSC is enabled.
• Request Logical Link Rate field is 0 to indicate that drive does not support multiplexing
• G1 Without SSC bit set to 1 indicates that drive supports G1(1.5 Gbps) without SSC
• G2 Without SSC bit set to 1 indicates that drive supports G2(3.0 Gbps) without SSC
• G3 Without SSC bit set to 1 indicates that drive supports G3(6.0 Gbps) without SSC
• G1 With SSC bit set to 1 indicates that drive supports G1(1.5 Gbps) with SSC
• G2 With SSC bit set to 1 indicates that drive supports G2(3.0 Gbps) with SSC
• G3 With SSC bit set to 1 indicates that drive supports G3(6.0 Gbps) with SSC
•
Parity bit is set to 1 for even parity of the total number of SNW-3 phy capabilities, including Start bit
.
Training is based on the highest untried commonly supported settings on the exchanged SNW-3 supported settings bits. If a
Train-SNW is invalid and there are additional, untried, commonly supported settings exchanged during SNW-3, then a new
the supported settings bits.
Table 23: Supported Settings Bit Priorities
Priority
Highest
...
...
...
...
Lowest
Bit
G3 With SSC bit
G3 Without SSC bit
G2 With SSC bit
G2 Without SSC bit
G1 With SSC bit
G3 Without SSC bit
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
52
17.5.5 PHY Error Handling
This section defines the PHY layer error handling of the drive.
Error
Link Reset
COMINIT Timeout
Error Handling Procedure
After POR or Hard Reset, the drive initiates link reset by transmitting exactly 1
COMINIT. For other resets, the drive does not initiate Link Reset.
If COMINIT or COMSAS is not received before the "Hot Plug Timeout" period expires, the drive continues to transmit DC zero and wait for COMINIT/COM-
SAS. Firmware is notified.
This is not considered an error.
COMSAS Timeout
If COMINIT is detected, COMSAS is transmitted, and COMSAS is not received before the COMSAS Detect Timeout timer expires, firmware is notified and the drive continues to transmit DC zero and wait for COMINIT.
Speed Negotiation Errors
If speed negotiation fails with no match, or if the drive fails retrying the matched link rate, firmware is notified and the drive continues to transmit DC zero and wait for COMINIT. If the match link rate retry fails, the Phy Reset Problem counter is incremented (Log Page 0x18).
Loss of Sync
If the drive loses DWORD sync long enough for the loss of sync timer to expire, firmware is notified and the drive transmits a COMINIT to initiate a new link reset. The Loss of DWORD sync counter is incremented (Log Page 0x18).
Disparity/Invalid DWORD
Error
If a disparity error or an invalid DWORD is detected by the drive, the Invalid
DWORD Count is incremented (Log Page 0x18). The Running Disparity Error
Count in Log Page 0x18 is not used
17.6 Link Layer
The SAS link layer defines primitives, address frames, and connections. The Link layer is the interface between the Port layer and the Phy layer. This section describes Link Layer behaviors of the Drive. For a complete description of SAS Link Layer, please see the ANSI specification, SAS 1.1.
17.6.1 Address Frames
Address frames are used for the identification sequence and for connection requests and are only sent outside connections. The
Address Frame format is defined below:
Table 24: Address Frame Format
Byte
7
Rsvd 0
1-27
28-31
6
Bit
5
Device Type
4 3 2 1
Address Frame Type
Frame Type Dependent bytes
CRC
0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
53
the definition of the frame type dependent bytes.
Table 25: Frame type:
Value Address Frame Type Description
0001b
Others
OPEN: Connection Request
RESERVED
17.6.1.1 Identify Address Frame
The IDENTIFY address frame format is used for the identification sequence. The IDENTIFY address frame is sent after the phy reset sequence completes. The Identify Address Frame format is defined as follows:
Table 26: Identify Address Frame
Byte
0
1
2
3
4-11
12-19
20
21
7
Rsvd
6 5
Device Type = 1
Reserved
Reserved
4
Reserved
Reserved
Bit
3
SSP
Initiator
Port=0b
SSP
Target
Port=1b
Device Name
SAS Address
2 1
Address Frame Type = 0
SSP
Initiator
Port=0b
Reason
SSP
Initiator
Port=0b
STP
Target
Port=0b
SMP
Target
Port=0b
PHY Identifier
Inside
ZPSDS Persistent=0b
Reserved
CRC
Requested
Inside
ZPSDS=0b
0
Rsvd
Rsvd
Break_Reply
Capable=1b
22-27
28-31
• Device Type: set to 001b to indicate that this drive is an "End Device".
• Address Frame Type: set to 00b to indicate that this is an IDENTIFY.
•
Reason: field indicates the reason for link reset sequence as defined inTable 27 on page 55
• Initiator Port bits: set to 000b since this device is a target device only
•
Target Port bits: set to 100b since this device is a SSP target device only
•
Device Name: field contains Target Device Identifier
• SAS ADDRESS: field contains the port identifier of the SAS port transmitting this frame.
• PHY Identifier: field contains the PHY identifier of the PHY transmitting this frame.
• Break_Reply Capable: set to 1b to indicate that this port is capable of sending BREAK_REPLY primitive sequence in responding of receiving BREAK primitive sequences
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
54
• Requested Inside ZPSDS: set to 0b since this is an "End Device"
• Inside ZPSDS Persistent: set to 0b since this is an "End Device"
Table 27: Reason field
Value Address Frame Type Description
01b
02b
04b
07b
08b
Others
OPEN: Connection Request
Hard Reset (received a Hard Reset during hard reset sequence)
Loss of dword synchronization
Break timeout timer expired
Phy test function stopped
RESERVED
17.6.1.2 OPEN Address Frame
The OPEN address frame format is used for the identification sequence. The OPEN address frame is sent after the phy reset sequence completes. The OPEN Address Frame format is defined as follows:
Byte Bit
0
7
Initiator
Port=0
6 5
Protocol = 1
4 3 2 1
Address Frame Type = 1
0
1
2-3
4-11
12-19
20
21
22-23
24-27
28-31
Features = 0 Connection Rate = 8h or 9h or Ah
Initiator Connection Tag
Destination SAS Address
Source SAS Address
Source Zone Group
Pathway Blocked Count
Arbitration Wait Time
More Compatible Features
CRC
• Initiator Port: This bit is set to zero when the Drive is the source port acting as a SAS target.
• Protocol: this field is set to 001b to indicate SSP Protocol.
• Features: this field is set to zero and ignored by the Drive per SAS 1.1.
• Connection Rate: field should be set to 8h (1.5Gbps) or 9h (3Gbps), depending on requested link rate. Rate matching is supported by the Drive, therefore if the Link to the drive is 3.0Gbps, and the Connection Rate is 1.5Gbps, the Drive will insert ALIGNs between DWords, to match the Connection Rate.
• Initiator Connection Tag: The Drive will set this value to the last value received from this Initiator.
• Destination SAS Address: field contains the port identifier of the SAS port to which a connection is being requested.
• Source SAS Address: field contains the port identifier on the port that originated this frame (i.e. the drive’s port address).
• Source Zone Group: This field is set to zero and ignored by the Drive per SAS 2.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
55
• Pathway Blocked Count: this field indicates the number of times the port has retried this connection request due to receiving OPEN_REJECT (PATHWAY BLOCKED). The Drive willl not increment the PATHWAY BLOCKED
COUNT value past FFh.
• Arbitration Wait Time: this field indicates how long the port transmitting the OPEN address frame has been waiting for a connection request to be accepted. For values from 0000h to 7FFFh, the Arbitration Wait Time timer increments in one microsecond steps. For values from 8000h to FFFFh, the Arbitration Wait Time timer increments in one millisecond step.
•
More Compatible Features: this field is set to zero and ignored by the Drive per SAS 1.1.
17.6.2 Link Layer Error Handling
This section defines the Link layer error handling of the drive.
Error
IDENTIFY Timeout
BREAK Received
Error Handling Procedure
If IDENTIFY is not received before the IDENTIFY timer expires (1ms), firmware is notified and the drive transmits a COMINIT to initiate a new link reset.
If BREAK is received while the drive has ACK/NAK balance, BREAK or
BREAK_REPLY is transmitted and a new connection may be opened if the drive still has frames to transmit. Firmware is not notified. If BREAK is received while the drive does NOT have ACK/NAK balance, BREAK or
BREAK_REPLY is transmitted and the current command is aborted and will return Check Condition status with sense data indicating an ACK/NAK timeout.
NAK and ACK/NAK Timeout If a NAK is received on a RESPONSE frame, the RESPONSE frame is retransmitted with the RETRANSMIT bit set to zero. If an ACK or NAK is not received for a RESPONSE frame within 1ms, the RESPONSE frame will be retransmitted with the RETRANSMIT bit set to one. The drive will retry sending a RESPONSE frame once.
Bad Frame CRC
If a frame fails the CRC check, the frame is NAKed by the drive and discarded.
This is a link layer function. The command associated with a NAKed DATA or
XFER_RDY frame is aborted with check condition status and sense data corresponding to DATA_PHASE_ERROR is returned. COMMAND frames that fail the CRC check are NAKed and discarded.
OPEN_REJECT
OPEN_REJECT – Retryable Variations
• OPEN_REJECT(RETRY) - Will be retried indefinitely by the drive. This case is considered to be occur when the initiator is temporarily not available to accept connections (for example when it is not able to extend R-Rdy credit at this time due to lack of buffers...), so the initiator will ask us to keep "RETRY"-ing, until it becomes available at a later time. Thus, we don't consider this an error condition, but part of normal behavior for the initiator.
• OPEN_REJECT(RATE_NOT_SUPPORTED) – If this occurs, it must mean that a link between the drive and initiator renegotiated to a lower link rate after the command was received. In this case, we retry in a new connection at 1.5Gbps. If this error is received for a 1.5Gbps connection, the command is internally aborted.
OPEN_REJECT – (PATHWAY_BLOCKED)
• OPEN_REJECT(BAD_DESTINATION),
OPEN_REJECT(WRONG_DESTINATION),
OPEN_REJECT(PROTOCOL_NOT_SUPPORTED) – If these
OPEN_REJECTs are received, we internally abort the command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
56
\
Credit Timeout
DONE Timeout
CREDIT_BLOCKED
OPEN Frame Checking
OPEN Response Timeout
CLOSE Timeout
Phy Not Ready
If credit is not received before the credit timer expires,
DONE(CREDIT_TIMEOUT) is sent to the Initiator.
If credit is extended and the DONE timer expires, BREAK is sent by hardware to tear down the connection.
If CREDIT BLOCKED is received and the drive has frames to send in the current connection, DONE(CREDIT_TIMEOUT) is returned. Otherwise,
DONE(NORMAL) is returned.
Reserved fields in the OPEN frame are not checked.
• The Dest Address field is checked, and if it doesn’t match
OPEN_REJECT(WRONG_DESTINATION) is returned.
• The Protocol field is checked and if it isn’t set to SSP
OPEN_REJECT(PROTOCOL_NOT_SUPPORTED) is returned.
• If the Link Rate exceeds the physical link rate on that port,
OPEN_REJECT(LINK_RATE_NOT_SUPPORTED) is returned.
• The Initiator bit is not checked.
If AIP or OPEN_ACCEPT is not received before the OPEN Response timer expires, the hardware transmits BREAK.
If CLOSE is not received before the CLOSE timer expires, the hardware transmits BREAK.
If Link Reset occurs outside of a connection, commands can execute normally across the link reset. If a link reset occurs inside of a connection, the behavior is similar to BREAK in that it is treated as an abruptly closed connection. In cases where the command cannot be continued normally (e.g. a frame is corrupted by
OOB signals, or we do not have ACK/NAK balance), the command is terminated with CHECK CONDITION status with sense data corresponding to ACK/
NAK TIMEOUT.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
57
17.7 Transport Layer
The Transport layer defines frame formats. The Transport layer is the interface between the application layer and port layer. It is responsible for constructing and parsing frame contents. For SSP, the transport layer only receives frames from the port layer that are going to be ACKed by the link layer. This section describes Transport Layer behaviors of the Drive. For a complete description of SAS Transport Layer, please see the ANSI specification, SAS 1.1.
The transport layer defines the frame format as follows.
Table 28: SAS Frame Format
Byte
0
1-3
4
5-7
8-9
10
11
12-15
16-17
18-19
20-23
24-m
(n-3)-n
7 6 5 4
Bit
3 2 1
Frame Type
Hashed Destination Address
0
Reserved
Hashed Source Address
Reserved
Reserved TLR Control = 00b Retry Data
Frames =0b
Retransmit
Reserved
Reserved
Rsvd
# of fill bytes
Tag
Target Port Transfer Tag
Data Offset
Information Unit
Fill Bytes (if Needed)
CRC
• FRAME TYPE field, which defines the format of the INFORMATION UNIT field as follows:
Code
01h
05h
06h
07h
16h f0-ffh all others
Name of Frame
DATA
XFER_RDY
COMMAND
RESPONSE
TASK
Information Unit
Data
Data Transfer Ready
Command
Response
Task Management
Function
Originator
Initiator or Target vendor specific reserved
Target
Initiator
Target
Initiator
IU Size (bytes)
1-1024
12
28-284
24-1024
28
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
58
• The HASHED DESTINATION SAS ADDRESS field contains the hashed value of the destination SAS address.
• The HASHED SOURCE SAS ADDRESS field contains the hashed value of the source SAS address.
•The TLR CONTROL field is not supported
•The RETRY DATA FRAMES is not supported
•The CHANGING DATA POINTER is not supported
• The NUMBER OF FILL BYTES field indicates the number of fill bytes between the INFORMATION UNIT field and the CRC field. The RETRANSMIT bit is set to one for RESPONSE frames when attempting to retransmit this frame due to receiving an error during the initial transmission. It shall be set to zero for all other frame types. The NUM-
BER OF FILL BYTES field shall be set to zero for all frame types except DATA frames
•. The TAG field contains a value that allows the SSP port to establish a context for commands and task management functions.
• The TARGET PORT TRANSFER TAG field is set and used by the drive. The initiator should echo this field in outbound data IU.
• The INFORMATION UNIT field contains the information unit, the format of which is defined by the FRAME TYPE field.
• Fill bytes shall be included after the INFORMATION UNIT field so the CRC field is aligned on a four byte boundary.
17.7.1 Command Information Unit
The COMMAND frame is sent by an SSP initiator port to request that a command be processed by the drive.
Table 29: COMMAND Information Unit
Byte
7 6
0-7
8
9 Disable first burst=0
10
11
12-27
28-n
5
Reserved
4
Bit
3
Logical Unit Number
Reserved
2
Reserved
Additional CDB Length (in Dwords)
CDB
Additional CDB Bytes
1
Task
Attribute
Rsvd
0
• The LOGICAL UNIT NUMBER field contains the address of the logical unit. The drive only supports a LUN of 0’s.
• A DISABLE FIRST BURST bit is not supported by the drive
• The TASK ATTRIBUTE field is defined as follows:
Value Attribute
000b Simple_Q
001b Head_of_Q
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
59
010b Ordered_Q
101b Reserved
• The ADDITIONAL CDB LENGTH field contains the length in dwords (four bytes) of the ADDITIONAL CDB field.
• The CDB and ADDITIONAL CDB BYTES fields together contain the CDB.
17.7.2 TASK Information Units
Table 30: TASK Information Unit
Byte
7
0-7
8-9
10
11
12-13
14-27
6 5
Bit
4 3
Logical Unit Number
Reserved
Task Management Function
Reserved
Tag of Task to be Managed
Reserved
2 1 0
• The LOGICAL UNIT NUMBER field contains the address of the logical unit. The drive only supports a LUN of 0’s.
•
The TASK MANAGEMENT FUNCTION field is defined as follows:
Value Function
01h
ABORT TASK: The Drive shall perform the ABORT TASK associated with the value of the
TAG OF TASK TO BE MANAGED field
02h
04h
08h
ABORT TASK SET: The Drive shall perform the ABORT TASK SET by aborting all outstanding tasks for the Initiator that sent the TMF.
CLEAR TASK SET: This TMF causes the Drive to abort all tasks in the task set. The action is equivalent to receiving a series of Abort Task requests from all Initiators.
A unit attention condition shall be generated for all other Initiators with tasks in the task set.
The Additional Sense Code shall be Commands cleared by another Initiator.
LUN RESET: The LUN RESET causes the Target to execute a hard reset. This means:
1. Abort all tasks for all Initiators on either both ports.
2. Release any device reservation on either port.
3. Set a Unit Attention condition for all Initiators.
40h
80h
81h
CLEAR ACA (not supported)
QUERY TASK: The drive shall return a response of FUNCTION SUCCEEDED if the specified task exists, or FUNCTION COMPLETE if the specified task does not exist.
QUERY TASK SET: The drive shall return a response of FUNCTION SUCCEEDED if there is any task exist, or FUNCTION COMPLETE if there is no task exist.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
60
82h others
QUERY ASYNCHRONOUS EVENT (formerly QUERY UNIT ATTENTION): The drive shall return a response of FUNCTION SUCCEEDED if there is a unit attention or a deferred error pending, or FUNCTION COMPLETE if there is no unit attention or no deferred error pending.
RESERVED: The Drive will return a RESPONSE frame with the
DATAPRES field set to
RESPONSE_DATA and its
RESPONSE CODE field set to TASK MANAGEMENT FUNC-
TION NOT SUPPORTED.
• If TMF is set to ABORT TASK or QUERY TASK, the TAG OF TASK TO BE MANAGED field specifies the TAG value from the COMMAND frame that contained the task to be aborted or checked. For all other TMF’s, this field is ignored.
•If TMF is set to QUERY ASYNCHRONOUS EVENT, the Additional Response Information argument is set to 000000h for the response of FUNCTION COMPLETE. If the response is FUNCTION SUCCEED, the Additional Response
Information argument is set as defined in table 31.
Table 31: Additional Response Information argument for Query Async Event
Byte
0
1
2
7 6
RESERVED
Bit
5 4
UADE DEPTH
3 2 1
SENSE KEY
ADDITIONAL SENSE CODE
ADDITIONAL SENSE CODE QUALIFIER
0
The SENSE KEY field is the value of the SENSE KEY field in the highest-priority pending unit attention condition or deferred error.
The ADDITIONAL SENSE CODE field is the value of the ADDITIONAL SENSE CODE field in the highest-priority pending unit attention condition or deferred error.
The ADDITIONAL SENSE CODE QUALIFIER field is the value of the ADDITIONAL SENSE CODE QUALIFIER field in the highest-priority pending unit attention condition or deferred error
Table 32: UADE DEPTH field
Code Description
00b The combined number of unit attention conditions and deferred errors is unknown
01b
10b
11b
The combined number of unit attention conditions and deferred errors is one
The combined number of unit attention conditions and deferred errors is greater than one
Reserved
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
61
17.7.3 XFER_RDY Information Units
The XFER_RDY frame is sent by the Drive to request write data (i.e. out bound data) from the initiator.
Table 33: XFER_RDY Information Unit
Byte
0 - 3
4 - 7
8 - 11
7 6 5
Bit
4 3
REQUESTED OFFSET
WRITE DATA LENGTH
RESERVED
2 1 0
•The REQUESTED OFFSET field contains the buffer offset of the segment of write data the Initiator may transmit to the
Drive (using DATA frames). The requested offset shall be a multiple of four.
•The WRITE DATA LENGTH field contains the number of bytes of write data the Initiator may transmit to the Drive
(using DATA frames) from the requested offset.
17.7.4 DATA Information Units
The DATA frame is sent by the Drive to the Initiator (in bound data) or by the Initiator to the Drive (out bound data).
Table 34: DATA Information Unit
Byte Bit
7 6 5 4 3 2 1 0
0 - (n-1) DATA
17.7.5 RESPONSE Information Units
The RESPONSE frame is sent by the Drive to the Initiator (in bound data) or by the Initiator to the Drive (out bound data).
Table 35: Response Information Unit
Byte
0-7
8-9
10
11
12 - 15
16 - 19
20 - 23
24 - (24+m)
(24+m) -
(23+m+n)
7 6 5
Bit
4 3
RESERVED
2 1 0
MSB RETRY DELAY TIMER LSB
RESERVED DataPres
STATUS
Reserved
SENSE DATA LENGTH (n bytes)
RESPONSE DATA LENGTH (m bytes)
RESPONSE DATA
SENSE DATA
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
62
•The RETRY DELAY TIMER field contains the retry delay timer code which is defined as follows:
Status Code
BUSY
QUEUE FULL
Retry Delay Timer Code
0000h
0001h-FFEFh
FFF0h-FFFDh
FFEFh
FFFFh
0000h
0001h-FFEFh
Description
Same as normal busy
The number of 100 milliseconds increments which Initiator should wait before sending another command to
Drive
RESERVED
Initiator should stop sending commands to Drive
Drive is not able to accept the command
Same as normal busy
Initiator should wait before sending another command to the Drive until:
a) At least the number of 100 milliseconds increments indicated in the RETRY DELAY TIMER CODE field have elapse; or
b) A command addressed to the Drive completes.
GOOD
CHECK CONDITION
CONDITION MET
RESERVATION CONFLICT
ACA ACTIVE
TASK ABORT
FFF0h-FFFFh
0000h-FFFFh
0000h-FFFFh
0000h-FFFFh
0000h-FFFFh
0000h-FFFFh
0000h-FFFFh
RESERVED
RESERVED
RESERVED
RESERVED
RESERVED
RESERVED
RESERVED
•The DATAPRES field, which indicates the format and content of the STATUS field, SENSE DATA LENGTH field,
RESPONSE DATA LENGTH field, RESPONSE DATA field, and SENSE DATA field.
00b
01b
NO DATA: no data present
RESPONSE_DATA: response data present
10b
sense data present
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
63
Table 36: RESPONSE DATA
Byte
7
0 - 2
3
6
• RESPONSE CODES are defined as follows:
5
Value
00b
02b
04b
05b
4
Bit
3
RESERVED
RESPONSE CODE
2 1
RESPONSE Code Description
Task Management Function complete
Invalid Frame
Task Management Function not supported
Task Management Function failed
0
17.7.6 Sequences of SSP Information Units
SSP Information Units are used in conjunction with one another to execute SCSI commands. This section provides a brief overview of SAS SSP Information Unit sequences, that would be required to complete a SCSI command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
64
Initiator
Command IU
Target
Data IU (s)
Initiator
Command IU
Target
Xfr_Rdy IU
Data IU (s)
Response IU Response IU
Time
Read Type Command
IU Sequence
Time Time
Write Type Command
IU Sequence
Time
Figure 1: SSP Information Unit Sequences
17.7.7 Transport Layer Error Handling
This section defines the Transport layer error handling by the drive.
Error Error Handling Procedure
SSP Header Field Checking
Reserved fields in SSP frames are not checked.
Data Offset Error
If a DATA frame with an invalid Data Offset is received, the command associated with the DATA frame is aborted with Check Condition status and sense data corresponding to a DATA OFFSET ERROR is returned
I_T NEXUS Loss Timeout
If a connection cannot be established to an initiator before the I_T NEXUS
LOSS timer expires (Mode Page 0x19), all commands from the initiator are internally aborted. The first new command received from the affected Initiator results in a CHECK CONDITION with sense data corresponding to I_T
NEXUS LOSS OCCURRED.
Initiator Response Timeout
If DATA frames corresponding to an outstanding XFER_RDY frame are not received before the Initiator Response timer expires (Mode Page 0x19), the command is aborted with CHECK CONDITION status and sense data corresponding to INITIATOR RESPONSE TIMEOUT is returned for the affected command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
65
Data Overflow
Invalid Target Port Transfer Tag If a DATA frame is received and the TPTT is not set to the value used in the corresponding XFER_RDY frame, the frame is discarded. If a COMMAND or
TASK frame is received with the TPTT set to a value other than 0xFFFF, a
RESPONSE frame with RESPONSE_DATA set to INVALID FRAME is returned.
Invalid Frame Length
If more data is received than requested via an XFER_RDY frame, the affected command is aborted with CHECK CONDITION status with sense data corresponding to TOO MUCH WRITE DATA is returned.
If a DATA frame is received with zero bytes of payload data, the frame is discarded. This is not considered an error. If a COMMAND/TASK frame that is too short is received, RESPONSE data corresponding to INVALID FRAME is returned. The additional CDB length field of a COMMAND frame is not checked for correctness. If a DATA frame is received with a payload greater than 1024 bytes, the frame is discarded and the command is aborted with
CHECK CONDITION status and sense data corresponding to
DATA_PHASE_ERROR is returned.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
66
18.0 SCSI Command Set
Summaries of the SCSI commands supported by the drive are listed below. O = optional, M = mandatory
Table 37: SCSI Commands Supported
O
O
M
O
O
O
O
O
O
M
O
O
O
M
M
O
O
O
O
O
O
Type
M
M
O
O
O
O
O
7Fh/09h
3Ch
25h
9Eh/10h
37h
B7h
3Eh
07h
1Ch
17h
57h
A3h/05h
A0h
5Ah
5Eh
5Fh
34h
08h
28h
A8h
88h
Code
04h
12h
4Ch
4Dh
15h
55h
1Ah
O
O
M
M
O
O
O
O
M
O
O
A3h/0Ch
A3h/0Dh
03h
16h
56h
01h
0Bh
2Bh
1Dh
A4h/06h
1Bh
Description
PERSISTENT RESERVE IN (5E), page 167
PERSISTENT RESERVE OUT (5F), page 170
READ CAPACITY (10) - (25), page 187
READ CAPACITY (16) (9E/10), page 189
READ DEFECT DATA (37), page 190
READ DEFECT DATA (B7), page 194
REASSIGN BLOCKS (07), page 197
RECEIVE DIAGNOSTICS RESULTS (1C), page 199
REPORT DEVICE IDENTIFIER (A3/05), page 204
REPORT SUPPORTED OPERATION CODES (A3/0C), page 207
REPORT SUPPORTED TASK MANAGEMENT FUNCTIONS
SEND DIAGNOSTIC (1D), page 219
SET DEVICE IDENTIFIER (A4/06), page 226
START STOP UNIT (1B), page 227
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
67
M
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
M
O
O
M
O
35h
91h
00h
2Fh
AFh
AFh
7Fh/0Ah
0Ah
2Ah
AAh
8Ah
7Fh/0Bh
2Eh
AEh
8Eh
7Fh/0Ch
3Bh
3Fh
41h
93h
7Fh/oDh
SYNCHRONIZE CACHE (10) - (35), page 230
SYNCHRONIZE CACHE (16) - (91), page 231
TEST UNIT READY (00), page 232
VERIFY (32) - (7F/0A), page 238
WRITE (32) - (7F/0B), page 245
WRITE AND VERIFY (10) - (2E), page 247
WRITE AND VERIFY (12) - (AE), page 248
WRITE AND VERIFY (16) - (8E), page 249
WRITE AND VERIFY (32) - (7F/0C), page 250
WRITE SAME (16) - (93), page 258
WRITE SAME (32) - (7F/0D), page 259
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
68
18.1 SCSI Control Byte
The Control Byte is the last byte of every CDB. The format of this byte is shown below.
Table 38: SCSI Control Byte
BIT
7
VU = 0
6 5 4 3 2 1 0
Reserved = 0
FLAG LINK
VU
VU stands for Vendor Unique.
FLAG**
If Link is zero, Flag must also be zero. If Link is one, Flag may also be one. Typically this bit is used to cause an interrupt in the Initiator between linked commands.
LINK**
This bit is set to one to indicate that the Initiator desires an automatic link to the next command upon successful completion of the current command.
Note: * - The drive ignores the link bit and flag bit in the CDB.
18.2 Abbreviations
These abbreviations are used throughout the following sections:
LUN
Logical Unit Number. An encoded three bit identifier for the logical unit.
VU
Vendor Unique bits
LBA
Logical Block Address
MSB
Most Significant Byte
LSB
Least Significant Byte
18.3 Byte ordering conventions
In this specification, where it is not explicitly stated, all multi-byte values are stored with the most significant byte first. For example, in a 4 byte field, byte 0 will contain the MSB and byte 3 the LSB.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
69
18.4 FORMAT UNIT (04)
Table 39: FORMAT UNIT (04)
Byte
0
1
2
3-4
5
7
FMTPINFO
VU = 0
6 5
BIT
4 3
Command Code = 04h
LONG LIST=0 FMTDATA CMPLIST
VU = 0
Obsolete = 0
Reserved = 0
2 1
Defect List Format
FLAG
0
LINK
•FMTPINFO (Format Protection Information) in combination with the Protection Field Usage field in the Parameter
List Header specifies whether or not the drive enables or disables the use of protection information (see table defined in the Parameter List Header section).
• FmtData set to one specifies that a Data Out phase follows the Command phase. The Data Out phase consists of a
Parameter List header, optionally followed by an Initialization Pattern Descriptor, optionally followed by a Defect
List. If FmtData=0, the following defaults are assumed: DPRY=0, DCRT=1, STPF=1, IP=0, DSP=0, Immed=0.
• CmpLst
• - set to one specifies that the Grown Defect List (GList) existing prior to the issuance of the Format Unit command be discarded. If provided, the DList then becomes the GList. Following these operations, the Drive will be formatted with the PList and GList.
• - set to zero specifies that the GList existing prior to the issuance of the Format Unit command is retained. If provided, the DList is combined with the GList to become the new GList. Following these operations, the Drive will be formatted with the PList and GList.
Note: The drive manages two internal defect lists and one external. The Plist is created at time of manufacture. The Glist is built after manufacture by the Initiators’ use of the REASSIGN BLOCK command and the Automatic Reallocate functions.
The Dlist is an external list. It is supplied by the Initiator in the Data Out phase of the FORMAT UNIT command.
• Defect List Format specifies the format of the defect descriptor transferred to the Target when FmtData bit is set to one.
The Target supports the following three defect descriptor formats for the FORMAT UNIT command:
100b Bytes From Index format
If the FmtData bit is set to zero, this field must also be zero. Otherwise the command will complete with a CHECK
CONDITION with a sense key of Illegal Request and an additional sense code of Invalid Field in CDB.
•Notes:It is recommended that the MODE SELECT command be issued prior to the FORMAT UNIT command to specify parameters that affect the formatting process.
The Block Length parameter of the Mode Select Parameter List’s Block Descriptor is used during formatting and is saved following a successful format operation. If a MODE SELECT command has not been issued since the last reset or start-up (bring-up) sequence, then the Block Length from the previous format operation is used.
Subsequent to receiving a FORMAT UNIT command, the Target responds to commands as follows:
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
70
- All commands except REQUEST SENSE and INQUIRY return Check Condition status, while the format operation is an active I/O process.
- When tagged queuing is enabled (DQue = 0), all commands except REQUEST SENSE and INQUIRY return
Queue Full status, while the FORMAT UNIT command is a queued I/O process.
- When tagged queuing is disabled (DQue = 1), all commands except REQUEST SENSE and INQUIRY return Busy status, while the FORMAT UNIT command is a queued I/O process
- If a REQUEST SENSE command is received while a format operation is an active I/O process, the Target returns
Good status. The sense key is set to Not ready and the additional sense code and qualifier is set to Format In
Progress.
- If an INQUIRY command is received while a format operation is an active I/O process, the Target returns Good status and Inquiry data as requested.
The format operation must complete successfully for the Drive to be usable. If the command is interrupted by a reset, power down, or an unrecoverable error, the Drive enters a degraded mode of operation in which reading and writing are prohibited. To exit the degraded mode, another FORMAT UNIT command must be sent by the Initiator and completed successfully by the Target.
The FORMAT UNIT command sets the Unit Attention Condition for all Initiators except the one that issued the
FORMAT UNIT command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
71
18.4.1 Parameter List Header
Following is the format of the Parameter List Header sent during the data out phase when FmtData is set to one.
Table 40: Format of the Parameter List Header
Byte
0
1
2 -3
4-n
(n+1) - m
7 6 5
Reserved = 0
4
BIT
3 2 1
Protection Field Usage
0
FOV DPRY DCRT STPF = 1 IP
Obsolete Immed Vendor-specific
(MSB)
Defect List Length (LSB)
Initialization Pattern Descriptor
Defect Descriptor
•Protection Field Usage: in combination with the format protection information (FMTPINFO) field in the CDB specifies whether or not the drive enables or disables the use of protection information:
FMTPINFO Protection Field Usage
00h
01h
10h
11h
11h
000h xxxh
000h
000h
001h
Description
The drive will be formatted to type 0 protection
Check Condition status will be returned with the sense key set to Illegal
Request and the additional sense code set to Invalid Field in the CDB.
The drive will be formatted to type 1 protection
The drive will be formatted to type 2 protection
Type 3 protection is not supported - Check Condition status will be returned with the sense key set to Illegal Request and the additional sense code set to Invalid Field in the Parameter List
All other combinations of FMTPINFO and Protection Field Usage will result in Check Condition status to be returned with the sense key set to Illegal Request and the additional sense code set to Invalid Field in the Parameter List.
Type 0 protection specifies that the drive shall disable the use of protection information and format to the block size specified.
Following a successful format, the PROT_EN bit in the READ CAPACITY (16) parameter data will indicate that protection information is disabled.
Type 1 and type 2 protection specifies that the drive shall enable the use of protection information and format to the block size specified + 8 (e.g., if the block length is 512, then the formatted block length is 520). See format of data below. When protection information is written during a FORMAT UNIT command, protection information shall be written with a default value of all 0xFF's. Following a successful format, the PROT_EN bit in the READ CAPACITY (16) parameter data will indicate that protection information is enabled and the P_TYPE field in the READ CAPACITY (16) parameter data will indicate the protection type.
Byte
0 ... n n ... n+1 n+2 ... n+3 n+4 ... n+7
7 6 5
BIT
4
User Data
3
Logical Block Guard
Logical Block Application Tag
Logical Block Reference Tag
2 1 0
•The Logical Block Guard field contains a CRC that covers the preceding user data. This field is generated/checked per the SBC standard.
• The Logical Block Application Tag field may be modified by the initiator if the ATO bit is set to zero in mode page
0x0A. If the ATO bit is set to one, then the initiator shall not modify the Logical Block Application Tag field. This field is generated/checked per the SBC standard.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
72
• The Logical Block Reference Tag field is generated/checked depending on protection types. With Type 1 protection, the Logical Block Reference Tag in the first logical block of the data transfer shall contain the least significant four bytes of the LBA contained in the Logical Block Address field of the command. Subsequent blocks shall contain the previous logical block reference tag plus one. With Type 2 protection, the Logical Block Reference Tag in the first logical block of the data transfer shall contain the value in the Expected Initial Logical Block Reference Tag field of the command. Subsequent blocks shall contain the previous logical block reference tag plus one.
•FOV (Format Options Valid) bit set to zero indicates that the Target should use its default settings for the DPRY (0),
DCRT (1), STPF (1), IP (0), and DSP (1) bits. These bits must all be set to zero in the Parameter List Header when
FOV=0, or the command will be terminated with Check Condition status, sense key of Illegal Request, and additional sense code of Invalid Field in Parameter List. FOV=1 indicates that the values set in DPRY, DCRT, STPF, IP, and
DSP will be defined as specified below.
• DPRY (Disable Primary) bit set to zero indicates that the Target does not use portions of the medium identified as defective in the primary defect Plist for Initiator addressable logical blocks. If the Target cannot locate the Plist or it cannot determine whether a Plist exists, the Target terminates the FORMAT UNIT command as described for STPF=1. A
DPRY bit set to one indicates that the Target does not use the Plist to identify defective areas of the medium. The
Plist is not deleted. DPRY must be set to 0 when DCRT is set to 0.
• DCRT (Disable Certification) bit set to zero indicates that the Target performs a medium certification operation and generates a Certification List (Clist), and adds the Clist to the Glist. DPRY must be set to 0 when DCRT is set to 0. A
DCRT bit of one indicates that the Target does not generate a Clist or perform a certification process.
Note:
Since the DCRT bit is part of the Data Out phase that follows the FORMAT command, the FCERT bit in
Mode Page 0 is provided to control certification when the FORMAT command is issued with no Data Out phase. If a FORMAT command is issued with a Data Out phase then FCERT is ignored.
• STPF (Stop Format) bit must be set to one. If one or both of the following conditions occurs, the Target terminates the
FORMAT UNIT command with Check Condition status. The sense key is set to Medium Error and the additional sense code is set to Defect List Not Found if the first condition occurred or to Defect List Error if the second condition occurred.
• The Target cannot locate a required Dlist nor determine that the list exists.
•The Target encounters an unrecoverable error while accessing a required Dlist.
• IP (Initialization Pattern) bit set to zero specifies that an initialization pattern descriptor is not included and all customer data will be initialized to zeroes. An IP bit of one specifies that an Initialization Pattern Descriptor is included in the
FORMAT UNIT parameter list following the parameter list header.
Table 41: Initialization Pattern Descriptor:
Byte
0
1
2 - 3
4
...
n
7 6
IP Modifier = 0
BIT
5
SI
4 3 2
Reserved = 0
Initialization Pattern Type = 1
Initialization Pattern Length (n-3)
Initialization Pattern
...
Initialization Pattern
1 0
• IP Modifier must be set to 0, indicating that the drive will not modify the initialization pattern.
• SI (Security Initialize) bit set to one specifies that all customer data sectors, including those that have been previously reassigned, will be initialized. SI set to zero specifies that only the current customer accessible sectors will be formatted.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
73
• Initialization Pattern Type must be set to one, specifying that the Initialization Pattern specified shall be repeated as required to fill each logical block.
• Initialization Pattern Length specifies the number of bytes that follow in the Initialization Pattern field, and must be less than or equal to the current block size, and non-zero.
• Initialization Pattern contains the data pattern to be written to the media.
• DSP (Disable Saving Parameters) bit when zero indicates the target is to save all the current MODE SELECT saveable parameters during the format operation. When the bit is one, the target is not to save the current MODE SELECT saveable parameters.
• Immed (Immediate) bit set to zero requests that status be returned at the end of the format operation. An immediate bit set to one requests that status be returned immediately following CDB validation and transfer of data in the Data Out phase. If the format operation, with the immediate bit set to one, terminates in error, DEFERRED ERROR SENSE data is generated.
• Defect List Length field specifies the total length in bytes of the defect descriptors that follow (not including the Initialization Pattern Descriptor, if any). Up to 1024 defect descriptors are allowed. The Defect List Length must be equal to four times the number of defect descriptors for BLOCK format, or eight times the number of defect descriptors for
BYTES FROM INDEX and PHYSICAL SECTOR formats. Otherwise the command is terminated with Check Condition status with the sense key set to Illegal Request and the additional sense code set to Invalid Field in Parameter
List.
18.4.2 Defect Descriptor
Three defect descriptor formats are supported. Entries are not required to be in ascending order. If an entry does not correspond to a valid user addressable media location, the command terminates with Check Condition status with the sense key set to Illegal Request and the additional sense code set to Invalid Field in Parameter List.
18.4.2.1 Block Format - 000b
Format of the Dlist sent during the data out phase when Dlist Format is Block format (000b) and FmtData is set to one.
Table 42: Defect Descriptor - Block Format (for n + 1 defects)
Byte BIT
7
(MSB)
6 5 4 3 2 1 0
Defective Logical Block Address
0 - 3
(LSB)
4n
4n+1
4n+2
4n+3
(MSB)
Defective Logical Block Address n
(LSB)
The Block format of the Dlist is the LBA of each defective sector.
Note:
If a Defective LBA entry, when converted to a physical sector, is equal to the physical sector of a Plist entry and
DPRY = 1, then the entry is not added to the Glist.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
74
18.4.2.2 Bytes From Index Format - 100b
Format of the Dlist sent during the data out phase when Dlist Format is Bytes From Index format (100b) and FmtData is set to one.
Table 43: Defect Descriptor - Bytes From Index Format (for n = 1 defects)
BIT
Byte
7
(MSB)
6 5 4 3 2 1 0
0 - 2 Cylinder Number of Defect
(LSB)
3 Head Number of Defect
(MSB)
4 - 7 Defect Bytes from Index
(LSB)
8n
8n + 1
8n + 2
8n + 3
8n + 4
8n + 5
8n + 6
8n + 7
(MSB)
(MSB)
Cylinder Number of Defect n
Head Number of Defect n
Defect (n) Bytes from Index
(LSB)
(LSB)
Each defect descriptor for the Bytes From Index format specifies that the sector containing this byte be marked defective. The defect descriptor is comprised of the cylinder number of the defect, the head number of the defect, and the number of the defect byte relative to index.
Note:
If a Byte From Index entry, when converted to a physical sector, is equal to the physical sector of a Plist entry and
DPRY = 1, then the entry is not added to the Glist.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
75
18.4.2.3 Physical Sector Format - 101b
Format of the Dlist sent during the data out phase when Dlist Format is Physical Sector format (101b) and FmtData is set to one.
Table 44: Defect Descriptor - Physical Sector Format (for n + 1 defects)
Byte
4
5
6
7
8n
8n + 1
8n + 2
8n + 3
8n + 4
8n + 5
8n + 6
8n + 7
0
1
2
3
7
(MSB)
(MSB)
(MSB)
(MSB)
6 5 4
BIT
3
Cylinder Number of Defect
Head Number of Defect
Defect Sector Number
Cylinder Number of Defect n
Head Number of Defect n
Defect (n) Sector Number
2 1 0
(LSB)
(LSB)
(LSB)
(LSB)
Each defect descriptor for the Physical Sector format specifies a defective sector. The defect descriptor is comprised of the cylinder number of the defect, the head number of the defect, and the defect’s sector number.
Note:
If a Physical Sector entry, when converted to a physical sector, is equal to the physical sector of a Plist entry and
DPRY = 1, then the entry is not added to the Glist.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
76
18.5 INQUIRY (12)
Table 45: INQUIRY (12)
Byte
0
1
2
3 - 4
5
7
VU = 0
6 5
BIT
4 3
Operation Code = 12h
Reserved = 0
Page Code
Allocation Length
Reserved = 0
2 1
CmdDt =0
FLAG
0
EVPD
LINK
The INQUIRY command requests the parameters of the Target to be sent to the Initiator.
An EVPD An EVPD bit of one specifies that the target return the vital product data page identified by the Page Code field in the CDB The available VPD pages are defined in the addendum provided for each different drive model in the section entitled
Inquiry Data Format.
The Page Code specifies which page of vital product data information the drive shall return.
Table 46: Page Code descriptions
EVPD
0
0
1
PAGE
CODE
0
Description
The Target returns the standard INQUIRY data.
Non Zero
The drive returns Check Condition status with the sense key of Illegal Request and the additional sense code of Invalid Field in CDB.
Non Zero The drive returns the vital product data of page code requested.
Allocation Length specifies the number of bytes that the Initiator has allocated for INQUIRY data to be returned. An allocation length of zero implies that no data is to be returned. The Target will terminate the DATA IN phase when all available
INQUIRY data has been transferred or when allocation length bytes have been transferred, whichever is less.
Note:
If an INQUIRY command is received from an Initiator with a pending unit attention condition (before the target reports Check Condition status), the Target processes the INQUIRY command. The unit attention condition is not cleared by this action.
Note:
The INQUIRY command is a Priority command and is not queued.
Note:
The inquiry data is set at the time of manufacture and will not change, with the following exceptions:
• Product Revision Level (EVPD=0) can be changed when microcode is downloaded with the Write Buffer command.
• The information returned for EVPD=1, Page Code = 3 is not fixed.
Note: The inquiry data returned when media is not available will not be complete.
Byte 0 of the returned data on an INQUIRY command is the same no matter which page(s) is(are) returned. This description is to be used for all the following page definitions.
The Peripheral Qualifier field of zero (0) indicates that the peripheral device is currently connected to this logical unit. A
Peripheral Device Type field of zero (0) indicates that this device is a Direct Access Storage Device (DASD).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
77
18.5.1 Inquiry Data
Fields with a value shown inside quotes (e.g. Value =’xyz’) are character fields. A value not in quotes is a numeric value.
Character fields are alphanumeric and represented in either ASCII.
18.5.1.1 Inquiry Data Format - EVPD = 0, Page Code = 0
Table 47: Inquiry Data- EVPD = 0
Byte
0
1
2
3
BIT
7
RMB = 0
6
Qualifier = 0
Obsolete Obsolete
5 4 3 2 1
Peripheral Device Type = 0
Reserved=0
Version = 6
Norm
ACA=0
HiSup = 1 Response Data Format = 2
SCCS=0 ACC=0
Additional Length = 159 (9Fh)
TPGS=00b
Obsolete EncSer = 0 Port MultiP=1
3PC=0 Reserved = 0
Obsolete
Protect=1
RSVD = 0
Obsolete Obsolete RSVD = 0 RSVD = 0 Obsolete Obsolete CmdQue= 1 RSVD = 0
Vendor ID = "HGST " (ASCII)
Product ID (ASCII)
Product Revision Level (ASCII)
Unit Serial Number (ASCII)
Reserved = 0
Copyright Notice (ASCII)
Reserved=0
0
4
5
6
7
8-15
16-31
32-35
36-43
44-95
96-145
146-163
• Qualifier is set to zero to indicate that the LUN specified is currently supported. Qualifier is set to 011b when the LUN specified is not present
1
• Peripheral Device Type is set to zero to indicate that the device is a Direct-Access Peripheral Device.
• Removal Media Bit (RMB) is always set to zero to indicate no removal media exists.
• Version indicates the level of the ANSI standard that the product supports. The drive supports ANSI SPC-4.
• NormACA (Normal ACA) field of 0 indicates the device server does not support setting the NACA bit to one in the
Control Byte of the CDB as defined in the SAM.
• HiSup bit of 1 indicates that the drive uses the hierarchical addressing model to assign LUNs to logical units.
• Response Data Format is set to two to indicate that the INQUIRY Data Format as specified in the ANSI SCSI version 2 is supported by the Target.
• Additional Length indicates the number of bytes of INQUIRY information that follows.
1.If an INVALID LUN is specified, a Check Condition status will be returned for all commands except INQUIRY and REQUEST SENSE.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
78
• SCCS bit of zero indicates that the device does not contain an embedded storage array controller component.
• ACC bit of zero indicates that no access controls coordinator may be addressed through this logical unit.
• TGPS field of zero indicates that the device does not support asymmetric logical unit access.
• 3PC bit of zero indicates that the device does not support third-party copy commands.
• Protect bit of one indicates that the drive supports protection information
• EncSer(Enclosure Services) bit of 0 indicates that the Target does not contain an embedded enclosure services component.
•Port bit of 0 indicates that the drive received the Inquiry command on port A, while a Port bit of 1 indicates that the drive received the Inquiry command on port B.
• MultiP (MultiPort) bit of 1 indicates that the Target has multiple ports and implements multi-port requirements.
• CmdQue is set to one to indicate that the drive supports command queuing.
• Vendor ID is HGST padded with ASCII blanks.
• Product ID is specified in Section
• Product Revision Level indicates the level of microcode.
• Unit Serial Number contains the drive serial number.
18.5.1.2 Inquiry Data Format - EVPD = 1 - Page Code = 00h
Table 48: Inquiry Data - EVPD = 1 (Page Code = 00h)
Byte
12
13
14
15
10
11
8
9
6
7
4
5
2
3
0
1
7 6
Qualifier = 0
5
BIT
4 3 2 1
Peripheral Device Type = 0
Page Code = 00h
Reserved = 0
Page Length = 0Bh
Supported Page Code - 00h
Supported Page Code - 03h
Supported Page Code - 80h
Supported Page Code - 83h
Supported Page Code = 86h
Supported Page Code = 87h
Supported Page Code = 88h
Supported Page Code = 8Ah
Supported Page Code - 90h
Supported Page Code - B1h
Supported Page Code - D1h
Supported Page Code - D2h
0
• Qualifier is set to zero to indicate that the LUN specified in the Command Block is currently supported.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
79
• Peripheral Device Type is set to zero to indicate that the device is Direct Access.
• Page Code is set to 0, and this field contains the same value as in the page code field of the INQUIRY command descriptor block.
• Page length specifies the length of the following page data.
• Supported Page Code field contains the Page Codes supported by the Target. The list is in ascending order.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
80
18.5.1.3 Inquiry Data Format - EVPD = 1, Page Code - 03h
Table 49: Inquiry Data - EVPD = 1 (Page Code = 03h)
Byte
36-39
40-41
42-43
44-47
48-51
52-83
84-91
92-99
4
5-7
8-23
24-35
2
3
0
1
100-107
108-119
120-135
136-167
168-171
172-175
176-179
180-183
184-187
7 6
Qualifier = 0
5
BIT
4 3
Peripheral Device Type = 0
2
Page Code = 03h
Reserved = 0
Page Length = 184 (B8h)
ASCII Fields Length = 00h
Reserved = 0
Reserved = 0
ASCII uCode Identifier
ASCII Servo P/N
Major Version
Minor Version
User Count
Build Number
Build Date String
Product ID
Interface ID
Code Type
User Name
Machine Name
Directory Name
Operating State
Functional Mode
Degraded Reason
Broken Reason
Code Mode
1 0
• Qualifier is set to zero to indicate that the LUN specified in the Command Block is currently supported.
• Peripheral Device Type is set to zero to indicate that the device is Direct Access.
• Page Code is set to the value of the page code field in the CDB.
• Page Length field specifies the length (in bytes) of the vendor unique VPD information (bytes 4 - 163). If the allocation length of the
CDB is too small to transfer all the data, the Page Length field is not adjusted to reflect the truncation.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
81
• ASCII uCode Identifier contains the drive’s microcode identifier. The field is alphanumeric (ASCII), left aligned, and the unused bytes are ASCII spaces (20h).
• ASCII Servo P/N contains the part number of the Servo microcode installed on the drive. This field is hex numeric ASCII (i.e., the characters will be in the set 0...9, A...F).
• Major Version and Minor Version are version numbers of the code loaded on the drive.
• User Count is the number of times the code has been built since the master build.
• Build Number is the master build version number.
• Build Date String is the date the code on the drive was built, in an extended string format.
• Product ID is the name of the product this code is for.
• Interface ID is the interface type and serial interface speed (e.g. SAS 6Gbps or FCAL 4Gbps) of the code.
• Code Type is the intended use of the this code. (e.g. local, released, test)
• User Name is the username of the person who built this version of the code.
• Machine Name is the workstation on which this version of the code was built.
• Directory Name is the last 32 characters of the directory from where this code was built.
• Operating State is the drive operating state. The least significant bit contains the following:
0 = OM_BROKEN
1 = OM_DEGRADED
2 = OM_INACCESSIBLE
3 = OM_STARTING
4 = OM_SPINNING
5 = OM_NORMAL
6 = OM_SLEEP
7 = OM_STOPPED
8 = OM_NOTIFY
9 = OM_SUSPEND
10 = OM_WAKEUP
11 = OM_NOTIFY_WAKEUP
We have detected a hardware failure.
We have a soft failure; i.e., incomplete format. Motor is still spinning.
Drive is good but motor is stopped.
Motor is starting.
Motor is started but reserved area is not loaded yet.
Drive is spinning and ready to read/write.
Drive is ready but has entered power save mode.
Drive has come ready but now has been stopped.
Drive is good but NOTIFY has not arrived (SAS)
Similar to OM_STOPPED, but spin-up is automatic like OM_SLEEP
Similar to OM_STARTING, but LUN BECOMING READY during spinup is not reported
Similar to OM_NOTIFY, but next transition is to OM_WAKEUP
• Functional Mode is the drive functional mode. The least significant byte (0x0000000n) contains the following:
0 = OM_NORMAL_MODE
1 = OM_SPECIAL_CMD
3 = OM_SPC_RSV_ACCESS
5 = OM_SPC_SDWNLOAD
7 = OM_SPC _ RACCESS_SDWNLD
Special cmd mode and special download allowed.
Special cmd, access to reserved area, and special download allowed.
The second byte (0x000n0000) contains the following:
0 = Idle functions are not enabled.
1 = Idle functions are enabled.
Not in special or recovery mode.
Special command mode on.
Special cmd mode and access to reserved area allowed.
• Degraded Reason (UECType) is why the file is in a degraded mode; i.e., how to exit this mode.
• Broken Reason (UECType) is why the drive believes the hardware is broken.
• Code Mode is the type of code the drive is running. The least significant bit contains the following:
- 0 = OM_FLASH Drive is running flash code
- 1 = OM_FLASH_OVERLAY Drive is running flash overlay code
- 2 = OM_DISK
- 3 = OM_TRANSIENT
Drive is running code that has been loaded from disk
Drive is running code that has been downloaded but not saved
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
82
18.5.1.4 Inquiry Data Format - EVPD = 1, Page Code - 80h
Table 50: Inquiry Data - EVPD = 1 (Page Code = 80h)
Byte
2
3
0
1
4-19
7 6
Qualifier = 0
5 4
BIT
3
Peripheral Device Type = 0
Page Code = 80h
Reserved = 0
Page Length = 16 (10h)
Serial Number (ASCII)
2 1 0
• Qualifier is set to zero to indicate that the LUN specified in the Command Block is currently supported.
• Peripheral Device Type is set to zero to indicate that the device is Direct Access.
• Page Code is set to the value of the page code field in the CDB.
• Page Length is set to 16, and this field specifies the length of the following page data.
• Serial Number gives the drive serial number, right aligned.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
83
18.5.1.5 Inquiry Data - EVPD = 1 (Page Code = 83h)
Table 51: Inquiry Data Format - EVPD = 1, (Page Code - 83h)
Byte
6
7
4
5
2
3
0
1
8-15
7
PIV=0
(MSB)
6
Qualifier = 0
5
BIT
4 3 2 1
Peripheral Device Type = 0
Page Code = 83h
Reserved = 0
Protocol Identifier = 0
Page Length = 72 (48h)
RSVD Association=0
Reserved = 0
Identifier Length = 8
LUN
(World Wide ID)
Code Set = 1
Identifier Type = 3
16
17
18
19
PIV=1
Protocol Identifier
RSVD Association = 1
Reserved = 0
Identifier Length = 8
Code Set = 1
Identifier Type = 3
(MSB)
20-27 Target Port Identifier (World Wide ID)
28
29
30
31
32-35
PIV=1
Protocol Identifier
RSVD Association = 1
Reserved = 0
Identifier Length = 4
Code Set = 1
Identifier Type = 4
(MSB)
Relative Port Identifier
36
37
38
39
40-47
PIV=1
Protocol Identifier = 0
RSVD Association = 2
Reserved = 0
Identifier Length = 8
(MSB)
Code Set = 1
Identifier Type = 3
Target Device Name Identifier (World Wide ID)
48 Protocol Identifier = 0 Code Set = 3
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
84
0
(LSB)
(LSB)
(LSB)
(LSB)
49
50
51
52-55
PIV=0 RSVD Association=2
Reserved = 0
Identifier Length =24 (18h)
"naa" (ASCII)
Identifier Type = 8
(MSB)
56-71 Target Device Name Identifier (World Wide ID) in ASCII
(LSB)
72-75 Reserved = 0
• Protocol Identifier is valid only when PIV=1. Protocol Identifier = 0 indicates Fibre Channel devices. Protocol Identifier = 6 specifies SAS devices
• Code Set specifies the data type for the identifier field. Code Set = 1 indicates binary data, Code Set = 3 indicates ASCII.
• PIV (Protocol Identifier Valid) set to zero indicates that the Protocol Identifier field should be ignored. PIV set to one indicates that the Protocol Identifier field contains a valid value.
• Association specifies the entity with which the Identifier field is associated: 0h for LUN, 1h for Target or Relative Port, or 2h for Target Device.
• Identifier Type specifies the format and assignment authority for the identifier: 3h indicates NAA format of the WWID for LUN, Target Port and Target Device; 4h indicates Relative Port; 8h indicates SCSI name string.
• Identifier fields contain the actual Identifier Descriptor:
- The LUN, Target Port and Target Device Name Identifiers are defined in the NAA IEE WWID format where:
Worldwide ID is a 64-bit unique identification for each drive. The format is: 5000CCAh xxxh yyb n where:
- xxx is the 12-bit block assignment defined for each model and manufacturing site
- n is the 22-bit drive unique serial number
- yy is the 2-bit port/node ID select
- The Relative Port Identifier indicates the port which received the Inquiry command: 0000 0001h for the Primary
Port, or 0000 0002h for the Secondary Port.
18.5.1.6 Inquiry Data Format - EVPD = 1, Page Code - 86h
Table 52: Inquiry Data Format - EVPD = 1, (Page Code - 86h)
Byte
0
1
2
3
4
5
6
7-63
7
Qualifier = 0
Reserved = 0
6
Reserved = 0
Reserved=0
5
BIT
4 3
Peripheral Device Type = 0
2 1 0
Page Code = 86h
Reserved = 0
Page Length = 60 (3Ch)
SPT GRD_CHK APP_CHK REF_CHK
Group_Sup Prior_Sup HEADSUP
WU_SUP CRD_SUP
ORDSUP
NV_SUP
SIMPSUP
V_SUP
Reserved = 0
•
• SPT (Supported Protection Type) field is set to 001b to indicate that the drive supports type 1 and type 2 protection.
• GRD_CHK (Guard Check) is set to one to indicate that the drive checks the Logical Block Guard Tag field in the protection information, if any.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
85
• APP_CHK (Application Tag Check) bit is set to one to indicate that the drive checks the Logical Block Application
Tag field in the protection information, if any.
• REF_CHK (Reference Tag Check) bit is set to one to indicate that the drive checks the Logical Block Reference Tag field in the protection information, if any.
• GROUP_SUP (Group Supported) bit is set to zero to indicate that the grouping function is not supported.
• PRIOR_SUP (Priority Supported) bit is set to zero to indicate that task priority is not supported.
• HEADSUP (Head of Queue Supported), ORDSUP (Ordered Supported), and SIMPSUP (Simple Supported) are set to one to indicate support for Head of Queue, Ordered and Simple task attributes.
•WU_SUP is set to 1 to indicate that setting the WR_UNCOR bit to one in the Write Long command is supported.
•CRD_SUP is set to 1 to indicate that setting the COR_DIS bit to one in the Write Long command is supported.
• NV_SUP (Non-volatile Supported) is set to 0 to indicated that non-volatile cache features are not supported.
• V_SUP (Volatile Supported) is set to 1 to indicated support of a volatile cache.
18.5.1.7 Inquiry Data Format - EVPD = 1, Page Code - 87h
Table 53: Inquiry Data Format - EVPD = 1, (Page Code - 87h)
Byte
5
6
7
0
1
2-3
4
7 6
Qualifier = 0
Reserved=0
MILUS=1
5 4
BIT
3
Peripheral Device Type = 0
2
Page Code = 87h
Page Length = 0004h
1 0
Policy Page Code = 3Fh
Policy Subpage Code = FFh
Reserved = 0
Reserved = 0
Mode PagePolicy = 0
• Policy Page Code set to 3Fh and Policy Subpage Code set to FFh indicate that the descriptor applies to all mode pages and subpages
• MILUS (Multiple Logical Units Share) set to one indicates the policy is shared by multiple logical units.
• Mode Page Policy set to 00b indicates that all mode pages and subpages are shared.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
86
6-7
8-9
10-11
12-13
0
1
2-3
4-5
14-15
16
17
18
19
18.5.1.8 Inquiry Data Format - EVPD = 1, Page Code - 88h
Table 54: Inquiry Data Format - EVPD = 1, (Page Code - 88h)
Byte
20-27
7
PIV=1
6
Qualifier = 0
5 4
BIT
3
Peripheral Device Type = 0
2
Page Code = 88h
Page Length = 48 (0030h)
Reserved=0
Primary Relative Port = 0001h
Reserved = 0
Initiator Port Transport ID Length = 0
Reserved = 0
Primary Target Port Descriptors Length = 0Ch
Protocol Identifier
RSVD Association = 1
Code Set = 1
Identifier Type = 3
Reserved = 0
Identifier Length = 8
(MSB)
Primary Target Port Identifier (World Wide ID)
1
28-29
30-31
32-33
34-35
36-37
38-39
40
41
42
43
44-51
Reserved = 0
Secondary Relative Port = 0002h
Reserved = 0
Initiator Port Transport ID Length = 0
Reserved = 0
Secondary Target Port Descriptors Length = 0Ch
Protocol Identifier
PIV=1 RSVD Association = 1
Code Set = 1
Identifier Type = 3
Reserved = 0
Identifier Length = 8
(MSB)
Secondary Target Port Identifier (World Wide ID)
0
(LSB)
(LSB)
• Protocol Identifier is valid only when PIV=1. Protocol Identifier = 0 indicates Fibre Channel devices. Protocol Identifier = 6 indicates SAS devices
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
87
• Code Set specifies the data type for the identifier field. Code Set = 1 indicates binary data
• PIV (Protocol Identifier Valid) set to one indicates that the Protocol Identifier field contains a valid value.
• Association specifies the entity with which the Identifier field is associated: 1h for Target or Relative Port.
• Identifier Type specifies the format and assignment authority for the identifier: 3h indicates NAA format of the WWID for Target Port.
• Identifier fields contain the actual Identifier Descriptor.
- The Target Port Identifiers are defined in the NAA IEE WWID format where:
World Wide ID is a 64-bit unique identification for each drive. The format is: 5000CCAh
xxxh n yyb where xxx is the 12-bit block assignment defined for each model and manufacturing site, n is the 22bit drive unique serial number, and yy is the 2-bit port/node ID
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
88
18.5.1.9 Inquiry Data Format - EVPD = 1, Page Code - 8Ah
Table 55: Inquiry Data Format - EVPD = 1, (Page Code - 8Ah)
8-9
10-11
12-13
14-15
16-17
Byte
0
1
7 6
Qualifier = 0
5 4
BIT
3
Peripheral Device Type = 0
2-3
4 Reserved=0
Page Code = 8Ah
Page Length = 14 (000Eh)
2
5
6-7
Reserved=0 IDLE_C
Stopped Condition Recovery Time
Standby_Z Condition Recovery Time
Standby_Y Condition Recovery Time
Idle_A Condition Recovery Time
Idle_B Condition Recovery Time
Idle_C Condition Recovery Time
1 0
STANDBY_Y STANDBY_Z
IDLE_B IDLE_A
•Qualifier field is set to zero to indicate that the LUN specified in the Command Block is currently supported.
• Peripheral Device Type is set to zero to indicate that the device is Direct Access.
• Page Code is set to the value of the page code field in the CDB.
• Page Length is set to 14, and this field specifies the length of the following page data.
•If set to one, a power condition support bit (STANDBY_Y, STANDBY_Z, IDLE_C, IDLE_B, IDLE_A) indicates that the associated power condition may be entered with START STOP UNIT command and the associated power condition may be entered with a power condition timer if the timer is supported and enabled.
• The recovery time fields indicate the time, in one millisecond increments, that the logical unit takes to transition from the associated power condition to the active power condition. This time does not include the processing time for the command that caused this transition to occur. A value of zero indicates that the recovery time is not specified. A value of FFFFh indicates that the recovery time is more than 65.534 seconds.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
89
18.5.1.10 Inquiry Data - EVPD = 1, Page Code - 90h
Table 56:
I nquiry Data - EVPD = 1 (Page Code = 90h)
Byte
0
1
2-3
4-15
16-27
7 6
Qualifier = 0
5 4
BIT
3
Peripheral Device Type = 0
2
Page Code = 90h
Page Length = 24 (0018h)
1
Protocol-specific logical unit information descriptor 0.
Protocol-specific logical unit information descriptor 1.
0
• Qualifier field is set to zero to indicate that the LUN specified in the Command Block is currently supported.
• Peripheral Device Type is set to zero to indicate that the device is Direct Access.
• Page Code is set to the value of the page code field in the CDB.
• Page Length is set to 24, and this field specifies the length of the following page data.
• Protocol-specific logical unit information descriptor 0 field is defined in Table 57
• Protocol-specific logical unit information descriptor 1 field is defined in Table 57
Table 57:
Protocol-specific logical unit information descriptor
Byte
0-1
2
3-5
6-7
8
9-11
7 6
Reserved
5 4
BIT
3
Relative Port Identifier
2 1
Protocol Identifier = 6h
Reserved
Descriptor Length (0004h)
Reserved
0
TLR CONTROL
SUPPORTED = 0h
Reserved
• Relative Port Identifier is set to 1 for Port A (Primary Port) or 2 for Port B (Secondary Port).
• Protocol Identifier is set to 6 to specify that this is a SAS SSP Descriptor.
• TLR Control Supported field specifies support of the TLR CONTROL field in the SAS SSP frame header. This field is set to zero to indicate that the drive does not support Transport Layer Retries
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
90
18.5.1.11 Inquiry Data Format - EVPD = 1, Page Code - B1h
Table 58:
I nquiry Data - EVPD = 1 (Page Code = B1h)
Byte
0
1
7 6
Qualifier = 0
5 4
BIT
3
Peripheral Device Type = 0
2 1 0
2-3
4-5
Page Code = B1h
Page Length = 60 (003Ch)
Medium Rotation Rate =10020 (2724h)
6 Reserved
7
8-63
Reserved
Reserved
Nominal Form Factor = 3h
• Qualifier field is set to zero to indicate that the LUN specified in the Command Block is currently supported.
• Peripheral Device Type is set to zero to indicate that the device is Direct Access.
• Page Code is set to the value of the page code field in the CDB.
• Page Length is set to 60, and this field specifies the length of the following page data.
• Medium Rotation Rate field is set to 10020.
• Nominal Form Factor field is set to 3h.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
91
18.5.1.12 Inquiry Data Format - EVPD = 1, Page Code - D1h
Table 59: Inquiry Data - EVPD = 1 (Page Code = D1h)
Byte
4-19
20-35
36-51
52-67
68-83
2
3
0
1
7 6
Qualifier = 0
5
BIT
4 3
Peripheral Device Type = 0
2
Page Code = D1h
Reserved = 0
Page Length = 80 (50h)
ASCII Media Disk Definition
ASCII Motor Serial Number
ASCII Flex Assembly Serial Number
ASCII Actuator Serial Number
ASCII Device Enclosure Serial Number
1 0
• Qualifier is set to zero to indicate that the LUN specified in the Command Block is currently supported.
• Peripheral Device Type is set to zero to indicate that the device is Direct Access.
• Page Code is set to the value of the page code field in the CDB.
• Page Length is set to 80, and this field specifies the length of the following page data.
Note:
If the media is not available, bytes 0 through 3 are valid. All the other fields are ASCII blanks (20h).
Note:
All ASCII fields are alphanumeric, left aligned, and padded on the right with ASCII blanks (20h).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
92
18.5.1.13 Inquiry Data Format - EVPD = 1, Page Code - D2h
Table 60: Inquiry Data - EVPD = 1 (Page Code = D2h)
Byte
4
5 - 20
21
22 - 37
2
3
0
1
38
39 - 54
55
7 6
Qualifier = 0
5
BIT
4 3
Peripheral Device Type = 0
2
Page Code = D2h
Reserved = 0
Page Length = 52 (34h)
HDC Version Length = 16 (10h)
ASCII HDC Version
Card Serial Number Length = 16 (10h)
ASCII Card Serial Number
Card Assembly Part Number Length = 16 (10h)
ASCII Card Assembly Part Number
Reserved = 0
1 0
• Qualifier is set to zero to indicate that the LUN specified in the Command Block is currently supported.
• Peripheral Device Type is set to zero to indicate that the device is Direct Access.
• Page Code is set to the value of the page code field in the CDB.
• Page Length is set to 52, and this field specifies the length of the following page data.
Note:
If the media is not available, bytes 0 through 3 are valid. All the other fields are ASCII blanks (20h).
Note:
All ASCII fields are alphanumeric, left aligned, and padded on the right with ASCII blanks (20h).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
93
18.6 LOG SELECT (4C)
Table 61: Log Select (4C)
Byte
0
1
2
3
4-6
7
7
Reserved = 0
PC
6 5
Bit
4 3
Command Code = 4Ch
Reserved = 0
Page Code
SubPage Code = 0
Reserved = 0
2 1
PCR
0
SP
(MSB)
Parameter List Length = 0
(LSB)
Reserved = 0 FLAG LINK
8
9
The LOG SELECT command provides a means for the Initiator to clear statistical information maintained by the drive and reported via the LOG SENSE command.
• PCR The Parameter Code Reset determines whether the Log Sense parameters will be cleared and unit attention posted for all other Initiators. A value of 1 indicates that the parameters be cleared, while a value of zero (except when PC =
11b) indicates that the parameters not be cleared. Parameter list length must be zero when PCR is 1. The PC field is ignored for list parameters, i.e. when the Format and Linking (F&L) field contains 01b or 11b.
• SP The Save Parameters bit value of zero indicates that the page parameters not be saved. A value of 1 indicates that the page parameters that are savable be saved after they have been changed. SP bit MUST be 1 if parameter list length is greater than zero. Otherwise it will result in a Check Condition status being returned. The sense key shall be set to
Illegal Request and additional sense code of Invalid Field in CDB.
• PC The Page Control field defines the type of parameters to be selected. The PC field set to 11b (and PCR is then a don't care) indicates that the Default Cumulative values are set to their default values of 0. If the PC field is set to 01b and
PCR is set to 1, the Current Cumulative values are also set to their default values of 0.
Parameter List Length MUST be zero when PC = 11b. Otherwise the command is terminated and a Check Condition status is returned. The sense key shall be set to Illegal Request and additional sense code of Invalid Field in CDB.
•Page Code field identifies which page is being selected. This field must be set to the values indicated in Page 0. If the
Page Code value is invalid a Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB.
• If page code field is set to zero, then the selection applies to all log parameters in all valid log pages.
• If page code field is set to a non zero, then the selection applies to all log parameters specified by this field.
•SubPage Code This field specifies the subpage to select. This field is not supported and must be set to 0.
• Parameter List Length The Parameter List Length field specifies the length in bytes of the parameter list that shall be located in the DATA OUT buffer. A parameter list length zero indicates that no pages shall be transferred.
• If the PARAMETER LIST LENGTH field is set to zero, then the PCR bit, the SP bit, and the PC fields apply to the page (pages) addressed by the page code field.
• If The PARAMETER LIST LENGTH field is set to non zero, and the if PAGE CODE field is non-zero or the
SUBPAGE CODE field is non-zero, then the command shall be terminated with CHECK CONDITION status, with the sense key set to ILLEGAL REQUEST, and the additional sense code set to INVALID FIELD IN CDB.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
94
Note:
A specified length greater than 0x00FF will result in a Check Condition status being returned. A length that results in log data being truncated will generate a Check Condition status.
Note: For page 0Fh, the maximum parameter list length supported is 4004h (4 bytes for the header and 100h bytes for each of the 40h parameters that are supported). The Parameter List Length must be an integral of the number of parameters plus the
4 byte header. (Ex: Parameter length =104h for one parameter, 204h for 2 parameters,... 4004h for all 40h parameters).
The drive allows updates to the current cumulative values only. A value of zero is acceptable and is not considered an error.
The drive updates only pages 0Eh, the Start/Stop Cycle page and 0Fh, the Application Client page. For other pages the parameters are ignored. If the data out buffer contains multiple pages then the application client should send the pages in ascending order. If the data out buffer contains multiple log parameters within a page, all log parameters within the page should be sent and they should be sent in ascending order by parameter code value. The drive shall return Check Condition status if the application client sends pages out of order, parameter codes out of order or missing parameter code. The sense key shall be set to
Illegal Request and additional sense code set to Invalid Field in Parameter List. If one or more fields of the CDB are not set correctly the command will be terminated with a Check Condition status. The sense key shall be set to Illegal Request and additional sense code of Invalid Field in CDB. To indicate that parameters have changed, the Target generates a unit attention condition for all Initiators except the one that issued the LOG SELECT command.
The following list contains all individual page parameters (counters) that are set to their default value of zero by the LOG
SELECT command (when PCR=1).
• Page 02h parameters: (Counters for write errors)
- Write errors recovered without delay
- Write errors recovered with possible delays
- LBAs with write fault error
- Reserved=0
- Total errors recovered
- Number of times recovery invoked
- Total write byte count
- LBAs with hard error
• Page 03h parameters: (Counters for read errors)
- Read errors recovered without delay
- Read errors recovered with possible delays
- LBAs with ECC detected error
- Reserved=0
- Total errors recovered
- Number of times recovery invoked
- Total read byte count
- LBAs with hard error.
• Page 05h parameters: (Counters for Verify Errors)
- Errors recovered without delay
- Errors recovered with possible delays
- LBAs with ECC detected error
- Reserved=0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
95
- Total errors recovered
- Number of times recovery invoked
- Total bytes verified
- LBAs with hard error.
• Page 06h parameters: (Counters for non medium errors, seek and other hardware type failures)
- Non-Medium Error Counter
• Page 15h parameters: (Background Medium Scan information)
- BMS Status parameter
- all Medium Scan parameters
•Page 18h parameters (SAS PHY Error counts - only cleared for the port which receives the Log Select)
- Invalid DWORD Count
- Running Disparity Error Count
- Loss of DWORD Synchronization Count
- PHY Reset Problem Count
•Page 30h parameters:
- Zero Seeks counter
- Seeks > = to 2/3 counter
- Seeks > = 1/3 and < 2/3 counter
- Seeks > = 1/6 and < 1/3 counter
- Seeks > = 1/12 and < 1/6 counter
- Seeks > 0 and < 1/12 counter
- Overrun Counter
- Under run Counter
- Device Cache Full Read Hits
- Device Cache Partial Read Hits
- Device Cache Write Hits
- Device Cache Fast Writes
- Device Cache Misses on Reads
• Page 37h parameters:
- Media EXC
- Hardware EXC
- Total Read Commands
- Total Write Commands
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
96
18.7 LOG SENSE (4D)
Table 62: Log Sense (4D)
Byte
7 6
Reserved = 0
PC
5
Bit
4 3
Command Code = 4Dh
Reserved = 0
Subpage Code = 0
Reserved = 0
(MSB) Parameter Pointer = 0
2
Page Code
1 0
4
5
6
7
8
9
2
3
0
1
(MSB) Allocation Length
PPC=0 SP
(LSB)
Reserved = 0 FLAG
(LSB)
LINK
The LOG SENSE command allows the Initiator to retrieve the statistical data regarding the drive.
• PPC (Parameter Pointer Control) bit must be set to zero. This specifies that the drive start transferring data starting from the field specified in the parameter pointer field for the number of bytes specified by the allocation length. If the PPC bit is set to 1, Check Condition status is returned with a sense key of Illegal Request and additional sense code of
Invalid Field in CDB.
• SP (Save Parameters) bit set to 0 specifies that the drive does not save any log parameters. If it is set to 1, all page parameters that are savable (those pages denoted by a DS = 0 in the parameter header control byte) are saved.
• PC (Page Control) field defines the type of parameters to be selected. This field must be set to 01b to specify the current cumulative values. Any other value in this field will cause the command to end with a Check Condition status with a sense key of Illegal Request and an additional sense code of Invalid Field in CDB.
• Page Code field identifies which page is being requested. This field must be set to the values indicated in Page 0. If the
Page Code value is invalid a Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB.
• SubPage Code This field specifies the subpage to select. This field is not supported and must be set to 0.
• Parameter Pointer Field specifies the beginning field for the transfer. This field must be set to 0000h. If the Parameter
Pointer Field is not zero a Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB.
• Allocation Length field specifies the maximum number of bytes the Initiator has allocated for returned Log Sense Data.
No bytes are transferred if the length is zero. This condition is not considered an error. The Target terminates the
Data In phase when all available Log Sense data has been transferred or when the number of bytes equals the allocation length, whichever is less.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
97
18.7.1 Log Page parameters
Each log page begins with a 4-byte page header followed by zero or more variable-length log parameters.
Page header
Page Code field identifies which log page is being transferred.
The Page Length field specifies the length in bytes of the following log parameters.
Log parameters
Each log parameter begins with a 4-byte parameter header followed by one or more bytes of parameter value data.
The Parameter Code field identifies which log parameter is being transferred for that log page.
The Parameter Control field, the 3rd byte of each parameter header, contains several fields.
- DU The Disable Update bit is set to 0 to indicate that the drive updates the log parameter value to reflect events that should be noted by that parameter.
- TSD The Target Save Disable bit is set to zero to indicate that the drive provides a Target defined method for saving log parameters.
- ETC The enable Threshold Comparison bit is set to 0 to indicate the drive does not perform comparisons between cumulative and any threshold values.
- TMC The Threshold Met Criteria field is not valid because this drive does not perform threshold comparisons.
This field is set to 0.
- Format and Linking The F & L field indicates the type of log parameter and how parameters that reach their maximum value are handled.
- 00b: Data counter: If any other parameter in this log page reaches its maximum value, then this parameter shall stop incrementing until reinitialized by a Log Select command.
- 01b: List format ASCII data: No maximum values to handle
- 10b: Data counter: If another parameter reported in this log page reaches its maximum value, then this parameter shall not stop incrementing. This parameter may be reinitialized by a Log Select command.
- 11b: List format binary data: No maximum values to handle.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
98
13
14
15
16
9
10
11
12
17
18
7
8
5
6
0
1
2-3
4
18.7.2 Log Sense Page 0
Page 0 indicates the supported log sense pages. This page is used to determine which additional pages an Initiator can request.
Table 63: Log Sense Page 0
Byte
Bit
7
Reserved
6 5 4 3 2
Page code = 0
Reserved
Page Length = 000E(Number of Pages Supported)
1
First supported page 00h
Second supported page 02h
Third supported page 03h
Fourth supported page 05h
Fifth supported page 06h
Sixth supported page 0Dh
Seventh supported page 0Eh
Eighth supported page 0Fh
Ninth supported page 10h
Tenth supported page 15h
Eleventh supported page 18h
Twelfth supported page 1Ah
Thirteenth supported page 2Fh
Fourteenth supported Page Code =30h
Fifteenth supported Page Code = 37h
0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
99
18.7.3 Log Sense Page 2
This page contains counters for write errors.
Table 64: Log Sense Page 2 (part 1 of 2)
Byte
18
19
20-27
28-29
30
31
32-39
40-41
6
7
8-15
16-17
2-3
4-5
0
1
42
43
44-51
52-53
54
55
56-63
Table 65: Log Sense Page 2 (part 2 of 2)
7
Reserved
6 5
Bit
4 3 2
Page code = 02h
Reserved
PageLength = 54h
Parameter Code = 0000h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Errors recovered without delay
Parameter Code = 0001h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Errors recovered with possible delays
Parameter Code = 0002h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Reserved = 0
Parameter Code = 0003h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Total errors recovered
Parameter Code = 0004h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Times recovery invoked
Byte
64-65
7 6 5
Bit
4 3
Parameter Code = 0005h
2
1
1
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
100
0
F&L = 00b
F&L = 00b
F&L = 00b
F&L = 00b
F&L = 00b
0
66
67
68-75
76-77
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Total bytes written
Parameter Code = 0006h
F&L = 00b
78
79
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
F&L = 00b
80-87 Count of hard errors
All parameter counts indicate the number of sectors with the specified types of errors, except Times Recovery Invoked, which is a cumulative count of all recovery steps attempted on all sectors written.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
101
18.7.4 Log Sense Page 3
This page contains counters for read errors.
Table 66:
Log Sense Page 3 (part 1 of 2)
Byte
18
19
20-27
28-29
30
31
32-39
40-41
6
7
8-15
16-17
2-3
4-5
0
1
42
43
44-51
52-53
54
55
56-63
64-65
Table 67:
Log Sense Page 3 (part 2 of 2)
7
Reserved
6 5
Bit
4 3 2
Page code = 03h
Reserved
PageLength = 54h
Parameter Code = 0000h
DU = 0 DS = 0 TSD=0 ETC = 0 TMC = 0
Parameter Length = 08h
Errors recovered without delay
Parameter Code = 0001h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Errors recovered with possible delays
Parameter Code = 0002h
DU = 0 DS = 0 TSD=0 ETC = 0 TMC = 0
Parameter Length = 08h
Reserved = 0
Parameter Code = 0003h
DU = 0 DS = 0 TSD=0 ETC = 0 TMC = 0
Parameter Length = 08h
Total errors recovered
Parameter Code = 0004h
DU = 0 DS = 0 TSD=0 ETC = 0 TMC = 0
Parameter Length = 08h
Times recovery invoked
Parameter Code = 0005h
Bit
Byte
7 6 5 4 3 2
1
F&L = 00b
1
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
102
0
F&L = 00b
F&L = 00b
F&L = 00b
F&L = 00b
0
66
67
68-75
76-77
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Total bytes read
Parameter Code = 0006h
F&L = 00b
78
79
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
F&L = 00b
80-87 Count of hard errors
All parameter counts indicate the number of sectors with the specified types of errors, except Times Recovery Invoked, which is a cumulative count of all recovery steps attempted on all sectors read. ECC-on-the-fly correction is not included in any counters.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
103
18
19
20-27
28-29
30
31
32-39
40-41
6
7
8-15
16-17
2-3
4-5
0
1
42
43
44-51
52-53
54
55.
56-63
64-65
18.7.5 Log Sense Page 5
This page contains counters for verify errors.
Table 68:
Log Sense Page 5 (part 1 of 2)
Byte
7
Reserved
6 5
Bit
4 3 2
Page code = 05h
Reserved
PageLength = 54h
Parameter Code = 0000h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Errors recovered without delay
Parameter Code = 0001h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Errors recovered with possible delays
Parameter Code = 0002h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Reserved = 0
Parameter Code = 0003h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Total errors recovered
Parameter Code = 0004h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Times recovery invoked
Parameter Code = 0005h
1
F&L = 00b
F&L = 00b
F&L = 00b
F&L = 00b
F&L = 00b
0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
104
Table 69: Log Sense Page 5 (part 2 of 2)
Byte
66
67
68-75
76-77
78
79
80-87
7
DU = 0
6
DU = 0 DS = 0 TSD = 0 ETC = 0
DS = 0
5 4
Bit
3
TMC = 0
2
Parameter Length = 08h
Total Bytes Verified
Parameter Code = 0006h
TSD = 0 TMC = 0
Parameter Length = 08h
Count of hard errors
1 0
F&L = 00b
F&L = 00b
All parameter counts indicate the number of sectors with the specified types of errors, except Times Recovery Invoked, which is a cumulative count of all recovery steps attempted on all sectors verified. ECC-on-the-fly correction is not included in any counters.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
105
6
7
8-15
2-3
4-5
0
1
18.7.6 Log Sense Page 6
This page contains counters for non-medium errors. This includes seek errors and other hardware type failures.
Table 70: Log Sense Page 6
Byte
7
Reserved
6 5
Bit
4 3 2
Page code = 06h
Reserved
PageLength = 0Ch
Parameter Code = 00h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 08h
Error count
1 0
F&L = 00b
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
106
8
9
6
7
2-3
4-5
0
1
10-11
12
13
14
15
18.7.7 Log Sense Page D
This page contains temperature information.
Table 71: Log Sense Page D
Byte
7
Reserved
6 5
Bit
4 3 2
Page code = 0Dh
Reserved
PageLength = 0Ch
Parameter Code = 0000h
DU = 0 DS = 1 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 02h
Reserved
Temperature (degrees Celsius)
Parameter Code 0001h
DU = 0 DS = 1 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 02h
Reserved
Reference Temperature (degrees Celsius)
1
F&L = 00b
F&L = 00b
0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
107
28-31
32-33
34
35
36-39
40-41
42
43
44-47
48-49
50
14-15
16
17
18-21
22-23
24-25
26
27
6
7
8-11
12-13
2-3
4-5
0
1
18.7.8 Log Sense Page E
This page contains the start-stop cycle information.
Table 72: Log Sense Page E
Byte
7
Reserved
DU=0
DU=0
6 5
Bit
4 3 2
Page code = 0Eh
Reserved
PageLength = 34h
Parameter Code = 0001h
DS=1 TSD=0 ETC=0 TMC = 0
Parameter Length = 06h
Year of Manufacture (4 ASCII characters)
Week of Manufacture (2 ASCII characters)
Parameter Code 0002h
DS=0 TSD=0 ETC=0 TMC = 0
Parameter Length = 06h
DU=0
DU=0
DU=0
DU=0
1 0
F&L = 00b
F&L = 00b
Accounting Date Year (4 ASCII characters)
Accounting Date Week (2 ASCII characters)
Parameter Code 0003h
DS=1 TSD=0 ETC=0 TMC = 0
Parameter Length = 04h
Specified start/stop cycle count over device lifetime
F&L = 00b
Parameter Code 0004h
DS=1 TSD=0 ETC=0 TMC = 0 F&L = 00b
Parameter Length = 04h
Accumulated start-stop cycles (4 byte binary number)
Parameter Code 0005h
DS=1 TSD=0 ETC=0 TMC = 0
Parameter Length = 04h
Specified load unload count over device lifetime
F&L = 00b
Parameter Code 0006h
DS=1 TSD=0 ETC=0 TMC = 0 F&L = 00b
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
108
51 Parameter Length = 04h
52-55 Accumulated load unload cycles (4 byte binary number)
The week and year that the device was manufactured shall be set in the parameter field defined by parameter code 0001h. The date of manufacture cannot be saved using the LOG SELECT command. The data is expected in numeric ASCII characters
(30-39h) in the form YYYYWW. The accounting date specified by parameter code 0002h is a parameter that can be saved using the LOG SELECT command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
109
18.7.9 Log Sense Page F
This page contains the Application Client Log.
Table 73: Log Sense Page F
Byte
0
1
2-3
4-259
7
Reserved
6
Bit
5 4 3 2
Page code = 0Fh
Reserved
Page length = 4000h
Application client log parameter
1st application client log parameter
1
16132-
16387
64th application client log parameter
0
The following table describes the application client log parameter structure.
Table 74: Log Sense Page F, Application Client Log
Byte
0-1
7 6 5
Bit
4 3
Parameter code
2
2
DU
= 1
DS
= 0
TSD = 0 ETC = 0 TMC = 0
3
4-
Parameter length = FCh
First parameter byte
1 0
F&L = 00b
255 Last parameter byte
Parameter code 0000h through 003Fh are supported.
The values stored in the parameter bytes represent data sent to the device in a previous LOG SELECT command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
110
18.7.10 Log Sense Page 10
This page contains self-test results. The results of the 20 most recent self-tests are stored in this Log page.
Table 75:
Log Sense Page 10
Byte
0
1
2-3
4-23
7
Reserved
6
Bit
5 4 3 2
Page code = 10h
Reserved
PageLength = 190h
1st self-test results log parameter
1 0
384- 403 20th self-test results log parameter
The following table describes the self-test results log parameter structure
Table 76: Log Sense Page 10, self-test results
Byte
7 6
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 10h
Function Code RSVD
F&L = 11b
Self-Test Results Value
Extended Segment Number
Reserved
5
Bit
4 3
Parameter code
Timestamp
LBA of First Failure
Additional Sense Code
Additional Sense Code Qualifier
Vendor specific
2
Sense Key
1 0
5
6-7
8-15
16
3
4
0-1
2
17
18
19
• Parameter Code identifies the log parameter for the log page. The parameter code field for the results of the most recent test will be 0001h. The parameter for the next most recent will be 0002h.
• Function Code contains the content of the Function Code field in the SEND DIAGNOSTIC command that initiated this self-test.
• Self-Test Results Value is described in the table below.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
111
Table 77: Log Sense Page 10, self-test results
Value
0h
1h
2h
Description
The self-test routine completed without error.
The background self-test routine was aborted by the initiator using a SEND
DIAGNOSTIC command with the Abort Background self-test function.
The self-test routine was aborted by the application client by a Task Management function or a reset.
3h
4h
5h
6h
7h
An unknown error occurred while the Target was executing the self-test routine and the Target was unable to complete the self-test routine.
The self-test completed with a test element that failed and it is not known which test element failed.
The first segment of the self-test failed.
The second segment of the self-test failed.
The third or greater segment of the self-test failed (see the Extended segment number field).
8h-Eh Reserved.
Fh The self-test is in progress.
• Extended Segment Number This field identifies the number of the segment that failed during self-test. If no segment failed, this field will be 00h.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
112
Table 78: Log Sense Page 10, Extended Segment Number
Extended
Segment
Number
1h
2h
3h
4h
5h
6h
7h
8h
Short Self-Test
Drive Ready Test
Drive Diagnostics
SMART
Extended Self-Test
Low Level Format check
Physical Head Check
Random Verify
- Verify First 300 MB
- Verify Last 100 MB
Recheck SMART
Verify all LBAs
• Timestamp This field contains the total accumulated power-on hours of the Target at the time the self-test completed.
• LBA of first failure This field contains the LBA of the first logical block address where a self-test error occurred. If no errors occurred during the self-test or the error is not related to a LBA then the field will be FFFFFFFFFFFFFFFFh.
• Sense Key, Additional Sense Code and Additional Sense Code Qualifier These fields will contain the additional information relating to the error or exception conditions during self-test.
NOSTIC command and Power on Diagnostics.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
113
18.7.11 Log Sense Page 15
This page contains information about Background Medium Scan operations.
Table 79: Log Sense Page 15
Byte
0
1
2-3
4-19
20-43
19+24N
7
Reserved
6
Bit
5 4 3 2
Page code = 15h
Reserved
Page Length = (19 + 24N -3)
Background Medium Scan parameters
BMS Status Parameter
First Medium Scan Parameter
...
Last Medium Scan Parameter
The following table describes the BMS Status Parameter structure.
1
Byte
0-1
2
3
4-7
8
9
10-11
12-13
14-15
7
DU=0
6
DS=0
5
Bit
4 3
Parameter Code = 0000h
TSD=0 ETC=0 TMC=0
Page Length = 0Ch
Power On Minutes
Reserved = 0
2
BMS Status
Number of Background Scans Performed
Medium Scan Progress
Number of Background Medium Scans Performed
1
F&L = 11b
• Power On Minutes indicates the total power on minutes at the time the log page is requested
• BMS Status is described in the following table
0
0
BMS Status
00h
01h
03h-04h
05h
06h
07h
08h
Description
No scans active
Background medium scan is active
Not supported
Background scan halted due to medium formatted without P-List
Background scan halted due to a vendor-specific cause
Background scan halted due to temperature out of range
Scan suspended until BMS Interval Timer expires
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
114
BMS Status Description
09h - FFh Reserved
• The Number of Background Scans Performed field indicates the total number of back ground scans (i.e. total number of Background Medium Scans PLUS number of Background Prescan) that have been performed over the life of the drive.
• Medium Scan Progress is a percent complete indication of the medium scan. The returned value is a numerator that has
65,536 (1 00 00h) as its denominator.
•Number of Background Medium Scans Performed field indicates the number of background medium scans that have been performed over the life of the drive.
The following table describes the Medium Scan Parameter structure.
Byte
10
11
8
9
0-1
2
3
4-7
7
DU=0
6
DS=0
Bit
5 4 3
Parameter Code = 0001h - 0800h
2
TSD=0 ETC=0 TMC=0
Page Length = 14h
Power On Minutes
1
F&L = 11b
0
Reassign Status
Head
Additional Sense Code
Additional Sense Code Qualifier
Sense Key
(MSB) Cylinder
(MSB)
12-13 Cylinder
(LSB)
(MSB)
14-15 Sector
(LSB)
16-23 LBA
• Power On Minutes indicates the total power on minutes at the time the error was detected.
• Reassign Status is set as shown below. Reassignment during the background scan is not supported.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
115
Reassign Status
0h
1h
02h-4h
5h
6h
7h - Fh
Description
No reassignment needed
This value is not reported, if LOWIR bit is set to 1 in
Background Control Mode Page.
Reassignment pending receipt of Reassign command or write command (if auto write reallocation is allowed) from the initiator
Not supported
Error was detected by BGMS, and was successfully rewritten.
This value is not reported, if LOWIR bit is set to 1 in
Background Control Mode Page.
Error was detected by BGMS, and was successfully reassigned by Application Client. Contains valid data.
Reserved
Additional Sense Code and Additional Sense Code Qualifier provide details about the error detected.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
116
18.7.12 Log Sense Page 18
This page contains protocol-specific log parameters.
Table 80: Log Sense Page 18
Byte
0
1
7 6 5
Bit
4 3
Page code = 18h
SubPage Code (00h)
2 1 0
(MSB)
2-3 Page Length (D8h)
(LSB)
4-111
112-219
Protocol-specific log parameters
First Protocol-specific log parameter - Primary Port
Last Protocol-specific log parameters - Secondary Port
Table 81: SAS Log Descriptor
10
11
8
9
Bit
Byte
0-1
7
(MSB)
6 5 4 3 2 1 0
DU (=0)
Parameter Code (0001h for primary port; 0002h for secondary
Obsolete TSD (=0) ETC (=0) TMC (00b)
(LSB)
Format and Linking 2
3 Parameter Length (68h)
4 Reserved
5 Reserved
Protocol IDENTIFIER (6h)
6
7
Generation Code
Number of Phys (01h)
12
13
Reserved
Reserved
PHY IDENTIFIER (00h)
Reserved
SAS Phy Log Descriptor Length (60h)
Attached Device Type
Reason
14
15
Reserved
Reserved
Attached
SSP Initiator Port
Attached Reason
Negotiated Physical Link Rate
Attached
SSP Target
Port
Attached
STP Initiator Port
Attached
STP Target Port
Attached
SMP Initiator Port
Attached
SMP Target Port
Reserved
Reserved
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
117
56-57
58
59
60-62
63
16-23
24-31
32
33-39
40-43
44-47
(MSB)
SAS Address (the address of the target port)
(LSB)
(MSB)
ATTACHED SAS ADDRESS (the address received in the incoming IDENTIFY)
(LSB)
ATTACHED PHY IDENTIFIER (the phy identifier received in the incoming IDENTIFY)
Reserved
(MSB)
INVALID DWORD COUNT
(LSB)
(MSB)
RUNNING DISPARITY ERROR COUNT
(LSB)
(MSB)
48-51 LOSS OF DWORD SYNCHRONIZATION
(LSB)
(MSB)
52-55 PHY RESET PROBLEM
(LSB)
Reserved
Phy event Descriptor Length (0Ch)
Number of Event Descriptors (04h)
Reserved
Phy Event Source (01h) (Invalid DWORD Count)
(MSB)
64-67 Phy Event
(LSB)
(MSB)
68-71 Peak Value Detector Threshold (00h)
(LSB)
72-74
75
Reserved
Phy Event Source (02h) (Running Disparity Error Count)
(MSB)
76-79 Phy Event
(LSB)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
118
(MSB)
80-83 Peak Value Detector Threshold (00h)
(LSB)
84-86
87
Reserved
Phy Event Source (03h) (Loss of DWORD Sync)
(MSB)
88-91 Phy Event
(LSB)
(MSB)
92-95 Peak Value Detector Threshold (00h)
(LSB)
96-98
99
Reserved
Phy Event Source (04h) (PHY Reset problen)
(MSB)
100-103 Phy Event
(LSB)
(MSB)
104-107 Peak Value Detector Threshold (00h)
(LSB)
• Attached Device Type: set to the value received by this PHY during an Identify Sequence.
• Attached Reason:
If the phy is a physical phy and a SAS phy or expander phy is attached, then the ATTACHED
ATTACHED REASON field shall be set to 0h after the initial Register - Device to Host FIS has been received. If the phy is a virtual phy, then the ATTACHED REASON field shall be set to 0h.
•
Reason:
The REASON field indicates the reason for the last link reset sequence as reported in the last transmitted
• Negotiated PHY Link Rate: set to the link rate negotiated during last Link Reset Sequence.
- set to 8h when the PHY is enabled and the negotiated speed is 1.5G
- set to 9h when the PHY is enabled and the negotiated speed is 3.0G
- set to Ah when the PHY is enabled and the negotiated speed is 6.0G
• The GENERATION CODE field is a one-byte counter that shall be incremented by one by the device server every time the values in this mode page or the SAS-2 Phy mode page (see 10.2.7.7) field values are changed. A GENERATION
CODE field set to 00h indicates the generation code is unknown. The device server shall wrap this field to 01h as the next increment after reaching its maximum value (i.e., FFh). The GENERATION CODE field is also contained in the Protocol-Specific Port log page and may be used to correlate phy settings across mode page and log page accesses.
• Attached Reason: indicates the value of the REASON field received in the IDENTIFY address frame.
• Attached Initiator Port bits: set to the value received by this PHY during an Identify Sequence.
•
Attached Target Port: set to the value received by this PHY during an Identify Sequence.
• SAS ADDRESS: field contains the SAS address transmitted by this PHY during an Identify Sequence.
• Attached SAS ADDRESS: field contains the SAS address received by this PHY during an Identify Sequence.
• Attached PHY Identifier: field contains the SAS PHY Identifier received by this PHY during an Identify Sequence.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
119
• INVALID DWORD COUNT: indicates the number of invalid dwords that have been received outside of phy reset sequences. The count wraps at the maximum value.
• RUNNING DISPARITY ERROR COUNT: RUNNING DISPARITY ERROR COUNT increments by one when the port has acquired dword synchronization and detects a transmission word containing a running disparity error at the receiver. When the port has lost dword synchronization, the Running Disparity Error Count is not incremented. The count stops at the maximum value.
• LOSS OF DWORD SYNCRONIZATION: indicates the number of times the phy has lost dword synchronization and restarted the link reset sequence of phy reset sequences. The count wraps at the maximum value.
• PHY RESET PROBLEM: indicates the number of times the phy reset sequence has failed due to a failure to gain dword sync in the retry speed match speed negotiation. The count wraps at the maximum value.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
120
18.7.13 Log Sense Page 1A
30
31
32-35
36-37
38
39
40-43
44-45
46
47
48-51
14
15
16-19
20-21
22
23
24-27
28-29
6
7
8-11
12-13
0
1
2-3
4-5
Table 82: Log Sense Page 1A
Byte
7 6
Reserved
5 4 3
Bit
2
Page code = 1Ah
1 0
SubPage Code (00h)
Page Length (30h)
DU Obsolete TSD ETC
Parameter Code 0001h
TMC TMC FMT & Linking FMT & Linking
Parameter Length = 4
Accumulated Transitions to Active State
DU
DU
Obsolete
Obsolete
TSD
TSD
ETC
Parameter Code 0002h
TMC TMC FMT & Linking FMT & Linking
Parameter Length = 4
Accumulated Transitions to Idle_A
ETC
Parameter Code 0003h
TMC TMC FMT & Linking FMT & Linking
Parameter Length = 4
Accumulated Transitions to Idle_B
DU
DU
DU
Obsolete
Obsolete
Obsolete
TSD
TSD
TSD
ETC
Parameter Code 0004h
TMC TMC FMT & Linking FMT & Linking
Parameter Length = 4
Accumulated Transitions to Idle_C
ETC
Parameter Code 0008h
TMC TMC FMT & Linking FMT & Linking
Parameter Length = 4
Accumulated Transitions to Standby_Z
ETC
Parameter Code 0009h
TMC TMC FMT & Linking FMT & Linking
Parameter Length = 4
Accumulated Transitions to Standby_Y
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
121
8
9
6
7
2-3
4-5
0
1
10
11
18.7.14 Log Sense Page 2F
This page contains SMART Status and Temperature Reading.
Table 83:
Log Sense Page 2F
Byte
7
Reserved
6 5
Bit
4 3 2
Page code = 2Fh
Reserved
PageLength = 8
Parameter Code = 0000h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 04h
SMART Sense Code Byte
SMART Sense Qualifier
Most Recent Temperature Reading
Vendor HDA Temperature Trip Point
1
F&L = 11b
0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
122
18.7.15 Log Sense Page 30
This page contains Performance Counters.
Table 84: Log Sense Page 30
Byte
12-13
14-15
16-17
18-19
20-23
24-25
26-27
28-31
32-35
36-39
40-43
44-47
48-51
6
7
8-9
10-11
2-3
4-5
0
1
7
Reserved
6 5
Bit
4 3 2
Page code = 30h
Reserved
Page Length = 0030h
Parameter Code = 0000h
DU = 0 DS = 0 TSD = 0 ETC = 0 TMC = 0
Parameter Length = 2Ch
Zero Seeks
Seeks > = to 2/3
Seeks > = 1/3 and < 2/3
Seeks > = 1/6 and < 1/3
Seeks > = 1/12 and < 1/6
Seeks > 0 and < 1/12
Reserved = 0
Overrun Counter
Under run Counter
Device Cache Full Read Hits
Device Cache Partial Read Hits
Device Cache Write Hits
Device Cache Fast Writes
Device Cache Read Misses
Reserved = 0
1
F&L = 00b
0
Page 30h returns performance counter information. This includes seek counters and buffer overrun/under run counters.
The appropriate seek counter is incremented once during execution of Pre-Fetch, Read, Verify, Write, Write and Verify, Write
Same, and Seek commands.
Buffer Overrun conditions are detected during Read commands.
Buffer Underrun conditions are detected during Verify with ByteChk=1, Write, Write and Verify, and Write Same commands.
Only one seek counter is incremented for each of these commands and the counter is incremented only once per command.
The length of the initial seek that is required to access the first Logical Block specified for the SCSI command determines which seek counter is incremented. The Zero Seek counter is incremented if a seek is not required or if only a head switch is
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
123
required to access the first Logical Block. After the initial seek, no further counter incrementing is performed for that command.
Note:
The length of a seek as reported in page 30 may differ from expected results. The reason for this is that the drive executes Idle Time Functions between operations of the drive. The seek operations that occur in Idle Time Functions are not directly entered into page 30 seek counters but they change the length of the following seek. This is because after the Idle Time
Function is completed, the heads will not necessarily be in the same position as they were at the completion of the previous command.
A buffer overrun or under run condition occurs when the Initiator does not transfer data to or from the Target data buffer fast enough to keep up with reading or writing the media. The buffer overrun counter is incremented during operations that require a Data In phase when a buffer full condition prevents the continued transfer of data from the media to the data buffer. The buffer under run counter is incremented during operations that require a Data Out phase when a buffer empty condition prevents the start or continuation of a data transfer from the data buffer to the media (or a data transfer from the media for a Verify command with BytChk=1).
Buffer Overrun conditions are detected during the following SCSI commands:
• READ (6)
• READ (10)
Buffer Under Run conditions are detected during the following SCSI commands:
• VERIFY WITH BytChk=1
• VERIFY (16) WITH BytChk=1
• WRITE (6)
• WRITE (10)
• WRITE AND VERIFY
• WRITE AND VERIFY (16)
• WRITE SAME
• WRITE SAME (16)
• ZERO SEEKS
The number of times no seek was required. The operation may have resulted in a head switch.
• SEEKS >= 2/3 DISK
The number of seeks equal to or greater than 2/3 of the disk.
• SEEKS >= 1/3 AND < 2/3 DISK
The number of seeks equal to or greater than 1/3 and less than 2/3 of the disk.
• SEEKS >= 1/6 AND < 1/3 DISK
The number of seeks equal to or greater than 1/6 and less than 1/3 of the disk.
• SEEKS >= 1/12 AND < 1/6 DISK
The number of seeks equal to or greater than 1/12 and less than 1/6 of the disk.
• SEEKS > 0 AND < 1/12 DISK
The number of seeks less than 1/12 of the disk.
• OVERRUN COUNTER
The number of times that data was available to be transferred from the media but the device buffer still contained data that had not been retrieved by the Initiator. Consequently, the disk had to take additional revolutions until the buffer was available to accept data.
• UNDER RUN COUNTER
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
124
The number of times that the drive was ready to transfer data to its disk (on a write), but its buffer was empty (i.e., had not been filled by the Initiator), thus the disk was forced to take extra revolutions.
• DEVICE CACHE FULL READ HITS
The number of times that all of the data requested by the read operation was obtained from the device read or write cache.
• DEVICE CACHE PARTIAL READ HITS
The number of times that a portion, but not all, of the data requested by the read operation was obtained from the device read or write cache. A physical operation to the device media was required to obtain the remaining data.
• DEVICE CACHE WRITE HITS
The number of times that the data associated with a write operation replaces, or is combined with, existing data in the device write cache, thereby eliminating a write operation.
• DEVICE CACHE FAST WRITES
The number of times that space was available in the device write cache for the data associated with a write operation and a response was returned immediately.
• DEVICE CACHE READ MISSES
The number of times that none of the data requested by the read operation was obtained from the read cache.
The statistics reported by this page are lost on a self-initiated reset or when the Drive is powered off. Even though the DS field equals zero, the parameters on this page are not savable.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
125
18.7.16 Log Sense Page 37
19
20
-
11
12
-
27
28
6
7
8
0
1
2-3
4-5
-
This page contains a series of miscellaneous data counters including information about predictive failure analysis occurrences.
Table 85: Log Sense Page 37
Byte
29 - 30
31
32
33 - 40
41 - 48
49
50-51
7
Reserved
DU=0
6
DS=0
5
Bit
4 3 2
Page code = 37h
Reserved
Page Length = 0030h (48)
Parameter Code = 0000h
TSD=0 ETC=0 TMC = 0
Parameter Length = 2Ch
1
F&L = 00b
0
(MSB)
Power on Hours (hours only)
(LSB)
(MSB)
Total Bytes Read
(LSB)
(MSB)
Total Bytes Written
Reserved = 0
(LSB)
Max Drive Temp (degrees Celsius)
(MSB) GList Size
(LSB)
Number of Information Exceptions
MED
EXC
HDW
EXC
Total Read Commands
Total Write Commands
Reserved = 0
Flash Correction Count
The Power on Hours field specifies the total time the drive has been powered on in hours only.
The Max. Drive Temperature field specifies the maximum temperature, in degrees Celsius, the drive has ever reached.
The Glist Size field gives the total number of LBAs that have been reassigned on the drive.
The Number of Information Exceptions field gives the number of Information Exceptions during the life of the drive and not the number of Information Exceptions that have been reported. The number of reported Information Exceptions may be less due to the settings of Mode Page 0x1C. NOTE: This field does not include occurrences of any Information Exception
Warnings.
If set, the Media Exception and Hardware Exception bits indicate that an Information Exception has occurred during the life of the drive. These flags are set during an Information Exception that may or may not coincide with the reporting of an
Information Exceptions as mentioned above.
Total Read Commands counter is incremented for each Read (6) and Read (10) command received.
Total Write Commands counter is incremented for each Write (6), Write (10), Write Verify and Write Verify (16) command received.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
126
Flash Correction Count is incremented each time ECC correction is applied to data stored in Flash ROM.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
127
18.8 MODE SELECT (15)
Table 86: Mode Select (15)
Byte
0
1
2
3
4
5
7 6
Reserved = 0
5 4
PF=1
Bit
3
Command Code = 15h
Reserved = 0
2
Reserved = 0
1 0
SP
VU = 0
Parameter List Length
Reserved = 0 FLAG LINK
The MODE SELECT (15) command provides a means for the Initiator to specify LUN or device parameters to the Target. It also allows an Initiator to specify options the Target uses in error recovery, caching, and formatting.
There is a single set of Mode Page parameters shared by all Initiators.
• PF A PF (Page Format) bit value of one indicates that the data sent by the Initiator after the Mode Select Header and the
Block Descriptor, if any, complies to the Page Format. The Target ignores this field since it only accepts mode parameters in the Page Format.
• SP Save Pages. This indicates
0 The drive shall not save the pages sent during the Data Out phase but will use them for all following commands until the power is removed, a reset is received, or a new MODE SELECT command is received.
1 The drive will save the data in the reserved area of the disk. It will be used for all the following commands until another MODE SELECT command is issued. This information is maintained over a power cycle or reset of the drive.
• Parameter List Length This specifies the number of bytes to be sent from the Initiator. A parameter list length of zero suppresses data transfer and is not considered an error.
The MODE SELECT parameter list contains a 4-byte header followed by zero or one block descriptor followed by zero or more pages. The pages that are valid with this command are defined in the addendum under the heading Mode Select Data, as they vary with the drive model.
Application Note
The Initiator should issue a MODE SENSE command requesting all Changeable values (see PCF field in byte two of the CDB in) prior to issuing a MODE SELECT command. This is necessary to find out which pages are implemented by the drive and the length of those pages. In the Pages of the MODE SENSE command the drive will return the number of bytes supported for each Page. The Page Length set by the Initiator in the MODE SELECT command must be the same value as returned by the drive in MODE SENSE Page Length. If not, the drive will return Check Condition status with sense key of Illegal Request.
Note:
If an Initiator sends a MODE SELECT command that changes any parameters that apply to other Initiators, the drive shall generate an unit attention condition for all Initiators except for the one that issued the MODE SELECT command. The drive shall set the additional sense code to Parameters Changed (2Ah).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
128
18.9 MODE SELECT (55)
Table 87: Mode Select (55)
Byte
0
1
7 6
Reserved = 0
5
PF=1
Bit
4 3
Command Code = 55h
2
Reserved = 0
1 0
SP
2-6 Reserved = 0
(MSB) Parameter List Length
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The MODE SELECT (55) command provides a means for the Initiator to specify LUN or device parameters to the Target. See the MODE SELECT (15) command for a description of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
129
18.10 MODE SENSE (1A)
Table 88: Mode Sense (1A)
Byte
2
3
0
1
4
5
7
Reserved
PCF
6 5
RSVD
Bit
4 3
Command Code = 1Ah
DBD
Page Code
2
Subpage Code
Allocation Length
Reserved = 0
1
Reserved = 0
0
VU = 0 FLAG LINK
The MODE SENSE (1A) command provides a means for the drive to report various device parameters to the Initiator. It is the complement to the MODE SELECT command.
If the DBD (Disable Block Descriptor) bit is zero, the Target will return the Block Descriptor. If the DBD bit is set to 1, the
Target will not return the Block Descriptor.
Allocation Length indicates the maximum number of bytes that the Initiator has set aside for the DATA IN phase. A value of zero is not considered an error. If the allocation length is smaller than the amount available, that portion of the data up to the allocation length will be sent. This may result in only a portion of a multi-byte field being sent.
Page Control Field: PCF (Page Control Field) defines the type of Page Parameter values to be returned.
PCF Meaning
0 0 Report current values. The drive returns the current values under which the logical unit is presently configured for the page code specified. The current values returned are
0 1
1. Initially following power-up but before the media is accessed, the default values become current. Once the media can be accessed, the saved values are read from the Reserved Area and become current.
2.The parameters set in the last successful MODE SELECT command.
3.The saved values if a MODE SELECT command has not been executed since the last power-on, hard RESET condition, or TARGET RESET message.
Following the completion of start-up, execution of the MODE SELECT command can modify the current values.
Note: Those parameters associated with format are not considered current and are not saved until the successful completion of a FORMAT UNIT command.
In addition, the current values take on the saved values after a reset if the parameters were saved. If the Page Code is
3Fh, then all pages implemented by the Target are returned to the Initiator with fields and bit values set to current values.
If the Page Code is not 3Fh, the page defined by the Page Code, if supported by the Target, is returned with fields and bits set to current values.
Note: The drive will not process the MODE SELECT command until the completion of spin-up. Therefore, the Initiator cannot modify the current values prior to the saved values being read in.
Report changeable value. The drive returns the changeable values for the page code specified. The page requested is returned containing information that indicates which fields are changeable. All bits of parameters that are changeable shall be set to one. Parameters that are defined by the drive shall be set to zero. If any part of a field is changeable, all bits in that field shall be set to one.
Note: For a value field such as the buffer ratios of page 2 the bit field will not indicate the range of supported values but rather that the field is supported.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
130
1 0
1 1
Report default value. The drive returns the default values for the page code specified. The parameters not supported by the drive are set to zero.
Report saved value. The drive returns the saved value for the page code specified.
Saved values are one of the following:
- the values saved as a result of MODE SELECT command
- identical to the default values
- zero when the parameters are not supported
The Page Length byte value of each page returned by the drive indicates up to which fields are supported on that page.
Page Code: This field specifies which page or pages to return. Page code usage is defined in the figure below.
Table 89: Page Code Usage
Page Code Description
00h - 1Ch
3Fh
Return specific page, if supported.
Return all supported pages.
If a Page Code of 3Fh is used, MODE SENSE returns the pages in ascending order with one exception. Page 0 is always returned last in response to a MODE SENSE command.
If an unsupported page is selected, the command is terminated with a CHECK CONDITION status and available sense of
ILLEGAL REQUEST/INVALID FIELD IN CDB.
Subpage Code: This field specifies the subpage to return, and may be set to a specific page, or to FFh for all supported subpages.
18.10.1 Mode Parameter List
The mode parameter list contains a header followed by zero or more block descriptors followed by zero or more variable length pages.
18.10.1.1 Header
The header used for the 6-byte CDB is defined below.
Table 90: Mode parameter header (6)
Byte
0
1
2
3
7
WP=0
6 5
Bit
4 3
Mode Data Length
2 1
Reserved=0
Medium Type = 0
DPOFUA
=1
Block Descriptor Length (= 0 or 8)
Reserved = 0
0
The header used for the 10-byte CDB is defined below.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
131
Table 91: Mode parameter header (10)
Byte
0
1
Bit
7 6 5 4 3
(MSB) Mode Data Length
2
3
6
7
4
5
WP=0 Reserved=0
Medium Type = 0
DPOFUA =1
Reserved = 0
(MSB) Block Descriptor Length
2 1
Reserved = 0
0
(LSB)
(= 0 or 8) (LSB)
• Mode Data Length. When using the MODE SENSE command, the mode data length field specifies the length in bytes of the following data that is available to be transferred. The mode data length does not include the length byte itself.
When using the MODE SELECT command, this field is reserved.
• Medium Type field is always set to zero in the drive (Default Medium Type).
• WP. When used with the MODE SELECT command, the Write Protect (WP) bit is reserved.
When used with the MODE SENSE command, a Write Protect (WP) bit of zero indicates that the medium is write enabled.
• DPOFUA bit value of 1 indicates that the Target supports the FUA and DPO bits in the Read and Write Commands.
• Block Descriptor Length specifies the length in bytes of the block descriptors. When used with the MODE SELECT command, zero or eight is supported by the drive. When used with the MODE SENSE command, the drive returns eight to indicate that only a single block descriptor is available.
Note: DPOFUA is ignored during Mode Select command processing although the SCSI Standard states that it is reserved during Mode Select. Ignoring it allows the Mode Sense Parameter List for the byte containing this bit to be re-used as a Mode
Select Parameter List.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
132
18.10.1.2 Block Descriptor
Table 92: Mode Parameter Block Descriptor
Byte 0
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
(MSB)
(MSB)
Number of Blocks
Density code = 0
(LSB)
Block Length
(LSB)
The Block descriptor provides formatting information about the Number of Blocks (user addressable) to format at the specified Block Length.
• Number of Blocks
When used with the MODE SELECT command, the Number of Blocks field must be
- Zero to indicate not to change available blocks
- 0xFFFFFFFF to indicate all available blocks
- The exact number of blocks in the data area of the drive, which can be obtained with the MODE SENSE
- The number of blocks less than exact one, in order to CLIP the number of blocks
Any other value is invalid and causes the command to fail with Check Condition status.
When used with the MODE SENSE command, the field contains the exact number of blocks.
• Density Code
- Always 0 for direct access devices.
• Block Length
The Block Length field reflects the number of bytes of user data per sector (not including any protection information). When used with the MODE SELECT command, the Block length field must contain the value from 512 to 528
(8 bytes step) or zero. Otherwise the drive will terminate the command with Check Condition status.
A FORMAT UNIT command is required to cause these parameters to become current only if the block length parameter is different from the current block length.
When used with the MODE SENSE command, the field is dependent on how the media is currently formatted.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
133
18.10.1.3 Page Descriptor
Table 93: Mode Parameter Page Format
Byte 0
Byte 1
Byte 2-n
PS SPF Page Code
Page Length
Mode Parameters
Each mode page contains a page code, a page length, and a set of mode parameters.
When using the MODE SENSE command, a Parameter Savable (PS) bit of one indicates that the mode page can be saved by the drive in the reserved area of the drive. A PS bit of zero indicates that the supported parameters cannot be saved. When using the MODE SELECT command, the PS bit is reserved (zero).
SPF (Sub-Page Format) is set to zero to indicate the short page format is used. The bit is set to one to indicate the long format is used, supporting sub-pages. The drive supports the following mode page codes:
Table 94: Mode Parameter Page Format
03
04
07
08
Page
00
01
02
0A
0C
19
1A
1C
Vendor Unique Parameters
Format Device Parameters
Caching Parameters
Control Mode Page
Notch Parameters
Port Control Page
Power Control Parameters
Description
Read-Write Error Recovery Parameters
Disconnect/Reconnect Control Parameters
Rigid Disk Geometry Parameters
Verify Error Recovery Parameters
Informational Exceptions Control
PS
1
1
1
0
0
1
1
1
1
1
1
1
The page length field specifies the length in bytes of the mode parameters that follow. If the Initiator does not set this value to the value that is returned for the page by the MODE SENSE command, the drive will terminate the command with Check Con-
dition status.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
134
18.10.2 Mode Page 00 (Vendor Unique Parameters)
12
13
14
15
10
11
8
9
6
7
4
5
2
3
0
1
Table 95: Vendor Unique Parameters - Page 00
Byte
Bit
Default
7
PS
6
0
5 4 3 2
Page Code = 00h
Reserved
Page Length = 0Eh
MRG
Reserved VGMDE Reserved
1 0
Reserved Ignored
RRNDE Reserved
IGRA
Reserved
AVERP
Reserved
FDD Reserved
Reserved
Overall Command Timer (low byte)
CAEN Ignored
OCT (high nibble)
Reserved
Temperature Threshold
DRRT
Command Aging Limit (Hi byte)
Command Aging Limit (Low byte)
Read Reporting Threshold
Write Reporting Threshold
Ignored
Ignored Reserved FCERT
FFMT
Ignored Reserved Ignored
16h
14h
Ignored 00h
Reserved 00h
00h
00h
00h
30h
00h
02h
00h
00h
80h
0Eh
00h
00h
Fields marked in the table as 'Ignored' are not used or checked by the drive. They will be initialized to zero but can be set as desired for compatibility with older drives.
• MRG (Merge Glist into Plist) bit is set to 1 for merging the Glist entries into the Plist during FORMAT UNIT command.
• VGMDE (Veggie Mode) bit set to 1 will cause the drive to execute random self-seeks. To enable this mode, the initiator must perform the mode select to set the bit while the drive is spinning, then Stop Unit, then Start Unit. VGMDE set to
0 disables the self-seeks (normal operation).
• RRNDE (Report Recovered Non Data Errors) bit controls the reporting of recovered Non Data Errors when the PER bit is set. If RRNDE is set, recovered Non Data Errors are reported. If the RRNDE bit is not set, then recovered Non
Data Errors are not reported.
• FDD (Format Degraded Disable) controls the reporting of Format Degraded sense data for Test Unit Ready commands when the drive is in a format degraded state. When the FDD bit is one, Format Degraded sense data will not be reported for a Test Unit Ready command. When the FDD bit is zero, Format Degraded sense data will be reported for
Test Unit Ready commands when the drive is in a format degraded state. This bit does not affect the reporting of Format Degraded conditions for any media access commands.
• CAEN (Command Aging Enable) When set this bit causes the Command Age Limit timer to be used to avoid commands waiting in the command queue for an indefinite period. When commands have been in the queue for a period of time greater than the timer limit they will be reordered to be executed on a first come first served basis. When this bit is reset, commands are always executed based on the queue reordering rules.
• IGRA (Ignore Reassigned LBA) bit works in conjunction with the RC bit (Mode Page 01h, byte 2, bit 4). The main purpose of this bit is to avoid undesirable read processing time delays due to reassigned LBA processing for continuous data availability requirements such as Audio Visual applications. If IGRA is set to one and RC is set to one, out-of-
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
135
line reassigned LBAs will not be processed. If IGRA is set to one and RC is set to zero, or if IGRA is set to zero, reassigned LBAs will be processed normally.
• AVERP (AV ERP Mode) bit is set to one in order to specify maximum retry counts during Read DRP. When AVERP bit is set to one, the maximum retry counts for read operations is specified by Read Retry Count (Mode Page 1 Byte 3).
AVERP bit is set to zero to specify that the drive shall process read DRP up to the default maximum retry count when
Read Retry Count is set to a non-zero value.
• OCT (Overall Command Timer) controls the maximum command execution time, from receipt by the drive until status is returned. If the command is unable to complete in the specified amount of time, it will be aborted with Check Condition status, Aborted Command sense key. The Overall Command Timer does not alter the behavior of the Command Aging Limit or Recovery Time Limit. Each unit of this timer is 50 milliseconds. Setting the value to zero disable the feature.
• Temperature Threshold Temperature Threshold specifies the threshold value in degrees Celsius for the thermal sensor
Information Exception Warning; the reporting of which is controlled by Mode Page 0x1C. A value of 0 selects the default value (85 degrees Celsius).
• Command Aging Limit This value controls the maximum time a command should wait in the command queue when the
CAEN bit is set. Each unit of this timer is 50 ms.
• Read Reporting Threshold specifies the recovery step that must be exceeded to report recovered data errors during read operations when PER=1. For example, if the Read Reporting Threshold is set to 22, recovered read errors will be reported starting at recovery step 23
• Write Reporting Threshold specifies the recovery step that must be exceeded to report recovered data errors during write operations when PER=1. For example, if the Write Reporting Threshold is set to 20, recovered write errors will be reported starting at recovery step 21.
• DRRT (Disable Restore Reassign Target) bit disables the reading and restoration of the target LBA during a Reassign
Blocks command. If the DRRT bit is zero, the reassign command attempts to restore the target LBA's data. If the data cannot be restored, the target LBA is reassigned and written with a data pattern of all 00s. If the DRRT bit is one, no attempt is made to restore the target LBA.
• FFMT (Fast Format Enable) bit allows the formatting of the drive without any writes to the customer media. All format operations are allowed including changing block sizes and manipulating defects. The drive will operate normally after a fast format with the following caveat: since no data is written to any customer data blocks as a result of a Fast
Format operation, there is a possibility that a read attempt to any particular block (without having previously written to that block) will result in an unrecoverable data error. This will most likely happen if the block size is changed as every LBA will contain data of an incorrect length and apparently an incorrect starting point. It is also possible to generate an uncorrectable data error without changing block sizes if the defect list is shortened and previously bad blocks become visible in the customer address space. Of course ALL DATA ON THE DRIVE WILL BE LOST as the result of any format operation and so any attempt to read blocks which have not been written to will result in unpredictable behavior.
• FCERT (Format Certification) bit determines whether the certification step will be performed during a Format Unit command. FCERT bit set to 0 disables certification. FCERT bit set to 1 enables the certification step.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
136
18.10.3 Mode Page 01 (Read/Write Error Recovery Parameters)
Table 96: Mode Page 01 (Vendor Unique Parameters)
Byte
6
7
4
5
2
3
0
1
8
9
10
11
7
PS
6
0
AWRE ARRE
5
TB
Bit
4 3 2
Page Code = 01h
Page Length = 0Ah
RC EER=0 PER
Read Retry Count
Obsolete = 0
Obsolete = 0
Obsolete = 0
Reserved
Write Retry Count
Reserved
(MSB) Recovery Time Limit
1
DTE
0
DCR
(LSB)
The Read-Write recovery parameters that will be used during any command that performs a read or write operation to the medium are as follows:
• AWRE Automatic Write Reallocation Enabled bit, set to zero indicates that the drive shall not perform automatic reallocation of defective data blocks during write operations. An AWRE bit set to one indicates that the drive shall perform automatic reallocation of defective data blocks during write operations.
• ARRE Automatic Read Reallocation Enabled bit, set to zero indicates that the drive shall not perform automatic reallocation of defective data blocks during read operations. ARRE bit set to one indicates that the drive shall perform automatic reallocation of defective data blocks during read operations.
• TB Transfer Block bit, set to one indicates that a data block that is not recovered within the recovery limits specified shall be transferred to the Initiator before Check Condition status is returned. A TB bit set to zero indicates that such a data block shall not be transferred to the Initiator. Data blocks that can be recovered within the recovery limits are always transferred regardless of the value of the bit.
• RC Read Continuous bit, set to one requests the Target to transfer the entire requested length of data without adding delays that would increase or ensure data integrity. This implies that the Target may send erroneous data. This bit has priority over all other error control bits (PER, DTE, DCR, TB). RC set to zero indicates normal interpretation of
PER, DTE, DCR, and TB values. The RC bit setting is used by the Target when reporting errors associated with the transfer of the Initiator's data for the Read commands interpretation of PER, DTE, DCR, and TB values. The RC bit applies only to READ commands.
00h
01h
00h
00h
01h
00h
00h
00h
Default
81h
0Ah
C0h
Note: The Target implementation of the RC option is to disable error detection of the data fields but continue normal error detection and recovery for errors occurring in the servo field. If a servo field failure occurs, normal DRP could result in considerable recovery action, including proceeding through all levels of DRP.
• EER an Enable Early Recovery bit, must be set to zero, indicating that the drive shall use an error recovery procedure that minimizes the risk of misdetection or miscorrection during the data transfer. Data shall not be fabricated.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
137
• PER a Post Error bit, is set to one to indicate that the drive reports recovered errors.
• DTE (Data Terminate on Error) bit set to one specifies that data transfer will be halted when the first recovered error is encountered. PER must be set to one when DTE is set to one. DTE set to zero will cause data transfer to continue when recovered errors are encountered.
• DCR a Disable Correction bit, is set to one to indicate that Error Correction Code is not used for data error recovery. A
DCR bit of zero indicates that ECC is applied to recover the data.
• Read Retry Count sets a limit on the amount of DRP passes in which the Target attempts to recover read errors. A value of zero disables all data recovery procedures. When AVERP bit (Mode Page 0 Byte 6 Bit 6) is zero, a value of nonzero in Read Retry Count enables all steps of DRP. When AVERP bit is one, the number in Read Retry Count sets the maximum retry count of DRP.
• Write Retry Count sets a limit on the amount of DRP passes in which the Target attempts to recover write errors. A value of zero disables all data recovery procedures.
• Recovery Time Limit indicates the period in 1 millisecond increments for the maximum recovery time of a single LBA.
The value must be from 40 ms to 65535 ms (65.5 seconds). The granularity of the timer is 50 ms. If an LBA is not able to be recovered within the limit, a Check Condition will be returned. The Recovery Time Limit will not be applied to Writes when WCE=1. A value of zero disables the timer.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
138
The following summarizes valid modes of operation. If an illegal mode is set, the MODE SELECT command will complete successfully but the action of the drive when an error occurs is undefined.
PER DTE DCR TB DESCRIPTION
0 0 0 0 Retries and Error Correction are attempted. Recovered or corrected data (if any) or both are transferred with no Check Condition status at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer length is exhausted. Transferred data includes blocks containing recovered errors.
hard err Data transfer stops when an unrecoverable error is encountered. The unrecoverable block is not transferred to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
0 0 0 1 Retries and Error Correction are attempted. Recovered or corrected data (if any) or both are transferred with no Check Condition status at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer length is exhausted. Transferred data includes blocks containing recovered errors.
hard err Data transfer stops when an unrecoverable error is encountered. The unrecoverable block is transferred to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
0 0 1 0 Retries are attempted but no error correction (ECC) is applied. Recovered data (if any) are transferred with no Check Condition status at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer length is exhausted. Transferred data includes blocks containing recovered errors.
hard err Data transfer stops when an unrecoverable error is encountered. The unrecoverable block is not transferred to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
0 0 1 1 Retries are attempted but no error correction (ECC) is applied. Recovered data (if any) are transferred with no Check Condition status at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer length is exhausted. Transferred data includes blocks containing recovered errors.
hard err Data transfer stops when an unrecoverable error is encountered. The unrecoverable block is transferred to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
0 1 0 0 Illegal Request-DTE must be zero when PER is zero.
0 1 0 1 Illegal Request-DTE must be zero when PER is zero.
0 1 1 0 Illegal Request-DTE must be zero when PER is zero.
0 1 1 1 Illegal Request-DTE must be zero when PER is zero.
1 0 0 0 The highest level error is reported at the end of transfer. Retries and error correction are attempted. Recovered or corrected data (if any) or both are transferred with Check Condition status and Recovered Error sense key set at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer length is exhausted. Transferred data includes blocks containing recovered errors.
The information byte in the sense data will contain the LBA of the last recovered error.
hard err Data transfer stops when an unrecoverable error is encountered. The unrecoverable block is not transferred to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
139
1 0 0 1 The highest level error is reported at the end of transfer. Retries and error correction are attempted. Recovered or corrected data (if any) or both are transferred with Check Condition status and Recovered Error sense key set at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer length is exhausted. Transferred data includes blocks containing recovered errors.
The information byte in the sense data will contain the LBA of the last recovered error.
hard err Data transfer stops when an unrecoverable error is encountered. The unrecoverable block is transferred to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
1 0 1 0 The highest level error is reported at the end of transfer. Retries are attempted but ECC is not applied.
Recovered or corrected data (if any) or both are transferred with Check Condition status and Recovered
Error sense key set at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer length is exhausted. Transferred data includes blocks containing recovered errors.
The information byte in the sense data will contain the LBA of the last recovered error.
hard err Data transfer stops when an unrecoverable error is encountered. The unrecoverable block is not transferred to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
1 0 1 1 The highest level error is reported at the end of transfer. Retries and error correction are attempted. Recovered or corrected data (if any) or both are transferred with Check Condition status and Recovered Error sense key set at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer stops on the first soft error detected. The information in the sense data shall contain the LBA of the block in error.
hard err Data transfer stops on the unrecoverable error. The unrecoverable error block is not returned to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
1 1 0 0 The highest level error is reported at the end of transfer. Retries and error correction are attempted.
Recovered or corrected data (if any) or both are transferred with Check Condition status and Recovered
Error sense key set at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer stops on the first soft error detected. The information in the sense data shall contain the LBA of the block in error.
hard err Data transfer stops on the unrecoverable error. The unrecoverable error block is not returned to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
1 1 0 1 The highest level error is reported at the end of transfer. Retries and error correction are attempted. Recovered or corrected data (if any) or both are transferred with Check Condition status and Recovered Error sense key set at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer stops on the first soft error detected. The information in the sense data shall contain the LBA of the block in error.
hard err Data transfer stops on the unrecoverable error. The unrecoverable error block is returned to the
Initiator. The drive then creates the Check Condition status with the appropriate sense key.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
140
1 1 1 0 The highest level error is reported at the end of transfer. Retries are attempted but ECC is not applied.
Recovered data are transferred with Check Condition status and Recovered Error sense key set at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer stops on the first soft error detected. The recovered error block is returned to the initiator. The information in the sense data shall contain the LBA of the block in error.
hard err Data transfer stops on the unrecoverable error. The unrecoverable error block is not returned to the Initiator. The drive then creates the Check Condition status with the appropriate sense key.
1 1 1 1 The highest level error is reported at the end of transfer. Retries are attempted but ECC in not applied.
Recovered or corrected data (if any) or both are transferred with Check Condition status and Recovered
Error sense key set at the end of the transfer.
no err The transfer length is exhausted.
soft err The transfer stops on the first soft error detected. The information in the sense data shall contain the LBA of the block in error.
hard err Data transfer stops on the unrecoverable error. The unrecoverable error block is returned to the
Initiator. The drive then creates the Check Condition status with the appropriate sense key.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
141
18.10.4 Mode Page 02 (Disconnect/Reconnect Parameters)
Table 97: Mode Page 02 (Disconnect/Reconnect Parameters)
Byte
2
3
0
1
4-5
Bit
7
PS
6
0
5 4 3 2
Page Code = 02h
Page Length = 0Eh
Read Buffer Full Ratio
Write Buffer Empty Ratio
(MSB)
Bus Inactivity Time Limit
1 0 Default
82h
0Eh
00h
00h
00h
(LSB)
Disconnect Time Limit = 0 00h
6-7
(MSB) Maximum Connect Time Limit 00h
8-9
(LSB)
(MSB) Maximum Burst Size 00h
10-11
(LSB)
12-13
14-15
Reserved = 0
First Burst Size = 0
00h
00h
The disconnect/reconnect page provides the Initiator with the means to tune the performance of the SAS Link.
The drive uses the disconnect/reconnect parameters to control when it attempts to regain control of the link during READ
(operation code 08h and 28h) and WRITE (0Ah, 2Ah and 2E).
• Read Buffer Full Ratio is the numerator of a fraction whose denominator is 256. The fraction indicates how full the drive data buffer should be before attempting to re-arbitrate for the link. If the ratio is set to 0h, the target will calculate and use an optimal ratio based on the negotiated transfer rate.
• Bus Inactivity Time Limit specifies the maximum time that the SAS target port is permitted to maintain a connection without transferring a frame to the initiator port, specified in 100 microsecond increments. When this value is exceeded, the target port will prepare to close the connection by transmitting DONE. A value of zero indicates that there is no bus inactivity time limit.
• Disconnect Time Limit is not supported.
• Write Buffer Empty Ratio is the numerator of a fraction whose denominator is 256. The fraction indicates how empty the drive data buffer should be before attempting to re-arbitrate for the link. If the ratio is set to 0h, the target will calculate and use an optimal ratio based on the negotiated transfer rate.
Both the Read Buffer Full Ratio and the Write Buffer Empty Ratio pertain to the current active notch. For each active notch as defined in page 0Ch there are separate Read Buffer Full Ratios and Write Buffer Empty Ratios. When the active notch is set to zero, the values are applied in mode page 0Ch across all notches.
• Maximum Connect Time Limit specifies the maximum amount of time the drive will keep a SAS connection open. The time is specified in 100 microsecond increments. The default value of zero, indicates no time limit. A maximum value of FFFFh, specifies a connection time limit of 6.55 seconds. When this time expires, the drive will prepare to close the connection.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
142
• Maximum Burst Size field indicates the maximum amount of data that the target port shall transfer during a single data transfer operation. This value is expressed in increments of 512 bytes. A value of zero specifies there is no limit on the amount of data transferred per data transfer operation.
• First Burst Size is not supported.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
143
18.10.5 Mode Page 03 (Format Device Parameters)
Table 98: Mode Page 03 (Format Device Parameters)
Byte
0
1
2-3
7
PS
6
0
5 4
Bit
3 2
Page Code = 03h
Page Length = 16h
(MSB) Tracks per Zone
1
(MSB) Alternate Sectors per Zone = 0
4-5
(MSB) Alternate Tracks per Zone = 0
6-7
(MSB) Alternate Tracks per Logical Unit = 0
8-9
10-11
(MSB) Sectors Per Track
12-13
(MSB) Data Bytes per Physical Sector
14-15
(MSB) Interleave = 0001h or 0000h
16-17
(MSB) Track Skew Factor
18-19
(MSB) Cylinder Skew Factor
20
21-23
SSEC HSEC RMB SURF
Reserved = 0
RESERVED = 0 xxh
(LSB) xxh
00h
(LSB)
01h xxh
(LSB) xxh xxh
(LSB) xxh
40h
00h
0 Default
03h
16h xxh
(LSB) xxh
00h
(LSB)
00h
00h
(LSB)
00h
00h
(LSB)
00h xxh
(LSB) xxh
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
144
The format device page contains parameters that specify the medium format. This page contains no changeable parameters.
• Tracks per Zone specifies the number of tracks within the zone. This field is a function of the active notch.
• Sectors per Track specifies the number of physical sectors within each track. This field is a function of the active notch.
• Data Bytes per Physical Sector specifies the number of user data bytes per physical sector. The value depends upon the current formatted Block Length.
• Interleave value of 1 or 0 is valid. However, the drive will ignore this.
• Track Skew Factor indicates the number of physical sectors between the last block of one track and the first block on the next sequential track of the same cylinder. This field is a function of the active notch.
• Cylinder Skew Factor indicates the number of physical sectors between the last block of one cylinder and the first block on the next sequential cylinder. This field is a function of the active notch.
• SSEC = Zero indicates that the drive does not support soft sector formatting.
• HSEC = One indicates that the drive supports hard sector formatting.
• RMB = Zero indicates that the media does not support removable Fixed Disk.
• SURF = Zero indicates that progressive addresses are assigned to all logical blocks in a cylinder prior to allocating addresses within the next cylinder.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
145
18.10.6 Mode Page 04 (Rigid Disk Drive Geometry Parameters)
Table 99: Mode Page 04 (Rigid Disk Drive Geometry Parameters)
Byte
0
1
2-4
5
6-8
9-11
12-13
14-16
17
18
19
20-21
7
PS
(MSB)
6
0
5 4
Bit
3 2
Page Code = 04h
Page Length = 16h
Landing Zone Cylinder = 0 (Not used)
1 0
(MSB)
Number of Cylinders
(LSB)
Number of heads
(MSB)
Starting Cylinder -
Write Precompensation = 0 (LSB)
(MSB)
Starting Cylinder -
Reduced Write Current = 0 LSB)
(MSB) Drive Step Rate = 0 (Not used)
(LSB)
Default
04h
16h xxh xxh xxh
00h
00h
00h
00h
00h
00h
00h
00h
RPL = 0
(LSB)
RESERVED = 0
Rotational Offset = 0 (Not used)
RESERVED = 0
(MSB) Medium Rotation Rate in RPM
Reserved = 0
(LSB)
00h
00h
00h
27h
24h
00h 22-23
The rigid disk drive geometric page specifies various parameters for the drive.
• RPL = 0, Indicates that the drive does not support spindle synchronization.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
146
18.10.7 Mode Page 07 (Verify Error Recovery Parameters)
Table 100: Mode Page 07 (Verify Error Recovery Parameters)
Byte
0
1
2
3
4
5 - 9
7
PS
6
0
5
Bit
4 3 2
Page Code = 07h
Page Length = 0Ah
EER=0 PER Reserved = 0
Verify Retry Count
Obsolete =0
Reserved = 0
(MSB) Verify Recovery Time Limit
1
DTE
0
DCR
01h
00h
00h
00h
Default
87h
0Ah
00h
10-11
(LSB)
The Verify recovery parameters are used by the Target when recovering from and reporting errors associated with the verification of the Initiator's Data for the following commands:
• VERIFY
• WRITE AND VERIFY - the verify portion of the command only.
• EER. This bit is 0 since the Target does not support early recovery.
• PER. See below for description of bit values.
• DTE. (Data Terminate on Error) bit set to one specifies that data transfer will be halted when the first recovered error is encountered. PER must be set to one when DTE is set to one. DTE set to zero will cause data transfer to continue when recovered errors are encountered.
• DCR. See below for description of bit values.
The PER, DTE, and DCR bit settings in mode page 7 override those of mode page 1 during VERIFY and the Verify portion of
WRITE AND VERIFY. The following combinations of PER and DCR are valid:
PER DCR DESCRIPTION
0 0
Soft errors are not reported. ECC is applied to recover the data.
1 0
0 1
Soft errors are reported. ECC is applied to recover the data.
Soft errors are not reported. ECC is not used to recover the data.
1 1
Soft errors are reported. ECC is not used to recover the data.
• Verify Retry Count sets a limit on the amount of verify recovery procedure (VRP) passes the Target attempts when recovering verify errors. The Verify Retry Count of one causes the Target to attempt up to one VRP pass per command when a medium error occurs during a verify operation. Only values of 0h and 01h are valid. The value of 0h disables all recovery.
• Verify Recovery Time Limit indicates the period in 1 millisecond increments for the maximum recovery time of a single LBA during the verify operation. The value must be from 40 ms to 65535 ms (65.5 seconds). The granularity of the timer is 50 ms. If an LBA is not able to be recovered within the limit, a Check Condition will be returned.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
147
18.10.8 Mode Page 08 (Caching Parameters)
Table 101: Page 08 (Caching Parameters)
Byte
0
1
2
3
4-5
6-7
8-9
10-11
12
13
14-15
16
17-19
Bit
7
PS
6
0
5 4 3 2
Page Code = 08h
1 0
IC ABPF CAP
Page Length = 12h
DISC
Demand Read Retention Priority
SIZE WCE MF
Write Retention Priority
RCD
(MSB) Disable Pre-fetch Transfer Length
(LSB)
(MSB) Minimum Pre-fetch
(LSB)
(MSB) Maximum Pre-fetch
(LSB)
Maximum Pre-fetch Ceiling
FSW LBCSS DRA Reserved = 0
Number of Cache Segments
(MSB) Cache Segment Size
(LSB)
Reserved = 0
(MSB)
Non Cache Segment Size
(LSB)
Default
88h
12h
04h
00h
FFh
00h
FFh
FFh
00h
08h
00h
00h
00h
The caching parameters page defines parameters that affect the use of the cache.
• IC (Initiator Control) bit of one specifies that the drive will honor the following parameters to control cache segmentation and pre-fetch: SIZE, FSW, LBCSS, Number of Cache Segments, Cache Segment Size. The drive will never prefetch less data than specified by ABPF, MF, Demand Read Retention Priority, Write Retention Priority, Disable Prefetch Transfer Length, Minimum Pre-fetch, Maximum Pre-fetch, and Maximum Pre-fetch Ceiling, but may pre-fetch more based on internal cache algorithms. When the IC bit is set to zero, all the parameters listed above are ignored, and an internal caching algorithm is used.
• ABPF (Abort Pre-fetch) bit of one, with DRA set to zero, causes the drive to abort the pre-fetch upon receipt of a new command. ABPF set to one takes precedence over Minimum Pre-fetch. When ABPF is zero, with DRA set to zero, the termination of any active pre-fetch is dependant upon the other parameters in this page.
• CAP (Caching Analysis Permitted) is not supported and is ignored. The IC bit can be used to enable or disable adaptive caching.
• DISC (Discontinuity) is not supported and is ignored. Pre-fetch operations will continue across cylinders, within the limits of other caching parameters on this page.
• SIZE (Size Enable) bit when set to one indicates that the Cache Segment Size is to be used to control caching segmentation. When SIZE is set to zero, the Initiator requests that the Number of Cache Segments is to be used to control caching segmentation.
• WCE (Write Cache Enable) bit when set at zero indicates that the drive must issue Good status for WRITE (6) or
WRITE (10) command only after successfully writing the data to the media. When the WCE bit is set to one, the drive may issue Good status for a WRITE (6) or WRITE (10) command after successfully receiving the data but before writing it to the media. When WCE = 1, the drive operates as if AWRE = 1.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
148
Note: When WCE = 1, a SYNCHRONIZE CACHE command must be done to ensure data are written to the media before powering down the Target.
• MF (Multiplication Factor) bit determines how the Maximum and Minimum Pre-fetch parameters are interpreted. If this bit is set to zero, the parameters are used as is. If the bit is set to one, the parameters are multiplied by the number of blocks requested in the Read Command.
• RCD (Read Cache Disable) bit set at zero indicates that the drive may return some or all of the data requested by a
READ (6) or READ (10) command by accessing the data buffer, not the media. An RCD bit set at one indicates that the Target does not return any of the data requested by a READ (6) or READ (10) command by accessing the data buffer. All of the data requested is read from the media instead.
• Demand Read Retention Priority is not supported.
• Write Retention Priority is not supported.
• Disable Pre-fetch Transfer Length is used to prevent read-ahead after Read commands that are longer than the specified number of blocks. If this parameter is set to zero, a read-ahead is not performed.
• Minimum Pre-fetch specifies the minimum number of LBAs that the drive should
• after each READ command. A value of zero indicates that read ahead should be terminated immediately after a new command arrives, except when the new command is on the current head and track.
• Maximum Pre-fetch specifies the maximum number of LBAs to read ahead after a Read command.
• Maximum Pre-fetch Ceiling specifies the maximum number of blocks the drive should attempt to read ahead. This field is ignored.
• FSW (Force Sequential Write) is not supported and is ignored. All logical blocks will be written in sequential order.
• LBCSS (Logical Block Cache Segment Size) bit when set to one indicates that the Cache Segment Size field units shall be interpreted as logical blocks. When it is set to zero, the Cache Segment Size field units shall be interpreted as bytes.
• DRA (Disable Read Ahead) bit when set to one requests that the Target not read into the buffer any logical block beyond the addressed logical block(s). When it is set at zero, the Target may continue to read logical blocks into the buffer beyond the addressed logical block(s).
• Number of Cache Segments field is used to select the number of data buffer cache segments. This parameter is valid only when the SIZE bit is set at zero. It is ignored when SIZE is set at one.
• Cache Segment Size field indicates the requested segment size in Bytes or Blocks, depending upon the value of the
LBCSS bit. The Cache Segment Size field is valid only when the SIZE bit is one. It is ignored when SIZE is set at zero.
• Non Cache Segment Size is not supported and is ignored.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
149
18.10.9 Mode Page 0A (Control Mode Page Parameters)
Table 102: Page 0A (Control Mode Page Parameters)
Byte
0
1
2
3
4
5
6-7
8-9
10-11
7
PS
6
0
TST=0
RSVD=0 RAC=0
5 4
Page Code = 0Ah
Page Length = 0Ah
TMFonly
=0
3 2 1 0
DPICZ D_Sense=0 GLTSD=0 RLEC=0
8Ah
0Ah
00h
Queue Algorithm Modifier
UA_INTLCK_CTRL=0
Bit
Rsvd=0
SWP=0
ATO TAS=0 ATMPE RWWP Rsvd=0
Obsolete=0
QErr
Obsolete
DQue
Default
00h
00h
00h
00h
(MSB) Busy Timeout Period 00h
(LSB)
(MSB) Extended Self-test Routine
Completion Time (LSB)
XXh
Following are parameter options for Page 0A.
•DPICZ (Disable Protection Information Check if protect field is Zero) bit set to zero indicates that checking of protection information bytes is enabled. A DPICZ bit set to one indicates that checking of protection information is disabled on commands with: a) the RDPROTECT field (see SBC-3) set to zero; b) the VRPROTECT field (see SBC-3) set to zero; or c) the ORPROTECT field (see SBC-3) set to zero.
• Queue algorithm modifier specifies restrictions on the algorithm used for reordering commands that are tagged with the
SIMPLE message.
0h: Restricted reordering. The Target shall reorder the actual execution sequence of the queued commands from each
Initiator such that data integrity is maintained for that Initiator.
1h: Unrestricted reordering allowed. The Target may reorder the actual execution sequence of the queued commands in any manner it selects. Any data integrity exposures related to command sequence order are explicitly handled by the Initiator through the selection of appropriate commands and queue tag messages.
2h-7h: RESERVED.
8: Command reordering is disabled
9-Fh: RESERVED
• QErr (Queue Error Management) The queue error management (Q
ERR
) field specifies how the device server shall handle blocked tasks when another task receives a Check Condition status.
QERR value
Description
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
150
00b
01b
Specifies that all tasks from all Initiators are blocked from execution when a Contintent
Allegiance (CA condition) is pending. Those blocked tasks are allowed to resume execution in a normal fashion after the CA condition is cleared.
Specifies that all tasks from all Initiators are aborted when the Target returns Check Con-
dition status. A unit attention condition will be generated for each Initiator that had commands in the queue except for the Initiator that received the Check Condition status. The sense key will be set to Unit Attention and the additional sense code will be set to Commands
Cleared by Another Initiator.
Reserved 10b
11b
Blocked tasks in the task set belonging to the Initiator to which a Check Condition status is sent shall be aborted when the status is sent.
• DQue (Disable Queuing) bit set at zero specifies that tagged queuing shall be enabled if the Target supports tagged queuing. A DQue bit set at one specifies that tagged queuing shall be disabled. Command queuing is always enabled on the drive, therefore this bit is ignored.
• ATO (Application Tag Owner) bit set to one specifies that the contents of the Logical Block Application Tag field in the protection information, if any, shall not be modified by the drive. An ATO bit set to zero specifies that the contents of the Logical Block Application Tag field in the protection information, if any, may be modified by the drive. If the
ATO bit is set to zero, the drive will ignore the contents of the Logical Block Application Tag field in the protection information.
• ATMPE (Application Tag Mode Page Enabled) bit set to zero specifies that the Application Tag mode page (see SBC-3) is disabled and the contents of logical block application tags are not defined by this standard. An ATMPE bit set to one specifies that the Application Tag mode page is enabled.
If: a. the ATMPE is set to one; b. the ATO bit is set to one; c. the value in the DPICZ bit allows protection information checking for the specified command; and d. the APP_CHK bit is set to one in the Extended Inquiry VPD page; then: knowledge of the value of the Application Tag shall come from the values in the Application Tag mode page as specified by the DPICZ bit.
• RWWP (Reject Write Without Protection) bit set to zero specifies that write commands without protection information
(see SBC-3) shall be processed. A RWWP bit set to one specifies that write commands without protection information received by a device server that has been formatted with protection information shall be terminated with CHECK
CONDITION status with the sense key set to ILLEGAL REQUEST and the additional sense code set to INVALID
FIELD IN CDB
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
151
The ATMPE bit enables the usage of another Mode whose definition from SBC 3r26 is as follows:
Table 103: App;ication Tag mode page:
Byte
0
1
2-3
4-15
16-39
...
(n-24)-n
7
PS
6
SPF=1
5
Bit
4 3 2
Page Code = 0Ah
Subpage Code = 0Ah
Page Length = n-4
Reserved = 0
Application Tag descriptor [first]
...
Application Tag descriptor [last]
1 0
Table 104: App;ication Tag descriptor format
Byte
0
1-5
6-7
8-15
16-23
7
Last
6 5 4
Bit
3
Reserved = 0
Reserved = 0
Logical Block Application Tag
Logical Block Address
Logical Block Count
2 1 0
•A LAST bit set to one specifies that this Application Tag descriptor is the last valid Application Tag descriptor in the Application Tag mode page. A LAST bit set to zero specifies that the Application Tag descriptor is not the last valid Application Tag descriptor in the Application Tag mode page.
•The LOGICAL BLOCK APPLICATION TAG field specifies the value to be compared with the LOGICAL BLOCK
APPLICATION TAG field associated with data read or written to the LBA.
•The LOGICAL BLOCK ADDRESS field contains the starting LBA for this Application Tag descriptor. The LOGICAL
BLOCK ADDRESS field in the first Application Tag descriptor shall be set to 0000_0000_0000_0000h. For subsequent
Application Tag descriptors, the contents of the LOGICAL BLOCK ADDRESS field shall contain the sum of the values in: a) the LOGICAL BLOCK ADDRESS field in the previous Application Tag descriptor; and b) the LOGICAL BLOCK COUNT field in the previous Application Tag descriptor.
The sum of the LOGICAL BLOCK ADDRESS field in the Application Tag descriptor with the LAST bit set to one and the LOGICAL BLOCK COUNT field in the Application Tag descriptor with the LAST bit set to one shall equal the
RETURNED LOGICAL BLOCK ADDRESS field in the READ CAPACITY (16) parameter data (see 5.16.2).
If an invalid combination of the LAST bit, LOGICAL BLOCK APPLICATION TAG field, and LOGICAL BLOCK
ADDRESS field are sent by the application client, then the device server shall terminate the MODE SELECT command (see
SPC-4) with CHECK CONDITION status with the sense key set to ILLEGAL REQUEST and the additional sense code set to INVALID FIELD IN PARAMETER LIST.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
152
•The LOGICAL BLOCK COUNT field specifies the number of logical blocks to which this Application Tag descriptor applies.
A LOGICAL BLOCK COUNT field set to 0000_0000_0000_0000h specifies that this Application Tag descriptor shall be ignored.
• Busy Timeout Period is not supported and is ignored.
• Extended Self-test Routine Completion Time is an advisory parameter that an Initiator may use to determine the time in seconds that the Target requires to complete self-test routine when the Target is not interrupted by an Initiator and no errors occur during execution of the self-test routine.
18.10.9.1 Control Extension Subpage
Table 105: Control Extension Subpage
Byte
2-3
4
0
1
5
6-31
7
PS
6
SPF=1
5
Reserved = 0
Reserved = 0
Bit
4 3 2
Page Code = 0Ah
Subpage Code = 1
Page Length = 001Ch
1
TCMOS SCSIP
Initial Priority
Reserved = 0
Default
0
4Ah
01h
001Ch
IALUAE 00h
00h
00h
No fields in the Control Extension subpage are currently changeable. The page is supported for compatibility only.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
153
18.10.10 Mode Page 0C (Notch Parameters)
Table 106:
Page 0C (Notch Parameters)
Byte
0
1
2
3
4-5
6-7
8-11
12-15
16-23
7
PS
ND=1
6
0
LPN=0
5 4
Bit
3 2
Page Code = 0Ch
Page Length = 16h
Reserved = 0
Reserved = 0
(MSB) Maximum Number of Notches
(MSB) Active Notch
(MSB)
(MSB)
Starting Boundary
Ending Boundary
(MSB)
Pages Notched
1 0 Default
8Ch
16h
80h
00h
XXh
(LSB)
XXh
00h
(LSB)
00h
XXh
(LSB)
XXh
XXh
(LSB)
XXh
(LSB)
0000h
0000h
0000h
100Ch
The notch page contains parameters for direct-access devices that implement a variable number of blocks per cylinder. Each section of the logical unit with a different number of blocks per cylinder is referred as a notch. The only field that is changeable is the Active Notch field.
• ND = One meaning that this device is a notched drive.
• LPN = Zero meaning that the notches are based upon physical parameters of the drive (cylinder #), not logical parameters.
• Maximum Number of Notches is the number of notches the drive can support. This value is drive model dependent.
• Active Notch indicates to which notch subsequent MODE SELECT/SENSE command parameters pertain. A value of 0 is used for parameter values which apply to all notches. Values from 1 to the maximum value depending on the model specify the notch number, where notch 1 is the outermost notch. Following mode parameters are based on the current active notch:
•Mode Page 2
- Read Buffer Full Ratio
- Write Buffer Empty Ratio
•Mode Page 3
- Alternate Sector per Zone
- Alternate Track per Zone
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
154
- Alternate Track per Logical Unit
- Sector per Track
- Track Skew Factor
- Cylinder Skew Factor
• Starting Boundary contains the first physical location of the active notch. The first three bytes are the cylinder number and the last byte is the head. The value sent in this field is ignored.
• Ending Boundary contains the last physical location of the active notch. The first three bytes are the cylinder number and the last byte is the head. The value sent in this field is ignored.
• Pages Notched is a bit map of the mode page codes that indicates which pages contain parameters that may be different for different notches. The most significant bit of this field corresponds to page code 3Fh and the least significant bit corresponds to page code 00h. If a bit is one, then the corresponding mode page contains parameters that may be different for different notches. If a bit is zero, then the corresponding mode page contains parameters that are constant for all notches.
18.10.11 Mode Page 18h
(SAS only)
Table 107: Page 18h (Protocol-Specific Logical Unit mode page)
Byte
2
3
0
1
4-7
7
PS=0 SPF=0
Reserved
6 5 4
Bit
Reserved
3 2
Page Code = 18h
Page Length = 6h
Transport Layer Retries=0
Reserved = 0
1 0
Protocol Identifier = 6h
Default
18h
6h
6h
00h
00h
This page defined protocol-specific parameters that affect the logical unit.
• Transport Layer Retries is unchangeable and set to zero. The drive does not support Transport Layer Retries as defined in
SAS 1.1.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
155
18.10.12 Mode Page 19h (Port Control Parameters)
The Protocol-Specific Port mode page contains parameters that affect SSP target port operation. There is one copy of the mode page shared by all SSP initiator ports.
18.10.12.1 Short Format of Port Control Page
Table 108: Short (Port Control Parameters) Short Format
Byte
0
1
2
3
4-5|
6-7
8-9|
10-15
7
PS
6
SPF=0
5
Reserved
Continue
AWT = 0
Broadcast
Asynchronous
Event
4
Bit
3
Page Code = 19h
2
Page Length = 0Eh
Ready LED
Meaning
1
Protocol Identifier = 6h
Reserved
(MSB)
I_T NEXUS LOSS TIMER
0
(LSB)
(MSB)
INITIATOR RESPONSE TIMEOUT
Default
99h
0Eh
06h
00h
07h-D0h
07h-D0h
(LSB)
(MSB)
0000h
REJECT TO OPEN LIMIT = 0000h
(LSB)
Reserved
00h
• The Parameters Savable (PS) bit is set to one, indicating the parameters are saveable.
• The SPF field shall be set to zero for access to the short format mode page.
• Protocol Identifier has a value of 6h indicating this is a SAS SSP specific mode page.
• A CONTINUE AWT bit set to one specifies that the SAS port shall not stop the Arbitration Wait Time timer and set the Arbitration Wait Time timer to zero when the SAS port receives an OPEN_REJECT (RETRY). A CONTINUE
AWT bit set to zero specifies that the SAS port shall stop the Arbitration Wait Time timer and set the Arbitration
Wait Time timer to zero when it receives an OPEN_REJECT (RETRY).
• A BROADCAST ASYNCHRONOUS EVENT bit set to one specifies that the device server shall enable origination of Broadcast (Asynchronous Event). A BROADCAST ASYNCHRONOUS EVENT bit set to zero specifies that the device server shall disable origination of Broadcast (Asynchronous Event).
• Ready LED Meaning specifies the READY LED signal behavior. In general, when the bit is 0, and the drive is in a ready state, the LED is usually on, but flashes on and off when commands are processed. When the bit is 1, the LED is usually off, but flashes on and off when commands are processed. For additional implementation specifics, see the
SAS 2 draft standard.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
156
• The I_T NEXUS LOSS TIME field contains the time (in milliseconds) that our SSP target port shall retry connection requests to an SSP initiator port that are rejected with responses indicating the SSP initiator port may no longer be present before recognizing an I_T nexus loss. A value of 0 indicates a vendor specific amount of time and defaults to a 2 second time period. A value of FFFFh indicates an unlimited period. The default value of 7D0h, specifies a 2 second time period.
• INITIATOR RESPONSE TIMEOUT field contains the time in milliseconds that the SSP target port shall wait for the receipt of a Data frame after sending the XFER_RDY frame requesting data. When the INITIATOR RESPONSE
TIMEOUT expires, the associated will be aborted. An INITIATOR RESPONSE TIMEOUT field value of zero indicates that the SSP target port shall disable the timer. This value is enforced by the transport layer. The default value of 7D0h, specifies a 2 second time period.
• The REJECT TO OPEN LIMIT field contains the minimum time in 10 µs increments that the target port shall wait to establish a connection request with an initiator port on an I_T nexus after receiving an OPEN_REJECT (RETRY),
OPEN_REJECT (CONTINUE 0), or OPEN_REJECT (CONTINUE 1). This value may be rounded as defined in
SPC-4. A REJECT TO OPEN LIMIT field set to 0000h indicates that the minimum time is vendor specific. This minimum time is enforced by the transport layer.
18.10.12.2 Long Format of Port Control Page
Table 109: Long Format of Port Control Page
Byte
0
1
7
PS
Bit
6
SPF=1
5 4 3 2
Page Code = 19h
Subpage Code
Page Length (n-3)
2-3
4
5
6 n
RSVD
RSVD
Protocol Specific Mode Parameters
1
Protocol Identifier = 6h
0
Default
D9h
...
0000h
00h
06h
...
...
The drive maintains an independent set of port control mode page parameters for each SAS initiator port.
• T
he SPF field shall be set to one for access to the long format mode page.
• Subpage Code indicates which subpage is being accessed. The drive support the following subpage codes. If the
Subpage Code is not supported, the drive returns a CHECK CONDITION status, the sense key is set to ILLEGAL
REQUEST and the additional sense code set to ILLEGAL FIELD IN PARAMETER LIST.
- 01h: PHY Control and Discover Subpage
- 02h: Shared Port Control subpage
- FFh: All supported subpages.
• Page Length specifies the length in bytes of the subpage parameters after the Page Length.
• Protocol Identifier has a value of 6h indicating this is a SAS SSP specific mode page.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
157
18.10.12.3 PHY Control and Discover (Subpage 1)
Table 110: PHY Control and Discover (Subpage 1)
Byte
0
7
PS
6
SPF=1
5 4
Bit
3 2
Page Code = 19h
1 Subpage Code = 1
2-3
4
5
6
7
8-55
56-103
1
Page Length = 0064h
Reserved
Reserved Protocol Identifier = 6h
Generation Code
Number of PHYS = 2
SAS PHY Mode Descriptor 0
SAS PHY Mode Descriptor 1
0
Default
D9h
01h
0064h
00h
06h
00h
02h
...
...
The Phy Control And Discover subpage contains phy-specific parameters. MODE SENSE command returns the current settings for the initiator.
•
Protocol Identifier has a value of 6h indicating this is a SAS SSP specific mode page.
•
The GENERATION CODE field is a one-byte counter that shall be incremented by one by the device server every time the values in this mode page or the SAS-2 Phy mode page (see 10.2.7.7) field values are changed. A GENERATION
CODE field set to 00h indicates the generation code is unknown. The device server shall wrap this field to 01h as the next increment after reaching its maximum value (i.e., FFh). The GENERATION CODE field is also contained in the Protocol-Specific Port log page and may be used to correlate phy settings across mode page and log page accesses.
• Number of PHYS field is set to 2, to represent the dual ported drive (one PHY per port)
•
fields, one per port.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
158
Table 111: SAS PHY Mode Descriptor
Byte
0
1
7
Bit
6 5 4
Reserved
PHY IDENTIFIER
3
(MSB)
2-3
4
5
6
Reserved
2 1 0
ATTCHED DEVICE TYPE
Reason
Reserved
Reserved
(LSB)
ATTCHED REASON
Negotiated Logical Link Rate
ATTACHED
SSP
INITIATOR
PORT
ATTACHED
STP
INITIATOR
PORT
ATTACHED
SMP
INITIATOR
PORT
Reserved
7 Reserved
ATTACHED
SSP
TARGET
PORT
ATTACHED
STP
TARGET
PORT
ATTACHED
STP
TARGET
PORT
Reserved
8-15 (MSB) SAS ADDRESS (LSB)
16-23 (MSB) ATTACHED SAS ADDRESS (LSB)
24 ATTACHED PHY IDENTIFIER
25-31 (MSB) Reserved (LSB)
32
33
PROGRAMMED MINIMUM PHYSICAL LINK RATE HARDWARE MINIMUM PHYSICAL LINK RATE
PROGRAMMED MAXIMUM PHYSICAL LINK RATE HARDWARE MAXIMUM PHYSICAL LINK RATE
34-41 (MSB) Reserved (LSB)
42-43 (MSB) Vendor specific (LSB)
44-47 (MSB) Reserved (LSB)
•
PHY Identifier:
Unique PHY Identifier for the PHY associated with the other data in this SAS PHY Mode Descriptor
Page.
• Attached Reason: indicates the value of the REASON field in the last received IDENTIFY address frame associated
with the PHY Identifier list in this SAS PHY Mode Descriptor. See Table 26 on page 54.
• Attached Device Type: indicated the value of the DEVICE TYPE field in the last received IDENTIFY address frame
associated with the PHY Identifier listed in this SAS PHY Mode Descriptor.See Table 26 on page 54.
•
Attached SAS Address:
indicates the value of the attached SAS address in the last received IDENTIFY address frame
associated with the PHY Identifier list in this SAS PHY Mode Descriptor. See Table 26 on page 54
.
• Attached PHY Identifier: indicated the value of the attached PHY Identifier field in the last received IDENTIFY address
.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
159
•
SAS Address:
Unique Port Identifier for the Port associated with the PHY Identifier listed in this SAS PHY Mode
Descriptor
• Hardware Minimum Physical Link Rate: Minimum link rate supported by the Port associated with the PHY Identifier listed in this SAS PHY Mode Descriptor.
• Hardware Maximum Physical Link Rate: Maximum link rate supported by the Port associated with the PHY Identifier listed in this SAS PHY Mode Descriptor.
• Programmed Minimum Physical Link Rate: Current minimum link rate used during speed negotiation by the Port associated with the PHY Identifier listed in this SAS PHY Mode Descriptor.
• Programmed Maximum Physical Link Rate: Current maximum link rate used during speed negotiation by the Port associated with the PHY Identifier listed in this SAS PHY Mode Descriptor.
18.10.12.4 Shared Port Control (Subpage 2)
Table 112: Shared Port Control (Subpage 2)
Byte
0
1
2 - 3
4
5
6 - 7
8 - 15
7
PS
Bit
6
SPF=1
5 4 3 2
Page Code = 19h
Subpage Code = 2
Page Length = 000Ch
Reserved = 0
1
Reserved = 0 Protocol Identifier = 6
Power Loss Timeout
Reserved = 0
0
Default
D9h
02h
000Ch
00h
06h
0000h
00h
• Power Loss Timeout is the maximum time, in one millisecond increments, that the drive port will respond to connection requests with OPEN_REJECT(RETRY) after receiving NOTIFY(POWER LOSS EXPECTED). The Power Loss Timeout will be restarted after each NOTIFY(POWER LOSS EXPECTED) that is received. A POWER LOSS TIMEOUT field set to 0000h specifies that the maximum time is vendor-specific and automatically defaults to 2 seconds.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
160
18.10.12.5 SAS-2 Phy Mode Page (Subpage 3)
Table 113: Subpage 3
Byte
5
6
7
8-27
28-47
2-3
4
0
1
7
PS
6
SPF=1
5
Bit
4 3 2
Page Code 19h
Subpage Code = 3
Page Length = 002Ch
Reserved = 00h
1
Reserved = 0 Protocol Identifier = 6
Generation Code
Number of Phys = 02h
SAS-2 PHY Mode Descriptor 0
SAS-2 PHY Mode Descriptor 1
0 Default
D9h
03h
002Ch
00h
06h
00h
02h
--
--
• The GENERATION CODE field is a one-byte counter that shall be incremented by one by the device server every time the values in this mode page or the SAS-2 Phy mode page (see 10.2.7.7) field values are changed. A GENERATION
CODE field set to 00h indicates the generation code is unknown. The device server shall wrap this field to 01h as the next increment after reaching its maximum value (i.e., FFh). The GENERATION CODE field is also contained in the Protocol-Specific Port log page and may be used to correlate phy settings across mode page and log page accesses.
Table 114: PHY Mode Descriptor (0 and 1)
Byte
0
1
2-3
4-7
8-11
12-15
16-17
7 6 5 4
Bit
3
Reserved
2
PHY Identifier
Descriptor Length (0010h)
Programmed PHY Capabilities
Current PHY Capabilities
Attached PHY Capabilities
Reserved
1 0
18
19
SSC
Reserved Hardware
Muxing Supported=’0’
•
Phy Capabilities are defined under the “SAS Speed Negotiation” on page 52
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
161
18.10.13 Mode Page 1A (Power Control)
4-7
8-11
12-15
16-19
2
3
0
1
20-23
24-39
Table 115: Page 1A (Power Control)
Byte
7
PS
6
0
5 4
Bit
3 2
Page Code = 1Ah
1 0 Default
9Ah
Reserved = 0
Page Length = 26h
Reserved = 00h Standby_Y
26h
00h
Idle_C Idle_B Idle_A Standby_Z 00h
Idle_A Condition Timer
Standby_Z Condition Timer
Idle_B Condition Timer
Idle_C Condition Timer
00h
00h
00h
00h
Standby_Y Condition Timer 00h
Reserved 00h
• If the STANDBY_Y bit is set to one, then the standby_y condition timer is enabled. If the STANDBY_Y bit is set to zero, then the device shall ignore the standby_y condition timer.
• If the IDLE_C bit is set to one, then the idle_c condition timer is enabled. If the IDLE_C bit is set to zero, then the device shall ignore the idle_c condition timer.
• If the IDLE_B bit is set to one, then the idle_b condition timer is enabled. If the IDLE_B bit is set to zero, then the device shall ignore the idle_b condition timer.
• If the IDLE_A bit is set to one, then the idle_a condition timer is enabled. If the IDLE_A bit is set to zero, then the device shall ignore the idle_c condition timer.
• If the STANDBY_Z bit is set to one, then the standby_z condition timer is enabled. If the STANDBY_Z bit is set to zero, then the device shall ignore the standby_z condition timer.
• The IDLE_A Condition Timer field specifies the initial value, in 100 millisecond increments, for the idle_a power condition timer. The minimum allowable inactivity time for idle_a is 1 second. Any value less than this is accepted, but will automatically default to 1 second.
• The STANDBY_Z Condition Timer field specifies the initial value, in 100 millisecond increments, for the standby_z power condition timer. The minimum allowable inactivity time for standby_z is 2 minutes. Any value less than this is accepted, but will automatically default to two minutes. In addition, a limit of 60 timer initiated head unloads per 24 hour period is enforced.
•The IDLE_B Condition Timer field specifies the initial value, in 100 millisecond increments, for the idle_b power condition timer. The minimum allowable inactivity time for idle_b is 2 minutes. Any value less than this is accepted, but will automatically default to two minutes. In addition, a limit 60 timer initiated head unloads per 24 hour period is enforced.
• The IDLE_C Condition Timer field specifies the initial value, in 100 millisecond increments, for the idle_c power condition timer. The minimum allowable inactivity time for idle_c is 2 minutes. Any value less than this is accepted, but will automatically default to two minutes. In addition, a limit of 60 timer initiated head unloads per 24 hour period is enforced.
•The STANDBY_Y Condition Timer field specifies the initial value, in 100 millisecond increments, for the standby_y power condition timer. The minimum allowable inactivity time for standby_y is 2 minutes. Any value less than this is accepted, but will automatically default to two minutes. In addition, a limit 60 timer initiated head unloads per 24 hour period is enforced.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
162
18.10.14 Mode Page 1C (Informational Exceptions Control)
Table 116: Page 1C (Informational Exceptions Control)
Byte
0
1
2
7
PS
PERF
6
0
RSVD
5
EBF
BIT
4 3 2
Page Code = 1Ch
Page Length = 0Ah
1 0
EWASC DEXCPT TEST
EBACK-
ERR
LOGERR
Method of Reporting
Default
9Ch
0Ah
10h
3
4-7
(MSB)
(MSB)
Reserved = 0
Interval Timer
(LSB)
03h
00h
00h
00h
00h
00h
8-11 Report Count
(LSB)
•PERF (Performance) bit is not supported and is ignored. Informational Exception operations will not cause performance delays.
• EBF (Enable Background Function) bit is not supported and is ignored. Background functions are always enabled.
•EWASC (Enable Warning ASC) bit of zero indicates that Temperature Warnings will not be reported. An EWASC bit of one allows Temperature Warnings to be reported, if the temperature inside the disk enclosure exceeds the threshold set in Mode Page 00h. The Method of Reporting field controls the reporting method. EWASC is independent of
DEXCPT.
• DEXCPT (Disable Exception Control) bit of zero indicates information exception operations are enabled. The reporting of information exception conditions when the DEXCPT bit is set to zero is determined from the Method of Reporting field. A DEXCPT bit of one indicates the Target disabled all information exception operations.
• TEST bit of one instructs the drive to generate false drive notifications at the next interval time, (as determined by the
INTERVAL TIMER field), if the DEXCPT is zero. The Method of Reporting and Report Count would apply. The false drive failure is reported as sense qualifier 5DFFh. The TEST bit of zero instructs the drive to stop generating any false drive notifications.
• Enable Background Error (EBACKERR) bit of zero disables reporting of background self-test errors and background scan errors via Information Exceptions Control. An EBACKERR bit of one enables reporting of these background errors as Information Exception Warnings. The method of reporting these errors is determined from the MRIE field.
• LOGERR (Log Errors) is not used and ignored internally by the Target.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
163
• Method of Reporting Informational Exceptions indicates the methods used by the Target to report informational exception conditions.
Code Description
0h
1h
No reporting of informational exception condition: This method instructs the Target to not report informational exception condition.
Asynchronous event reporting: Not supported.
2h Generate
This method instructs the Target to report informational exception conditions by returning a Check Condition status on any command. The sense key is set to Unit Attention and the additional sense code indicates the cause of the informational exception condition. The command that has the
Check Condition is not executed before the informational exception condition is reported.
3h
Conditionally generate recovered error: This method instructs the Target to report informational exception conditions, dependent on the value of the PER bit of the error recovery parameters mode page, by returning a Check Condition status on any command. The sense key is set to Recovered Error and the additional sense code indicates the cause of the informational exception condition. The command that has the
Check Condition completes without error before any informational exception condition is reported.
4h
5h
Unconditionally generate recovered error: This method instructs the Target to report informational exception conditions, regardless of the value of the PER bit of the error recovery parameters mode page, by returning a Check Condition status on any command. The sense key is set to Recovered Error and the additional sense code indicates the cause of the informational exception condition. The command that has the
Check Condition completes without error before any informational exception condition is reported.
Generate no sense: This method instructs the Target to report informational exception conditions by returning a Check Condition status on any command. The sense key is set to No Sense and the additional sense code indicates the cause of the informational exception condition. The command that has the Check Condi-
tion completes without error before any informational exception condition is reported.
6h
Only report informational exception condition on request: This method instructs the Target to preserve the informational exception(s) information. To find out about information exception conditions the Application Client polls the Target by issuing an unsolicited Request Sense command. The sense key is set to No
Sense and the additional sense code indicates the cause of the informational exception condition.
7h-Fh Reserved.
• Interval Timer field indicates the period in 100 millisecond increments for reporting that an informational exception condition has occurred. The target shall not report informational exception conditions more frequently than the time specified by the Interval Timer field and as soon as possible after the time interval has elapsed. After the informational exception condition has been reported the interval timer is restarted. A value of zero or 0xFFFFFFFF in the
Interval Timer field indicates that the target only reports the informational exception condition one time and will override the value set in the Report Count field.
• Report Count field indicates the number of times the Target reports an informational exception condition. The Report
Count of ZERO indicates no limits on the number of times the Target reports an informational exception condition.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
164
5
6-7
8-9
10-11
2-3
4
0
1
12-13
14-15
18.10.14.1 Background Control (Subpage 01h)
Table 117: Background Control (Subpage 01h)
Byte
7
PS
6
SPF=1
5
BIT
4 3 2
Page Code = 1Ch
Subpage Code = 01h
Page Length = 0Ch
1 0
Reserved = 0
Reserved = 0
S_L_Full LOWIR EN_BMS
EN_PS
Background Medium Scan Interval Time
Background Pre-Scan Time Limit
Minimum Idle Time Before Background Scan
Maximum Time To Suspend Background Scan (Ignored)
Reserved = 0
Default
DCh
01h
000Ch
01h
00h
00A8h
0000h
0000h
0000h
0000h
• Suspend On Log Full (S_L_FULL) bit set to zero allows background scans to continue if the results log (Log Sense
Page 15h) is full. S_L_FULL bit set to one will cause background scans to suspend when the log is full.
• Log Only When Intervention Required (LOWIR) bit set to zero allows logging of all medium errors in the results log
(Log Sense Page 15h). When the LOWIR bit is set to one, only unrecovered medium errors will be logged.
• EN_BMS (Enable Background Medium Scan) bit set to zero specifies that the background medium scan is disabled.
EN_BMS bit set to one specifies that background medium scan operations are enabled. If a background medium scan is in progress when the EN_BMS bit is changed from one to zero, then the medium scan shall be suspended until the
EN_BMS bit is set to one, at which time the medium scan shall resume from the suspended location.
• EN_PS (Enable Pre-Scan) bit set to zero specifies that the pre-scan is disabled. If a pre-scan operation is in progress when EN_PS is changed from a one to a zero, then pre-scan is halted. An EN_PS bit set to one specifies that a prescan operation is started after the next power-on cycle. Once this pre-scan has completed, another pre-scan shall not occur unless the EN_PS bit is set to zero, then set to one, and another power-on cycle occurs.
• Background Medium Scan Interval Time specifies the minimum time, in hours, between the start of one background medium scan operation and the start of the next background medium scan operation.
• Background Pre-Scan Time Limit specifies the maximum time, in hours, for a pre-scan operation to complete. If the pre-scan operation does not complete within the specified time, then it is halted. A value of zero specifies an unlimited time limit.
• Minimum Idle Time Before Background Scan specifies the minimum time, in milliseconds, that the drive must be idle before resuming a background media scan or pre-scan. A value of zero will be treated as the default value of 1.0 second. Any value less than 100 milliseconds will be treated as 100 milliseconds. The internal timer granularity is 50 milliseconds.
• Maximum Time To Suspend Background Scan (Ignored).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
165
18.11 MODE SENSE (5A)
Table 118: Mode Sense (5A)
Byte
0
1
2.
7
PCF
6 5
Reserved = 0
Bit
4 3
Command Code = 5Ah
DBD
Page Code
2 1
Reserved = 0
0
3-6 Reserved = 0
(MSB) Allocation Length
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The MODE SENSE (5A) command provides a means for the drive to report various device parameters to the initiator. See the
MODE SENSE (1A) command for a description of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
166
18.12 PERSISTENT RESERVE IN (5E)
Table 119: Persistent Reserve In (5E)
Byte
0
1
2-6
7-8
9
7 6 5
Bit
4 3
Command Code = 5Eh
2
Service Action
1
Reserved = 0
Reserved = 0
(MSB) Allocation Length
VU = 0 Reserved = 0
0
(LSB)
FLAG LINK
The PERSISTENT RESERVE IN command is used to obtain information about persistent reservations and reservation keys that are active within the controller. This command is used in conjunction with the PERSISTENT RESERVE OUT command
The Allocation Length indicates how much space has been allocated for the returned parameter data. If the length is not sufficient to contain all parameter data, the first portion of the data will be returned. If the remainder of the data is required, the initiator should send a new PERSISTENT RESERVE IN command and an Allocation Length large enough to contain all data.
18.12.1 Service Action
The following service action codes are implemented. If a reserved service action code is specified, the drive returns a Check
Condition status. The sense key is set to Illegal Request and the additional sense data is set to Invalid Field in CDB.
Table 120: PERSISTENT RESERVE IN, Service Action Codes
Code
00h
01h
02h
03h
04h-1Fh
Name
Read Keys
Read Reservations
Report Capabilities
Read Full Status
Reserved
Descriptions
Reads all registered Reservation Keys
Reads all current persistent reservations
Returns capability information
Reads complete information about all registrations and the persistent reservation, if any
Reserved
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
167
18.12.2 Parameter data for Read Keys
Table 121: PERSISTENT RESERVE IN, parameter data for Read Keys
Bit
Byte
7
(MSB)
6 5 4 3
0-3 Generation
2 1 0
(LSB)
(MSB)
4-7 Additional length (n-7)
(LSB)
(MSB)
8-15 First reservation key
(LSB)
:
(n-7)
n
(MSB)
Last reservation key
(LSB)
Generation is a counter that increments when PERSISTENT RESERVE OUT command with “Register” or “Preempt and
Clear” completes successfully. Generation is set to 0 as part of the power on reset process and hard reset process.
The Generation field contains a 32-bit counter that the Target shall increment every time a PERSISTENT RESERVE OUT command requests a Register, a Clear, a Preempt, or a Preempt and Abort service action. The counter shall not be incremented by a PERSISTENT RESERVE IN command, by a PERSISTENT RESERVE OUT command that performs a Reserve or
Release service action, or by a PERSISTENT RESERVE OUT command that is not performed due to an error or reservation conflict. Regardless of the APTPL value the generation value shall be set to 0 as part of the power on reset process.
The Additional Length field contains a count of the number of bytes in the reservation key list. If the allocation length specified by the PERSISTENT RESERVE IN command is not sufficient to contain the entire parameter list, then only the bytes from 0 to the maximum allowed allocation length shall be sent to the Initiator. The incremental remaining bytes shall be truncated, although the Additional Length field shall still contain the actual number of bytes in the reservation key list without consideration of any truncation resulting from an insufficient allocation length. This shall not be considered an error.
The Reservation Key list contains the 8-byte reservation keys for all Initiators that have registered through all ports with the
Target.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
168
18.12.3 Parameter Data for Read Reservations
Table 122: PERSISTENT RESERVE IN, parameter data for Read Reservations
Bit
Byte
7
(MSB)
6 5 4 3 2
0-3 Generation
1 0
(LSB)
(MSB)
4-7 Additional length (n-7)
(LSB)
(MSB)
8-n Reservation descriptors
(LSB)
The Generation field shall be as defined for the Persistent Reserve In Read Keys parameter data. The Additional Length field contains a count of the number of bytes to follow in the Reservation Descriptor(s).
If the Allocation length specified by the PERSISTENT RESERVE IN command is not sufficient to contain the entire parameter list, then only the bytes from 0 to the maximum allowed allocation length shall be sent to the Initiator. The remaining bytes shall be truncated, although the Additional Length field shall still contain the actual number of bytes of the Reservation
Descriptor(s) and shall not be affected by the truncation. This shall not be considered an error.
The format of the Reservation Descriptors is defined in the Persistent Reserve In Reservation Descriptor table. There shall be a Reservation Descriptor for the persistent reservation, if any, present in the Target having a persistent reservation.
Table 123: PERSISTENT RESERVE IN, Read Reservation Descriptor
Byte
0-7
Bit
7 6 5 4 3
(MSB)
Reservation key
2 1 0
(LSB)
(MSB)
8-11 Scope-specific address
(LSB)
12
13
14-15
Reserved
Scope=0
(MSB)
Extent Length=0
Type
(LSB)
.The Scope of each persistent reservation created by a PERSISTENT RESERVE OUT command will be returned. See the
PERSISTENT RESERVE OUT command section for details.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
169
18.13 PERSISTENT RESERVE OUT (5F)
Table 124: PERSISTENT RESERVE OUT (5F)
Byte
2
3-6
0
1
7-8
11
7
VU = 0
6
Reserved = 0
Scope=0
5
Bit
4 3
Command Code = 5Fh
2 1
Reserved = 0
Parameter List Length = 18h
Reserved = 0
Service Action
Type
FLAG
0
LINK
.
The PERSISTENT RESERVE OUT command is used to request service actions that reserve the drive for the exclusive or shared use of the initiator. The command uses other service actions to manage and remove such reservations. This command is used in conjunction with the PERSISTENT RESERVE IN command, and should not be used with the RESERVE and
RELEASE commands.
Note: If a PERSISTENT RESERVE OUT command is received when a RESERVE is active for the drive, the command will be rejected with Reservation Conflict status.
Parameter List Length must be 18h. If not, Check Condition status will be returned, with sense key of Illegal Request and additional sense code of Parameter List Length Error.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
170
18.13.1 Service Action
The following service action codes are supported.
Table 125: PERSISTENT RESERVE OUT, Service Action Code
Code
00h
01h
02h
03h
04h
05h
Register
Name
Reserve
Release
Register a reservation key
Description
Create a persistent reservation using a reservation key
Release a persistent reservation
Clear
Preempt
Clear all reservation keys and all persistent reservations
Preempt persistent reservations from another Initiator
Preempt and Abort
Preempt persistent reservations from another Initiator and clear the task set for the preempted Initiator
06h
Register and Ignore existing key
Register a reservation key
07h-1Fh Reserved
Reserved
18.13.2 Type
The Type field specifies the characteristics of the persistent reservation being established for all customer data sectors. The table below describes the supported types and how read and write commands are handled for each reservation type.
Table 126: PERSISTENT RESERVE OUT, Type Code
Code Name
0h
Reserved
1h
2h
3h
Write Exclusive
Reserved
Exclusive Access
Description
Reserved
Reads Shared: Any initiator may execute commands that transfer from the media. Writes Exclusive: Only the initiator with the reservation may execute commands that transfer data to the media; Reservation
Conflict status will be returned to other initiators.
Reserved
Reads Exclusive: Only the initiator with the reservation may execute commands that transfer data from the media; Reservation Conflict status will be returned to other initiators.
Writes Exclusive: Only the initiator with the reservation may execute commands that transfer data to the media; Reservation Conflict status will be returned to other initiators.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
171
4h
5h
Reserved
Write Exclusive
Registrants Only
6h
Exclusive Access
Registrants Only
7h-Fh
Reserved
Reserved
Reads Shard: Any initiator may execute commands that transfer from media.
Writes Exclusive: Only registered initiators may execute commands that transfer data to the media; Reservation Conflict status will be returned to other initiators.
Reads Exclusive: Only registered initiators may execute commands that transfer data from the media; Reservation Conflict status will be returned to other initiators.
Writes Exclusive: Only registered initiators may execute commands that transfer data to the media; Reservation Conflict status will be returned to other initiators.
Reserved
18.13.3 Parameter list
The Parameter List required to perform the PERSISTENT RERSERVE OUT command is defined in the table below. All fields must be sent on all PERSISTENT RESERVE OUT commands, even if the field is not required for the specified service action.
Table 127: Parameter List
Byte
0-7
8-15
16-19
20
21-23
Bit
7 6 5 4 3 2 1 0
(MSB) Reservation Key (LSB)
(MSB) Service Action Reservation Key (LSB)
(MSB) Reserved = 0 (LSB)
Reserved = 0
SPEC_I_P ALL_TG_PT Reserved = 0
APTPL
Reserved = 0
Reservation Key contains an 8-byte value provided by the initiator, and identifies the initiator that issued the PERSISTENT
RESERVE OUT command. The Reservation Key must match the registered reservation key for the initiator for all service actions except REGISTER and REGISTER AND IGNORE EXISTING KEY.
Service Action Reservation Key contents vary based on the service action. For REGISTER and REGISTER AND IGNORE
EXISTING KEY, the Service Action Reservation Key must contain the new reservation key to be registered. For PREEMPT and PREEMPT AND ABORT, the field contains the reservation key of the persistent reservation that is being preempted. This field is ignored for all other service actions.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
172
If the Specify Initiator Ports (SPEC_I_PT) bit is set to zero, the device server shall apply the registration only to the I_T nexus that sent the PERSISTENT RESERVE OUT command. If the SPEC_I_PT bit is set to one for any service action except the
REGISTER service action, then the command shall be terminated with CHECK CONDITION status, with the sense key set to
ILLEGAL REQUEST, and the additional sense code set to INVALID FIELD IN PARAMETER LIST. If the SPEC_I_PT bit is set to one for the REGISTER service action, the additional parameter data (see table XXX) shall include a list of transport
IDs and the device server shall also apply the registration to the I_T nexus for each initiator port specified by a TransportID. If a registration fails for any initiator port (e.g., if the logical unit does not have enough resources available to hold the registration information), no registrations shall be made, and the command shall be terminated with CHECK CONDITION status.
For Transport IDs, please refer to Table 179 on page 306 of Spc4r27.
The All Target Ports (ALL_TG_PT) bit is valid only for the REGISTER service action and the REGISTER AND IGNORE
EXISTING KEY service action, and shall be ignored for all other service actions. Support for the ALL_TG_PT bit is optional.
If the device server receives a REGISTER service action or a REGISTER AND IGNORE EXISTING KEY service action with the ALL_TG_PT bit set to one, it shall create the specified registration on all target ports in the SCSI target device known to the device server (i.e., as if the same registration request had been received individually through each target port). If the device server receives a REGISTER service action or a REGISTER AND IGNORE EXISTING KEY service action with the
ALL_TG_PT bit set to zero, it shall apply the registration only to the target port through which the PERSISTENT RESERVE
OUT command was received.
APTPL (Activate Persist Through Power Loss) bit is valid only for REGISTER and REGISTER AND IGNORE EXIST-
ING KEY, and is ignored for all other service actions. If the last valid APTPL bit value received is zero, power loss will cause all persistent reservations to be released, and all reservation keys to be removed. If the last valid APTPL bit value received is one, any persistent reservation and all reservation keys for all initiators will be retained across power cycles.
18.13.4 Summary
Table 128: PERSISTENT RESERVE OUT, Service Action, Parameters
Service Action
(0) Register
(1) Reserve
(2) Release
(5) Preempt and
Abort
Scope
Type ignore apply apply apply
Rsv
Key verify verify verify verify
Parameters
SvcAct
RsvKey
S-spec addr save ignore ignore ignore ignore ignore save ignore
Extent length ignore ignore ignore ignore
APTPL apply ignore ignore ignore
Generation counter
+ 1
---
---
+ 1
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
173
18.13.4.1 Scope, Type
The Scope and the Type are applied in the process for the Reserve, Release, and Preempted and Clear service action but they are ignored in the process for the Register service action because they are not used.
18.13.4.2 Reservation Key
The Reservation Key is verified in each service action process. If the Initiator that registered a key is different from the Initiator requesting PERSISTENT RESERVE OUT command, the drive returns a Reservation Conflict status.
18.13.4.3 Service Action Reservation Key
On Register service action, the drive saves the key specified in the Service Action Reservation Key field as a key of Initiator requesting PERSISTENT RESERVE OUT command.
On Preempt and Clear service action, the reservation that has a key specified in the Service Action Reservation Key field is preempted.
On other service actions, this field is ignored.
18.13.4.4 APTPL
The APTPL (Active Persist Through Power Loss) is valid only for the Register service action. The drive ignores the APTPL in other service actions.
The following table shows the relationship between the last valid APTPL value and information held by the drive.
Table 129: APTPL and information held by a drive
Information held by the drive
Registration
Persistent Reservation
Generation counter
The last valid APTPL value
0 1 all keys are set to 0 all are removed set to 0 retained retained set to 0
18.13.4.5 Generation counter
The drive increments the Generation counter when Register service action or Preempt and Clear service action complete successfully.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
174
18.14 PRE-FETCH (34)
Table 130: PRE-FETCH (34)
Byte
0
7 6 5
Bit
4 3
Command Code = 34h
2 1 0
1 Reserved = 0 Reserved = 0
Immed
= 0
Obsolete
(MSB)
Logical Block Address
2-5
(LSB)
6 Reserved = 0
(MSB) Transfer Length
7-8
9 VU = 0 Reserved = 0
(LSB)
FLAG LINK
The PRE-FETCH command requests the drive to transfer data to the cache. No data is transferred to the Initiator.
• Transfer length field specifies the number of contiguous blocks of data that are to be transferred into the cache. A transfer length of zero indicates that blocks are to be transferred into the cache until the segment is filled or until the last block on the media.
• Immed (Immediate) must be zero. An immediate bit of zero indicates that the status shall not be returned until the operation has completed.
If the Immed bit is set to one, the drive returns a Check Condition status. The sense key shall be set to Illegal
Request and the additional sense code shall be set to Invalid Field in CDB.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
175
18.15 READ (6) - (08)
Table 131: READ (6) - (08)
Byte
0
1
7 6
Reserved = 0
5
Bit
4 3
Command Code = 08h
2
(MSB) LBA
Logical Block Address
1 0
2-3
(LSB)
4
5 VU = 0
Transfer Length
Reserved = 0 FLAG LINK
The READ command requests the drive to transfer from the medium to the initiator the specified number of blocks (Transfer
Length) starting at the specified Logical Block Address (LBA).
•
• Logical block address field specifies the logical unit at which the READ operation shall begin.
Transfer length field specifies the number of blocks to be transferred. A value of zero implies 256 blocks are to be transferred.
Note:
Error recovery procedure (ERP) handles errors. The error recovery parameters specified by the MODE SELECT command control ERPs. If the drive is formatted with protection information, no protection information will be transmitted or checked.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
176
18.16 READ (10) - (28)
Table 132: READ (10) - (28)
Byte
0
7 6 5
Bit
4 3
Command Code = 28h
2 1 0
1 RDPROTECT DPO FUA
Rsvd=
0
FUA_
NV
Obsolete
(MSB)
2-5 Logical Block Address
(LSB)
6 Reserved = 0
(MSB) Transfer Length
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The READ (10) command requests the drive to transfer data to the Initiator. The larger LBA and Transfer Length fields permit greater quantities of data to be requested per command than with the READ command and are required to access the full LBA range of the larger capacity drives.
• FUA_NV (Force Unit Access Non-Volatile Cache) may be set to 0 or 1, but is ignored since NV_SUP=0 in Inquiry
Page 86h.
•
•
Transfer length The number of contiguous blocks to be transferred. If the transfer length is zero, the seek occurs, but no data is transferred. This condition is not considered an error. If read ahead is enabled, a read ahead is started after the seek completes.
DPO (Disable Page Out) bit of one indicates that the data accessed by this command is to be assigned the lowest priority for being written into or retained by the cache. A DPO bit of one overrides any retention priority specified in the
Mode Select Page 8 Caching Parameters. A DPO bit of zero indicates the priority is determined by the retention priority. The Initiator should set the DPO bit when the blocks read by this command are not likely to be read again in the near future.
•
• FUA (Force Unit Access) bit of one indicates that the data is read from the media and not from the cache. A FUA bit of zero allows the data to be read from either the media or the cache.
RDPROTECT defines the manner in which protection information read from disk shall be checked during processing of the command. Protection information is stored on disk, and may be transmitted to the drive's internal data buffer and to the initiator with the user data. If the drive is not formatted with protection information, RDPROTECT must be set to 000b, else Check Condition status will be returned with sense key of Illegal Request and additional sense code of Invalid Field in CDB.
• RDPROTECT=000b
Protection information is not transmitted to the initiator and is not checked.
RDPROTECT=001b
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
177
- Protection information is transmitted to the initiator with the user data
- Logical Block Guard is checked
- Logical Block Application Tag is checked (applies to READ(32) command only)
- Logical Block Reference Tag is checked
RDPROTECT=010b
- Protection information is transmitted to the initiator with the user data
- Logical Block Guard is not checked
- Logical Block Application Tag is checked (applies to READ(32) command only)
- Logical Block Reference Tag is checked
RDPROTECT=011b
- Protection information is transmitted to the initiator with the user data
- Logical Block Guard is not checked
- Logical Block Application Tag is not checked
- Logical Block Reference Tag is not checked
RDPROTECT=100b
- Protection information is transmitted to the initiator with the user data
- Logical Block Guard is checked
- Logical Block Application Tag is not checked
- Logical Block Reference Tag is not checked
RDPROTECT=101b, 110b, 111b
These values are reserved. Check Condition status will be returned with sense key of Illegal Request and additional sense code of Invalid Field in CDB.
If a check of the protection information fails, Check Condition status will be returned with sense key of Aborted Command and additional sense code indicating which protection field check failed.
Refer to the ANSI T10 standards for additional details of protection information.
If the transfer length is zero, no data is transferred. The CDB is validated and protocol checked and, if no problems are found,
Good status is returned immediately. This condition is not considered an error.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
178
18.17 READ (12) - (A8)
Table 133: Read (12) - (A8)
Byte
0
7 6 5
Bit
4 3
Command Code = A8h
2 1 0
1 RDPROTECT DPO FUA
Rsvd
= 0
FUA_
NV
Rsvd =
0
(MSB)
2 - 5 Logical Block Address
(LSB)
(MSB)
6 - 9 Transfer Length
(LSB)
10
11 VU = 0
Reserved = 0
Reserved = 0 FLAG LINK
The READ(12) command causes the drive to transfer data to the initiator. See the READ(10) description for the definitions of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
179
18.18 READ (16) - (88)
Table 134: READ (16) - (88)
Byte
0
1
7 6
RDPROTECT
5 4
Command Code = 88h
DPO
Bit
3
FUA
2
Rsvd=0
1
FUA_N
V
0
Rsvd=0
(MSB)
2 - 9 Logical Block Address
(LSB)
(MSB)
10-13 Transfer Length
(LSB)
14
Restricted
For
MMC-4
VU = 0
Reserved = 0 GROUP NUMBER
15 Reserved = 0 FLAG LINK
The READ(16) command causes the drive to transfer data to the initiator. See the READ(10) description for the definitions of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
180
2-5
6
0
1
7
8 - 9
18.19 READ (32) - (7F/09)
Table 135: READ (32) - (7F/09)
Byte
10
11
7
VU = 0
6
Reserved = 0
RDPROTECT
5
Bit
4 3
Command Code = 7Fh
DPO FUA
2 1
Reserved = 0
Reserved = 0
FLAG
Group Number = 0
Additional CDB Length = 18h
Service Action = 0009h
Rsvd=
0
FUA_
NV
Reserved = 0
(MSB)
12 -19 Logical Block Address
0
LINK
Rsvd=0
(LSB)
(MSB)
20 - 23 Expected Initial Logical Block Reference Tag
(LSB)
(MSB)
24 - 25 Logical Block Application Tag
(LSB)
(MSB)
26-27 Logical Block Application Tag Mask
(LSB)
(MSB)
28 - 31 Transfer Length
(LSB)
The READ command requests that the drive transfer data from disk to the initiator. Each logical block transferred includes user data and may include protection information, based on the RDPROTECT field and the drive format.
If the drive is formatted with type 2 protection (PROT_EN=1 and P_TYPE=001b in the READ CAPACITY (16) parameter data), then this command will be processed normally. Any other protection types will result in Check Condition status to be returned with sense key of Illegal Request and additional sense code of Invalid Command Operation Code
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
181
The Expected Initial Logical Block Reference Tag field contains the value of the Logical Block Reference Tag field expected in the protection information of the first logical block accessed by the command.
If the ATO bit is set to one in Mode Page 0Ah, the Logical Block Application Tag Mask field contains a value that is a bit mask for enabling the checking of the Logical Block Application Tag field in the protection information for each logical block accessed by the command. A Logical Block Application Tag Mask bit set to one enables the checking of the corresponding bit of the Expected Logical Block Application Tag field with the corresponding bit of the Logical Block Application Tag field in the protection information.
If the ATO bit is set to zero, the Logical Block Application Tag Mask field and the Expected Logical Block Application Tag field are ignored
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
182
18.20 READ BUFFER (3C)
Table 136: READ BUFFER (3C)
Byte
7 6 5
Bit
4 3
Command Code = 3Ch 0
1
2
Reserved = 0
Buffer ID = 0
2
Mode
(MSB)
3-5 Buffer Offset
1 0
(LSB)
(MSB) Allocation Length
6-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The READ BUFFER command is used in conjunction with the WRITE BUFFER command as a diagnostic function for testing the memory of the drive and the SCSI bus integrity. This command does not alter the medium.
The function of this command and the meaning of fields within the command descriptor block depend on the contents of the mode field.
MODE Description
00000
00010
Read Combined Header and Data
Read Data
00011
01010
01011
11010
All others
Descriptor
Read Data from Echo Buffer
Echo Buffer Descriptor
Enable Expander Communications Protocol and Echo Buffer
Not supported
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
183
18.20.1 Combined Header And Data (Mode 00000b)
In this mode a 4-byte header followed by data bytes is returned to the Initiator during the DATA IN phase. The Buffer ID and the buffer offset field are reserved.
The drive terminates the DATA IN phase when allocation length bytes of header plus data have been transferred or when the header and all available data have been transferred to the Initiator, whichever is less.
The 4-byte READ BUFFER header (see figure below) is followed by data bytes from the data buffer of the drive.
Table 137:
Read Buffer Header
Byte
0
7 6 5
Bit
4 3
RSVD = 0
(MSB) Buffer Capacity
2 1
1-3
(LSB)
The buffer capacity specifies the total number of data bytes that are available in the data buffer of the drive. This number is not reduced to reflect the allocation length nor is it reduced to reflect the actual number of bytes written using the WRITE
BUFFER command.
Following the READ BUFFER header the drive will transfer data from its data buffer.
18.20.2 Read Data (Mode 00010b)
In this mode, the DATA IN phase contains buffer data.
• Buffer ID field must be set to zero, indicating the data transfer buffer. If another value is specified, the command is terminated with Check Condition status. The drive shall set sense key to Illegal Request and additional sense code to
Illegal Field in CDB.
•
•
Buffer Offset specifies the offset of the memory space specified by the Buffer ID. The Initiator should conform to the offset boundary requirements returned in the READ BUFFER descriptor. If the value exceeds the buffer specified, the command is terminated with Check Condition status. The drive shall set sense key to Illegal Request and additional sense code to Illegal Field in CDB.
Allocation Length The drive terminates the DATA IN phase when allocation length bytes of data have been transferred or when the header and all available data have been transferred to the Initiator, whichever is less.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
184
18.20.3 Descriptor (Mode 00011b)
In this mode, a maximum of four bytes of READ BUFFER descriptor information are returned. The drive returns the descriptor information for the buffer specified by the Buffer ID.
• Buffer ID field should normally be set to zero, indicating the drive data transfer buffer. If any other value is specified, the drive returns all zeros in the READ BUFFER descriptor.
•
• Buffer Offset field is reserved.
Allocation Length should be set to four or greater. The drive transfers the allocation length or four bytes of READ
BUFFER descriptor, whichever is less. The allocation length of zero indicates no data is transfered.The allocation length of greater than zero and less than four (size of the Descriptor) is an invalid request and will cause the command to be terminated with Check Condition status. The drive shall set sense key to Illegal Request and additional sense code to Illegal Field in CDB.
The READ BUFFER descriptor is defined in the figure below.
Table 138: Read Buffer Description
Byte
0
7 6 5
Bit
4 3
Offset Boundary = 0x09
(MSB) Buffer Capacity
2 1
1-3
(LSB)
The value contained in the Buffer Offset field of subsequent WRITE BUFFER and READ BUFFER commands should be a multiple of two to the power of the offset boundary. The offset boundary is always set to nine, which indicates Sector Boundaries.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
185
18.20.4 Read Data from Echo Buffer (Mode 01010b)
In this mode the drive transfers data from the echo buffer. The echo buffer will transfer the same data as when the WRITE
BUFFER command was issued with the mode field set to echo buffer.
WRITE BUFFER command with the mode field set to echo buffer should be sent prior to the READ BUFFER command; otherwise the READ BUFFER command will be terminated with Check Condition status and Illegal Request.
In this mode Read Buffer transfers the specified amount of data or the amount previously written with a Write Buffer using mode 1010b from the echo buffer, whichever is less.
Issuing a Read Buffer mode 1010b before a Write Buffer mode 1010b will cause indeterminate data to be returned.
The most significant two bytes of the Allocation Length are ignored. The specified amount of data transferred should not be larger than the echo buffer capacity. The echo buffer capacity may be determined by using Read Buffer mode 1011b. Any additional data transferred over and above the echo buffer capacity is regarded as indeterminate.
The Buffer ID and Buffer Offset fields are ignored in this mode.
Note: The echo buffer is a separate buffer from the data buffer used with other read buffer modes. It is intended to be used for domain validation purposes.
18.20.5 Echo Buffer Descriptor (Mode 01011b)
In this mode, a maximum of four bytes of Read Buffer Descriptor information is returned. The drive returns the descriptor information for the echo buffer. The Buffer Offset field is reserved in this mode and must be zero. The drive transfers the lesser of the allocation length or four bytes of following Echo Buffer Descriptor.
Table 139: Echo Buffer Descriptor
Byte
2
3
0
1
7 6 5
Bit
4
Reserved = 0
3
Reserved = 0
2 1
Reserved = 0 (MSB) Buffer Capacity
Buffer Capacity (LSB)
0
EBOS=0
•
• EBOS (Echo Buffer Overwritten Supported) bit of zero indicates that the echo buffer is shared by all Initiators.
Buffer Capacity field returns the size of the echo buffer in byte aligned to a 4-byte boundary.
18.20.6 Expander Communications and Echo Buffer (Mode 11010b)
Receipt of a READ BUFFER command with this mode (11010b) causes a communicative expander to enter the expanded communication protocol mode. SCSI target devices that receive a READ BUFFER command with this mode shall process it as if it were a READ BUFFER command with mode 01010b (see 17.17.4 Read Data from Echo Buffer).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
186
18.21 READ CAPACITY (10) - (25)
Table 140: READ CAPACITY (10) - (25)
Byte
0
7 6 5
Bit
4 3
Command Code = 25h
2 1 0
1 Reserved = 0 Reserved = 0
Obsolete
(MSB)
2-5 Logical Block Address
(LSB)
6-7
8
9 VU = 0
Reserved = 0
Reserved = 0
Reserved = 0 FLAG
PMI
LINK
The READ CAPACITY command returns information regarding the capacity of the drive.
• Logical Block Address is used in conjunction with the PMI bit.
• PMI (Partial Medium Indicator) indicates:
PMI Description
0
1
The drive returns the last LBA of the drive.
The drive returns the last LBA and block length in bytes are that of the LBA after which a substantial delay in data transfer will be encountered. This returned LBA shall be greater than or equal to the LBA specified by the LBA fields in the CDB.
This option provides the information that the Initiator needs to determine the amount of space available on the same track that is accessible without a head switch or seek.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
187
18.21.0.1 Returned Data Format
The data returned to the Initiator in response to the READ CAPACITY command is described here. The data is returned in the
DATA IN phase.
Table 141: Format of READ CAPACITY command reply
Bit
Byte
6
(MSB)
7 5 4 3 2 1 0
Maximum Logical Block Address
0-3
(LSB)
(MSB)
Block Length
4-7
•
(LSB)
Block Length specifies the length in bytes of each block of user data (not including protection information).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
188
18.22 READ CAPACITY (16) (9E/10)
Table 142: Read Capacity (16) (9E/10)
Byte
0
1
2-9
10-13
14
15
6 7 5
Bit
4 3
Command Code = 9Eh
2 1 0
Reserved = 0 Service Action = 10h
(MSB) Logical Block Address (LSB)
(MSB) Allocation Length (LSB)
Reserved = 0 PMI
VU = 0 Reserved = 0 FLAG Link
The READ CAPACITY (16) (9E/10) command returns information regarding the capacity of the drive. This command is processed like the standard READ CAPACITY (25) command.
18.22.1 Returned Data Format
The following data is returned to the initiator in the DATA OUT phase.
Table 143: Returned Data Format
Byte
0 - 7
8 - 11
12
13 - 31
Bit
6 7 5 4 3 2 1 0
(MSB) Maximum Logical Address (LSB)
(MSB) Block Length (LSB)
Reserved = 0 P-Type Prot-EN
Reserved = 0
The protection type (P_TYPE) field and the protection enable (PROT_EN) bit indicate the drive's current type of protection.
Prot-EN
0b
1b
1b
P-Type
000b
000b
001b
Description
The drive is formatted to type 0 protection
The drive is formatted to type 1 protection
The drive is formatted to type 2 protection
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
189
18.23 READ DEFECT DATA (37)
Table 144: READ DEFECT DATA (37)
Byte
0
1
2
7 6
Reserved = 0
Reserved = 0
5
Bit
4 3
Command Code = 37h
Plist
2 1 0
Reserved = 0
Glist Defect List Format
0
3-6 Reserved = 0
(MSB) Allocation Length
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The READ DEFECT DATA command requests that the Target transfer the medium defect data to the Initiator.
If the Target is unable to access any medium defect data it will return a Check Condition status with the appropriate sense key. The sense key will be set to either Medium Error (03h) if a medium error occurred or No Sense (00h) if the list does not exist and the additional sense code will be set to Defect List Error (19h).
• Plist bit set to one indicates that the Target returns the Plist. A Plist bit of zero indicates that the Target shall not return the Plist of defects.
• Glist bit set to one indicates that the Target returns the Glist. A Glist bit of zero indicates that the Target shall not return the Glist.
•
Note: With both bits set to one Plist and Glist the Target will return both the primary and grown defect lists. With both bits set to zero, the Target will return only a 4-byte Defect List Header.
Defect List format field is used by the Initiator to indicate the preferred format for the defect list.
The Defect List Format of '100 (Bytes from Index Format)' and '101 (Physical Sector Format)' are supported. If the requested format is not supported by the drive, it will return the defect list in its default format '101' and then terminate the command with Check Condition status. The sense key will be set to Recovered Error (01h) and the additional sense code will be set to Defect List Not Found (1Ch).
The drive sends defect list (Defect Descriptors) in a 8-byte Absolute Block Address (ABA) format that follows a four byte
Defect List Header.
The Target will transfer all of the Read Defect Data up to the number of bytes allocated by the Initiator.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
190
Table 145: Defect List Format
Preferred Defect List Format
Block (000b)
Bytes from Index (100b)
Returned Defect List Format
Physical Sector
Bytes from Index
Vendor Unique (110b)
Reserved (001b)
Reserved (010b)
Reserved (011b)
Reserved (111b)
Physical Sector
Note: The drive will terminate the Data In phase when the Allocation Length has been transferred or when all available
Defect Data has been transferred to the Initiator, whichever is less.
The Read Defect Data contains a 4-byte header followed by zero or more defect descriptors.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
191
18.23.1 Defect List Header
Table 146: Defect List Header
Byte
0
1
2-3
7 6 5
Bit
4 3
Defect List Header
Reserved = 0
Reserved = 0
Plist Glist
(MSB) Defect List length
2 1
Defect List Format
0
(LSB)
18.23.2 Defect List Descriptor
Table 147: Defect List Descriptor
Byte 7 6 5
Bit
4 3
Defect List Descriptor
Defect Descriptor 0 0-7
.
8n -
(8n+7)
Defect Descriptor n
2 1 0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
192
18.23.3 Bytes from Index Format (100b)
Table 148: Defect Descriptors of Bytes from Index Format
Byte Defect Descriptors
(MSB)
0-2 Cylinder Number of Defect
(LSB)
3 Head Number of Defect
(MSB)
Defect Bytes from Index
4-7
(LSB)
Defect Bytes from Index is gotten using the following equation:
Bytes from Index = (Physical Sector Number) * N
Where: N = Bytes per sector
18.23.4 Physical Sector Format (101b)
Table 149: Defect Descriptors of Physical Sector Format
Byte Defect Descriptors
(MSB)
0-2 Cylinder Number of Defect
(LSB)
3 Head Number of Defect
(MSB)
Defective Sector Number
4-7
(LSB)
The Defect List Format field specifies the format of the defect list data returned by the Target.
The Defect List Length field specifies the length in bytes of the defect descriptors that follow. The Defect List Length is equal to eight times the number of defect descriptors.
Normally the Target will set the Defect List Length field to the amount of space needed to contain the entire defect list. However, the Target is capable of building a defect list with a length such that the entire list cannot be transferred using the maximum allocation length. If the defect list grows beyond 8191 entries, the defect data cannot be transferred with an allocation length of 0FFFFh. The Target will transfer a partial defect list and return Check Condition status with the sense key set to
Recovered Error and the additional sense code set to Partial Defect List Transferred. The defect list length will be set to
0FFF8h, indicating the maximum number of defect descriptors that can be transferred. Defects beyond this number cannot be read by the Initiator.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
193
18.24 READ DEFECT DATA (B7)
Table 150: READ DEFECT DATA (B7)
Byte
0
1
2-5
6-9
10
11
7 6 5
Bit
4 3
Command Code = B7h
Reserved = 0 Plist Glist
Reserved = 0
(MSB) Allocation Length
2 1
Defect List Format
0
(LSB)
VU = 0
Reserved = 0
Reserved = 0 FLAG LINK
(See Section 18.23 READ DEFECT DATA (37)” on page 190.)
18.24.1 Defect List Header
Table 151: Defect List Header
Byte
0
1
2-3
7 6
Reserved = 0
5
Bit
4 3
Defect List Header
Reserved = 0
Plist Glist
Reserved = 0
2 1
Defect List Format
0
(MSB)
4-7 Defect List length
(LSB)
(See Defect List Header for Read Defect Data (37) in
Section Table 18.23.1, “Defect List Header,” on page 192
.)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
194
18.24.2 Defect List Descriptor
Table 152: Defect List Descriptor
Byte 7 6 5
Bit
4 3
Defect List Descriptor
Defect Descriptor 0
2 1 0
0-7
.
8n -
(8n+7)
Defect Descriptor n
18.24.3 Bytes from Index Format (100b)
Table 153: Defect Descriptors of Bytes from Index Format
Byte Defect Descriptors
(MSB)
0-2 Cylinder Number of Defect
(LSB)
3 Head Number of Defect
(MSB)
4-7 Defect Bytes from Index
(LSB)
Defect Bytes from Index is derived using the following equation:
Bytes from Index = (Physical Sector Number) + N where N = Bytes per sector.
18.24.4 Physical Sector Format (101b)
Table 154: Defect Descriptors of Physical Sector Format
Byte Defect Descriptors
(MSB)
0-2 Cylinder Number of Defect
(LSB)
3 Head Number of Defect
(MSB)
4-7 Defective Sector Number
(LSB)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
195
18.25 READ LONG (3E)
Table 155: READ LONG (3E)
Byte
0
7 6 5
Bit
4 3
Command Code = 3Eh
2 1 0
1 Reserved = 0 Reserved = 0
Correct
= 0
Obsolete
(MSB)
Logical Block Address
2-5
(LSB)
6 Reserved = 0
(MSB) Byte Transfer Length
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The READ LONG command requests the drive to transfer one block of data to the Initiator. The transfer data includes data and ECC field data.
• Correct bit of zero causes the logical block to be read without any correction attempts. When the bit is one, data will be corrected with ECC On The Fly correction before being transferred.
•
• Logical Block Address field specifies the logical block at which the read operation shall occur.
Byte Transfer Length field must specify exactly the number of bytes of data that are available for transfer. If a nonzero byte transfer length does not match the available data length, the Target terminates the command with Check
Condition status, the sense key is set to Illegal Request, and an additional sense code set to Invalid Field in CDB.
The valid and ILI bits are set to one and the information field is set to the difference of the requested length minus the actual length in bytes. Negative values are indicated by two's complement notation.
The transfer length is calculated as follows:
transfer length = logical block size + 53
The data read by this command is neither read from nor retained in the cache.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
196
18.26 REASSIGN BLOCKS (07)
Table 156: REASSIGN BLOCKS (07)
Byte
7 6 5
Bit
4 3
Command Code = 07h
2 1 0
2
3
4
5
0
1 Reserved = 0
Reserved = 0
Reserved = 0
VU = 0 Reserved = 0 FLAG LINK
The REASSIGN BLOCKS command requests the drive to reassign a logical block to an available spare. The REASSIGN
BLOCKS command attempts to allocate spare blocks on a spare track. The LBA is transferred to the drive during the DATA
OUT phase. One to four blocks may be specified for relocation per REASSIGN BLOCKS command.
Reassignment is complete upon the completion of the REASSIGN BLOCKS command. At this time, the defective logical block address has been added to the Glist.
All data is preserved during a reassign command except for the target LBA data. The Mode Page 0h DRRT (Disable Restore
Reassign Target) bit determines if the reassign blocks command will attempt to recover the Target LBA data. If the Target cannot recover the data at the Target LBA then the Initiator will have to restore the data after the REASSIGN BLOCKS command completes successfully.
If the reassignment begins to move data and is interrupted or fails to complete successfully, the Target enters a degraded mode of operation. In this mode data can be read but writing to the drive is prohibited.
Upon successful completion of this command, the location of the physical sectors reassigned during the command are added to the Glist. The reassigned sectors are marked defective and cannot be accessed again until after a format operation discards the
Glist.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
197
Following is the format of the data sent by the Initiator during the DATA OUT phase.
Table 157: Format of Reassign Blocks data
Byte
0
1
2-3
7 6 5
Bit
4
Reserved = 0
Reserved = 0
3
(MSB) Defect List Length = 4/8/12/16
2 1
(LSB)
(MSB)
4-7 Defect Logical Block Address 1
(LSB)
(MSB)
8-11 Defect Logical Block Address 2
(LSB)
(MSB)
12-15 Defect Logical Block Address 3
(LSB)
(MSB)
16-19 Defect Logical Block Address 4
(LSB)
•
• Defect List Length must be 4, 8, 12, or 16. Otherwise, the drive returns Check Condition with a sense key of Illegal
Request.
Defective Logical Block Address is four bytes in length. The Initiator can specify from 1 to 4 Defective Logical
Block Addresses according to the Defect List Length from 4 to 16, respectively. LBAs are not required to be in ascending order.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
198
2
3
4
5
0
1
18.27 RECEIVE DIAGNOSTICS RESULTS (1C)
Table 158: RECEIVE DIAGNOSTIC RESULTS (1C)
Byte
7 6 5
Bit
4 3
Command Code = 1Ch
2
Reserved = 0
Page Code
Reserved = 0
(MSB) Allocation Length
VU = 0 Reserved = 0
1
FLAG
0
PCV
(LSB)
LINK
The RECEIVE DIAGNOSTIC RESULTS command requests that analysis data requested by a SEND DIAGNOSTIC command be sent to the Initiator.
• PCV (Page Code Valid) bit of zero indicates that the most recent SEND DIAGNOSTIC command shall define the data returned by this command. PCV bit of one indicates that the contents of the Page Code field shall define the data returned by this command.
• Allocation Length specifies the amount of data to be returned to the Initiator. This value may be zero and this is not considered an error. The Target terminates the Data In phase when all available data has been transferred or when the number of bytes transferred equals the Parameter List Length.
2-3
4
0
1
5
6
18.27.1 Receive Diagnostic Results Page 0
This page contains a list of supported pages.
Table 159: Receive Diagnostic Results page 0
Byte
7 6 5
Bit
4 3
Page Code = 0
Reserved = 0
Page Length = 03h
(Supported Pages) Page = 0h
CJTPAT page = 3Fh
Translate address page = 40h
2
The supported diagnostic page returns a list of supported pages in ascending order.
1 0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
199
18.27.2 Receive Diagnostic Results Page 40
Using the SEND DIAGNOSTIC command, an address in either physical or logical format is supplied to the drive. This page is then used to retrieve the address translated into the other format.
Table 160: Receive Diagnostic Results Page 40
Byte
2-3
4
0
1
5
7
RA
6 5
ALTS
Reserved = 0
ALTT
Bit
4 3
Page Code = 40h
Reserved = 0
Page Length
Reserved=0
2 1
Supplied format
Translate format
0
6-n Translated Address
•
•
•
•
•
•
•
Page Length is set to 02h if the address is in a Reserved Area (RA =1). Otherwise, Page Length is set to 06h if the
Translate Format is Block format, or 0Ah if the Translate Format is Bytes From Index format or Physical Sector format.
Supplied Format is the value supplied by the SEND DIAGNOSTIC command; it may be one of the three following values:
- 000b Block format
- 100b Bytes From Index format
- 101b Physical Sector format
Translate Format is the value supplied by the SEND DIAGNOSTIC command and specifies the format in which the address has been translated into List. If the supplied format is the Block format, the Translate format must be either
Bytes from Index or Physical Sector format. If the supplied format is the Bytes from Index or Physical Sector format, the Translate format must be Block format. Otherwise the Target will terminate the command with Check Condition status.
RA (Reserved Area) is set to on if the translated block is an inaccessible sector, which could reflect a defect, an unused sector on a spare cylinder, or a sector beyond the Maximum Customer LBA.
ALTS (Alternate Sector) is set to one if the translated block is a sector in a spare cylinder that points to a reassigned customer sector.
ALTT (Alternate Track) is not used.
Translated Address contains the address in the translate format. If it is an LBA, it is contained within the first four bytes of the field (bytes 6 to 9) of the page data. For a physical format it is as follows:
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
200
Table 161: Translated address
Byte
7 6
6-8
9
10-13
5
Bit
4 3
Cylinder Number
2
Head Number
Sector Number or Bytes from Index
1 0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
201
18.28 RELEASE (17)
Table 162: RELEASE (17)
•
•
•
Byte
2
3-4
0
1
5
7 6
Reserved = 0
5
Bit
4 3
Command Code = 17h
2 1
3rdPty=0 3rd Party ID
Reservation Identification
Reserved = 0
Reserved = 0 FLAG
0
Ext=0
The RELEASE command is used to release a LUN previously reserved. It is not an error for an Initiator to release a LUN that is not currently active. The drive returns Good status without altering the reservation.
•
VU = 0 LINK
3rdPty must be 0. Third Party reservations are not supported. If the 3rdPty bit is not zero, Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB.
3rd Party ID is ignored.
Extents must be 0. Extension is not supported by the drive.
Reservation Identification field is ignored.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
202
18.29 RELEASE (57)
Table 163: RELEASE (57)
Byte
2
3
0
1
7 6
Reserved = 0
5
Bit
4 3
Command Code = 57h
2
3rdPty=0 Reserved = 0
Reservation Identification
3rd Party Device ID
1 0
Ext = 0
4-8 Reserved = 0
9 VU = 0 Reserved = 0 FLAG LINK
The RELEASE command is used to release a LUN previously reserved. It is not an error for an Initiator to release a LUN that is not currently active. The drive returns Good status without altering the reservation.
•
•
•
•
3rdPty must be 0. Third Party reservations are not supported. If the 3rdPty bit is not zero, Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB.
3rd Party ID is ignored.
Extent must be 0. Extension is not supported by the drive.
Reservation Identification field is ignored.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
203
18.30 REPORT DEVICE IDENTIFIER (A3/05)
Table 164: REPORT DEVICE IDENTIFIER (A3/05)
Byte
7 6 5
Bit
4 3
Command Code = A3h
2
2
3
0
1 Reserved = 0
Reserved = 0
Reserved = 0
1
Service Action = 05h
(MSB)
4-5 LUN=0
0
(LSB)
(MSB)
6-9 Allocation Length
(LSB)
10
11 VU = 0
Reserved = 0
Reserved = 0 FLAG LINK
The REPORT DEVICE IDENTIFIER command requests that the device server send device identification information to the application client.
The LUN contains the logical unit number parameter. This parameter is expected to be zero. Other value for this parameter will cause the command to terminate with a CHECK CONDITION status. The sense key is set to ILLEGAL REQUEST, and the additional sense code is set to INVALID FIELD IN CDB.
The ALLOCATION LENGTH field indicates how much space has been reserved for the returned parameter data. If the length is not sufficient to contain all the parameter data, the first portion of the data is returned. This is not considered an error.
The actual length of the parameter data is available in the IDENTIFIER LENGTH field in the parameter data. If the remainder of the parameter data is required, the application client should send a new REPORT DEVICE IDENTIFIER command with an
ALLOCATION LENGTH field large enough to contain all the data.
The REPORT DEVICE IDENTIFIER parameter list contains a 4-byte field that contains the length in bytes of the parameter list and the logical unit's identifier.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
204
Table 165: Report Device Identifier parameter list
Byte
Bit
7 6 5 4 3
(MSB) Identifier Length = n - 3
0-3
2 1 0
(LSB)
4-n Identifier
The IDENTIFIER LENGTH field specifies the length in bytes of the IDENTIFIER field. If the ALLOCATION LENGTH field in the CDB is too small to transfer all of the identifier, the length is not adjusted to reflect the truncation. The identifier length initially equals zero and is changed only by a successful SET DEVICE IDENTIFIER command.
The IDENTIFIER field contains a vendor specific value. The value reported is the last value written by a successful SET
DEVICE IDENTIFIER command. The value of the identifier is changed only by a SET DEVICE IDENTIFIER command.
The identifier value persist through resets, power cycles, media format operations.
The Target return the same Identifier to all Initiators on all ports.
The execution of a REPORT DEVICE IDENTIFIER requires the enabling of a nonvolatile memory within the logical unit. If the nonvolatile memory is not ready, the device server returns Check Condition status rather than wait for the device to become ready. The sense key is set to Not Ready and the additional sense data is set as described in the TEST UNIT READY command. This information should allow the application client to determine the action required to cause the device server to become ready.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
205
18.31 REPORT LUNS (A0)
Table 166: REPORT LUNS (A0)
Byte
0
1-5
7 6 5
Bit
4 3
Command Code = A0h
Reserved
(MSB)
6-9 Allocation Length
2 1 0
(LSB)
10
11 VU = 0
Reserved
Reserved = 0 FLAG LINK
The REPORT LUNS command requests that the Target return the known LUN to the Initiator. The REPORT LUNS command should always be available and is unaffected by any reservations.
The Allocation Length must be at least 16 bytes. If the Allocation Length is less than 16 bytes, the Target will return a Check
Condition status with sense key of Illegal Request and additional sense code of Invalid Field in CDB. If the Allocation Length is not sufficient to contain the LUN values for all configured logical units, the Target shall report as many LUN values as will fit in the specified Allocation Length. This is not considered an error.
The REPORT LUNS command will send the LUN list in the subsequent Data Out Phase. The format of the LUN list is shown in the following table.
Table 167: LUN Reporting parameter list format
Byte
Bit
7 6 5 4 3
(MSB) LUN List Length = 8
2 1 0
0-3
(LSB)
4-7 Reserved
8-15
(MSB)
LUN = 0
(LSB)
The LUN list length shall contain the length in bytes of the LUN list that is available to be transferred. This product only supports one LUN. Therefore, the LUN list length must be set to 8. The only supported LUN is zero.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
206
18.32 REPORT SUPPORTED OPERATION CODES (A3/0C)
Table 168: REPORT SUPPORTED OPERATION CODES (A3/0C)
Byte
0
1
2
7
RCTD
6 5
Reserved = 0
Bit
4 3
Command Code = A3h
2 1
Service Action = 0Ch
Reserved = 0
Reporting Options
0
3
4-5
6-9
10
11
Requested Operation Code
Requested Service Action
Allocation Length
Reserved = 0
Reserved VU = 0 FLAG LINK
The REPORT SUPPORTED OPERATION CODES command requests information on commands that the drive supports.
The initiator may request a list of all operation codes and service actions supported, or the command support data for a specific command.
RCTD: A return command timeouts descriptor (RCTD) bit set to one specifies that the command timeouts descriptor (see
included in any parameter data returned.
Reporting Options specifies the information to be returned in the parameter data.
Table 169: Reporting Options
Reporting Options Description
000b
001b
010b
011b-111b
A list of all operation codes and service actions supported by the drive will be returned in the all_commands parameter data format. The Requested Operation Code field and Requested
Service Action field will be ignored.
The command support data for the operation code specified in the Requested Operation Code field will be returned in the one_command parameter data format. The Requested Service
Action field will be ignored. If the Requested Operation Code field specifies an operation code that has service actions, Check Condition status will be reported with a sense key of Illegal
Request and additional sense code of Invalid Field in CDB.
The command support data for the operation code and service action specified in the
Requested Operation Code field and Requested Service Action field will be returned in the one_command parameter data format. If the Requested Operation Code field specifies an operation code that does not have service actions, Check Condition status will be reported with a sense key of Illegal Request and additional sense code of Invalid Field in CDB.
Reserved
Requested Operation Code specifies the operation code of the command to be returned in the one_command parameter data format.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
207
Requested Service Action specifies the service action of the command to be returned in the one_command parameter data format.
Allocation Length specifies the number of bytes that have been allocated for the returned parameter data. If the length is not sufficient to contain all the parameter data, the first portion of the data shall be returned. The actual length of the parameter data may be determined from the Additional Length field in the parameter data.
18.32.1 All_commands parameter data format
The Report Supported Operation Codes all_command parameter data format begins with a four-byte header that contains the length in bytes of the parameter data, followed by a list of supported commands. Each command descriptor contains information about a single supported command CDB (i.e. one operation code and service action combination, or one non-service action operation code).
Table 170: All_command parameter data format
Byte
0-3
7 6
Bit
5 4 3
Command Data Length (n-3)
2 1 0
4 Command Descriptor 0
N Command Descriptor X
Each Command Descriptor contains information about a single supported command CDB.
Table 171: Command Descriptor format
Byte
0-3
1
2-3
4
7 6 5
Bit
4 3
Operation Code
Reserved = 0
Service Action
Reserved = 0
2 1 0
5 Reserved = 0 CTDP
Servactv
6-7
8-19
CDB Length
Command Timeouts Descriptor, if any (see 18.32.3)
Operation Code contains the operation code of a supported command.
Service Action contains a supported service action of the supported operation. If the operation code does not have a service action, the Service Action field will be set to zero.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
208
CTDP: A command timeouts descriptor present bit set to one indicates that the command timeouts descriptor (see
18.32.3) is included in this command descriptor. A CTDP bit set to zero indicates that the command timeouts descriptor is not included in this command descriptor.
Servactv set to zero indicates the operation code does not have service actions and the Service Action field should be ignored.
SERVACTV set to one indicates the operation code field has service actions and the contents of the Service Action field are valid.
CDB Length contains the length of the command CDB in bytes.
18.32.2 One_command parameter data format
The Report Supported Operation Codes one_command parameter data format contains information about the CDB and a usage map for bits in the CDB for the command specified by the Reporting Options, Requested Operation Code, and Requested Service Action fields in the Reported Supported Operation Codes CDB.
Table 172: One_command parameter data format
Byte
2-3
4-n
0
1 n+1 - n+12
7
CTDP
6 5
Bit
4 3
Reserved = 0
Reserved = 0
CDB Size (n-3)
CDB Usage Data
2
Command Timeouts Descriptor, if any (see 18.32.3)
1
Support
0
CTDP: A command timeouts descriptor present bit set to one indicates that the command timeouts descriptor is included in
included in this command descriptor.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
209
The Support field is defined in the table below.
Table 173: One_command parameter support field
Recording Option
000b
Description
Data about the requested command is not currently available. All data after byte 1 is not valid. A subsequent request for command support data may be successful.
001b
010b
011b
100b
101b
110b-111b
The requested command is not supported. All data after byte 1 is not valid.
Reserved.
The requested command is supported in conformance with the standard.
Reserved
The requested command is supported in a vendor specific manner.
Reserved.
CDB Size contains the size of the CDB Usage Data field in the parameter data, and the number of bytes in the CDB for the command requested.
CDB Usage Data contains information about the CDB for the command requested. The first byte of the CDB Usage Data field contains the operation code for the command. If the command contains a service action, then that service action code is returned in the same location as the Service Action field of the command CDB. All other bytes of the CDB Usage Data field contain a usage map for bits in the CDB for the command requested.
The bits in the usage map have a one-for-one correspondence to the CDB for the command requested. If the drive evaluates a bit in the CDB, the usage map will contain a one in the corresponding bit position. The usage map will contain a zero in the corresponding bit position for any field treated as ignored or reserved.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
210
18.32.3 Command timeouts descriptor format
18.32.3.1 Overview
based on the time from the start of processing for the command to its reported completion. Values returned in the command timeouts descriptor do not include times that are outside the control of the device server (e.g., prior commands with the
IMMED bit set to one in the CDB, concurrent commands from the same or different I_T nexuses, manual unloads, power-on self tests, prior aborted commands, commands that force cache synchronization, delays in the service delivery subsystem).
For commands that cause a change in power condition (Idle/Standby Powersave Modes), values returned in the command timeouts descriptor do not include the power condition transition time (e.g., the time to spinup rotating media).
Values returned in the command timeouts descriptor should not be used to compare products.
Table 174: Command timeouts descriptor format
7 6 1 0 Byte
0 - 1
2
3
4- 7
8 - 11
5 4 3
Descriptor Length (0Ah)
Reserved = 0
Command Specific
2
Nominal Command Processing Time-out
Recommended Command Time-out
The DESCRIPTOR LENGTH field indicates the number of bytes that follow in the command timeouts descriptor.
If no command specific time-out information is defined by this or the applicable command standard, the
COMMAND SPECIFIC field is reserved.
Table 175: Command timeouts descriptor Command Specific Field usage
Command Reference
WRITE BUFFER
18.32.3.2 WRITE BUFFER: command timeouts descriptor COMMAND SPECIFIC field usage
For the WRITE BUFFER command, the COMMAND SPECIFIC field usage is reserved for all modes except the following:
•Download microcode mode (04h);
•Download microcode and save mode (05h);
•Download microcode with offsets mode (06h);
•Download microcode with offsets and save mode (07h);
•Download microcode with offsets and defer activation mode (0Eh) only if the microcode is activated by an event other than an activate deferred microcode mode; and
•Activate deferred microcode mode (0Fh).
If the command timeouts descriptor describes one of the WRITE BUFFER modes listed in this subclause, then the
COMMAND SPECIFIC field indicates the maximum time, in one second increments, that access to the SCSI device is limited or not possible through any SCSI ports associated with a logical unit that processes a WRITE BUFFER command that specifies one of the named modes. A value of zero in the COMMAND SPECIFIC field indicates that the no maximum time is indicated.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
211
18.33 REPORT SUPPORTED TASK MANAGEMENT FUNCTIONS
(A3/0D)
Table 176: Report Supported Task Management Functions (A3/0D)
Byte
2-5
6-9
0
1
10
11
7
Reserved = 0
VU = 0
6 5
Bit
4 3
Command Code = A3h
2 1
Reserved = 0
Service Action = 0Dh
Allocation Length
Reserved = 0
Reserved = 0 Flag
0
Link
The REPORT SUPPORTED TASK MANAGEMENT FUNCTIONS command requests information on task management functions supported by the drive.
Allocation Length specifies the number of bytes that have been allocated for the returned parameter data. The allocation length must be at least four. If the allocation length is less than four, Check Condition Status will be returned with sense key of
Illegal Request and additional sense code of Invalid Field in CDB.
The format of the returned parameter data is shown below.
Bit
Byte
7 6 5 4 3 2 1 0
0
1
ATS ATSS CACAS CTSS LURS QTS
Reserved QUAS
TRS
QTSS
WAKES
ITNRS
2 Reserved
3 Reserved
ATS (Abort Task) bit set to one indicates that ABORT TASK is supported. An ATS bit of zero indicates that ABORT TASK is not supported.
ATSS (Abort Task Set) bit set to one indicates that ABORT TASK SET is supported. An ATSS bit of zero indicates that
ABORT TASK SET is not supported.
CACAS (Clear ACA) bit set to one indicates that CLEAR ACA is supported. A CACAS bit of zero indicates that CLEAR
ACA is not supported.
CTSS (Clear Task Set) bit set to one indicates that CLEAR TASK SET is supported. A CTSS bit of zero indicates that
CLEAR TASK SET is not supported.
LURS (Logical Unit Reset) bit set to one indicates that LOGICAL UNIT RESET is supported. An LUR bit of zero indicates that LOGICAL UNIT RESET is not supported.
QTS (Query Task) bit set to one indicates that QUERY TASK is supported. A QTS bit of zero indicates that QUERY TASK is not supported.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
212
TRS (Target Reset) bit set to one indicates that TARGET RESET is supported. A TRS bit of zero indicates that TARGET
RESET is not supported.
WAKES (Walk-up) bit set to one indicates that WAKEUP is supported. A WAKES bit of zero indicates that WAKEUP is not supported.
A QUERY UNIT ATTENTION supported (QUAS) bit set to one indicates the QUERY UNIT ATTENTION task management function (see SAM-4) is supported by the logical unit. A QUAS bit set to zero indicates the QUERY UNIT
ATTENTION task management function is not supported.
A QUERY TASK SET supported (QTSS) bit set to one indicates the QUERY TASK SET task management function
(see SAM-4) is supported by the logical unit. A QTSS bit set to zero indicates the QUERY TASK SET task management function is not supported.
An I_T NEXUS RESET supported (ITNRS) bit set to one indicates the I_T NEXUS RESET task management function (see SAM-4) is supported by the logical unit. An ITNRS bit set to zero indicates the I_T NEXUS RESET task management function is not supported.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
213
18.34 REQUEST SENSE (03)
Table 177: REQUEST SENSE (03)
Byte
2-3
4
0
1
5
7
VU = 0
6
Reserved = 0
5
Bit
4 3
Command Code = 03h
2
Reserved = 0
Reserved = 0
Allocation Length
Reserved = 0
1
FLAG
0
LINK
The REQUEST SENSE command requests the drive to transfer sense data.
If REQUEST SENSE command with an invalid LUN is received, the drive returns Good status and reports a sense key of Ille-
gal Request and an additional sense code of Logical Unit Not Supported.
If the drive has no sense data available to return, it shall return a sense key of No Sense and an additional sense code of No
Additional Sense Information.
Separate sense data is maintained by the device for each Initiator. Therefore, there is no requirement for an Initiator to expeditiously clear a Check Condition as this will not affect other initiators in a multi-Initiator system.
The drive will return the number of bytes in the allocation length or 32 bytes, whichever is less.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
214
18.35 RESERVE (16)
Table 178: RESERVE (16)
Byte
0
1
2
3-4
7 6 5
Bit
4 3
Command Code = 16h
2
Reserved = 0 3rdPty=0 3rd Party ID
Reservation Identification
(MSB) Extent List Length = 0
1 0
Ext=0
5 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The RESERVE command is used to reserve a LUN for an Initiator. This reservation can be either for the Initiator sending the command or for a third party as specified by the Initiator.
Extents are not supported by the drive. The Ext bit must be zero. If Ext bit is set to one, Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB. The Reservation Identification and
Extent List Length fields are ignored.
The Reserve command requests that the entire LUN be reserved for the Initiator until
• the reservation is superseded by another valid Reserve command from the Initiator that made the reservation.
•
• the reservation is released by a RELEASE command from the same Initiator.
a hard Reset condition occurs.
•
• a Target Reset message is received from any Initiator.
a power off/on cycle occurs.
3rdPty must be 0. Third Party reservations are not supported. If the 3rdPty bit is not zero, Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB.
3rd Party ID is ignored.
Only the Initiator that issued the Reserve command for a LUN may release the LUN, regardless of the 3rdPty option. This Initiator may also release the LUN by issuing another RESERVE command. This superseding RESERVE command releases the previous reservation when the new reservation is granted.
Reservation queuing is not supported by the drive. If a LUN is reserved and a RESERVE command is issued from a different
Initiator, the Target responds with a RESERVATION CONFLICT.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
215
18.36 RESERVE (56)
Table 179: RESERVE (56)
Byte
2
3
0
1
7 6
Reserved = 0
5
Bit
4 3
Command Code = 56h
2
3rdPty=0 Reserved
Reservation Identification
Third Pay Device ID
1 0
Ext=0
4-6 Reserved = 0
(MSB) Extent List Length = 0
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The RESERVE command is used to reserve a LUN for an Initiator. This reservation can be either for the Initiator sending the command or for a third party as specified by the Initiator.
Extents are not supported by the drive. The Ext bit must be zero. If Ext bit is set to one, Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB. The Reservation Identification and
Extent List Length fields are ignored.
The Reserve command requests that the entire LUN be reserved for the Initiator until
• the reservation is superseded by another valid Reserve command from the Initiator that made the reservation.
•
• the reservation is released by a RELEASE command from the same Initiator.
a hard Reset condition occurs.
•
• a Target Reset message is received from any Initiator.
a power off/on cycle occurs.
3rdPty must be 0. Third Party reservations are not supported. If the 3rdPty bit is not zero, Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB.
3rd Party ID is ignored.
Only the Initiator that issued the Reserve command for a LUN may release the LUN, regardless of the 3rdPty option. This Initiator may also release the LUN by issuing another RESERVE command. This superseding RESERVE command releases the previous reservation when the new reservation is granted.
Reservation queuing is not supported by the drive. If a LUN is reserved and a RESERVE command is issued from a different
Initiator, the Target responds with a RESERVATION CONFLICT.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
216
18.37 REZERO UNIT (01)
Table 180: REZERO UNIT (01)
Byte
0
1
7 6
Reserved = 0
5
Bit
4 3
Command Code = 01h
2
Reserved = 0
1
2-4 Reserved = 0
5 VU = 0 Reserved = 0
The REZERO UNIT command requests that the Target seek LBA 0.
0
FLAG LINK
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
217
18.38 SEEK (6) - (0B)
Table 181: SEEK (6) - (0B)
Byte
7 6 5
Bit
4 3
Command Code = 0Bh
Logical Block Address
2
(MSB) LBA
1 0
0
1
2
3
4
5
Reserved = 0
VU = 0
Reserved = 0
Reserved = 0 FLAG
(LSB)
LINK
The SEEK (6) command requests the drive to seek the specified LBA. If the LBA is greater than the value returned by the
READ CAPACITY command, the Drive returns a Check Condition status with a sense key of Illegal Request and an additional sense code of Invalid Field in CDB.
18.39 SEEK (10) - (2B)
Table 182: SEEK (10) - (2B)
Byte
0
1
7 6
Reserved = 0
5
Bit
4 3
Command Code = 2Bh
2
Reserved = 0
1 0
0
(MSB)
Logical Block Address
2-5
(LSB)
6-8
9 VU = 0
Reserved = 0
Reserved = 0 FLAG LINK
The SEEK (10) command requests the drive to seek the specified LBA. If the LBA is greater than the value returned by the
READ CAPACITY command, the Drive returns a Check Condition status with a sense key of Illegal Request and an additional sense code of Invalid Field in CDB.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
218
18.40 SEND DIAGNOSTIC (1D)
Table 183: SEND DIAGNOSTIC (1D)
Byte
0
1
2
3-4
7 6 5
Bit
4 3
Command Code = 1Dh
Function Code PF RSVD =0
Reserved = 0
(MSB) Parameter List Length
2
SlfTst
1
Dev0fl
0
Unt0fl
5 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The SEND DIAGNOSTIC command requests the drive to perform its self-diagnostic test or to perform a function based on a page of information sent in a Data Out phase during the command.
• PF (Page Format) bit set to one indicates the data sent by the Initiator conform to the page structure as specified in
SCSI standard. This bit is ignored by the Target if the SlfTst bit is set.
• SlfTst set to one indicates that the device performs its default self-test. If SlfTst is one, the Function code field is ignored. If SlfTst is set to zero, the action to perform is specified in Function code field.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
219
Table 184: SEND DIAGNOSTIC Function Code (1D)
Value Function name
000b
NA
Description
Value to be used when the SlfTst bit is set to one or if the
SEND DIAGNOSTIC command is not invoking one of the other self-test function codes.
001b
010b
011b
Background Short self-test
Background extended self-test
NA
The device server starts its short self-test routine in background mode.
The device server starts its extended self-test routine in background mode.
Reserved.
100b
101b
110b
Abort background self-test
Foreground short self-test
Foreground extended self-test
Abort the current self-test in the background mode. This value is only valid if a previous SEND DIAGNOSTIC command specified a background self-test function and that function has not been completed.
The device server starts its short self-test routine in the foreground mode. This self-test will complete in two minutes or less.
The device server starts its extended self-test routine in the foreground mode .The completion time for this test is reported in Mode Page 0Ah (refer to section 17.11.9 "Mode
Page 0A).
111b
•
•
•
Reserved.
DevOfl is ignored by the Target for compatibility.
UntOfl is ignored by the Target for compatibility.
Parameter List Length must be 0 when the SlfTst bit is one. Otherwise, Check Condition status will be generated with a sense key of Illegal Request and additional sense of Invalid Field in CDB. If the SlfTst bit is zero, it should be set to the length of the page to be transferred in the DATA OUT phase of the command. If it does not match the expected length of the page a Check Condition status will be also generated with a sense key of Illegal Request and additional sense of Invalid Field in CDB.
If the motor is not running at the correct speed when the command is received, it is rejected by a Check Condition status with a Not Ready sense key.
If a fault is detected during the default or foreground self-test, a Check Condition is reported as an end status. If a fault is detected during the background self-test, it is logged in the log page for later retrieval by a LOG SENSE command.
See Section 21.19 "Diagnostics" on page 292 for a detailed listing of operations carried out by the SEND DIAGNOSTIC command and Power on Diagnostics.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
220
18.40.1 Send Diagnostic Page 0
This page requests that the drive return a list of supported pages on the next RECEIVE DIAGNOSTICS command.
Table 185: Diagnostic Page 0
Byte
0
1
2 - 3
7 6 5
Bit
4 3
Page Code = 0
Reserved = 0
Page Length = 0
2 1 0
0
1
2 - 3
4
5
6
18.40.2 Send Diagnostic Page 3F
Table 186: Diagnostic Page 3F
Byte
7
8 - 10
11
12 - 19
20 - 31
7
Rsvd=0
6 5
Bit
4 3
Page Code = 3F
2 1 0
Reserved = 0 Protocol Identifier = 6
Page Length = 1Ch
Phy Identifier
Phy Test Function
Phy Test
Pattern
SATA =
0
Phy Test Pattern
Phy Test Pattern
SSC
Phy Test Pattern Physical Link Rate
Reserved = 0
Phy Test Pattern Dwords Control
Phy Test Pattern Dwords
Reserved = 0
•
•
Phy Identifier specifies the selected phy that is to perform or to stop performing a phy test function. If the phy does not exist, Check Condition status will be returned with a sense key of Illegal Request and additional sense of Invalid
Field in Parameter List.
Phy Test Function specifies the phy test function to be performed. If an unsupported function is requested, Check
Condition status will be returned with a sense key of Illegal Request and additional sense of Invalid Field in Parameter List.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
221
Phy Test Function
00h
01h
02h-FDh
FEh
FFh
Description
If the selected phy is performing a phy-test function, then the selected phy stop performing the phy test function and originate a link reset sequence. If the selected phy is not performing a phy test function, then this function as no effect on the selected phy.
If the selected phy is not performing a phy test function, the selected phy will be set to transmit the phy test pattern specified by the Phy Test Pattern field at the physical link rate specified by the Phy Test Pattern Physical
Unsupported
Analog Loopback - If the selected phy is not performing a phy test function, the selected phy will be set to retransmit the data pattern received by the phy receiver without retime
Retime Loopback- If the selected phy is not performing a phy test function, the selected phy will be set to retransmit the retimed data pattern received by the phy receiver
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
222
• Phy Test Pattern specifies the phy test pattern to be transmitted when the Phy Test Function is set to 01h. If an unsupported value is specified, Check Condition status will be returned with a sense key of Illegal Request and additional sense of Invalid Field in Parameter List.
Phy Test Pattern
00h
Description
Reserved
JTPAT
01h
02h
03h-0Fh
10h
11h
12h
13h
14h - 3Fh
40h
41h - EFh
F0h
CJTPAT
Reserved
TRAIN (Not Supported)
TRAIN_DONE (Not Supported)
IDLE
SCRAMBLE_0
Reserved
TWO_DWORDS
Reserved
PRBS7 (DcC un-balanced version)
F0h-FFh
Reserved
•
•
Phy Test Pattern Physical Link Rate specifies the physical link rate at which the phy test pattern shall be transmitted. Supported values are 8h for 1.5 Gbps, 9h for 3.0 Gbps, and Ah for 6.0 Gbps. If an unsupported value is specified,
Check Condition status will be returned with a sense key of Illegal Request and additional sense of Invalid Field in
Parameter List.
• Phy Test Pattern SATA bit set to 0 indicates that the phy transmits the phy test pattern as a SAS phy. If this bit is set to 1, Check Condition status will be returned with a sense key of Illegal Request and additional sense of Invalid Field in Parameter List
Phy Test Pattern SSC field specifies the SSC modulation type which the phy test pattern will be transmitted. If an unsupported SSC modulation type is specified, Check Condition status will be returned with a sense key of Illegal
Request and additional sense of Invalid Field in Parameter List.
Note: The drive's SSC hardware is shared between both ports. In order for the drive to transmit SSC, both ports must be configured with SSC enabled. When Phy Test Pattern SSC is specified, drive will apply the SSC modulation type to both ports in order for spreading to occur. This could cause link disruption if the connected HBA is unable to receive a SSC signal.
Phy Test Pattern SSC Code
00h
01h
Description
No SSC
Center-spreading SSC (Not supported)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
223
10h
11h
Down-spreading SSC
Reserved
• Phy Test Pattern Dwords Control controls whether the bytes in the Phy Test Pattern Dwords field are sent as control characters or data characters.
Phy Test Pattern Dwords
Control
00h
08h
80h
Descripton
Each byte in the Phy Test Pattern Dwords field shall be sent as a data character (i.e., Dxx.y)
The fifth byte in the Phy Test Pattern Dwords field shall be sent as a control character (i.e., Kxx.y). Each other byte shall be sent as a data character viothout scrambling.
The first byte in the Phy Test Pattern Dwords field shall be sent as a control character. Each other byte shall be sent as a data character viothout scrambling.
88h
All others
The first and fifth bytes in the Phy Test Pattern Dwords field shall be sent as a control character. Each other byte shall be sent as a data character viothout scrambling.
Reserved
• Phy Test Pattern Dwords contains the two Dwords that are sent during a TWO_DWORDS test pattern.
18.40.3 Send Diagnostic Page 40
This allows the Initiator to translate a LBA or physical sector address to the other format. The address to be translated is passed to the Target with the SEND DIAGNOSTIC command and the results are returned to the Initiator by the RECEIVE DIAG-
NOSTICS command.
The Target will read the parameter list from the Initiator, and, if no errors are detected in the parameter list, Good status will
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
224
be returned. The data translation will be performed upon receipt of the RECEIVE DIAGNOSTICS command.
Table 187: Diagnostic Page 40
Bit
Byte
0
1
2-3
4
5
6-13
7 6 5 4 3
Page Code = 40h
Reserved = 0
Page Length = 0Ah
Reserved = 0
Reserved = 0
Address to Translate
2 1
Supplied format
Translate format
0
Supplied Format may take one of the following three values:
- 000b Block format
- 100b Bytes From Index format
- 101b Physical Sector format
It specifies the format in which the address has been supplied.
• Translate Format specifies the format that the address should be translated into. If the supplied format is the Block format, the Translate format must be either Bytes from Index or Physical Sector format. If the supplied format is the
Bytes from Index or Physical Sector format, the Translate format must be Block format. If either of the format fields is invalid or they specify the same format, the command will terminate with Check Condition status with a sense code of Illegal Request and Illegal Field in Parameter List.
• Address to Translate contains the address to translate. If the logical block format is specified, the first four bytes of the field (bytes 6 to 9) contain the LBA and the remainder must be zero. For the physical format the address must be specified as follows.
Table 188:
Address to translate
Bit
Byte
6-8
7 6 5 4 3
Cylinder Number
2 1 0
9 Head Number
10-13 Sector Number or Bytes from Index
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
225
0
1
2
3
4-5
18.41 SET DEVICE IDENTIFIER (A4/06)
Table 189: SET DEVICE IDENTIFIER (A4/06)
Bit
Byte
7 6 5 4 3 2 1
Reserved = 0
Command Code = A4h
Service Action = 06h
Reserved = 0
Reserved = 0
Restricted = 0
(MSB)
6-9 Parameter List Length
0
(LSB)
10 Reserved = 0
11 VU = 0 Reserved = 0 FLAG LINK
The SET DEVICE IDENTIFIER command requests that the device identifier information be set to the value received in the
SET DEVICE IDENTIFIER parameter list.
On successful completion of a SET DEVICE IDENTIFIER command a unit attention is generated for all Initiators except the one that issued the service action. When reporting the unit attention condition the additional sense code is set to Device Identi-
fier Changed.
• Parameter List Length field specifies the length in bytes of the Identifier that is transferred from the host system to the Target. The maximum value for this field is 512 bytes. A parameter list length of zero indicates that no data is transferred, and that subsequent REPORT DEVICE IDENTIFIER commands return an Identifier length of zero.
The SET DEVICE IDENTIFIER parameter list contains the identifier to be set by the addressed logical unit.
Table 190: SET DEVICE IDENTIFIER, Parameter List
Bit
Byte
7 6 5 4
0-n Identifier
3 2 1 0
The IDENTIFIER field is a vendor specific value, to be returned in subsequent REPORT DEVICE IDENTIFIER commands.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
226
18.42 START STOP UNIT (1B)
Table 191: START STOP UNIT (1B)
Byte
0
1
7 6 5
Bit
4 3
Command Code = 1Bh
Reserved = 0
2 1 0
Immed
3
4
Reserved = 0
Power Condition
Reserved = 0
Power Condition Modifier
Reserved=0
LoEj
= 0
FLAG
Start
LINK 5 VU = 0
The START STOP UNIT command is used to spin up or stop the spindle motor.
• Immed bit is to specify
0 status is to be returned at the end of the operation.
•
1 Good status shall always be returned immediately after command has been received. The TEST UNIT
READY command may be used to determine when the drive becomes ready after a spin-up.
Power Conditions and Power Condition Modifier fields are used to specify that the logical unit be placed into a
START bit shall be ignored.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
227
Table 192: Power Conditions:
Power
Condition
Code
Name
Power
Condition
Modifier
Description
5h
6h
7h
8h - 9h
Ah
Ah
Ah
Bh
Bh all Others
2h
3h
3h
4h
0h
1h
2h
2h
START_VALID
ACTIVE
IDLE_A
IDLE_B
IDLE_C
STANDBY_Z
STANDBY_Y
Reserved
Obsolete
Reserved
LU_CONTROL
Reserved
FORCE_IDLE_A
FORCE_IDLE_B
FORCE_IDLE_C
FORCE_STANDBY_Z
FORCE_STANDBY_Y
Reserved
0h
0h
0h
1h
2h
0h
1h
0h
0h-Fh
0h
0h
0h
0h
1h
2h
0h
1h
0h
Process the START bit
Place the device into the active power condition
Place the device into the idle-a power condition
Place the device into the idle-b power condition
Place the device into the idle-c power condition
Place the device into the standby_Z power condition
Place the device into the standby_Y power condition
Reserved
Obsolete
Reserved
Transfer control of power conditions to the logical unit
Reserved
Force the idle_a condition timer to zero.
Force the idle_b condition timer to zero.
Force the idle_c condition timer to zero.
Force the standby_z condition timer to zero.
Force the standby_y condition timer to zero.
Reserved
If the START STOP UNIT command is processed with the POWER CONDITION field set to ACTIVE, IDLE, or
STANDBY, then: a) the logical unit shall transition to the specified power condition; and b) the device server shall disable the idle condition timer if it is active and disable the standby condition timer if it is active until another START STOP UNIT command is processed that returns control of the power condition to the logical unit, or a logical unit reset occurs.
c) if under initiator control, the two minute floor and 60 head unloads per 24 hour period limits do not apply as they do when under logical unit/timer control
If the START STOP UNIT command is processed with the POWER CONDITION field set to LU_CONTROL, then the device server shall initialize and start all of the idle condition timers and standby condition timers that are supported and enabled.
If the START STOP UNIT command is processed with the POWER CONDITION field set to LU_CONTROL, then the device server shall enable the idle condition timer if it is active and disable the standby condition timer if it is active.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
228
If the START STOP UNIT command is processed with the POWER CONDITION field set to FORCE_IDLE_0 or
FORCE_STANDBY_0, then the device server shall: a) force the specified timer to zero, cause the logical unit to transition to the specified power condition, and return control of the power condition to the device server; or b) terminate a START STOP UNIT command that selects a timer that is not supported by the device server or a timer that is not active. The device server shall terminate the command with CHECK CONDITION status with the sense key set to ILLE-
GAL REQUEST and the additional sense code set to INVALID FIELD IN CDB.
It is not an error to specify that the logical unit transition to its current power condition. See Mode Page 1A (Power Control) for more information on idle and standby power conditions.
•
•LoEj is not supported by the drive and must be set to 0.
Start bit is to specify:
0 stop the spindle
1 start the spindle
Note:
Once the drive has become ready (after a power on), the START STOP UNIT command can be used without any errors regardless of the state of the motor: stopped or spinning.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
229
18.43 SYNCHRONIZE CACHE (10) - (35)
Table 193: SYNCHRONIZE CACHE (10) - (35)
Byte
0
7 6 5
BIT
4 3
Command Code = 35h
2 1 0
1 Reserved = 0 Reserved = 0
Immed
= 0
Obsolete
(MSB)
Logical Block Address
2-5
(LSB)
6 Reserved = 0
(MSB) Number of Blocks
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The SYNCHRONIZE CACHE command ensures that logical blocks in the cache have their most recent data value recorded on the media.
• Logical Block Address is to specify where the operation is to begin.
•
•
Immed (immediate) must be zero. An immediate bit of zero indicates that the status shall not be returned until the operation has completed. If the Immed bit is set to one, the drive returns a Check Condition status. The sense key shall be set to Illegal Request and the additional sense code shall be set to Invalid Field in CDB.
Number of Blocks specifies the total number of contiguous logical blocks within the range. Number of Blocks of zero indicates that all remaining logical blocks on the logical unit shall be within the range.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
230
18.44 SYNCHRONIZE CACHE (16) - (91)
Table 194: Synchronize Cache (16) - (91)
Byte
0
7 6 5
BIT
4 3
Command Code = 91h
1 Reserved = 0
2 1 0
Immed
= 0
Rsvd=
0
2-9 Logical Block Address
10-13
14
15
Number of Blocks
Reserved = 0
Reserved = 0 VU = 0 FLAG LINK
The SYNCHRONIZE CACHE command ensures that logical blocks in the cache have their most recent data value recorded on the media. See the SYNCHRONIZE CACHE (10) description for definitions of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
231
18.45 TEST UNIT READY (00)
Table 195: TEST UNIT READY (00)
Byte
0
1
7 6
Reserved = 0
5 4
Bit
3
Command Code = 00h
2
Reserved = 0
1 0
2-4 Reserved = 0
5 VU = 0 Reserved = 0 FLAG LINK
The TEST UNIT READY command allows the Initiator to check if the drive is READY. The SCSI specification defines
READY as the condition where the device will accept a media-access command without returning Check Condition status.
The drive will first verify that the motor is spinning at the correct speed. If the spindle motor is not spinning at the correct speed, Check Condition status is returned with sense key of Not Ready. If the motor is spinning at the correct speed, the drive accepts normal media access commands.
The TEST UNIT READY command is not intended as a diagnostic. No self diagnostic is performed by the device as a result of this command.
The TEST UNIT READY command has special significance for power sequencing using the UNIT START command with an
Immediate bit of one. In this mode the UNIT START command returns Task Complete status before the completion of motor spin-up and expects the initiator to issue TEST UNIT READY commands to determine when the motor has reached the proper speed.
Note:
The spindle automatically starts in automatic spin-up mode. The drive does not execute any commands other than
TEST UNIT READY, INQUIRY, or REQUEST SENSE command until the Power On sequence is complete. The drive will return Check Condition status with Not Ready sense key and In Process of Becoming Ready sense code for all other commands during the Power On period.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
232
18.46 VERIFY (2F)
Table 196: VERIFY (2F)
Byte
0
7 6 5
BIT
4 3
Command Code = 2Fh
2 1 0
1 VRPROTECT DPO Reserved = 0
Byte
Chk
RSVD
= 0
(MSB)
Logical Block Address
2-5
(LSB)
6 Reserved = 0
(MSB) Verification Length
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The VERIFY command requests that the drive verify the data written on the media. A verification length of zero indicates that no data will be transferred. This condition is not considered an error.
• ByteChk bit set to zero indicates that the data is read from the disk and verified using ECC.If an ECC error is detected in the verify process, Check Condition status is returned with sense key set to Medium Error. ByteChk bit set to one indicates that byte-by-byte comparison is performed between the data on the disk and data transferred from the initiator during the data-out phase.
•
If the comparison is unsuccessful, the command is terminated with Check Condition status and the sense key is set to Miscompare.
DPO (Disable Page Out) bit of one indicates that the data accessed by this command is to be assigned the lowest priority for being written into or retained by the cache. A DPO bit of one overrides any retention priority specified in the
Mode Select Page 8 Caching Parameters. A DPO bit of zero indicates the priority is determined by the retention priority. The Initiator should set the DPO bit when the blocks read by this command are not likely to be read again in the near future.
If caching is enabled, the command performs an implied FUA and an implied Synchronize Cache before starting the VERIFY.
This ensures that the medium, not the cache, is being verified.
The command stops on Check Condition and reports the LBA in error. The command must be reissued, starting with the next
LBA, to verify the remainder of the Drive.
The Verification Length is the number of blocks to check.
The data (if any) from the data-out phase and the data from the media are not retained in the cache. Therefore, the DPO bit has no effect on this command and is ignored.
VRPROTECT defines the manner in which protection information read from disk shall be checked during processing of the command. Protection information is stored on disk, and may be validated using the drive's internal checking algorithms, and also byte-by-byte compared using data from the initiator when ByteChk=1.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
233
If the drive is not formatted with protection information, VRPROTECT must be set to 000b, else Check Condition status will be returned with sense key of Illegal Request and additional sense code of Invalid Field in CDB.
VRPROTECT=000b
If the drive is not formatted with protection information, only user data is verified.
If the drive is formatted with protection information:
- Logical Block Guard is checked
- Logical Block Application Tag is checked (applies to VERIFY(32) command only)
- Logical Block Reference Tag is checked
VRPROTECT=001b
- Logical Block Guard is checked
- Logical Block Application Tag is checked (applies to VERIFY(32) command only)
- Logical Block Reference Tag is checked
VRPROTECT=010b
- Logical Block Guard is not checked
- Logical Block Application Tag is checked (applies to VERIFY(32) command only)
- Logical Block Reference Tag is checked
VRPROTECT=011b
- Logical Block Guard is not checked
- Logical Block Application Tag is not checked
- Logical Block Reference Tag is not checked
VRPROTECT=100b
- Logical Block Guard is checked
- Logical Block Application Tag is not checked
- Logical Block Reference Tag is not checked
VRPROTECT=101b, 110b, 111b
These values are reserved. Check Condition status will be returned with sense key of Illegal Request and additional sense code of Invalid Field in CDB.
If a check of the protection information fails, Check Condition status will be returned with sense key of Aborted Command and additional sense code indicating which protection field check failed.
If ByteChk=1, the drive's internal checking of protection information is done only when VRPROTECT=000b and the drive is formatted with protection information
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
234
If ByteChk=1, and VRPROTECT is not set to 000b, checking of protection information is performed on the fields described above as a byte-by-byte comparison against the data transferred to the drive by the initiator during the Data Out phase.
Refer to the ANSI T10 standards for additional details of protection information.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
235
18.47 VERIFY (12) - (AF)
Table 197: Verify (12) - (AF)
Byte
0
7 6 5
BIT
4 3
Command Code = AFh
2 1 0
1 VRPROTECT DPO FUA
Reserv ed=0
Byte
Chk
Reserv ed = 0
(MSB)
Logical Block Address
2-5
(LSB)
(MSB)
6 - 9 Verification Length
(LSB)
10
11 VU = 0
Reserved = 0
Reserved = 0 FLAG LINK
The VERIFY(12) command causes the drive to verify data written on the media. See the VERIFY(10) description for the definitions of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
236
18.48 VERIFY (16) - (8F)
Table 198: Verify (16) - (8F)
Byte
0
1
7 6
(MSB)
VRPROTECT
5 4
DPO
Bit
3
Command Code = 08Fh
2
Reserved = 0
1
Byte
Chk
0
Rsvd
= 0
2-9 Logical Block Address
(LSB)
(MSB)
10-13 Verification Length
(LSB)
14
15 VU = 0
Reserved = 0
Reserved = 0 FLAG LINK
The VERIFY command requests that the drive verify the data written on the media. See the VERIFY (10) description for the definitions of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
237
18.49 VERIFY (32) - (7F/0A)
Table 199: Verify (32) - 7F/0A)
2-5
6
0
1
7
8 - 9
Byte
10
11
7
VU = 0
6
Reserved = 0
RDPROTECT
5
Bit
4 3
Command Code = 07Fh
DPO
2
Reserved = 0
1
Reserved = 0
Reserved = 0
FLAG
Group Number = 0
Additional CDB Length = 18h
Service Action = 000Ah
ByteC hk
Reserved = 0
0
LINK
Reserv ed=0
(MSB)
12 - 19 Logical Block Address
(LSB)
(MSB)
20 - 23 Expected Initial Logical Block Reference Tag
(LSB)
(MSB)
24 - 25 Expected Logical Block Application Tag
(LSB)
26 - 27
(MSB)
Logical Block Application Tag Mask
(LSB)
(MSB)
28 - 31 Verification Length
(LSB)
The VERIFY command requests that the verify the data written on the media. Each logical block includes user data and may include protection information, based on the VPROTECT field and the drive format.
If the drive is formatted with type 2 protection (PROT_EN=1 and P_TYPE=001b in the READ CAPACITY (16) parameter data), then this command will be processed normally. Any other protection types will result in Check Condition status to be returned with sense key of Illegal Request and additional sense code of Invalid Command Operation Code
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
238
The Expected Initial Logical Block Reference Tag field contains the value of the Logical Block Reference Tag field expected in the protection information of the first logical block accessed by the command.
If the ATO bit is set to one in Mode Page 0Ah, the Logical Block Application Tag Mask field contains a value that is a bit mask for enabling the checking of the Logical Block Application Tag field in the protection information for each logical block accessed by the command. A Logical Block Application Tag Mask bit set to one enables the checking of the corresponding bit of the Expected Logical Block Application Tag field with the corresponding bit of the Logical Block Application Tag field in the protection information.
If the ATO bit is set to zero, the Logical Block Application Tag Mask field and the Expected Logical Block Application Tag field are ignored.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
239
18.50 WRITE (6) - (0A)
Table 200: WRITE (6) - (0A)
Byte
0
1
7 6
Reserved = 0
5
Bit
4 3
Command Code = 0Ah
2
(MSB) LBA
Logical Block Address
1 0
2-3
(LSB)
4
5 VU = 0
Transfer Length
Reserved = 0 FLAG LINK
The WRITE command requests the drive to write the specified number of blocks of data (Transfer Length) from the Initiator to the medium starting at the specified Logical Block Address (LBA).
See Section 18.15 READ (6) - (08)” on page 176 for the parameters.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
240
18.51 WRITE (10) - (2A)
Table 201: WRITE (10) - (2A)
Byte
0
7 6 5
Bit
4 3
Command Code = 2Ah
2 1 0
1 WRPROTECT DPO FUA Rsvd=0
FUA_N
V
Obsolete
(MSB)
Logical Block Address
2-5
(LSB)
6 Reserved = 0
(MSB Transfer Length
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The WRITE (10) command requests that the drive write the data transferred from the Initiator. This command is processed like the standard WRITE (6) - (0A) command except for the longer transfer length.
• Transfer Length is the number of contiguous blocks to be transferred. If the transfer length is zero, the seek occurs, but no data is transferred. This condition is not considered an error.
•
• DPO (Disable Page Out) bit of one indicates that the data accessed by this command is to be assigned the lowest priority for being written into or retained by the cache. A DPO bit of one overrides any retention priority specified in the
Mode Select Page 8 Caching Parameters. A DPO bit of zero indicates that the priority is determined by the retention priority. The Initiator should set the DPO bit when the blocks written by this command are not likely to be read in the near future.
FUA (Force Unit Access) bit of one indicates that the Target must write the data to the media before returning Good status. A FUA bit of zero indicates that the Target may return Good status prior to writing the data to the media.
• FUA_NV (Force Unit Access Non-Volatile Cache) may be set to 0 or 1, but is ignored since NV_SUP=0 in Inquiry
Page 86h.
If a WRITE(6) command is received after protection information is enabled, the drive will set the protection information as follows as it writes each block to disk:
• the Logical Block Guard field is set to a properly generated CRC
• the Logical Block Reference Tag field is set to:
- the least significant four bytes of the LBA, if the drive is formatted with type 1 protection (PROT_EN=1 and
P_TYPE=000b in the READ CAPACITY (16) parameter data) ; or
- FFFFFFFFh, if the drive is formatted with type 2 protection (PROT_EN=1 and P_TYPE=001b in the READ
CAPACITY (16) parameter data)
• the Logical Block Application Tag field is set to
- FFFFh, if the ATO bit is set to one in Mode Page 0Ah ; or
- Any value, if the ATO bit is set to zero
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
241
WRPROTECT defines the manner in which protection information written to disk shall be checked during processing of the command. Protection information may be transmitted to the drive with the user data, based on the WRPROTECT bit and the drive format.
If the drive is not formatted with protection information, WRPROTECT must be set to 000b, else Check Condition status will be returned with sense key of Illegal Request and additional sense code of Invalid Field in CDB.
WRPROTECT=000b
Protection information is not transmitted to the drive.
If the drive is formatted with protection information, the drive will write protection information to disk based on its internal algorithms.
WRPROTECT=001b
- Protection information is transmitted to the drive with the user data
- Logical Block Guard is checked
- Logical Block Application Tag is checked (applies to WRITE (32) command only)
- Logical Block Reference Tag is checked
WRPROTECT=010b
- Protection information is transmitted to the drive with the user data
- Logical Block Guard is not checked
- Logical Block Application Tag is checked (applies to WRITE(32) command only)
- Logical Block Reference Tag is checked
WRPROTECT=011b
- Protection information is transmitted to the drive with the user data
- Logical Block Guard is not checked
- Logical Block Application Tag is not checked
- Logical Block Reference Tag is not checked
WRPROTECT=100b
- Protection information is transmitted to the drive with the user data
- Logical Block Guard is checked
- Logical Block Application Tag is not checked
- Logical Block Reference Tag is not checked
WRPROTECT=101b, 110b, 111b
These values are reserved. Check Condition status will be returned with sense key of Illegal Request and additional sense code of Invalid Field in CDB.
If a check of the protection information fails, Check Condition status will be returned with sense key of Aborted Command and additional sense code indicating which protection field check failed.
Refer to the ANSI T10 standards for additional details of protection information.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
242
18.52 WRITE (12) - (AA)
Table 202: Write (12) - (AA)
Byte
0
1
7 6
WRPROTECT
5
Bit
4 3
Command Code = AAh
DPO FUA
2
Rsvd=0
1
FUA_NV
0
Rsvd=0
(MSB)
2-5 Logical Block Address
(LSB)
(MSB)
6-9 Transfer Length
(LSB)
10
11 VU = 0
Reserved=0
Reserved = 0 FLAG LINK
The WRITE(12) command causes the drive to write data from the initiator to the media. See the WRITE(10) description for the definitions of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
243
18.53 WRITE (16) - (8A)
Table 203: Write (16) - (8A)
Byte
0
1
7 6
WRPROTECT
5
Bit
4 3
Command Code = 8Ah
DPO FUA
2
Rsvd=0
1
FUA_NV
0
Rsvd=0
(MSB)
2-9 Logical Block Address
(LSB)
(MSB)
10-13 Transfer Length
(LSB)
14
15
Reserved = 0
Reserved = 0 VU = 0 FLAG LINK
The WRITE(16) command causes the drive to write data from the initiator to the media. See the WRITE(10) description for the definitions of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
244
8-9
10
6
7
11
Byte
0
1
2-5
18.54 WRITE (32) - (7F/0B)
Table 204: Write (32) - (7F/0B)
7
VU = 0
6
Reserved = 0
WRPROTECT
5
Bit
4 3 2 1
Command Code = 7Fh
Reserved = 0
Reserved = 0
FLAG
Group Number = 0
Additional CDB Length = 18h
Service Action = 000Bh
DPO FUA Rsvd=0
Reserved = 0
FUA_NV
(MSB)
12-19 Logical Block Address
0
LINK
Rsvd=0
(LSB)
(MSB)
20-23 Expected Initial Logical Block Reference Tag
(LSB)
(MSB)
24-25 Expected Logical Block Application Tag
(LSB)
(MSB)
26-27 Logical Block Application Tag Mask
(LSB)
(MSB)
28-31 Transfer Length
(LSB)
The WRITE command requests that the drive write data transferred from the initiator to disk. Each logical block transferred
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
245
includes user data and may include protection information, based on the WRPROTECT field and the drive format. Each logical block written includes user data and, if the drive is formatted with protection information enabled, protection information.
If the drive is formatted with type 2 protection (PROT_EN=1 and P_TYPE=001b in the READ CAPACITY (16) parameter data), then this command will be processed normally. Any other protection types will result in Check Condition status to be returned with sense key of Illegal Request and additional sense code of Invalid Command Operation Code
The Expected Initial Logical Block Reference Tag field contains the value of the Logical Block Reference Tag field expected in the protection information of the first logical block accessed by the command.
If the ATO bit is set to one in Mode Page 0Ah, the Logical Block Application Tag Mask field contains a value that is a bit mask for enabling the checking of the Logical Block Application Tag field in the protection information for each logical block accessed by the command. A Logical Block Application Tag Mask bit set to one enables the checking of the corresponding bit of the Expected Logical Block Application Tag field with the corresponding bit of the Logical Block Application Tag field in the protection information.
If the ATO bit is set to zero, the Logical Block Application Tag Mask field and the Expected Logical Block Application Tag field are ignored.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
246
18.55 WRITE AND VERIFY (10) - (2E)
Table 205: WRITE AND VERIFY (10) - (2E)
Byte
0
7 6 5
Bit
4 3
Command Code = 2Eh
2 1 0
1 WRPROTECT DPO Reserved = 0
Byte
Chk
Obsolete
(MSB)
Logical Block Address
2-5
(LSB)
6 Reserved = 0
(MSB) Transfer Length
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
WRITE AND VERIFY command requests that the drive writes the data transferred from the Initiator to the medium and then verify that the data is correctly written. If caching is enabled, an implied FUA (Force Unit Access) and an implied Synchronize
Cache are performed before starting the operation. This insures that data from the disk, not the cache, is verified.
• See the WRITE (10) command description for the definition of the WRPROTECT field.
•
•
•
Transfer Length is the number of contiguous blocks to transferred. If the transfer length is zero, the seek occurs, but no data is transferred. This condition is not considered an error.
If caching is enabled, the command performs an implied FUA and an implied Synchronize Cache before starting the operation. This insures that the medium, not the cache, is being verified.
ByteChk bit set to zero indicates that the data is read back from the disk and verified using ECC after the successful write operation. If an ECC error is detected in the verify process, Check Condition status is returned with sense key set to Medium Error. ByteChk bit set to one indicates that byte-by-byte comparison is performed between data on the disk starting the block specified in LBA field and data transferred from the Initiator.
If the comparison is unsuccessful, the command is terminated with Check Condition status and the sense key is set to Miscompare.
DPO (Disable Page Out) bit of one indicates that the data written by this command is to be assigned the lowest priority for being written into or retained by the cache. A DPO bit of one overrides any retention priority specified in the
Mode Select Page 8 Caching parameters. A DPO bit of zero indicates the priority is determined by the retention priority.
The Initiator should set the DPO bit when the blocks written by this command are not likely to be read again in the near future.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
247
18.56 WRITE AND VERIFY (12) - (AE)
Table 206: Write and Verify (12) - (AE)
Byte
0
1
7 6
WRPROTECT
5
DPO
Bit
4 3
Command Code = AEh
2
Reserved = 0
(MSB)
2-5 Logical Block Address
1
ByteChk
0
Obsolete
(LSB)
(MSB)
6-9 Transfer Length
(LSB)
10
11 VU = 0
Reserved = 0
Reserved = 0 FLAG LINK
The WRITE AND VERIFY command requests that the drive write the data transferred from the Initiator to the medium and then verify that the data is correctly written. See the WRITE AND VERIFY (10) description for the definitions of the fields in this command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
248
18.57 WRITE AND VERIFY (16) - (8E)
Table 207: Write and Verify (16) - (8E)
Byte
0
7 6 5
Bit
4 3
Command Code = 8Eh
2 1 0
1 WRPROTECT DPO Reserved = 0
Byte
Chk
Obsolete
(MSB)
2-9 Logical Block Address
(LSB)
(MSB) Transfer Length
10-13
(LSB)
14
15 VU = 0
Reserved = 0
Reserved = 0 FLAG LINK
The WRITE AND VERIFY command requests that the drive write the data transferred from the Initiator to the medium and then verify that the data is correctly written.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
249
7
8 - 9
10
11
0
1
2 - 5
6
12 - 19
20 - 23
24 - 25
26 - 27
28 - 31
18.58 WRITE AND VERIFY (32) - (7F/0C)
Table 208: Write and Verify (32) - (7F/0C)
Byte
7
VU = 0
Reserved = 0
6 5
Bit
4 3
Command Code = 7Fh
2 1
Reserved = 0
Reserved = 0
FLAG
Group Number = 0
Additional CDB Length = 18h
WRPROTECT
Service Action = 000Ch
DPO Reserved = 0
Reserved = 0
Logical Block Address
ByteChk
Expected Initial Logical Block Reference Tag
Expected Logical Block Application
Logical Block Application Tag Mask
Transfer Length
0
LINK
Reserved=0
The WRITE AND VERIFY command requests that the drive write the data transferred from the initiator to disk and then verify that the data is correctly written.
If the drive is formatted with type 2 protection (PROT_EN=1 and P_TYPE=001b in the READ CAPACITY (16) parameter data), then this command will be processed normally. Any other protection types will result in Check Condition status to be returned with sense key of Illegal Request and additional sense code of Invalid Command Operation Code
The Expected Initial Logical Block Reference Tag field contains the value of the Logical Block Reference Tag field expected in the protection information of the first logical block accessed by the command.
If the ATO bit is set to one in Mode Page 0Ah, the Logical Block Application Tag Mask field contains a value that is a bit mask for enabling the checking of the Logical Block Application Tag field in the protection information for each logical block accessed by the command. A Logical Block Application Tag Mask bit set to one enables the checking of the corresponding bit of the Expected Logical Block Application Tag field with the corresponding bit of the Logical Block Application Tag field in the protection information.
If the ATO bit is set to zero, the Logical Block Application Tag Mask field and the Expected Logical Block Application Tag field are ignored.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
250
2
3-5
0
1
6-8
9
18.59 WRITE BUFFER (3B)
Table 209: WRITE BUFFER (3B)
Byte
7 6 5
Bit
4 3
Command Code = 3Bh
Mode Reserved = 0
Buffer ID
Buffer Offset
VU = 0
Parameter List Length
Reserved = 0
2 1 0
FLAG LINK
The WRITE BUFFER command is used in conjunction with the READ BUFFER command as a diagnostic function for testing the memory of the drive and the SCSI bus integrity. This command does not alter the medium of the drive. Additional modes are provided for downloading microcode and saving microcode.
This command will cause the entire cache to be emptied.
The function of this command and the meaning of fields within the command descriptor block depend on the contents of the mode field.
MODE Description
00000
Write combined header and data
00010
00100
00101
00111
Data
Download Microcode
Download Microcode and Save - single binary file
Download Microcode and Save - multiple binary files
01010
11010
Write Data to Echo Buffer
Enable expander Communications Protocol
All Others Not Supported
If any values other than shown above are specified, Check Condition status is returned with a sense key of Illegal Request and additional sense code of Invalid Field in CDB.
18.59.1 Combined Header And Data (Mode 00000b)
In this mode, the data to be transferred is preceded by a four-byte header.
Buffer ID must be zero. If another value is specified, no download function is performed and the command is terminated with
Check Condition status. And the drive shall set the sense key to Illegal Request and additional sense code to Illegal Field in
CDB.
Buffer Offset must be zero. If another value is specified, no download function is performed and the command is terminated with Check Condition status. And the drive shall set the sense key to Illegal Request and additional sense code to Illegal Field
in CDB.
Parameter List Length specifies the number of bytes that shall be transferred during the DATA OUT phase. This number includes four bytes of header, so the data length to be stored in the drive buffer is transfer length minus four. If the length
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
251
exceeds the buffer size, the command is terminated with Check Condition status. And the drive shall set sense key to Illegal
Request and additional sense code to Illegal Field in CDB. A Parameter List Length of less than four (size of header) indicates no data is transferred.
The 4-byte header consists of all reserved bytes.
Table 210: Write Buffer Header
Bit
Byte
0-3
7 6 5 4 3
Reserved = 0
2 1 0
18.59.2 Write Data (Mode 00010b)
In this mode, the DATA OUT phase contains buffer data.
Buffer ID must be zero. If another value is specified, no download function is performed and the command is terminated with
Check Condition status. And the drive shall set the sense key to Illegal Request and additional sense code to Illegal Field In
CDB.
Buffer Offset specifies the offset of the memory space specified by the Buffer ID. The initiator should conform to the offset boundary requirements returned in the READ BUFFER descriptor. If the value exceeds the buffer specified, the command is terminated with Check Condition status. And the drive shall set the sense key to Illegal Request and additional sense code to
Illegal Field In CDB.
Parameter List Length specifies the Parameter List Length. It must be
• less than the capacity of the buffer size after adding the Buffer Offset value and
• on a sector boundary
A Parameter List Length of zero indicates no data is to be transferred and command status is returned.
If an invalid value is specified, the command is terminated with Check Condition status. And the drive shall set the sense key to Illegal Request and additional sense code to Illegal Field In CDB.
18.59.3 Download Microcode (Mode 00100b)
NOTE: It is not expected that a customer will ever issue this format of the command.
In this mode, the microcode is transferred to the control memory space of the drive. When downloaded, the drive will operate with the newly downloaded code immediately until the next power cycle.
Buffer ID field is used to indicate which portion of the microcode image is being downloaded. The following Buffer IDs are supported by the Target:
- 00h: Main Microprocessor Code
- nnh: ID of Vendor Unique Reserved Area
Any unsupported value for the Buffer ID will cause the command to terminate with Check Condition status. And the drive shall set the sense key to Illegal Request and additional sense code to Illegal Field In CDB.
Buffer Offset must be zero. If an invalid value is specified, the command is terminated with Check Condition status. The drive shall set the sense key to Illegal Request and additional sense code to Illegal Field in CDB.
Parameter List Length must be the size of the data set to be downloaded. It may also be set to 0000h in which case no code is updated and command status is returned. If an invalid value is specified, the command is terminated with Check Condition status. And the drive shall set the sense key to Illegal Request and additional sense code to Illegal Field In CDB.
This process generates a unit attention condition for MICROCODE HAS BEEN CHANGED for all Initiators except the one
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
252
which sent the WRITE BUFFER command. Upon the completion of the WRITE BUFFER command the new microcode is immediately ready for operation.
Note: The Download Microcode mode described in this specification is to indicate that the drive will accept a command with this mode, though it is not expected that a user will ever issue such a command. To use the write buffer command with this mode, a special microcode version is required from development. If such a microcode is released from development, then it will include appropriate instructions on the function of new microcode and its effect on the drive operations after download.
18.59.4 Download Microcode and Save (Mode 00101b) -Single Binary File
In this mode the data is transferred to the drive to save into the System reserved area on the disk. This is for functional upgrade and configuration change reflecting the user's requirements and the manufacturer’s reason or both, and it is stored in the media as a permanent copy. The newly downloaded code becomes effective after the drive issues and completes a self-initiated
Power On Reset.
Note: It requires up to 30 seconds to update the microcode including the Flash ROM update.
Note: New code to be downloaded to the drive will be provided by development either by request of a customer for an additional function or as a result of a functional change by development. However please note that not all possible fixes or new functions can be applied to a drive in this manner and that there is a very high dependency on the level of ROM code contained within the drive. If an invalid code or a code not compatible with the ROM code is downloaded, the drive will usually reject this code and will continue normal operation. However there is a small possibility that an invalid code will be accepted. If this occurs, the unit usually becomes inoperable and will have to be returned to the manufacturer for recovery.
Buffer ID field is used to indicate which portion of the microcode image is being downloaded. To download microcode, the buffer ID should be set to 00h. Other values are reserved for HGST development purposes only.
18.59.5 Download Microcode and Save (Mode 00111b) - Multiple Binary Files
In this mode the target receives a segment of the binary microcode file. The Parameter List Length (segment length) of each segment shall be a multiple of 4K bytes. The total length of all segments received shall be equal to the total length of the binary microcode file. All segments must be sent in the proper sequential order.
If an invalid Parameter List Length is specified, Check Condition status is returned with sense key of Illegal Request and additional sense code of Invalid Field in CDB.
The first segment sent in this mode corresponds to the first segment of the binary microcode file and must be sent with the
Buffer ID set to 00h. If a Check Condition status is returned on any segment sent in this mode, that failing segment may be resent. Alternatively, the sequence can be restarted from the beginning by resending the first segment. The Buffer ID is generally ignored except that it must be set to 0 whenever the first segment is sent.
The Buffer Offset field is ignored.
After all segments of the binary microcode file have been received, the drive behavior is the same as Download Microcode and
Save (Mode 00101b) - Single Binary File.
18.59.6 Write Data to Echo Buffer (Mode 01010b)
In this mode the Target transfers data into the echo buffer. The echo buffer is assigned in the same manner by the Target as it would for a WRITE operation. Data will be sent aligned on 4-byte boundaries.
Upon successful completion of a WRITE BUFFER command the data will be preserved in the echo buffer unless there is an intervening command to any logical unit, in which case it may be changed.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
253
18.59.7 Enable Expander Communications Protocol (Mode 11010b)
In this mode the drive behavior is the same as Write Data to Echo Buffer (Mode 0101b).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
254
18.60 WRITE LONG (3F)
Table 211: WRITE LONG (3F)
Byte
0
7 6 5 4
Bit
3
Command Code = 3Fh
2 1 0
1
COR_DIS WR_UNCOR
PBLOCK
=0
Reserved = 0
Obsolete
(MSB)
2-5 Logical Block Address
(LSB)
6 Reserved = 0
(MSB) Byte Transfer Length
7-8
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The WRITE LONG command requests the drive to write one block of data transferred from the Initiator.
The transfer data must include
• User Data
• 53 bytes of ECC data
Parameters are
•COR_DIS - correction disabled, bit 7 in byte 1. When this bit is set to one, we mark the LBA as a pseudo unrecoverable error with correction disabled. A subsequent read to this LBA would: a) Perform no error recovery on the block; b) Perform no automatic reallocation of the affected logical blocks, including any automatic reallocation enabled by the Read-Write Error Recovery mode page; c) Not consider errors on the affected logical blocks to be informational exception conditions as defined in the
Information Exceptions Control mode page (see SPC-4); d) not log errors on the affected logical blocks in the Error Counter log pages e) On a read to the LBA, return check condition status with the sense key set to Medium Error and the additional sense code set to read error marked bad by client.
• WR_UNCOR - write uncorrectable, bit 6 in byte 1. If we receive a Write Long command with the
WR_UNCOR bit set to one, we would create a pseudo unrecovered error with correction enabled. On following read commands to the LBA, the drive will: a) use our normal recovery procedures (which will end in a hard error); b) perform no automatic reallocation of the affected logical blocks, including any automatic reallocation enabled by the
Read-Write Error Recovery mode page; c) consider errors on the affected logical blocks to be informational exception conditions as defined in the Information
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
255
Exceptions Control mode page (see SPC-4); d) log errors on the affected logical blocks in the Error Counter log pages e) On a read to the LBA, return check condition status with the sense key set to Medium Error and the additional sense
code set to read error marked bad by client.
The error state for LBA written with the COR_DIS or WR_UNCOR bits set, will remain in effect until the LBA is rewritten by a write, write same, format, write long without COR_DIS set, reassign or write verify command.
•
• Logical Block Address field specifies the logical block at which the write operation shall occur.
Byte Transfer Length. This field must specify the exact number of bytes of data available for transfer. If a non-zero byte transfer length does not match the available data length, the Target terminates the command with Check Condi-
tion status, then the sense key is set to Illegal Request, and an additional sense code is set to Invalid Field in CDB.
The valid and ILI bits are set to one and the information field is set to the difference of the requested length minus the actual length in bytes. Negative values are indicated by two's complement notation.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
256
18.61 WRITE SAME (41)
Table 212: WRITE SAME (41)
Byte
0
7 6 5
Bit
4 3
Command Code = 41h
2 1 0
1 WRPROTECT Reserved = 0
PBDA
TA=0
LBDA
TA=0
Obsolete
(MSB)
2-5 Logical Block Address
(LSB)
6 Reserved = 0
(MSB)
7-8 Number of Blocks
9 VU = 0 Reserved = 0 FLAG
(LSB)
LINK
The WRITE SAME command instructs the Target to write a single block of data transferred to the Target from the Initiator to a number of sequential logical blocks. This command is useful for writing large data areas without sending all of the data over the SCSI bus.
• See the WRITE(10) command description for the definition of the WRPROTECT field.
•
•
•
Logical Block Address specifies the address at which the write begins. The Number of Blocks specifies the number of contiguous blocks to be written. If the number is zero, all of the remaining blocks on the specified Logical Unit are written.
Number of Blocks specifies the number of contiguous blocks to be written. If the number is zero, all of the remaining blocks on the specified logical unit are written.
RelAdr (Relative Block Address) is not supported and must be set to be zero.
The data for this command is not retained in the cache.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
257
18.62 WRITE SAME (16) - (93)
Table 213: Write Same (16) - (93)
Byte
0
1
7 6
Bit
5 4 3 2 1 0
Command Code = 93h
WRPROTECT
PBDATA
=0
LBDATA
=0
Obsolete
(MSB)
2-9 Logical Block Address
(LSB)
(MSB)
10-13 Number of Blocks
(LSB)
14 Reserved = 0
15 VU = 0 Reserved = 0 FLAG LINK
The Write Same command instructs the Target to write a single block of data transferred to the Target from the Initiator to a number of sequential logical blocks. This command is useful for writing large data areas without sending all of the data over the SCSI bus. See the WRITE(10) command description for the definition of the WRPROTECT field.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
258
2-5
6
0
1
7
8 - 9
18.63 WRITE SAME (32) - (7F/0D)
Table 214: Write Same (32) - (7F/0D)
Byte
10
11
7
VU = 0
6
Reserved = 0
WRPROTECT
5
Bit
4 3
Command Code = 7Fh
2 1
Reserved = 0
Reserved = 0
FLAG
Group Number = 0
Additional CDB Length = 18h
0
LINK
Service Action = 000Dh
Reserved = 0
PBDATA
=0
LBDATA
=0
Reserved
=0
Reserved = 0
(MSB)
12 - 19 Logical Block Address
(LSB)
(MSB)
20 - 23 Expected Initial Logical Block Reference Tag
(LSB)
(MSB)
24 - 25 Expected Logical Block Application Tag
(LSB)
(MSB)
26 - 27 Logical Block Application Tag Mask
(LSB)
(MSB)
28 - 31 Number of Blocks
(LSB)
The WRITE SAME command requests that the drive write a single block of data transferred from the initiator to disk for a number of sequential logical blocks. This command is useful for writing large data areas with the same data, without sending all of the data over the interface. Each logical block transferred includes user data and may include protection information, based on the WRPROTECT field and the drive format. Each logical block written includes user data and, if the drive is formatted with protection information enabled, protection information.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
259
If the drive is formatted with type 2 protection (PROT_EN=1 and P_TYPE=001b in the READ CAPACITY (16) parameter data), then this command will be processed normally. Any other protection types will result in Check Condition status to be returned with sense key of Illegal Request and additional sense code of Invalid Command Operation Code
The Expected Initial Logical Block Reference Tag field contains the value of the Logical Block Reference Tag field expected in the protection information of the first logical block accessed by the command.
If the ATO bit is set to one in Mode Page 0Ah, the Logical Block Application Tag Mask field contains a value that is a bit mask for enabling the checking of the Logical Block Application Tag field in the protection information for each logical block accessed by the command. A Logical Block Application Tag Mask bit set to one enables the checking of the corresponding bit of the Expected Logical Block Application Tag field with the corresponding bit of the Logical Block Application Tag field in the protection information.
If the ATO bit is set to zero, the Logical Block Application Tag Mask field and the Expected Logical Block Application Tag field are ignored.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
260
19.0 SCSI Status Byte
Upon the completion of a command a status byte is sent to the initiator. Additional sense information may also be available depending on the contents of the status byte. The following section describes the possible values for the status byte and sense data. All Reserved fields are set to zero.
Table 215: SCSI Status Byte. Format of the SCSI STATUS byte.
Bit
7 6 5 4
Reserved = 0 Status Code
3 2 1 0
RSVD
STATUS BYTE Description
00h
GOOD
The command has been successfully completed.
02h
04h
CHECK CONDITION
An error, exception, or abnormal condition has been detected. The sense data is set by the drive. The
REQUEST SENSE command should be issued to determine the nature of the condition.
CONDITION MET
This status is returned when an unlinked PRE-FETCH command has been successfully completed.
08h
10h
14h
BUSY
This condition is returned when disconnect privilege is not granted while the drive is BUSY processing the other command for the other initiator. The normal initiator recovery action is to issue the command at a later time or to reissue the command and grant the disconnect privilege.
INTERMEDIATE
Not supported.
INTERMEDIATE CONDITION MET
Not supported.
18h
28h
RESERVATION CONFLICT
This status is returned whenever an SCSI device attempts to access the drive, but it has been reserved by another initiator.
QUEUE FULL
This status indicates that the target's command queue is full. If a tagged command queuing feature is enabled and there is no room on the command queue, this status is returned when the initiator sends a command. For this status, sense data are not valid.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
261
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
262
20.0 Additional information
This chapter provides additional information or descriptions of various functions, features, or operating models supported by the Target that are not fully described in previous chapters.
20.1 SCSI Protocol
There are various operating conditions that prevent the Target from executing a SCSI command. This section describes each of these operating conditions and their relative priority.
20.1.1 Priority of SCSI Status Byte Reporting
After establishing the I_T_L nexus or I_T_L_Q nexus the Target must first determine whether command execution is allowed.
Execution is deferred until a later time if the command must be added to the command queue. Execution may also be prevented by an internal Target condition that requires the reporting of a Check Condition, Queue Full, Busy, or Reservation Conflict Status. There are several different internal conditions to be active at the same time. The order in which the Target checks for each of these conditions determines their priority (highest priority first) as follows:
Startup and Format Operations” on page 267)
8. Check Condition status for invalid command opcode
9. Check Condition status for invalid command descriptor block
The highest priority internal condition that prevents command execution is reported by the Target provided there is no bus error.
For all Check Conditions Sense data is built by the target provided a valid LUN address is known. Sense data is cleared by the
Target upon receipt of any subsequent command to the LUN from the initiator receiving the Check Condition.
20.1.2 Invalid LUN Processing
Any value other than zero is invalid.
The target's response to an invalid LUN varies with the command, as follows:
Inquiry: Execute the command, return the INQUIRY data that indicates unknown device type (byte 0 = 7Fh), and return
GOOD status. All other bytes are valid (see 18.5, “INQUIRY (12)” on page 77).
Request Sense: Execute the command, return the sense data with the Sense Key set to Illegal Request and the Additional
Sense Code and Additional Sense Code Qualifier set to LOGICAL UNIT NOT SUPPORTED, and return GOOD status (see
also 18.34, “REQUEST SENSE (03)” on page 214).
All Others: Do not execute the command and return CHECK CONDITION status, along with the auto-sense data with the
Sense Key set to Illegal Request and the Additional Sense Code and Additional Sense Code Qualifier set to LOGICAL UNIT
NOT SUPPORTED.
In all cases, the target's response to the command for an invalid LUN does not affect the current execution of a command on the valid LUN for this initiator or any other initiator.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
263
20.1.3 Overlapped Commands
The the drive does not perform any overlapped command checking.
20.1.4 Command Processing During Execution of Active I/O Process
When the target is not executing any I/O processes, a new I/O process is permitted to execute (unless execution is prevented by
If an active I/O process exists when the target receives a new command, then the target determines if:
• the command is permitted to execute
•
•
• the command is added to the queue
Queue Full status is to be returned
Busy status is to be returned
If an active I/O process exists when the target receives a new command, then the target determines how the new command should be handled based on the following rules:
• Check Condition status is returned with sense key set to Logical Unit Not Ready if:
•
Active I/O Process” on page 264 for the exact conditions which cause this response.
Note: If a Unit Attention is pending when this condition exists, the sense key is set to Unit Attention rather than Logical Unit
• The command is permitted to execute if:
•
•
•
•
•
the command is a priority command (see 20.5, “Concurrent I/O Process” on page 276).
the conditions to execute concurrently are met (see 20.5, “Concurrent I/O Process” on page 276).
The command is added to the queue if:
• any I/O process already exists at the target, and
• this is not an incorrect initiator connection.
Queue Full status is returned if:
• the command would otherwise be added to the queue (according to the rules described above), but all slots in the queue are full, or
• the command would otherwise be added to the queue (according to the rules described above), but all of the available queue slots not reserved for use by another initiator are full, or
• a Format Unit command was previously queued but has not yet begun execution, or
•
viously queued but has not yet begun execution.
Busy status is never returned on SCSI or FCAL. BUSY status is returned on SAS if more than 64 unique Initiators send frames to the drive since the last POR. In that case, BUSY status in only returned for Initiators above and beyond the first 64.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
264
20.1.5 Unit Attention Condition
The target generates a unit attention condition when one of the following occurs:
• The target has been reset
•
This includes a power-on reset or a reset caused by a LUN Reset Task Management function or Hard Reset sequence.
In all of these cases, a unit attention condition is generated for each initiator.
MODE SELECT command has been executed
•
•
•
•
•
•
In this case, a unit attention condition is generated for all initiators except the one that issued the MODE SELECT command. The Additional Sense Code and Additional Sense Code Qualifier reported is MODE PARAMETERS
CHANGED. The unit attention condition is generated if any of the current page parameters are set by the MODE
SELECT command. The target does not check to see that the old parameters are different from the new parameters.
For example: If the initiator issues a MODE SENSE command with a page code to report the current values followed by a MODE SELECT command with the same parameter list, a unit attention condition is generated despite the fact that the current parameters were not changed from their previous value. However, if the target detects an illegal parameter or error condition prior to modifying the current parameters, a unit attention condition is not generated since the parameters were not set. The unit attention condition is also not generated if the MODE SELECT command parameter list does not include any pages and only the header or header/block descriptor is present.
FORMAT UNIT command has been executed
In this case, a unit attention condition is generated for all initiators except the one that issued the FORMAT UNIT command. The Additional Sense Code and Additional Sense Code Qualifier reported is NOT READY TO READY
TRANSITION, (MEDIUM MAY HAVE CHANGED). This indicates that the block descriptor parameters from the last MODE SELECT command have been used and are now considered current values.
WRITE BUFFER command to download microcode has been executed
In this case, a unit attention condition is generated for all initiators except the one that issued the WRITE BUFFER command. The Additional Sense Code and Additional Sense Code Qualifier reported is MICROCODE HAS BEEN
CHANGED.
Commands Cleared by another initiator
This unit attention condition is generated after an initiator sends a Clear Task Set Task Management function. The unit attention condition is generated for all other initiators with I/O processes that were either active or queued for the logical unit. The Additional Sense Code and Additional Sense Code Qualifier reported is COMMANDS CLEARED
BY ANOTHER INITIATOR.
LOG SELECT command with PCR bit has cleared parameters.
In this case, a unit attention condition is generated for all initiators except the one that issued the LOG SELECT com mand. The additional sense code and additional sense code qualifier reported is Log Select Parameters Changed.
The registration or reservation made by a Persistent Reserve Out command was cleared by another initiator.
In this case, a unit attention condition is generated for the initiator that held the cleared registration or reservation.
A Predictive Failure Analysis threshold has been reached and the Method of Reporting field of mode page 1Ch is 2h.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
265
The unit attention condition persists for each initiator until that initiator clears the condition from the logical unit as described below. Several commands are handled as special cases during a unit attention condition These cases are also discussed below.
If the target receives a command from an initiator before reporting a CHECK CONDITION status for a pending unit attention condition for that initiator, the target's response varies with the command as follows:
Inquiry
Execute the command, return GOOD status, and preserve the unit attention condition.
Same as above
Request
Execute the command, return any pending sense data, return GOOD status, and preserve the unit attention condition. If there is not any pending sense data, the sense data associated with the highest priority unit attention condition is returned and the highest priority unit attention condition is cleared for this initiator.
Do not execute the command, return a CHECK CONDITION status, clear the highest priority unit attention condition for this initiator and return the associated sense data.
More than one unit attention condition may be generated for an initiator before that initiator clears the unit attention condition.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
266
20.1.6 Command Processing During Startup and Format Operations
If the Target receives a command from an Initiator while the Target is executing a startup or format operation, the response of the Target varies with the command as follows:
INQUIRY
The drive sends inquiry data and returns appropriate status.
REQUEST SENSE
Executes the command, returns a Sense key of NOT READY and an Additional Sense Code of
LOGICAL UNIT NOT READY and returns GOOD STATUS.
The Additional Sense Code Qualifier that is returned depends on type of I/O processes that are active:
REPORT LUNS
ALL OTHER
For the START/UNIT STOP and the Auto-start operation, the qualifier returned is LOGICAL
UNIT IS IN PROCESS OF BECOMING READY. For the FORMAT UNIT command, the qualifier returned is LOGICAL UNIT NOT READY, FORMAT IN PROGRESS, and the Sense key specific bytes are set to return the progress indication.
The drive sends REPORT LUNS data and appropriate status.
The drive terminates the command with CHECK CONDITION status. The Sense data generated is described in Request Sense above.
20.1.7 Internal Error Condition
The Target generates an Internal Error condition for all Initiators when an internally initiated operation ends with an unrecoverable error, that is, the startup sequence for Auto Start enabled terminates after the SCSI bus has been enabled and prior to completion of the bring-up sequence.
An Internal Error condition causes Sense data to be generated and saved for all Initiators. The Error Code field of the Sense is set for a Current Error (70h) and the Sense Key is set to HARDWARE ERROR. Recovered errors are not reported.
The Internal Error condition persists for each Initiator until that Initiator clears the condition from the logical unit as described below. Several commands are handled as special cases during an Internal Error condition. These cases are also discussed.
If the Target receives a command from an Initiator while an Internal Error condition exists for that Initiator, the response of the
Target varies with the command as follows:
INQUIRY
REQUEST SENSE
ALL OTHER
The drive executes the command with GOOD status and does not clear the Internal Error condition.
The drive executes the command, returns the sense data generated by the Internal Error condition, returns Good Status, and clears the Internal Error condition for that Initiator.
The drive terminates the command with a CHECK CONDITION status and clears the Internal
Error condition.
20.1.8 Deferred Error Condition
Error code (71h) of sense data indicates that the Check Condition status returned is the result of an error or exception condition that occurred during execution of a previous command for which Good status has already been returned.
The drive creates an Deferred Error condition when
• Execution of a Format Unit command with the immediate bit of one ends with an error.
• Execution of a Write command with WCE (Write Cache Enable) bit of one ends with an error.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
267
20.1.9 Degraded Mode
There are certain errors or conditions which may impair the ability of the drive to function normally. Rather than fail hard the drive is designed to be as responsive as possible. Also, in most cases, some action on the part of the initiator may be used to restore normal operation. This mode of limited operation is called Degraded Mode.
There are 3 conditions in the Degraded Mode:
• Spindle Motor Degrade which is caused by one of the following conditions:
- Spindle Motor was started (by POR or Unit Start command) and the Target is under Self Configuration.
- Spindle Motor Failed to start.
- Spindle Motor was stopped by Unit Stop command after the Target successfully completed the Self Configuration.
•
• Self Configuration Failure Degraded which is caused by one of the following conditions:
- RAM Code, Configuration Sector Read Failure
- RAM Code, Configuration Sector Revision Mismatch
Format Command Failure Degraded. This condition is caused when Format Unit command failed or was interrupted abnormally (Mode Page 0, byte 5, bit 4 FDD controls Format Degraded mode)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
268
20.1.9.1 Response to SCSI Command in Degraded Mode - Disable Auto Start
The tables on the following pages show the degraded mode status with acceptable commands and additional sense codes
Table 216: Spindle Motor Degraded Mode - Disable Auto Start
Command (w/Option)
Request Sense
Inquiry (EVPD=0)
Inquiry (EVPD=1)
Test Unit Ready
Start Stop Unit
(Start)
Response
Executed. The Target may return Sense Key 02h (Not Ready) ASC/ASCQ
0402h (Initialize Command Required)
Executed
Executed and Check Condition is returned with Sense Key 05h (Illegal Request)
ASC/ASCQ 2400h (Invalid Field in CDB)
Executed and Check Condition is returned with Sense Key 02h (Not Ready)
ASC/ASCQ 0402h (Initialize Command Required)
Executed
- Success: Good Status is returned. Motor Degraded Mode is cleared
- Spindle Motor Start Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 0400h (Start Spindle Motor Fail)
- Self Configuration Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 4080h (Diag Fail- Bring up Fail)
Sense Key 02h (Not Ready) ASC/ASCQ 4085h (Diag Fail-RAM Code NOT load)
Executed. Good Status is returned. Motor Degraded Mode is NOT cleared
Start Stop Unit
(Stop)
Other Commands
Not Executed. Check Condition Status is returned with Sense Key 02h (Not
Ready) ASC/ASCQ 0402h (Initialize Command Required)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
269
20.1.9.2 Response to SCSI Command in Degraded Mode - Auto Start Delay/ Spinning Up
Table 217: Spindle Motor Degraded Mode - Auto Start Delay/Spinning Up
Command (w/Option)
Request Sense
Inquiry (EVPD=0)
Inquiry (EVPD=1)
Test Unit Ready
Start Stop Unit
(Start)
Other Commands
Response
Executed. The Target may return Sense Key 02h (Not Ready) ASC/ASCQ
0401h (In Process of Becoming Ready)
Executed
Executed and Check Condition is returned with Sense Key 05h (Illegal Request)
ASC/ASCQ 2400h (Invalid Field in CDB)
Executed and Check Condition is returned with Sense Key 02h (Not Ready)
ASC/ASCQ 0401h (In Process of Becoming Ready)
Executed
- Success: Good Status is returned. Motor Degraded Mode is cleared
- Spindle Motor Start Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 0400h (Start Spindle Motor Fail)
- Self Configuration Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 4080h (Diag Fail- Bring up Fail)
Sense Key 02h (Not Ready) ASC/ASCQ 4085h (Diag Fail-RAM Code NOT load)
Not Executed. Check Condition Status is returned with Sense Key 02h (Not
Ready) ASC/ASCQ 0401h (In Process of Becoming Ready)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
270
20.1.9.3 Response to SCSI Command in Degraded Mode - Spindle Start Failure
Table 218: Spindle Motor Degraded Mode - Spindle Start Failure
Command (w/Option)
Request Sense
Inquiry (EVPD=0)
Inquiry (EVPD=1)
Test Unit Ready
Start Stop Unit
(Start)
Response
Executed. The Target may return Sense Key 02h (Not Ready) ASC/ASCQ
0400h (Start Spindle Motor Fail)
Executed
Executed and Check Condition is returned with Sense Key 05h (Illegal Request)
ASC/ASCQ 2400h (Invalid Field in CDB)
Executed and Check Condition is returned with Sense Key 02h (Not Ready)
ASC/ASCQ 0400h (Start Spindle Motor Fail)
Executed
- Success: Good Status is returned. Motor Degraded Mode is cleared
- Spindle Motor Start Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 0400h (Start Spindle Motor Fail)
- Self Configuration Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 4080h (Diag Fail- Bring up Fail)
Sense Key 02h (Not Ready) ASC/ASCQ 4085h (Diag Fail-RAM Code NOT load)
Executed. Good Status is returned. Motor Degraded Mode is NOT cleared
Start Stop Unit
(Stop)
Other Commands
Not Executed. Check Condition Status is returned with Sense Key 02h (Not
Ready) ASC/ASCQ 0400h (Start Spindle Motor Fail)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
271
20.1.9.4 Response to SCSI Command in Degraded Mode - Spindle Stopped by Unit Stop Command
Table 219: Spindle Motor Degraded Mode - Spindle Stopped by Command
Command (w/Option)
Request Sense
Inquiry (EVPD=0)
Inquiry (EVPD=1)
Test Unit Ready
Start Stop Unit
(Start)
Start Stop Unit
(Stop)
Other Commands
Response
Executed. The Target may return Sense Key 02h (Not Ready) ASC/ASCQ
0402h (Initialize Command Required)
Executed
Executed
Executed and Check Condition is returned with Sense Key 02h (Not Ready)
ASC/ASCQ 0402h (Initialize Command Required)
Executed
- Success: Good Status is returned. Motor Degraded Mode is cleared
- Spindle Motor Start Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 0400h (Start Spindle Motor Fail)
- Self Configuration Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 4080h (Diag Fail- Bring up Fail)
Sense Key 02h (Not Ready) ASC/ASCQ 4085h (Diag Fail-RAM code NOT load)
Executed. Good Status is returned. Motor Degraded Mode is NOT cleared
Not Executed. Check Condition Status is returned with Sense Key 02h (Not
Ready) ASC/ASCQ 0402h (Initialize Command Required)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
272
20.1.9.5 Self Configuration Failure Degraded Mode
Table 220: Self Configuration Failure Degraded Mode
Command (w/Option)
Request Sense
Inquiry (EVPD=0)
Inquiry (EVPD=1)
Test Unit Ready
Start Stop Unit
(Start)
Write Buffer
(Download and Save)
Other Commands
Response
Executed. The Target may return
Sense Key 02h (Not Ready) ASC/ASCQ 4080h (Diag Fail- Bring up Fail)
Sense Key 02h (Not Ready) ASC/ASCQ 4085h (Diag Fail-RAM code NOT load)
Executed
Executed and Check Condition is returned with
Sense Key 05h (Illegal Request) ASC/ASCQ 2400h (Invalid Field in CDB)
Executed and Check Condition is returned with
Sense Key 02h (Not Ready) ASC/ASCQ 4080h (Diag Fail- Bring up Fail)
Sense Key 02h (Not Ready) ASC/ASCQ 4085h (Diag Fail-RAM code NOT load)
Executed
- Success: Good Status is returned. Motor Degraded Mode is cleared
- Spindle Motor Start Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 0400h (Start Spindle Motor Fail)
- Self Configuration Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 4080h (Diag Fail- Bring up Fail)
Sense Key 02h (Not Ready) ASC/ASCQ 4085h (Diag Fail-RAM code NOT load)
Executed.
- Success: Good Status is returned. Motor Degraded Mode is cleared
- Self Configuration Failure: Check Condition with Sense Key 02h (Not Ready)
ASC/ASCQ 4080h (Diag Fail- Bring up Fail)
Sense Key 02h (Not Ready) ASC/ASCQ 4085h (Diag Fail-RAM code NOT load)
Not Executed. Check Condition Status is returned with Sense Key 02h (Not
Ready) ASC/ASCQ 4080h (Diag Fail- Bring up Fail)
Sense Key 02h (Not Ready) ASC/ASCQ 4085h (Diag Fail-RAM code NOT load)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
273
20.1.9.6 Format Command Failure Degraded Mode
Table 221: Format Command Failure Degraded Mode
Command (w/Option)
Request Sense
Inquiry (EVPD=0)
Inquiry (EVPD=1)
Test Unit Ready
Format Unit
Other Commands
Response
Executed. The Target may return
Sense Key 02h (Not Ready) ASC/ASCQ 3100h (Format Corrupted)
Sense Key 03h (Medium Error) ASC/ASCQ 3100h (Format Corrupted)
Executed
Executed
Executed and Check Condition is returned with Sense Key 02h (Not Ready)
ASC/ASCQ 3100h (Format Corrupted)
Executed
- Success: Good Status is returned. Format Degraded Mode is cleared
- Failure: Check Condition Status is returned and Format Degraded Mode is
NOT cleared.
Not Executed. Check Condition Status is returned with Sense Key 03h (Medium
Error) ASC/ASCQ 3100h (Format Corrupted)
Note:
Mode Page 0 byte 5 bit 4 (FDD) = 0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
274
20.1.10 Command Processing while Reserved
A logical unit is reserved after successful execution of the Reserve command. Each time a Reserve command is executed successfully, the Target records the SCSI ID of the Initiator that made the reservation and the SCSI ID of the Initiator that is to receive the reservation. This information is needed to determine whether subsequent commands should be permitted or if the
Reservation Conflict Status should be reported. The Initiator that made the reservation is the Initiator that issued the Reserve command. The Initiator to receive the reservation may be either the same or a different Initiator (third-party reservation).
If the logical unit is reserved when a new command is received, the Target examines the command opcode and the SCSI ID of the issuing Initiator to determine whether a Reservation Conflict Status should be returned based on the following rules:
If the issuing Initiator is the one that made the reservation and also the one to receive the reservation, then all commands are permitted.
If the issuing Initiator is neither the one that made the reservation nor the one to receive the reservation, then
- A Request Sense or Inquiry command is permitted.
- A Release command is permitted but is ignored.
- Any other command results in a Reservation Conflict Status.
If the issuing Initiator is the one that made the reservation but is not the one to receive the reservation, then
- An Inquiry, Request Sense, Reserve, or Release command is permitted.
- Any other command results in a Reservation Conflict Status.
If the issuing Initiator is not the one that made the reservation but is the one to receive the reservation, then
- A Reserve command results in a Reservation Conflict Status.
- A Release command is permitted but is ignored.
- Any other command is permitted.
If a Reservation Conflict Status is not reported and the command is permitted, then the Target checks the next highest priority
20.2 Priority Commands
Certain SCSI commands always execute without returning a Busy Status or Reservation Conflict Status in response to the command. These commands are
• Inquiry
• Request Sense
• Report LUNs
• Test Unit Ready
These commands are executed prior to attempting to complete the execution of any other pending command in the queue.
These commands are never queued.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
275
20.3 Command Queuing
When the initiator specifies that the drive shall disable command queuing, the initiator must send only untagged commands.
When the initiator specifies that the target shall enable command queuing, the initiator may send either tagged or untagged command, but shall not use both at the same time.
The following commands are never queued.
• Priority Commands (i.e.: Request Sense and Inquiry)
• Commands for an invalid LUN.
20.3.1 Queue Depth
Any initiator can queue at least one command at any time irrespective of the actions of any other initiators in the system. A single initiator may queue up to 128 commands, if no other initiator has more than one command in the queue, although at times this maximum may be reduced as the drive can reserve command blocks for internal use.
20.3.2 Queue Full Status
The drive will respond with QUEUE FULL status to a SCSI command when all queue slots are utilized. The SCSI command is not placed in the command queue under this condition.
20.3.3 Termination of I/O Processes
Normal termination of I/O processes occurs when the target returns SCSI status. I/O processes may also be terminated by the following:
• An ABORT TASK terminates the specified I/O process from the issuing initiator
• An ABORT TASK SET terminates all I/O processes from the issuing initiator
• A CLEAR TASK SET, TARGET RESET or reset terminates all I/O processes from all initiators
20.4 Command Reordering
Page 0A (Control Mode Page Parameters)” on page 150.
20.5 Concurrent I/O Process
Concurrent command are always allowed to execute concurrently with non-priority commands. A second priority command received while a priority command is being executed is put at the head of the command queue.
• WRITE commands when another WRITE command is an active I/O process
• READ commands when another READ command is an active I/O process
When a concurrent command ends in CHECK CONDITION status, the QErr bit on the Mode Page 0Ah will determine how other active I/O processes from the same initiator for that drive will be handled.
20.6 Write Cache
If the WCE (Write cache enable) bit is 1, the drive returns Good Status and closes the connection immediately after receiving the data of the last sector before actually writing the data onto the media.
If the drive detects an error after it returns a Good Status, the drive sets a Deferred Error (Error Code of sense data = 71h) and a following command will be returned with Check Condition and the Contingent allegiance condition is established. Under the
Contingent allegiance condition all queued processes including commands from other initiators are suspended.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
276
20.7 Automatic Rewrite/Reallocate
The target supports Auto and Recommended Reallocate for READ, WRITE, WRITE VERIFY, and VERIFY.
Automatic and Recommend Reallocate operate from within the read/write command. When an automatic reallocation occurs, the read or write command takes longer to complete.
This operation is sometimes referred to as auto-reassignment due to its similarity to the operation performed by the reassign command.
Following is a description of the target behavior for each setting of ARRE. ARRE setting affects all data errors. (No Sector
Found, Data Sync Byte Errors and Data ECC Errors.)
ARRE=1:
ARRE=0:
An error site determined to need rewriting or reallocation during a read is automatically rewritten or reallocated at the conclusion of the read and prior to the sending of the status. The site will be automatically rewritten or reallocated only if the data has been successfully read.
An error site determined to need rewriting or reassignment during a read is recommended for rewriting or reassignment at the conclusion of the read.
The setting of the ARRE bit is checked and the target will automatically rewrite/reallocate or recommend rewrite/reassign for the following commands.
• Read
• Write
For all other commands the ARRE setting is ignored and the target will not automatically rewrite/ reallocate or recommend rewrite/reassign.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
277
1
1
1
1
Following is a description of the target behavior for each setting of AWRE. AWRE setting effects only No Sector Found
Errors on writes.
AWRE=1:
An error site determined to need reassignment during a write is automatically reallocated at the conclusion of the write and prior to sending the status. The site will be automatically reallocated only if the write recovery succeeded at the conclusion of the write.
AWRE=0:
An error site determined to need reassignment during a write is recommended for reassignment at the conclusion of the write.
The setting of the AWRE bit is checked and the target will automatically reallocate or recommend reassign for the following commands.
•
• Write(6)
Write(10)
• Write portion of Write and Verify
For all other commands the AWRE setting is ignored and the target will not automatically reallocate or recommend reassign.
Auto/Recommend Reallocate information is communicated via the sense data returned following a command during which a site was determined to need rewriting or reassignment. The LBA returned in the sense data is the LBA that was determined to need rewriting or reassignment.
The sense data combinations with auto/recommend rewrite/reallocate are listed below.
Table 222: Sense data combinations with auto/recommend rewrite/reallocate
Key
1
Code
17
Qual
01
Description
Recovered Data with retries
17
17
17
18
06
07
09
00
Recovered Data without ECC - Auto Reallocated
Recovered Data without ECC - Recommend Reassign
Recovered Data without ECC - Data Rewritten
Recovered Data with ECC
1
1
1
18
18
18
02
05
07
Recovered Data with ECC - Auto Reallocated
Recovered Data with ECC - Recommend Reassign
Recovered Data with ECC - Data Rewritten
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
278
20.8 Segmented Caching
20.8.1 Overview
Segmented Caching divides the data buffer into several smaller buffers. Each buffer is used as Read/ Write/Read-Ahead buffer.
20.8.2 Read Ahead
The Read Ahead function consists of reading data that the Initiator has not yet requested to the drive buffer. This function is intended to improve performance for an initiator that frequently accesses sequential data with successive SCSI read commands. The Read Ahead function works when RCD (the read cache disable) bit of read cache page (page 08h) is set to zero.
The drive initiates the Read ahead function when the following conditions exist:
• RCD is 0
•
• Read, Verify and Write and Verify is received.
The consecutive LBA of the requested LBA is not available in the buffer
If SCSI reset or target reset message is received, all contents of segmented buffer is flushed.
Even if an error occurs during the Read ahead, the error will not be reported to the Initiator. The data read before the error occurred will be stored as valid data by the Read Ahead function.
20.9 Multiple Initiator Systems
This section describes how the target behaves in a multiple initiator system. Up to 64 initiators may be supported at any one time.
20.9.1 Sense Data
A separate sense data area is reserved for each initiator. Each area is maintained independently. This allows a command from one initiator to complete with a CHECK CONDITION status and generate sense data without being affected by a subsequent command from a different initiator. There is no requirement for the first initiator to send a REQUEST SENSE command to retrieve the Sense Data prior to the execution of a command from a different initiator.
20.9.2 Mode Pages
A single set of Mode pages is maintained. This includes both current and saved parameters. If a MODE SELECT command is executed that updates the current parameters, a unit attention condition is generated for all initiators except the one that issued
the command. See 20.1.5, “Unit Attention Condition” on page 265 for more information.
20.10 Multiple Initiator Environment
20.10.1 Initiator Sense Data
Separate sense data is reserved for each I-T-L. Each sense data is maintained independent of commands from other initiators.
20.10.2 Initiator Mode Select/Mode Sense Parameters
A single shared copy of the Mode Select/Mode Sense parameters is maintained by the drive. This includes both the current and saved parameters.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
279
20.11 Reset
Reset actions will return the drive to a known, initialized state.
This device supports the Hard reset option as defined in the SCSI standards (see 7.1.9 Dev_Ctrl_Code_x on page 33) and the reset sources discussed below.
20.11.1 Reset Sources
There are four sources of resets detected by the target:
Reset Name
Power-On Reset
Self-Initiated reset
Hard Reset
LUN Reset
Reset Source
This is the signal generated by the hardware at initial power-on
This is a software-generated reset that occurs when a catastrophic error is detected by the microcode.
This is the Hard Reset performed during a Link Reset Sequence.
This is a LUN RESET TMF (08h) sent in a TASK IU.
20.11.2 Reset Actions
The action taken by the drive following a reset is dependent on the source of the reset.
20.11.2.1 Power-On reset and Self-Initiated reset
These two reset conditions cause the following to be performed in the order shown:
• A power-up sequence
• A startup sequence is necessary to put the drive in a ready state
These reset conditions cause the following actions:
•
•
•
If the reset occurs during the power-up sequence, the power-up sequence is re-started.
If the auto-start option is enabled and a start-up sequence has not yet completed, the start-up sequence is restarted.
Note: The power-up sequence is not re-run, since it has already completed.
If the reset occurs while a physical sector is being written, the WRITE operation is disabled at the end of the current sector. The media is not corrupted if power is maintained to the end of the current sector.
20.12 Diagnostics
The drive will execute Power on Diagnostics at power on time to assure the correct operation of the drive by validating components (ROM, RAM, Sector Buffer, EEPROM, HDC, Spindle Motor, Actuator), checking stored information in the Reserved
Area and EEPROM, and verifying fault detects circuits.
Self-test can be invoked by issuing a SEND DIAGNOSTIC command.
20.12.1 Power on Diagnostics
At power on time the following tests are executed:
1. Validation of ROM and EEPROM
2. RAM test for internal RAM
3. Test and Initialize HDC registers
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
280
4. RAM test for Sector Buffer
5. Start Spindle Motor (if enabled)
6. Calibration of Actuator
7. Read/Write test for all Heads
8. Validation of RAM code and data table (RDM, Log, Mode Page) from the Reserved Area
If Auto spin up is disabled, steps 5 - 8 will be executed by the first START STOP UNIT command which has the Start bit set.
Faults detected before successful completion of the HDC section could prevent the drive from responding to a selection.
Faults detected after the successful completion of the HDC test section will be reported as CHECK CONDITION status to the
Initiator on the first command issued after a fault is detected (except for the INQUIRY, REPORT LUNS and REQUEST
SENSE commands). The INQUIRY, REPORT LUNS and REQUEST SENSE commands will always be responded with a
GOOD status. Detecting a fault during power on will not terminate execution of the tests nor will it terminate the power on process.
20.12.2 Self-test via SEND DIAGNOSTIC Command
20.12.2.1 Default Self-test
The default self-test is invoked by the SlfTst bit in the SEND DIAGNOSTIC command. The response is simply a GOOD status if the test is successful or a CHECK CONDITION status if the test fails.
The following tests are performed by the default self-test (in the order defined):
1. Spin check is to check if the spindle motor is running at the correct speed.
2. Write, Read and Compare test is a disk read/write test. It writes data to a predefined location in the reserved area and then reads it back and validates the content. All heads are tested.
3. ECC circuit test is a test for ECC circuit to ensure that errors can be corrected by the circuit.
4. Seek test is a servo test. It validates seeks to 256 random locations out of the full volume.
20.12.2.2 Short and Extended Self-tests
There are two other types of self-tests that may be invoked using the Function Code field in the SEND DIAGNOSTIC command: a short self-test and an extended self-test. The tests performed in the short and extended self-tests are described later.
The time required by a logical unit to complete its extended self- test is specified in the Extended self-test Completion Time field in the Control Mode Page. The results of self-test can be retrieved via the LOG SENSE command for Log Page 10.
20.12.2.3 Self-test Modes
There are two modes for short and extended self-tests: a foreground mode and a background mode. These modes are described in the following clauses.
Foreground mode
When the drive receives a SEND DIAGNOSTIC command specifying a self-test to be performed in the foreground mode, the drive will return status for that command after the self-test has been completed. While performing a self-test in the foreground mode, the drive will respond to all commands except INQUIRY, REPORT LUNS, and REQUEST SENSE with a CHECK
CONDITION status, a sense key of NOT READY and an additional sense code of LOGICAL UNIT NOT READY - SELF-
TEST IN PROGRESS.
If the drive is performing a self-test in the foreground mode and a test error occurs, the drive will update the self-test results log page and report CHECK CONDITION status with a sense key of HARDWARE ERROR and an additional sense code of
LOGICAL UNIT FAILED SELF-TEST. The application client may obtain additional information about the failure by reading the self-test results log page.
An application client may terminate a self-test that is being performed in the foreground mode using an ABORT TASK,
ABORT TASK SET, or CLEAR TASK SET task management function. If the drive receives an ABORT TASK, ABORT
TASK SET, or CLEAR TASK SET task management function while performing a self-test in the foreground mode, it will abort the self-test and update the self-test results log page.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
281
Background mode
When the drive receives a SEND DIAGNOSTIC command specifying a self-test to be performed in the background mode, the drive will return status for that command as soon as the command descriptor block has been validated. After returning status for the SEND DIAGNOSTIC command specifying a self- test to be performed in the background mode, the drive will initialize the self-test results log page as follows. The Function Code from the SEND DIAGNOSTIC command will be placed in the
Function Code field in the log page. The self-test Results field shall be set to 0Fh. After the self-test results log page is initialized, the drive will begin the first self-test segment.
While the device server is performing a self-test in the background mode, it shall terminate with a CHECK CONDITION status any SEND DIAGNOSTIC command it receives that meets one of the following criteria: a. The SlfTst bit is one b. The Function Code field contains a value other than 000b or 100b.
When terminating the SEND DIAGNOSTIC command, the sense key shall be set to NOT READY and the additional sense code shall be set to LOGICAL UNIT NOT READY, SELF-TEST in PROGRESS. While performing a self-test in the background mode, the drive will suspend the self- test to service any other command other than SEND DIAGNOSTIC (with Function Code field set to 100b) WRITE BUFFER (with the mode set to any download microcode option), FORMAT UNIT and
START UNIT STOP command. Suspension of the self-test to service the command will occur within 2 seconds. If SEND
DIAGNOSTIC (with Function Code field set to 100b), WRITE BUFFER (with the mode set to any download microcode option), FORMAT UNIT or START UNIT STOP command is received, the drive will abort the self-test, update the self-test log, and service the command within two seconds after the command descriptor block has been validated.
An application client may terminate a self-test that is being performed in the background mode by issuing a SEND DIAG-
NOSTIC command with the Function Code field set to 100b (Abort background self-test function).
Elements common to foreground and background self-test modes
The Progress Indication field returned in response to a REQUEST SENSE command may be used by the application client at any time during execution of a self-test to poll the progress of the test. While executing a self-test unless an error has occurred, the drive will respond to a REQUEST SENSE command by returning a sense key of NOT READY and an additional sense code of LOGICAL UNIT NOT READY - SELF-TEST IN PROGRESS with the sense key specific bytes set for progress indication.
The application client may obtain information about the twenty most recently completed self-tests by reading the self-test results log page. This is the only method for an application client to obtain information about self-tests performed in the background mode. The default self-test results are not logged in the log page.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
282
Tests performed in the Short and Extended Self-test
The following table defines the tests performed in the short and extended self test. They are defined by their segment number which is also used to report Self-Test Results, in
Log Sense Page 1
0. Note that the only difference between the Short and the
Extended tests, is the sequential verify test in segment 7h. Also note that either of these tests can be run in foreground or background mode as previously described.
Table 223: Short and Extended Self-Test Description
Segment
Number
1h
Short Self-
Test
Extended
Self-Test
Drive Ready Test
Test Description
2h Drive Diagnostics
Internal check to insure drive is “ready”, similar to a Test
Unit Ready command.
This test is comprised of the Default Self Test as defined
in Section 20.12.2.1, “Default Self-test” on page 281
3h SMART
4h
5h
6h
7h
8h
Low Level Format check
Physical Head Check
Random Verify
- Verify First
300MB
- Verify Last
100 MB
Verify all
LBA’s
Recheck SMART
Perform SMART testing and check results to ensure that
SMART threshold criteria are not exceeded
Check to insure that the media is currently not in the
MEDIA FORMAT CORRUPTED state.
Write/Read test on each head in a predefined location in the drive's Reserved Area of the disk.
Perform 4000 random verify operations and insure no uncorrectable errors.
Sequential verify operation. Ensure that no uncorrectable errors occur within the verify range.
Same as segment 4h.
20.12.2.4 Background Medium Scan
For a related function, see Mode Page 1C (Informational Exceptions Control).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
283
20.13 Idle Time Function
The drive periodically saves data in logs and S.M.A.R.T. counters in the reserved area of the disks. The information is used by the drive to support various SCSI commands and for the purpose of failure analysis.
20.14 Command Time out Limits
The 'Command Time-out Limits' are defined as the time period from the SCSI Arbitration phase through the SCSI Task complete message, associated with a particular command.
The following times are for environments where Automatic Reallocation is disabled and there are no queued commands.
20.14.1 Reassignment Time
The drive should be allowed a minimum of 5 seconds to complete a “Reassign Blocks” command.
20.14.2 Format Time
Approximately 90/45 minutes should be allowed for 300/147 GB capacity drives to complete a "Format Unit" command when certification is disabled. Allow 180/90 minutes when certification is enabled. If "Fast Format" is enabled via the FFMT bit in mode page 00h, allow 30 seconds for completion.
20.14.3 Start/Stop Unit Time
The drive should be allowed a minimum of 30 seconds to complete a “Start Stop Unit” command (with Immed bit = 0). Initiators should also use this time to allow startup sequences initiated by auto start ups and “Start Stop Unit” commands (with
Immed bit = 1) to complete and place the drive in a “ready for use” state.
Note: A time-out of one minute or more is recommended but NOT required. The larger system time-out limit allows the system to take advantage of the extensive ERP/DRP that the drive may attempt in order to successfully complete the startup sequence.
Note: For SAS devices a NOTIFY(Enable Spinup) primitive is required prior to actually starting to spin up the spindle motor (regardless of whether a Start Stop Command with the Start bit set, was received or not).
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
284
20.14.4 Medium Access Command Time
The time-out limit for medium access commands that transfer user data or non-user data or both should be a minimum of 30 seconds. These commands are
Pre-Fetch
Read
Read Defect Data
Seek
Send Diagnostic (Function Code = 0)
Read Long
Reassign Blocks
Write
Write and Verify
Write Buffer
Write Same
Verify
Note: The 30-second limit assumes the absence of bus contention and data transfers of 64 blocks or less. This time should be adjusted for anticipated bus contention and if longer user data transfers are requested.
20.14.5 Time-out Limits for Other Commands
The drive should be allowed a minimum of 5 seconds to complete these commands:
Inquiry
Log Select
Log Sense
Mode Select
Mode Sense
Persistent Reserve In/Out
Read Buffer
Read Capacity
Read Long
Release
Request Sense
Reserve
Set/Report Device Identifier
Start/Stop Unit (with Immed bit = 1)
Synchronize Cache
Test Unit Ready
Writer Long
The command time-out for a command that is not located at the head of the command queue should be increased by the sum of command time-outs for all of the commands that are performed before it is.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
285
20.15 Recommended Initiator ERP
The Drive's design points for error reporting to the system assumes certain system action for the error return codes. These assumptions are:
1. SCSI protocol will be the first priority in reporting errors.
2. The system will maintain a log of all reported errors.
3. System architecture should include all error handling recommendations made in this section. Deviations should have mutual agreement between Drive development and system integration.
This section is directed toward documenting the assumptions made by the Drive that the system is expected to implement. The two error classes that the system should be concerned with are DATA and NON-DATA errors.
Data errors are those errors that deal with the handling of data to and from the MEDIA and are identified by the Additional
Sense Code contained in the sense data. The Additional Sense Codes for data errors are as follows:
•
•
•
• OC - Write error
11 - Unrecovered read error
14 - No record found
16 - Data Synchronization mark error
•
• 17 - Recovered read error without ECC correction
18 - Recovered read error with ECC correction
Typically, data errors do not include positioning of the heads or the data path though the electronics.
Nondata errors are those errors that do not have a direct relationship with transferring data to and from the media. Nondata errors can include data handling if the media is not associated with the error (that is, interface error).
The system action assumed for each class of error is outlined here.
20.15.1 Drive Service Strategy
The Drive service strategy is defined so the customer will be able to use the system as soon after a failure is detected as possible. The first priority is to replace the entire drive to make the system operational with minimal service time. The service representative should:
1. Back up all the customer data on this drive if possible
2. Replace the complete drive
3. Restore the customer data
4. Return the drive to customer service
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
286
20.15.2 Recommendations for System Error Log
•
•
•
•
The system error log should contain information about the Drive error that will allow recovery actions. The system error logs should contain all the error information returned in the sense data. At a minimum, the following information about each error occurrence should be logged.
• Valid bit and error code (Sense byte 0)
•
•
•
• Sense Key (Sense byte 2)
Information bytes (Sense bytes 3 through 6)
Command specific information (Sense bytes 8 through 11)
Additional Sense Code (Sense byte 12)
Additional Sense Code Qualifier (Sense byte 13)
Field Replaceable Unit (Sense byte 14)
Sense Key Specific (Sense bytes 15, 16, and 17)
Vender Unique error information (Sense bytes 20 through 23)
20.15.3 Data Recovery Procedure
Statistically, most data error activity is noise related and has nothing to do with defects in the media. It is wrong for the system to assume that every data error reported occurred because of a defect in the media. It is also wrong for the system to assume that every data error that occurred because of a media defect rendered the Drive unusable.
Recurring data error activity at the same physical location is an indication of a problem. The problem can be due to a media defect or magnetic damage. A media defect is physical damage to the recording capability of the media while magnetic damage is a defect in the bit pattern written to the media.
In both cases, the error can be corrected without replacing the unit. The physical sector may require relocation. The Drive
recovered data errors or the ARRE bit being inactive will have additional sense codes returned to recommend reassignment of sectors.
The need to reassign a sector should be infrequent. Sites not meeting error rate criteria are removed from use during SAT (Surface Analysis Test) in Drive manufacturing. With the exception of some early life SAT escapes (sites that were marginally missed during SAT), reassigning defective sectors should be rare. Frequent sector reassignment may be an (early) indication of another type of failure. Sector reassignments are monitored as part of the predictive failure analysis. When a threshold is exceeded, the Drive will notify the initiator that a scheduled service action is required.
Drive soft error rates are based on extraneous random faults that are not predictable. Media defects discovered after the Drive completes manufacturing final test need to be relocated so that soft error rates are not influenced by predictable known error sites. Failure of the system to properly relocate defective media sites can have a direct influence on system throughput and drive error rates.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
287
20.15.3.1 Reassign a Physical Sector
The Drive determines the need to reassign physical sectors based on error activity. Once a physical sector requires reassignment, the Drive will either reassign the physical sector, or recommend to the initiator that the LBA associated with the physical sector be reassigned.
When the following Sense Key, Additional Sense Code, and Additional Sense Code Qualifier combinations are returned, the initiator should reassign the LBA reported at the next opportunity.
Note:
etc.).
Table 224: Recommend Reassign Errors
Key
1
1
Code Qual Description
17 07 Recovered Data without ECC - Recommend Reassignment
18 05 Recovered Data with ECC - Recommend Reassignment
To reassign an LBA that has sense data recommending a reassignment, the initiator should:
1. Attempt to recover the data from the sector being reassigned with a Read (08) or Read (28) command.
2. Reassign the LBA using the Reassign Blocks (07) command.
- If the reassignment completes successfully (Good Status), log the error in the system error log.
“Reassign Blocks Recovery” on page 289.
3. Write the LBA that was reassigned.
20.15.3.2 Data Error Logging
The Drive will report data errors to the initiator that do not require immediate action (successful auto reallocation, successful auto rewrite, or no action needed on this occurrence). The initiator should log these errors in the system error log. No other action is required.
Table 225:
Log Only Errors
1
1
1
1
Key
1
1
1
18
18
17
18
Code Qual Description
16 00
Data Synchronization Mark Error
17
17
01
06
Recovered Data with Retries
Recovered Data without ECC - Auto Reallocated
09
00
02
07
Recovered Data without ECC - Data Rewritten
Recovered Data with ECC
Recovered Data with ECC - Auto Reallocated
Recovered Data with ECC - Data Rewritten
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
288
20.15.3.3 Reassign Blocks Recovery
The Drive provides the capability to remove media defects without reducing capacity. If the mode parameter bit ARRE is active, the Drive will automatically reallocate LBA's determined to be defective. For those LBA's where the error is unrecoverable or the initiator elects to not have the Drive automatically reallocate LBA's, the Drive will recommend reassignment of the LBA.
Recovery from a failed reassignment consists of the following actions:
• Updating the defect descriptor to remove the LBA's that have been successfully reassigned and then retry the Reassign Blocks command. The LBA contained in the Command Specific Information field of the Sense Data is the LBA in the first defect descriptor that was not reassigned because of the failure. If the command failed because of an unrecoverable read error other than those specified in the defect descriptor, add this LBA to the defect descriptor and retry
the command. Refer to Section 18.26, “REASSIGN BLOCKS (07)” on page 197, for additional information.
•
• If the retried Reassign Blocks (07) command completes successfully, returning to normal processing.
If the retried Reassign Blocks (07) command fails, servicing the drive using the service guidelines recommended in
Section 20.15.1, “Drive Service Strategy” on page 286.
20.15.4 Nondata Error Recovery Procedure
The Drive will follow a logical recovery procedure for nondata errors. The initiator options for non-data errors are limited to logging the error, retrying the failing command, or replacing the drive.
These recovery procedures assume the initiator practices data back-up and logs errors at the system level for interrogation by service personnel.
20.15.4.1 Drive Busy
The Drive is busy performing an operation. This is not an error condition. The initiator can test for completion of the operation by issuing Test Unit Ready (00) (or media access) commands.
• If the Test Unit Ready (00) (or media access) command completes with Check Condition Status then issue a Request
Sense (03)
- If the specified recovery procedure for the sense data is for a condition other than drive busy, follow the recovery procedure for the condition reported.
•
- If the specified recovery procedure for the sense data is for a drive busy condition, then continue re-issuing the Test
Unit Ready (00) and Request Sense commands for the duration of a media access time-out or until the drive returns
Good Status.
Strategy” on page 286. Otherwise return to normal processing.
If the Test Unit Ready (00) (or media access) command completes with Good Status, then return to normal processing.
20.15.4.2 Unrecovered Drive Error
The initiator should retry the failing command.
1. If the retry of the failing command completes with Good Status or recovered Sense Key, follow the recovery procedure
in Section 20.15.4.3, “Recovered Drive Error” on page 290.
2. If the retry of the failing command completes with hardware error sense, verify there is no outside cause (e.g., power supply) for the failure, then retry the failing command. a. If the retry of the failing command completes with Good Status, follow the recovery procedure in next Section
20.15.4.3, “Recovered Drive Error” on page 290.
b. If the retry of the failing command completes with Recovered sense or Hardware error sense, then service the drive
using the service guideline recommended in Section 20.15.1, “Drive Service Strategy” on page 286.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
289
20.15.4.3 Recovered Drive Error
The Initiator should log the error as soft with the recovery level.
20.15.4.4 Drive Not Ready
The initiator should do the following:
1. Issue a Start Stop Unit (1B) command.
3. If the drive fails to come ready within the specified time, service the drive using the service guidelines specified in Sec-
tion 20.15.1, “Drive Service Strategy” on page 286.
4. Retry the failing command. a. If the failing command completes with Good Status, log the error as recovered.
b. If the failing command completes with Not Ready sense, verify there is no outside cause (for example, the power
20.15.4.5 No Defect Spare
Three conditions can cause this error:
1. When the Reassign Blocks (07) command is issued and there are no spares available for the Drive to use for the relocation requested.
2. When the Glist is full and the sector to be reassigned cannot be added.
3. During a format operation, there was not enough space available to fulfill the spare requirement (Dlist is too large).
Service the Drive following Section 20.15.1, “Drive Service Strategy” on page 286.
20.15.4.6 Degraded Mode
degraded mode. In all cases the Sense Key is Not Ready. The causes are the following:
1. Sense Code/Qualifier of Logical Unit Not Ready, initializing command required. The spindle motor not spinning or not at the proper speed. This may not be an error condition. The initiator should issue a Unit start (1B) command to start
2. Sense Code/Qualifier of Diagnostic Failure. Failure of a Send Diagnostic self test, a start up sequence, or other internal target failures.
- Failure of a send diagnostic self test or a start up sequence.
This failure is the result of the diagnostics that are executed during power on or when the Send Diagnostic (1D) command is executed detecting a failure. As with the RAM code not loaded and the configuration data not loaded, the recovery is either a power cycle or issuing the Send Diagnostic (1D) command with the self test bit set active.
Recovery for a failed Send Diagnostic (1D) is achieved in one of the following ways:
Executing the Send Diagnostic (1D) command
Power cycling the drive
Recovery for a failed power up sequence is achieved in one of the following ways:
Issuing a Unit start (1B) command
Power cycling the drive.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
290
- Internal target failures
The drive periodically adjusts the track following for each head to compensate for expansion and contraction of the disks due to temperature changes. If one of these adjustments fails, the drive will enter a degraded mode to prevent writing data off track.
Recovery of this condition is either a power cycle or successful completion of the Send Diagnostic (1D). Service the
the power cycle or the Send Diagnostic (1D) command fail to complete successfully.
3. Sense Code/Qualifier of Format Command Failed Format Unit (04), Sense Code/Qualifier of Medium Format Cor-
rupted Reassign Failed Reassign Blocks (07) command, or an automatic reallocation failed or was abnormally terminated.
Recovery from a failed Format Unit (04) is achieved by retrying the command. If the command fails a second time, ser-
If the above defined recovery procedures fail to clear the degraded mode condition, the Drive should be replaced. Follow the
procedure in Section 20.15.1, “Drive Service Strategy” on page 286, when replacing the drive.
20.15.4.7 Reserved Area Hard Error
Sectors found defective in the reserved area of the disk cannot be reassigned after the Drive leaves the factory. The data in the reserved area is not directly accessible by the initiator. For this reason, the reserved area has all data. A data error must occur in both copies of the data record before the Drive considers a reserved area read error. When this happens, the integrity of the drive is questionable.
Service the Drive using Section 20.15.1, “Drive Service Strategy” on page 286.
20.15.4.8 Interface Protocol
For all interface protocol errors, the initiator should complete the following steps:
1. Correct the parameter that caused the Illegal Request
2. Retry the failing command
3. If the first retry of the failing command completes with
- Good Status, log the error as recovered
- Check Condition Status with sense data for an Illegal Request, verify there is no outside cause (for example, the power supply) for the failure
- Other, follow the recommendations for the error condition reported. Retry the failing command. If this retry of the failing command completes with
• Good Status, log the error as recovered
• Check Condition Status with sense data for an Illegal Request, service the drive using the service guideline rec-
ommended in Section 20.15.1, “Drive Service Strategy” on page 286.
• Other, follow the recommendations for the error condition reported.
20.15.4.9 Aborted Command
The initiator should determine the cause from the Additional Sense Code (byte 12):
•
• Sense Key = B (Aborted Command) with Additional Sense Codes of 1B, 25, 43, 49, and 4E are initiator caused abort conditions. The initiator should correct the condition that caused the abort and retry the failing command.
Sense Key = B (Aborted Command) with Additional Sense Code of 44 or 48 are drive caused abort conditions. The initiator should:
1. Retry the failing command.
2. If the retry of the failing command completes with
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
291
•
- Good Status, log the error as recovered.
- Abort Command Sense, verify there is no outside cause (e.g. power supply) for the failure.
3. Retry the failing command.
4. If the retry of the failing command completes with
- Good Status, log the error as recovered.
“Drive Service Strategy” on page 286.
Sense Key = B (Aborted Command) and an Additional Sense Code of 47 can be an initiator or Drive caused abort condition. The initiator should follow the above procedure for initiator caused abort conditions if the Drive detected the SCSI bus parity error. The initiator should follow the above procedure for Drive caused abort conditions if the initiator detected the SCSI bus parity error.
20.15.4.10 Unit Attention Condition
Unit Attention Conditions are not errors. They alert the initiator that the drive had an action that may have changed an initiator controlled state in the drive. These conditions are the following:
Not Ready to Ready Transition
Not ready to ready transition, unit formatted. This Unit Attention Condition will not be reported to the initiator that issued the
Format Unit (04).
Reset
Reset - This means the drive was reset by either a power-on reset, Hard Reset, LUN Reset TMF or an internal reset.
Mode Parameters Changed
A Mode Select (15) command successfully completed. This means that the mode parameters that are the current value may have changed. The parameters may or may not have changed but the command to change the parameters successfully completed. The Drive does not actually compare the old current and the new current parameters to determine if the parameters changed. This Unit Attention Condition will not be reported to the initiator that issued the Mode Select (15).
Microcode Has Changed
Write Buffer (3B) to download microcode has successfully completed. This means that the microcode that controls the Drive has been changed. The code may or may not be the same as the code currently being executed. The Drive does not compare old level code with new code.
Commands Cleared by Another Initiator
Tagged commands cleared by a clear queue message. This means that the command queue has been cleared. The Unit Atten-
tion Condition is not reported to the initiator that issued the clear queue message. Unit Attention Condition is reported to all initiators that had commands active or queued.
Reissue any outstanding command.
Log Select Parameters Changed
A Log Select (4C) command successfully completed. This means that the Log Select command cleared statistical information
excluding the initiator that issued the Log Select command.
Device Identifier Changed
A Set Device Identifier (A4) command successfully completed. This means that the Set Device Identifier information field has
initiators excluding the initiator that issued the Set Device Identifier command.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
292
20.15.4.11 Components Mismatch
The compatibility test is performed at a power cycle. The compatibility test verifies the microcode version of the electronics.
When the Drive detects the microcode version mismatch, the most likely cause is the result of incorrect parts used during a service action.
If the error reported is Key/code/qualifier 4/40/80, Diagnostic failure, bring-up fail, the initiator should do the following:
1. Retry Power cycle
2. Check the send diagnostic end status. If the status is
- GOOD, Return to normal processing
- Check Condition Status, issue a Request Sense (03) and follow the recommendations for the sense data returned unless the sense data is for a component mismatch. If the sense data is for component mismatch, service the drive
using the service guideline recommended in Section 20.15.1, “Drive Service Strategy” on page 286.
20.15.4.12 Self Initiated Reset
The Drive will initiate a self reset when the condition of the Drive cannot be determined. The internal reset will terminate any outstanding commands, release any reserved initiators, and stop the spindle motor. The initiator can recover by
1. Logging the error
2. Retrying the failing command. If the failing command completes with:
- Good Status, return to normal processing
- Other, follow the recommendations for the error reported.
20.15.4.13 Defect List Recovery
This is not an error condition.
The initiator either requested a defect list in a format (block or vendor specific) that the Drive does not support or the requested defect list(s) exceed the maximum list length that can be returned. If the Sense Key/Code/Qualifier are:
1/1F/00, the requested list(s) exceed the maximum length that can be supported. The initiator should request one list at a time.
If a single list exceeds the maximum returnable length, this may be an indication of a marginally operational drive. Service the
drive following the service guidelines in Section 20.15.1, “Drive Service Strategy” on page 286.
1/1C/01 or 1/1C/02, the requested defect list is not in the format that the Drive supports. The requested defect list is returned in the physical (cylinder, sector, head) format. This is the default format. There is no initiator action required for this condition.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
293
20.15.4.14 Miscompare Recovery
A miscompare can occur on a Verify (2F) command or a Write and Verify (2E) with the byte check (BytChk) bit active. Recovery for a miscompare error is different for the two commands.
Verify Command
The initiator should do the following:
1. Verify that the data sent to the drive is the correct data for the byte-by-byte compare.
2. Read the data from the media with a Read (08) or Read (28) command and verify that the data from the media is the expected data for the byte-by-byte compare.
- If all data are correct, this is an indication that the data may have been read from the media incorrectly without an
- If all data are not correct, this is an indication that the data on the media is not the data the initiator expected.
Rewrite the correct data to the media.
Write and Verify Command
The drive uses the same data in the data buffer to write then read and compare. A miscompare error on the Write and Verify
(2E) command is an indication that the drive cannot reliably write or read the media. Service the drive using the procedures
specified in Section 20.15.1, “Drive Service Strategy” on page 286.
20.15.4.15 Microcode Error
The microcode from the interface is validated before the device operates using that microcode. When the validation detects incorrect or incomplete data, the Drive enters degraded mode.
If the initiator attempted to load microcode using the Write Buffer (3B) retry the Write Buffer (3B). If the command completes with
•
• Good Status - return to normal processing
If the check sum error occurred during normal processing, the initiator may attempt to load microcode before deciding to ser-
To load new microcode, the initiator should issue a Write Buffer (3B) command with the download and save option. If the
Write Buffer (3B) command completes with
• Good Status, return to normal processing. Retry the failing command. If the task complete with
- Good Status - Continue normal processing.
•
•
- Check Condition Status for check sum error - Service the drive using the service guidelines recommended in Sec-
tion 20.15.1, “Drive Service Strategy” on page 286.
- Check Condition Status for any other error - follow the recommended recovery procedure for the error reported.
Check Condition Status for Check sum error, service the drive using the service guidelines recommended in Section
20.15.1, “Drive Service Strategy” on page 286.
Check Condition Status for any other error, follow the recommendations for the returned sense data.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
294
20.15.4.16 Predictive Failure Analysis
The Drive performs error log analysis and will alert the initiator of a potential failure. The initiator should determine if this device is the only device with error activity.
If this drive is the only drive attached to the initiator with error activity, service the drive using the procedures specified in Sec-
tion 20.15.1, “Drive Service Strategy” on page 286.
Note:
Service for this drive can be deferred. The longer service is deferred, the more probable a failure can occur that will require immediate service.
If more than this drive is experiencing error activity, the drive is probably not at fault. Locate and service the outside source causing error activity on this drive.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
295
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
296
21.0 TCG SSC
This chapter provides information on HGST C-generation encryption-specific HDD firmware and features. It is assumed that the reader is familiar with the referenced specifications and industry standards.
21.1 Referenced Specifications and Standards
21.1.1 TCG Specifications
This section references 3 separate TCG specifications, which are available on the TCG website:
(
http://www.trustedcomputinggroup.org/
):
1.
TCG Core Specification, Version 1.0, Revision 0.9
- The TCG Core Specification is the general specification for trusted computing that encompasses all classes of devices, including storage
2.
TCG Storage Interface Interactions Specification (SIIF), Version 1.0, 1/27/2009
- Specifies the interaction between the HDD and the SCSI/ATA protocols
3.
TCG Storage Security Subsystem Class (SSC): Enterprise, Version 1.0, rev 1.0, spec dated 1/27/09
• A Security Subsystem Class defines minimum acceptable Core Specification capabilities of a storage device in a specific class (in our case – enterprise).
• Storage devices in specific classes may have a subset of the capabilities that are defined in the core specification
21.1.2 Federal Information Processing Standards (FIPS)
This section references the following Federal Information Processing Standards, published by the US National Institute of
Standards (NIST), which are available on the NIST website (
http://www.itl.nist.gov/fipspubs/
):
1. FIPS 197, Advanced Encryption Standard (AES), 2001 November 26.
http://csrc.nist.gov/publications/fips/ fips197/fips-197.pdf
2. FIPS 180-3, Secure Hash Standard (SHS)
http://csrc.nist.gov/publications/fips/fips180-3/fips180-3_final.pdf
3. FIPS 140-2, Security Requirements for Cryptographic Modules – 01 May 25
(Supersedes FIPS PUB 140-1, 1994 January 11)
http://csrc.nist.gov/publications/fips/fips140-2/fips1402.pdf
21.1.3 National Institute of Standards (NIST)
This section references the following NIST publications, available on the NIST website ( http://www.nist.gov/index.html
)
1. NIST Special Publication 800-90, Recommendation for Random Number Generation Using Deterministic Random
Bit Generators (Revised), http://csrc.nist.gov/publications/nistpubs/800-90/SP800-90revised_March2007.pdf
21.1.4 Department of Defense
1. DoD 5220.22-M, "National Industrial Security Program Operating Manual", 2/28/2006 http://www.dtic.mil/whs/ directives/corres/html/522022m.htm
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
297
.
21.1.5 RSA Laboratories Standards
1. RSA-PSS -
http://www.rsa.com/rsalabs/node.asp?id=2146
2. RSA
PKCS #5 v2.0 Password-Based Cryptography Standard
- ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-5v2/ pkcs5v2-0.doc
21.1.6 Other Standards
1. T10 SCSI Standard.(T10 homepage - (
http://www.t10.org/index.html
)
21.2 Implementation Exceptions
The following is a list that describes non-compliance with the TCG Enterprise SSC specification:
• The SSC specification requires support for 1024 bands, but the implementation supports up to 64 bands.
• The K_AES_256 table was implemented with only the UID and MODE columns.
• At any given time, the implementation allows for only 1 active session. In the case when a session is active and a new session is requested, the drive answers the host with SP_BUSY, instead of NO_SESSIONS_AVAILABLE
21.3 Implementation Features and Details Outside of TCG Specifications
The following features are outside of the TCG specifications.
1. Ports
2. Firmware signing
The following implementation details are outside of the TCG SSC specification.
a. The SSC States “The TPer SHALL implement the ParamCheck Longitudinal Redundancy Check (LRC) for Get and
Set method calls on a PIN value".
If the LRC check is erroneously applied to a value other than a PIN we ignore it, therefore no error is generated.
b. When handling a "TCG cmd followed by a R/W cmd", all reads and writes that follow a TCG command will be processed in the normal way. No special handling or error messages will be sent to the host. It is up to the host to understand the possible outcomes of TCG commands and r/w command ordering and plan accordingly.
c. CRC checking is disabled in all cases, so the drive will return data to the host. If the user successfully authenticates, then unencrypted data is returned to the host. If the user is unable to authenticate, encrypted data is returned to the host.
d. The TPer replies with SP_BUSY for requests beyond 1 session.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
298
21.4 Encryption Algorithms
21.4.1 Advanced Encryption Standard(AES) Support
AES encryption is implemented in hardware, with support for ECB or XTS mode for 128 bit or 256 bit keys. A single key is active at any one time within the AES hardware engine. Firmware is responsible for reading the keys from the hardware and also for determining which key is attached to a given LBA range; the hardware can only detect if the LBA has been encrypted or not. The TCG protocol does not allow for a user to choose or switch between AES algorithms, so it is up to the vendor to choose which AES algorithm is used in their implementation. The HGST TCG SSC implementation in firmware supports
AES 256-XTS only.
21.4.2 Level 0 Discovery Vendor Specifc Data
This section refers to section 10.2.14 of the TCG Storage Security Subsystem Class document (see the Specfications section of this document). Table 2 of Section 10.2.14 displays a "Vendor Specific" section in bytes 16 to 47. This Vedor Specific section is documented below.
Table 226: Persistent Reserve In (5E)
Byte
16
17
20
21
18
19
22-47
7
RSVD
RSVD
6
MB_s
MB_e
5
Bit
4 3
Version (set to 0)
Vendor Specific State Information
2
0
0
0
Reserved
Diag_s
0
Reserved
Diag_s
Reserved
Dload_s
Dload_e
1
Locking_s
Locking_e
0
FDE_s
FDE_e
FDE_s/FDE_e - Full disk encryption is Supported (equivalent to MediaEncryption in Locking Feature Descriptor Enterprise
SSC 10.2.14) / Full disk encryption is Enabled on one or more band.
Locking_s/Locking_e - LBA band locking is supported - locking object exists in the locking SP of the device (equivalent to
LockingEnabled in Locking Feature Descriptor Enterprise SSC 10.2.14) / The locking object for a band has either Read-
Locked or WriteLocked attribute set (equivalent to Locked in Locking Feature Descriptor Enterprise SSC 10.2.14).
Dload_s/Dload_e - support for Admin SP Firmware download port / Firmware download port via Admin SP is locked.
Diag_s/Diag_e - Support for Admin SP vendor specific Diagnostic port / Diagnostics port via Admin SP is locked.
MB_s/MB_e - Multiple encrypting bands supported / Multiple encrypting bands enabled. This bit shall be set to 1 if more than one band exists in addition to the global band and is defined with at least one LBA.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
299
21.4.2.1 T10 End-To-End Data Protection
AES encryption is performed after T10 end-to-end data protection data has been added, so that the T10 information is encrypted along with the customer data.
21.4.3 Pseudo Random Number Generation (PRNG)
Pseudo-random number generation is implemented using the NIST SP800-90 PRNG. This PRNG uses AES as a primitive both for entropy mixing and entropy output. The successive values of the state of the PRNG are kept private to the device to ensure that keys generated by the device are unpredictable. The PRNG seed is derived from head position noise and has been measured to be uniformly distributed.
21.4.4 Key Wrapping
The NIST AES Key Wrapping Algorithm is used to encrypt a key with another key (KEK= Key Encryption Key).
For any band i, the KEK_i is derived from PIN_i and salt_i using the PBKDF2(Password-Based Key Derivation Function) algorithm. Then, the KEK_i is used to wrap the media encryption key using the NIST key wrapping algorithm.
21.4.5 Key Erasure
Three separate passes are used during cryptographic erase:
• Pass 1 to overwrite wrapped key material with 55h
• Pass 2 to overwrite with AAh
• Pass 3 to write the new wrapped key.
This implementation meets requirements specified in DoD 5220.22-M.
21.5
-
TCG SSC Tables
Two copies of all TCG SCC tables and data structures are stored in the RID; one is used as a primary copy and the other as a backup copy. The backup copy is used in the event the primary copy becomes corrupted. Each time a write is executed to any
TCG table, both the primary and backup copies of the tables are updated and saved in the RID. In the case of a corrupted copy, the good copy is always used to restore the corrupted copy to the correct state. If both copies of the tables become corrupted during operation, the tables will be reinitialized to default values automatically, and this will result in a key mismatch error when a read is attempted.
The default values in the TCG tables created at the time of manufacturing are per the TCG SSC specification. The following tables contain VU (Vendor Unique) entries, which are set at the time of manufacturing.
•
Admin SP C_PIN table
•
Locking C_PIN table
•
K_AES_256 table
•
Locking SP Locking Access Control table
•
LockingInfo Table
•
Locking SP Locking Table
The VU entries for these tables are specified below. In addition, explanation of default values is given for non-VU entries that require it.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
300
21.5.1 Admin SP C_PIN Table and Locking SP C_PIN Table
Per TCG SSC specification, the PIN is set to the MSID at manufacturing time. HGST has specified the MSID to be the serial number of the drive concatenated 4x. TryLimit is set to 0, meaning that there is no limit. Tries is set 0, meaning that there have been no attempts. Persistence is set to 0, meaning the “Tries” value does not persist through power cycles (The “Tries” value is reset to 0 after power cycle).
Table 227: HGST Implemetation of Admin SP_CPIN Table and Locking C_PIN
..
..
..
..
..
PIN
MSID
MSID
..
MSID
TryLimit
0
0
0
..
Tries
0
0
..
0
Persistence
0
0
..
0
21.5.2 K_AES_256 Table
The K_AES_256 table has 64 rows, one row for each band that can be allocated by the user. The first row is for the “global range”, also known as Band 0. This table was implemented without the “Name”, “CommonName”, and “Key” Columns.
Table 228: HGST Implementation of K_AES_256 Table
UID (8 byte hex)
00 00 08 06 00 00 00 01
00 00 08 06 00 00 00 02
..
00 00 08 06 00 00 00 40
MODE
23
23
..
23
The mode is specified in the TCG Enterprise SSC as a “Vendor Unique” (VU) entry. HGST initializes it in manufacturing to
mode=23 (media encryption mode, per TCG specification) for all 64 entries.
21.5.3 Locking SP AccessControl Table
The TCG Enterprise SSC defines the values for Row Number and UID as “Vendor Unique” (VU). HGST has defined them to be the row number in the table, with a range of 0-459 The range is calculated using the following formula : number_of_rows=(#SupportedBands * 7) +12, where
•
#SupportedBands = 64 (The implementation supports 64 bands)
•
The number 7 comes from the fact that each band has 7 UID/method combinations
•
The number 12 comes from the following 12 methods that must be included in the table.
1.
ThisSp / Authenticate
2.
3.
AuthorityTable/Next
Anybody Authority Object/ Get
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
301
9.
10.
11.
12.
6.
7.
4.
5.
8.
BandMasters Authority Object/ Get
EraseMaster Auth. Object / Get
C_PIN table / Next
EraseMaster C_PIN Object/ Set
LockingInfo Table / Get
Locking Table / Next
DataStore / Get
DataStore / Set
ThisSP / Random
Table 229: HGST Implementation of Locking SP Access Control Table
Row Number
.
1
0
459
UID
.
1
0
459
.
.
.
.
.
21.5.4 Locking Info Table
As specified in the TCG Enterprise SSC, this table has only 1 row. The “Vendor Unique” entries are specified in the table below. Encryption Support is initialized to EncryptionSupport=23 (media encryption mode) in manufacturing.
Table 230: HGST Implementation of Locking Info Table
Encrypt Support MaxRanges MaxReEncryptions KeysAvailable Cfg
.
NAME Version
.
0 0
.
.
23 0 0 0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
302
21.5.5 Locking SP Locking Table
The “Vendor Unique” (VU) values for this table are shown below.
Table 231: HGST Implementation of Locking SP Locking Table
.
NextKey
.
00 00 00 00
00 00 00 00h
ReEncrypt
State
ReEncrypt
Request
AdvKey
Mode
VerfMode
0 0 0 0
.
.
.
00 00 00 00
00 00 00 00h
0
.
0
.
0
.
0
.
ContOn
Reset
LastReEncrypt
LBA
LastRe
EncStat
General
Status
.
0
0
.
0
0
.
0
0
.
0
0
In the ActiveKey column, the Enterprise SCC allows for byte 3 to be defined as either 05 or 06. The HGST implementation uses 06.
21.6 Firmware Download and Signing
The HGST Firmware signing and download for encryption drives is meant to provide a mechanism for secure updates through the Host interface. Firmware is downloaded to the drive through the host interface, and the signature is verified using a public key installed in the reserved area during manufacturing, before it is loaded to RAM or installed in the reserved area on the
HDD.
Signature verification uses the RSA-PSS (Probabilistic Signature Scheme) signature verification algorithm with EMSA-
SHA256 as padding function . The firmware was designed and implemented with the intention of meeting the signing requirements under FIPS 140-2.
All HGST firmware packages will be signed, but only encryption enabled drives will verify the signature. If the signature cannot be successfully verified on encryption drives, the firmware cannot be downloaded onto the HGST encryption drives.
Failures to authenticate the firmware image will result in Check Condition with KCQ 5/26/9a (FRU 0). The act of issuing a firmware download to the drive will result in an implicit close of all open sessions at the security layer.
20.6 Ports
The ports capability is an HGST feature which is not a requirement under TCG Enterprise SSC. In order to use the ports capabilities on encryption drives, the user must successfully authenticate. Once a user successfully authenticates, they may change the state of any of the ports at any time during an active session to either the locked or unlocked state. The functionality and definition of these ports is shown below in a table.
The feature does make use of the TCG structures and tables. An additional table, the ports table, has been implemented, and additional entries were made to the Admin SP ACE table and the Admin SP AccessControl Table. The ports table and the modified TCG SSC tables are shown below
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
303
Table 232:
Ports Functionality
Port Name
Firmware Download
Description
This port has 2 valid states: locked and unlocked.
On encryption drives, the download port is unlocked intially, LockOnReset is "Null". Code can be downloaded onto the drive after the signature is successfully verified. If the signature cannot be verified successfully, no firmware can be downloaded to the drive. The user can change the state of the firmware download port only after authentication.
On non-encryption drives, this port will be set to unlocked at the factory, and the state cannot be changed by the user. Firmware will be downloaded to the non-encryption drive through this port without verification of the signature.
Diagnostics This port has 2 valid states: locked and unlocked. This port allows HGST access to modify any TCG table or key. In order to open this port both the SID and the Maker authorities need to be authenticated. The purpose of this port is to aid HGST in debugging
Table 233:
Ports Table
UID
00 01 00 02 00 01 00 02
00 01 00 02 00 01 00 01
Name
Firmware_Dload_Port
Diagnostic_Port
LocOnReset
Null
PowerCycle
PortLocked
FALSE
TRUE
Table 234: Modified Admin SP ACE Table
UID
Name
00 00 00 08 00 00 00 01 Anybody
Cmn
Name
“”
00 00 00 08 00 00 00 03
00 00 00 08 00 00 02 01
Makers
SID
00 00 00 08 00 00 8C 03 SID_SetSelf
00 00 00 08 00 00 8C 04 MSID_Get
00 00 00 08 00 00 8C 05SID_Set Makers
00 00 00 08 00 00 8C 06
SID_Makers_
SetDiag
00 00 00 08 00 00 8C 07
SID_Makers_
SetDiag
00 00 00 08 00 00 8C 08 SID_GetPort
00 00 00 08 00 00 8C 09 SID_GetPort
‘’’’
“”
“”
“”
“”
“”
“”
“”
“”
Boolean
Expression
Row
Start
Row
End
Column Start
00 00 00 09 00 00 00 01
Null Null ‘’’’
Column
End
‘’’’
00 00 00 09 00 00 00 03
Null Null
00 00 00 09 00 00 00 06
Null Null
00 00 00 09 00 00 00 06
Null Null
‘’’’
‘’’’
“PIN”
‘’’’
‘’’’
“PIN”
00 00 00 09 00 00 00 01 Null Null “PIN” “PIN”
00 00 00 09 00 00 00 06
00 00 00 09 00 00 00 06
And
00 00 00 09 00 00 00 03
00 00 00 09 00 00 00 06
And
00 00 00 09 00 00 00 03
00 00 00 09 00 00 00 06
Null Null “Enabled” “Enabled”
Null Null “PortLocked” “PortLocked”
Null Null “PortLocked” “PortLocked”
Null Null “PortLocked” “PortLocked”
00 00 00 09 00 00 00 06 Null Null “LockOnReset” “PortLocked”
The last 2 lines of the table are the additional entries required to implement the firmware donload port.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
304
Table 235: Modified Admin SP AccessControl Table
Row
Number
UID Invoking ID MethodID Comon Name
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
VU
ACL Log
00 00 00 00
00 00 00 01
(ThisSP)
00 00 00 09
00 00 00 00
00 00 00 06
00 00 00 0C
(Authenticate)
00 00 00 06
00 00 00 08
(Authority table)
00 00 00 09
00 00 00 01
(Next)
00 00 00 06
00 00 00 06
(Get)
(Anbody Authority object)
00 00 00 09
00 00 00 03
(Makers Author-
00 00 00 06
00 00 00 06
(Get) ity object)
00 00 00 09
00 00 00 06
(SID Authority
00 00 00 06
00 00 00 06
(Get) object)
00 00 00 0B
00 00 00 00
(C_PIN table)
00 00 00 0B
00 00 00 01
00 00 00 06
00 00 00 08
(Next)
00 00 00 06
00 00 00 07
(Set)
(SID C_PIN object)
00 00 00 0B
00 00 84 02
(MSID C_PIN
00 00 00 06
00 00 00 06
(Get) object)
00 00 00 09
00 00 00 03
(Makers Authority object)
00 00 00 00
00 00 00 01
(ThisSP)
00 00 00 06
00 00 00 07
(Set)
00 00 00 06
00 00 06 01
(Random)
AnybodyAuthenticateAdminSP
Makers-Next-
Authority table
Anyboby-Get-
Anbody Authority
Object
Anyboby-Get-
Anbody Authority
Object
SID-Get-SID
Authority Object
Makers-Next-
C_PIN table
SID_SetSelf-Set-
SID_C_PIN object
MSID_Get-Get-
MSID C_PIN object
SID_SetMakers-
Set-Makers Authority Object
Anybody-Random
00 00 00 08
00 00 00 01
(Anybody)
00 00 00 08
00 00 00 03
(Makers)
00 00 00 08
00 00 00 01
(Anybody)
00 00 00 08
00 00 00 03
(Makers)
00 00 00 08
00 00 02 01
(SID)
00 00 00 08
00 00 00 02
(Makers)
00 00 00 08
00 00 8C 03
(SID_SetSelf)
00 00 00 08
00 00 8C 04
(MSID_Get)
00 00 00 08
00 00 8C 05
(SID_SetMakers)
00 00 00 08
00 00 00 01
(Anybody)
None
None
None
None
None
None
None
None
None
None
None
00 01 00 02 00 00 00 06
00 01 00 02 00 00 00 07
SID_Set_Dload SID_SetPort
VU
VU
VU
VU
VU
VU
00 01 00 02
00 01 00 02
00 01 00 02
00 01 00 01
00 00 00 06
00 00 00 06
00 00 00 06
00 00 00 07
SID_GetDload
SID_Makers_SetDiag
00 01 00 02 00 00 00 00 06 00
01 00 02 00 00 06
SID_Makers_SetDiag
SID_GetPort None
SID_Makers_
SetDiag
SID_Makers_S etDiag
None
None
Add ACE
ACL
Remove
ACE ACL
Null
Null
Null
Null
MethodID
00 00 00 06
00 00 00 0C
(Authenticate)
00 00 00 08
00 00 00 03
(Makers)
Null Null
00 00 00 08
00 00 00 01
(Anybody)
Null Null
00 00 00 08
00 00 00 03
(Makers)
Null
Null
Null
Null
Nul
Nul
Nul
Nul
Nul
Nul
Null
Null
Null
Null
Nul
Nul
Nul
Nul
Nul
Nul
00 00 00 08
00 00 02 01
(SID)
00 00 00 08
00 00 00 02
(Makers)
00 00 00 08
00 00 02 01
(SID)
00 00 00 08
00 00 02 01
(SID)
00 00 00 08
00 00 02 01
(SID)
00 00 00 08
00 00 00 01
(Anybody)
00 00 00 08
00 00 02 01
(SID)
00 00 00 08
00 00 02 01
(SID)
00 00 00 08
00 00 02 01
(SID)
00 00 00 08
00 00 02 01
(SID)
The last 2 lines of the table are the additional entries required to implement the firmware donload port.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
305
21.7 MSID
The MSID is set for each drive at the time of manufacturing to the serial number concatenated 4 times, to create a 32 byte password. Thus, as an example, if the serial number of a drive is abcd1234, the MSID would then be set to abcd1234abcd1234abcd1234abcd1234. In TCG use cases such as “erase” or “repurpose”, this will be the MSID that is restored to the drive.
HGST serial numbers are unique and are generated according to the following general rules:
•
Maximum length of the serial number is 8 characters
•
Serial numbers do not contain the characters “I”or “O”.
21.8 Logging
HGST logging functions will not record any sensitive data such as customer plain text data, passwords, encryption keys or wrapping keys.
.
21.9 Number of Sessions
The HGST implementation supports 1 active session at a time. In the case when a session is active and a new session is requested, the drive answers the host with SP_BUSY. This covers the following 2 scenarios.
•
If an SP is in session and an attempt is made to start a second session with the same SP.
•
If an SP is in session and an attempt is made to start a second session with a different SP.
21.10 Number of Bands
The Enterprise SSC specification calls for support of up to 1024 bands. The HGST implementation supports a maximum of 64 bands.
21.11 Number of COMIDs
The HGST Enterprise SSC implementation supports 2 COMIDs, the minimum requirement in the Enterprise SSC specification. Only 1 comid can be in use at any time.
21.12 Locked and Unlocked Behavior
21.12.1 T10 SCSI commands
The table below describes how basic T10 SCSI commands behave on encryption drives in the locked and unlocked states.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
306
Table 236: T10
SCSI Commands Behavior Table
Command
FORMAT UNIT (04)
Unlocked
OEM
INQUIRY (12)
LOG SELECT (4C)
LOG SENSE (4D)
OEM
OEM
OEM
Locked
Command can’t be executed when locked. Must unlock with MSID or password, before formatting.
OEM
OEM
OEM-no access to customer data, will get some log information.
MODE SELECT (15)
MODE SELECT (55)
MODE SENSE (1A)
MODE SENSE (5A)
PERSISTENT RESERVE IN (5E)
PERSISTENT RESERVE IN (5F)
PRE-FETCH (34)
READ (6) - (08)
READ (10) - (28)
READ (12) - (A8)
READ (16) - (88)
READ (32) - (7F/09)
READ BUFFER (3C)
READ CAPACITY (10) - (25)
READ CAPACITY (16) (9E/10)
READ DEFECT DATA (37)
READ DEFECT DATA (B7)
READ LONG (3E)
REASSIGN BLOCKS (07)
RECEIVE DIAGNOSTICS RESULTS (1C)
RELEASE (17)
RELEASE (57)
REPORT DEVICE IDENTIFIER (A3/05)
REPORT LUNS (A0)
REPORT SUPPORTED OPERATION
CODES (A3/0C)
REPORT SUPPORTED TASK
MANAGEMENT FUNCTIONS (A3/0D)
REQUEST SENSE (03)
RESERVE (16)
RESERVE (56)
REZERO UNIT (01)
SEEK (6) - (0B)
SEEK (10) - (2B)
SEND DIAGNOSTIC (1D)
SET DEVICE IDENTIFIER (A4/06)
START STOP UNIT (1B)
SYNCHRONIZE CACHE (10) - (35)
SYNCHRONIZE CACHE (16) - (91)
TEST UNIT READY (00)
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
MSID only - limits DRAM accessibility. This is a read function.
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
OEM. Sensitive data cannot be snapshotted from DRAM.
OEM
OEM
OEM
OEM
Ent_A authorized only
OEM
OEM
OEM
OEM
OEM.
OEM.
OEM.
OEM
OEM
OEM
OEM
OEM
OEM
OEM
Customer specific.
OEM.
OEM
OEM
OEM
OEM
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
307
VERIFY (2F)
VERIFY (12) - (AF)
VERIFY (16) - (8F)
VERIFY (32) - (7F/0A)
WRITE (6) - (0A)
WRITE (10) - (2A)
WRITE (12) - (AA)
WRITE (16) - (8A)
WRITE (32) - (7F/0B)
WRITE AND VERIFY (10) - (2E)
WRITE AND VERIFY (12) - (AE)
WRITE AND VERIFY (16) - (8E)
WRITE AND VERIFY (32) - (7F/0C)
WRITE BUFFER (3B)
(T10)
WRITE BUFFER (3B)
(For FW download)
WRITE LONG (3F)
WRITE SAME (41)
WRITE SAME (16) - (93)
WRITE SAME (32) - (7F/0D)
SECURITY_IN
SECURITY_OUT
OEM
OEM
OEM
Access to customer data but does not return data back to customer. CRC checking is ignored but still do ECC checking, and is executable on locked LBAs.
Access to customer data but does not return data back to customer. CRC checking is ignored but still do ECC checking, and is executable on locked LBAs.
Access to customer data but does not return data back to customer. CRC checking is ignored but still do ECC checking, and is executable on locked LBAs.
OEM Access to customer data but does not return data back to customer. CRC checking is ignored but still do ECC checking, and is executable on locked LBAs.
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM
OEM (write
DRAM onto drive)
FW is signed and downloaded.
OEM
OEM
OEM
OEM
OEM
OEM
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
OEM.
OEM. The write buffer command only functions to write to the buffer.
Per TCG and T10 specification. Ent_A authorized only.
Ent_A authorized only
Ent_A authorized only
Ent_A authorized only
Per TCG spec. Contains TCG payload.
Per TCG spec. Contains TCG payload.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
308
21.12.2 TCG SSC Commands
The table below describes how the required TCG Enterprise SSC commands behave on encryption drives in the locked and unlocked states. The TCG SSC requires the implementation of the Base, Admin, Locking, and Crypto Templates. As noted, the Crypto template was not implemented. In addition the SSC does not require any Admin Template tables or methods, so they are not mentioned in the table below.
Table 237: TCG Enterprise SSC Commands Behavior
Locked Command Description unlocked
Session Management There are two types of sessions:
1) Read-Only session
2) Read-Write session.
The SSC requires us to support Read-
Write sessions. Read-Only session is not allowed. A session is always initiated by the host.
See the “Write” parameter in the StartSession method description @ TCG Core
5.2.3.1, and see SSC requirement in SSC
Properties
6.2.1.2.
Returns session properties to host
.
N/A
StartSession Start a session N/A
N/A
N/A
SycSession
CloseSession
Response to say session successfully started
.
N/A
End (Close) a session N/A
N/A
N/A
Command
Discovery
Level 0
Level 1
Level 2
Description unlocked
Allows the host to discover a TCG drive, its properties, and table values.
Discovery request sent by host as IF-RCV command . Security Protocol = 0x01,
N/A
COMID=0x0001
Request basic TPER capabilities via properties using host messaging.
TCG methods retrieve table cell values.
Uses properties method
.
See methods below.
N/A
Locked
Uses properties method.
See methods below.
Command
Cryptographic Template
Random
Description
Random function is only function required under SSC
This is the only required method in the crypto template for SSC. It is a random number generator in software.
unlocked Locked
N/A - Not related to bands/data on drive. Authentication required.
N/A - Not related to bands/data on drive.
Authentication required.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
309
Command
Base Template
Set
Get
ParamCheck LRC
Next
Authenticate
GatACL
Description unlocked Locked
Mandatory
Sets a value in a table
Gets (reads) a value in a table
N/A - table operations. Not related to bands/data on drive.
N/A - table operations. Not related to bands/data on drive.
N/A
N/A - table operations. Not related to bands/data on drive.
N/A - table operations. Not related to bands/data on drive
.
TPer implements param check LRC (longitudinal Redundancy Check) on get/set method calls on PIN value
I terates over all the rows of a table.
N/A
Method requires user to specify "where"
(row in table) and a "count". If where not specified, 1st row in table is used. For count not specified, default is number of last row in table. Returns 0 or more row number/uidref pairs currently in use in
N/A - table operations. Not related to bands/data on drive.
N/A – table operations. Not related to bands/data on drive.
table, per parameters specified.
Authenticate an authority within a session
(session must have successfully begun)
.
Returns contents of access controls associa-
Must be authorized.
N/A - table operation's ACL stored in Method Table. The result is a list of uidrefs to ACE objects.
Must be authorized.
tions. Not to do with bands/data on drive.
N/A – table operations. Not related to bands/data on drive.
Command
Locking Template
Erase
Description unlocked Locked
Mandatory
Cryptographically erases user data in a specified LBA range and resets the access control (locking) of that LBA
Can erase if authorized.
Generates error
.
21.13 Error Codes
All error codes are compliant with the TCG Core specification and SIIF, except in the following case:
• The maximum sessions allowed at any single time is 1. When a session is active and a new session is requested, the drive answers the host with SP_BUSY, instead of NO_SESSIONS_AVAILABLE.
20.14 Customer Specific Requirements
This specification does not cover customer-specific requirements. Customer-specific requirements are submitted by the customer to HGST in the form of a customer-specification document.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
310
22.0 SCSI Sense Data
16-17
18-19
20-23
24-29
30-31
12
13
14
15
22.1 SCSI Sense Data Format
Format of the sense data returned by the drive in response to the REQUEST SENSE command.
Table 238:
Format of Sense Data.
Bit
Byte
7 6 5 4 3 2 1
0
1
2
Valid
0 ILI
Error Code (70h or 71h)
RSVD = 0
0
(MSB) Information Bytes
Sense Key
3-6
0
(LSB)
7 Additional Sense Length
(MSB) Product Specific Information
8-11
(LSB)
SKSV
Additional Sense Code
Additional Sense Code Qualifier
FRU = 0
Sense-Key Specific Bits
Sense-Key Specific Bytes
Reserved = 0
Vendor unique Error information
Product Specific Information
Reserved = 0
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
311
22.2 Sense Data Description
22.2.1 Valid (Bit 7 of byte 0)
0
1
The Information Bytes (byte 3 through 6) are not defined.
The Information Bytes (byte 3 through 6) contain a valid logical block address.
22.2.2 Error Code (Bit 6 - 0 of byte 0)
70h
71h
Current Error. This indicates an error for the current command.
Deferred Error. This indicates that the error is for a previous command that has already returned a good status. Such commands are associated with the immediate bit or write caching. Format unit (04h) command is an example of a command that may return a deferred error.
22.2.3 ILI: Incorrect Length Indicator (Bit 5 of byte 2)
The ILI bit is valid for the Read Long (3Eh) command and Write Long (3Fh) command only. ILI set to one and Valid Bit set to one indicates that the requested logical block length does not match the logical block length of the data on the medium for a
Read Long or Write Long command. The Information field contains residue information about the error. ILI set to zero indicates there is no incorrect length condition.
0
1
No Incorrect Length condition.
Incorrect Length Indicated.
Valid ILI
x
1
0
1
Command = Read Long or Write
Long
x yes
Description
No incorrect length condition
Requested Logical block Length does not match the logical block length of the data on the disk
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
312
22.2.4 Sense Key (Bit 3 - 0 of byte 2)
The sense key provides generic categories in which error and exception conditions can be reported. Initiators would typically use sense keys for high level error recovery procedures.
7h
There is no sense key information to be reported for the logical unit.
The last command completed successfully with some recovery action performed by the drive. More detailed information is available in the Additional Sense Code and Additional Sense Code Qualifier.
The logical unit addressed cannot be addressed. More detailed information is available in the Additional
Sense Code and Additional Sense Code Qualifier.
The command terminated with an unrecoverable error condition caused by a flaw in the media or an error in the recorded data. More detailed information is contained in the Additional Sense Code and Additional
Sense Code Qualifier.
The drive detected a unrecoverable hardware error while performing a command or during a diagnostic test.
More detailed information is contained in the Additional Sense Code and Additional Sense Code Qualifier.
There was an illegal parameter in the command descriptor block or additional parameter supplied as data. If an invalid parameter is found in the CDB, then the command is terminated without altering the medium. If an invalid parameter is found in parameters supplied as data, then the drive might have altered the medium.
Data Protect
The drive aborted the command.
Ch-Dh Not Implemented
Eh Miscompare
Fh Reserved
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
313
22.2.5 Information Bytes (Byte 3 through 6)
This field is only valid when Valid Bit is one.
• ILI = 0: This field contains the unsigned LBA associated with the sense key. The LBA reported will be within the
LBA range of the command as defined in the CDB.
Note:
An LBA other than the command LBA may be reported on the Reassign Block (07h) command.
• ILI = 1: This field contains the difference (residue) of the requested length in bytes. Negative values are indicated by two's complement notation.
Valid
0
1
1
0
1
ILI
x
Description
0x00000000 - (not used/invalid)
LBA
Residue of the requested length in bytes
22.2.6 Additional Sense Length (Byte 7)
Indicates the remaining number of bytes in the sense data. (It is always set to 18h.)
22.2.7 Command Specific Information (Byte 8 through 11)
This field is unused and will be set to zero.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
314
22.2.8 Additional Sense Code/Qualifier (Byte 12 and 13)
The following table shows the description of the combination of Sense Key / Sense Code / Qualifier.
Valid Sense Key, Code, Qualifier Combinations Used by the Drive.
0
0
0
0
0
0
0
0
0
0
0
Key Code
00
5E
5E
5E
5E
5E
5E
5E
5E
5E
5E
Qual
00
01
02
03
04
05
06
07
08
09
0a
Description
Sense Key = No Sense
No Additional Sense Information
(00 00) No Error.
Sense Key = No Sense
Idle_A Condition activated by timer
1831 Power Save: Idle_A by timer
Standby_Z Condition activated by timer
1834 Power Save: Standby_Z by timer
Idle_A Condition activated by Command
1835 Power Save: Idle_A by Command
Standby_Z Condition activated by Command
1838 Power Save: Standby_Z by Command
Idle_B Condition activated by timer
1832 Power Save: Idle_B by timer
Idle_B Condition activated by Command
1836 Power Save: Idle_B by Command
Idle_C Condition activated by timer
1833 Power Save: Idle_C by timer
Idle_C Condition activated by Command
1837 Power Save: Idle_C by Command
Standby_Y Condition activated by timer
1839 Power Save: Standby_Y by timer
Standby_Y Condition activated by Command
183A Power Save: Standby_Y by Command
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
315
1 02
1 03
00
00
Sense Key = Recovered Error
No Seek Complete
141B Servo: Recovered No seek complete
141D Servo: Recovered Seek timeout
141F Servo: Recovered Seek error
142B Servo: Recovered RRO Calibration timeout
Peripheral Device Write Fault
1737 Recovered post write abort
1739 Recovered Post PES check write abort
17D6 Servo Recovered read/write abort offtrack
17D8 Servo Recovered read/write abort rro field missing
17DA Servo Recovered read/write abort rro field misread
17DC Servo Recovered read/write abort rro field missing
17DE Servo Recovered read/write abort seek timeout
17E0 Servo Recovered read/write abort estimator error
17E2 Servo Recovered read/write abort predictor error
17E4 Servo Recovered read/write abort PES error
17E6 Servo Recovered read/write abort seek start error
17E8 Servo Recovered read/write abort PES reset error
17EA Servo Recovered read/write abort WCS other error
17EC Servo Recovered read/write abort WCS other error
17EE Servo Recovered read/write abort hard reset
17F0 Servo Recovered read/write abort RV sensor error
17F2 Servo Recovered read/write abort RV sensor error
17F4 Servo Recovered read/write abort SHARP other error
17F6 Servo Recovered read/write abort SHARP exception error
17F8 Servo Recovered read/write abort SVGA limit error
17FA Servo Recovered read/write abort gray code error
17FC Servo Recovered read/write abort burst error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
316
1 09
1 0B
1 0B
1 0B
0 0B
1 0C
1 0C
1 15
1
1
1
16
16
16
00
01
03
04
05
01
03
00
00
01
02
17FE Servo Recovered read/write abort no STM error
Track Following Error
1421 Servo: Recovered track following error
1423 Servo: Recovered track follow timeout
Temperature Warning Error
2A02 Temperature Warning
Background Selftest Failure Warning
2A03 Background selftest failure warning
Background Pre-Scan Failure Warning
2A04 Background pre-scan failure warning
Background Media Scan Failure Warning
2A05 Background media scan failure warning
Recovered Write Error with Auto Reallocation - Auto Reallocated
1703 Auto-reallocated due to write error
Recovered Write Error - Recommend Reassignment
1704 Recommend reassign due to write error
Random Positioning Error
1714 Recovered sector overflow
173D Recovered sector miss
1770 Recovered SID timeout
17B2 Recovered abort window error
Data Synchronization Mark Error
1735 Recovered data address mark error HDC
173B Recovered data address mark error Channel
1764 Correctable media error (embedded DAM only)
Data Sync Error - Data Rewritten
E70E Recovered Data Address Mark error - rewritten
Data Sync Error - Recommend Rewrite
E70F Recovered Data Address Mark error - recommend rewrite
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
317
1
1
1
16
16
17
1 17
1 17
1 17
1 17
1
1
18
18
1 18
03
04
01
06
07
08
09
00
02
05
Data Sync Error - Auto Reallocated
D710 Recovered Data Address Mark error - reassigned
Data Sync Error - Recommend Reassignment
E711 Recovered Data Address Mark error - recommend reassign
Recovered Data with Retries
1722 Recovered small thermal asperity
172C Recovered media error
172E Recovered media error (off-line correction discarded)
1766 Recovered Media LBA ECC error
Recovered Data Without ECC - Data Auto-Reallocated
D705 Media error with OTF correction - reassigned
D72B Recovered thermal asperity - reassigned
Recovered Data Without ECC - Recommend Reassignment
E706 Media error with OTF correction - recommend reassign
E72A Recovered thermal asperity - recommend reassign
Recovered Data Without ECC - Recommend Rewrite
E707 Media error with OTF correction - recommend rewrite
E729 Recovered thermal asperity - recommend rewrite
Recovered Data Without ECC - Data Rewritten
E708 Media error with OTF correction - rewritten
E728 Recovered thermal asperity - rewritten
Recovered Data With ECC
1709 Media error with offline correction
Recovered Data - Data Auto-Reallocated
D70A Media error with offline correction and reassign
D724 Recovered thermal asperity with offline correction - reassigned
Recovered Data - Recommend Reassignment
E70B Media error with offline correction and recommend reassign
E725 Recovered thermal asperity with offline correction - recommend reassign
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
318
1
1
1 1C
1 1C
1 1C
1 1F
1
18
18
44
06
07
00
01
02
00
00
Recovered Data With ECC - Recommend Rewrite
E70C Media error with offline correction - recommend rewrite
E726 Recovered thermal asperity with offline correction - recommend rewrite
Recovered Data With ECC - Data Rewritten
E70D Media error with offline correction - rewritten
E727 Recovered thermal asperity with offline correction - rewritten
Defect List Format Not Supported
1746 Defect list format not supported
Primary Defect List Not Found. Requested Format Not Supported
1747 Primary defect list not found (Read Defect Data only)
Grown Defect List Not Found. Requested Format Not Supported
1748 Grown defect list not found (Read Defect Data only)
Partial Defect List Transfer
1749 Partial defect list transferred (Defect list longer than 64KB, 64 KB of data returned - Read Defect Data only)
Internal Target Failure
F123 Invalid request to enter sleep mode
F128 DRAM test in progress
F129 DRAM test complete
F132 GEM FH track read error
1201 Error in UEC class
1202 Error in UEC cause
1303 Motor: Recovered Open Loop Commutation failure
1305 Motor: Recovered No feedback detected
1307 Motor: Recovered Settle timeout
130D Motor: Recovered Speed error
1401 Servo: Recovered Requested rezero head does not exist
1403 Servo: Recovered Back EMF movement in progress
1405 Servo: Recovered Back EMF timeout error
1407 Servo: Recovered ADC conversion timeout
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
319
1409 Servo: Recovered Load/unload calibration error
140B Servo: Recovered Invalid 5 volts
140D Servo: Recovered Invalid 12 volts
140F Servo: Recovered Invalid harmonic requested
1411 Servo: Recovered Gain BEMF Calibration error
1413 Servo: Recovered VOFF BEMF calibration error
1415 Servo: Recovered Invalid temperature
1417 Servo: Recovered Truncated rezero
1419 Servo: Recovered Heads not loaded
1425 Servo: Recovered KT Seek out of range
1427 Servo: Recovered DAC Offset calibration error
1429 Servo: Recovered Load speed error
142D Servo: Recovered ADC Calibration error
142F Servo: Recovered ADC Offset error
1431 Servo: Recovered ADC Limit error
1433 Servo: Recovered Balancer Resistance error
1435 Servo: Recovered Balancer Resistance Limit error
1437 Servo: Recovered First Cylinder error
1439 Servo: Recovered Valid Cylinder error
143B Servo: Recovered ADC Saturation error
143D Servo: Recovered Latch Break timeout
143F Servo: Recovered MR Resistance out of range error
1441 Servo: Recovered VCM Retract error
1443 Servo: Recovered Load Retry error
1445 Servo: Recovered DFT Sharp error
1447 Servo: Recovered Load/Unload state error
144B Servo: Recovered Measure GMR Timeout
144D Servo: Recovered Coil Resistance Measurement Failure
145F Servo: Recovered WCS Hang Error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
320
1461 Servo: Recovered DFT Timeout Error
1463 Servo: Recovered SDM Timeout Error
1465 Servo: Recovered Velocity Error
146F Servo: Recovered VCM Free Speed Error
1471 Servo: Recovered Emergency Brake Timeout Error
1473 Servo: Recovered Excessive Current Error
1475 Servo: Recovered Excessive Velocity Error
1606 Recovered AE last data read error
1616 Recovered channel error
1618 Recovered AE thermal asperity
161A Recovered AE open MR element error
161C Recovered AE IC over temperature error
161E Recovered AE IP clock count error
1620 Recovered AE write data BLS error
1622 Recovered AE high MR current error
1624 Recovered AE invalid head address error
1626 Recovered AE power supply error
162A Recovered AE write transition error
162C Recovered AE no write head current error
162E Recovered Channel Pre-TA error
1634 Recovered AE Short write read head error
1636 Recovered AE Short write head error
1638 Recovered AE Non-selected write head error
163C Recovered IH open short error
163E Recovered AE IH delay error
1640 Recovered Channel coarse tune timeout error
1642 Recovered AE Readback error
1644 Recovered AE XSDEN Low during write error
1646 Recovered AE Write Gate during Idle Fault
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
321
1648 Recovered Channel Reset Flag Error
164A Recovered Channel Split Fault Error
164C Recovered Channel Sector Size Fault Error
164E Recovered Channel Last Split Fault Error
1650 Recovered Channel Servo Overlap Error
1652 Recovered Channel Read Gate Fault Error
1656 Recovered Channel No Write Clock Error
1658 Recovered Channel No NRZ Clock Error
165A Recovered Channel Cal Block Fault Error
165C Recovered Channel Mode Overlap Fault Error
165E Recovered Channel Preamble Fault Error
1660 Recovered Channel WPLO Error
1662 Recovered Channel Write Gate Overlap Fault Error
1664 Recovered Channel Write Gate Fault Error
1666 Recovered Channel Buffer Overflow Write Error
1668 Recovered Channel Buffer Overflow Write Error
166A Recovered Channel Write Parity Error
166C Recovered Channel Buffer Overflow Write Error
166E Recovered Channel Buffer Underflow Write Error
1670 Recovered Channel RPLO Late Error
1672 Recovered Channel Bit Count Late Error
1676 Recovered Channel Pfault Read Error
1678 Recovered Channel Pfault Write Error
167A Recovered Channel Last Data Fault Error
167C Recovered Channel WRPO Fault Error
1680 Recovered Channel PLL Floor Error
1682 Recovered Channel Loss lock Error
1684 Recovered Channel VGA Floor Error
1686 Recovered Channel Buffer EVGA Floor Error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
322
1 44 0B
1688 Recovered Channel TA Detector Error
168C Recovered Channel ZGR Flag Error
168E Recovered Channel DPLL Freq Flag Error
1694 Recovered Channel Flaw Sig Sync Error
1696 Recovered Channel ACQ Flag Error
1698 Recovered Channel No Clock Error
169A Recovered Channel PLL Loss lock Error
169C Recovered AE TFC Short Error
169E Recovered AE MR Element Short Error
1654 Recovered Channel RWBI Out Fault Error
1712 Recovered ECC error
1716 Recovered overrun
171A Recovered ECC overrun
171C Recovered DRAM CRC error
171E Recovered ID Parity error
1731 Recovered write fault
1759 Unknown recovered error
176A Recovered No NRZ clock error
1786 Recovered Soft LLI Underrun
1792 Recovered ECC Write Data Not Ready Error
1794 Recovered DMA Timeout Error
1798 Recovered ID not found error
179C Recovered Channel Read Timeout Error
17B4 Recovered Shock sensor error
17C2 Recovered Read CRC error
17C4 Recovered DRAM ECC error
17C6 Recovered DRAM ECC LBA error
17C8 Recovered DRAM Write error
Vendor Unique - Internal Target Failure
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
323
1 5D
1 5D
1 5D
1 5D
1 5D
1 5D
1 44
1 5D
F9
00
10
20
50
5B
62
63
1313 Motor: Recovered Inductive Sense measurement timeout
1315 Motor: Recovered Spin Sense speed error
1317 Motor: Recovered Spin Sense timeout
1319 Motor: Recovered Target speed error
131F Motor: Recovered System clock watchdog error
Vendor Unique - Internal Target Failure
144F Servo: Recovered SHARP Parity Error
1451 Servo: Recovered SHARP Parity Rate Error
1453 Servo: Recovered SHARP Decode Error
1455 Servo: Recovered SHARP Decode Rate Error
1457 Servo: Recovered SHARP Timeout Error
1459 Servo: Recovered SHARP Timeout Rate Error
145B Servo: Recovered SHARP Other Error
145D Servo: Recovered SHARP Other Rate Error
Predictive Failure Analysis Power On Hour Warning
2A01 SMART: Power On Hour Warning Recovered
Predictive Failure Analysis Temperature Warning
2AFE SMART: Extreme over-temperature warning
Predictive Failure Analysis Flash Scan Warning
2A20 SMART: Flash scan warning
Predictive Failure Analysis Load/Unload Threshold Warning
2A50 SMART: Load/unload cycle count warning
Predictive Failure Analysis Spin-up Retry Threshold Warning
2A5B SMART: Spin-up retry count warning
Predictive Failure Analysis Error Rate Threshold Warning
2A32 SMART: Read error rate warning
2A4A SMART: Write error rate warning
Predictive Failure Analysis Seek Error Rate Threshold Warning
2A43 SMART: Seek error rate warning
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
324
2 04
2 04
2 04
2 04
2 04
2 31
2 31
1 5D
1 5D
1 5D
1 81
2
2
2
04
04
04
64
66
FF
00
00
01
02
03
04
09
11
F0
00
01
Predictive Failure Analysis Available Spare Threshold Warning
2A14 SMART: Spare sector availability warning
Predictive Failure Analysis Threshold Warning
xA56 SMART: Spin-up time warning
Predictive Failure Analysis Threshold Warning
2AFF SMART: Test warning
Vendor Unique - Internal Logic Error
1601 Channel/AE internal logic error
1718 Recovered Abort immediate error
Sense Key = Not Ready
Logical Unit Not Ready - Start Spindle Motor Fail
F501 Logical unit not ready
Logical Unit Is In The Process of Becoming Ready
F502 Logical unit becoming ready
Logical Unit Not Ready, initializing command required
F124 Bring-up error
F503 Logical unit not ready - initializing command required
Logical Unit Not Ready, Manual Intervention Required
F572 Not ready - manual intervention required
Logical Unit Not Ready, Format In Progress
F504 Not ready - format in progress
Not Ready - Self-test In Progress
F505 Not ready - self-test in progress
Not Ready - Notify (Enable Spin-up) Required
F553 Not ready - Notify (Enable Spin-up) required (SAS only)
Vendor Unique - Logical Unit Not Ready
F133 BATS error: Vendor ID mismatch
Medium Format Corrupted - Reassign Failed
F506 Reassign failed
Format Command Failed
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
325
3 03
3
3
10
11
00
00
00
F507 Format failed
Sense Key = Medium Error
Medium Error - Write Fault
F738 Unrecovered post write abort
F73A Unrecovered Post PES check write abort
F7E1 Servo Unrecovered read/write abort estimator error
F7E3 Servo Unrecovered read/write abort predictor error
F7E5 Servo Unrecovered read/write abort PES error
F7E7 Servo Unrecovered read/write abort seek start error
F7E9 Servo Unrecovered read/write abort PES reset error
F7EB Servo Unrecovered read/write abort SID unlock error
F7ED Servo Unrecovered read/write abort WCS other error
F7EF Servo Unrecovered read/write abort hard reset
F7F1 Servo Unrecovered read/write abort RV sensor error
F7F3 Servo Unrecovered read/write abort RV sensor error
F7F5 Servo Unrecovered read/write abort SHARP other error
F7F7 Servo Unrecovered read/write abort SHARP exception error
F7F9 Servo Unrecovered read/write abort SVGA limit error
F7FB Servo Unrecovered read/write abort gray code error
F7FD Servo Unrecovered read/write abort burst error
F7FF Servo Unrecovered read/write abort no STM error
Unrecovered Read Error
F7B9 Unrecovered Reference tag error
F7BB Unrecovered Application tag error
F7BD Unrecovered Channel write synthesis unlock error
Unrecovered Read Error
F702 Too many notches
F723 Unrecovered small thermal asperity
F72D Unrecovered media error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
326
3 14
3
3
3
3
3
15
16
19
19
31
00
00
00
02
03
00
F72F Unrecovered media error (off-line correction discarded)
1730 Recommend TAR Error
F751 Alternat Track Table Full
F753 G-list full (Format command)
F754 G-list full (2) (Format command)
F755 Pointer repeat size error
F756 DST slot size error
F757 P-list full
F758 Spare list full
F767 Unrecovered Media LBA ECC error
F7CE Unrecovered Media Offline Already TAR error
Unrecovered Read Error
F7CA LBA ECC correction disabled
F7CC Unrecovered WR Uncorrectable LBA
Random Positioning Error
F715 Unrecovered sector overflow
F73E Unrecovered sector miss
F771 Unrecovered SID timeout
F7B3 Unrecovered abort window error
Data Synchronization Mark Error
F736 Unrecovered data address mark error Channel
F73C Unrecovered data address mark error HDC
F765 Uncorrectable media error (embedded DAM only)
Defect List Error in Primary List
F74B Primary defect list error
Defect List Error in Grown List
F74C Grown defect list error
Medium Format Corrupted Reassign Failed
F701 Format corrupted
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
327
3 81
4 02
4 09
4
4
4
4
4
4
31
32
35
35
35
35
00
00
00
00
00
00
01
02
03
Vendor Unique - Internal Logic Error
F719 Recovered Abort immediate error
F75B Too many sectors
Sense Key = Hardware Error
No Seek Complete
F41C Servo: Unrecovered No seek complete
F41E Servo: Unrecovered Seek timeout
F420 Servo: Unrecovered Seek error
F42C Servo: Unrecovered RRO Calibration timeout
Track Following Error
F422 Servo: Unrecovered track following error
F424 Servo: Unrecovered track follow timeout
Medium Format Corrupted - Reassign Failed
F204 Reassign reserved area media error
No Defect Spare Location Available
F205 G-list full - can't reassign any more sectors
F206 No spares available
Enclosure Services Failure
F539 ESI: unspecified failure (FC-AL only)
Enclosure Services Failure - Unsupported Enclosure Function
F53A ESI: unsupported function (FC-AL only)
Enclosure Services Failure - Enclosure Services Unavailable
F53B ESI: enclosure unavailable (FC-AL only)
Enclosure Services Failure - Enclosure Services Transfer Failure
F556 ESI: transfer failed - write ack
F557 ESI: transfer failed - read ack
F558 ESI: transfer failed - write ready
F559 ESI: transfer failed - read ready
F55E ESI: transfer failed - EDV
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
328
4 35
4 35
4 3E
4 40
04
80
03
80
F579 ESI: Transfer Checksum Error
F57A ESI: Transfer Checksum Ready Timeout
Enclosure Services Failure - Enclosure Services Refused
F55A ESI: transfer refused - write ack
F55B ESI: transfer refused - read ack
F55C ESI: transfer refused - write ready
F55D ESI: transfer refused - read ready
Enclosure Services Failure
F53C ESI: SES Timeout
Self-test Failed
F75D Self-test failed
Diagnostic Failure
F101 BATS error: Reserved Area - Invalid request
F102 BATS error: Reserved Area - Broken
F103 BATS error: Reserved Area - Invalid version
F104 BATS error: Reserved Area - Invalid checksum
F105 BATS error: Reserved Area - Invalid eyecatcher
F106 BATS error: Reserved Area - Invalid main header checksum
F107 BATS error: Reserved Area - Invalid read length
F108 BATS error: Reserved Area - Address boundary error
1109 BATS error: Reserved Area - Error reading first copy
110A BATS error: Reserved Area - Error reading second copy
F10B BATS error: Reserved Area - Read block error
110C BATS error: Reserved Area - Write fix soft error
F10D BATS error: Reserved Area - Write fix hard error
F10E BATS error: Directory broken
F10F BATS error: Overlay code load error
F110 BATS error: Overlay code check
F111 BATS error: RAM code load error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
329
4 44 00
F112 BATS error: RAM code check
F113 BATS error: Config invalid
F114 BATS error: Log manager invalid
F115 BATS error: Media tables invalid
F116 BATS error: Logical-to-physical invalid
F117 BATS error: Defect manager invalid
F11D Incorrect Disk Code
F11F RPO SID invalid
F121 BATS error: Code download in progress
F122 BATS error: Performance data read error
F125 BATS error: Invalid RID/FID
F12B BATS error: Reserved area - invalid model
F12C BATS error: Invalid code size
F12D Format Reserved: FAT size exceeded
F12E Format Reserved: Insufficient DIRS good
F12F Format Reserved: Insufficient FATS good
F131 Flash timeout
F13B BATS error: SW Target Broken
F13C BATS error: NCDE DRAM fail
Internal Target Failure
F203 Internal target failure
F207 AHB Access Error
F302 Motor: Unrecovered internal error
F304 Motor: Unrecovered Open Loop Commutation error
F306 Motor: Unrecovered No feedback detected error
F308 Motor: Unrecovered Settle timeout
F30A Motor: Unrecovered Gross speed error
F30C Motor: Unrecovered 12V OK error
F30E Motor: Unrecovered Speed error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
330
F312 Motor: Unrecovered internal 12V not OK timeout
F314 Motor: Unrecovered Inductive Sense measurement timeout
F316 Motor: Unrecovered Spin Sense speed error
F31A Motor: Unrecovered Target speed error
F31C Motor: Unrecovered Power driver version error
F31E Motor: Unrecovered Over current error
F322 Motor Unrecovered Negative regulator fault
F324 Motor Unrecovered Module over temp error
F326 Motor Unrecovered 12V or 5V OK error
F328 Motor: Unrecovered unknown error
F402 Servo: Unrecovered Requested re zero head does not exist
F404 Servo: Unrecovered Back EMF movement in progress
F406 Servo: Unrecovered Back EMF timeout error
F408 Servo: Unrecovered ADC conversion timeout
F40A Servo: Unrecovered Load/unload calibration error
F40C Servo: Unrecovered Invalid 5 volts
F40E Servo: Unrecovered Invalid 12 volts
F410 Servo: Unrecovered Invalid harmonic requested
F412 Servo: Unrecovered Gain BEMF Calibration error
F414 Servo: Unrecovered VOFF BEMF calibration error
F416 Servo: Unrecovered Invalid temperature
F418 Servo: Unrecovered Truncated rezero
F41A Servo: Unrecovered Heads not loaded
F426 Servo: Unrecovered KT Seek out of range
F428 Servo: Unrecovered DAC Offset calibration error
F42A Servo: Unrecovered Load speed error
F42E Servo: Unrecovered ADC Calibration error
F430 Servo: Unrecovered ADC Offset error
F432 Servo: Unrecovered ADC Limit error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
331
F434 Servo: Unrecovered Balancer Resistance error
F436 Servo: Unrecovered Balancer Resistance Limit error
F438 Servo: Unrecovered First Cylinder error
F43A Servo: Unrecovered Valid Cylinder error
F43C Servo: Unrecovered ADC Saturation error
F43E Servo: Unrecovered Latch Break timeout
F440 Servo: Unrecovered MR Resistance out of range error
F442 Servo Unrecovered VCM Retract error
F444 Servo: Unrecovered Load Retry error
F446 Servo Unrecovered DFT Sharp error
F448 Servo Unrecovered Load/Unload state error
F44A Servo Unrecovered TCFR out-of-range error
F44C Servo: Unrecovered Measure GMR Timeout
F44E Servo: Unrecovered Coil Resistance Measurement Failure
F460 Servo: Unrecovered WCS Hang Error
F462 Servo: Unrecovered DFT Timeout Error
F464 Servo: Unrecovered SDM Timeout Error
F466 Servo: Unrecovered RRO Write Error
F468 Servo: Unrecoverd Velocity Error
F470 Servo: Unrecoverd VCM Free Speed Error
F472 Servo: Unrecoverd Emergency Brake Timeout
F474 Servo: Unrecoverd Excessive Current Error
F476 Servo: Unrecoverd Excessive Velocity Error
F603 Channel/AE target failure
F604 Channel/AE calibration error
F605 Channel/AE MR Calibration Error
F607 Unrecovered data with PPM or precomp load
F617 Unrecovered channel error
F619 Unrecovered AE thermal asperity found
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
332
F61B Unrecovered AE open MR element error
F61D Unrecovered AE IC over temperature error
F61F Unrecovered AE IP clock count error
F621 Unrecovered AE high MR current error
F623 Unrecovered AE write data BLS error
F625 Unrecovered AE invalid head address error
F627 Unrecovered AE power supply error
F629 Unrecovered AE open write head error
F62B Unrecovered AE write transition error
F62D Unrecovered AE no write head current error
F633 Unrecovered Channel write synch unlock error
F635 Unrecovered AE Short write read head error
F637 Unrecovered AE Short write head error
F639 Unrecovered AE Non-selected write head error
F63B Unrecovered AE Write current in read error
F63D Unrecovered AE IH open short error
F63F Unrecovered AE IH delay error
F641 Unrecovered Channel coarse tune timeout error
F643 Unrecovered AE Readback error
F645 Unrecovered Channel coarse tune timeout error
F647 Unrecovered AE Write Gate during Idle Fault
F649 Unrecovered Channel Frequency Change Error
F64B Unrecovered Channel Write Auxiliary Error
F64D Unrecovered Channel Write Invalid Error
F64F Unrecovered Channel Parity Pulse Error
F651 Unrecovered Channel PLL Error
F653 Unrecovered Channel Write Clock Error
F655 Unrecovered Channel PLL Write Safe Error
F657 Unrecovered Channel No Write Clock Error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
333
F659 Unrecovered Channel No NRZ Clock Error
F65B Unrecovered Channel Cal Block Fault Error
F65D Unrecovered Channel Mode Overlap Fault Error
F65F Unrecovered Channel Preamble Fault Error
F661 Unrecovered Channel WPLO Error
F663 Unrecovered Channel Write Gate Overlap Fault Error
F665 Unrecovered Channel Write Gate Fault Error
F667 Unrecovered Channel Buffer Overflow Write Error
F669 Unrecovered Channel Buffer Overflow Write Error
F66B Unrecovered Channel Write Parity Error
F66D Unrecovered Channel Buffer Overflow Write Error
F66F Unrecovered Channel Buffer Underflow Write Error
F671 Unrecovered Channel RPLO Late Error
F673 Unrecovered Channel Bit Count Late Error
F677 Unrecovered Channel Pfault Read Error
F679 Unrecovered Channel Pfault Write Error
F67B Unrecovered Channel Last Data Fault Error
F67D Unrecovered Channel WRPO Fault Error
F681 Unrecovered Channel PLLFloor Error
F683 Unrecovered Channel Loss lock Error
F685 Unrecovered Channel VGA Floor Error
F687 Unrecovered Channel Buffer EVGA Floor Error
F689 Unrecovered Channel TA Detector Error
F68D Unrecovered Channel ZGR Flag Error
F68F Unrecovered Channel DPLL Freq Flag Error
F695 Unrecovered Channel Flaw Sig Sync Error
F697 Unrecovered Channel ACQ Flag Error
F699 Unrecovered Channel No Clock Error
F69B Unrecovered Channel PLL Loss lock Error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
334
4 40
4 40
4 40
81
90
A0
F69D Unrecovered AE TFC Short Error
F69F Unrecovered AE MR Element Short Error
F713 Unrecovered LBA ECC error
F717 Unrecovered overrun
F71B Unrecovered ECC overrun
F71D Unrecovered DRAM CRC error
F71F Unrecovered ID Parity error
F732 Unrecovered Write Fault
F76B Unrecovered No NRZ clock error
F75A Unknown unrecovered error
F787 Unrecovered LLI Underrun error
F793 Unrecovered ECC Wrdata Not Ready error
F795 Unrecovered DMA timeout error
F799 Unrecoverd ID Not Found error
F79D Unrecoverd Channel Read Timeout error
F7B5 Unrecovered Shock sensor error
F7C1 Unrecovered End sector check error
F7C3 Unrecovered Read CRC error
F7C5 Unrecovered DRAM ECC error
F7C7 Unrecovered DRAM ECC LBA error
F7C9 Unrecovered ECC read/write transfer error
FCxx Unable to read RID or FID number xx
DRAM Failure
F12A DRAM test error
Diagnostic Failure
F118 BATS#2 error: Seek test error
Diagnostic Failure
F119 BATS#2 error: Read/write test error
F11A BATS#2 error: ECC test error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
335
4 44
4
4
4
44
44
44
0B
F2
F6
F7
F11B BATS#2 error: CRC test error
F11C BATS#2 error: XOR test error
F136 BATS#2 error: End-to-End test error
F137 Flash ECC error
F13B SW target broken
F13C NCDE DRAM Error
Vendor Unique - Internal Target Failure
F310 Motor: Unrecovered Spindle Current error
F318 Motor: Unrecovered Spin Sense timeout
F320 Motor: Unrecovered System clock watchdog error
F32A Motor: Unrecovered VCM DAC watchdog error
F332 Motor: Unrecovered Invalid Standby RPM request error
F334 Motor: Unrecovered Invalid Invocation State error
F336 Motor: Unrecovered Hardware Retract timeout error
F338 Motor: Unrecovered Predriver Thermal Limit Exceeded error
F33A Motor: Unrecovered Hard Predriver VM OI error
F33C Motor: Unrecovered Predriver Watchdog Fsys error
F33E Motor: Unrecovered Predriver Watchdog DAC error
F340 Motor: Unrecovered Predriver Speed Low error
F342 Motor: Unrecovered Predriver UV Vboost error
F344 Motor: Unrecovered Predriver NREG UV error
F346 Motor: Unrecovered Predriver Ext NPOR error
F348 Motor: Unrecovered Predriver Reg UV error
Vendor Unique - Internal Target Failure
F134 Head Health Check data compare error
Vendor Unique - Internal Target Failure
F135 Head Health Check unrecovered media error
Vendor Unique - Internal Target Failure
F7B7 Recovered Write Compare error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
336
4
4
4
5 15
5 1A
5 20
5 21
5 24
5
5
44
44
81
24
25
F9
FA
00
00
00
00
00
00
F3
00
Vendor Unique - Internal Target Failure
F452 Servo: Unrecovered SHARP Parity Rate Error
F456 Servo: Unrecovered SHARP Decode Rate Error
F45A Servo: Unrecovered SHARP Timeout Rate Error
F45E Servo: Unrecovered SHART Other Rate Error
Vendor Unique - Internal Target Failure
F450 Servo: Unrecovered SHARP Parity Error
F454 Servo: Unrecovered SHARP Decode Error
F458 Servo: Unrecovered SHARP Timeout Error
F458 Servo: Unrecovered SHARP Timeout Error
Vendor Unique - Internal Logic Error
F549 LA Check error
F56F Log dump data memory error
F602 Channel/AE hard logic error
Sense Key = Illegal Request
PHY Test In Progress Error
F50D PHY Test In Progress error
Parameter List Length Error
F820 Parameter list length error
Invalid Command Operation Code
F821 Invalid opcode in CDB
Logical Block Address out of Range
F822 LBA out of range
Invalid Field in CDB
F823 Illegal request - invalid field in CDB
F829 SPC buffer not allocated
Vendor Unique - Illegal Request
F82A Formatted without P-List
Logical Unit Not Supported
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
337
5
5
5 26
5 2A
5 2C
5 49
5 55
6
6
6
6
26
26
0B
0B
0B
0B
00
02
04
03
00
00
04
01
03
04
05
FA24 Invalid LUN
Invalid Field in Parameter List
F825 Illegal request - invalid field in parameter list
F826 Unsupported log page
Parameter Value Invalid
F120 BATS error: Code compatibility failure
F126 BATS error: Code checksum error
F127 BATS error: Invalid header
F130 BATS error: Incorrect Customer code
F13D BATS error: Invalid Code Signature
F830 Illegal Request Sequence error
Invalid Release of Active Persistent Reservation
F828 Invalid release of persistent reservation
Reservation Conflict
F536 Reservation conflict
Illegal Request Sequence Error
F511 Illegal Request Sequence Error
Invalid Message Error
F512 Invalid message
Insufficient Registration Resources
F567 Insufficient registration resources
Sense Key = Unit Attention
Unit Attention -Temperature
3A02 Unit Attention Temperature
Unit Attention -Background Selftest Failure
3A03 Unit Attention Background selftest failure
Unit Attention -Background Pre-Scan Failure
3A04 Unit Attention - Background pre-scan failure
Unit Attention -Background Media Scan Failure
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
338
6 29
6 29
6 2A
6 2A
6 2A
6 2A
6 2A
6 2F
6 2F
6 28
6 29
6 29
6 29
6 29
6 29
00
00
01
02
03
04
05
07
01
02
03
04
05
00
01
3A05 Unit Attention - Background media scan failure
Not Ready To Ready Transition (Format completed)
F514 Not ready to read transition
Unit Attention - Login Reset
F515 Login reset (FC-AL only)
Unit Attention - POR Occurred
F516 Power on reset
Unit Attention - SCSI Bus Reset Occurred
F517 LIP Reset (FC-AL), SAS Hard Reset (SAS)
Unit Attention - Bus Device Reset Occurred
F518 Target Reset (FC-AL), LUN Reset (SAS)
Unit Attention - Self Initiated Reset Occurred
F519 Self initiated reset
Transceiver Changed to SE
F548 Device Control Hard Reset received
I_T Nexus Loss Occurred
F554 I_T Nexus Loss Occurred (SAS only)
Mode Parameters Changed
F51C Mode parameters changed
Log Parameters Changed
F51D Log parameters changed
Reservations Preempted
F51E Reservations pre-empted
Reservations Released
F51F Reservations released
Registrations Released
F520 Registrations pre-empted
Commands Cleared by Another Initiator
F521 Commands cleared by another initiator
Commands Cleared by Power Loss Notification
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
339
6 5D
6 5D
6 5D
6 5D
6 5D
6 5D
6 5D
6 3F
6 3F
6 3F
6 5D
6 5D
6 5D
B 0E
01
03
05
00
10
20
50
5B
62
63
64
66
FF
02
F573 Commands cleared due to power failure event (SAS)
Microcode has been changed
F522 Microcode changed
Inquiry Parameters Changed
F523 Inquiry parameters changed
Device Identifier Changed
F537 Device identifier changed
Unit Attention – SMART Power On Hour Reached
3A01 SMART: Power On Hour threshold reached
Unit Attention – SMART Unrecovered Flash Write Error
3A20 SMART: Unrecovered Flash Write Error
Unit Attention – SMART Unrecovered Flash Scan Error
3AFE SMART: Unrecoverd Flash Scan Error
Unit Attention – SMART Load/Unload Cycle Threshold Reached
3A50 SMART: Load/unload cycle count threshold reached
Unit Attention – SMART Spin-up Retry Count Threshold Reached
3A5B SMART: Spin-up retry count threshold reached
Unit Attention – SMART Read/Write Error Rate Threshold Reached
3A4A SMART: Write error rate threshold reached
Unit Attention – SMART Seek Error Rate Threshold Reached
3A43 SMART: Seek error rate threshold reached
Unit Attention – SMART Available Spare Threshold Reached
3A14 SMART: Available Spare sector threshold reached
Unit Attention – SMART Spin Up Time Threshold Reached
3A56 SMART: Spin-up time threshold reached
Unit Attention – SMART Test Warning Threshold Reached
3AFF SMART: Test warning threshold reached
Sense Key = Aborted Command
Information Unit Too Long
F562 Information unit too long.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
340
B 10
B 10
B 10
B 3F
B 44
01
02
03
0F
00
Aborted Command – End-to-End Guard Check
F568 End-to-End Data Protection Guard check
Aborted Command – End-to-End Application Tag Check
F569 End-to-End Data Protection Application Tag check
Aborted Command – End-to-End Reference Tag Check
F56A End-to-End Data Reference Tag check
Aborted Command - Echo Buffer Overwritten
F544 Echo buffer overwritten
Internal Target Failure
F52D Buffer CRC error on read
F52E Internal target failure - Host Interface
F54A Xfer Ready credit exceeded (FC-AL only)
F54B Xfer length error (FC-AL only)
F56B ECC error in DRAM customer data area
F56C Uncorrectable DRAM ECC error
F570 Host interface CRC error
F574 Host interface unsupported hardware
F57B Host Interface Synchronous CRC LBA Error
F62F Unrecovered Channel NRZ Clear time out
F741 MEDIA OCT TIMEOUT NOT DISPATCHED
F742 MEDIA OCT TIMEOUT IN RECOVERY
F743 MEDIA OCT TIMEOUT EXECUTING
F75C Internal media access timeout
F761 Read/write command timeout
F772 DASH starting timeout
F773 ID table timeout
F774 Servo timeout
F775 Buffers timeout
F776 DASH done timeout
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
341
B 47
B 4B
B 4B
B 4B
B 4B
B 4B
B 4B
B 4B
B 4E
B 4F
E 1D
01
00
01
02
03
04
05
06
00
00
00
F777 DASH unknown timeout
F77B Unrecovered abort EOS error
F77E MEDIA WRITE ERROR RECOVERY TIMEOUT
F77F MEDIA READ ERROR RECOVERY TIMEOUT
F7D0 Pre-load timeout
Data Phase CRC Error
F54E Data Phase CRC Error
Data Phase Error
F53E Data phase error
Invalid Target Port Transfer Tag Received
F561 Information unit too short (SAS only)
Too Much Write Data
F560 Too much write data (SAS only)
ACK/NAK Timeout
F551 ACK/NAK Timeout (SAS only)
F57D Break Received (SAS only)
NAK Received
F550 NAK Received (SAS only)
Data Offset Error
F552 Bad parameter offset (SAS only)
Initiator Response Timeout
F555 Initiator response timeout (SAS only)
Overlapped Commands Attempted
F534 Overlapped command attempted
Command Aborted Due To Loop Initialization
F53F Abort by LIP (FC-AL only), Abort by OOB (SAS)
Sense Key = Miscompare
Miscompare During Verify Operation
F535 Miscompare during verify
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
342
22.2.9 RU: Field Replaceable Unit (Byte 14)
The FRU (Field Replaceable Unit) field value will always be zero.
22.2.10 Sense Key Specific (Byte 15 through 17)
The definition of this field is determined by the value of the sense key field.
22.2.10.1 Sense Key Specific - Illegal Request (Sense Key = 5h)
Error field pointer is returned.
Table 239:
Field Pointer Bytes
Bit
Byte
7 6 5 4 3 2
15
16
17
SKSV C/D Reserved BPV
(MSB) Field Pointer
1
Bit Pointer
0
(LSB)
SKSV
C/D
Sense-key specific valid
0
1
Sense-key specific field is not valid.
Sense-key specific field is valid.
Command/Data
0 Indicates that the illegal parameter was in the data parameters sent by the initiator during DATA
OUT phase
1 Indicates that the illegal parameter was in the command descriptor block.
Bit Pointer Valid
BPV
0
1
Bit pointer field is not valid.
Bit pointer field is significant.
Bit Pointer
Indicates which bit of the byte number reported in Field Pointer is the bit in error. When a multiple bit field is in error, the pointer points to the most significant bit of the field.
Field Pointer
Indicates which bytes of the command descriptor block or of the parameter data were in error. Bytes are numbered starting from zero, as shown in the tables describing the commands and parameters. When a multiple byte field id is in error, the pointer points to the most significant byte of that field.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
343
22.2.10.2 Sense Key Specific - Recovered (Sense Key = 1h) or Medium (Sense Key = 3h) or Hardware (Sense Key = 4h)
Hardware (Sense Key = 4h) or Medium Error (Sense Key = 3h)
Actual Retry Count is reported.
Table 240:
Actual Retry Count
Bit
Byte
7 6 5 4 3 2 1 0
15
16
17
SKSV Reserved
Secondary Step
Actual Retry Count
ERP Type
SKSV
Actual Retry Count
Secondary Step
ERP Type
Sense-key specific valid
0
1
Actual Retry Count is not valid.
Actual Retry Count is valid.
Number of retry steps used in attempting to recover from the error condition.
Secondary error recovery step (valid for servo errors only).
Error recovery table branch for this error. Valid values are shown in the table below.
Recovery Type
Read
Verify
Write
Seek
Read, Sync Byte branch
Read, Thermal Asperity branch
Read, Minus Mod branch
Verify, Sync Byte branch
Verify, Thermal Asperity branch
Verify, Minus Mod branch
ERP Type
0x00
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
22.2.10.3 Sense Key Specific - Not Ready (Sense key = 2h)
These fields are defined for the Format unit (04h) command with the Immediate bit set to one and the Send Diagnostic (1Dh) command with Background self-test function.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
344
Progress indication is returned.
Table 241:
Progress Indication
Byte
15
16
17
Bit
7
SKSV
6 5 4 3
Reserved
2
(MSB) Progress Indication
1
SKSV
Progress Indication
0
(LSB)
Sense-key specific valid
0 Progress Indication is not valid.
1 Progress Indication is valid.
Indicates a percent complete in which the returned value is the numerator that has 10000h as its denominator.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
345
22.2.11 Reserved (Byte 18 through 19)
Reserved fields are filled with zero.
22.2.12 Vendor unique error information (Byte 20 through 23)
This field gives detailed information about the error. It contains a unique code which describes where the error was detected and which piece of hardware or microcode detected the error depending on current operation.
22.2.13 Physical Error Record (Byte 24 thru 29)
•
• ILI = 1 - This field contains zeros.
ILI = 0 - These bytes contain the physical location of the error in cylinder, head, and sector. Bytes 24, 25, and 26 are cylinder high, middle and low bytes respectively, of the cylinder number. Byte 27 is the head number. Bytes 28 and
29 are the the high and low bytes, respectively of the sector number.
If the head is undetermined, bytes 24, 25, and 26 are set to 0FFFFFFh. If the head number is undetermined, byte 27 is set to 0FFh. If cylinder, head, and sector have no relevance the the error, bytes 24 through 29 will all be set to
0FFFFFFFFFFFFh for Valid = 0 and ILI = 0. This Physical Error Record field is valid for Sense Key 1, 3, and 4 only.
Valid
1
1
0
1 x
ILI
0
Description
Cylinder Number (bytes 24-26)
Head number (byte 27)
Sector Number (bytes 28-29)
0x000000000000
0x000000000000 - (not used/invalid)
22.2.14 Reserved (Byte 30 through 31)
Reserved fields are filled with zero.
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
346
23.0 Appendix. UEC list
Following is the list of Unit Error Codes and associated descriptions. The Unit Error Codes are returned by the target in sense data bytes 20-21.
The list of Unit Error Codes and descriptions does not have a direct correlation to the error descriptions and Sense Key/Code/
may change without notice.
How to find a specific UEC
The second hex digit indicates the grouping, e.g. interface, media, servo, etc. types of errors. The table is sorted without regard to the first hex digit; instead, sorting is by the least significant three hex digits.
Table 242: Unit Error Codes
UEC
0000
F112
F113
F114
F115
F116
F117
F118
F119
F11A
F11B
F11C
F10B
110C
F10D
F10E
F10F
F110
F111
F101
F102
F103
F104
F105
F106
F107
F108
1109
110A
No error
Description
BATS error: Reserved Area - Invalid request
BATS error: Reserved Area - Broken
BATS error: Reserved Area - Invalid version
BATS error: Reserved Area - Invalid checksum
BATS error: Reserved Area - Invalid eyecatcher
BATS error: Reserved Area - Invalid main header checksum
BATS error: Reserved Area - Invalid read length
BATS error: Reserved Area - Address boundary error
BATS error: Reserved Area - Error reading first copy
BATS error: Reserved Area - Error reading second copy
BATS error: Reserved Area - Read block error
BATS error: Reserved Area - Write fix soft error
BATS error: Reserved Area - Write fix hard error
BATS error: Directory broken
BATS error: Overlay code load error
BATS error: Overlay code check
BATS error: RAM code load error
BATS error: RAM code check
BATS error: Config invalid
BATS error: Log manager invalid
BATS error: Media tables invalid
BATS error: Logical-to-physical invalid
BATS error: Defect manager invalid
BATS#2 error: Seek test error
BATS#2 error: Read/write test error
BATS#2 error: ECC test error
BATS#2 error: CRC test error
BATS#2 error: XOR test error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
347
1201
1202
F203
F204
F205
F206
F207
F302
1303
F304
1305
F306
1307
UEC
F127
F128
F129
F12A
F12B
F12C
F130
F131
F11D
F11F
F120
F121
F122
F123
F124
F125
F126
F132
F133
F134
F135
F136
F137
F13B
F13C
F13D
Description
Incorrect Disk Code
RPO SID invalid
BATS error: Code Compatibility Failure
BATS error: Code download in progress
BATS error: Performance data read error
Invalid request to enter sleep mode
Bring-up error
BATS error: Invalid RID/FID
BATS error: Code checksum error
BATS error: Invalid header
DRAM test in progress
DRAM test complete
DRAM test error
BATS error: Reserved area - invalid model
BATS error: Invalid code size
BATS error: Incorrect Customer Code
Flash time-out
GEM FH track read error
BATS error: Vendor ID mismatch
Head Health Check data compare error
Head Health Check unrecovered media error
BATS#2 error: End-To-End Data Protection error
Flash ECC error
BATS error: SW Target broken
BATS error: NCDE DRAM failure
BATS error: Invalid Code Signature
Error in UEC class
Error in UEC cause
Internal target failure
Reassign reserved area media error
G-list full - can't reassign any more sectors
No spares available
AHB Access Error
Motor: Unrecovered internal error
Motor: Recovered Open Loop Commutation failure
Motor: Unrecovered Open Loop Commutation failure
Motor: Recovered No feedback detected error
Motor: Unrecovered No feedback detected error
Motor: Recovered Settle time-out
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
348
UEC
F32A
F332
F334
F336
F338
F33A
F33C
F33E
F320
F322
F324
F326
F328
1319
F31A
F31C
F31E
131F
1311
F312
1313
F314
F315
F316
1317
F318
F308
1309
F30A
130B
F30C
130D
F30E
130F
F310
Description
Motor: Unrecovered Settle time-out
Motor: Recovered Gross speed error
Motor: Unrecovered Gross speed error
Motor: Recovered 12V OK error
Motor: Unrecovered 12V OK error
Motor: Recovered Speed error
Motor: Unrecovered Speed error
Motor: Recovered Spindle Current error
Motor: Unrecovered Spindle Current error
Motor: Recovered Internal 12V not OK time-out
Motor: Unrecovered Internal 12V not OK time-out
Motor: Recovered Inductive Sense measurement time-out
Motor: Unrecovered Inductive Sense speed error
Motor: Recovered Spin Sense speed error
Motor: Unrecovered Spin Sense speed error
Motor: Recovered Spin Sense time-out
Motor: Unrecovered Spin Sense time-out
Motor: Recovered Target speed error
Motor: Unrecovered Target speed error
Motor: Unrecovered Power driver version error
Motor: Unrecovered Over current error
Motor: Recovered System clock watchdog error
Motor: Unrecovered System clock watchdog error
Motor: Unrecovered Negative regulator fault
Motor: Unrecovered Module overtemp error
Motor: Unrecovered 12V or 5V OK error
Motor: Unrecovered unknown error
Motor: Unrecovered VCM DAC watchdog error
Motor: Invalid standby RPM request
Motor: Invalid spin state request
Motor: Hardware retract time-out
Motor: Unrecovered thermal limit exceeded
Motor: Predriver fault
Motor: Unrecovered Predriver Watchdog Fsys error
Motor: Unrecovered Predriver Watchdog DAC error
F342
F344
F346
F348
1401
Motor: Unrecovered Predriver UV Vboost error
Motor: Unrecovered Predriver NREG UV error
Motor: Unrecovered Predriver Ext NPOR error
Motor: Unrecovered Predriver Reg UV error
Servo: Recovered Requested rezero head does not exist
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
349
UEC
F422
1423
F424
1425
F426
141D
F41E
141F
F420
1421
1413
F414
1415
F416
1417
F418
1419
F41A
141B
F41C
1427
F428
1429
F42A
140B
F40C
140D
F40E
140F
F410
1411
F412
F402
1403
F404
1405
F406
1407
F408
1409
F40A
Description
Servo: Unrecovered Requested rezero head does not exist
Servo: Recovered Back EMF movement in progress
Servo: Unrecovered Back EMF movement in progress
Servo: Recovered Back EMF time-out error
Servo: Unrecovered Back EMF time-out error
Servo: Recovered ADC conversion time-out
Servo: Unrecovered ADC conversion time-out
Servo: Recovered Load/unload calibration error
Servo: Unrecovered Load/unload calibration error
Servo: Recovered Invalid 5 volts
Servo: Unrecovered Invalid 5 volts
Servo: Recovered Invalid 12 volts
Servo: Unrecovered Invalid 12 volts
Servo: Recovered Invalid harmonic requested
Servo: Unrecovered Invalid harmonic requested
Servo: Recovered Gain BEMF Calibration error
Servo: Unrecovered Gain BEMF Calibration error
Servo: Recovered VOFF BEMF calibration error
Servo: Unrecovered VOFF BEMF calibration error
Servo: Recovered Invalid temperature
Servo: Unrecovered Invalid temperature
Servo: Recovered Truncated rezero
Servo: Unrecovered Truncated rezero
Servo: Recovered Heads not loaded
Servo: Unrecovered Heads not loaded
Servo: Recovered No seek complete
Servo: Unrecovered No seek complete
Servo: Recovered Seek time-out
Servo: Unrecovered Seek time-out
Servo: Recovered Seek error
Servo: Unrecovered Seek error
Servo: Recovered Track following error
Servo: Unrecovered Track following error
Servo: Recovered Track follow time-out
Servo: Unrecovered Track follow time-out
Servo: Recovered KT Seek out of range
Servo: Unrecovered KT Seek out of range
Servo: Recovered DAC Offset calibration error
Servo: Unrecovered DAC Offset calibration error
Servo: Recovered Load speed error
Servo: Unrecovered Load speed error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
350
UEC
F446
1447
F448
1449
F44A
144B
F44C
144D
F44E
144F
F450
1451
1441
F442
1443
F444
1445
F43C
143D
F43E
143F
F440
F434
1435
F436
1437
F438
1439
F43A
143B
142B
F42C
142D
F42E
142F
F430
1431
F432
1433
Description
Servo: Recovered RRO Calibration time-out
Servo: Unrecovered RRO Calibration time-out
Servo: Recovered ADC Calibration error
Servo: Unrecovered ADC Calibration error
Servo: Recovered ADC Offset error
Servo: Unrecovered ADC Offset error
Servo: Recovered ADC Limit error
Servo: Unrecovered ADC Limit error
Servo: Recovered Balancer Resistance error
Servo: Unrecovered Balancer Resistance error
Servo: Recovered Balancer Resistance Limit error
Servo: Unrecovered Balancer Resistance Limit error
Servo: Recovered First Cylinder error
Servo: Unrecovered First Cylinder error
Servo: Recovered Valid Cylinder error
Servo: Unrecovered Valid Cylinder error
Servo: Recovered ADC Saturation error
Servo: Unrecovered ADC Saturation error
Servo: Recovered Latch Break time-out
Servo: Unrecovered Latch Break time-out
Servo: Recovered MR Resistance out of range error
Servo: Unrecovered MR Resistance out of range error
Servo: Recovered VCM Retract error
Servo: Unrecovered VCM Retract error
Servo: Recovered Load Retry error
Servo: Unrecovered Load Retry error
Servo: Recovered DFT Sharp error
Servo: Unrecovered DFT Sharp error
Servo: Recovered Load/Unload state error
Servo: Unrecovered Load/Unload state error
Servo: Recovered TFCR out-of-range error
Servo: Unrecovered TFCR out-of-range error
Servo: Recovered Measure GMR Time-out
Servo: Unrecovered Measure GMR Time-out
Servo: Recovered Coil Resistance Measurement Failure
Servo: Unrecovered Coil Resistance Measurement Failure
Servo: Recovered SHARP Parity Error
Servo: Unrecovered SHARP Parity Error
Servo: Recovered SHARP Parity Rate Error
1453 Servo: Recovered SHARP Decode Error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
351
F501
F502
F503
F504
F505
F506
F507
F50D
F511
F512
F514
1459
1465
F466
F468
F470
F472
F474
F476
146F
1471
1473
1475
145B
F45C
145D
F45E
145F
F460
1461
F462
1463
F464
UEC
F454
1455
F456
1457
Description
Servo: Unrecovered SHARP Decode Error
Servo: Recovered SHARP Decode Rate Error
Servo: Unrecovered SHARP Decode Rate Error
Servo: Recovered SHARP Time-out Error
Servo: Recovered SHARP Time-out Rate Error
Servo: Recovered SHARP Other Error
Servo: Unrecovered SHARP Other Error
Servo: Recovered SHARP Other Rate Error
Servo: Unrecovered SHART Other Rate Error
Servo: Recovered WCS Hang Error
Servo: Unrecovered WCS Hang Error
Servo: Recovered DFT Time-out Error
Servo: Unrecovered DFT Time-out Error
Servo: Recovered SDM Time-out Error
Servo: Unrecovered SDM Time-out Error
Servo:
Recovered Velocity Error
Servo: Unrecovered RRO Write Error
Servo: Unrecoverd Velocity Error
Servo: Unrecoverd VCM Free Speed Error
Servo: Unrecoverd Emergency Brake Time-out
Servo: Unrecoverd Excessive Current Error
Servo: Unrecoverd Excessive Velocity Error
Servo: Recovered VCM Free Speed Error
Servo: Recovered Emergency Brake Time-out Error
Servo: Recovered Excessive Current Error
Servo: Recovered Excessive Velocity Error
Logical unit not ready
Logical unit becoming ready
Logical unit not ready - initializing command required
Not ready - format in progress
Not ready - self-test in progress
Reassign failed
Format failed
Phy Test Function in Progress
Illegal Request Sequence Error
Invalid Message
Not ready to ready transition
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
352
UEC
F551
F552
F553
F554
F555
F548
F54A
F54B
F54E
F550
F536
F537
F539
F53A
F53B
F53C
F53E
F53F
F544
F549
F556
F557
F558
F559
F520
F521
F522
F523
F52D
F52E
F534
F535
F515
F516
F517
F518
F519
F51C
F51D
F51E
F51F
Description
Login reset (FC-AL only)
Power on reset
LIP reset (FC-AL), SAS Hard Reset (SAS)
Target Reset (FC-AL), LUN Reset (SAS)
Self initiated reset
Mode parameters changed
Log parameters changed
Reservations pre-empted
Reservations released
Registrations pre-empted
Commands cleared by another initiator
Microcode changed
Inquiry parameters changed
Buffer CRC error on read
Internal target failure
Overlapped command attempted
Miscompare during verify
Reservation conflict
Device identifier changed
ESI: unspecified failure (FC-AL only)
ESI: unsupported function (FC-AL only)
ESI: enclosure unavailable (FC-AL only)
ESI: transfer failure (FC-AL only)
Data phase error
Abort by LIP (FC-AL), Abort by OOB (SAS)
Echo buffer overwritten
LA Check error
Device Control Hard Reset received
Xfer Ready credit exceeded (FC-AL only)
Transfer length error (FC-AL only)
Data Phase CRC Error
NAK rcvd (SAS)
ACK NAK Time-out (SAS)
Bad parameter offset (SAS)
LUN Not ready, Notify (Enable Spinup) required (SAS)
I_T_Nexus Loss Occurred (SAS)
Initiator Response Time-out (SAS)
ESI transfer failed - write ack (FC-AL)
ESI transfer failed - read ack (FC-AL)
ESI transfer failed - write ready (FC-AL)
ESI transfer failed - read ready (FC-AL)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
353
F619
161A
F61B
161C
F61D
161E
F61F
1620
1606
F607
1616
F617
1618
1601
F602
F603
F604
F605
UEC
F568
F569
F56A
F56B
F56C
F56F
F570
F572
F573
F574
F55A
F55B
F55C
F55D
F55E
F560
F561
F562
F567
F579
F57A
F57B
Description
ESI transfer refused - write ack (FC-AL)
ESI transfer refused - read ack (FC-AL)
ESI transfer refused - write ready (FC-AL)
ESI transfer refused - read ready (FC-AL)
ESI transfer failed - EDV (FC-AL)
Too much write data (SAS)
Information unit too short (SAS)
Information unit too long (SAS)
Insufficient registration resources
End-to-End Data Protection Guard check
End-to-End Data Protection Application Tag check
End-to-End Data Protection Reference Tag check
ECC error in DRAM customer data area
Uncorrectable DRAM ECC error
Log dump data memory error
Host interface Synchronous CRC error
LUN not ready; manual intervention required
Commands cleared due to power failure event (SAS)
Host interface unsupported hardware
ESI Transfer Checksum Error (FC-AL)
ESI Transfer Checksum Ready Time-out (FC-AL
Host Interface Synchronous CRC LBA Error
Channel/AE internal logic error
Channel/AE hard logic error
Channel/AE target failure
Channel/AE calibration error
Channel/AE MR Calibration Error
Recovered AE last data read error
Unrecovered data with PPM or precomp load
Recovered channel error
Unrecovered channel error
Recovered AE thermal asperity found
Unrecovered AE thermal asperity found
Recovered AE open MR element error
Unrecovered AE open MR element error
Recovered AE IC over temperature error
Unrecovered AE IC over temperature error
Recovered AE IP clock count error
Unrecovered AE IP clock count error
Recovered AE high MR current error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
354
UEC
1644
F645
1646
F647
1648
F63F
1640
F641
1642
F643
F635
1636
F637
1638
F639
163A
F63B
163C
F63D
163E
F649
164A
F64B
164C
F62B
162C
F62D
162E
F62F
F631
F633
1634
F621
1622
F623
1624
F625
1626
F627
F629
162A
Description
Unrecovered AE high MR current error
Recovered AE write data BLS error
Unrecovered AE write data BLS error
Recovered AE invalid head address error
Unrecovered AE invalid head address error
Recovered AE power supply error
Unrecovered AE power supply error
Unrecovered AE open write head error
Recovered AE write transition error
Unrecovered AE write transition error
Recovered AE no write head current error
Unrecovered AE no write head current error
Recovered Channel Pre-TA error
Unrecovered Channel NRZ Clear time out
Unrecovered Channel write or NRZ parity error
Unrecovered Channel Write Synth Unlock error
Recovered AE Short write read head error
Unrecovered AE Short write read head error
Recovered AE Short write head error
Unrecovered AE Short write head error
Recovered AE Non-selected write head error
Unrecovered AE Non-selected write head error
Recovered AE Write current in read error
Unrecovered AE Write current in read error
Recovered AE IH Open short error
Unrecovered AE IH Open short error
Recovered AE IH Delay error
Unrecovered AE IH Delay error
Recovered AE Write head encode error
Unrecovered AE Write head encode error
Recovered AE Readback error
Unrecovered AE Readback error
Recovered AE XSDEN Low during write error
Unrecovered Channel coarse tune time-out
Recovered AE Write Gate during Idle Fault
Unrecovered AE Write Gate during Idle Fault
Recovered Channel Reset Flag Error
Unrecovered Channel Frequency Change Error
Recovered Channel Split Fault Error
Unrecovered Channel Write Auxiliary Error
Recovered Channel Sector Size Fault Error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
355
UEC
F659
165A
F65B
1670
F671
1672
F673
1676
F677
F669
166A
F66B
166C
F66D
166E
F66F
F663
1664
F665
1666
F667
1668
165C
F65D
165E
F65F
1660
F661
1662
F64D
164E
F64F
1650
F651
1652
F653
1654
F655
1656
F657
1658
Description
Unrecovered Channel Write Invalid Error
Recovered Channel Last Split Fault Error
Unrecovered Channel Parity Pulse Error
Recovered Channel Servo Overlap Error
Unrecovered Channel PLL Error
Recovered Channel Read Gate Fault Error
Unrecovered Channel Write Clock Error
Recovered Channel RWBI Out Fault Error
Unrecovered Channel PLL Write Safe Error
Recovered Channel No Write Clock Error
Unrecovered Channel No Write Clock Error
Recovered Channel No NRZ Clock Error
Unrecovered Channel No NRZ Clock Error
Recovered Channel Cal Block Fault Error
Unrecovered Channel Cal Block Fault Error
Recovered Channel Mode Overlap Fault Error
Unrecovered Channel Mode Overlap Fault Error
Recovered Channel Preamble Fault Error
Unrecovered Channel Preamble Fault Error
Recovered Channel WPLO Error
Unrecovered Channel WPLO Error
Recovered Channel Write Gate Overlap Fault Error
Unrecovered Channel Write Gate Overlap Fault Error
Recovered Channel Write Gate Fault Error
Unrecovered Channel Write Gate Fault Error
Recovered Channel Buffer Overflow Write Error
Unrecovered Channel Buffer Overflow Write Error
Recovered Channel Buffer Overflow Write Error
Unrecovered Channel Buffer Overflow Write Error
Recovered Channel Write Parity Error
Unrecovered Channel Write Parity Error
Recovered Channel Buffer Overflow Write Error
Unrecovered Channel Buffer Overflow Write Error
Recovered Channel Buffer Underflow Write Error
Unrecovered Channel Buffer Underflow Write Error
Recovered Channel RPLO Late Error
Unrecovered Channel RPLO Late Error
Recovered Channel Bit Count Late Error
Unrecovered Channel Bit Count Late Error
Recovered Channel Pfault Read Error
Unrecovered Channel Pfault Read Error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
356
F701
F702
1703
1704
D705
E706
E707
E708
1709
UEC
1688
F689
168D
F689
F68F
168E
1694
F695
F683
1684
F685
1686
F687
1678
F679
167A
F67B
167C
F67D
1680
F681
1682
1696
F697
1698
F699
169A
F69B
169C
F69D
169E
F69F
Description
Recovered Channel Pfault Write Error
Unrecovered Channel Pfault Write Error
Recovered Channel Last Data Fault Error
Unrecovered Channel Last Data Fault Error
Recovered Channel WRPO Fault Error
Unrecovered Channel WRPO Fault Error
Recovered Channel PLLFloor Error
Unrecovered Channel PLLFloor Error
Recovered Channel Loss lock Error
Unrecovered Channel Loss lock Error
Recovered Channel VGA Floor Error
Unrecovered Channel VGA Floor Error
Recovered Channel Buffer EVGA Floor Error
Unrecovered Channel Buffer EVGA Floor Error
Recovered Channel TA Detector Error
Unrecovered Channel TA Detector Error
Unrecovered Channel ZGR Flag Error
Unrecovered Channel TA Detector Error
Unrecovered Channel DPLL Freq Flag Error
Recovered Channel DPLL Freq Flag Error
Recovered Channel Flaw Sig Sync Error
Unrecovered Channel Flaw Sig Sync Error
Recovered Channel ACQ Flag Error
Unrecovered Channel ACQ Flag Error
Recovered Channel No Clock Error
Unrecovered Channel No Clock Error
Recovered Channel PLL Loss lock Error
Unrecovered Channel PLL Loss lock Error
Recovered AE TFC Short Error
Unrecovered AE TFC Short Error
Recovered AE MR Element Short Error
Unrecovered AE MR Element Short Error
Format corrupted
Too many notches
Auto-reallocated due to write error
Recommend reassign due to write error
Media error with OTF correction - reassigned
Media error with OTF correction - recommend reassign
Media error with OTF correction - recommend rewrite
Media error with OTF correction - rewritten
Media error with offline correction
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
357
UEC
E727
E728
E729
E72A
D72B
172C
F72D
172E
F72F
F730
F71B
171C
F71D
171E
F71F
1722
F723
D724
E725
E726
F731
F732
1735
F736
F713
1714
F715
1716
F717
1718
F719
171A
D70A
E70B
E70C
E70D
E70E
E70F
D710
E711
1712
Description
Media error with offline correction - reassigned
Media error with offline correction - recommend reassign
Media error with offline correction - recommend rewrite
Media error with offline correction - rewritten
Recovered Data Address Mark error - rewritten
Recovered Data Address Mark error - recommend rewrite
Recovered Data Address Mark error - reassigned
Recovered Data Address Mark error - recommend reassign
Recovered ECC error
Unrecovered LBA ECC error
Recovered sector overflow
Unrecovered sector overflow
Recovered overrun
Unrecovered overrun
Recovered abort immediate
Unrecovered abort immediate
Recovered ECC overrun
Unrecovered ECC overrun
Recovered DRAM CRC error
Unrecovered DRAM CRC error
Recovered ID Parity error
Unrecovered ID Parity error
Recovered small thermal asperity
Unrecovered small thermal asperity
Recovered thermal asperity w/offline correction - reassigned
Recovered thermal asperity w/offline correction - recommend reassign
Recovered thermal asperity w/offline correction - recommend rewrite
Recovered thermal asperity w/offline correction - rewritten
Recovered thermal asperity - rewritten
Recovered thermal asperity - recommend rewrite
Recovered thermal asperity - recommend reassign
Recovered thermal asperity - reassigned
Recovered media error
Unrecovered media error
Recovered media error (off-line correction discarded)
Unrecovered media error (off-line correction discarded)
Recommend targeted scan
Recovered Write Fault
Unrecovered Write Fault
Recovered data address mark error HDC
Unrecovered data address mark error Channel
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
358
UEC
F756
F757
F758
1759
F75A
F75B
F75C
F75D
F75E
F761
F751
F752
F753
F754
F755
F74C
F74D
F74E
F74F
F750
F762
F763
1764
F765
F742
F743
1746
1747
1748
1749
F74A
F74B
1737
F738
1739
F73A
173B
F73C
173D
F73E
F741
Description
Recovered post write abort
Unrecovered post write abort
Recovered Post PES check write abort
Unrecovered Post PES check write abort
Recovered data address mark error Channel
Unrecovered data address mark error HDC
Recovered sector miss
Unrecovered sector miss
MEDIA OCT TIMEOUT NOT DISPATCHED
MEDIA OCT TIMEOUT IN RECOVERY
MEDIA OCT TIMEOUT EXECUTING
Defect list format not supported
Primary defect list not found
Grown defect list not found
Partial defect list transferred
Sudden stop interrupt
Primary defect list error
Grown defect list error
Too many heads
Skew table size error
Too many zones
Too many SIDs
Alternate track table full
Drive capacity too small
G-list full (Format command)
G-list full (2) (Format command)
Pointer repeat size error
DST slot size error
P-list full
Spare list full
Unknown recovered error
Unknown unrecovered error
Too many sectors
Internal media access time-out
Selftest failed
Max servo cylinder too small
Read/write command time-out
Cache test fail
OTF cache fail
Correctable media error (embedded DAM only)
Uncorrectable media error (embedded DAM only)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
359
UEC
F7B3
17B4
F7B5
F7B7
F7B9
F7BB
F7BD
F7C1
17C2
F7C3
F787
1792
F793
1794
F795
1798
F799
179C
F79D
17B2
17C4
F7C5
17C6
F7C7
F775
F776
F777
F77A
F77B
F77E
F77F
1786
1766
F767
176A
F76B
1770
F771
F772
F773
F774
Description
Recovered Media LBA ECC error
Unrecovered Media LBA ECC error
Recovered No NRZ clock error
Unrecovered No NRZ clock error
Recovered SID time-out
Unrecovered SID time-out
DASH starting time-out
ID table time-out
Servo time-out
Buffers time-out
DASH done time-out
DASH unknown time-out
Unrecovered channel SBW time-out
Unrecovered Abort EOS fail
MEDIA WRITE ERROR RECOVERY TIMEOUT
MEDIA READ ERROR RECOVERY TIMEOUT
Recovered Soft LLI Underrun
Unrecovered LLI Underrun error
Recovered ECC Write Data Not Ready Error
Unrecovered ECC Wrdata Not Ready error
Recovered Drive DMA time-out error
Unrecovered Drive DMA time-out error
Recovered ID not found error
Unrecoverd ID Not Found error
Recovered Channel Read Time-out Error
Unrecoverd Channel Read Time-out error
Recovered abort window error
Unrecovered abort window error
Recovered shock sensor error
Unrecovered shock sensor error
Recovered Write compare error
Unrecovered Reference tag error
Unrecovered Application tag error
Unrecovered Channel write synthesis unlock error
Unrecovered End sector check error
Recovered Read CRC error
Unrecovered Read CRC error
Recovered DRAM ECC error
Unrecovered DRAM ECC error
Recovered DRAM ECC LBA error
Unrecovered DRAM ECC LBA error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
360
1737
F738
1739
F73A
17D6
17D8
17DA
17DC
17DE
17E0
F7E1
17E2
F7E3
17E4
F7E5
17E6
F7E7
17E8
F7E9
17EA
F7EB
17EC
F7ED
UEC
17DA
F7DB
17DC
F7DD
17DE
F7DF
17C8
F7C9
F7CA
17CB
F7CC
F7CD
F7CE
F7D0
17D6
17D8
F7D9
Description
Recovered EC read/write transfer error
Unrecovered ECC read/write transfer error
LBA ECC correction disabled
Recovered LBA ECC write uncorrectable
Unrecovered LBA ECC write uncorrectable
LBA ECC due encryption error
Unrecovered Media Offline Already TAR error
Pre-load time-out
Recovered read/write abort offtrack
Recovered r/w abort rro field misread
Unrecovered r/w abort rro field misread
Servo Recovered read/write abort rro field misread
Unrecovered r/w abort rro missing
Servo Recovered read/write abort rro field missing
Unrecovered r/w abort idle seek
Servo Recovered read/write abort seek time-out
Unrecovered r/w abort seek time-out
Recovered post write abort
Unrecovered post write abort
Recovered Post PES check write abort
Unrecovered Post PES check write abort
Servo Recovered read/write abort offtrack
Servo Recovered read/write abort rro field missing
Servo Recovered read/write abort rro field misread
Servo Recovered read/write abort rro field missing
Servo Recovered read/write abort seek time-out
Servo Recovered read/write abort estimator error
Servo Unrecovered read/write abort estimator error
Servo Recovered read/write abort predictor error
Servo Unrecovered read/write abort predictor error
Servo Recovered read/write abort PES error
Servo Unrecovered read/write abort PES error
Servo Recovered read/write abort seek start error
Servo Unrecovered read/write abort seek start error
Servo Recovered read/write abort PES reset error
Servo Unrecovered read/write abort PES reset error
Servo Recovered read/write abort WCS other error
Servo Unrecovered read/write abort SID unlock error
Servo Recovered read/write abort WCS other error
Servo Unrecovered read/write abort WCS other error
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
361
1831
1832
1833
1834
1835
1836
1837
1839
1839
183A
F820
F821
F822
F823
F824
F825
F826
F828
F830
2A01
3A01
1A02
UEC
F7F7
17F8
F7F9
17FA
F7FB
17FC
F7FD
17FE
F7FF
17EE
F7EF
17F0
F7F1
17F2
F7F3
17F4
F7F5
17F6
Description
Servo Recovered read/write abort hard reset
Servo Unrecovered read/write abort hard reset
Servo Recovered read/write abort RV sensor error
Servo Unrecovered read/write abort RV sensor error
Servo Recovered read/write abort RV sensor error
Servo Unrecovered read/write abort RV sensor error
Servo Recovered read/write abort SHARP other error
Servo Unrecovered read/write abort SHARP other error
Servo Recovered read/write abort SHARP exception error
Servo Unrecovered read/write abort SHARP exception error
Servo Recovered read/write abort SVGA limit error
Servo Unrecovered read/write abort SVGA limit error
Servo Recovered read/write abort gray code error
Servo Unrecovered read/write abort gray code error
Servo Recovered read/write abort burst error
Servo Unrecovered read/write abort burst error
Servo Recovered read/write abort no STM error
Servo Unrecovered read/write abort no STM error
Parameter list length error
Invalid opcode in CDB
LBA out of range
Illegal request - invalid field in CDB
Invalid LUN
Illegal request - invalid field in parameter list
Illegal request - Unsupported Log Page
Illegal request – Invalid Release of Persistent Reservation
Illegal Request Sequence error
Power mode Idle_A by timer
Power mode Idle_B by timer
Power mode Idle_C by timer
Power mode Standby_Z by timer
Power mode Idle_A by command
Power mode Idle_B by command
Power mode Idle_C by command
Power mode Standby_Z by command
Power mode Standby_Y by timer
Power mode Standby_Y by command
SMART: Power On Hour Warning Recovered
Smart Power On Hour threshold reached
SMART: Temperature warning (no sense)
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
362
UEC
3A50
1A56
2A56
3A56
1A5B
2A5B
3A5B
1AFE
2AFE
3AFE
2A32
3A32
1A43
2A43
3A43
1A4A
2A4A
3A4A
1A50
2A50
1AFF
2AFF
3AFF
FCxx
2A05
3A05
1A14
2A14
3A14
2A20
3A20
1A32
2A02
3A02
1A03
2A03
3A03
1A04
2A04
3A04
1A05
Description
SMART: Temperature warning (recovered sense)
SMART: Unit Attention Temperature
SMART: Background selftest warning (no sense)
SMART: Unit Attention Background selftest failure
SMART: Background selftest warning (unit attn sense)
SMART: Background Pre-Scan warning (no sense)
SMART: Background Pre-Scan warning (recovered sense)
SMART: Unit Attention - Background pre-scan failure
SMART: Background Media Scan warning (no sense)
SMART: Background Media Scan warning (recovered sense)
SMART: Unit Attention - Background media scan failure
SMART: Spare sector availability warning (no sense)
SMART: Spare sector availability warning (recovered sense)
SMART: Spare sector availability warning (unit attn sense)
SMART: Flash scan warning
SMART: Unrecovered Flash Write Error
SMART: Read error rate warning (no sense)
SMART: Read error rate warning (recovered sense)
SMART: Read error rate warning (unit attn sense)
SMART: Seek error rate warning (no sense)
SMART: Seek error rate warning (recovered sense)
SMART: Seek error rate warning (unit attn sense)
SMART: Write error rate warning (no sense)
SMART: Write error rate warning (recovered sense)
SMART: Write error rate warning (unit attn sense)
SMART: Load/unload cycle count warning (no sense)
SMART: Load/unload cycle count warning (recovered sense)
SMART: Load/unload cycle count warning (unit attn sense)
SMART: Spin up time warning (no sense)
SMART: Spin up time warning (recovered sense)
SMART: Spin up time warning (unit attn sense)
SMART: Spin up retry count warning (no sense)
SMART: Spin up retry count warning (recovered sense)
SMART: Spin up retry count warning (unit attn sense)
SMART: Thermal Sense trip (no sense)
SMART: Extreme over-temperature warning
SMART: Unrecoverd Flash Scan Error
SMART: Test warning (no sense)
SMART: Test warning (recovered sense)
SMART: Test warning (unit attn sense)
Unable to read RID or FID number xx
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
363
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
364
A
B
C
Command Processing During Execution of Active I/O process .....................................264
Command Processing During Startup and Format Operations .......................................267
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
365
D
E
F
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
366
G
H
I
L
M
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
367
N
O
P
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
368
Q
R
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
369
S
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
370
T
U
V
W
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
371
X
Z
HGST Ultrastar C10K600 (SAS) Hard Disk Drive Specification
372
HGST Ultrastar C10K300 (SAS) Hard Disk Drive Specificationn
373
© Copyright HGST, a Western Digital company
HGST, a Western Digital company
3403 Yerba Buena Road
San Jose, CA 95135
Produced in the United States
Tel: 800-801-4618 Fax: 408-717-5000
All rights reserved Ultrastar™ is a trademark of HGST.
HGST trademarks are authorized for use in countries and jurisdictions in which HGST has the right to use, market and advertise the brands. HGST shall not be liable to third parties for unauthorized use of HGST trademarks.
Microsoft, Windows XP, and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.
Other trademarks are the property of their respective owners.
References in this publication to HGST products, programs or services do not imply that HGST intends to make these available in all countries in which HGST operates.
Product information is provided for information purposes only and does not constitute a warranty.
Information is true as of the date of publication and is subject to change. Actual results may vary. This publication is for general guidance only. Photographs may show design models.
This publication is for general guidance only. Photographs may show design models
HGST Ultrastar C10K300 (SAS) Hard Disk Drive Specification
374
advertisement
Related manuals
advertisement
Table of contents
- 17 1.0 General
- 17 1.1 Introduction
- 17 1.2 Glossary
- 17 1.3 Caution
- 19 2.0 Outline of the Drive
- 21 3.0 Fixed-disk Subsystem Description
- 21 3.1 Control Electronics
- 21 3.2 Head Disk Assembly
- 21 3.3 Actuator
- 23 4.0 Drive Characteristics
- 23 4.1 Formatted Capacity
- 23 4.2 Data Sheet
- 24 4.3 Inquiry Information
- 24 4.3.1Product ID
- 24 4.3.2World Wide ID - Block Assignment
- 25 4.4 Cylinder allocation
- 26 4.5 Performance characteristics
- 27 4.5.1 Mechanical positioning
- 28 4.5.2 Average latency
- 28 4.5.3 Spindle stop time
- 29 4.5.4 Data transfer speed
- 29 4.5.5 Buffering operation (read ahead/write cache)
- 31 5.0 Data Integrity
- 31 5.1 Equipment Status
- 31 5.2 Error Recovery Procedure
- 33 6.0 Physical Format
- 33 6.1 Shipped Format (P-List)
- 33 6.2 Reassigned Format (G-List)
- 35 7.0 Electrical Interface
- 35 7.1 SAS Connector
- 35 7.1.1 29 pin Serial Attached SCSI (SAS) Connector Definition
- 36 7.1.2 Voltage and Ground Signals
- 36 7.1.3 Ready LED output
- 37 8.0 Environment
- 37 8.1 Temperature and humidity
- 38 8.2 Storage requirements
- 38 8.2.1 Packaging
- 38 8.2.2 Storage time
- 38 8.3 Corrosion test
- 39 8.4 Cooling requirements
- 41 9.0 DC Power Requirements
- 42 9.1 Power Supply Current, Average and Peak
- 44 9.2 Ripple Voltage
- 44 9.3 Power Consumption Efficiency Index
- 45 10.0 Reliability
- 45 10.1 Start/Stop Cycles
- 45 10.2 Load/Unload Cycles
- 45 10.3 Data Reliability
- 45 10.4 Seek errors
- 45 10.5 Failure prediction (S.M.A.R.T)
- 45 10.6 MTBF (Mean Time Between Failure): 2.0M hours
- 46 10.7 Preventive Maintenance
- 46 10.8 Temperature Warning
- 47 11.0 Mechanical Specifications
- 47 11.1 Outline
- 47 11.2 Mechanical Dimensions
- 49 11.3 Interface Connector
- 50 11.4 Mounting Positions and Tappings
- 51 11.5 Drive Mounting
- 51 11.6 Heads Unload and Actuator Lock
- 53 12.0 Vibration and Shock
- 53 12.1 Operating Vibration
- 53 12.1.1 Random Vibration
- 53 12.1.2 Swept Sine Vibration
- 53 12.2 Non-operating Vibrations
- 53 12.2.1 Random Vibration
- 53 12.2.2 Swept Sine Vibration
- 53 12.3 Operating shock
- 54 12.4 Non-operating shock
- 54 12.4.1 Half sine wave shock pulse
- 54 12.4.2 Rotational shock
- 55 13.0 Acoustics
- 55 13.1 Sound power levels
- 57 14.0 Identification
- 57 14.1 Labels
- 59 15.0 Electromagnetic Compatibility
- 59 15.1 Class B Regulatory Notices
- 61 16.0 Standards
- 61 16.1 European Standards Compliance
- 61 16.2 German Safety Mark
- 61 16.3 Flammability
- 63 17.0 SAS Attachment
- 63 17.1 General
- 63 17.2 SAS Features
- 64 17.3 SAS Names and Identifiers
- 65 17.4 Spin up
- 66 17.5 PHY Layer
- 66 17.5.1 Link Reset Sequence
- 67 17.5.2 Hard Reset
- 67 17.5.3 SAS OOB (Out of Band)
- 68 17.5.4 SAS Speed Negotiation
- 69 17.5.5 PHY Error Handling
- 69 17.6 Link Layer
- 69 17.6.1 Address Frames
- 72 17.6.2 Link Layer Error Handling
- 74 17.7 Transport Layer
- 75 17.7.1 Command Information Unit
- 76 17.7.2 TASK Information Units
- 78 17.7.3 XFER_RDY Information Units
- 78 17.7.4 DATA Information Units
- 78 17.7.5 RESPONSE Information Units
- 80 17.7.6 Sequences of SSP Information Units
- 81 17.7.7 Transport Layer Error Handling
- 83 18.0 SCSI Command Set
- 85 18.1 SCSI Control Byte
- 85 18.2 Abbreviations
- 85 18.3 Byte ordering conventions
- 86 18.4 FORMAT UNIT (04)
- 88 18.4.1 Parameter List Header
- 90 18.4.2 Defect Descriptor
- 93 18.5 INQUIRY (12)
- 94 18.5.1 Inquiry Data
- 110 18.6 LOG SELECT (4C)
- 113 18.7 LOG SENSE (4D)
- 114 18.7.1 Log Page parameters
- 115 18.7.2 Log Sense Page
- 116 18.7.3 Log Sense Page
- 118 18.7.4 Log Sense Page
- 120 18.7.5 Log Sense Page
- 122 18.7.6 Log Sense Page
- 123 18.7.7 Log Sense Page D
- 124 18.7.8 Log Sense Page E
- 126 18.7.9 Log Sense Page F
- 127 18.7.10 Log Sense Page
- 130 18.7.11 Log Sense Page
- 133 18.7.12 Log Sense Page
- 137 18.7.13 Log Sense Page 1A
- 138 18.7.14 Log Sense Page 2F
- 139 18.7.15 Log Sense Page
- 142 18.7.16 Log Sense Page
- 144 18.8 MODE SELECT (15)
- 145 18.9 MODE SELECT (55)
- 146 18.10 MODE SENSE (1A)
- 147 18.10.1 Mode Parameter List
- 151 18.10.2 Mode Page 00 (Vendor Unique Parameters)
- 153 18.10.3 Mode Page 01 (Read/Write Error Recovery Parameters)
- 158 18.10.4 Mode Page 02 (Disconnect/Reconnect Parameters)
- 160 18.10.5 Mode Page 03 (Format Device Parameters)
- 162 18.10.6 Mode Page 04 (Rigid Disk Drive Geometry Parameters)
- 163 18.10.7 Mode Page 07 (Verify Error Recovery Parameters)
- 164 18.10.8 Mode Page 08 (Caching Parameters)
- 166 18.10.9 Mode Page 0A (Control Mode Page Parameters)
- 170 18.10.10 Mode Page 0C (Notch Parameters)
- 171 18.10.11 Mode Page 18h
- 172 18.10.12 Mode Page 19h (Port Control Parameters)
- 178 18.10.13 Mode Page 1A (Power Control)
- 179 18.10.14 Mode Page 1C (Informational Exceptions Control)
- 182 18.11 MODE SENSE (5A)
- 183 18.12 PERSISTENT RESERVE IN (5E)
- 183 18.12.1 Service Action
- 184 18.12.2 Parameter data for Read Keys
- 185 18.12.3 Parameter Data for Read Reservations
- 186 18.13 PERSISTENT RESERVE OUT (5F)
- 187 18.13.1 Service Action
- 187 18.13.2 Type
- 188 18.13.3 Parameter list
- 189 18.13.4 Summary
- 191 18.14 PRE-FETCH (34)
- 192 18.15 READ (6) - (08)
- 193 18.16 READ (10) - (28)
- 195 18.17 READ (12) - (A8)
- 196 18.18 READ (16) - (88)
- 197 18.19 READ (32) - (7F/09)
- 199 18.20 READ BUFFER (3C)
- 200 18.20.1 Combined Header And Data (Mode 00000b)
- 200 18.20.2 Read Data (Mode 00010b)
- 201 18.20.3 Descriptor (Mode 00011b)
- 202 18.20.4 Read Data from Echo Buffer (Mode 01010b)
- 202 18.20.5 Echo Buffer Descriptor (Mode 01011b)
- 202 18.20.6 Expander Communications and Echo Buffer (Mode 11010b)
- 203 18.21 READ CAPACITY (10) - (25)
- 205 18.22 READ CAPACITY (16) (9E/10)
- 205 18.22.1 Returned Data Format
- 206 18.23 READ DEFECT DATA (37)
- 208 18.23.1 Defect List Header
- 208 18.23.2 Defect List Descriptor
- 209 18.23.3 Bytes from Index Format (100b)
- 209 18.23.4 Physical Sector Format (101b)
- 210 18.24 READ DEFECT DATA (B7)
- 210 18.24.1 Defect List Header
- 211 18.24.2 Defect List Descriptor
- 211 18.24.3 Bytes from Index Format (100b)
- 211 18.24.4 Physical Sector Format (101b)
- 212 18.25 READ LONG (3E)
- 213 18.26 REASSIGN BLOCKS (07)
- 215 18.27 RECEIVE DIAGNOSTICS RESULTS (1C)
- 215 18.27.1Receive Diagnostic Results Page
- 216 18.27.2Receive Diagnostic Results Page
- 218 18.28 RELEASE (17)
- 219 18.29 RELEASE (57)
- 220 18.30 REPORT DEVICE IDENTIFIER (A3/05)
- 222 18.31 REPORT LUNS (A0)
- 223 18.32 REPORT SUPPORTED OPERATION CODES (A3/0C)
- 224 18.32.1All_commands parameter data format
- 225 18.32.2One_command parameter data format
- 227 18.32.3Command timeouts descriptor format
- 228 18.33 REPORT SUPPORTED TASK MANAGEMENT FUNCTIONS (A3/0D)
- 230 18.34 REQUEST SENSE (03)
- 231 18.35 RESERVE (16)
- 232 18.36 RESERVE (56)
- 233 18.37 REZERO UNIT (01)
- 234 18.38 SEEK (6) - (0B)
- 234 18.39 SEEK (10) - (2B)
- 235 18.40 SEND DIAGNOSTIC (1D)
- 237 18.40.1 Send Diagnostic Page
- 237 18.40.2 Send Diagnostic Page 3F
- 240 18.40.3 Send Diagnostic Page
- 242 18.41 SET DEVICE IDENTIFIER (A4/06)
- 243 18.42 START STOP UNIT (1B)
- 246 18.43 SYNCHRONIZE CACHE (10) - (35)
- 247 18.44 SYNCHRONIZE CACHE (16) - (91)
- 248 18.45 TEST UNIT READY (00)
- 249 18.46 VERIFY (2F)
- 252 18.47 VERIFY (12) - (AF)
- 253 18.48 VERIFY (16) - (8F)
- 254 18.49 VERIFY (32) - (7F/0A)
- 256 18.50 WRITE (6) - (0A)
- 257 18.51 WRITE (10) - (2A)
- 259 18.52 WRITE (12) - (AA)
- 260 18.53 WRITE (16) - (8A)
- 261 18.54 WRITE (32) - (7F/0B)
- 263 18.55 WRITE AND VERIFY (10) - (2E)
- 264 18.56 WRITE AND VERIFY (12) - (AE)
- 265 18.57 WRITE AND VERIFY (16) - (8E)
- 266 18.58 WRITE AND VERIFY (32) - (7F/0C)
- 267 18.59 WRITE BUFFER (3B)
- 267 18.59.1 Combined Header And Data (Mode 00000b)
- 268 18.59.2 Write Data (Mode 00010b)
- 268 18.59.3 Download Microcode (Mode 00100b)
- 269 18.59.4 Download Microcode and Save (Mode 00101b) -Single Binary File
- 269 18.59.5 Download Microcode and Save (Mode 00111b) - Multiple Binary Files
- 269 18.59.6 Write Data to Echo Buffer (Mode 01010b)
- 270 18.59.7 Enable Expander Communications Protocol (Mode 11010b)
- 271 18.60 WRITE LONG (3F)
- 273 18.61 WRITE SAME (41)
- 274 18.62 WRITE SAME (16) - (93)
- 275 18.63 WRITE SAME (32) - (7F/0D)
- 277 19.0 SCSI Status Byte
- 279 20.0 Additional information
- 279 20.1 SCSI Protocol
- 279 20.1.1 Priority of SCSI Status Byte Reporting
- 279 20.1.2 Invalid LUN Processing
- 280 20.1.3 Overlapped Commands
- 280 20.1.4 Command Processing During Execution of Active I/O Process
- 281 20.1.5 Unit Attention Condition
- 283 20.1.6 Command Processing During Startup and Format Operations
- 283 20.1.7 Internal Error Condition
- 283 20.1.8 Deferred Error Condition
- 284 20.1.9 Degraded Mode
- 291 20.1.10Command Processing while Reserved
- 291 20.2 Priority Commands
- 292 20.3 Command Queuing
- 292 20.3.1 Queue Depth
- 292 20.3.2 Queue Full Status
- 292 20.3.3 Termination of I/O Processes
- 292 20.4 Command Reordering
- 292 20.5 Concurrent I/O Process
- 292 20.6 Write Cache
- 293 20.7 Automatic Rewrite/Reallocate
- 295 20.8 Segmented Caching
- 295 20.8.1 Overview
- 295 20.8.2 Read Ahead
- 295 20.9 Multiple Initiator Systems
- 295 20.9.1 Sense Data
- 295 20.9.2 Mode Pages
- 295 20.10 Multiple Initiator Environment
- 295 20.10.1 Initiator Sense Data
- 295 20.10.2 Initiator Mode Select/Mode Sense Parameters
- 296 20.11 Reset
- 296 20.11.1 Reset Sources
- 296 20.11.2 Reset Actions
- 296 20.12 Diagnostics
- 296 20.12.1 Power on Diagnostics
- 297 20.12.2 Self-test via SEND DIAGNOSTIC Command
- 300 20.13 Idle Time Function
- 300 20.14 Command Time out Limits
- 300 20.14.1 Reassignment Time
- 300 20.14.2 Format Time
- 300 20.14.3 Start/Stop Unit Time
- 301 20.14.4 Medium Access Command Time
- 301 20.14.5 Time-out Limits for Other Commands
- 302 20.15 Recommended Initiator ERP
- 302 20.15.1 Drive Service Strategy
- 303 20.15.2 Recommendations for System Error Log
- 303 20.15.3 Data Recovery Procedure
- 305 20.15.4 Nondata Error Recovery Procedure
- 313 21.0 TCG SSC
- 313 21.1 Referenced Specifications and Standards
- 313 21.1.1 TCG Specifications
- 313 21.1.2 Federal Information Processing Standards (FIPS)
- 313 21.1.3 National Institute of Standards (NIST)
- 313 21.1.4 Department of Defense
- 314 21.1.5 RSA Laboratories Standards
- 314 21.1.6 Other Standards
- 314 21.2 Implementation Exceptions
- 314 21.3 Implementation Features and Details Outside of TCG Specifications
- 315 21.4 Encryption Algorithms
- 315 21.4.1 Advanced Encryption Standard(AES) Support
- 315 21.4.2 Level 0 Discovery Vendor Specifc Data
- 316 21.4.3 Pseudo Random Number Generation (PRNG)
- 316 21.4.4 Key Wrapping
- 316 21.4.5 Key Erasure
- 316 21.5 -TCG SSC Tables
- 317 21.5.1 Admin SP C_PIN Table and Locking SP C_PIN Table
- 317 21.5.2 K_AES_256 Table
- 317 21.5.3 Locking SP AccessControl Table
- 318 21.5.4 Locking Info Table
- 319 21.5.5 Locking SP Locking Table
- 319 21.6 Firmware Download and Signing
- 322 21.7 MSID
- 322 21.8 Logging
- 322 21.9 Number of Sessions
- 322 21.10 Number of Bands
- 322 21.11 Number of COMIDs
- 322 21.12 Locked and Unlocked Behavior
- 322 21.12.1 T10 SCSI commands
- 325 21.12.2 TCG SSC Commands
- 326 21.13 Error Codes
- 327 22.0 SCSI Sense Data
- 327 22.1 SCSI Sense Data Format
- 328 22.2 Sense Data Description
- 328 22.2.1 Valid (Bit 7 of byte 0)
- 328 22.2.2 Error Code (Bit 6 - 0 of byte 0)
- 328 22.2.3 ILI: Incorrect Length Indicator (Bit 5 of byte 2)
- 329 22.2.4 Sense Key (Bit 3 - 0 of byte 2)
- 330 22.2.5 Information Bytes (Byte 3 through 6)
- 330 22.2.6 Additional Sense Length (Byte 7)
- 330 22.2.7 Command Specific Information (Byte 8 through 11)
- 331 22.2.8 Additional Sense Code/Qualifier (Byte 12 and 13)
- 359 22.2.9 RU: Field Replaceable Unit (Byte 14)
- 359 22.2.10 Sense Key Specific (Byte 15 through 17)
- 362 22.2.11 Reserved (Byte 18 through 19)
- 362 22.2.12 Vendor unique error information (Byte 20 through 23)
- 362 22.2.13 Physical Error Record (Byte 24 thru 29)
- 362 22.2.14 Reserved (Byte 30 through 31)
- 363 23.0 Appendix. UEC list