[0001] In a typical prior art moving-head disc drive, the data reading and recording transducer,
hereinafter referred to as the data head or head, is moved from one track to another
under servo control to ensure that the data head will stop directly over the target
track (e.g. US patent 35 34 344). Given practical acceleration limitations, the data
head carrier or actuator is typically accelerated at the maximum level possible until
half the total distance has been traveled, then decelerated until it is stopped over
the target track. An open-loop head position system is impractical because electrical
and mechanical perturbations will result in over-shoot and under-shoot of the target
track.
[0002] The acceleration, velocity and position profiles of such a conventional system are
shown in Figure 1. Combining the velocity and position curves, it is clear that the
velocity at any instant in time is proportional to the square root of the distance
yet to be traveled. Such proportionality is the principle of many conventional track
locating servos such as the one shown in Figure 2. Such servos typically include one
register for containing the target track information and another for containing current
track location, the latter being updated as the head moves. Update information is
obtained by counting track crossings from a glass encoder or dedicated, continuous
servo surface. The informational difference between these two registers represents
the distance yet to be traveled and is converted to an analog voltage which is proportional
to the distance to the target track. The desired velocity of the carrier is obtained
by taking the square root of the analog voltage which is then compared to the actual
velocity to derive a current proportional to the difference between the two velocities
for driving the motor.
[0003] For the conventional track locating system diagrammed in Figure 2, the position transducer
is a pulse generator which produces a pulse to increment or decrement the up/down
counter (or current track register) whenever a track center is crossed. Track centers
are obtained by detecting lines on a glass encoder attached to the structure for moving
the head, or by detecting specially written tracks on a dedicated surface of the disc
pack which is read by a separate servo head. However, such systems require a dedicated
servo surface or position transducers other than the data head itself. Moreover, such
systems define the relative position of the servo head to servo track, not of the
data head to data track. Other prior art systems use encoders on the head carriage.
In addition to expense, however, encoder systems define the relative position of the
casting to head carriage, not of the data head to data track.
[0004] The system shown in U.S. Patent 3 924 268 is typical of more recent prior art moving
head disc track locating systems. It describes a system, having track following information
recorded in the inter- sector gap between data sectors and read by the data head,
which is dependent on sensing the velocity of the transducer carriages while moving
to another track. In this case there is a primary and a low-mass secondary carriage
for supporting and translating the data head. The position of transducer carriages
is determined with respect to a reference plane by servo circuitry which includes
a register for storing a commanded track position, a counter which is incremented
or decremented relative to the reference plane as the transducer moves across data
tracks and a comparator for comparing the contents of the counter and register. The
low-mass secondary carriage to which the head is actually coupled, is used for fast
response movement to follow, for example, the radial runout of the track, such movement
typically being limited to a single track width.
[0005] Conventional track following systems, such as the one shown in Figure 3, employ rate
and position feedback in a continuous null-seeking analog servo system. The rate information
is obtained from a velocity transducer, and the position information from - one of
several possible transducers.
[0006] Position transducers may consist of an optical or magnetic encoder attached to the
same moving structure as the head, or a separate head which reads magnetic transitions
on the surface of the disc pack dedicated to servo information (servo surface). A
continuous, linear voltage-versus-distance signal (with zero volts at track center)
is derived from the encoder or separate head output.
[0007] In most prior art track following systems, the object is to center a data head over
a data track based on reference information derived from servo data written on another
servo surface. Thus, these systems depend on the stability, fidelity and integrity
of the mechanical linkages between the reference- and data tracks for assuring that
the data head are over data track centers. Such mechanical linkages are inadequate
at best owing to misalignments, uncompensated temperature coefficients and spindle
runout.
[0008] A track locating servo constructed according to the present invention servos on the
position profile of Figure 1 rather than on the velocity profile. Hence, the need
for an expensive velocity transducer is eliminated. Data relating to the current track,
the target,and maximum actuator acceleration and deceleration levels, is provided
to a microprocessor which mathematically generates a characteristic curve of position-versus-time.
[0009] The desired position is compared to the actual position. The error signal representing
the difference between the actual and desired position is processed by digital signal
processing circuitry which determines the linear actuator motor current, since no
direct velocity feedback is used.
[0010] No encoder or dedicated servo head and surface is required in the present invention
since position information for track locating is provided by the data head reading
track identifying addresses recorded on the data surface. Track identification data,
in the form of coded track addresses, are pre-recorded on the surfaces of the disc
in the gap between the sectors of data on each track (inter-sector gap hereafter).
The track addresses are sampled and stored and are updated as each inter-sector gap
is read by the data head.
[0011] For track following, again no remote reference exists since magnetic transitions
detected by the data head, to produce a tracking-signal, also have been written on
the data surface. These transitions are written in the inter-sector gaps but separate
from track addresses. The tracking signal is updated by reading the magnetic transitions
at each inter-sector gap. Again, the velocity transducer has been eliminated and,
for this mode, replaced by analog lead networks to compensate the servo loop. In addition,
the resolution of data head position is enhanced by adding data, derived from the
tracking signal produced by the track following servo, for determining which side
of and the distance from a track's center the data head is located to the coded track
address data produced by the track locating servo.
[0012] The microprocessor used in the present invention is located in the disc controller,
and otherwise would be idle while the drive is in track locating mode. Since the present
invention has no dedicated servo surface, data storage capacity is maximized. The
present system also has no velocity transducers or decoders, thus reducing manufacturing
cost.
[0013]
Figure 1 shows the acceleration, velocity and position profiles for conventional disc
drive head positioning systems.
Figure 2 is a block diagram of a typical track locating servo used in a conventional
disc drive head positioning system.
Figure 3 is a block diagram of a typical track following servo used in a conventional
disc drive head positioning system.
Figure 4 is an overall block diagram of a moving-head disc drive head positioning
system constructed according to the preferred embodiment of the present invention.
Figure 5 is a block diagram of the signal conditioner used in the head positioning
system of Figure 4.
Figure 6 is a block diagram of the track following data decoder used in the head positioning
system of Figure 4.
Figure 7 is a diagram of the track following and track address data as recorded in
the inter-sector gap of a disc used in the head positioning system of Figure 4.
Figure 8 is a block diagram of the track address decoder used in the head positioning
system of Figure 4.
Figure 9 is a block diagram of the actuator drive amplifier used in the head positioning
system of Figure 4
Figure 10 is a diagram of the tracking signal showing the points thereon corresponding
to track centers, and showing points thereon at which the recorded track addresses
change code.
Figure 11 is a diagram of the tracking signal of Figure 10 showing points thereon
at which the extended precision information changes.
Figures 12A-12C are flow charts of the algorithms used by the microprocessor of the
positioning system of Figure 4 to compute the position profile according to the present
invention.
Figure 13A is a characteristic curve of position-versus-time showing settling time
over target track in the positioning system of Figure 4 uncorrected for steady-state
track locating error.
Figure 13B is a characteristic curve of position-versus-time showing settling time
over target track in the positioning system of Figure 4 corrected for steady-state
track locating error.
[0014] Referring to Figures 4 and 5, the disc drive servos of the present invention comprise
microprocessor 40, signal conditioner 41, track following data decoder 42, track address
decoder 43, actuator drive amplifier 44, and data heads 46a and 46b carried by linear
actuator 45. Magnetic transitions, recorded in the inter-sector gap as shown, for
example at 71, in Figure 7, are detected by data head 46a and 46b as the inter-sector
gap passes beneath them. The differential signals produced by the data heads are amplified
by preamps 411a and 411b and one of the signals, as selected by head selector switch
412 in response to a head select command from microprocessor 50, is transmitted to
track following data decoder 42 via buffer 413 and filter 414.
[0015] In Figure 6, track following data decoder 42 comprises voltage- controlled-gain amplifier
421 for receiving the differential head signal from signal conditioner 41, signal
converter 422 for converting input signal from a differential signal to a single-ended
signal, that single-ended signal hereinafter referred to as the head signal, and pulse
detector 423 for initiating time base 424 in cooperation with GAP command from microprocessor
40. The GAP command is timed to activate time base 424 circuitry to process the head
signal at and during the time the inter-sector gap passes beneath the data head. Synchronization
(sync) pulse detector 423 detects a first sync pulse derived from magnetic transition
74 on the head signal. Peak detectors 425 and 426, the input to which being controlled
by time base 424 via switches S and S
2, respectively, transmits the head signal to summing and difference networks 427 and
429 in response to control signals from time base 424. Summing network 427 in turn
controls the gain of amplifier 421 via AGC (automatic gain control) 428 and difference
network 429 transmits a signal, hereinafter referred to as the tracking signal, to
track address decoder 43 and actuator drive amplifier 44.
[0016] Referring now to Figures 7 and 8, coded track identifying data are recorded in the
form of magnetic transitions (or lack thereof) at regularly spaced intervals, designated
W
1 - W and referred to hereafter as address intervals 73 in the inter-sector gap. Window
time base 433 generates "bit windows" synchronously timed with disc rotation speed
to correspond to detection of address intervals 73 by one of the data heads, 46a or
46b, in response to a second sync pulse derived from magnetic transition 72. Transition
72, also recorded in the inter-sector gap, is located just ahead in sequence, of the
coded track identifying data. Window time base 433 automatically terminates bit window
generation at the end of bit window W
n.
[0017] The presence of a magnetic transition recorded in an address interval W
l - W
n causes a pulse to be transmitted on the head signal. That pulse is interpreted by
multiplexer 434 at a "one" in the corresponding bit window generated by window time
base 433. The absence of a magnetic transition in an address interval is conversely
interpreted as a "zero". The cumulative result of bit window data is a coded track
address.
[0018] If the data head is moving to another track and crosses more than one track as the
inter-sector gap passes beneath it, the data head will sense all "ones" common to
all track addresses sensed. The decoded track address, however, can be resolved to
+ 1/2 track maximum simply by using the address coding scheme described later in this
specification and by suitably limiting the length of the track address code. Thus,
track addresses should be limited in length so that the head travels over parts of
no more than two such addresses at maximum translation velocity of the head and rotation
speed of the disc.
[0019] According to Figure 8, track address decoder 43 comprises pulse detector 431, flip
flop 432, multiplexer 434, window time base 433 and analog-to digital (A/D) converter
435. Pulse detector 431 actuates window time base 433 upon detection of the second
sync pulse representing magnetic transition 72. Flip flop 432 is set by pulses representing
magnetic transitions in intervals W
1 - W
n. Flip flop 432 is reset by window time base 433 at the end of each data window. If
no pulse appears in a data window, flip flop 432 remains reset. Thus, the output of
flip flop 432 is coded address data, hereinafter referred to as the track address,
uniquely identifying earh track, and derived from the head signal for the time period
during which the intersector gap passes beneath the data head. Flip flop 434 ignores
the third sync pulse and pulse detector 431 is insensitive to interval pulses.
[0020] Multiplexer 434 combines the track address data from flip flop 432 with two additional
bits of data from A/D converter 435 in accordance with the timing of bit windows received
from window time base 433 to produce an extended precision track address as explained
later in this specification with respect to Table I. A/D converter 435 produces the
additional data from the tracking signal as also described in connection with Table
I later in this specification.
[0021] Among the features of the present invention is the method used to determine data
head location while it is moving to another track. Track addresses are written in
the inter-sector gap as shown in Figure 7 at 70 for tracks Ø - 7, together with track
following magnetic transitions shown at 71 which are used by the track following servo
described elsewhere in this specification. As the inter-sector gap passes beneath
the data head, it detects at least one track address for processing into position
information by microprocessor 40. Since a track address is available only at inter-sector
gaps, track following data decoder 42 produces tracking signal 100 as shown in Figure
10, which is similar to a position signal produced by "sampling" the output signal
of a servo head detecting transitions on a dedicated servo disc surface.
[0022] In Figure 10 V in the tracking signal resulting from the data head being at position
X at the time an inter-sector gap passes under the head. N is the approximate distance
over which unit distance code address "N" in read by the data head. V
MAX is the maximum tracking signal amplitude produced when the data head is exactly between
two data tracks.
[0023] Referring also to Figure 7, each magnetic transition at 71 is centered between tracks
such that slightly less than one-half of two serially disposed transitions for each
track is on a track. The other half of the two transitions are disposed approximately
equally to each side of each track. Thus, if the data head is exactly at center track,
the tracking signal amplitude is zero; if the data head is off track center, the tracking
signal amplitude increases toward + V
MAX as the center of a magnetic transition is approached. At
+ V
MAX' the data head is exactly between tracks.
[0024] At high head velocities and track densities, as many as 10 tracks may be crossed
between "samples" taken at each gap in the present invention. A track address according
to the present invention, therefore, is written in absolute form and formatted to
minimize decoding errors if the data head is instantaneously positioned between tracks
when the inter-sector gap passes beneath it.
[0025] Decoding errors are limited to + 1/2 track in the present invention by writing the
track addresses in a unit distance code. Track locating resolution is improved to
at least + 1/8 track by addition of two bits of track locating data generated from
processing of track following data as explained later in this specification. Track
addresses in the preferred embodiment of the present invention are written in a unit
distance code known as the Gray code. The Gray code is described in detail in U.S.
Patent 2 632 058 which is incorporated by reference as if set forth fully herein.
In a unit distance code, consecutive binary numbers differ by only one bit of digital
data. Therefore, the addresses of neighboring tracks differ by only one data bit.
Hence, if the head is between two adjacent tracks and reads a part of the address
of both, the ambiguity is limited to + 1/2 track.
[0026] In the unit distance code addressing scheme of the present invention, the address
of the track over which the data head is located is read as the inter-sector gap passes
under the head. Again, this address could be as much as 1/2 track in error, simply
because the same address is produced even if the head is up to 1/2 track to either
side of the track center. However, in this invention, the resolution of data head
position is improved by using the tracking signal produced by track following data
decoder 42 to determine which side of and the distance from track center the data
head is located. The tracking signal is processed by A/D converter 435 to provide
bits A and B which are added to the track address produced by the track locating servo.
A single, unit distance code having greater precision is thus produced.
[0027] Referring to Figure 11, the A/D converter 435 outputs two bits according to the following
criteria:
Bit A is high if the track following position signal is negative.
Bit A is low if the track following position signal is positive.
Bit B is high if the magnitude of the track following position signal (V) is less
than 1/2 VMAX.
Bit B is low if the magnitude of the track following position signal (V) is greater
than 1/2 VMAX.
[0028] Table I summarizes the resulting sequence of increased precision bits of track locating
data code as the radial position of the data head is increased. It should be noted
that the points at
+ V
MAX on the waveform represent the midpoint between tracks, but also the points at which
the track address code changes.

