Abstract:
A method for positioning and maintaining a disc head over a desired track centerline on a disc rotatably carried on a disc drive. The distance between the current position of the disc head and the desired track centerline is monitored, and a signal generally proportional to that distance is applied to the disc head moving mechanism to cause the disc head to move toward the track centerline. The control signal is clipped if it exceeds predetermined maximum and minimum values.

Description:
BACKGROUND OF THE INVENTION 
     This invention relates to a method for positioning two objects relative one another, and more particularly for positioning and maintaining a disc head over a desired track on a disc recording surface. 
     Disc drives are frequently used as secondary storage for computing systems. A typical disc drive includes a rotating spindle having one or more recording surfaces fixedly mounted thereon for rotation therewith. Data is written onto the disc in concentric circles denominated tracks by a head positioned closely adjacent the recording surface. This recorded information may subsequently be read from the disc using either this same head or a second head specially adapted for reading. 
     The recording head is typically fixedly mounted on an arm capable of moving radially with respect to the rotating surface. The individual tracks on the recording surface are accessed by positioning the head over the desired track by moving the disc arm radially. The repositioning of the head from one track to another is referred to as a seek. Frequently, these seeks limit the speed of the overall computing system because they are mechanical operations whereas the remainder of the computing system typically operates at electronic speeds. Therefore, it is extremely desirable to have the head move rapidly and accurately to the target track on each seek. However, there is a trade-off between the velocity of head movement and the accuracy of the landing position over the desired track. If the head is moved at a relatively high velocity, it acquires a certain momentum which if not properly arrested causes the head to overshoot or pass over the desired track rather than stopping on this desired track. When this happens, it is necessary to move the head in the reverse direction to correct this overshooting. 
     Consequently, methods for moving the disc arm and head vary greatly in their trade-off between speed and overshooting. Some algorithms favor extremely high head velocities claiming that the time required to fine tune the head over the desired track after the major portion of the movement is offset by the time saved moving the head at the high velocity. Other algorithms prefer to move the head more slowly so that no overshoot results when the desired track is reached. Proponents of these algorithms maintain that the time saved in settling the head over the track is better spent moving the head more slowly. 
     Embedded servo technology has greatly increased the track-packing densities previously available without such technology. With embedded servos, servoing information is placed on the disc enabling the head to very precisely follow the centerline of each data track. Typically, embedded servo bursts are sampled and a positional error signal is generated which is fed back to the disc-arm-moving mechanism to precisely position the head over the centerline of the track. 
     Typically, prior artisans have treated the seek function and the follow function as two separate functions. That is to say that one module of the disc drive unit is responsible for seeking a desired track and a second module is responsible for maintaining the head in proper alignment over that track. The inclusion of these two modules renders these drives relatively complex and consequently expensive. 
     SUMMARY OF THE INVENTION 
     The method of the present invention strikes an appropriate compromise between head velocity and landing-position accuracy. In the method of the present invention, the distance between the current head position and the desired track centerline is monitored to determine the remaining distance to be covered during the seek. A signal is then calculated which is generally proportional to this distance, and the signal is applied to the disc-arm-moving mechanism. This control signal is clipped at a maximum value when the distance exceeds this predetermined maximum value. 
     Consequently, the head travels at a fixed maximum velocity when it is more than a predetermined number of tracks away from the desired track centerline. When the head approaches the track centerline, the velocity of the head is generally proportional to the remaining distance between the head and the desired track centerline. Accordingly, the velocity of the head is reduced as the head approaches the desired track so that there is little, if any, overshoot at the desired track. 
     The method of the present invention treats the seek function and following function as a single function using a single control method. Consequently, only one module is required to both seek the desired track and then maintain the head over that track. Accordingly, movement of the disc head is greatly simplified, both conceptually and in reality. 
     These and other objects, advantages, and features of the invention will be more fully understood and appreciated by reference to the written specification and appended drawings. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a top plan view of a disc drive utilizing the method of the present invention; 
     FIG. 2 is an exploded view of the area denominated II in FIG. 1; 
     FIG. 3 is a plot of the embedded servo error signal generated by the method of the present invention; 
     FIG. 4 is a schematic diagram showing the control components implementing the method of the present invention; 
     FIG. 5 is a plot of the control signal generated by the method of the present invention; 
     FIG. 6 is an exploded view of a portion of the plot shown in FIG. 5; and 
     FIG. 7 is a flow chart detailing the processing flow of the microprocessor shown in FIG. 4. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     A disc drive unit is shown in FIG. 1 and generally designated 10. Disc drive 10 generally comprises frame 12, disc 14 rotatably mounted thereon, and disc arm 16. Disc arm 16 is pivotally mounted on frame 12 and actuated by disc arm motor 18. Head 20 is secured to the terminal end of disc arm 16 and is positioned closely adjacent the recording surface of disc 14. Consequently, pivotal movement of arm 16 on frame 12 results in radial movement of head 20 with respect to disc 14. Read/write wires 22 are electronically connected to head 20 to carry signals to and from the head as necessary. Control wires 24 are connected to motor 18 to actuate the motor as necessary. Disc drive 10 as thus far described is well known to one skilled in the art and, accordingly, a more detailed explanation is unnecessary. The disc drive incorporating the method of the present invention is more fully described in copending application Ser. No. 280,262, filed July 2, 1981, entitled HEAD ARM AND CONTROL SYSTEM THEREFOR, and assigned to the assignee of the present application. 
     The recording surface of disc 14 is divided into a number of pie-shaped pieces, or segments, 26. A portion of segment 26, denominated II in FIG. 1, is shown exploded in FIG. 2. The recording surface of disc 14 is divided into a plurality of concentric tracks, for example 99, 100, 101, and 102. As most clearly shown in FIG. 2, header information 28 is positioned on each track at the beginning of each segment 26. This header information 28 is then followed by a much longer data field 30 containing the information actually written onto and read from the disc during computing system processing. Centerlines 99a, 100a, 101a and 102a are imaginary lines drawn through the exact center of each data field 30 in tracks 99, 100, 101, and 102 respectively. 
     Embedded servo information 28 generally comprises (in the order in which they pass under head 20 when disc 14 is rotating) odd headers 32, even headers 34, A bursts 36, and B bursts 38. Odd headers 32 are positioned precisely about centerlines of odd tracks such as 99a and 101a of tracks 99 and 101, respectively. Likewise, even headers 34 are positioned precisely about the centerlines of all even tracks. Either one odd header 32 or one even header 34 is provided for each track in each sector on disc 14. Odd headers 32 are offset from even headers 34 along the length of the track with the trailing edge of each odd header 32 being generally aligned with the leading edge of its adjacent even headers 34. 
     A bursts 36 and B bursts 38 are positioned precisely between track centerlines. Accordingly, each one of bursts 36 and 38 abuts its adjacent track centerlines without, however, crossing either centerline. For example, A burst 36a is precisely between centerlines 100a and 101a, while B burst 38a is precisely between centerlines 99a and 100a. A bursts 36 and B bursts 38 are offset along the lengths of the tracks. That is to say, that all B bursts 38 follow A bursts 36. Further, it can be seen that A and B bursts 36 and 38 follow odd and even headers 32 and 34 and precede the data fields 30. Bursts 36 and 38 are signals of fixed frequency and fixed length. Servo information 28 and its utilization in a servo-positioning system, such as disc drive 10, is more fully described in copending application Ser. No. 280,138, filed July 2, 1981, entitled DATA RECORD WITH PRE-RECORDED TRANSDUCER POSITIONING SIGNALS, AND SYSTEM FOR UTILIZING SAME, and assigned to the assignee of the present application. Although the invention therein is described with particular reference to a tape record and drive, it is also applicable to a disc drive, as is appreciated by one having ordinary skill in the art. 
     For the remainder of this application, it will be assumed that track 100 is the desired or target track. Accordingly, if the head is described in a position other than dead center aligned on centerline 100a, it is assumed that corrections are required to move the head into alignment with centerline 100a. However, of course, the description is equally applicable to other tracks at the desired or target track. 
     Head 20a shows the head position when the head is properly aligned on track 100. When so positioned, head 20a will not read either of adjacent odd headers 32a or 32b as the disc surface rotates under the head. However, even header 34a will pass directly under head 20a and be read thereby. Continuing along centerline 100a, the head will pass over one-half of A burst 36a and one-half of B burst 38a. Accordingly, the controller knows that head 20 is aligned with centerline 100a when the amplitude of the signal read at A burst 36a is equal to the amplitude of the signal read at B burst 38b. 
     Head 20b shows the position of head 20 over disc 14 when head 20b is out of line with centerline 100a by one-quarter track. When in this position, head 20b will pass over odd header 32b but will receive an inadequate signal to indicate that an odd header has been read. However, head 20b will pick up a full signal from even header 34a, informing the control circuitry that an even header has been encountered. As disc surface 14 continues to rotate past head 20b, a signal of higher amplitude will be received when head 20b passes over A burst 36a than when head 20b passes over B burst 38a. The controller then knows that head 20b is offset from the centerline of 100a and takes corrective action as will be described. 
     Head 20c shows the position of the head when in an ambiguous position, i.e. neither aligned with track 100 nor 101. When in this position, head 20c will receive signals from both odd header 32b and even header 34a indicating that the head may be aligned with either track 100 or 101. Further, whereas head 20c will receive a signal from A burst 36a, no signal will be received from a B burst because head 20c is aligned with void 39 between adjacent B bursts 38a and b. When in this condition, the read/write circuitry must be disabled because head 20 is not positioned over any track. Indeed, if head 20 is misaligned by more than one-quarter of a half-track width, neither reading nor writing should take place as this may result in erroneous information being written or read. 
     Briefly summarizing, as head 20 traverses embedded servo information 28, both an odd header 32 and an even header 34 are read if possible, i.e. if a signal is detected. Further, the amplitudes of the signals received at bursts 36 and 38 are sampled and compared. From this information, the current position of head 20 can be determined at least with an accuracy of one-half track width. If head 20 is within one-quarter track width of a centerline, the control circuit knows which track the head is positioned over. If the head is more than one-quarter track width away, an ambiguous situation is encountered. If the amplitude of the signal received from the A burst is identical to the amplitude of the signal received from the B burst, head 20 is positioned precisely over the centerline. However, if the signal amplitude from one of bursts 36 and 38 is stronger than the signal amplitude from the other of bursts 36 and 38, the control circuitry knows that the head is not aligned with a centerline and indeed can determine how far off from a centerline the head is to an accuracy of at least one-half track width. If the sample of the A and B bursts 36 and 38 indicates that the head is misaligned by more than one-quarter track width, the control system cannot make a determination of which of the two tracks head 20 is more precisely aligned with. 
     A graphic example of the relation between the magnitude of the signals received at the A and B bursts 36 and 38 is shown in FIG. 3. This figure shows the track number plotted along the horizontal axis and the value A minus B along the vertical axis. The value of A minus B is plotted as line 40, which generally has a saw tooth pattern. When head 20 is precisely aligned over centerline 100a, the signal received from A burst 36a is exactly equal to the signal received from B burst 38a. Consequently, their difference is zero as indicated at point 42 where line 40 crosses both the horizontal and vertical axes. However, as head 20 strays towards track 101, the signal amplitude received from A burst 36a will be larger than the signal amplitude received from B burst 38a, and accordingly A minus B will be a positive number as shown along the portion 44. When head 20 is offset equally between said lines 100a and 101a as shown at 20c, the signal amplitude received from A burst 36a will be at its maximum with no signal received from B burst 38a so that the value A minus B will assume its maximum as shown at point 46. As head 20 strays further towards track 101 the quantity A minus B will become smaller as the head begins to pass over B burst 38b and less of A burst 36a. When head 20 is precisely aligned with track 101a, the signal received at A burst 36a will be identical to the signal received at B burst 38b and the quantity A minus B will again be zero as indicated at point 48. 
     Likewise, as head 20 strays toward track 99, the quantity A minus B will assume an increasingly negative value until head 20 is positioned precisely between tracks 99 and 100. At this point, the quantity A minus B will assume its maximum negative value indicated at 50. When head 20 is positioned precisely over track 99, the signals received at the A and B bursts will again be equal, and the quantity A minus B will be zero as indicated at 52. The remainder of line 40 extends to track zero in the left direction and to the maximum track number in the right direction maintaining its repetitious, saw tooth pattern. Line 40 crosses the horizontal axis precisely at each track centerline as the A and B bursts 36 and 38 will be equal to one another at these points. When going from an even number track to the next higher odd number track, the value A minus B will always be a positive number. Likewise, when going from an odd number track to the next higher even number track, the quantity A minus B will always assume a negative value. 
     The function 54 for converting the distance between the current head position and the desired track centerline into the control signal sent to the digital-to-analog converter (DAC) 86 to control disc arm motor 18 is shown in FIG. 5. Track number is plotted along the horizontal axis while the magnitude of the signal sent to DAC 86 is plotted along the vertical axis. Briefly summarizing, function 54 (1) is linear at 56 when the head position is within one-quarter of a track width from desired track centerline 100a, (2) has a stairstep quality 58 on either side of the linear portion which extends to the maximum and minimum control signals, and (3) has a fixed minimum and maximum value 60 when the distance is greater or less than four tracks, respectively. Maximum signal value 62 is selected based upon the other components in the system. 
     A portion of the plot shown in FIG. 5 is exploded in FIG. 6 so that the horizontal axis has precisely the same scale as the plot in FIG. 3. Function 54 is generally linear in area 56, which is within one-quarter track width of centerline 100a. That is to say that if the current head position is within one-quarter track width of centerline 100a, the signal sent to disc arm motor 18 through DAC 86 is generally proportional to the distance between the track centerline and the current head position. If the current head position is on the low side of the track centerline, the sign of the signal must be a negative value to move the head toward centerline 100a. 
     Ideally, function 54 would be linear as shown by dotted line 63 along its entire distance within four tracks of the desired track (i.e. from track 96 to track 104). However, this is not possible because the position of head 20 cannot always be precisely determined. When head 20 is more than one-quarter track width from the centerlines of both adjacent tracks as shown at 20c, head 20 will detect both an odd header 32b and an even header 34a. This situation arises whenever head 20 is in the area 64 denominated on FIG. 3 (i.e. more than one-quarter track width from both adjacent tracks). After passing the odd and even header, head 20 will then pass over both a portion of an A burst 36 and a portion of a B burst 38. However, this burst information does not resolve the ambiguity because head 20 does not know whether it is passing over a portion of B burst 38a or B burst 38b. Accordingly, whenever head 20 is at one of the positions within area 64, the control circuitry cannot determine precisely where within that area the head lies. All that is known is that the head is more than one quarter track width from both adjacent centerlines 100a and 101a. 
     Because the control circuitry does not know exactly where head 20 is when it is within area 64, it must output control signal value 66, which is the minimum value of ideal function 63 within area 64. This step is equivalent to computing the minimum possible distance between disc head 20 and the desired track centerline and outputting the value of function 54 for that minimum distance. If function 54 assumed a higher value in area 64, and if head 20 is only one-quarter track width from centerline 100a (i.e. point 68), the value of function 54 would be too high, giving head 20, and disc arm 16 associated therewith, too much momentum. The remainder of function 54 encountered before head 20 reached centerline 100 (i.e. area 56) would be inadequate to slow down disc arm 16 to prevent overshoot. Accordingly, to be safe rather than sorry, function 54 assumes the minimum 66 of the possible ideal values in area 64. 
     For similar reasons, function 54 is stairstepped at the other points indicated along portions 58 of function 54. When the current position of head 20 is a fixed distance (four tracks in the preferred embodiment) or further from the desired centerline 100a, function 54 is given a maximum value of 62 as indicated by portions 60. Of course, the sign of the signal issued to disc arm motor 18 through DAC 86 is dependent upon which side of the desired centerline head 20 is on. If head 20 is on the low side of centerline 100a, the signal is negative, while if head 20 is on the high side of centerline 100a, the signal is positive. 
     The hardware for implementing the control method of the present invention is shown in FIG. 4. As in FIG. 1, disc arm motor 18 is electrically connected to control wire 24, while head 20 is electrically connected to read/write wires 22. The analog data from the disc constantly passes through A-to-D converter 73 and servo separator 74. The current track address 76 is obtained from servo separator 74 and bussed to microprocessor 72. 
     The analog data from the disc is also fed through wires 22 to both of sample and hold circuits 78 and 80. A signal from servo separator 74 controls the operation of circuits 78 and 80 so that the burst A signal and burst B signal are emitted from circuits 78 and 80 respectively at the appropriate times. Analog bursts A and B pass through circuitry 82 so that the analog signals are normalized and digitized before being bussed to microprocessor 72. The details of circuit 82 are fully and completely described in copending application Ser. No. 280,127, filed July 2, 1981, entitled METHOD AND APPARATUS FOR NORMALIZING SERVO-POSITIONING SIGNALS, assigned to the same assignee of this application. 
     To initiate a seek, the desired track address 70 is fed into the disc arm microprocessor 72. Disk arm microprocessor 72 calculates a digital control signal to be sent to DAC 86 based on the value of desired track address 70, current track address 76, and digitized A and B 84. The digital control signal 85 output by microprocessor 72 corresponds to function 54 shown in FIG. 5. The computed signal is then bussed serially to DAC 86 and pre-amp 88, which drives power amp 90 and disc arm motor 18. 
     A flow chart showing the processing flow of microprocessor 72 is illustrated in FIG. 7. Each time that a sector header is read, the microprocessor 72 commences execution of the flow chart shown in FIG. 7. As indicated in boxes 92, 94, and 96, odd and/or even headers are read, as well as the amplitudes of the signals generated by the A and B bursts. Flow then passes to box 98 where the distance between the desired track centerline and the current head position is calculated. As previously described, this calculation is accurate to at least one-half track width. At boxes 100 and 104, the distance is tested to determine if it is greater than or equal to four tracks (100), or less than or equal to minus four tracks (102). If either test is satisfied, the maximum positive signal or maximum negative signal respectively (102 and 106) is output and execution terminates for that sector. At box 108, the absolute value of the distance is compared with one-quarter track width. If the distance is less than one-quarter track, that distance is output on even tracks and minus distance is output on odd tracks (box 110). If none of the tests of boxes 100, 104, or 108 are satisfied, the program performs a table look-up based on the distance to obtain the value of function 54 for that distance. As indicated in box 114, this value is then output and execution terminates. 
     A listing for a program implementing the flow chart shown in FIG. 7 is attached to this application as Appendeix A. This program is written in the 8041 assembly language, but is not intended to restrict the scope of this application to that particular language. With access to the flow chart of FIG. 7 and/or the computer program attached hereto as Appendix A, one having ordinary skill in the art could readily implement the flow chart of FIG. 7 in any appropriate computer language. 
     The method of the present invention performs both the seek function and the follow function required of a hightrack-density disc. Consequently, the hardware required to implement the present invention as well as the software can be far less complex than in prior units because only one module is required for all head functions. Although the present application has treated track 100 as the desired or target track, it is readily understood that the method of the present invention is equally applicable to any target track by merely moving function 54 horizontally so that linear portion 56 aligns with the appropriate desired track centerline. Typically, the target track number will change frequently during operation of disc drive 10. 
     The method of the present invention provides a desirable balance between the disc arm speed and landing accuracy when seeking a desired track. It provides a signal which is generally proportional to the distance from the desired track centerline. However, when this distance cannot be computed with absolute precision, the signal issued to the disc arm moving mechanism is the minimum of the ideal linear values in the area of uncertainty. Consequently, the disc arm control method of the present invention provides a process whereby the disc head may be rapidly moved to a desired location with a not undesirable degree of overshoot when arriving at the desired location. 
     Of course, it is understood that the above is merely a preferred embodiment of the invention and that various changes and alterations can be made without departing from the spirit and broader aspects of the invention as set forth in the appended claims, which are to be interpreted in accordance with the principles of patent law including the doctrine of equivalents. ##SPC1## ##SPC2## ##SPC3##