The Quantum ProDrive
disk platters as storage media. These drives feature formatted capacities ranging from 42 to 168 megabytes
and a variety
industry-standard
megabytes
megabytes
powerful SCSI commands
efficiently managed within these products and can
drives feature an innovative design using an integrated controller, minimum number
control
of
NOTE:
1.1.1
This document provides a general description
of
operation, interface command implementation, and maintenance. Additional infonnation pertaining to
SCSI interface may be found in the ANSI X3.I31-1986, Small Computer System Interface
the
Specification Common Command
1.2
GENERAL DESCRIPTION
Series™
of
interfaces. This manual covers the
Small Computer System Interface (SCSI) host interface. The ProDrive 40S has 42
of
formatted capacity on two disks with three movable heads; the ProDrive 80S has 84
of
formatted capacity on three disks with six movable heads. These drives make optimum use
to
product quality during manufacture. The result is low cost, high reliability products.
Throughout this manual, ProDrive 40S/80S
40S
or
the ProDrive 80S. ProDrive 40S and ProD rive 80S will be used to refer specifically
42
to the
and 84 megabyte versions, respectively.
is a family
provide maximum system performance. Media defects and error recovery are
of
ten hard disk drives using non-removable 3 1/2-inch rigid
• 48 bit computer generated cyclic ECC (Error Correcting Code) with
. capability
• Automatic retry for read disk errors
• Transparent defect mapping
• High-performance in-line defective sector skipping and reassignment
sectors without need to reformat
• Buffer memory parity and SCSI bus parity
•
Patented
• Read/Write with
• Support for 512, 1024, and 2048 byte logical block sizes
• Multiple block data transfer up to 64K blocks
of
the ProDrive 4OS/80S include:
of
42
or
84 megabytes
of
up to 2.0 megabytes/second asychronous, 4.0 megabytes/second
msec average access time
AIRLOCK® automatic shipping lock and dedicated landing zone
1:
I interleave operation .
II-bit
burst correction
of
new defective
General Description and Specifications 1-1
Page 14
Section
General
1
Description
and Specifications
1.2.1
Environmental
PHYSICAL SPECIFICATIONS
Limits
Ambient Temperature -
Ambient Relative Humidity Non-Operating:
Altitude (relative to sea
l~vel)
Mechanical Dimensions (Exclusive
Height
Width
Depth
Weight
=
=
=
=
1.625 in.
4.0 in.
5.75 in.
1.9 lb.
(41.3 mm)
(101.6 mm)
(144.9 mm)
(0.88 kg)
Non-Operating:
Operating:
Operating:
-Non-Operating:
Operating:
of
Faceplate)
-40°F to 140°F (-40°C to 65°C)
42°F/hr (20°C/hr) gradient
39°F to 122°F (4°C to 50°C)
23°F/hr (IO°C/hr) gradient
5% to 95% without condensation
Maximum wet bulb
8% to 85% without condensation
Maximum wet bulb
-200 (-60M) to 40,000 ft. (12
-200 (-60M) to 10,000 ft. (3 km)
= 115°F (46°C)
= 79°F (26°C)
km)
Heat Dissipation
Average
Typical
Power consumption includes power dissipated by drive's SCSI bus terminators.
Shock
Table
axes (the principal drive base axes). The term "operating" implies that the drive will be fully functional
while being subjected to the shock or vibration level listed during operation. "Non-operating" implies that
there will be no change in performance once the drive is powered up after being subjected to the listed shock
or vibration in the powered-down (non-operating) condition.
and
I-I
lists specified levels for shock and vibration applied to any
Power Consumption (idle):
Power Consumption (30% Seeking):
Vibration
TABLE 1·1 Vibration
VIBRATION:
5-500 Hz Sine Wave (Peak to Peak)
1 Oct/Min
SHOCK:
1/2 Sine Wave
11
Sine Sweep
of
msec Duration ( 1 0 hits maximum)
8 Watts (27.3 BTUlHr)
9 Watts (30.7 BTUlHr)
of
the three mutually perpendicular
and
Shock Specficiation
Operating
O.50G
lOG
(1
soft error/shock)
(6 G No soft errors)
Non-Operating
2.00G
60G
In addition, the ProDrive as packaged in the shipping container will withstand drops onto a concrete
surface from 48 inches on all surfaces, six edges and three comers. It will withstand vibration applied to
of
the container
1·2
0.5 G, 5-100 Hz (0 to Peak) and
General Description and Specifications
1.5
G, 100-500 Hz (0 to Peak).
Page 15
Section 1
General Description and Specifications
1.2.2
PERFORMANCE SPECIFICATIONS
Capacity
Fonnatted capacity (MB) *
Number
of
512 byte sectors
* One megabyte is defined as 220 bytes
Data
Transfer
Seek Times/Miscellaneous Times
DESCRIPTION
Single Track Seek (msec)
Average
1/3
Full
Average Rotational Latency (msec)
Sequential Head Switch (msec)
Power-U~
Rates Buffer to SCSI Bus -Up to 2.0 Mbytes/second asynchronous,
Disk to Buffer -
Seek (msec)
Stroke Seek (msec)
Stroke Seek (msec)
Time (sec)
ProDrive 40S
82,029
TYPICAL
NOMINAL
CONDITION
6
19
:!)
35
8.3
3.0
13
ProDrive 80S
40
4.0 Mybtes/seconds synchronous
Up
to 1.25 Mbytes/second in bursts
NOMINAL
CONDITION
7
21
23
40
8.3
3.0 3.0
15
80
164,058
MAXIMUM
WORST
CONDITION
CASE
7
23
25
45
8.3
18
NOTES: Quoted seek times include head settling time but do not include command overhead or latency
Seek time is the time required for the actuator to seek and settle on track.
time.
Seek times are measured by averaging 1000 seeks
of
the average
1000 random seeks. In the rare occurrence
of
the indicated length. Average seek time is
of
a seek error, any individual seek
may take up to 5 seconds for recovery.
of
Sequential head switch time is the time required for the head to move from the end
of
sector on a track to the beginning
cylinder. This time is fixed by the track skewing feature
the next sequential sector, located on the next track, same
of
the drive. (See Appendix B.)
the last
Power-up time is the time from the supply voltages reach operating range to the time the drive
to
accept
aU
is able
Nominal conditions are defined as
applied shock
commands.
0
25
C ambient temperature, nominal supply voltages, and no
or
vibration. Worst case conditions are defined as worst case extremes
of
temperature and supply voltages.
General Description and Specifications
1·3
Page 16
Section 1
General Description and Specifications
Media Quality
The ProDrive features defect management, which eliminates the need to manually identify defects. Defect
is
management
completely transparent to the user. See Appendix C for a detailed description
of
the
ProDrive defect handling procedure and ECC (Error Correcting Code) capability.
Error
Error rates are defined by Quantum as follows:
2)
3)
4) Unrecoverable errors are those whose final retry error pattern is uncorrectable using ECC: retry reads
Rates
Random Data Errors (2):
Defect Data Errors (3):
Unrecoverable Data Errors (4):
Seek Errors (5):
1)
A data error
over at least
shock or vibration.
Random errors are those which do not exhibit a repeating error pattern, i.e
twice in a row within a specified number
once data
probably not due to media defects.
Defect errors are those which exhibit a repeating error pattern, i.e
within eight retry reads. and cannot be read without error up to that point.
to media defects. The sectors will be automatically reallocated
Enabled bit in page 1 H and the Reallocate Uncorrectable Error Enabled bit in page 39H
MODE SELECT command are set to
See Appendix C for a description
are terminated by either a repeating error pattern, or eight attempts without reading correctly.
is
one (1) sector read incorrectly. Data error rates are defined as average rates measured
1000 different sectors under any
is
read correctly.) The sectors will not be automatically reallocated since the errors are
1 error per
1 error per
1 error per
1 error per
of
retry reads; the default is eight. (Retries are terminated
See Appendix C for information on defect handling.
1.
(The default is 0: automatic reallocation is not performed.)
of
error correction options.
10
10
bits read (maximum)
12
10
bits read (maximum)
14
10
bits read (maximum)
106 seeks (maximum)
of
the specified operating conditions except applied
.•
the error does not occur
.•
the error occurs twice in a row
Such errors are likely due
if
the Automatic Read Reallocation
of
the
in
5) A seek error is any seek
the drive must go through a full recalibration routine to locate the desired cylinder. A full
recalibration takes approximately five seconds.
1.2.3
FUNCTIONAL SPECIFICATIONS
which the drive does not locate the desired cylinder.
ProDrive 40S ProDrive 80S
1·4
Nom Rotational Speed (RPM)
Max Recording Density (bpi}
Max Flux Density (fei)
Track Density (tpi) 1,000 1,000
Data Cylinders
Data Tracks
RlWHeads
Disks
Encoding Scheme
General Description and Specifications
3.662 ±O.3% 3.662
22.055 22.055
14,700
834
2,502
3
2
RLL 2,7 RLL 2,7
14.700
5,004
or
any seek in which
±O.3~
834
6
3
Page 17
Section 1
General Description and Specifications
1.2.4
MTBF:
PM:
MTTR:
Start/Stop:
1.2.5
Idle Mode: 45
1.2.6
The
a)
b)
c)
d)
RELIABILITY SPECIFICATIONS
50,000 POH typical usage
Not required
30
minutes
10,000 cycles
ACOUSTICS
dBa
maximum at 1 foot in any direction
STANDARDS AND REGULATIONS
ProDrive disk drives satisfy the following standards and regulations:
U.L.:
CSA:
SDA:
VDE:
FCC:
Standard 478, Standard for Safety, Electronic Data Processing Units and Systems
Standard C22.2-154 Data Processing Equipment
Standard C22.2-143 Office Equipment
VDE 0806, (IEC 380), Standard for Office Appliances and Machines
FCC Rules for Radiated and Conducted Emissions, Part 15, Sub Part
Equipment
J, For Class B
General Description and Specifications
1·5
Page 18
Section 1 General Description and Specifications
(This page intentionally left blank..)
1-
6 General Description and Specifications
Page 19
INSTALLATION
SECTION 2
AND OPERATION
2.1
2.1.1
The ProDrive disk drives are shipped with a faceplate installed and shock mounts mounted directly to the
base casting. Figure
INSTALLATION
SPACE REQUIREMENTS
2-1
shows the external dimensions
of
the drives.
104.2
438
All dimensions in millimeters
FIGURE 2-1 ProDrive Mechanical Dimensions
~
Installation and Operation 2 - 1
Page 20
Section 2
Installation and Operation
2.1.2
UNPACKAGING INSTRUCTIONS
a) Open the shipping container.
b)
Lift shipping container material and remove drive.
Figure 2-2 illustrates the 8-pack packing assembly for the
identifies each item.
ProDrive. The list following the figure
/"-
INSERTS
/ 4PL
./
/_.
BOTTOM
./.
STY
FIGURE
PackinK
NOTES: After unpacking the disk drive(s), store the packing materials for possible future use.
2 - 2 Installation and Operation
Assembly
Item
Descrjptjon:
A. Shipping Container (8-pack)
B.
C.
D.
Internal Padding
ProDrive Disk Drive
Package inserts
The
ESD bag
is
used to prevent electronic component damage during handling and shipment.
You should ensure that your handling and shipping procedures will also preclude damage due to
electrostatic discharge.
2·2
ProDrive Packing Assembly
Page 21
Section 2
Installation and Operation
2.1.3
The ProDrive may be mounted in any orientation. The mounting bracket with'integral
designed for this purpose. Figure 2-3 shows
holes on each side
MOUNTING
of
the bracket.
T
the location
1'04.1
of
the mounting bracket
±.30
---,..
D
••
ami
the .four mountin,g
;:
D
D
shoc.J<.mo
unts
'.
is
o
DD
2.7±.1~
All dimensions
FIGURE 2-3 ProDrive Mounting Dimensions
The base casting is very close to the drive mounting bracket. Mounting
must be chosen so that
through the mounting bracket holes.
the mounting hole threads and avoid damaging ,orplaoing
To
casting.
the mounting screws must not exceed 8 inch-pounds.
avoid stripping the mounting hole ;ihreads,
no
more than the specified length
See Figure 2-4. This .length will allow full use
'01'6±'30
in
millimeters
__
;themaximum
~
...
of
screw
:unw.ante.d
ll
thread
stress on the base
'torque applied to
~
:9OF.ew
!kmg:ths
protrudes
of
Installation and Operation 2 • 3
Page 22
Section 2
Installation. and Operation
"'"
"""',,
50
..
"
~
l
r~
i .130
I .
: \
5.5mm-l
"T!6
FIGURE
2.1.4
DC Power
The voltages and current requirements
sequencing either
power.
POWER REQUIREMENTS
OFF
Voltage
2·4
or
ON is required by the
Nominal
Tolerance
\
\ :
J~
r~
\ I
!c::==========~}
.....--
____
....,
J
\
\ I \
\
"-
PCB
HARD
DISK
ASSEMBLY
ProDrive Mounting Screw Clearance
of
the DC Power supplied to the drive are listed below. No power
ProDrive.
Power requirements include SCSI terminator
+12V
±10%
+SV
±S%
Current
Ripple
2 • 4 Installation and Operation
and
Noise
Typical (Idle)
Typical (Seeking)
Maximum (Power Up)
Maximum
O.SOA
O.80A
1.60A
100
mV
P-P
O.SOA
O.60A
0.6SA
SO
mV
P-P
Page 23
Section 2
Installation and Operation
Drive
Startup
12
Volt Supply - ProDrive 40S/80S Start Current Profile (Typical Average)
2
112
(A)
1
I
o
-
t
t=O,
power on
Power Sequencing
Current
Profile
~
~~
~
rIIIIIIIIl
~
,
3
SECONDS
l.J
~
4
No damage or loss
may be lost in the sector being written at the time
transient voltages
opening up
Power Reset Limits
+5
+12 Volts: 10.2 to 9.6 Volts
When powering up, the drive will remain reset (inactive) until both reset limits are exceeded. When
powering down, the drive will become reset when either supply voltage drops below the lower threshold:
hysteresis is
2.2
The
ProDrive
(500C).
temperature
Any user-designed cabinet should provide adequate air circulation so that this maximum air
of
data will occur if power
+ 10% to -100% from nominal while powering up
of
either voltage
Volts:
50 m V minimum.
or
4.6
to 4.5 Volts
return line.
is
applied or removed during drive operation, except that data
of
power loss. In particular, the drive can sustain
or
down, as well as the shorting out or
VENTILATION
operates without a cooling fan provided the ambient air temperature does not exceed 122°F
is
not exceeded.
Installation and Operation 2 - 5
Page 24
Section 2
Installation and Operation
2.3
2.3.1
The DC power connector (J2)
the PCB near the SCSI connector. See Figure 2-5. The recommended mating connector (P2) (AMP PIN
480424-0) utilizes AMP pins [PIN 350078-4 (strip) or PIN 61173-4 (loose piece)]. J2 pins are labeled on
the J2 connector.
NOTE: Pins 2 and 3 are connected on the drive.
2.3.2
INTERCONNECTING
DC POWER CONNECTOR
is
a 4-pin DuPont Connector (SK 20055-(00) mounted on the back edge
Pin I +12 volts DC
Pin 2 +
Pin 3 +5 volt return (ground)
Pin 4 +5 volts DC
12
volt return (ground)
FIGURE
2-5 DC Power Connector (12)
SCSI CONNECTOR
CABLE
CONNECTORS
of
1-
One SCSI cable connector
in
Section 4 - SCSI Interface.
Connection to
2-6. A key slot is provided to prevent incorrect installation
mating connector for
strain relief),
NOTE: Un keyed mating connectors should not be used due to the possibility
11
is
or
equivalent.
backwards.
(JI)
is required for the ProDrive. Details
through a 50-pin Universal Header connector. A connector sketch is shown
Configuration
This section describes the user-selectable hardware options that should be set prior to installation. Figure
2-7 identifies the location
these options. In addition to the optional hardware configurations described below,
can also be affected by many optional features controlled by individual
information about the
J2
DC
CONNECTOR
OPERATION
GENERAL
of
a ProDrive disk drive varies depending on the system
of
SCSI commands.
PROCEDURES
shorting plugs and terminators on the Printed Circuit Board which control
SCSI
TERMINATORS
in
which it is to be installed.
ProDrive operation
SCSI commands. See Section 5 for
MICROPROCE
SSOR
BACK
DRIVE
OF
o
EPROM
JUMPERS
SCSI
CONNECTOR
FIGURE 2-7 Shorting Plug/Terminator Locations on the PCB
(1)
FACTORY TEST
CONNECTOR
FACE
SIDE
PLATE
Installation and Operation 2 - 7
Page 26
Section 2
Installation and Operation
2.4.2
The self seek test continuously exercises the actuator
installed, the drive will perfonn random seek patterns, verifying target IDs after every seek. The pattern
will repeat as long as power
ProDrive is sent from the factory
The
2.4.3
Shorting plug
checking
although parity is still generated.
ProDrive is sent from the factory with shorting plug
The
2.4.4
The
WS shorting plug controls the Wait/Spin option. When this plug is installed, the motor will not
spin upon power-up
permits power sequencing
demanding peak start current at the same time.
will be ready within
start spinning upon power-up
ProDrive is sent from the factory with the WS plug not installed (Wait/Spin option disabled).
The
SELF SEEK TEST OPTION
is
applied to the drive
with
shorting plug SS not installed (Self Seek Test disabled).
ENABLE PARITY OPTION
EP
controls the checking
of
data across the SCSI bus is enabled. With
of
parity across the SCSI bus. When this plug is installed, parity
WAIT SPIN OPTION
or
reset until the host sends the START/STOP command across the SCSI bus. This
so
that the system power supply will not be overloaded by many devices
Once the START/STOP command is received, the drive
15
seconds. When the WS shorting plug is not installed, the motor will automatically
or
reset and be ready within
of
the drive. When shorting plug option SS is
or
until an error has occurred.
EP
removed, parity checking is not performed,
EP
installed (Parity enabled).
15
seconds.
2.4.5
The SCSI bus can support up to eight devices including the host system. The identity number determines
the priority level
the ProD rive prior to installation.
Three shorting plugs (A2,
comprise a 3-bit binary number in which A2 is the most significant bit and
Installation represents
shorting plugs installed, the device identity is
The ProD rive is sent from the factory with plugs A2 and A 1 installed (device 6).
2.4.6
The green
It lights at the beginning
The LED remains on even when the drive is disconnected from the initiator during a command.
2.4.7
The ProDrive contains three resistor networks, in sockets, to terminate the SCSI bus. The location
these terminators is shown in Figure 2-7. Section 3.2.2
terminators.
SCSI bus should contain the terminators. When a ProDrive is used in a position
the first
SCSI
of
BUS
each device, so careful consideration must be taken in choosing the identity number
Al
aI,
DEVICE IDENTIFICATION
and
AO)
shown in Figure 2-7, are used for device identification. These plugs
AO
is the least significant.
meaning that with all shorting plugs installed the device identity is
O.
FACEPLATE LED OPERATION
LED
located on the ProDrive's faceplate illuminates when the drive is executing a command.
of
a command and does not go
off
until the command is completed or aborted.
DRIVER TERMINATORS
of
the manual describes the function
It
is important to note that only the first device (usually the host) and the last device on the
on
the bus
or
last, all three
of
the terminators must be removed.
7.
of
these
other
of
With no
of
than
ProDrive is sent from the factory with the terminators installed.
The
2 - 8 Installation and Operation
Page 27
PRINCIPLES OF
SECTION 3
OPERAtiON
3.1
The drive mechanism consists
These subassemblies
Figure 3-1.
ProDrive
are
40S/80S DRIVE MECHANISM
of
the mechanical subassemblies which are sealed under a metal cover.
not
adjustable
nor
are
they field
repairable.
Please refer to
FIGURE
3·1
ProDrive Exploded View
PrinCiples
of
Operation 3 • 1
Page 28
Section 3
Principles
of
Operation
3.1.1
The base casting is a single-piece cast aluminum alloy which provides a mounting surface for the rest
drive mechanism.
assembly. A gasket is mounted on the outside top edge to ensure a seal with the metal cover. Surfaces are
provided for mounting the magnet plate assemblies for the rotary positioner assembly, and a read/write
preamplifier. Mounting holes are provided outside the cover area, for the PCB and shock mount bracket
assembly. .
3.1.2
The disk stack assembly is secured to the
of
disks, disk spacers and a disk clamp. The
assembly, disk mounting hub, and ferro-fluid magnetic seal. This seal prevents outside air from entering
the drive through the bearing bore
spacers are placed
disks are an aluminum alloy with a thin film magnetic metal coating which is lubricated using a carbon
overcoat. This overcoat prevents head and media wear when the heads are in contact with the disk surface,
which only occurs outside the data area.
3.1.3
The positioner used
magnet plates, a rotary single phase coil, a headstack mounting hub, and a bearing shaft. The magnets are
composed
casting. The rotor and hub are molded together. The shaft is pressed into the base casting. Crash stops
mounted to the magnet plate assembly prevent the heads from being driven into the spindle
surface.
BASE CASTING ASSEMBLY
It
has two machined holes for mounting the motor/spindle assembly and the positioner
DISK STACK ASSEMBLY
DC
spindle motor which is bolted to the base casting.
DC
motor assembly consists
or
along the bearing shaft. In the ProDrive 80S, three disks and two
on
the hub and clamped in place; the ProDrive 40S uses two disks and one spacer. The
of
a DC motor, spindle bearing
ROTARY POSITIONER ASSEMBLY (ACTUATOR)
on
the ProDrive is a Quantum proprietary design. It consists
of
two alternating poles bonded to the magnet plates which in tum, are bolted to the base
of
the upper and lower
or
off
of
It
consists
the disk
the
3.1.4 HEADSTACK ASSEMBLY
The headstack assembly consists
and the rotary positioner assembly. It is designed such that the mass center
of
center
design in which the head arms, optical scale, and rotary positioner coil assembly balance each other. The
heads are mini-composite slider type heads. They are mounted to Whitney-style spring steel flexures which
are screwed to the head arms. The head conductors are flex cables routed through one flex circuit. A read
preamplifier/write driver is mounted to this flex circuit.
3.1.5
The optical encoder assembly consists
optical reticle, a multi-cell photo diode matrix, and a flex circuit.
The infrared LED and the mirror are mounted in the upper portion
scale mounted with the headstack to move between the mirror-reflected light from the infared LED and the
lower portion
so that each cell only
angular position
the mounting hub. This is accomplished without the need for external counterbalances through a
OPTICAL ENCODER
of
the housing which contains the reticle and photo cells. The reticle masks the photo cells
rece'ives light through a specific portion
of
the reticle and scale are precision adjustments made when the drive is manufactured.
of
the read/write heads, head arms, spacers, flex circuit, an optical scale,
of
the entire stack is at the
of
a housing, an infared light-emitting diode (LED), a mirror, an
of
the housing. This allows the optical
of
the movable scale. Both the clearance and
3 - 2 Principles
of
Operation
Page 29
Section 3
Principles
of
Operation
3.1.6
The ProDri,'e uses a dedicated landing zone to ensure data integrity and prevent damage during shipment.
It also uses AIRLOCK@. Quantum's patented means
AIRLOCK consists
actuator to hold the headstack in the landing zone whenever the disk is not rotating. As DC power is
applied to the motor and the disk stack starts rotating, an airflow is generated around the disk. As airflow
increases with disk rotation, the airvane and its
landing zone. When DC power is removed from the motor, an electronic return mechanism automatically
pulls the actuator into the landing zone so the
3.1.7
The
ProDri~e
surface.
end
of
this sentence.
It is absolutely essential that the air circulating within the drive
drive is assembled in a Class 100 purified air environment, then sealed with a metal cover. During the life
of
the drive. the rotating disks act as an air pump to force the air through an internal filter. Figure 3-2
shows the air flow in the enclosed area
The lowest pressure area within the drive is at the top in the center
filter is bonded in this area
equalize internal and external pressures. The highest pressure area within the drive is located at the outer
of
edge
this location. Air is pumped continuously into the side
disks, is filtered, and exits from the side
Since this area
filter. This setup ensures a continuous flow
stringent cleanliness required, the cover and seals should not
the disk. Another 0.3 micron filter called the circulation filter is mounted to the base casting at
AUTOMATIC ACTUATOR LOCK
of
locking the headstack in the landing zone. The
of
an airvane mounted close to the edge
ann
rotate. enabling the headstack to move freely out
AIRLOCK can hold it
of
the disk stack with an
in
place.
ann
that intersects the
AIR FILTRATION
Series drives are Winchester type drives and. as such, the heads fly very close to'the media
The
nominal flying height is 8 microinches - more than 2500 times smaller than the period
of
the drive.
of
the cover. This filter allows outside air into the sealed area
of
of
the filter facing away from the rotating direction
of
the drive is at a lower pressure than at the edge
of
filtered air as soon as the disks start to rotate. Due to the
be kept free
of
the filter facing the rotating direction
of
the disks, air will circulate through the
be tampered with.
of
particles.
the spindle. A 0.3 micron breather
To
of
the drive to
of
of
the
at
this end, the
of
the
the disks.
the
FIGURE
3·2
Air
Filtration
3
MICRON
FILTER
CIRCULATION
Principles
of
Operation 3 • 3
Page 30
Section 3 Principles of Operation
3.2
3.2.1
All drive electronics, including SCSI controller functions, are contained on one Printed Circuit Board
Assembly (PCBA). This is accomplished through advanced circuit design and the use
mounted devices and proprietary
PCBA are the preamplifier chip for the read/write circuitry, and the electronic circuitry for the optical
encoder photocells and infared LED; these are located under the drive cover. The preamplifier is mounted as
close to the read/write heads as possible to improve the signal-to-noise ratio. The following paragraphs
provide operation details for major functional
3.2.2
At power-on and at other predetermined times, wedge data on the inside and outside tracks is read by the read
channel for each disk surface. This analog data is converted to a digital value by an on-chip
on the microcontroller. The controller uses these values to calculate the slope
error line from outside to inside
internal temperature and a time mark. New values are read and the slope
temperature and/or time exceeds a predetermined value. When seeking, signals P I and P2 from the optical
encoder are used to determine track crossings.
track, the position error for that track is applied, and the head settles to the center
Signals
Differences between the reference position and the position indicated by
from the pulse width modulator. This signal is converted to an analog form and applied to the actuator
driver, causing the actuator to move the head back onto the desired track centerline.
PI
ProDrive
40S/80S DRIVE ELECTRONICS
GENERAL DESCRIPTION
of
miniature surface-
VLSI components. The only electrical components not contained on the
circui~s
within the drive.
HEAD POSITIONING SYSTEM
AID
of
the expected track position
of
each surface. These values are stored along with the current HDA
is
recalculated whenever the
Once the actuator has positioned the head close to the desired
of
the proper track.
and P2 are monitored and compared with a reference position to hold the head on track.
PI
and P2 will result in an output
converter
Figure 3-3 provides a block diagram
of
the head positioning electronics.
MICROCONTROLLER
FIGURE
3 • 4 PrinCiples
of
Operation
3-3
Head Positioning Electronics
Page 31
Section 3
Principles
of
Operation
3.2.3
READ/WRITE SYSTEM
The read channel path on the ProDrive begins at the heads as the magnetic flux transitions recorded on the
disk pass under the heads causing a low amplitude output differential voltage. These signals pass from the
head onto a flex circuit where a preamplifier/write driver IC is mounted to amplify the signal.
Preamplification is done on the flex circuit at the point closest to the head to improve the signal to noise
perfonnance.
The flex circuit leaves the enclosed drive through a gap between the base casting and the cover, and connects
with a mating header on the PCB. This gap is sealed by the cover gasket. Here the read signal is amplified
further, filtered, and differentiated by the read data processor IC which outputs the signal READ DATA.
This signal is fed to the data synchronizer/ENDEC IC which decodes the data into an NRZ data stream
(NRZ), and a byte clock (BCLK). The
also provides the signal address mark detected (AMD)
if
the data
Ie
pattern read is the address mark pattern. These signals are fed to the data sequencer/DMA controller IC
SOLO. Once SOLO has identified the incoming data as belonging to the target sector(s) the data
called
NRZ
sequencer portion converts the
to
feeds this word
the cache/buffer RAM. The interface IC then outputs the data to the host with
serial bit stream into an 8 bit word. The DMA portion
of
SOLO then
DMA
control from SOLO.
Writing data is the reverse
of
reading
in
that data is presented at the interface IC and passed to SOLO as an
8-bit word. Data presented at a rate faster than can be written are temporarily stored in the cache/buffer
of
RAM. In this way, data can be passed to the drive at a rate independent
the rate at which data can be
written to the disk.
The data synchronizerlENDEC IC provides
SOLO with the signal address mark detect (AMD) and data to
identify the target sector. Once SOLO detects the correct sector, it converts the data from an 8-bit word into
a serial bit stream and passes this data and a clock to the data synchronizer/ENDEC IC. The data is then
encoded into an RLL 2,7 bit stream and passed to the preamplifier/write driver IC via the write data line.
The preamplifier/write driver IC receives the signal write gate from
SOLO and writes the data to the disk.
Figure 3-4 provides a block diagram
WRITE
DRIVER
WRITE
Figure 3-4 Read/Write Block Diagram
of
the read/write electronics.
GATE
NRZ
BCLK
AMD
ADDRESS
SOLO
CACHE/BUFFER
WR
RD
REO
ACK
RAM
SPICY
Principles
of
Operation 3 - 5
Page 32
Section 3
Principles of Operation
3.2.4
The Small Computer System Interface (SCSI) logic is implemented using an SCSI controller chip called
SPICY. This chip interfaces to the host system through the 50-pin SCSI connector (11); and to drive
electronics including the microprocessor's control lines and address/data bus, and the DMA controller/data
sequencer
The controller chip is configured to operate under control
information through the multiplexed address/data bus. An address is strobed into the
on
the falling edge
status from the controller chip)
The microprocessor can also command
and the buffer RAM in synchronous or asynchronous mode.
RAM over nine lines (eight data lines and one parity line). The transfer is controlled by the DMA
controller/data sequencer IC
transferred between the buffer RAM and
operations. This high
synchronous data rate
and RAM refresh operations.
Interface Control
(SOLO).
of
ALE (Address Latch Enable). Data is then strobed from or onto the bus by -RD (read
(SOLO) which handles addressing
DMA
transfer rate allows SPICY to communicate over the SCSI bus at a
of
4.0 MBytes/second, while SOLO simultaneously controls disk-to-RAM transfers
or
-WR (write to
SPICY to perform data transfer operations between the SCSI bus
SPICY at up to 8.0 MBytes/second in SOLO page mode
of
the microprocessor, which can send and receive
the~ontroller
chip)
if
the address selects the chip.
SPICY reads
of
the buffer RAM for SPICY. Data can be
SCSI controller chip
or
writes data from/to the buffer
3 - 6 Principles
of
Operation
Page 33
SECTION 4
SCSI INTERFACE
4.1
The
ProDrive 40S and
integrated Small Computer System Interface (SCSI) controller. This section dermes the functional
requirements
bus timing, and other parameters. The paragraphs below are intended
interface. Refer to
requirements.
INTRODUCTION
ProDrive
for
interfacing with the
Section 5 for more detailed infonnation on the
80S disk drives are "intelligent" disk drives in that they feature
ProDrive
4OS/80S via the SCSI bus, including the command set,
to
provide a brief description
ProDrive
4OS/80S programming
4.2 ANSI CONFORMANCE
4.2.1
The
ProDrive 40S and 80S
following alternatives supported: single-ended drivers, tenninator power, parity,
queuing. In addition, the synchronous data ttansfer option is implemented with a minimum
of
250 nanoseconds and a maximum
4.2.2
In many cases, the ANSI specification allows more than one option. When more than one option is
allowed, and only one option was implemented, the decision as to which option
the following:
Confonnance
Hardware
• . All SCSI bus drivers are OR-tied type drivers and do not actively drive any signals to the false
state.
• During arbitration,
being driven
become true.
• During arbitration phase, DB(P) will
on
Level and Altematlves
confonn
Imple~ntation
the SCSI data bus, it will release its signals without waiting for SEL to
if
the
to
ANSI X3T9.2/82-2 Revision 17B at confonnance level 2 with the
hard
reset, and reservation
ttansfer period
REQI
ACK offset
of
8.
Choices
to
implement was based on
ProDrive
loses arbitration due to a higher priority SCSI
be
undriven.
ID
an
of
bit
this
4.3
4.3.1
The
SCSI bus can support up
ProDrive
Certain
Communication with the
mode, using a dermed REQ/ACK handshake protocol.
SCSI bus functions are assigned
SCSI INTERFACE CHARACTERISTICS
GENERAL DESCRIPTION
to
eight SCSI· devices in any combination
always assume a fixed role as a target.
to
the initiator
•
The
initiator may arbitrate for the SCSI bus and select a particular target.
•
..
11le target may request the transfer
the DATA
for the purpose
BUS, and in some cases
of
continuing an operation.
ProDrive
takes place
of
COMMAND, DATA, STATUS,
it
may arbitrate for the SCSI bus and reselect an initiator
on
the SCSI
or
the target:
OAT A BUS
of
initiators and targets.
or
other infonnation on
in asynchronous
SCSllnteriace 4 • 1
The
or
synchronous
Page 34
Section 4
SCSI
Interface
4.3.2
All signals are low true and use open collector drivers tetminated with 220 ohms to +5 volts (nominal) and
330 ohms to ground at each end
to terminate the lines.
NOTE:
Each signal driven by the
Each signal from the host to the
A
50-pin connector is provided at position J 1 for connecting to the standard SCSI bus. The standard SCSI
single-ended non-shielded connection is used. All signals are asserted at the low level. All odd pins are
grounded. (An exception is
is allowed. Figure 4-1 shows the SCSI connection pins.
SCSI ELECTRICAL CHARACTERISTICS
of
the cable. Resistor networks
If
multiple devices will be connected to the SCSI bus, terminators should be removed
the two devices at the cable ends.
on the drive.
See Section 2.4
ProDrive has the following output characteristics:
• True (Signal Assertion) = 0.0 to 0.5 Vdc at 48 rnA (max)
• False (Signal Non-Assertion) = 2.5 to 5.25 Vdc
ProDrive must have the following characteristics (measured at the drive):
• True (Signal Assertion) = 0.0 to 0.8 V dc
• False (Signal Non-Assertion) = 2.5 to 5.25 Vdc
Pin 25 which
Ground I
1 2
3 4
5 6
7
9
11
13
15
17 18
19
21
Z3
25
Zl
~
31
33
35
J7
~
41
43
45
if!
49
SCSI
is
not connected.) A maximum cable length
Pins
Signal
-
-
-
8
-
10
-
12
-
14
-
16
-
-
a>
22
24
~
28
:l)
32
34
38
42
44
46
48
~
?6
«>
-
-
-
-
-
-
-
-
-
in
sockets are provided on the ProDrive
of
this manual for the location
Data
Bit 0 (DBO)
Data
Bit
1
Data
Bit
2
Data
Bit
3
Data
Bit4
Data Bit 5
Data Bit 6
Data Bit 7 (DB7)
Data Bit P (DBP)
Ground
Ground
Ground
Open
Tenninator Power
Ground
Ground
AlN
Ground
BSY
ACK
RST
MSG
SEL
C/O
REQ
to
of
in
all but
of
terminators
20 ft. (6 meters)
FIGURE 4-1
4 - 2
SCSI
Interface
SCSI
Bus
Pin Assignments
Page 35
Section 4
SCSI Interface
4.3.2.1
Terminator power
ProDrive supplies tenninator power through a schottky diode and a I-Amp fuse with the following
characteristics:
VTERM
4.3.3
There are a total
signal option is included as a data signal.) Definitions
BUS SIGNALS
= 4.25 VOC to 5.25 VOC
800
milliamps minimum source drive capability when supplying both sets
tenninators
1.0 milliamp maximum sink capability. except for the purposes
power
to
an internal tenninator
1.0
Amp
current
of
18
SCSI bus signals. Nine are control signals and nine are used for data. (The parity
li~iting
(fuse)
of
these signals are given below:
of
providing
Control Signals:
BSY
(BUSY) - An "OR-tied" signal that indicates that the bus is being used.
SEL
(SELECT)
initiator.
C/O
(CONTROL/OATA)
OAT
A infonnation is on the
- A signal used by an initiator
- A signal driven by a target that indicates whether CONTROL
OAT
A BUS. True indicates CONTROL.
to
select a target or by a target to reselect an
of
or
I/O
(INPUT/OUTPUT)
movement on the DATA
This signal is also used to distinguish between
MSG
(MESSAGE)
REQ
(REQUEST)
handshake.
ACK
(ACKNOWLEDGE)
REQ/ACK data transfer handshake.
TN
(ATTENTION)
A
RST
(RESET)
- An "OR-tied" signal that indicates the RESET condition.
- A signal driven by a target that controls the direction
BUS with respect to an initiator. True indicates input to the initiator.
SELECTION and RES ELECTION phases.
- A signal driven by a target during the MESSAGE phase.
- A signal driven by a target
- A signal driven by an initiator to indicate an acknowledgment for a
- A signal driven by an initiator to indicate the ATTENTION condition.
to
indicate a request for a REQ/ ACK data transfer
Data Signals:
DB(7·0,P)
BUS. OB(7) is the most significant bit and has the highest priority during the ARBITRATION
phase. Bit number. significance. and priority decrease downward to
one
when the signal value is ·true and zero when the signal value is false.
DB(P) is set to either zero
but
parity generation and checking must be consistent for all SCSI devices on the bus: either all
SCSI devices on the bus must generate and check parity,
check parity. Parity is not valid during the ARBITRATION phase
(DATA
BUS)
- Eight data-bit signals. plus a parity-bit signal that
or
one so that data parity is odd. The use
or
all SCSI devices on the bus must not
DB(O). A data bit is defined as
of
parity is a system option.
..
of
data
fonn a DATA
SCSI Interface 4 • 3
Page 36
Section 4
SCSI Interface
4.3.3.1
Signals may assume true
negated is used in this manual, it means that the signal is actively driven false.
Signal Values
or
false values.
If
any driver is asserted, the signal
is
true. Whenever the
4.3.3.2 OR-Tied Signals
The BSY and
simultaneously driven true by several drivers. No signals other than
simultaneously driven by two
tied
or
operational problem in mixing
RST
signals are OR-tied only. During ordinary operation
or
more drivers, and any signal other than BSY and
non-OR-tied drivers. DB(P) shall not be driven false during the ARBITRATION phase. There is no
OR-tied and non-OR-tied drivers
on
of
the bus, these signals are
BSY, RST, and DB(P) are
RST
may employ OR-
signals other than
BSY
and RST.
4.3.3.3 Signal Sources
Table 4-1 indicates which type
source is driving asserted, driving negated,
must be in the passive state. Note that the
Bus Phase BSY
BUS
FREE
ARBITRATION
SELECI10N
RES
ELECTION
COMMAND Target
DATA
IN
DATA
OUT
STATUS
MESSAGE
MESSAGE
IN
OUT
of
TABLE
Signal
None
All
I&T
I&T
Target
Target
Target
Target
Target
SCSI device may source each signal. No attempt is made to show
or
is passive. All SCSI device drivers that are not active sources
signal is driven by all SCSI devices that are actively arbitrating.
ID:
A unique data bit (the SCSI
the other seven data bits are released (not driven) by this
(DP(P» may be undriven
state during the arbitration phase.
The
signal is driven by the initiator, target,
and
RESELECfION
If
this signal is driven, it is driven only by the active initiator.
The
signal must be released, i.e., not be driven by any SCSI device. The bias circuitry
the
bus tenninators pulls the signal to the false state.
The
signal is driven by the SCSI device
If
the signal is driven,
10)
is driven by any SCSI device that is actively arbitrating;
SCSI device. The parity bit
or
driven to the true state, but must never be driven to the false
or
both, as specified in the SELECTION phase
phase.
that
wins arbitration.
it
is driven only by the active target.
of
Page 37
•
Section 4
SCSI Interface
4.3.4
Unless otherwise indicated, the delay-time measurements are at the drive's own SCSI bus connection.
Thus, these measurements, except cable skew delay, can be made without considering delays in the cable.
ARBITRATION DELAY (2.4
wait from asserting
has been won. There is no maximum time.
ASSERTION PERIOD (90
REQ during synchronous data transfers. Also, the minimum time an initiator will assert ACK
during synchronous transfers.
BUS CLEAR DEL A Y (800
driving all bus signals after:
NOTE: For the first condition above, the maximum time for an SCSI device to clear the bus is
SCSI BUS TIMING
microseconds)
BSY
for arbitration until the DATA BUS can be examined to see if arbitration
nanoseconds)
nanoseconds)
1)
The BUS FREE phase is detected
2)
SEL is received from another SCSI device during the ARBITRA
3) The transition
1200 nanoseconds from both
more than a
clear delay
of
RST to true.
bus settle delay to detect BUS FREE phase, it must clear the bus within a bus
minus the excess time.
(BSY
BSY
and SEL first becoming false.
- The minimum time an SCSI device must
- The minimum time ProDrive will assert
- The maximum time for an SCSI device to stop
and SEL both false for a bus settle delay)
nON
phase
If
an SCSI device requires
BUS
FREE
from its detection
assertion
BUS SET DELAY (1.8
assert
BSY
both false for a bus settle delay) for the purpose
BUS SETTLE DELAY (400
changing certain control signals as called out in the protocol definitions.
CABLE SKEW DELAY (10 nanoseconds) - The maximum difference
allowed between any two
DAT A RELEASE DELAY (400
must release the DATA
DELAY (800
of
the BUS FREE phase
of
BSY
when going to the ARBITRATION delay.
and its SCSI ID bit on the DATA BUS after it detects BUS FREE phase
nanoseconds)
microseconds)
nanoseconds)
SCSI bus signals when measured between any two SCSI devices.
nanoseconds)
BUS signals following the transition
- The minimum time that an SCSI device must wait
(BSY
and SEL both false for a bus settle delay) until its
- The maximum time before an SCSI device must
of
entering the ARBITRATION phase.
- The time to wait for the bus to settle after
in
- The maximum time before an initiator
of
the
110
signal from false to true.
propagation time
DESKEW DELAY (45 nanoseconds) - The minimum time required for deskew
signals.
HOLD
between the assertion
initiator
NEGATION PERIOD (90
time the
TIME
or
(45 nanoseconds) - During synchronous data transfers, the minimum time added
of
REQ
or
ACK
target, respectively.
and the changing
nanoseconds)
- During synchronous data transfers, the minimum
of
the data lines to provide hold time in the
ProDrive will negate REQ, and the minimum time an initiator will negate ACK.
(BSY
of
certain
and SEL
RESET HOLD TIME (25
There is no maximum time.
microseconds)
- The minimum time for which RST is asserted.
SCSI Interface 4 - 5
Page 38
Section 4
SCSI Interface
SELECTION
initiator) may take from its most recent detection
BSY response. This timeout is required to ensure that a target (or initiator) does not assert BSY
after a SELECTION (or
ABORT
TIME
RES
(200
microseconds)
of
- The maximum time a target (or
being selected (or reselected) until asserting a
ELECTION) phase has been aborted. This
is
not the selection timeout
period.
SELECTION
initiator (or target) should wait for a
TIMEOUT
DELAY
(250 milliseconds) - The minimum time that an
BSY response during the SELECTION (or RESELECTION)
This section explains the functional operation
and 80S disk drives. Details on DisCache, track fonnat, and defect management can
this manual in Appendices
5.2
The SCSI architecture includes eight distinct phases:
The
SCSI bus can never
following descriptions, signals that are not mentioned are not asserted.
5.2.1
The
BUS
available for subsequent users.
both false for at least a bus bus clear delay after
more than a bus settle delay to detect the
bus clear delay minus the excess time to detect the
must not exceed a bus settle delay plus a bus clear delay.
FREE phase is used to indicate that no SCSI device
A,
B, and C, respectively.
be
in more than one phase at any given time. Unless otherwise noted in the
SCSI devices must detect the BUS FREE phase after SEL and
settle delay. All SCSI bus signals must
BSY
and SEL become continuously false for a bus settle delay.
of
the SCSI commands implemented on the ProDrive 40S
These phases are collectively termed the
information transfer phases.
is
actively using the SCSI bus and that it is
be
released by SCSI devices within a
BUS FREE phase, it must release all SCSI bus signals within a
BUS FREE phase. The total time to clear the SCSI bus
be
found at the end
BSY
If
a device requires
of
are
5.2.2
The ARBITRA
of
role
NOTE: Implementation
The procedure the
an initiator
1)
2)
ARBITRATION PHASE
nON
phase allows one SCSI device to gain control
or
target.
of
the ARBITRATION phase is a system option. Systems that do not
implement this option can have only one initiator. The ARBITRATION phase is required for
systems that use the
ProDrive uses to obtain control
The
ProDrive will first wait for the BUS FREE phase to occur. This phase is detected whenever
BSY and SEL are simultaneously and continuously false for a minimum
both
.~.
It
will then wait at least a bus free delay after detecting the BUS FREE phase (i.e
SEL are both false for a bus settle delay) before driving any signal.
RES ELECTION phase.
of
the SCSI bus so it can assume the
of
the SCSI bus is as follows:
.
SCSI
Programming
of
a bus settle
.•
after BSY and
Guidelines
5·1
Page 42
Section 5
SCSI
Programming Guidelines
3) Following the bus free delay
both
BSY and its own
SCSI
ID)
if
more than a bus set delay has passed since the BUS FREE phase was last observed.
4) After waiting at least an arbitration delay (measured from its assertion
will examine the DATA BUS.
(DB(7) is the highest), the ProDrive has lost the arbitration and will release its signals and return
to
Step
1.
If
no higher priority
the arbitration and will assert
5)
If
the
~roDrive
asserting
NOTE: The
unique
Parity is not valid during the ARBITRA
DB(P) is undriven by the
5.2.3
The SELECTION phase allows an initiator to select a target (ProDrive) for the purpose
target function such as a READ
NOTE: The
5.2.3.1
SELECTION PHASE
110
Non Arbitrating Systems
wins arbitration, it will wait at least a bus clear delay plus a bus settle delay after
SEL
before changing any signals.
SCSI
ID
bit is a single bit on the DATA BUS that correswnds to the SCSI device's
SCSI address. The other seven DATA BUS bits will be released by the ProDrive.
signal
is
undriven to distinguish this phase from the RES ELECTION phase.
in
Step 2, the ProDrive will arbitrate for the SCSI bus by asserting
SCSI
ID; however, it will not start to arbitrate (Le., assert BSY and its
of
BSY) the ProDrive
If
a higher priority
SCSI
ID
SEL.
bit is true on the DATA BUS, the ProDrive has won
SCSI
ID
bit is true on the DATA BUS
nON
phase. During the ARBITRATION phase,
ProDrive.
or
WRITE command.
of
initiating a
If
the ARBITRATION phase is not implemented, the initiator must first detect the BUS FREE phase, then
wait a minimum
employing the single initiator option, the initiator must assert the desired target's
initiator
deskew delays, the initiator must assert
option.
SCSI ID (and the parity bit if parity checking
of
abus
clear delay. Then. except in certain single initiator environments with initiators
SCSI
10
and its own
is
implemented) on the OAT A BUS. After two
SEL. See Section 5.2.3.4 for a description
of
the single initiator
5.2.3.2 Arbitrating· Systems
If
the ARBITRATION phase is implemented, the device that won the arbitration has both
asserted and has delayed at least a bus clear delay plus a bus settle delay before ending the ARBITRA
phase. This device becomes an initiator by not asserting
environments with initiators employing the single initiator option, the initiator must assert the desired
target's
B
settle delay before looking for a response from the target.
5.2.3.3
In all systems, the ProDrive will determine that it is selected when SEL and its SCSI
BSY and 110 are false for at least a bus settle delay. The ProDrive will examine the DATA BUS in order
to
(5.2.3.4). The
being selected; this is required for correct operation
ProDrive will not respond to a selection
are on the DATA
SCSI ID and its own initiator SCSI IO (and the parity bit
US. The initiator must then wait at least two deskew delays and release BSY, then wait at least a bus
All Systems
determine the SCSI
ProDrive will then assert
10
of
the selecting initiator unless the initiator employed the single initiator option
BSY
within a selection abort time
if
bad parity is detected. Also, if more than two SCSI
BUS, the ProDrive will not respond to selection.
110.
Except in certain single initiator
if
parity is implemented) on the OAT A
of
the timeout procedure.
of
its most recent detection
If
parity is implemented, the
BSY
and SEL
10
bit are true and
nON
10
of
bits
At least two deskew delays after the initiator detects
DATA
5-2
BUS. The ProDrive will wait for the initiator to release SEL before setting an information phase.
SCSI Programming Guidelines
BSY
is true, it must release SEL and may change the
Page 43
Section 5
SCSI Programming Guidelines
5.2.3.4
Initiators that do not implement the RESELECTION phase and do not operate in the multiple initiator
environment may set only the target's
SELECTION phase. This makes it impossible for the target to detennine the initiator's SCSI ID.
5.2.3.5
Two selection timeout procedures are specified for clearing the SCSI bus
of
a selection timeout delay and there has been no BSY response from the ProDrive:
1)
2)
5.2.4
The RESELECTION phase allows a target to reconnect to an initiator to continue some operation that was
previously started by the initiator but was suspended by the target (i.e., the target disconnected by allowing
a
BUS FREE phase to occur before the operation was complete).
Single Initiator Option
SCSI ID bit and not their own SCSI ID bit during the
Selection Timeout procedure
if
the initiator waits a minimum
Optionally, the initiator may assert the RST sigDal. (See Section 5.3.2.)
Optionally, the initiator may continue asserting SEL and release the DATA BUS.
initiator has not detected
delays, the initiator shall release
The ProDrive will only respond to a selection
time
of
its assertion
targets connected to the same initiator, wrong target connected to an initiator, or a target
connected to no initiator).
BSY
to
be
true after at least a selection abort time plus two deskew
SEL, allowing the SCSI bus to go to the BUS FREE phase.
if
the selection was still valid within a selection
of
BSY. This ensures that an improper selection does not result (two
If
the
RESELECTION PHASE
5.2.4.1
RES ELECTION can only be used in systems that implement the ARBITRATION phase.
Following the ARBITRATION phase, the winning
delayed at least a bus clear delay plus a bus settle delay. The ProDrive becomes a target by asserting the
I/O signal. It will also set the DATA BUS to a value that is the OR
SCSI ID bit. The ProDrive will wait at least two deskew delays and release BSY, then will wait at least
a bus settle delay before looking for a response from the initiator.
The initiator will determine that it is reselected when
false for at least a bus settle delay. The reselected initiator may examine the DATA
SCSI ID
detection
implemented, the initiator must not respond to a
not respond to a
After the ProDrive detects BSY, it will also assert
SEL. It may then change the 110 signal and the DATA BUS. After the reselected initiator detects SEL
false, it must release BSY. The ProDrive will continue asserting BSY until it is ready to relinquish the
SCSI bus.
Reselection
SCSI device has both
SEL, 110, and its
of
the reselecting target. It must then assert BSY within a selection abort time
of
being reselected; this is required for correct operation
RESELECTION
RESELECTION
if
more than two SCSI ID bits are on the DATA BUS.
BSY
and wait at least two deskew delays, then release
of
ifbad
BSY
and SEL asserted and has
of
its SCSI ID bit and the initiator's
SCSIID
the timeout procedure.
parity is detected. Also, it should
bit are true and
BSY
is
BUS to determine the
of
its most recent
If
parity is
5.2.4.2 Reselection Timeout procedure
A RESELEC110N timeout procedure is specified for clearing the SCSI bus during a RESELECfION
phase
if
the target waits for a minimum
from the initiator:
of
a selection timeout period and there has been no BSY response
The ProDrive will continue asserting
detect
BSY
to be true after at least a selection abort time plus two deskew delays. it will release SEL and
I/O,
allowing the SCSI bus to go
SEL and I/O and will release all DATA BUS signals.
to
the BUS FREE phase. When responding to RESELECTION, the
SCSI
Programming
Guidelines
If
it does not
5·3
Page 44
Section 5
SCSI Programming Guidelines
ProDrive will ensure that the RESELECTION was still valid within a selection abort time
of
assertion
target or the wrong initiator connected to a target).
5.2.5
The COMMAND. DATA, STATUS. and MESSAGE phases are grouped together as the information
transfer phases because they are all used to transfer data
The
C/D.
(See Table 5-1.) The target drives these three signals and, therefore, controls all changes from one phase to
another. The initiator
cause the
BSY. Otherwise.
INFORMATION TRANSFER PHASES
1/0, and
BUS FREE phase
MSG
an
improper reselection could result (two initiators connected to the same
or
control information via the DATA BUS.
signals are used to distinguish between the different information transfer phases.
can
request a MESSAGE OUT phase by asserting ATN, while the ProDrive can
by
releasing MSG, C/D,
1/0,
and BSY.
of
its
TABLE 5-1 Information Transfer Phases
Signal
MSG
CID
0
0 0
0 1 0
0
1 0
1 0 1
1 1 0
1
110 Phase Name
0 0
1
1 STATUS Initiator from
1
0
DATA OUT Initiator to
DATA IN Initiator from
COMMAND
such a manner that these control signals are valid for a
first handshake and remain valid until the negation
5.2.5.1
The ProDrive controls the direction
true, information will
transferred from the initiator to the
If
110
least one
is true at the drive. The initiator should read DB(7
data by asserting
O,P)
and will release REQ. After REQ is false, the initiator should negate ACK. Once ACK is false, the
must remain true and SEL must remain false. Additionally, during the infonnation transfer
ProDrive will continuously envelope the REQ/ACK handshake(s) with C/o, 1/0, and MSG in
ASYNCHRONOUS
be transferred from the ProDrive to the initiator. When 1/0 is false. information is
is true (transfer to the initiator). the ProDrive will drive DB(7-0.P) to their desired values, delay at
deskew delay plus a cable skew delay, then assert REQ. DB(7-0,P) will remain valid until
ACK. When ACK becomes true at the ProDrive, the drive may change
ProDrive may continue the transfer by driving
If
1/0
is
false (transfer to 'the target) the ProDrive will request information by asserting REQ. The
OB(7
·O,P)
initiator should drive
delay,
then assert ACK. When ACK becomes true at the ProDrive, the drive will read DB(7-0,P), then
release
musl negate ACK. The target may continue the transfer by asserting REQ, as described above.
REQ. When REQ becomes false at the initiator, the initiator may change
to their desired values, delay at least one deskew delay plus a cable skew
more REQ/ACK handshakes to control the information transfer.
of
one byte
of
of
information. During the information transfer
bus settle delay before the assertion
ACK at the end
of
the last handshake.
of
TRANSfER
of
information transfer by means
ProDrive.
-O,P)
after REQ is true, then signal its acceptance
D8(7
-O,P)
and asserting REQ, as described above.
of
the
110
signal. When
or
or
release DB(7-0.P) and
REQ
release DB(7-
1/0
of
the
is
ACK
of
the
5-4
SCSI
Programming
Guidelines
Page 45
Section 5
5.2.5.2 SYNCHRONOUS TRANSFER
SCSI Programming Guidelines
Synchronous data transfer may
and target via the message system. The messages determine the use
devices, establishing a REQ/ACK offset and transfer period. See the Synchronous Data Transfer Request
message (Section 5.6.2).
The REQI ACK offset specifies the maximum number
corresponding ACK pulses are received from the initiator. This establishes a pacing mechanism.
number
of
REQ
pulses sent exceeds the number
ProDrive will not assert REQ again until it receives the next ACK pulse. The number
pulses must be equal for the data phase to
ProDrive will assert
The
a transfer period from the last transition
of
REQ
transition
The initiator must send one pulse on the
be asserted for at least an assertion period. Before asserting the
a transfer period from the last transition
A
CK
to false.
If
I/O is true, (transfer to the initiator), the ProDrive will first drive DB(7
wait at least one deskew delay plus a cable skew delay, then assert REQ. DB(7-O,P) will be held valid for at
least one deskew delay plus one cable skew delay, plus one hold time after the assertion
to false.
ProDrive will assert REQ for at least an assertion period. It may then release
DB(7-0,P). The initiator must read the value on DB(7-0,P) within one hold time
to true. It must then respond with an ACK pulse.
be
used in the data phase only
of
ACK pulses received by the
be
successfully completed.
REQ
for at least an assertion period. Before asserting
of
REQ to true, and a minimum
ACK signal for each REQ signal received. The ACK signal must
of
ACK to true and a negation period from the last transition
of
if
it was previously agreed to by the initiator
REQ
pulses that can be sent by the target before
ACK signal, the initiator must wait at least
of
synchronous mode by the two SCSI
If
the
REQ/
ACK offset, the
of
ACK and
REQ,
it will wait at least
of
a negation period from the last
-O,P)
to the appropriate values,
of
REQ. The
REQ
and change or release
of
the transition
of
REQ
of
REQ
If
110
is false, (transfer to the ProDrive), the initiator must transfer one byte for each REQ pulse received.
After receiving a
one deskew delay plus one cable skew delay, then assert
deskew delay plus one cable skew delay plus one hold time after the assertion
asserted for a minimum
change
transition
or
5.2.6
The COMMAND phase allows the target to request command information from the initiator. The
REQ pulse, the initiator must first drive DB(7
of
an assertion period. At that point, the initiator may negate ACK and may
release DB(7
of
ACK to true.
-O,P).
The
ProDrive
will read the value
COMMAND PHASE
ProDrive will assert the C/D signal and negate I/O and MSG during the
phase.
5.2.7
The data phase encompasses both the DATA IN and the DATA OUT phases.
5.2.7.1
The DATA IN phase allows the target to request that data
DATA PHASE
PATA IN PHASE
ProDrive will assert the I/O signal and negate C/D and MSG during the
phase.
5.2.7.2
DATA OUT PHASE
-O,P)
to the appropriate values, delay at least
ACK. DB(7-0,P) must
of
DB(7
be
sent to the initiator from the target. The
be
valid for at least one
of
ACK. ACK must be
-O,P)
within one hold time
REQ/ACK
REQ/ACK
handshake(s)
handshake(s)
of
of
of
the
this
this
The DATA
OUT
phase allows the target to request that data
ProDrive will negate the C/D, I/O, and MSG signals during the
be
sent from the initiator to the target. The
REQ/ACK
SCSI Programming
handshake(s)
Guidelines
of
this phase.
5-5
Page 46
Section 5
SCSI Programming Guidelines
5.2.8
The STATUS phase allows the target to request that status information be sent from the target to the
initiator. The
handshake
5.2.9
The message phase refers to both the MESSAGE IN and MESSAGE
transferred in either
message. Multiple-byte messages must be wholly contained within a single message phase.
5.2.9.1
The MESSAGE IN phase allows the target to request that messages be sent to the initiator from the target.
ProDrive will assert C/D,
The
STATUS PHASE
ProDrive will assert C/D and
of
this phase.
MESSAGE PHASE
of
these phases must be a single-byte message
MESSAGE
IN
I/O,
Phase
I/O
and negate the MSG signal during the REQ/ACK
and MSG during the
or
REQ/ACK
OUT
phases. The first byte
the first byte
handshake(s)
of
a multiple-byte
of
this phase.
5.2.9.2 MESSAGE OUT Phase
The MESSAGE OUT phase allows the target to request that a message be sent from the initiator to the
target. The
condition created by the initiator.
ProDrive will assert C/D and MSG and negate I/O during the
The
phase. It will handshake byte(s)
ProDrive will invoke this phase at its convenience
(See Section 5.3.1 for a description
in
this phase until ATN goes false.
in
response to the ATTENTION
of
the ATTENTION condition.)
REQ/ACK
handshake(s)
of
this
If
the ProDrive receives all the message byte(s) successfully (i.e., no parity errors), it will change to any
information transfer phase other than the
ProDrive may also indicate that it has successfully received the message byte(s) by changing
FREE phase (e.g., ABORT or BUS DEVICE RESET messages).
5.2.10
When
the SCSI bus is between two information transfer phases, the following restrictions apply to the
SCSI bus signals:
1)
2)
3) The A TN and RST signals may change as defined under the descriptions for the ATTENTION
SIGNAL RESTRICTIONS BETWEEN PHASES
The BSY,
The
direction from out to in (target to initiator), the ProDrive will delay driving the DATA BUS by
at least a
must release the
signal to true. When switching the DATA BUS direction from in to out (initiator to target), the
ProDrive will release the DATA BUS no later than a deskew delay after negating I/O.
condition (5.3.1) and
SEL,
REQ, and ACK signals must not change.
C/D,
I/O,
MSG, and DATA BUS signals may change. When switching the DATA BUS
data release delay plus a bus settle delay after asserting the
DATA BUS no later than a data release delay after the transition
RESET condition (5.3.2).
MESSAGE OUT phase and transfer at least one byte. The
°to
the BUS
I/o
signal, and the initiator
of
the I/O
5-6
SCSI
Programming
Guidelines
Page 47
Section 5
SCSI
Programming Guidelines
5.3
The SCSI bus has two asychronous conditions: the A
These conditions cause a
5.3.1
The A
TIENTION
target may get this message at its convenience by perfonning a
• The initiator creates the A
• The ProDrive may respond with the MESSAGE
The initiator must keep
ATN
the
Normally, the initiator negates
handshake
5.3.2
The RESET condition is used to immediately clear all SCSI devices from the bus. This condition takes
precedence over all other phases and conditions.
REQ for a minimum
other than
SCSI BUS CONDITIONS
SCSI device to perfonn certain actions and can alter the phase sequence.
ATTENTION CONDITION
condition allows an initiator to infonn a target that the initiator has a message ready. The
TIENTION
nON
ARBITRA
signal at any time except while the
of
the MESSAGE OUT phase.
or BUS FREE phases.
A TN asserted
ATN
if
more than one byte is to be transferred. The initiator may negate
while REQ
RESET CONDITION
of
a reset hold time. During the RESET condition, the state
RST
is
not defined.
TIENTION
condition by asserting A TN
OUT
ACK
signal
is
asserted during a MESSAGE
is
true and
SCSI devices create the RESET condition by asserting
condition and the RESET condition.
MESSAGE
phase.
ACK
is false during the last REQI
OUT
phase.
at
any time except during the
of
all SCSI bus signals
OUT
phase.
ACK
NOTE:
When
delay
5.4
Phases are used on the SCSI bus in a prescribed sequence. In all systems, the RESET condition can abort
any phase and is always followed by the
BUS FREE phase.
The ProD rive will never assert RST, but it will respond to a RST asserted by another SCSI
device.
RST is asserted, the ProDrive will release all SCSI bus signals (except RST) within a bus clear
of
the transition
of
RST to true. The BUS FREE phase always follows the RESET condition.
SCSI BUS PHASE SEQUENCES
BUS FREE phase. Also, any other phase can
be
followed by the
5.4.1 NON-ARBITRATING SYSTEMS
In systems which
SELECTION phase, then one
or
MESSAGE). See Figure 5-1.
5.4.2
In systems which use the ARBITRA
SELECTION
then
DATA, STATUS,
do
not use the ARBITRATION phase. the BUS FREE phase is followed by the
or
more
of
the information transfer phases (COMMAND, DATA, STATUS,
ARBITRATING SYSTEMS
nON
phase, the BUS FREE phase is followed by ARBITRATION,
or
RESELECTION, then one
or
MESSAGE). See Figure 5-2.
or
more
of
the information transfer phases (COMMAND,
SCSI Programming Guidelines
5·7
Page 48
Section 5 SCSI Programming Guidelines
5.4.3
There are no restrictions
followed by the same phase type; for example, a data phase may
ALL
SYSTEMS
on
the sequences
of
infonnation transfer phases. A phase type may even be
FIGURE 5-1 Phase Sequences without Arbitration
be
followed by another data phase.
ESET
COMMAND
DATA
STATUS
WESSAGE
CONDITION
Figure 5-2 Phase Sequences With Arbitration
or
or
or
PHASE
5·8
SCSI
Programming
Guidelines
Page 49
Section 5
SCSI Programming Guidelines
5.5
Consider the system shown
execute a command.
Function
Origin
SCSI POINTERS
in
Figure 5-3 in which an initiator and target communicate on the SCSI bus to
Initiator
Path Path
Control
SCSI Bus
Target
Control
Function
Execution
Initiator Target
FIGURE
The SCSI architecture provides for two sets
the initiator path control. The first set
used
to
represent the state
transferred between the initiator's memory and the target. There
initiator. The current pointers are used by the target currently connected to the initiator.
The second set
is
currently active (whether
the start
pointer always points to the start
command, the saved data pointer points to the start
sends a SA
stores the value
pointers to
initiator moves the saved value
disconnects from the SCSI bus, only the saved pointer values are retained. The current pointer values are
restored from the saved values upon the next reconnection.
of
pointers are the saved pointers. There is one set
of
the command descriptor block for the current command. (See Section 5.7.1.) The saved status
VE DATA POINTER message (5.6.2) to the initiator. In response to this message, the initiator
of
the current data pointer into the saved data pointer. The target may restore the current
their saved values by sending a RESTORE POINTERS message (5.6.2) to the initiator. The
of
the interface and point to the next command, data,
or
not it is currently connected). The saved command pointer always points to
of
5-3 Simplified
of
three pointers within each initiator. The pointers reside in
of
pointers are the current (or active) pointers. These pointers are
of
the status area for the current command. At the beginning
of
the data area.
each pointer into the corresponding current pointer. Whenever a device
SCSI
is
System
or
status byte to be
only one set
of
saved pointers for each command that
It
remains at this value until the target
of
current pointers in each
of
each
NOTE:
5.6
The message system allows communication between an initiator and target for the purpose
path management.
5.6.1
The
COMMAND COMPLETE message. This is the only message an initiator communicating with the
ProDrive is required to implement.
(non-extended) messages defined in the ANSI SCSI Specification. The
message other than
messages. The initiator does this in the
condition
MESSAGE REJECT message
If
the ProDrive detects the A
OUT
On a READ,
POINTER message is not issued. Similarly, on a WRITE,
have been transferred, the SA VE DATA POINTER message is not issued.
if
the ProDrive disconnects before any data is transferred, the SA VE DATA
if
the drive disconnects after all data
MESSAGE SYSTEM SPECIFICATION
of
physical data
MESSAGE PROTOCOL
ProDrive requires ariy SCSI device it communicates with to be able to receive and understand the
To
maximize flexibility, the ProD rive also supports all single byte
ProDrive will not send any
COMMAND COMPLETE until
SELECfION
of
SEL
true and
phase and take a message byte from the initiator. The ProDrive expects an IDENTIFY message at
BSY
false. This informs the ProDrive that the initiator can at least generate a
if
it does not understand a message from the ProDrive.
TN
signal asserted during SELECTION phase, it will enter MESSAGE
it
is informed by the initiator that it can support other
phase by asserting A
SCSI
TN
prior to the SCSI bus
Programming
Guidelines
5·
9
Page 50
Section 5
SCSI Programming Guidelines
this time. The NO OPERATION. BUS DEVICE RESET and
other
properly here. All
The IDENTIFY message the initiator sends to the
supports disconnect/reconnect. it should set bit 6 in the IDENTIFY message.
bit 6 is set. the
be set unless the initiator can support receiving the
messages. Upon receipt
and begin requesting command bytes from the initiator.
The
ProDrive supports the messages shown in Table 5-2:
ProDrive will not attempt to disconnect at any point during a command. Bit 6 should not
TABLE
Code
<X\i
OIH
02H
03H
04
H
~
~
07H
08
H
00..
OAH
OBH
OCH
8~-FFH
messages will be rejected with a MESSAGE REJECT message.
ProDrive should specify LUN=O.
SA
VE
of
a legitimate IDENTIFY message, the ProDrive will enter
5-2 Message Codes Supported
Description
COMMAND COMPLETE
EXTENDED MESSAGE - SYNCHRONOUS
DATA TRANSFER REQUEST In
SAVE DATA POINTER
RESTORE POINTERS
DISCONNECT
INITIATOR DETECTED ERROR Out
ABORT
MESSAGE REJECT
NO
OPERA
nON
MESSAGE PARITY ERROR Out
LINKED COMMAND COMPLETE
LINKED COMMAND COMPLETE (WITH FLAG)
BUS DEVICE RESET
IDENTIFY
ABORT
DATA
messages will also function
POINTER. and DISCONNECT
By
Direction Supported
In
In
In
In
In
In
In
In
If
the initiator
(See Section 5.6.2.) Unless
COMMAND
phase
ProDrive
Out
Out
Out
Out
Out
Out
KEY:
In
=
Out =
5.6.2
The
single byte messages supported by the ProDrive (Table 5-2) are listed below along with their code
values
and
COMMAND
that the execution
has
the
the
NOTE: The completion status
EXTENDED MESSAGE
message and responses establish the transfer period and the
5-10
MESSAGES
definitions.
COMPLETE
of
been
sent
to
the initiator. After successfully sending this message, the ProDrive
BUS
FREE phase by releasing BSY. This message must be supported by any initiator selecting
ProDrive.
SCSI
Programming
OOH -This
a command (or series
01H • This
message is sent from the ProDrive to an initiator to indicate
of
the command is indicated in the status byte.
message is sent to establish synchronous
Guidelines
of
linked commands) has terminated and that valid status
will
data
transfer.
REQI
ACK offset.
go
The
into
Page 51
Section 5
SCSI Programming Guidelines
SYNCHRONOUS
Byte
0
1
2
3 m
4 x REQ/ACK
The transfer period is the clock rate for the transfer. The minimum transfer period for the ProDrive
is 250 ns
Table 5-3 shows the transfer rates supported and the transfer period values for the
The REQ/ ACK offset is the maximum number
corresponding
asynchronous mode. For the
If
DATA TRANSFER REQUEST message indicating a REQ/ACK offset and minimum transfer
period. The REQ/ ACK offset is chosen to prevent initiator buffer overflows, while the minimum
transfer period is chosen to meet the initiator's data handling requirements. The
in one
or
62 (3EH). This value is equivalent to a maximum transfer rate
the initiator recognizes that negotiation is required, it asserts ATN, sends a SYNCHRONOUS
of
the following ways:
ProDrive
DATA
Value
01h
03h
01h SYNCHRONOUS DATA TRANSFER REQUEST code
TRANSFER
Description
Extended Message
Extended
Transfer
Mes~e
Period (m times 4 nanoseconds)
Offset
REQUEST:
Len~th
of
4.0 MBytes/second.
ProDrive.
of
REQ
pulses that may be sent before a
ACK
pulse is received at the ProDrive. A REQ/ACK offset value
ProDrive, the maximum value
of
REQ/ACK offset is 8.
of
ProDrive responds
Response
Implied Agreement
zero indicates
1)
REQ/ACK offset less than or
equal to the requested value;
minimum transfer period equal
to
or greater than requested
period.
2)
REQ/ACK offset equal
3)
MESSAGE REJECT.
TABLE
TRANSFER PERIOD VALUE
5-3 Transfer Rates Supported/Transfer Period Values
DEC HEX
0-62
63 - 93
94 - 125
126 - 156
157 - 187
188
- 218
219 -
250
251
- 255
3FH - 5DH
5EH
7EH - 9CH
9~-BBH
BCH
DBH
FBH - FFH
00
to
zero.
- 3EH
-7DH
-DAH
-FAH
REQ/ ACK offset equal to ProDrive
value; minimum transfer period equal
to the
ProDrive value.
Asynchronous transfer.
Asynchronous transfer.
TRANSFER RATE IN MHZ
4.00
2.67
2.00
1.60
1.33
1.14
1.00
0.89
SCSI Programming Guidelines
5·
t 1
Page 52
Section 5
If
the ProDrive recognizes that negotiation is required, it sends a SYNCHRONOUS DATA TRANSFER
REQUEST
overflows, while the minimum transfer period
requirements.
SCSI Programming Guidelines
message to the initiator. The REQ/ACK offset is selected to prevent buffer and offset counter
is
chosen to meet the ProDrive's data handling
The implied agreement will remain in effect until a
"hard" RESET condition occurs,
Renegotiation at every selection is not
of
The default mode
RESET message, or after a "hard" RESET condition. The SYNCHRONOUS DATA TRANSFER
REQUEST
IDs for both the initiator and ProDrive. Violation
to disagreements among devices about the data transfer mode.
SA
VE
message exchange can only take place following a SELECTION phase that includes the SCSI
DATA POINTER
save a copy
pointers.) This message
in the DATA phase.
data transfer
of
the present active data pointer for the drive. (See Section 5.4 for a definition
or
until one
rec~mmended,
is
asynchronous. This mode
028
- This message is sent from the
is
usually sent just prior to the DISCONNECT message when disconnecting
BUS DEVICE RESET message is received, until a
of
the two devices elects to modify the agreement.
since a significant performance impact is likely.
is
entered at power on, after a BUS DEVICE
of
this rule may make data transfer impossible owing
ProDrive
to direct the initiator to
of
DISCONNECT 04H - This message is sent from the ProDrive to inform an initiator that the present
physical data path is going to
that a later reconnect will
BUS FREE phase (other than as a result
RESET condition) without first receiving a DISCONNECT
should consider it a catastrophic error condition. The initiator should not save the data pointer as a
result
of
this message.
INITIA TOR DETECTED ERROR
ProDrive that an error (e.g., parity error on the SCSI bus) has occurred that does not preclude a retry
of
the operation. The ProDrive will terminate the command with a CHECK CONDITION status.
The sense key will
be set to ABORTED COMMAND with a sense code
be broken (the ProDrive plans to disconnect by releasing BSY), but
be required to complete the current operation.
of
an ABORT or BUS DEVICE RESET message
or
COMMAND COMPLETE message, it
OSU
- This message is sent from an initiator to inform the
If
the initiator detects the
of
Initiator Detected Error.
or
a
ABORT
MESSAGE REJECT
NO OPERATION
068
- This message is sent from the initiator to the ProDrive to clear the present operation.
All pending data and status for the issuing initiator will
BUS FREE phase. Pending data and status for other initiators will not be cleared. No status
ending message will be sent for the operation.
078
- This message will be sent by the
message received from that initiator was inappropriate
will
be interpreted in the same way if it
To
indicate its intentions
of
its release
ProDrive sends this message, it will change to MESSAGE IN phase and send the message prior to
requesting additional message bytes from the initiator. This provides an interlock so that the initiator
can detennine which message is rejected. The initiator must support this message
during the initial SELECTION phase
ACK for the
088
request for a message, when the initiator currently has no other valid message to send. No action
will
be taken by the ProDrive upon receipt
of
sending this message, the initiator must assert the A TN signal prior to
REQ/ACK
- This message is sent from an initiator in response to the ProDrive 's
is
received from an initiator.
handshake
of
the command.
of
this message.
be cleared, and the ProDrive will go to the
ProDrive
or
has not been implemented. This message
of
the message that is to be rejected. When the
to an initiator
if
if
it asserts A TN
or
the last
5-12
SCSI
Programming
Guidelines
Page 53
Section 5
SCSI Programming Guidelines
MESSAGE PARITY ERROR
indicate that one or more bytes in the last message it received had a parity error.
To indicate its intent to send this message, the initiator must assert
the REQ/ACK handshake
ProDrive can determine which message has the parity error.
LINKED COMMAND COMPLETE
to indicate that the execution
initiator must then set the pointers to the initial state for the next linked command. Refer also to
Sections 5.7.1.8 and 5.7.1.9.
LINKED COMMAND COMPLETE (WITH FLAG)
COMMAND
also to Sections 5.7.1.8 and 5.7.1.9. .
BUS DEVICE RESET
all current commands. This message forces the drive to an initial state with no operations pending for
any initiator.
This message does not affect MODE
COMPLETE message is used when the flag bit
OCH
Upon recognizing this message, the ProDrive will go to the BUS FREE phase.
098
- This message is sent from the initiator to the ProDrive
ATN
prior to releasing ACK for
of
the message that has the parity error. This provides an interlock so the
OAH
- This message
of
a linked command has been completed and status has been sent. The
is
sent from the ProDrive to an initiator
OBH
- This version
of
the command is set to one. Refer
of
the LINKED
- This message is sent from an initiator to direct the ProDrive to clear
SELECT command parameters.
IDENTIFY 80H - FFH - These messages may be either sent from or received by the ProDrive
establish the physical path connection between an initiator and the drive.
Bit 7 - This bit is always set to one to distinguish an IDENTIFY message from the other messages.
to
to
Bit 6 - This bit is set to one only by the initiator. When set to one, it indicates that the initiator has
the ability to accommodate disconnection and reconnection.
POINTER, RESTORE POINTERS and DISCONNECT messages are supported by the initiator.
Bits 5-3 - Reserved; must
Bits
2-0 - These bits specify a logical unit number (LUN)
LUN is zero.
valid
When an IDENTIFY message
implied RESTORE POINTERS message must
this message.
5.6.3
5.6.3.1
Parity is an SCSI option. This section is relevant only
If
the initiator detects a parity violation as the ProDrive transfers a message byte to it, it should ignore
that message and immediately assert
should continue receiving and ignoring bytes until the
that point, the initiator should send a MESSAGE
command and release the bus. The sense key will
code set to
MESSAGE
parity
Parity error on the SCSI bus (47H).
ErrQrs
be
set to zero.
is
sent from the ProDrive
be performed by the initiator prior to completion
ERROR
RECOVERY
During Message phase
if
the parity option is enabled.
ATN
(before releasing ACK on the offending byte). The initiator
ProDrive requests a MESSAGE OUT byte. At
PARITY ERROR message; the ProDrive will abort the
be
set to ABORTED COMMAND
It also indicates that the SAVE DATA
in
a target. For the ProDrive, the only
to
an initiator during reconnection, an
STRATEGY
(OBH)
and the sense
of
If
the ProDrive detects a parity error during a MESSAGE OUT phase, it will continue to request
MESSAGE
initiator transfers the entire message containing the parity error. The current command will be terminated,
OUT
bytes until the initiator deasserts ATN. This procedure should guarantee that the
SCSI
Programming
Guidelines
5-13
Page 54
Section 5
the status set to CHECK CONDITION, the sense key set to ABORTED COMMAND (OBH)' and the sense
code set to Parity error on the
SCSI Programming Guidelines
SCSI bus (47H).
5.6.3.2
The ProDrive will send MESSAGE REJECT to the initiator any time it receives a message it does not
support (e.g., extended messages)
sending
When the ProDrive receives MESSAGE REJECT from the initiator, it takes action based on which
command was rejected.
COMMAND
error.
DISCONNECT - The ProDrive will stop trying to disconnect at this time.
disconnect again at a later time.
IDENTIFY - The ProDrive only sends this when it
rejected during reconnection, the present command will
CONDITION status, set the sense key to ABORTED COMMAND (OBH)' and set the sense code to
Message reject error (43H). The
LINKED COMMAND
The sense key will
error
LINKED COMMAND COMPLETE WITH FLAG - Same procedure as for
COMMAND COMPLETE.
Rejected Messages
or
COMMAND COMPLETE).
COMPLETE
COMPLETE
be
set to ABORTED COMMAND
(43H)'
a message that does not make sense at that time (e.g., the initiator
- The ProDrive goes to BUS FREE. This is not considered an
It
may attempt to
is
attempting to reconnect.
be terminated. The drive will post a CHECK
If
this message is
ProDrive will then go immediately to BUS FREE.
- The ProDrive will go immediately to BUS FREE.
(OBH)
and the sense code set to Message reject
LIN~ED
MESSAGE
CHECK
sense code set to Message reject error
REJECT
CONDITION status. The sense key will
- The ProDrive will immediately terminate the current command with a
(43H)'
be
set to ABORTED COMMAND
(OBH)
and the
SAVE DATA POINTERS - Same procedure as for DISCONNECT message.
5.7
This section defines the SCSI commands supported by the ProDrive 4OS/80S intelligent Disk Drives.
Each command consists
ARBITRATION,
COMMAND phase and request the command bytes. The opcode
bytes the
if
phase
or
more logical blocks
one
SCSI devices while
other
Upon completion
initiator.
byte, the CHECK
may issue a
The following subsections on each command describe the sequence
COMMAND IMPLEMENTATION
of
a group
SELECTION, and any optional initial messages, the ProDrive will enter the
ProDrive will request. After receipt
a data structure is defined for the command. The data structure in a single command may transfer
it
of
a command (successful
Since most error and exception conditions cannot adequately be described with a single status
CONDITION status code indicates that additional information
REQUEST SENSE command to retrieve this additional information.
of
command bytes and an optional associated group
of
the command determines how many
of
the command bytes, the ProDrive will enter DATA
of
data. The ProDrive may disconnect from the SCSI bus to allow activity by
is preparing to transfer data.
or
unsuccessful), the ProDrive will return a status byte to the
of
bytes an initiator must transfer
of
data bytes. After
is
available. The initiator
to
ProDrive during the COMMAND phase to request a desired action from the drive. For those commands
is
for which it
or
from the initiator following the COMMAND phase.
to
relevant, these sections also further describe the format
of
data bytes that may be transferred
the
5-14
SCSI
Programming
Guidelines
Page 55
Section 5
SCSI
Programming Guidelines
5.7.1
A request is made to a device by transferring a Command Descriptor Block (CDB) to that device. The
COMMAND DESCRIPTOR BLOCK (COB)
ProDrive supports two basic command formats: six-byte commands and ten-byte commands. The
of
command format is recognizable from the opcode
00Ji
between
defines the CDB fields. The uses
5.11.
5.7.1.1
The opcodes (operation codes) for Groups 0 and 1 are listed in Table
and .IFH; ten-byte commands have opcodes from
of
the CDB fields in particular commands are fully described in Section
Opcode
TABLE
OPCODE
OOJI
01H
03H
04H
07H
08H
OAH
OBH
12H
15H
16H
17H
lAH
IBH
IDH
25H
28H
2AH
2BH
2EH
2FH
37H
3BH
3CH
ESH
EAH
5-4 Commands Supported
COMMAND
TEST UNIT READY 5.11.1
REZEROUNIT
REQUEST SENSE
FORMAT
REASSIGN BLOCKS
READ 5.11.6
WRITE
SEEK
INQUIRY
MODE SELECT
RESERVE
RELEASE
MODE SENSE 5.11.13
START/STOP UNIT
SEND DIAGNOSTIC 5.11.15
READ CAPACITY
READ EXTENDED
WRITE EXTENDED 5.11.18
SEEK EXTENDED
WRITE AND VERIFY
VERIFY
READ DEFECT DATA
WRITE BUFFER
READ BUFFER
READ
WRITE
LONG
LONG
the command. Six-byte commands have opcodes
2DJ1
to 3FH
54.
By
ProDrive
or
EOH
to FFH. This section
SECTION
5.11.2
5.11.3
UNIT
5.11.4
5.11.5
5.11.7
5.11.8
5.11.9
5.11.10
5.11.11
5.11.12
5.11.14
5.11.16
5.11.17
5.11.19
5.11.20
5.11.21
5.11.22
5.11.23
5.11.24
5.11.25
5.11.26
SCSI Programming Guidelines 5
·15
Page 56
Section 5
SCSI Programming Guidelines
5.7.1.2
The Logical Unit Number for the ProDrive is zero. The LUN
of
the Command Descriptor Block and bits 0-2
LUN field in both the COB and IDENTIFY message field must be zero.
specified in any command except INQUIRY and REQUEST SENSE, the command will be rejected with a
CHECK
Logical Unit Number (LUN)
is
found
in
two places: bits 5-7
of
the IDENTIFY message field. (See Section 5.6.2.) The
If
a LUN other than zero
CONDITION status and the sense key set to ILLEGAL REQUEST - Invalid LUN.
of
byte 1
is
5.7.1.3 Logical Block Address (LBA)
The 21-bit (or 32-bit) Logical Block Address signifie.s the first or starting block
1024,
or
Block can be 512,
Block Length. Each
5.7.1.4
The transfer length in blocks, or the allocation length in bytes, is the number
be transferred for a single command.
• For six-byte commands, acceptable values are
256 blocks.
• For 10-byte commands, acceptable values are
5.7.1.5
Transfer or Allocation Length
See allocation byte lengths under specific commands.
Vendor UniQue (VU)
2048 bytes
ProDrive is configured with a Logical Block Length
in
length. The MODE SELECT command
OO-FFH'
OOOO-FFFFH'
For block lengths, a value ofOOH transfers
A value
of
an operation. A Logical
is
used to configure the
of
512 bytes.
of
blocks or bytes or data to
of
~
transfers no blocks.
Vendor unique bits allow for slight command modifications or special conditions to be selected. Vendor
unique bits are to
5.7.1.6
These bits are reserved and must be set to zero by the initiator.
be filled with zeros.
Reserved
(R)
5.7.1.7 Flag (F)
If
the link bit (5.7.1.8) is zero, the flag bit must be zero. Suppose the link bit
zero, the target sends the LINKED COMMAND COMPLETE message when the command terminates;
the flag bit is one, it sends the LINKED COMMAND COMPLETE (WITH FLAG) message.
is
one.
If
the flag bit is
if
5.7.1.8 Link (L)
If
the link bit is one, when the command terminates, the ProDrive sends one
by the flag bit (above). In addition, the
Command
message.
Out phase.
If
the link bit is zero, the ProDrive sends the normal COMMAND COMPLETE
ProDrive does not go to Bus Free, but immediately goes to the
of
the two messages defined
5.7.1.9 Relative Address (BELAQR)
This bit is found only in 10-byte commands (opcodes 20H - 3FH) and is not supported by the ProDrive
40S/80S.
NOTE:
5·16
If
the reserved bits
of
the COB are non-zero, a CHECK CONDITION status
ILLEGAL
message.
SCSI Programming Guidelines
REQUEST and sense code set to Illegal use
of
the IDENTIFY message or the vendor unique, reserved or relative address bits
is
returned with the sense key set to
of
bit
or
byte in COB
or
IDENTIFY
Page 57
Section 5
SCSI Programming Guidelines
5.8 COMPLEnON
A status byte will
of
eacb command as specified
DEVICE RESET message,
5-7 defines the status codes as implemented
be
sent from the ProDrive to the initiator during the STATUS pbase at the tennination
or
STATUS
in
Tables 5-6 and 5-7, unless the command is cleared by an ABORT
by a "bard" RESET condition. Table 5-5 presents the status bytes; Table
TABLE
Bit 7
Byte
0
7
R V V
R V V
R
R V
R
RESERVED
BIts of
6
v
V
TABLE 5-6
S1atus
4
5
0 0
0 0
V 0 1
V
1
V
1
6
I
VENOOR UNIQUE
ProDri~e
Bvte
3 2
0
0
0
0 0
1 0 0
BYTE
on
the
ProDrive.
5-5 Status Byte
s
4
I
STATUS BYTE CODE
Status Byte Code
1
0
0 V
1 V
0 V
0
V
V
3
Status(es)
GOOD
CHECK
BUSY
INTFRMEDlA'IOOOOD
RESERVATION
1
1
Bit
Values
:-
CONDmON
CONFUCf
1
,.-
1
or
BUS
0
VENDOR
' 1'I\JIt\'I1I=
I
I
I
KEY:
R = Reserved Bit (zero)
v = Vendor Unique Bit (zero)
I
SCSI
Programming
Guidelines
5-17
Page 58
Section 5
SCSI Programming Guidelines
TABLE 5-7 ProDrive Status Codes
STATUS
BYTE
CODE
GOOD(OOfI}
INTER MEDIA TEl
GOOD(1~}
CHECK
CONDITION (02H)
RESERVATION
CONFLICT
(18H)
MEANING
COMMAND HAS COMPLETED WITH NO ERROR CONDITIONS.
LINKED COMMAND HAS COMPLETED WITH NO ERROR CONDITIONS.
This code is issued for every command in a series
last, for which the link bit is ,zero) unless CHECK CONDITION
RESERV A TION CONFLICT is appropriate.
chain
of
linked commands is broken.
AN
ABNORMAL CONDITION HAS OCCURRED.
This code is issued whenever an error, exception
occurred during the execution
have completed successfully). A
issued following a CHECK CONDITION status to determine the nature
the condition.
TARGET IS BUSY.
This code is issued
disconnection has occurred,
command. The command that received the
is taken; it may
ATTEMPTED ACCESS
This code is issued when a device attempts to access a reserved area,
in which case the command will
if
the target is busy executing a previous command, after a
be
reissued as if it were issued for the first time.
of
a command (the command
REQUEST SENSE command should
or
if the target is otherwise unable to accept a
OF
A RESERVED BLOCK,
be
rejected. See RESERVE command.
of
linked commands (except the
or
If
this code is not returned, the
or
abnormal condition
mayor
BUSY status is discarded and no action
OR
may not
be
of
DEVICE.
5.9
5.9.1
The basic functions
ProDrive and retrieved as groups
referred to as logical blocks. The size
set via the
2048 bytes per block. The drive is initially configured as 512 bytes per logical block. A unique feature
and
of
the ProDrive is that when the default tracks/zone (6) is set. changing the block size will not destroy
on
data
reconfigured as two 512-byte blocks).
size could cause some data to become inaccessible.
To
Logical Block Address (LBA). The first logical block
logical block
5-18
the drive; it simply changes the grouping
the user, the ProDrive appears as a series
READING
AND
WRITING
LOGICAL BLOCKS
of
a disk drive are to store and retrieve information. Information is stored on the
of
8-bit bytes. These groups
of
a logical block (the number
MODE SELECT command. The ProDrive will support three logical block sizes: 512, 1024,
of
the information (e.g
If
a tracks/zone setting other than the default is used, changing block
of
logical blocks. each with its own unique address called the
on
on
the drive varies depending on the capacity
SCSI Programming Guidelines
of
bytes have a standard size and are
of
bytes contained in each block) is
.•
1024-byte blocks would
the drive is address
of
the drive and the size
O.
The address
of
of
the last
the logical block.
be
Page 59
Section 5
SCSI Programming Guidelines
5.9.2
LOGICAL
BLOCK
ADDRESS
RANGES
Block Size Valid Logical Block Address Range
Decimal Hex
ProD
rive
40S
ProD
rive
80S
NOTE: The number
per
zone (MODE
If
an initiator attempts to access a logical block at an address outside the valid address range, the command
will not be executed. The drive will return a CHECK
ILLEGAL REQUEST - Invalid Logical Block Address was specified.
5.9.3
The actual storing away and retrieving
WRITE will place data
WRITE commands, the user (initiator) must specify the logical block address
transferred and the total number
number
of
TRANSFERRING
on
blocks to be transferred depends on which form
512 or 200H
10240r4~
2048
or 800H
512
or
200H
10240r~·
2048
or8~
of
available logical blocks may vary depending on the value set for tracks
SELECf
command page 3) selected by the user.
DATA
of
logical blocks is done with the WRITE and READ commands.
the disk and READ will retrieve data from the disk. In both the READ and
of
blocks to be transferred. The interpretation
0-82,028
0-
41,013
0-
20.505
0-
164,057
0-
82,028
0-
41,013
CONDITION status with the sense key set
of
the READ
0-
1406CH
0-
A035H
0-
5019H
0-
280D9H
0-
1406CH
0-
A035H
of
the first logical block to be
of
a value
or
WRITE command is used.
of
zero in the
to
•
If
the extended form
implies transfer no data.
• The non-extended form
command format is used (opcodes
blocks during the command.
of
The number
transfer length specified in the command and the logical block size:
• Number
Note that in case
The rate at which data is transferred to
the disk and how fast the disk is rotating. Neither
transfer rate should be regarded as a constant. The
outer zone, with two different data rates:
• The transfer rate when the head is over data in the outer zone is 10 Mbit/sec (1.25 Mbyte/sec).
• When the head is over data in the inner zone, the transfer rate is 8 Mbit/sec
If
the transfer rate across the SCSI bus is slower than this sustained disk transfer rate, the drive will run out
of
data
if
Other disk drive subsystems might require the user to interleave sectors on the disk to match the sustained
disk transfer rate with the SCSI bus transfer rate. This is not necessary with the
includes a large on-board cache (64K bytes). All READ and WRITE transfers are channeled through this
buffer, enabling: the drive to maintain steady transfer when the transfer rate is less than 1.25 Mbyte/second.
bytes transferred during the DATA phase following the command bytes is determined by the
of
Data Bytes = Logical BLock Size (in bytes) x Transfer Length (in blocks).
of
errors, a fewer number
the transfer is a WRITE,
of
the commands is used (opcodes 28H and 2AH), a transfer length
of
the comand has only one byte to specify transfer length.
08H and OAH), a transfer length
of
bytes will sometimes be transferred.
or
from the disk depends solely
of
these quantities can be easily modified, so the disk
of
zero means transfer 256
on
how densely the data is written on
ProDrive has two data zones, an inner zone and an
(1
Mbyte/sec).
or
begin to have data collect in its buffer
if
the transfer is a READ.
ProDrive since it
of
zero
If
this shorter
SCSI Programming Guidelines 5
·19
Page 60
Section 5
This buffer also serves as an on-board cache (DisCache). The caching function can be enabled/disabled,
and various cache parameters can be configured to best fit the applciation via the
command. Refer to the section on the MODE SELECT command (5.11.1
detailed discussion
SCSI Programming Guidelines
of
the DisCache feature.
MODE SELECT
O)
and Appendix A for a more
5.10
5.10.1
The
manner
requirements. This is referred to as changing the Operating Mode
the
MODE
Operating Mode
used to detennine the current Operating Mode
useful in setting the Operating Mode.
An example
attempt when it detects a read error.
incorrect data, the initiator's software could first issue a
determine its current configuration. The data returned to the initiator during the DATA phase
SENSE command would contain the current Mode Parameters, including how many retries the drive will
attempt when it detects a read error.
could then send a
Parameter
5.10.2
The
ProDrive Operating Mode is detennined by the contents
need for frequent and fast access to its parameters, the Current Mode Table is stored in RAM. This table is
referenced whenever there
the initiator will have set the Retry Count in the Current Mode Table to one. Each time a
command is executed, the firmware checks the Current Mode Table and looks up the Retry Count
Parameter.
the data is detected to be incorrect.
CONFIGURING THE
PRODRIVE
in which the ProDrive operates
SELECT
of
set
and
MODE
of
the ProDrive to achieve the desired behavior. The
a common user-adjusted Operating Mode parameter is the number
MODE
to one. From then on, the ProDrive would only retry once
SELECT command with the data byte corresponding to the Retry Count
OPERATING MODES
SENSE commands.
If
an initiator wished to retry only once when the drive detected
If
the number
OPERATING MODE TABLES
is
more than one possible way for the drive to behave. In the previous example,
It
then uses this number to detennine how many times it should attempt to re-read a block
PRODRIVE
can
be changed to more precisely match its features with user
of
of
the drive,
of
the drive and
The
MODE
or
MODE
retries is not set to the desired number, the initiator
SELECT
MODE
to
gather other infonnation that would be
SENSE command to the ProDrive to
of
the Current Mode Table. Because
is
done through the use
command is used to set the
SENSE command may
of
retries the drive should
of
the
on
READ
commands.
READ
be
MODE
of
the
if
of
Storing the Current Mode Table in
removed
itself. This saved copy is called the
of
user inadvertently erase the table. The
up
Mode Table
SELECT
the
NOTE:
The
to be pennanently configured to the user's requirements with the execution
command.
eliminating the burden from the device driver
every reset.
5-20
or
the drive is reset. For this reason, a copy
the disk that is not accessible by the user. This way, no user data storage area is sacrificed, nor can a
or
whenever the drive is reset. The contents
via
the
MODE
command (bit 0
Saved Mode Table when the command is completed.
If
the
MODE
be implemented first and then incorporated in the
SELECT
mode
information will appear in the Saved Mode Table as well as in the Current Mode Table.
Saved
Mode
Table is a very powerful tool for the user. Using the Save Parameters bit allows the drive
This
means that a once-in-a-lifetime configuration can be done (e.g., at the user's factory),
SCSI
Programming
of
SELECT command makes changes to
command contains new mode information and the Save Parameters bit is set, the new
RAM
means that the drive's Operating Mode is lost when
Saved Mode Table. The Saved Mode Table is stored
Saved Mode Table is used to load the Current Mode Table at power-
of
the Current Mode Table can be copied into the Saved
SELECT
byte 1), the entire contents
command.
of
If
the Save Parameters bit is set to one in the
sending vendor specific
Guidelines
of
the Current Mode Table can be saved
on
a hidden area
of
the Current Mode Table will be transferred to
the
Current Mode Table, these changes will
Saved Mode Table. In other words,
of
a single
MODE
MODE
SELECT commands after
power
on
MODE
if a MODE
SELECT
is
the disk
Page 61
Section 5
SCSI Programming Guidelines
There are two other Mode Tables supported by the
Chan&eable Parameters Table and the Default Mode Table. Both of these tables are contained in the
firmware
referenced only by the MODE SENSE command.
5.11
Following are descriptions
SENSE command (Section 5.11.3 ) for a description
Descriptor Block section (5.7.1) for definitions
5.11.1
The TEST UNIT READY command (Table 5-8) provides a means to check
ready
ROM
and are for reference only. They cannot be modified by the user. These two tables can be
• The Changeable Parameters Table allows an initiator to determine which Operating Mode
parameters the
parameter
one. Before trying
the software driver should first check to make sure that the device will support changing that
parameter.
• The Default Mode Table allows the user to restore the drive
for any reason the Current
default mode table.
ProDrive will allow to be changed via a MODE SELECT command.
in the Current Mode Table is changeable, the corresponding entry will have all bits set to
to
change any Operating Mode parameter with a
and
Saved mode tables are inaccessible, the ProDrive will use the
COMMAND DESCRIPTIONS
of
the individual commands listed in Table 5-4. Refer
TEST UNIT READY COMMAND: OPCODE =
to accept commands requiring disk access.
ProDrive
of
error codes and sense keys. Refer to the Command
of
the CDB fields.
that are
to
of
interest to the user. These are the
If
a
MODE
a known
SELECT command,
or
reference condition.
to
the REQUEST
OO(hex)
if
the drive is up to speed and
If
TABLE
Bit
Byte
0
1
2-4
5
When the ProDrive is ready, the completion status byte will indicate
ready, the completion status byte will indicate CHECK
READY (02H).
The
commands which
7 6 5 4
VU=O
do
not require disk access are:
REQUEST
RESERVE SEND DIAGNOSTICS
RELEASE START/STOP UNIT
READB~R
MODE
MODE SENSE
SENSE INQUIRY *
SELECT
5-8
TEST
I
LUN=O
I 1
I
WRITEB~R
(if
Save Parameters bit is not set)
(if
Save Parameters are not requested)
UNIT
OPCODE =
I
RESERVED
RESERVED
CONDmON
READY
3
J
00Ji
RESERVED=O
=0
=0
Command
2
1
I 1 1
F
I
GOOD
(02H), with the sense key set
(OOJI).
If
I
the drive is not
0
L
to
NOT
*
If
the
ProDrive
and the default inquiry data is returned (see 5.11.9).
is not ready when the INQUIRY command is received, the disk is not accessed
SCSI Programming Guidelines 5
-21
Page 62
Section 5
SCSI
Programming Guidelines
The ProDrive will execute any
of
application
READY sense key even
START/STOP UNIT command, Section 5.11.14 below.)
5.11.2
The REZERO UNIT command (Table 5-9) requests that the drive actuator be repositioned to cylinder zero
and head zero.
Byte
0
1
2-4
5
5.11.3
power to the drive. They will not return CHECK CONDITION status with the NOT
REZERO UNIT COMMAND: OPCODE =
Bit 7 6
REQUEST SENSE COMMAND: OPCODE = 03(hex)
of
if
the drive
TABLE
LUN=O
VU=O
the above commands after a delay
is
not ready. All other commands could require disk access. (Refer to
5-9
REZERO
5
UNIT
4
OPCODE=OIH
I
RESERVED
I
=0
RESERVED=O
of
one second, maximum, following
01
(hex)
Command
3
2
RESERVED = 0
I
1 o
F
I
L
5.11.3.1 Command Structu
The REQUEST SENSE command (Table 5-10) requests that the sense data be sent to the initiator.
The sense data applies to the previous command from the same initiator.
initiator until it is retrieved by that initiator
Commands from any initiator will not alter the sense data saved for
TABLE
Bit
Byte
0
1
2
-3
4 ALLOCATION LENGTH (BYTES)
5
ALLOCATION LENGTH - specifies the maximum number
for returned sense
data will
of
whichever is less.
be
bytes have been transferred
7 6
LUN=O
VU=O
data. Acceptable values are
returned.) The ProDrive will terminate the DATA IN phase when the allocated number
For
the ProDrive. an allocation length
re
Sense data is saved for an
or
until another command
5-10
REQUEST
5
4
OPCODE=03H
SENSE
I
RESERVED
I
OO-FFH'
or
when all available sense data have been transferred to the initiator,
=0
RESERVED
(A value
is
received from that initiator.
other initiators.
Command
3
RESERVED=O
=0
of
bytes allocated by the initiator
of
00
of
18
(l2H)
2 1 o
F
I
indicates that four bytes
is
recommended.
I
L
of
5·22
SCSI Programming Guidelines
Page 63
Section 5
If
the allocation length prevents all available sense data from being sent to the initiator, the initiator
may not use a subsequent REQUEST SENSE command to recover the remaining portion.
The
ProDrive uses the extended format for sense data. (See Table 5-11.)
SCSI Programming Guidelines
5.11.3.2
Extended Sense Format
TABLE 5-11 Extended Sense Format
Bit
Byte
0
1
2
3-6
7 ADDmONAL
8-11
12
13
14
15
7
VALID
FM=O
(MSB)
FPV
EOM=1
6
CID
s
I
ERROR
I
I
CLASS
SEGMENT
RJ=O
INFORMATION
SENSE
ADDmONAL
VU
4
I
I
RESERVED = 0
RESERVED=O
FRU
I
I
AND
CODE =
NUMBER
R=O
I
LENGTH
SENSE
FAILED
VU
I
BYTE
3
7~
= 0
(BYTES)
CODE
= 0
BPV
I
=OA
I
1
SENSE
H
BIT
1
I
KEY
POINTER
0
I
(LSB)
= 0
16-17
VALID - INFORMATION VALID (Byte
contain valid
ERROR CLASS
SEGMENT NUMBER (Byte 1) - Set to zero for the ProDrive.
FM -
P,oDrive.
EOM - END-OF-MEDIUM (Byte
exists; set to zero for the
ILl
- INCORRECT LENGTH INDICA TOR (Byte
logical block length does not match the block length on the medium. This bit is normally set to zero
for the
transfer length is greater than the buffer size.
R - RESERVED (Byte 2, Bit
SENSE KEY (Byte 2, Bits 3-0) - Values for sense key data are shown in Table 5-12.
INFORMATION
and are defined as he logical block address associated with the sense key.
(MSB)
data.
AND
CODE (Byte
nLE
MARK (Bit
ProDrive; an exception is in response to the READ BUFFER command, when the requested
7,
Byte 2) - Indicates that a filemark has been read; set to zero for the
ProDrive.
4)
BYTES (Bytes 3-6) -
FIELD
POINTER
0,
Bit 7) - Set to 1 if the information bytes
0,
Bits 6-0) - Set to 70H to indicate extended status.
2,
Bit 6) - Indicates that an end-of-medium condition
2,
Bit 5) - Indicates that the requested
- Must be zero for the ProDrive.
If
the VALID bit is
1,
the information bytes are valid
(LSB)
SCSI Programming Guidelines 5 -2 3
Page 64
Section 5
SCSI Programming Guidelines
ADDITIONAL SENSE LENGTH (Byte
value will not
transfer all
be
truncated
of
the additional sense bytes.
if
the allocation length
ADDITIONAL SENSE CODE (Byte
FRU -
vendor unique. A value
FPV -
and
bytes
C/D • CONTROL/DAT A
in
REQUEST
pointer is the byte number
issued.
FIELD
FIELD
BPV
bi~
16
and
the field pointer is the
REPLACEABLE UNIT FAILED (Byte 14) -
POINTER V ALID (Byte 15, Bit 7) -
and
bytes
17,
the
C/O
sense
key
was issued. A
of
zero
means
16
and
17
bit
and
BIT
Command
of
the
are not valid. An
BPV
(Byte 15, Bit 6) -
Descriptor
C/O
DATA
7)
-
The
in
The
ProDri
12) -Refer
that
no
FRU is
bit, are
s~gnificant.
Block
bit
of
zero indicates that the value reported in the field
phase for which
FPV
VENDOR UNIQUE (Byte 15, Bits 5·4) - Bits 5
BPV • BIT POINTER VALID (Byte 15, Bit 3) -
field is not valid. A
BIT
POINTER
in
that is
error.
BPV
bit
set
to
one indicates that the
(Byte 15, Bits 2·0) -
If
BPV is set, this field points
number
the
••
to
Set
(COB) byte' number for which
and 4 of
Set
of
additional bytes to follow.
command
uses a value
to
Table
be
Set
bit
to
an
bit
descriptor block is too small to
of
OA
H in byte 7.
5-12.
The
format
reported.
to
zero indicates
set
to
one
indicates
one
indicates
ILLEGAL
byte
to
zero indicates
pointer field (Bits 0 - 2) is valid.
REQUEST
15
are
that
vendor
that
to
the
that
of
this
byte
that
the
C/O
the field pointer
the
value
reported
an
ILLEGAL
sense
key
unique.
the
bit
pointer
bit
within the byte
This
is
bit
was
FIELD POINTER (Bytes
Block
fields
or
the
DATA
the case
which
(FPV)
of
multiple byte fields, the field pointer bytes index the
an
illegal request sense
bit
is
set
to
one.
Description
o
00
1
00
02
10
11
NO
SENSE.
case for a successful command
status because
No
additional infonnation
RECOVERED
recovery action performed
the additional sense bytes
No
additional infonnation
Recovered seek timeout
Recovered
Recovered data
16-17) -These
phase fields for which an
key
was issued.
bytes represent
ILLEGAL
These
bytes are only valid
an
index into the
REQUEST
most
significant byte
TABLE 5·12 Sense Error Codes
No
specific sense key information
or
a command that received a
one
of
the filemark,
ID
ERROR.
CRC
ECC
error
on
The
last
by
the ProD';
and
the
last retry
information bytes.
EOM,
command
••.
to
be
or
ILl
bits
is
was completed successfully with
Details
may
Command
sense
key
was issued. In
of
if
the Field Pointer Valid
reported.
set
be
This
CHECK
to
one.
detennined
would be the
CONDmON
Descriptor
the field for
some
by
examining
5·24
SCSI Programming Guidelines
Page 65
Sense
Key
(hex)
Additional
Sense
Code
(hex)
Section 5
Table 5-12 Sense Error Codes (cont.)
Description
SCSI Programming Guidelines
13
14
15
16
17
18
86
95
96
97
98
A8
AD
2
00
BO
Bl
B2
3
Recovered data
Recovered
Recovered
sync
no
record
seek error
timeout
found
Recovered data marker not
Recovered
Recovered
Recovered
data
ECe with retries
data
ECC
unexpected
moT
sequencer
Recovered SOLO timeout
Recovered
Recovered
Recovered timeout
Spurious
Requested fonnat
NOT
COlTCCt
bump
tmdemmIovemm
nmi interrupt
READY.
Target cannot
this condition.
in
not
available
settling
No additional infonnation
Drive recalibrating
up
to
Drive not
speed
Drive waiting for command
MEDIUM
that
ERROR.
was
probably caused
The
command terminated with a non-recovered error condition
by a flaw
found
error
error
be
accessed. Operator intervention may
to
start
in
the medium or
an
error
in
the
recorded
be
required
to
data.
00
10
11
13
.14
16
19
Ie
31
32
80
81
95
97
A3
AA
No additional infonnation
All
IDs have CRe errors
Uncorrectable
data
error
Data sync timeout
No
record
found
Data
marker not
found
Bad defect list
No
primary defect list found
Fonnat failed or
No
more
spares available
not
fonnatted
Can't write system sector
Can't
read system sector
SOLO timeout
Undemmlovemm
error
Reassign Blocks READ failure
Reallocated uncorrectable data
read
SCSI
Programming
Guidelines
5·25
Page 66
Section 5
SCSI Programming Guidelines
Sense
Key
(hex)
4
Additional
Sense
Code
(hex)
00
01
02
03
06
09
15
IB
32
40
41
42
43
44
45
Table 5-12
Sense
E"or
Description
HARDWARE
perfonning
No
additional infonnation
No
index
the
signal
ERROR.
command.
The
target detected a non-recoverable hardware failure
Seek timeout
Write fault
Recalibrate
failure
Servoing error
Seek
error
Sync~nous~uesterror
Defect list
Buffer
RAM
is
full
failure
ECCfailure
Power-on
Message
failure
reject
Finnware error
Reselect timeout
Codes
(cont.)
while
82
83
84
85
86
87
88
89
8A
90
91
92
93
94
96
98
99
9D
9E
9F
AO
Al
A2
A4
A6
No
digital PI or
Analog
PI or
Failure writing to
Rejected message
Unexpected
A
and
B servos not
P2
P2
are
format
was
sequencer
equal
signal
bad
not
enor
Airlock stuck closed
Bad
head
amplifier
Bad
head
select
Synchronous
FIFO
FIFO
FIFO
Undocumented
acknowledge
unload error
load
error
predicted
full error
SPICY
error
Bump timeout
Timeout in settling
Bump
retry
counter expired
up
to
Motor never gets
speed
Motor drops out of legal
Internal
External
ROM
checksum error
PROM
checksum error
Sequencer rollover register
External
Bad
A and B
RAM
thennistor
servos
failure
not
detected
parameter
sent
error
speed
range
failure
RAM
SCSI
5·26
Programming
Guidelines
Page 67
Section 5
SCSI Programming Guidelines
Sense
Key
(bex)
5
Additional
Sense
Code
(bex)
A7
A9
AC
AD
00
19
lA
20
21
22
24
2S
Table 5-12 Sense
E"or
Description
Offtrack timeout
SOLO DMA pointer error
Airlock stuck open
No servo
ILLEGAL
block or
rroDrive detects
terminate the command without altering
additional parameters supplied as
No additional infonnation
Entered
Parameter
Invalid
InvalidLBA
Dlegal
mega! field in
InvalidLUN
intelTUpt
REQUEST. There was
in
the
additional parameters supplied as data for a command.
an
invalid parameter in the command descriptor block, it will
defect list
in
error
overrun
command
function for device type
COB
an·
illegal parameter in the command descriptor
data, it
Codes
the
may
medium;
(cont.)
if
the invalid parameter is in the
have already altered the medium.
If
the
26
8A
8B
8C
8D
8F
9B
9C
AS
AE
6
00 No additional infonnation
29
2A
8E
9A Target attempted to reselect
megal field
Invalid
Invalid
Select
Bad
BPBIBPS
in parameter list
head
cylinder
from
same
initiator while active
Invalid sector
Invalid
period
or
offset in sync message
Active initiator attempted another select
Defect list out
Bad
parameter(s)
UNIT A1TENTION. MODE SELECT parameters have been changed
initiator, or the
condition
The
UNIT
INQUIRY
CHECK
the
clear
An
INQUIRY command will be performed with no effect to
condition.
CHECK
JqJOIted
of
order
in
mode
page
ProDrive
bas
been reset
by
a bus device reset message, a "hard" reset
(RST asserted) or a power-on reset
A 1TENTION condition will persist until n:ceipt
or REQUEST SENSE.
CONDmON
UNIT
A 1TENTION condition
If
a REQUEST SENSE
CONDmON
and
cleared.
status
for the
The
command issued will
will
be
~
command
UNIT
A TIENTION condition, the condition will
allowing the initiator to discover and
by
issuing a REQUEST SENSE command.
is received before the
of
a command other than
not
be
perfonned; the
the
UNIT
Drive reset
Mode
select
Unexpected
parameter
SCSI
changed
interrupt occmred
ProDrlve
by
another
A1TENTION
ProDrive
reports
be
SCSI
Programming
Guidelines
5·27
Page 68
Section 5
SCSI Programming Guidelines
Table 5-12 Sense
Additional
Sense
Key
(hex)
B
E
5.11.4
The FORMAT UNIT command (Table 5-13) assigns logical blocks to physical sectors for optimum
sequential access (within the limitations
option causes a repetitive (one byte) data pattern to be written in every block. The ProDrive is fonnatted
when shipped from the factory, with data being undefined.
Sense
Code
(hex)
00
40
47
48
49
00
AF
Description
ABORTED COMMAND. The
be able to recover by trying the command again.
No additional infonnation
Buffer RAM
Parity error on SCSI bus
Initiator detected
Inappropriateftllegal message
MISCOMP
No additional infonnation
Buffer conupted
parity
elTOr
error
ARE.
The source data dit not match the data read from the medium.
FORMAT UNIT COMMAND: OPCODE = 04(hex)
of
available spare blocks), skipping known defective areas. An
E"or
ProDriv~
Codes (cont.)
aborted the command. The initiator may
NOTE: Issuing this command typically causes loss
not used. All data should be backed up prior to fonnatting.
of
5.11.4.1 Command Structure
TABLE 5-13 FORMAT UNIT Command
Bit
Byte
0
1
2
3-4 (MSB)
S
FMTDAT·
is supplied during the DATA
that will
logical block addresses (not physical addresses). The fonnat
IS. A FMTDAT bit
header and no defect data shall
be entered onto the defect map. The defect list refers to the current block length and current
7
I
VU=O
FORMAT
of
6
LUN=O
I
5
I
OPCODE= 04H
I
FMl'DAT
DATA
INTfRLEA
I
DATA
zero indicates that the DATA
(Byte 1, Bit
OUT
phase. The defect list included with this data specifies the defects
be supplied by the initiator. See Table 5-15.
data, even when the repetitive data pattern option is
4
PAlTFRN
VE = XX
RESERVED
4)
- Set
3
I
I CMPI.ST I
= 0
to
one indicates that defective block data
of
the defect list is shown in Table
OUT
phase will not occur, i.e., no defect list
I
2
I
DEFECT
I
1
LIST
F
FORMAT
I
I
0
(LSB)
L
S-
5-28
SCSI Programming Guidelines
Page 69
Section 5
SCSI Programming Guidelines
CMPLST • COMPLETE
of
complete list
known initiator-specified or field replacement defects. Any previous initiator-
specified defect map or defect data is erased. This purges
LIST
(Byte 1, Bit
3)
- Set to one indicates the data supplied is the
any
previous initiator-specified defect list and
builds a new defect list, which includes the initiator-specified list and the factory defects. A
bit
of
zero indicates that the data supplied is in addition to existing defect data using the current
format.
DEF~CT
defect list.
DATA
FORMAT UNIT command
MODE
INTERLEA
field by the initiator will
LIST
FORMAT
(Byte 1,
Bits
2-0) - Specifies additional information related to the
See Table 5-14 for further infonnation. -
PATIERN
(Byte 2) - User data pattern to
(if
this option is enabled by the Fill Data Pattern bit in Page 39H
be
written repetitively into each sector during
SELECT command).
VE
FIELD
(Bytes 3-4) - Specifies the interleave factor. Any value specified in this
be
ignored by the ProDrive. The ProDrive uses a
1:
TABLE 5-14 FORMAT UNIT Command Variations
4
FMTDAT
3
CMPLST
Bit Reference Defect
(CDB
bIte
1)
2
0 X X 0
1
DEFECT
FORMAT
LIST
0
7
FOV
Blte
List
1
6
DPRY
Defect List
Lensth
1 interleave.
Option
(See 5.11.4.2)
CMPLST
of
the
1 0 X X 0 0
·0
0
Key: X = 1 or 0 (ignored
X
0 0 X X
0 0 X
X
X
X
0
by
ProDrive)
X
0 X
X
0 X
0 X
X
X
X
X
X
X
NO
DEFECT
0
0
COMMENTS
Not
0
Vendor Unique (Not Used)
Reserved
0
0
Supported
0
0 3
LIST*
2
4
5
6
7
8
*Since the OAT A OUT phase does not occur, there is no defect list header.
The defect list shown in Table 5-15 contains a four-byte header which may be folowed by defect descriptors.
The defect list length is
bytes
of
the defect descriptors that follow. Each defect descriptor for the logical block format specifies a
four-byte defect logical block address that contains the defect. The defect addresses must
equal
to four times the number
of
defect descriptors; it specifies the total length
be
in ascending
in
order. The defect list length may be zero.
SCSI Programming Guidelines
5·29
Page 70
Section 5
SCSI Programming Guidelines
TABLE
Byte
04
Bit
0
I FOV
2-3
FOV -FORMAT
bits 4 through 6 (STPF, DCRT, and DPRY). A FOV bit
the
ProDrive default format scheme to
DPRY -DISABLE
exclude the factory defect map (primary list
formatting. A
in its list
the default condition
of
7
(MSB)
I (MSB) DEFECT LOGICAL BLOCK ADDRESS
DPRY bit set to zero indicates that the ProDrive will include the factory defect map
flaws to manage while formatting. Note that the inclusion
5·15 Defect List - Logical Block Format
6
I
5
I
DEFECT LIST HEADER:
RESERVED
I DPRY I DCRT I
DEFECT-LIST
Defect Descriptor(s):
OPTIONS
PRIMARY
of
the ProDrive.
VALID (Byte 1, Bit 7) - Set to one authorizes the setting
be
implemented for the functions defined by bits 4 through 6.
(Byte 2,
4
I
STPF
Bit
6) - Set to one indicate that the
or
P-list) from its list
3
f
=0
I
LENGTH
of
zero indicates that the initiator requests
2
I
RESERVED
of
flaws to manage while
of
the factory defect map
1
I
=0
ProDrive
0
I
(LSB)
(LSB) I
of
will
is
DCRT -DISABLE
Must
be
set to zero by the initiator.
STPF -STOP
zero by the initiator.
CERTIFICATION
FORMAT
(Byte 1,
(Byte 1,
Bit
4) - Not supported by the ProDrive. Must be set to
Bit
5) - Not supported by the ProDrive.
5.11.4.2 Agglication of FORMAT UNIT Command
The ProD rive offers eight formatting options as follows:
1)
Format with absolutely no defects
2)
Format with original factory defects only
3) Format with grown defects only (discarding factory defects)
4) Format with existing defects (factory and grown defects)
5) Format with provided defects only (discarding factory and existing grown defects)
6) Format with provided defects in addition to factory defects (discarding existing grown
defects)
7)
Format with provided defects in addition to existing grown defects (discarding factory
defects)
8) Fonnat with provided defects in addition to existing defects
NOTE: With any
condition; meanwhile, the original factory defects are always preserved.
The following tables illustrate the setting
implement each
of
the above options, the list
of
the listed options.
of
grown defects is always updated to reflect the latest
of
the FORMAT UNIT CDB and defect list header required to
5-30
SCSI
Programming
Guidelines
Page 71
( 1 )
Format
Section 5 SCSI Programming Guidelines
with absolutely no defects.
FORMAT
Bit 7
B~te
0
1
2 DATA PATIFRN
3-4
s
B~te
0
1 1
2-3
NOTE: The list
(MSB)
Bit 7
lMSBl
of
vu=o
grown defects will
I
1
1
6
LUN=O
6
1
I
I
I
I
be
UNIT
5
4
I
OPCODE=04H
1
I
INTERLEAVE =
RESERVED
Defect
5
List
4
I
RESERVED=O
0
DEFECI' LENGTH = 0
erased.
1
0
Command
3
I
1
I
XX
=0
Header
3
t
I
1
I
0
1
1
I
RESERVED = 0
1
J
I
I I
F
J
I
I
1
I
0
(LSB)
L
0
(LSB)
(2)
Format
Bit 7
Byte
0
1
2
3-4
s
Bit
B'yte
0
1
2-3
NOTE: The list
with original factory defects only.
I
(MSB)
VU=O
7
i
0
I
(MSB)
of
grown defects will
6
LUN=O
6
0
FORMAT
5
I
I
Defect
5
I
0
I
be
erased.
UNIT
4
I
OPCODE=
1
I
DATAPATIERN
INTERLEAVE =
RESERVED=O
List
4
I
RESERVED=O
0
1
DEFECI' LENGTH = 0
Command
3
I
04H
1
I
XX
Header
3
I
I
1
I
0
I
1
I
RESERVED=O
I
J
I
I
1
F
1
I
I
I
I
0
(LSB)
L
0
(LSB)
SCSI
Programming
Guidelines
5-31
Page 72
Section 5
(3) Format with grown defects only; discard factory defects.
SCSI Programming Guidelines
FORMAT
Bit 7
Byte
0
1
2
Bit
(MSB)
VU=O
7
1
(MSB)
of
grown defects will
3-4
5
Byte
0
1
2-3 .
NOTE: The list
( 4) Format with existing defects (factory and grown defects). The data out phase
not used.
J
I
I
6
LUN=O
6
1
I
I
I
I
5
0
be
5
Defect
DEFECT
erased.
UNIT
4
I
OPCODE= 04H
1
I
DATA
PA1TF.RN
IN1'ERLEA
VE = XX
RESERVED
List
Header
4
I
RESERVED
0
I
LENGTH
Command
3
I
0
J
=0
3
I
=0
I
= 0
2
I
0
I
2
I
RESERVED
I
J
I
I
I
F
I
= 0
I
I
l
I
-<LSB]
L
0
(LSB)
0
is
FORMAT
Bit 7
Byte
0
1
2
3-4
5
NOTE: No defect list header or defect descriptor blocks follow the command.
(MSB)
VU=O
6
I
LUN=O·
5
I
I
UNIT
Command
4
I
OPCODE=04H
I
DATAPA1TF.RN
INTERLE.A
RESERVED
0
I
I
VE = XX
3
0
=0
I
I
2
0
1
I
I
I I
F
I
I
0
(LSB)
L
5-32 SCSI Programming Guidelines
Page 73
(5)
Format
Section 5
with provided defects only; discard factory
SCSI Programming Guidelines
and
existing grown defects.
FORMAT
Bit 7 6
Byte
0
1
2
Bit
(MSB)
7
(MSB)
34
5
Byte
0
1 1
2-3
NOTE: The defect descriptor blocks follow the defect list header.
VU=O
I
I
LUN=O
6
1
I
I
I
543
5
0
UNIT
Command
OPCODE=04H
1
I
DATA
PATIERN
INTERLEAVE = XX
RESERVED=O
Defect
List
4
Header
I
RESERVED=O
0
I
DEFECT
LENGTH
1
1
I
1
3
2
0
J
2
j
RESERVED = 0
1
I 1
F
I
I
I
1
I
o
~B)
L
0
(LSB)
(6)
Format
grown defects)
Byte
0
1
2
3-4
5
B~te
0 RESERVED
1 0
2-3
with provided defects in addition to factory defects; discard existing
FORMAT
Bit
Bit
(MSB)
(MSB)
7
VU=O
7
I
. J
I
6
LUN=O
6
0
I
J
1
I
5
I
OPCODE=
I
DATA
INTERLEAVE = XX
Defect
5
J
0
J
DEFECT
UNIT
Command
4
3
I
04H
1
I
PATTERN
RESERVED = 0
List
Header
4
3
I
=0
j
0
LENGTH
2
J
1
I
0
2
J
RESERVED
1
I
J
I I
F
I
I
1
I
J
=0
0
(LSB)
L
0
(LSB)
NOTE: The defect descriptor blocks folow the defect list header. The provided defects will replace the
existing grown defects.
SCSI Programming Guidelines
5-33
Page 74
Section 5
(7)
Format
factory defects)
SCSI Programming Guidelines
with provided defects in addition to existing grown defects; discard
FORMAT
Bit 7
Byte
0
1
2
3-4 (MSB)
5
Bit 7
Byte
0
1 I
2-3
NOTE: The defect descriptor blocks follow the defect list header. The existing list
will be added
VU=O
(MSB)
6
I
LUN=O
6 S 4 3 2 1
I
I
with
the
provided defects, becoming the updated grown defects.
s
J
I
0
I
DEFECT LENGTH =
UNIT
4
J
OPCODE=
1
I
DATA
PATTERN
INTERLEA VE =
RESERVED = 0
Defect List
RESERVED
0
I
Command
I
04H
I
XX
Header
=0
I
0
3
0
J
I
2
I
0
I I
I
RESERVED
1
I
F
J
=0
of
grown defects
0
(LSB)
L
o
(LSB)
(8)
Format
Byte
0
I
2
3-4
5
Byte
0
I
2-3
NOTE: The defect descriptor blocks follow the defect list header. The existing list
with provided defects in addition to existing defects
Bit
(MSB)
Bit 7
(MSB)
will
be
added
7
0
I
LUN=O
VU=O
I
I
with
FORMAT
6
S
I
I
6
S
I
0
the
provided defects. becoming the updated grown defects.
0
I
DEFECT LENGTH =
UNIT
4
I
OPCODE=04H
I
I
DATA
PAlTERN
INTERLEAVE =
RESERVED = 0
Defect List
Header
4
I
RESERVED
0
I
Command
3·
I
0
I
XX
3
I
=0
I
0
2
I
0
I
2
I
RESERVED=O
I
I I
I
I
1
I
F
I
1
I
of
grown defects
0
(LSB)
L
0
(LSB)
5-34
SCSI Programming Guidelines
Page 75
Section 5
SCSI Programming Guidelines
5.11.5
The REASSIGN BLOCKS command (Table 5-16) requests the
blocks to areas
The initiator transfers a defect list during the DATA
list contains the logical block addresses to be reassigned by the
physical medium used for each logical block address in the list. The data contained in the logical blocks
specified in
error recovery parameters; the data in all other logical blocks on the medium will be preserved.
block that has previously been reassigned is
The defective block address will
NOTES: The REASSIGN BLOCKS command should not
Byte
REASSIGN BLOCKS COMMAND: OPCODE = 07(hex}
ProDrive
on
the drive reserved for this purpose.
OUT
phase following the command bytes; the defect
ProDrive.
the
defect list will be preserved
be added to the drive's field replacement defect map.
logical blocks which have already been so reassigned with the automatic reallocation feature
MODE
Block reassignment can degrade performance by requiring spare locations to
can
CAPACITY command) or possibly by reassigning all logical block addresses with the
FORMAT UNIT command.
Bit
SELECT.
be
remedied by moving a file to a more appropriate area (as determined using the READ
TABLE
7
5-16
6
if
recoverable within the limits prescribed by MODE SELECT
specified to
REASSIGN
5 4
be
reassigned, the block will be reassigned again.
be
used to redundantly reassign defective
BLOCKS
3 2 I
to reassign the defective logical
The drive will reassign the
If
a logical
be
accessed. This
Command
o
of
0
1
2-4
5
The REASSIGN BLOCKS defect list (Table 5-17) contains a four-byte
defect descriptors. The length
the total length in bytes
four times the number
LUN=O
VU=O
of
of
the defect descriptors that follow. The defect list length is, therefore, equal to
of
defect descriptors.
I
each defect descriptor is four bytes. The defect list length field specifies
OPCODE=07H
1
RESERVED
=0
RESERVED=O
RESERVED
header
followed by one
=0
I
F
I
or
L
more
SCSI
Programming
Guidelines
5-35
Page 76
Section 5
SCSI Programming Guidelines
TABLE
~l
2-3
0-4 I (MSB)
The defect descriptor specifies a four-byte defect logical block address that contains the defect. The defect
addresses must be in ascending order. All
sectors) will be reassigned.
If
the drive has insufficient capacity to reassign all
tenninate with a CHECK
logical block address
sense data.
5.11.6
(MSB)
of
READ COMMAND: OPCODE = 08{hex)
5·17
CONDITION status and the sense key will be set to MEDIUM ERROR. The
the first logical block not reassigned will be returned
REASSIGN
Defect List Header·
RESERVED
DEFECT LIST LENGTH
Defect Descriptor(s):
DEFECT LOGICAL
of
the 512-byte sectors associated with a logical block
of
the defective logical blocks, the command will
BLOCKS Defect
=0
BLOCK
ADDRESS
in
List
(I,
the information bytes
(LSB)
(LSB)
2,
or
of
I
4
the
The READ command (Table 5-18) requests that the target transfer data to the initiator.
5.11.6.1
Byte
0
1
2-3 LOGICAL BLOCK ADDRESS
4
5
LOGICAL BLOCK ADDRESS (Byte
block at which the READ operation will begin.
TRANSFER LENGTH (Byte 4) - Specifies the number
be transferred. A transfer length
values are
Command Structure
Bit 7
6
I
LUN=O
VU=O
OO-FFH'
TABLE
5·18
5
I
TRANSFER LENGTH
I
of
zero indicates that 256 blocks shall be transferred. Acceptable
READ
4
I
OPCODE=08H
I
(MSB)
RESERVED
1,
Bits 4-0; Bytes 2-3) - Specifies the logical
Command
I
2
I
I
3
I
LOGICAL BLOCK ADDRESS
=0
of
contiguous logical blocks
I
0
I
(LSB)
F
I
of
L
data to
5-36
SCSI
Programming
Guidelines
Page 77
5.11.6.2 BEAD Command Operation
Section 5 SCSI Programming Guidelines
Read operations on the
it is first stored in the buffer. After a logical block has been read successfully into the buffer, those data
bytes are transferred from the buffer to the
The two operations involved
from the
from the disk to the buffer, will continue as long as the transfer length indicates that there
be read from the disk and there is room in the buffer. The second operation, transferring data from the buffer
to the
completely because the second operation (buffer to
transfer to the buffer will be temporarily halted to allow the transfer from the buffer to the
up room in the buffer. Transfer from disk to buffer continues until the transfer length is exhausted.
Transfer from the buffer to the
totally emptied.
The disconnect/reconnect strategy is tied to the dual processes
ProDrive will not disconnect unless the initiator sends an IDENTIFY message with the "I Support
Disconnect" bit (bit 6) set.
the buffer is empty and the transfer count is not exhausted. The point at which reconnect occurs is
controlled by the Buffer Full Ratio
specified by the Buffer Full Ratio, the
bus is established, the buffer to
the reconnection (e.g., the bus is busy), the disk to buffer operation will continue until the buffer
the number
5.11.7
buffer to the SCSI bus, are essentially independent processes. The first operation, transferring data
SCSI bus, will start whenever the buffer contains at least one logical block.
of
blocks requested has been reached.
WRITE COMMAND: OPCODE = OA(hex)
ProDrive
are buffered using a 64K-byte buffer. When data is read from the drive,
SCSI bus.
in
reading, transferring data from the disk to the buffer and transferring data
is
If
the buffer fills
SCSI bus)
SCSI bus continues until the first operation is completed and the buffer
If
disconnect is supported by the initiator, the drive will disconnect whenever
(MODE SELECT Page 2 byte 2). When the buffer fills to the level
ProDrive will initiate a reconnection. When reconnection to the
SCSI bus transfer operation will resume.
is
slower than the first (disk to buffer),
SCSI bus to free-
of
filling and emptying the buffer. The
If
there is a delay in establishing
more data to
is
is
full,
or
The WRITE command (Table 5-19) requests that the data transferred to the target be written in the area
specified by the logical block address.
5.11.7.1
Byte
0
1
2-3 LOOICAL BLOCK ADDRESS
4 TRANSFER LENGTH
5
LOGICAL BLOCK
block at which the WRITE operation will begin.
TRANSFER
transferred. A transfer length
are
Command Structure
Bit
7
I
LUN=O
VU=O
LENGTH
OO-FFH'
TABLE
6
I
5-19
5
WRITE
4
I
OPCODE=
I (MSB) LOOICAL BLOCK ADDRESS
I
ADDRESS
(Byte 4) - Specifies the number
of
(Byte 1, Bits 4-0; Bytes 2-3) - Specifies the logical
zero indicates that 256 blocks will be transferred. Acceptable values
RESERVED=O
Command
3
I
OAH
of
2
I
contiguous logical blocks to be
I
I
1
I
(l,SB)
F
I
0
L
SCSI
Programming
Guidelines
5 -
37
Page 78
Section 5 SCSI Programming Guidelines
5.11.7.2 WRITE Command Operation
WRITE
is first stored in the buffer. When the head is correctly positioned
area, data will be written from the buffer to the disk.
The
data from the buffer onto the disk, are essentially independent processes.
data
more data
buffer fills completely, the transfer
operation, transferring data from the buffer
the head is correctly positioned
operations involves the buffer level.
transfer process cannot keep up
temporarily halt
The
ProDrive will
Disconnect"
can
exhausted).
SELECT
before reconnection is attempted. After a successful reconnection, the
will resume.
5.11.8
The
commands
two operations involved in writing, transferring data from the SCSI bus to the buffer and transferring
from the SCSI bus into the buffer, will continue as long as the transfer length indicates that there is
to
disconnect/reconnect strategy is tied to the dual processes
no longer transfer data from the SCSI bus to the buffer because the buffer is full
The
Page 2 byte 3). This ratio determines
on
the ProDrive are buffered using a 64K-byte buffer. Data
on
the track
The
be
transferred across the SCSI
of
over
and
the buffer empties. In
if
the buffer-to-disk transfer process falls behind and the buffer fills
not
disconnect unless the initiator sends
bit
(bit 6) set.
point at which reconnection occurs is controlled by the Buffer Empty Ratio (MODE
If
disconnect is supported by the initiator, the drive will disconnect whenever it
bus
from the initiator and there is room in the buffer.
data across the SCSI bus will temporarily halt.
onto
the disk, will occur as long as the buffer is not empty and
the appropriate data area.
The
"buffer-te-disk operation will stop
how
low the buffer level must get
The
only interaction between these
tum,
the SCSI-to-buffer transfer will
of
filling and emptying the buffer. The
an
IDENTIFY message with the "I Support
SCSI bus-to-buffer transfer operation
to
be stored on the disk.
over
the appropriate data
first operation. transferring
The
second
if
the SCSI bus-to-buffer
completely.
(or
the transfer count is
via
data transfer
SEEK COMMAND: OPCODE = OB(hex)
SEEK
command (Table 5-20) requests that the drive seek to the specified logical block address.
If
two
to
the
disk
TABLE
Bit
Byte
0
1
2-3 LOGICAL BLOCK ADDRESS
4 RESERVED
5
LOGICAL BLOCK ADDRESS (Byte 1, Bits
to which the actuator will
7
LUN=O
VU=O
6
I
be
repositioned after the
5·20
5
SEEK
4
OPCODE=OBH
I (MSB) LOGICAL BLOCK ADDRESS
RESERVED
S-O;
SEEK
Command
3
=0
=0
Bits 2·3) - Specifies
operation is complete.
2
I
1
F
the
I
logical
o
MB)
L
block
5·38
SCSI
Programming
Guidelines
Page 79
Section 5
SCSI Programming Guidelines
5.11.9
The INQUIRY command (Table 5-21) requests that information regarding identification
to the initiator.
5.11.9.1
Byte
0
1
2-3 RESERVED
4
5
ALLOCATION LENGTH - Specifies the maximum number
allocated for returned
Acceptable values are
allocation length bytes have been transferred
to the initiator, whichever is less. (For the
recommended.)
INQUIRY COMMAND: OPCODE = 12(hex)
CQmmand Structure
Bit 7
TABLE
6
I
LUN=O
VU=O
IN
QUIR Y data. A value
OO-FFH.
5-21
5
I
ALLOCA
I
The ProDrive will terminate the DATA IN phase when the
INQUIRY
4
I
OPCODE=
I
nON
LENGnt
RESERVED =
of
00 indicates that no data will be returned.
or
when all available INQUIRY data have been transferred
ProDrive, an allocation length
3
I
12H
=0
(BYTES)
Command
I
RESERVED
O·
of
bytes that the initiator has
2
I
=0
I
of
130 (82H) is
of
the target be sent
1
0
I
F
I
L
5.11.9.2
Byte
0
1
2
3
4
PERIPHERAL DEVICE TYPE (Byte 0) - Set to a value
Access Device), unless the LUN specified in the Command Descriptor Block is invalid.
is
invalid~
returned as
RMB - REMOVABLE MEDIUM BIT (Byte
ProDrive
DEVICE TYPE QUALIFIER (Byte 1, Bits 6-0) - Not supported by ProDrive; it is set to
a value
INQUIRY DATA Format
TABLE
Bit 7
6
I
RMB=O
the peripheral device
if
the LUN was set to a value
to
indicate non-removable media.
of
zero.
I
RESERVED
RESERVED=O
=0
5-22
I
PERIPHERAL DEVICE TYPE
I
INQUIRY
5
ECMA VERSION = 0
4
I
DEVICE TYPE QUALIFIER = 0
I
I
ADDmONAL
type
is set to 7FH. The reset
of
zero.
LIST
LENGnt
1,
Bit 7) - Always set to zero for the
DATA
3
Format
2
I
= 0
I
RESPONSE DATA FORMAT = 1
of
zero for the ProDrive
of
the data bytes is not affected and are
ANSI VERSION = 1
1
I
If
0
1
(Direct
the LUN
SCSI
Programming
Guidelines
5·39
Page 80
Section 5
SCSI Programming Guidelines
ECMA
claim compliance to the European Computer Manufacturers Association version
ANSI
specification for SCSI.
RESPONSE
the Common Command Set proposed by an ANSC X3T9.2 working group.
ADDITIONAL
identification information. The
chart.
vendor unique parameters, the additional length value will not be adjusted to reflect the truncation.
ProDrive
VERSION
VERSION
DATA
If
the allocation length
DRIVE
BYTE
5
- 7
6
8 -
15
(Byte 2, Bits 5-3) - Set to zero to indicate that the ProDrive does not
of
SCSI.
(Byte 2, Bits 2-0) - Set to one to indicate compliance with the ANSI
FORMAT
LIST
LENGTH
IDENTIFICATION
(Byte
3,
Bits 3-0) - Set to one to indicate compliance with
(Byte 4) - Specifies the length in bytes
ProDrive identification information is shown
of
the command descriptor block is too small to transfer all
initiators, provided that at least one parameter is changed.
Bytes 8 through
received, it will
data returned will
MODE
the drive. A
SELECT command (Table 5-23) provides a
another
initiator. Execution of the command will create a
BYTES
16 - 31
44
- 55
MODE
MODE
SELECT command will override any previous selection of device parameters, even
55
are
ASCII
be
unable to return
be
the
default data
SELECT
values.
DATA
"P40S 940-40-94XX
"DRV
If
the drive is not
the
correct data for bytes
as
shown
SER
NUM
COMMAND:
5.11.10.1 Command Structure
TABLE 5-23 MODE SELECT Command
Bit 7
Byte
0
I
6
I
5
I
OPCODE=
ready
in
the following table.
It
"
OPCODE
mei.ns
for
the initiator to specify device parameters
UNIT
A ITENTION condition for other
4
3
I
ISH
when
the
INQUIRY command is
16-31
and 44-55. In this case,
= 15{hex)
2
I
I
the
1
0
I
I
2
3
4
S
When the
from an unaddressable area
the Saved
ProDrive
Mode
•
If
the parameter values cannot be successfully
their default values as shipped
another
•
If
initiator altered the parameters.
the parameter values are
VU=O
is powered on and the motor spins
Table, Section 5.10.)
a reset
NOTE:
SP •
Current Mode Table will
the
If
bit
1,
Byte 2
A1TENTION condition will not occur; see Section 5.11.10.5.
SA
VE PARAMETERS (Byte 1, Bit 0) -
Saved
Mode
Table.
LUN=O
PARAME1ER
I
on
the
drive, and a UNIT A 1TENTION condition is set for all initiators.
from
read
successfully, the additional sense
of
MODE SELECT, Page 39H is set to a value
be
copied to the Saved Mode Table.
I
RESERVED
RESERVED
UST
LENG1H(BYTES)
RESERVED=O
up,
read
from
the factory and the additional sense code will
If
RESERVED
= 0
= 0
the most recent set
the Saved Mode Table,
set to one, only the saveable pages
See
= 0
of
device parameters
code
will
be
of
one, the UNIT
Section 5.10 for a description
I
set
F
they
be
to
SP
I
L
I
is
(See
will revert to
set to
2AH
29u
to indicate
of
the
of
read
as if
SCSI
Programming
Guidelines
5-41
Page 82
Section 5
SCSI Programming Guidelines
PARAMETER
LIST
LENGTH
(Byte 4) - Specifies the length
in
bytes
of
the MODE
SELECT parameter list that will be transferred during the DATA OUT phase. A parameter list length
of
zero indicates that
no
data will be transferred. This condition should not be considered an error.
5.11.10.2 MODE SELECT Parameter List
The MODE SELECT parameter list (Table 5-24) contains a four-byte header, followed
descriptor, then zero
Bit 7
Byte
0 RESERVED
1 MEDIUM TYPE = 0
2 RESERVED
3
or
more "pages".
TABLE 5-24 MODE
6 5
Mode Select Header:
BLOCK DESCRIPTOR LENGTH (BYTES)
Block Descriptors
SELECT
4
=0
=0
Parameter List
3
2 1 o
by
zero or one block
0 DENSITY CODE = 0
1-3
4
5-7
0 RESERVED
(MSB)
(MSB)
=0
I
NUMBER
RESERVED
BLOCK
p
age
OF
BLOCKS = 0
LENGTH
escrlptor
D
=0
t PAGE LENGTH
2
ton
MEDIUM
TYPE
(Byte 1) - Set to zero for default (currently mounted medium type) since the
REFER TO PAGE DESCRIPTION
ProDrive has non-removable media.
BLOCK
descriptors. It is equal to the number
any. A block descriptor length
DESCRIPTOR
LENGTH
of
(Byte 3) - Specifies the length in bytes
of
block descriptors times eight; it does not include the pages,
zero indicates that no block descriptors wil be included
parameter list. A single block descriptor is used for the
BLOCK
including a density code, number
DESCRIPTORS:
The block descriptors specify the logical block length for the drive
of
blocks, and block length.
( )
s :
PAGE CODE
ProDrive.
of
all the block
in
(LSB)
(LSB)
if
the
DENSITY
CODE
(Byte 0) - Set to zero, indicating the default density
ProDrive uses only one density.
5·42
SCSI
Programming
Guidelines
of
the medium, since the
Page 83
Section 5
SCSI Programming Guidelines
NUMBER
that meet the density code and block length
remaining logical blocks
Any non-zero value within the capacity of the
certain number
OF
BLOCKS (Bytes 1-3) - Specifies the number
in
the
block descriptor. A value of zero indicates that all
of
the drive
have
the
medium
ProDrive can
of
blocks.
of
logical blocks on the
characteristics specified
be
used
to
limit access
BLOCK LENGTH (Bytes 5-7) - The block length specifies the length
block described
(400H)'
NOTE: The block length may
or
PAGE
PAGE CODE (Byte 0, Bits 5-0) - Pages are optional; they
immediately following the block descriptor. The mode parameters
having to specify all Mode
the minimum unit that can
time a page
be
set to
any
The pages
example,
determine drive behavior during a data handling error.
page, as are the bits which tum on/off error
by
the
block descriptor. For
2048
(800H)' The default block length
be
altered without reformatting the drive or affecting stored data.
the
ProDrive
, allowable values are 512 (200H)'
is
512 (200H)'
DESCRIPTOR(S):
may
be included
are divided into pages to avoid
Parameters each time a MODE SELECT command
be
specified
is
referenced,
all
parameters
acceptable values; non-changeable parameters must
are
numbered for reference.
Page
1 contains the Read/Write Error Recovery Parameters. These are the parameters which
in
a MODE SELECT or MODE SENSE command. Each
on
that page must
Each
page
contains parameters grouped
detection~
be
specified. Changeable parameters
be
set
to
The
Retry Count Parameter
and determine if soft errors are reported.
in
zero.
by
the
block descriptor.
of
the drive
bytes
of
each logical
in
any order,
is
issued. A page
by
functionality. For
is
located
medi~m
to
a
1024
is
may
on
this
ProDriv~
The
supports the
Page
OIH
02H
03H
04H
37H
39H
foUowing
Description
Read/Write Error
Disconnect/Reconnect Control Parameters
Direct Access Device Format Parameters
Rigid Disk Drive Geometry Parameters*
Quantum Unique Control Parameters
Quantum Unique Drive Control Parameters
* Read-only. Can only be referenced via
PAGE LENGTH (Byte
with the first byte
the value returned
of
by
CONDITION status with a sense key
I)
- Indicates
flags or values
the ProDrive
pages:
Recovery
the
number
and
continuing consecutively. The page length must be set
in
the MODE SENSE Page Length byte. Otherwise, a CHECK
of
ILLEGAL REQUEST will result.
Parameters
the
MODE
of
bytes
SENSE command.
of
the page that will
follow~
beginning
to
SCSI Programming Guidelines
5·43
Page 84
Section 5 SCSI Programming Guidelines
5.11.10.3 Error Recovery Parameters. Page Code 1 H
Bit 7
Byte
o
1
2
3
4 CORRECTION SPAN
5
6
7
RESERVED=O
AWRE I ARRE
6
5
PAGE
1B
I
HEAD
DATA
STROBE OFFSET COUNT = 0
RECOVERY TIME LIMIT = 0
DCR - DISABLE CORRECTION (Byte 2, Bit
transferred without correction, whether
be
that the data will
correction, although retries will still
ignored. The default is zero.
corrected
if
possible; uncorrectable data will
DTE - DISABLE TRANSFER
ProDrive will create the CHECK CONDITION status immediately upon detection
PER (bit 2
error
set to zero enables data transfer for any data which can
Recovery
If
PER is zero,
of
byte 2) is also set to one. Data transfer to the initiator will be terminated; the block in
mayor
may not
Hags. Any errors that would
be
transferred to the initiator dependingon the setting
or
RC is one, this bit is ignored. The default is zero.
or
not it is possible to correct it. A OCR bit
be attempted.
ON
ERROR (Byte
be
4
LENGTH = 6H
RC
I
RETRY
posted are not posted until the transfer length is exhausted.
COUNT
OFFSET COUNT = 0
If
3 2 1 o
PAGE
CODE = 1 H
EEC
I
0)
- Set
to
RC (bit 4
2,
Bit
be recovered within the limits
PER
I
one indicates that the data will
be
transferred with no attempt at
of
byte 2) is set to one, this bit is
1)
- Set to one indicates that the
I
of
the TB bit. A DTE bit
DTE
of
zero indicates
of
an error,
of
the Error
I
OCR
be
if
PER - POST ERROR (Byte 2, Bit
create the CHECK
Error Recovery
Recovery
depending on the error and state
one will enable reporting
sense key.
error,if no unrecoverable error occurred, it will report the last block with recovered error. The default
is zero.
Hags
If
CONDITION status for errors recovered within the limits established by the other
Hags. Recovery procedures exceeding the limits established by the other Error
will
be
posted. The transfer may terminate prior to exhausting the transfer length
of
of
the CHECK CONDITION status for detected errors, with the appropriate
multiple errors occur, the sense data will report the block address
EEC - ENABLE EARLY CORRECTION (Byte 2, Bit 3) -
ProDrive will use its ECC algorithm
are detected.
be
uncorrectable. Seek
to
system are not affected by the value
will use its normal recovery procedures when an error occurs. (See Appendix A for information on
ECC.)
5-44
SCSI
It will not perform read retries before applying correction unless it determines the error
or
positioning retries and the recovery procedure retries
If
the
RC
bit is one, this bit is ignored. The default is zero.
Programming
Guidelines
2)
-
Set
to zero indicates that the
the other Error Recovery Flags. A PER bit (bit 2
Set
if
two consecutive equal error syndromes (non-zero syndromes)
of
this bit. An EEC bit set to zero indicates that the ProDrive
ProDrive
of
of
the unrecoverable
to one indicates that the
of
the message
will not
byte 2) set to
Page 85
Section 5
SCSI Programming Guidelines
RC -READ
the requested length without adding delays which would increase data integrity, i.e., delays caused by
the
ProDrive', error recovery schemes. Thus, to maintain a continuous flow
delays, the
CHECK
error recovery are acceptable during data transfer. The default is zero.
TB -TRANSFER
set to one, indicates that the failing block data (recovered
initiator. A
transferred to the initiator.
TB
is checked regardless
ARRE -AUTOMATIC
one
indicates that the ProDrive will enable automatic reallocation
the
automatic reallocation is similar
initiated
two
consecutive retries. (See Appendix A.)
will not perform automatic reallocation
is
zero.
A
WRE -AUTOMATIC
supported by ProDrive. Must be set to zero by the initiator.
RETRY
data
errors by rereading before applying correction.
CONTINUOUS
(Byte
2,
Bit
4)
-
Se~
to one instructs the
ProD
rive
of
data and avoid
ProDrive will send data which may be erroneous; ignored errors will not create the
CONOmON
TB
by
the ProDriJle when a hard error is encountered, i.e., same non-zero
COUNT
bit
of
status.
BLOCK
zero, when
of
(Byte
2) -The
An
(Byte
If
DTE
the state
READ
WRITE
RC bit set to zero indicates that time-consuming operations for
2,
Bit
5)
- Set
to
one,
if
DTE
bit
(bit 1
of
byte 2) is also
or
unrecoverable) will be transferred to the
OTE
bit is set to one, indicates that the failing block will not be
is zero,
or
RC
is one, this
of
OTE. The default is zero.
REALLOCATION
to
the function
of
bad blocks.
REALLOCATION
number
of
the REASSIGN BLOCKS command,
An
ARRE
If
of
times the ProDrive will attempt to recover from
The
default is 8.
bit
is ignored.
ENABLED
of
bit set to zero indicates that the ProDrive
RC is one, this bit is ignored.
ENABLED
On
(Byte
bad blocks.
ECC
(Byte
unrecoverable errors,
2,
Bit
The
execution
syndrome on
2,
Bit
to
transfer
6) -Set
but
The
default
7) -Not,
of
is
to
CORRECTION
which correction may
SPAN
be
(Byte
4)
attempted.
- Specifies the size in bits
It
can be set to values from 0-11; the default is 11.
of
the largest read
data
NOTE: The Head Offset Count, Data Strobe Offset, and Recovery Time Limit (Bytes 5 - 7) are not
supported
The
following table summarizes the valid modes
by
ProDrive.
of
operation on the ProDrive.
error
on
SCSI
Programming
Guidelines
5-45
Page 86
Section 5
SCSI Programming Guidelines
EEC
0 0
0
0
0
0
0
0 1
PER
0
0
0
DTE
DCR
0 0
0
1
0 0 Same
0 Same
0
0 Read retries are attempted until good data
Descril!tioD
Nonnal error recovery procedure. Read retries are attempted until
good data is read, a stable syndrome is obtained,
if
is exhausted. ECC is invoked
possible. Complete data
error
is
encountered. Only uncorrectable errors are reported.
as (0,0,0,0) except all data errors (recoverable and
unrecoverable)
the data transfer is completed.
as
recovered via
completed.
is
obtained, or the retry count is exhausted.
invoked if correction is possible. Data transfer is stopped upon
error detection and
are
(0,0,0,0) except all data errors
read
transfer occurs unless an uncorrectable
is
reported.
reported.
retries
all data errors
needed when correction is
data transfer is stopped and
A recoverable
are
is
reported after the data transfer is
are
reported.
or
the retry count
is
attempted.
error
is reported
reported. A data error
is
read, stable syndrome
If
needed, ECC is
an
If
read
after
0
1
1
1
I 1
I 1
1
1
Same
as
1
retries are not successful, the error
0
0 0 1 Invalid Request
0
0 1
1
0 0
0 0
0
1 .
1
0
1
0
1
ECC is invoked immediately
uncorrectable, read retries
stable syndrome is obtained, or the
Complete data transfer
encountered. Only unrecoverable errors are reported.
Invalid Request
Invalid Request
Same
error is reported
Invalid Request
Same
detection (recoverable and unrecoverable) and
reported.
Invalid Request
(0,1,1,0) except no ECC correction
as
(1,0,0,0) except all data errors
as
(1,0,0,0) except data transfer
is
reported
if
correction
are
attempted until good data
retry count is exhausted.
occUrs
unless
an
are
after
the data transfer is completed.
is
is
attempted.
as
unrecoverable.
is
possible.
unrecoverable error is
reported. A recoverable
stopped upon error
all data
If
is
read, a
errors
If
error is
are
read
5·46
SCSI
Programming
Guidelines
Page 87
Section 5 SCSI Programming Guidelines
5.11.10.4 DjsconnecUReconnect Control Parameters. page Code
Bit
Byte
0 RESERVED
1
2
3
4-5
~7
8-9
10-11
Buffer Full Ratio (Byte 2) - Indicates
reconnecting, for commands requiring data transfer
required data). The
empty). The buffer full ratio value represents the percentage
reconnection, i.e., 255 (FFH) representslOO% full, 128
bit is equal to 1/256th
must be transferred
7
(MSB)
_<MSB)
(MSB)
6
5
I
=0
PAGE
BUPER
BUFER
BUS
INACTIVITY LIMlT = 0
DISCONNECT TIME LIMIT = 0
CONNECT TIME LIMIT = 0
to
ProDril'e disconnects
of
the maximum buffer size. The default value is 0
to
the buffer before reconnection.
4
I
LENGTIi =
FULL
EMPTY,RATIO
RESERVED
the ProDrlve how full the buffer must
to
on
a
read
when there is no data in the buffer (buffer is
3
I
PAGE
CODE = 2H
AH
RATIO
the initiator (unless the buffer contains all the
of
the buffer that will fill prior to
(80H) represents 50% full, and so on. Each
I
2
I
(~):
at least 512 bytes
1
2H
be
0
I
(LSB)
(LSB)
~B)
prior to
Buffer Empty Ratio (Byte
to reconnecting to fetch more
buffer can hold all the required data). This value represents the percentage
empty, i.e., 255 (FFH) represents
bit represents 1/256th
be
completely empty before reconnection.
NOTES: Both the Buffer Full Ratio and the Buffer Empty Ratio are rounded (down
respectively) by the
logical block transfer.
None
of
of
the remaining bytes (4 through 11) is implemented on the ProDrivt.
3)
- Indicates to the ProDrivt how empty the buffer must
data, for commands requiring data transfer from the initiator (unless the
of
the buffer that will
100% empty, 128 (80JI) represents 50% empty, and so on. Each
the maximum buffer size. The default value is 255 (FFH): the buffer must
ProDrivt to the nearest multiple
of
512 bytes for commands requiring
or
up,
be
prior
SCSI
Programming
Guidelines
5·47
Page 88
Section 5 SCSI Programming Guidelines
5.11.10.5 Direct-Access Deyice Format Parameters. Page Code
B't
I
Byte
2 -3
I
0 RESERVED
I
4
5 ALTERNATE SECTORS PER
6
7
8
9
7
(MSB)
(MSB)
(MSB)
(MSB)
6
=0
I
AL
AL TERN A
AL
ALTERNATE
5 4
PAGE CODE = 3H
PAGE LENGTH = 16H
Handlin2 of Defects Fields
TRACKS PER
TERNA
ALTERNATE
TERNA
TE
TE
TE
TRACKS PER VOLUME = 0
SECTORS PER
TRACKS PER ZONE = 0
TRACKS PER ZONE = 0
TRACKS PER VOLUME = 0
ZONE
Track Format Field
3 2
ZONE
= 0
ZONE
= I H
3H
1 o
(LSB)
(LSB)
eLSB)
(LSB)
to
11
12
13
14
15
16
17
18
19
20
21-23
(MSB)
(MSB)
(MSB)
(MSB)
(MSB)
SSEC= 1 I
SECTORS PER
SECTORS PER
TRACK = 0
TRACK
Sector Format Fields
A BYTES PER PHYSICAL SECTOR =02H
OAT
DATA BYTES PER PHYSICAL SECTOR =0
INTERLEA VE = 0
HSEC=O
INTER LEA
TRACK SKEW FACTOR = 0
TRACK
CYLINDER SKEW FACTOR = 0
CYLINDER
I
RMB=O
SKEW FACTOR = 07H
D'
rive
I SURF=O I
RESERVED = 0
SKEW
ype
T
VE
= 1 H
FACTOR =
F'
Id
Ie
INS=O
= 0
OFH
I
(LSB)
(LSB)
(LSB)
(LSB)
(LSB)
RESERVED=O
5-48
SCSI
Programming
Guidelines
Page 89
Section 5
SCSI
ProQ,amminQ
Guidelines
HANDLING
TRACKS PER ZONE (Byte 2·3) - Indicates the number
ProDri~e.
in zone size will be effective after the FORMAT
ALTERNATE SECTORS PER ZONE (Bytes 4.5) - Indicates
deallocate one sector per zone from the initiator addressable blocks during
comm~d.
ALTERNATE TRACKS PER ZONE (Bytes 6·7) - Set to zero; the
allocate alternate tracks.
ALTERNATE TRACKS PER VOLUME (Bytes 8-9) - Set
allocate alternate tracks.
TRACK
SECTORS PER TRACK (Bytes 10-11) - Indicates the number
ProDri~e
number
SECTOR
OF
DEFECTS
The
default value is six. This value is the only changeable field in page
These sectors will
FORMAT
allocates per disk track.
of
sectors per track (28
FORMAT
FIELD:
FIELDS:
FIELDS:
of
tracks
per
defect zone on the
UNIT command is executed.
that
the FORMAT UNIT
be
available as replaceable sectors for defective sectors.
to
zero; the
of
physical sectors the
The
value
of
or
zero indicates that the
35).
ProDri~e
the
ProDri~e
DATA BYTES PER PHYSICAL SECTOR (Bytes 12-13) - Indicates the number
bytes the
block size in the block descriptor section
ProDri~e
per
ProDri~e
set an equal number
physical sector.
will allocate
of
per
physical sector. This value may. be different than the logical
of
the MODE SELECT data.
sectors per track accordingly. The
This
implies that the
ProDri~e
3H'
A change
ProDri~e
ProDri~e
has a variable
has 512 data bytes
will
does not
does not
of
data
INTERLEAVE (Bytes 14·15) -
The
ProDri~e
has an interleave factor
TRACK SKEW FACTOR (Bytes 16·17) - Indicates the number
of
the last logical block
cylinder. This field is set to 7 for the
CYLINDER SKEW FACTOR (Bytes 18-19) -Indicates the
between the last logical block
cylinder. This field is set to15 for the
SSEC - SOFT SECTOR (Byte 20, Bit
that it uses soft-sector formatting.
HSEC • HARD SECTOR (Byte 20, Bit
ProDrive does not use hard sector formatting.
RMB - REMOVABLE (Byte 20, Bit 5) -
10gica1
unit is not removable.
SURF - SURFACE (Byte 20, Bit
progressive addresses
cylinder.
INHIBIT SAVE (INS) (Byte 20, Bit 3) -
the parameters
of
one track and the first logical block on the next sequential track
ProDri~e.
number
of
one cylinder and the first logical block on the next sequential
ProDri~e.
7)
- Always set
6)
- Always set
The
HSEC and SSEC bits
Set
to
zero for the
4)
-
Set
to zero to indicate that the
to
all sectors within a cylinder prior to allocating sector addresses to the next
Set
to
zero
the page defined by Page Code
4H
as a read only page.
to
one
to
zero, indicating that the
ProDri~e,
to
indicate that the ProDrive will save
of
one.
of
physical sectors between
of
of
physical sectors
for
the
ProDri~e,
are
mutually exclusive.
indicating that the
ProDri~e
will
the same
indicating
allocate
SCSI
Programming
Guidelines
5-49
Page 90
Section 5 SCSI Programming Guidelines
5.11.10.6 Quantum Unigue Control Parameters. Page Code 37H
B·t
Byte
I
6-15
PSM -PRESERVE
ProDrive will not clear the table
reset. A
default is zero.
SSM -SEND
the
the initiator. A
Data Transfer Request message. The default
I
0 RESERVED = 0
1
2 RESERVED
3
4
5 MAXIMUM PREFETCH
ProDrive will initiate sending the Extended Message (01) Synchronous Data Transfer Request to
7
PSM bit set to zero will cause all these parameters to be cleared when the drive
SYNCHRONOUS
SSM bit set to zero indicates that the initiator must initiate sending the Synchronous
6
=0
SYNCHRONOUS
5 4
I
PAGE LENGTH =
PSM
I
NUMBER
MINIMUM PREFETCH
of
synchronous mode parameters for all initiators when the drive is
MESSAGE
SSM
I
OF
CACHE SEGMENTS
RESERVED=O
MODE
(Byte 2, Bit 4) - Set to one indicates that
is
zero.
3
PAGE CODE = 37H
OEH
WIE
I
(Byte
2,
2 1 o
I
PO
I
PE
Bit 5) - Set to one indicates the
CE
J
is
reset. The
NOTE: The following parameters control the operation
Appendix A for a description
WIE -WRITE
segment stored
ProDrive will overwrite this segment in the cache on the next READ
one indicates that the
Setting WIE to zero preserves more data in the cache from READs, increasing the likelihood that the
data for subsequent READ requests will be
size and frequency
PO -PREFETCH
retain prefetch data in the cache; the originally requested read data will
data. A PO bit set to zero indicates that both original read data and prefetched data will be retained
the segment. The default is zero.
PE -PREFETCH
perform prefetching. A PE bit set to a value
bit must be set to one to enable use
CE -CACHE
caching on all
use the 64K RAM as a transfer buffer only. The default
NUMBER
segments to index in the cache, i.e., the number
8,
16.
Any other entry will result in a CHECK CONDITION status with a sense key
REQUEST. The default
INDEX:
in
the cache and indexed by the cache table. A WIE bit set to zero indicates that the
of
ENABLE
READS. A CE bit set to zero indicates that the ProDrive will disable caching and
OF
CACHE
ENABLE
ProDrive will treat this segment as
WRITE requests. The default is zero.
ONLY
ENABLE
is
of
DisCache, and more information on these options.
(Byte 2, Bit 3) - All data from WRITES create a cache
(Byte 2,
(Byte 2,
of
the PE bit. The default
(Byte 2
SEGMENTS
four.
Bit
in
Bit
2) - Set to one indicates that the ProDrive will only
Bit
0) - Set to one indicates that the ProDrive will activate
(Byte 3) - Indicates to the ProDrive the number
of
Quantum's unique DisCache feature. See
or
WRITE. A WIE bit set to
if
it had been generated by a READ.
the cache; the magnitude
1)
- Set to one indicates that the ProDrive will
of
zero indicates that no prefetching will occur. The CE
is
is
one.
of
entries
in
the cache table. Valid entries are
of
this increase depends on the
be overwritten with prefetch
one.
of
in
of
1,2,4,
ILLEGAL
5-50
SCSI
Programming
Guidelines
Page 91
Section 5
SCSI Programming Guidelines
MINIMUM PREFETCH (Byte
on
blocks to prefetch
outside this range
REQUEST. The default value
MAXIMUM PREFETCH (Byte 5) - Indicates
logical blocks to prefetch
value outside this
REQUEST. The default
a cache miss for a
will
result
on
range
will result
is
4)
- Indicates
in a CHECK
is
one.
a cache miss
in a CHECK
16.
to
the
ProDril'e the minimum number
READ
for a READ
command. The valid range
CONDITION status with a sense
to
the
ProDril'e the maximum number of
command.
CONDmON status
The
valid range
with
is 0 to
a sense
key
is 0 to
key
5.11. 1 0.7 Quantum UniQue Drive Control parameters. page Code
Bit 7
Byte
0
1
2
3
4-7
DIO • DISABLE IDENTIFY OUT (Byte 2, Bit
will
DQ!
DIO bit set to zero indicates that the ProDrive
message
require
to
be
RESERVED
DIO
DDIS
an
IDENTIFY message
able
to
6 5
I
=0
DII
DELDIS
disconnect.
PAGE
fDB
RESERVED=O
from
The
default
4
I
PAGE
LENGTH = 6H
j
RUEE
RESERVED=O
7)
the
initiator
will
require
is
zero.
3
CODE = 39H
FDPE
SSID
- Set
to
to
be
able
the
initiator
1
1
I
R::O
one indicates that the
to
disconnect
to
DUA
I
SCSIADR
and
send the IDENTIFY
of
logical
128;
any
value
of ILLEGAL
128;
any
of ILLEGAL
39J:l
0
I
DRT
1
ProDrive
reconnect. A
DII • DISABLE IDENTIFY IN (Byte 2, Bit
will
D.Q!
send
an
IDENTIFY message after reconnecting
the
that
FDB
applications using the ProDril'e.
Q200 Series
RUEE
Set
ARRE bit in Page 1 of the Error Recovery Parameters
to a
will result
code set to
indicates that the
determined
ERROR - Uncorrectable Data Error
FOPE -
ProDril'e
user-accessible sector
zero indicates that the ProDril't
command. Issuing a FORMAT UNIT command
to
NOTE: Bit 3
ProDril'e
• FAST DEASSERTION
• REALLOCATE UNCORRECTABLE ERROR ENABLED (Byte 2, Bit
to
one indicates that the ProDril't
new
block and a
in a MEDIUM
FILL
will
zero;
users should back
will
send
the
IDENTIFY message after reconnecting. The default is zero.
OF
BUSY
It
is included to maintain software compatibility with Quantum's
TM
disk drives.
will
automatically reallocate uncorrectable hard errors if the
new
ECC
(one that
(re-allocated uncorrectable data read) error
AAH.
Any
write to the
ProDril't will
to
be
uncorrectable.
DATA PATTERN ENABLED (Byte 2, Bit 3) - Set
write the data pattern specified
of
the drive
of
byte 2
is
not
In
up
data prior
reserved;
is
correct
new
block
attempt automatic reallocation if the hard error encountered
this case, a
will
result. The default
when a FORMAT
will
ignore the information
to
formatting.
it
must
be
6)
(Byte 2, Bit
for
will
clear this condition. A RUEE bit set to zero
CHECK
in
Byte 2 of the FORMAT
will
set
to
- Set
to
one indicates that the
to
an
initiator. A
5)
- Not used nor required
is
set.
The uncorrectable (bad) data
this data)
CONDmON
UNIT
typically cause loss of data, even
The
zero.
is
appended. Reading the
is
zero.
command
in
Byte 2 of the FORMAT UNIT
default
DII
bit set
with
Sense
key
with
a sense
UNIT
is
executed. A FDPE bit set
is
zero.
key
to
one indicates that the
command into every
ProDrive
to
zero indicates
is
new
set
to
3, and sense
of
MEDIUM
if
FDPE
by
4)-
written
block
is
is
to
set
SCSI Programming Guidelines
5·
51
Page 92
Section 5
DUA
SCSI Programming Guidelines
- DISABLE UNIT ATTENTION (Byte 2, Bit
1)
- Set to one indicates that the
ProDrive will not issue a CHECK CONDITION status with the UNIT ATTENTION sense key on
the first command after a reset. The first command issued after the reset condition will be executed as
usual. A
has been powered-on or reset (by a BUS DEVICE RESET message or a "hard" RESET condition).
The default
DUA bit set to zero indicates that the unit attention condition will exist after the ProDrive
is
zero.
DRT - DISABLE RESELECTION TIMEOUT (Byte 2, Bit
ProDrive will not timeout during a reselection request. A DRT bit set to zero indicates that the
the
ProDrive will clear the bus
(250 msec). The default
period
if
there
is
zero.
is
no BSY response from the initiator after a selection time out
0)
- Set to one indicates that
DDIS - DISABLE DISCONNECTION (Byte 3, Bit 7) - Set to one prevents disconnection
and reconnection during a data transfer (READ and WRITE). The initial disconnection due to the
of
implied seek
WRITE command, the
DDIS bit set to zero indicates no suppression
DELDIS - DELAY OF DISCONNECTION (Byte 3, Bit
applications using the
Q200
Series disk drives. .
a READ command is not prevented, but no other disconnects will occur. For a
ProDrive will disconnect after all data has been transferred into the buffer. A
of
disconnection. The default value is zero.
6)
- Not used nor required by
Pro.Drive.
It
is included to maintain software compatibility with Quantum's
SSID - SOFTWARE SELECT ABLE ID (Byte 3, Bit 3) - Set to zero indicates that the
SCSI ID will be determined by the value set by the jumpers on the drive PCB at all times. An
drive
SSID bit set to one indicates that the drive SCSI ID will be determined by the value
bits (bits 0-2
one, the
power-up, the
bits will determine the SCSI ID; otherwise, the SCSI ID will be determined by the jumpers on the
PCB. The default value
of
byte 3); the value set by the jumpers will
SCSI ID will not be altered until the next RESET
SSID bit is set to one (i.e., it was previously set and saved to the disk), the SCSIADR
set to zero, the SCSI ID is determined by jumpers on the PCB. See
of
SSID, above. The default
is
zero.
of
the SCSIADR
If
upon initial
if
SSID (bit 3
of
5.11.11
The RESERVE command (Table 5-25) is used to reserve a logical unit for the use
another specified (third party) SCSI device. This command requests that the drive be reserved for the
exclusive use
command from the same initiator
DEVICE RESET message from any initiator,
will not be granted
the drive when it is currently reserved for that initiator; in that case, the reservation identification and the
extent list length will be ignored.
If
the drive is reserved for another initiator, it will respond by either returning a RESERV
CONFLlcr
If,
after honoring the reservation, any other initiator then subsequently attempts to perfonn any command
on the reserved drive (other than a
be
may
5·52
queued), the command will be rejected with RESERV
RESERVE COMMAND: OPCODE = 16(hex)
of
the initiator
of
the initiator (or third party) until the reservation is superseded by another valid RESERVE
or
is released by a RELEASE command from the same initiator, a BUS
or
a "hard" RESET condition. A logical unit reservation
if
the drive is reserved by another initiator. It is permissible for an initiator to reserve
AnON
status or,
SCSI
if
di~connection
Programming
Guidelines
is allowed, by queing the reserve request and disconnecting.
RELEASE command which will be ignored, or a reserve command which
AnON
CONFLIcr
status.
or
Page 93
Section 5 SCSI Programming Guidelines
TABLE 5-25
Bit
Byte
0
1
2 RESER
34
5
EXTENT • EXTENT RESER V ATION (Byte 1, Bit
is set to one, the
with the ILLEGAL REQUEST sense key.
3RDPTY • THIRD·PARTY RESERVATION (Byte 1, Bit 4) - This is an option for the
RESERVE command that allows an initiator to reserve a logical unit for another
intended for use in multiple-initiator systems that use the
5.11.12
The RELEASE command (Table 5-26)
error for an initiator to attempt to release a reservation that is not currently active.
7
(MSB)
VU=O
ProDrive
6
I
LUN=O
1
I
will reject the RESERVE command with CHECK CONDITION status
RELEASE COMMAND: OPCODE = 17(hex)
is
RESERVE
5
4
J
OPCODE=
13RDPTY
VA
nON
IDENTIFICATION =
EXTENT LIST LENGTH =
RESERVED
used to release a previously reserVed logical unit. It is not an
Command
3
I
16H
I
COpy
I
3RD PARTY DEVICE ID
xx
xx
=0
0)
- Must
command.
2
I
I
be
set to zero.
1
F
SCSI device.
0
I
I
EXTENT
(l.$B)
L
I
If
this bit
It
is.
TABLE 5-26
Bit
Byte
0
1
2
3-4
5
EXTENT • EXTENT RESERVATION (Byte 1, Bit
set to one, the
with the ILLEGAL REQUEST sense key.
3RDPTY - THIRD·PARTY RESERVATION (Byte 1, Bit
RESERVE command that allows an initiator to release a logical unit that was previously reserved via
the
third-pany reservation option. It is intended for use in multiple-initiator systems that use the
COpy
command.
set to one, the
using the third-party reservation
third-party device ID field.
7
I
VU=O
ProDrive
If
the
ProDrive
6
I
LUN=O
RESERV
I
will reject the RELEASE command with CHECK CONDITION status
third-party bit is zero, the third-party release option is not requested.
will release the specified logical unit, but only
option-by the same initiator for the same SCSI device specified in the
RELEASE
5
J
OPCODE=
13RDPTY
AnON
RESERVED=O
RESERVED=O
Command
4
J
17H
I
IDENTIFICA
0)
J
2
J
3
3RD PARTY DEVICE ID
nON
I
- Must
be
set to zero.
4)
- An option for the
if
the reservation was made
I
F
0
1
I EXTENT
L
I
If
this bit is
If
it is
SCSI
Programming
Guidelines
5-53
Page 94
Section 5 SCSI Programming Guidelines
5.11.13
The MODE SENSE command (Table 5-27) provides a means for the target to report its peripheral device
parameters to the initiator. This command complements the
MODE SENSE COMMAND: OPCODE = 1A(hex)
MODE SELECT command.
5.11.13.1 MOPE SENSE Command Structure
TABLE
Bit 7
Byte
0
I
2 PCF
3
4
5
PCF -PAGE
values to
be
LUN=O
VU:::(}
CONTROL
returned. There are four options:
5-27 MODE
6 5 4
OPCODE=
I
I
RESERVED = 0
I
FIELD
ALLOCA
(Byte 2, Bits 7,6) - Defines the type
nON
RESERVED
SENSE
lAH
PAGE CODE
LENGTH
=0
Command
3
RESERVED=O
2 1
I
of
page parameter
o
F
I
L
Report Current Values
The page defined by the page code is returned to the initiator with fields and bits set to current values.
The current values are either:
• as set in the last succe&sfully completed MODE SELECT command
• identical to the saved values
or
reset.
Fields and bits not supported by the
Chanaeable Values (PCF = 01)
Report
The page defined by the page code is returned to the initiator with all fields and bits changeable by the
initiator set to ones. Fields and bits not allowed to
Report Default Values (PCF
The page defined by the page code is returned
(PCF = 00)
if
=
10>
no MODE SELECT commands were issued since the last power-up
ProDrive are set to zero.
be
changed by the initiator are set to zero.
to
the initiator with fields and bits set to the
ProDrive's default values (i.e. as shipped from the factory). Fields and bits not supported by the
ProDrive are set to zero ..
default parameter
Saved. Values (PCF = 11)
Report
The page defined by the page code is returned to the initiator with fields and bits set to saved values.
The saved values are either:
• as set in the last successfully completed MODE SELECT command with the SP (Save Parameters)
bit
O.
byte 1
• identical to the Default values if no MODE SELECT commands with the SP bit set were ever
issued (and completed successfully).
or
of
the CDB set to one.
If
there is confusion over whether a returned value
a nonsupported parameter, the initiator can examine the changeable values.
of
zero indicates a
Fields and bits not supported by the
5·54
SCSI
Programming
Guidelines
ProD rive are set to zero.
Page 95
Section 5
SCSI Programming Guidelines
PAGE CODE (Byte
returned indicates the number
specified in the
command.
MODE
The
SENSE
Page
-
OIH
02H
03H
04H
37H
38H
39H
3FH
The
MODE
SENSE data provides information to the initiator
2,
Bits 5-0) -
Page Length field (Byte 1
page code specifies the particular page information to be returned to the initiator in the
data. The ProDrive supports the following pages:
For
all the above options, the Page Length byte value
of
bytes the ProDrive supports within each page. This value must be
of
each Page Descriptor) when issuing the
Description
Read/Write Error Recovery Parameters
Disconnect/Reconnect Control Parameters
Direct-Access Device Format Parameters
Rigid Disk Drive Geometry Parameters (valid for
command
Quantum
Read-only; included for compatibility with
Quantum
Return all pages to
only)
Unique Control Parameters
Unique Drive Conttol Parameters
the
initiator (valid for
on
ProDrive's Format Parameters and Drive Geometry Parameters,
If
are specified.
will be returned to the initiator in the
MODE
CHECK
SENSE
CONDmON
Page 3FH is specified, information from all pages implemented by the ProDrive
MODE
command.
Spedfying
status with Illegal Request sense key.
SENSE data. This page code is only valid in the
page code 04H in a MODE
MODE
Q200
Series drives
MODE
the configuration
if
SENSE
Pages
03H
SELECT
and
command will result in a
MODE
SENSE
command only)
of
04H,
SELECT
the
respectively,
NOTE:
ALLOCATION LENGTH (Byte
for returned
will be transferred. Any other value indicates the maximum number
transferred.
been transferred
whichever is less.
MODE SENSE DATA -
followed
of
these data are the same as for the corresponding
modified
If
the allocation length is set
page numbers are accepted.
code will be rejected. This allows the initiator to receive the 4-byte header
descriptor without receiving specific page information.
MODE
The
by
an
by
the option specified in the page conttol field
SENSE data. An allocation length
ProDrive will terminate the
or
when all available
The
MODE
eight-byte block descriptor, then zero
tol2
bytes
or
less. the page code field is ignored and illegal
If
the allocation length is greater than 12 bytes,
4)
- Specifies the number
of
MODE
SENSE
DATA
SENSE data have been transferred to the initiator,
IN phase when allocation length bytes have
data (Table 5-28) contain a four-byte header,
or
more "pages".
MODE
of
zero indicates that
SELECT data (Section 5.11.10.2), as
of
COB
byte 2.
an
illegal page
and
8-byte block
bytes the initiator has allocated
no
MODE
of
bytes that should be
The
meanings and organization
SENSE data
SCSI
Programming
Guidelines
5-55
Page 96
Section 5 SCSI Programming Guidelines
5.11.13.2 MODE SENSE Data
Table 5-28 MODE
Bit 7
Byte
0 SENSE
I
2
3
0 DENSITY CODE = 00
1-3
4
5-7
0
WP=O
(MSB)
(MSB)
PS
I
J
6
R=O
5
MEDIUM
RESERVED
BLOCK
DESCRIPTOR LENGTH = 8
Block Descriptor
NUMBER OF BLOCKS = 0
RESERVED
BLOCK LENGTH
Page Descriptors
I
4
DATA
TYPE = 0
SENSE
LENGTH
=0
=0
3
PAGE
Data
CODE
2
1 o
(LSB)
(LSB)
1
2
to
n
REFER
TO
SENSE DATA LENGTH (Byte 0) - Specifies the length in bytes
SENSE data that is available to be transferred during the DATA IN phase. The SENSE DATA length
does not include itself.
WP
- WRITE PROTECTED (Byte 2, Bit 7) - Always set to zero for the ProDrive,
indicating that the drive is write enabled.
BLOCK DESCRIPTOR LENGTH (Byte 3) - Specifies the length in bytes
descriptors. It is set to eight for the
PAGE
DEFINITION
ProDrive.
PAGE
LENGTH
AND
SECTION 5.11.10
of
the following MODE
of
all the block
BLOCK DESCRIPTORS: The block descriptor specifies the medium characteristics for the drive
of
with a density code, number
meanings as the corresponding fields in the
PAGE
PS
indicates that the supported parameters
to one indicates that the supported parameters
with parameters that can be changed by the user can be saved on the
DESCRIPTORS:
- PARAMETERS
blocks, and block length. These characteristics have the same
MODE SELECT parameter list (Section 5.11.10.2).
SA
VEABLE (Byte
0,
Bit 7) - Set to zero in each page header
of
that page cannot be saved by the ProDrive. A PS bit set
of
the page can be saved by the ProDrive. All pages
ProDrive.
5·56
SCSI
Programming
Guidelines
Page 97
Section 5
SCSI
Programming Guidelines
5.11.13.4 Rigid Disk Driye Geometry Parameters. page Code
Bit
Byte
0
1
2
3
4
5
6--8
9
10
11
12-13
7
RESERVED
(MSB)
(MSB)
(MSB)
(MSB)
6
I
= 0
STARTING
STARTING
STARTING
STARTING
5
4
I
PAGE
LENGTH = 12H
NUMBER
NUMBER
NUMBER
NUMBER
CYLINDER -WRITE
CYLINDER -REDUCED
CYLINDER -
CYLINDER -REDUCED
OF
CYLINDERS
OF
CYLINDERS = 3H
OF
CYLINDERS
OF
HEADS
REDUCED
DRIVE
STEP
3
I
PAGE
I
CODE = 4H
= 0
= 42H
(3H
or 6 H)
PRECOMPENSATION
WRITE
WRITE
WRITE
RATE
CURRENT
CURRENT =
CURRENT = 4EH
2
1
4J:l
= 0
= 0
1
02H
0
I
(lSB)
(lSB)
(LSB)
(LSB)
14-16
17-19
NOTE:
The write precompensation starting cylinders, reduced write
fields
are handled by the embedded SCSI controller on the
LANDING ZONE CYLINDER (Bytes 14-16) - Specifies two's complement location where
the target will position the disk heads prior to stopping the spindle with the START/STOP
command. This field is only meaningful with drives which do not automatically seek to the Landing
Zone before stopping the spindle. The
Zone, using AIRLOCK, upon disconnection
(MSB)
The ProDrive 4OS/80S disk drives have 834 cylinders.
The
ProDrive 40S has three heads; the ProDrive 80S has six heads.
LANDING
RESERVED
ZONE
CYLINDER
= 0
current starting cylinders, and drive step rate
= 0
ProDrive.
ProDrive automatically parks the heads in the Landing
of
power.
(LSB)
UNIT
SCSI Programming Guidelines
5-57
Page 98
Section 5 SCSI Programming Guidelines
5.11.14
The START/STOP UNIT command (Table 5-29) requests that the logical unit
further operations.
Byte
0
1
2-3
4
5
START/STOP UNIT COMMAND: OPCODE = 1B(hex)
be
enabled or disabled for
Bit
TABLE
7
LUN=O
VU=O
5-29·
6
START/STOP
5
OPCODE=
RESERVED
I
4
IBH
I
=0
RESERVED=O
RESERVED
UNIT
RESERVED=O
3
=0
Command
2
1
F
1
IMMED - IMMEDIATE (Byte 1, Bit 0) - Set to one indicates that status will be returned as
soon as the operation is initiated. An
after the operation is completed.
IMMED bit set to zero indicates that status will be returned
START (Byte 4, Bit 0) - Set to one requests that the drive be started. A START bit set to zero
be
requests that the drive
error; there will be no effect on the drive
stopped. A request to start
if
the requested condition is the same as its current condition.
or
stop the ProDrive may be repeated without
o
IMMED
START
L
NOTES: A shorting plug (labeled WS) on the ProDrive PCB disables/enables the auto-start
If
option.
the shorting plug
drive for operation; this configuration
sequencing
When the
motor and actuator are disabled and do not draw appreciable currents.
requires up to
TEST UNIT READY, Section
the shorting plug
is
installed, a START/STOP UNIT command is required to enable the
or'devices (usually to limit power supply surge currents).
ProDrive is stopped, due to a START/STOP UNIT command, both the spindle
30 seconds before commands requiring disk access can be executed. See
is
not installed, no command is required to start the drive.
is
recommended only for systems requiring power
Starting the drive
5.11.1, above.
If
5-58
SCSI
Programming
Guidelines
Page 99
Section 5
SCSI Programming Guidelines
5.11.15
The SEND DIAGNOSTIC command (Table 5-30) requests the drive to perfonn diagnostic tests on itself.
This command is usually followed by a RECEIVE DIAGNOSTIC
SELF
TEST
SEND DIAGNOSTIC COMMAND: OPCODE = 1D(hex)
RESULTS command, except when the
(bit 2
of
byte 1) is set to one.
5.11.15.1 Command Structure
TABLE 5-30
Bit 7
Byte
0 OPCODE=
1
2
34
5
(MSB)
VU=O
SELF TEST (Byte
test.
If
the
self
test is requested, the parameter list length will
transferred.
otherwise, the command will
set
to
If
the
self
HARDWARE
6
J
LUN=O
1,
Bit
2)
test is successful, the command will
be
ERROR.
SEND DIAGNOSTIC Command
5
J
RESERVED=O
PARAMETER
I
-
Set
to
one
tenninated with a CHECK
4
I
11>}{
RESERVED
I
LIST
RESERVED
directs the PToDrive
3
I
= 0 TEST
LENGTH
= 0
be
be
tenninated with a
CONDmON
J
set
I
to
to
1
SELF
complete
zero and
status with the sense key
1
I
1
DEVOFL 1 UNITOFL
I
no
GOOD
I
F
I
its default
data will be
status;
0
(LSB)
L
self
DEVOFL • SCSI DEVICE OFF ·LINE (Byte 1, Bit
one
on
the ProDrive, the command will
sense key set will
be
set
to
ILLEGAL
be
tenninated with a
REQUEST
UNITOFL • LOGICAL UNIT OFF ·LINE (Byte
set
to
one
on
the ProDrive , the command will
the sense key will
PARAMETER LIST LENGTH (Bytes
list that will
that
no
data will
be
set
to
ILLEGAL
be
transferred during the
be
transferred. This condition will not be considered an error.
REQUEST
3-4)
DATA
OUT
5.11.15.2 Diagnostic Parameter List
VENDOR UNIQUE
(VU)
- Vendor Unique, format to
1)
- Not supported.
CHECK
with sense code invalid field.
1,
Bit
0)
be
terminated with a
with sense code invalid field.
- Specifies the length in bytes
phase. A parameter list length
be
defined.
CONDITION
- Not supported.
CHECK
If
this
bit
status; the
If
this
CONDmON
of
the parameter
of
zero indicates
is set to
bit
is
status;
SCSI
Programming
Guidelines
5-59
Page 100
Section 5
SCSI Programming Guidelines
5.11.16
The
READ
regarding the capacity
Byte
0
1
2-5
6-7
8
9
PMI
information returned in the READ CAPACITY
(in bytes)
descriptor block will be set to zero for this option.
READ CAPACITY COMMAND: OPCODE = 2S{hex)
CAPACITY command (Tahle 5-31) provides a means for the initiator to request information
of
the disk drive.
Bit
TABLE
7
5-31
(»
I
LUN=<>
(MSB)
VU:::()
VU:::()
• PARTIAL MEDIUM INDICATOR (Byte 9, Bit
of
the last logical block
LOGICAL BLOCK ADDRESS
of
the logical unit. The logical block address in the command
READ
5
I
OPCODE=25H
I
RESERVED
..
data will be the logical block address and block length
CAPACITY Command
4
RESERVED=O
RESERVED
I
=0
3
RESERVED
=0
0)
2
I
I
=0
I
- Set to zero indicates that the
1
F
0
bR=O
(LSB)
PMI
L
A
PMI
bit set to one indicates that the information returned will be the logical block address and
block length (in bytes)
will be encountered. This logical block address will be greater than
address specified in the command descriptor block.
The
eight bytes
the
command.
Byte
~3
4-7
NOTE: .
of
READ
(MSB)
(MSB)
Due
to
the physical organization
system designer can predict the initial
Formatting assigns consecutive logical block addresses to sectors
exceptions. The designer can be relatively certain that records stored beginning at a cylinder
boundary will occupy contiguous physical sectors (skipping occasional defective sectors according
to
the defect map) and thus.will be optimally accessible. However, exceptions
grown defects and sector ID errors. Therefore it is recommended that the designer rely
READ
CAPACITY command to check for optimal file assignment.
of
the last logical block address, after which a substantial delay in data transfer
CAPACITY data shown in Table 5-32 will be sent during the DATA
TABLE
5-32
READ
DESCRIPTION
LOGICAL BLOCK ADDRESS
BLOCK LENGTH
of
sectors and logical block assignments
LBA
CAPACITY Data
for all cylinders with a high level
or
equal to the logical block
on
the ProDrive, the
of
confidence.
on
a cylinder, with only rare
do
occur due to
IN
on
phase
(LSB)
(LSB)
the
of
5·60
SCSI
Programming
Guidelines
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.