[0029] The sequence is itself a unit distance code. Thus, the precision of the track locating
servo system has been increased to at least + 1/8 track.
[0030] Referring now to Figure 9, actuator drive amplifier 44 comprises odd/even track inverter
441, servo compensation network 442, digital-to-analog (D/A) converter 443, mode selector
444 and output amplifier 445. Linear actuator 45 is driven by output amplifier 445
which is powered by the tracking signal or a track locating power signal as determined
by mode selector 444 in response to appropriate command from microprocessor 40. Compensated
error signals, representing the difference between actual head position and the computed
position profile for a given target track, are derived by microprocessor 40 in the
form of digital control words in accordance with the algorithm shown in Figures 12A
- 12C, utilizing track addresses detected by the data head as it moves in the track
locating mode. Digital-to-analog (D/A) converter 443 then converts the control words
into track locating power signals for driving actuator 45. The computed position profile
then converges on the target track.
[0031] Referring also to Figure 11, track 0 center is identified at A on the signal waveform.
Similarly, track 1 center is identified at B, track 2 center is at C, and so on. While
each track center is at zero, the slope of the signal is of opposite polarity for
adjacent tracks, such as tracks φ and 1, and the slope is the same for every other
track, such as tracks 0 and 2. Thus, if the head were slightly off-center to the left
on track 0, the polarity of the signal required to move it back to center track might
be, for example, positive, hut negative for the same error on track 1. Therefore,
odd/even track inverter 441 arbitrarily inverts the tracking signal for every other
track so that the head moves in the same direction relative to track center for every
track in response to the tracking signal.
[0032] Servo compensation network 442 comprises lead and lag networks well known to those
skilled in system technology to provide loop stability, noise reduction and resistance
to steady-state forces on the actuator. These, as well as other specific circuits
which perform the functions described in Figures 4-6, 8 and 9 are well known to those
skilled in the art. Since such circuits form no part of the present invention, they
are not detailed in this specification.
[0033] The track following and track locating servos of the present invention rely on a
sampled servo signal rather than a continuous servo signal. For that reason the band-width
and the servo loop gain are less than the bandwidth and the servo loop gain of a conventional
track locating system. Thus, the track locating servo o the present invention inherently
includes a steady-state error of several tracks, where conventional
[0034] systems have steady-state errors of only a fraction of a track. To compensate for
this large error and reduce settling time of the actuator at the target track, microprocessor
40 actually computes a positive profile for several tracks short of the target track.
The profile generated then "jumps" when the true target is finally approached as shown
in Figure 13B. The steady-state error is controlled, primarily by compensation network
442.
[0035] This method of reducing settling time requires that short track locating seeks be
considered as special cases -i.e., seeks shorter than the steady-state error. Thus,for
short seeks in the present invention, the position profile is essentially set equal
to the target tracks for the entire duration of the seek.
[0036] Single track seeks must be as fast as possible to facilitate repaid transfer of large
segments of data. Therefore, a one track seek is performed entirely "open loop" whereby
the arm is accelerated, then decelerated, for the required amounts of time to step
over one track. The track following servo is then initiated immediately.