Determining lateral error offsets to adjust a lateral position at which to move a tape head with respect to a tape medium
12051450 ยท 2024-07-30
Assignee
Inventors
- Kevin Bruce Judd (Tucson, AZ, US)
- Randy Clark Inch (Tucson, AZ, US)
- David Lee Swanson (Tucson, AZ, US)
Cpc classification
G11B5/59672
PHYSICS
International classification
Abstract
Provided are a controller, tape drive, and method for determining a lateral position at which to move a tape head. The tape head, comprising a first module having a first servo reader and a second module having a second servo reader, is rotated to rotate the second servo reader at skew angles with respect to the first servo reader. A determination is made of estimated lateral positions of the second reader at the skew angles. Expected lateral positions of the second servo reader at the skew angles are calculated from a calculated distance between the first and the second servo readers and the skew angles. Lateral error offsets, comprising differences of estimated lateral positions and expected lateral positions at the skew angles, are added to an error offset data structure used to adjust a target lateral position at which to position the tape head.
Claims
1. A tape head controller for controlling a tape head, comprising a first module having a first servo reader and a second module having a second servo reader, with respect to a servo pattern written to a tape medium, wherein the tape head controller performs operations, the operations comprising: rotating the tape head to rotate the second servo reader at skew angles with respect to the first servo reader; determining estimated lateral positions from servo readback signals read by the second servo reader at the skew angles; calculating expected lateral positions of the second servo reader at the skew angles from calculated distances between the first and the second servo readers and the skew angles; determining lateral error offsets comprising differences of the estimated lateral positions and the expected lateral positions at the skew angles; adding the lateral error offsets for the expected lateral positions to a lateral error offset data structure; and using the lateral error offset data structure to adjust a target lateral position at which to position the tape head.
2. The tape head controller of claim 1, wherein the servo pattern has a non-linear servo pattern.
3. The tape head controller of claim 1, wherein the operations further comprise: reading the servo pattern to calculate a distance between the first and the second servo readers; and saving the calculated distances to use to calculate the expected lateral positions to determine the lateral error offsets.
4. The tape head controller of claim 3, wherein the distance is calculated by: reading lateral positions, at the second servo reader, at different skew angles formed between the first servo reader and the second servo reader; and calculating distances between the first servo reader and the second servo reader as a function of the skew angles and the read lateral positions, wherein the calculated distance comprises an aggregate of the calculated distances.
5. The tape head controller of claim 4, wherein the function calculates the distance by dividing a read lateral position by a Sine of the skew angle.
6. The tape head controller of claim 1, wherein the calculating the expected lateral positions comprises, for each given skew angle, a Sine of the given skew angle multiplied by a calculated distance.
7. The tape head controller of claim 1, wherein the operations further comprise: performing the operations of the determining the estimated lateral positions from the servo readback signals, the calculating the expected lateral positions, the determining the lateral error offsets, and the adding the lateral error offsets to the lateral error offset data structure in response to initializing a tape cartridge including the tape medium; and saving the lateral error offset data structure in a memory to use during read and write operations to use to adjust target lateral positions of the tape head.
8. The tape head controller of claim 1, wherein the using the lateral error offset data structure comprises: determining a target lateral position at which to position the tape head to read or write data in a data area; determining, from the lateral error offset data structure, a lateral error offset associated with the target lateral position; adjusting the target lateral position by the lateral error offset to produce an adjusted target lateral position; and controlling the tape head to move to the adjusted target lateral position where the first and second servo readers are reading servo readback signals on the servo pattern at the adjusted target lateral position.
9. The tape head controller of claim 1, wherein the determining, from the lateral error offset data structure, the lateral error offset associated with the target lateral position comprises: determining whether the lateral error offset data structure includes an entry associating a lateral offset error with a lateral position equal to the target lateral position; returning the lateral offset error associated with the lateral position equal to the target lateral position in response to determining that the lateral error offset data structure provides a lateral offset error associated with the target lateral position; and estimating the determined lateral offset error from at least one lateral offset error associated with at least one lateral position closest to the target lateral position in the lateral error offset data structure.
10. A tape drive, comprising: a tape head comprising a first module having a first servo reader and a second module having a second servo reader, with respect to a servo pattern written to a tape medium; and a controller for controlling the tape head, wherein the controller performs operations, the operations comprising: rotating the tape head to rotate the second servo reader at skew angles with respect to the first servo reader; determining estimated lateral positions from servo readback signals read by the second servo reader at the skew angles; calculating expected lateral positions of the second servo reader at the skew angles calculated distances between the first and the second servo readers and the skew angles; determining lateral error offsets comprising differences of estimated lateral positions and the expected lateral positions at the skew angles; adding the lateral error offsets for the expected lateral positions to a lateral error offset data structure; and using the lateral error offset data structure to adjust a target lateral position at which to position the tape head.
11. The tape drive of claim 10, wherein the servo pattern has a non-linear servo pattern.
12. The tape drive of claim 10, wherein the operations further comprise: reading the servo pattern to calculate a distance between the first and the second servo readers; and saving the calculated distances to use to calculate the expected lateral positions to determine the lateral error offsets.
13. The tape drive of claim 12, wherein the distance is calculated by: reading lateral positions, at the second servo reader, at different skew angles formed between the first servo reader and the second servo reader; and calculating distances between the first servo reader and the second servo reader as a function of the skew angles and the read lateral positions, wherein the calculated distance comprises an aggregate of the calculated distances.
14. The tape drive of claim 10, wherein the calculating the expected lateral positions comprises, for each given skew angle, a Sine of the given skew angle multiplied by a calculated distance.
15. The tape drive of claim 10, wherein the using the lateral error offset data structure comprises: determining a target lateral position at which to position the tape head to read or write data in a data area; determining, from the lateral error offset data structure, a lateral error offset associated with the target lateral position; adjusting the target lateral position by the lateral error offset to produce an adjusted target lateral position; and controlling the tape head to move to the adjusted target lateral position where the first and second servo readers are reading servo readback signals on the servo pattern at the adjusted target lateral position.
16. A tape method for controlling a tape head, comprising a first module having a first servo reader and a second module having a second servo reader, with respect to a servo pattern written to a tape medium, comprising: rotating the tape head to rotate the second servo reader at skew angles with respect to the first servo reader; determining estimated lateral positions from servo readback signals read by the second servo reader at the skew angles; calculating expected lateral positions of the second servo reader at the skew angles, from calculated distances between the first and the second servo readers and the skew angles; determining lateral error offsets comprising differences of estimated lateral positions and the expected lateral positions at the skew angles; adding the lateral error offsets for the expected lateral positions to a lateral error offset data structure; and using the lateral error offset data structure to adjust a target lateral position at which to position the tape head.
17. The method of claim 16, wherein the servo pattern has a non-linear servo pattern.
18. The method of claim 16, further comprising: reading the servo pattern to calculate a distance between the first and the second servo readers; and saving the calculated distances to use to calculate the expected lateral positions to determine the lateral error offsets.
19. The method of claim 16, wherein the calculating the expected lateral positions comprises, for each given skew angle, a Sine of the given skew angle multiplied by a calculated distance.
20. The method of claim 16, wherein the using the lateral error offset data structure comprises: determining a target lateral position at which to position the tape head to read or write data in a data area; determining, from the lateral error offset data structure, a lateral error offset associated with the target lateral position; adjusting the target lateral position by the lateral error offset to produce an adjusted target lateral position; and controlling the tape head to move to the adjusted target lateral position where the first and second servo readers are reading servo readback signals on the servo pattern at the adjusted target lateral position.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
DETAILED DESCRIPTION
(10) The lateral position of the tape head, also known as the y-position, is estimated from the TBS servo patterns by measuring the time between the A-burst and B-burst stripes (and between C-burst and D-burst stripes), also termed as A-Counts (Ai). Specifically, the y-position is linearly dependent on the A-Count values (Ai), provided that the servo stripes are perfectly straight.
(11) However, servo patterns that are factory pre-formatted on tape cartridges are often not perfectly straight due to manufacturing imperfections or defects in the servo writer. This leads to a non-linear relationship between the estimated y-position (based on Ai measurements) and the actual y-position of the head. Because the reliability of the y-position estimate is dependent on the servo pattern stripes being perfectly straight or linearity, non-linear servo stripes results in errors in estimates of the y-position.
(12) Further, there may be imperfections in the assembly of the tape head, which consists of two modules attached together with an adhesive. Different tape heads may have different distances between the modules due to variations in the application and drying of the adhesive between the tape head modules. Further, the assembly to attach the modules with the adhesive may result in a misalignment of the modules, i.e., skews between servo readers at the top and bottom of the modules, i.e., top-bottom skew, and skews between the left and right servo readers on the different modules not fully aligned, resulting in the servo readers at the same positions on the different modules not perfectly aligned. These misalignments in the assembly of the tape head may introduce further errors in reading the readback signal from the servo patterns.
(13) Described embodiments provide improvements to tape technology and reading tape servo patterns by calculating the module-to-module distance for a tape head to determine an actual measurement of the distance of the tape head modules. The actual measurement will be more accurate than the specification distance due to discrepancies in assembly of the tape head. Further, described embodiments provide improvements to determining a lateral position at which to move the tape head by determining an error offset between an expected lateral (y.sub.exp) position and the position on the non-linear servo pattern, estimated lateral position (y.sub.est) corresponding. This error offset may be used to adjust target lateral positions at which to move the tape head during operations, to provide accurate lateral movements that take into account the non-linearity of the servo pattern used to track the lateral movement of the tape head.
(14)
(15) The tape drive 100 may further include one or more controllers 500 to operate the tape drive 100 in accordance with commands received from a host system 112 received at an interface 114. The controller 500 includes logic and/or one or more microprocessors with a memory for storing information and program information for operating the microprocessor(s). The tape drive 100 may comprise a standalone unit or comprise a part of a tape library or other subsystem. The tape drive 100 may be coupled to the host system 112 directly, through a library, or over a network, and employ at interface 14 a Small Computer Systems Interface (SCSI), an optical fiber channel interface, etc.
(16) The tape cartridge 104 may be inserted in the tape drive 100 and loaded by the tape drive 100 mechanisms so that one or more read and/or write elements on a tape head 118 reads and/or writes information in the form of signals with respect to the magnetic tape 102 as the tape is moved longitudinally by one or more motors 120 which rotate the reels 106, 108. Tape guide rollers 130 guide the tape 102 across the tape head 118 to stabilize the positioning of the tape 102 with respect to the head 118 to reduce position error signals (PES). The magnetic tape typically comprises a plurality of parallel tracks, or groups of tracks. In some formats, such as the LTO format, above, the tracks are arranged in a serpentine back and forth pattern of separate wraps.
(17) The recording system may comprise a servo control system 122 to electronically switch to another set of read and/or write elements on the tape head 118, and/or to seek and move the tape head 118 laterally on the tape medium 102, to position the read and write elements at a desired wrap or wraps, and to track follow the desired wrap or wraps. The servo control system 122 may also control the operation of the motors 120 through motor drivers 124 and in response to instructions from the controller 500.
(18) The controller 500 also provides the data flow and formatter for data to be read from and written to the tape, employing a buffer 126 and a recording channel 128. The controller 500 may comprise program code in a memory device that is loaded into a processor and executed to perform the tape drive operations. Alternatively, some or all of the functions of the controller 500 may be implemented as microcode or firmware in hardware devices in the tape drive 100, such as in Application Specific Integrated Circuits (ASICs). The buffer 126 may comprise a suitable volatile or non-volatile memory device known in the art.
(19)
(20) The data band areas 204.sub.1, 204.sub.2, 204.sub.3 are filled by writing tracks in a serpentine fashion as illustrated with arrows 218.sub.1, 218.sub.2. The data band is filled by running the head 206 back and forth over the tape, incrementing the position with each pass, until the entire data band is filled. The position in the servo bands 202.sub.1, 202.sub.2 that correspond to a given data track is referred to as the servo location. The servo patterns 202.sub.1, 202.sub.2 provide position information to allow positioning of the head at each of the data track locations.
(21)
(22)
(23)
(24) The servo controller 516 may further receive tape movement commands 524 from a host computer 112 and adjust the requested position 520 to produce adjusted expected lateral position 518 to use to control the track following controller 520 to move the tape head 118 to read or write at a different lateral position in the data areas.
(25) The arrows shown in
(26) The program components 504, 510, 516, 520, among others, may be accessed by a processor from memory to execute or implemented in hardware logic and components, such as on a Digital Signal Processing (DSP)/Field Programmable Gate Array (FPGA) board.
(27)
(28) The servo controller 516 determines (at block 608) a lateral distance (y.sub.i) moved from the decoded readback signal the servo channel 510 reads from the servo pattern 702. The lateral error offset generator 504 calculates (at block 610) a distance D.sub.i 708 between the left 704.sub.L and right 704.sub.R servo readers as yi divided by sin(?.sub.i). Control proceeds (at block 612) back to block 604 until distances are calculated at different skew angles. The lateral error offset generator 504, and other components may then perform (at block 614) the operations at blocks 604-612 to calculate distances (Di) between left 704.sub.L and right 704.sub.R servo readers from skew angles resulting from rotating right servo reader 704.sub.R in negative direction with respect to servo track center.
(29) The lateral error offset generator 504 may calculate (at block 616) an aggregate distance (D) between the modules, e.g., left and right servo readers, as a function of all the calculated distances (D.sub.i) at blocks 604 through 614. The aggregate distance (D) may comprise an average of the calculated distances (Di) or some other statistical value representative of the distance 708. The aggregate distance D 708 is stored (at block 618) in the memory 502.
(30) With the embodiment of
(31)
(32) The servo controller 516 calculates (at block 808) an expected lateral position y.sub.exp 710, i.e., the lateral (y.sub.exp) distance the right servo reader 704.sub.R rotated relative to the left servo reader 704.sub.L, as D 708 multiplied by the sin(?.sub.i). The servo channel 510 processes (at block 810) the servo readback signal, read by the right servo reader 704.sub.R when rotated to determine an estimated lateral position (y.sub.est). In this way, the expected lateral position y.sub.exp is the lateral position corresponding to a true linear servo pattern, whereas the estimated lateral position (y.sub.est) is based on the real-world observed servo pattern, which may be non-linear. The lateral error offset generator 504 determines (at block 812) a lateral error offset as a difference of the expected lateral position (y.sub.exp) 710 and the estimated lateral position y.sub.exp produced by the servo channel 510 from the servo readback signal 512. An entry is added (at block 814) to the error offset data structure 508 associating the lateral error offset, y.sub.exp-y.sub.est, with the expected lateral position y.sub.exp 710.
(33) Control proceeds (at block 814) back to block 804 until the lateral error offsets are calculated for all the different skew angles. The lateral error offset generator 504, and other components may then perform (at block 818) the operations at blocks 804-816 to calculate lateral error offsets to include in the error offset data structure 508 from skew angles resulting from rotating right servo reader 704.sub.R in negative direction with respect to the servo track center. The generated error offset data structure 508 is saved (at block 820) in the memory 502 for use during servo controller operations to adjust a target lateral position to which to move by the lateral error offset for that position.
(34) The embodiment of
(35)
(36) The target lateral position is then adjusted (at block 904) by the lateral offset error, such as by subtracting the lateral offset error, to produce an adjusted target lateral position, which corresponds to the target lateral position on the non-linear skew pattern. The servo controller 516 controls the track following controller 520 to move the tape head 206 to the adjusted target lateral position that is reached when the servo channel 510 processes readback servo signals 510 from the servo pattern at an estimated lateral y-position comprising the adjusted target lateral position.
(37) With the embodiment of
(38) Terms such as top, bottom, left, right and the like may be used for descriptive purposes only and are not to be construed as limiting. Embodiments may be manufactured, used, and contained in a variety of positions and orientations.
(39) The terms an embodiment, embodiment, embodiments, the embodiment, the embodiments, one or more embodiments, some embodiments, and one embodiment mean one or more (but not all) embodiments of the present invention(s) unless expressly specified otherwise.
(40) The terms including, comprising, having and variations thereof mean including but not limited to, unless expressly specified otherwise.
(41) The enumerated listing of items does not imply that any or all of the items are mutually exclusive, unless expressly specified otherwise.
(42) The terms a, an and the mean one or more, unless expressly specified otherwise.
(43) Devices that are in communication with each other need not be in continuous communication with each other, unless expressly specified otherwise. In addition, devices that are in communication with each other may communicate directly or indirectly through one or more intermediaries.
(44) A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary a variety of optional components are described to illustrate the wide variety of possible embodiments of the present invention.
(45) When a single device or article is described herein, it will be readily apparent that more than one device/article (whether or not they cooperate) may be used in place of a single device/article. Similarly, where more than one device or article is described herein (whether or not they cooperate), it will be readily apparent that a single device/article may be used in place of the more than one device or article or a different number of devices/articles may be used instead of the shown number of devices or programs. The functionality and/or the features of a device may be alternatively embodied by one or more other devices which are not explicitly described as having such functionality/features. Thus, other embodiments of the present invention need not include the device itself.
(46) The foregoing description of various embodiments of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of the invention be limited not by this detailed description, but rather by the claims appended hereto. The above specification, examples and data provide a complete description of the manufacture and use of the composition of the invention. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims herein after appended.