Apparatus and method for record reorientation following error detection in a data storage subsystem
Abstract
In an apparatus and method for record reorientation following error detection in a data storage subsystem each data track is subdivided into equal time-length recording cells which are sequentially numbered past an index point with the beginning of each field of each record coinciding with an initial cell for the field. Upon detection of a retriable error within a given field, the initial cell for the field is determined and stored, the subsystem is disconnected from an interfacing channel, and reorientation is attempted by advancing a transducer addressing the track past the index point to a location which is a selected distance upstream of the stored cell number. If a selected channel command is then received within a given time interval, the subsystem is reconnected to the channel and reorientation is effected as the transducer enters the field the initial cell of which was stored. If the selected channel command is received late, the subsystem waits one revolution of the track and then reorients without looking for further channel commands.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. In a subsystem selectively attaching a channel interface and responsive to channel command words, said subsystem storing records on media in moving relation to a plurality of transducers, the records being written on cyclically readable paths, each path being subdivided into equal fixed length recording cells which are sequentially numbered past an index point on said path, the beginning of each field of each record coinciding with an initial cell for the field, the method of reorienting a selected transducer to the field of the record where a retriable error has occurred comprising the steps of: ascertaining the initial cell number of each field while processing; detecting retriable errors; disconnecting the subsystem from the channel upon detection of a retriable error; selecting a reorientation cell number from the initial cell number for the field in which the retriable error was detected as a function of the type of field, error and an original channel command word being executed; moving the path relative to the selected transducer through the index point and until the transducer is positioned a predetermined distance before the reorientation cell; reconnecting the subsystem to the channel and requesting repeat of the original channel command word; and moving the path relative to the selected transducer to the reorientation cell upon the condition that the original channel command word is repeated.
2. In a data storage subsystem that is selectively attached to a channel interface, and responsive to channel command words, said subsystem storing variable length records on cyclically movable media for reading and writing by any of a plurality of transducers, the records being written serially on tracks and each record including count and data fields and in some instances a key field, the fields being arranged serially and in predetermined order, in any of which fields an error may occur, the tracks being disposed relative to an index point, the method of reorienting a selected transducer to recommence data transfer at a location on a track proximate to where a retriable error has occurred, comprising the steps of: subdividing the tracks into equal fixed length recording cells sequentially numbered past the index point; detecting retriable errors as data transfer takes place; determining and storing the initial cell number for the record in which the error occurred; disconnecting the subsystem from the channel upon detection of the error; correcting the portion of the record that was detected as in error, while disconnected; selecting a reconnection cell number from the initial cell number for the record in which the error occurred as a function at least of the location of the error; reconnecting the subsystem to the channel to reobtain the original channel command word; completing a cyclic movement of the track relative to the selected transducer past the index point to a region ahead of the selected reconnection cell; and reestablishing reconnection of the subsystem to the channel at a time sufficiently prior to the reconnection cell location so that data transfer can initiate at the reconnection cell location beginning with the field at which the error occurred, so that corrected data may be transferred for the field in which the error occurred without the introduction of other error possibilities.
3. The method of reorienting a transducer to a location on a recorded moving track in which an error is identified by error detecting and correcting circuits, the track being one of a number of data tracks, each of which have serial variable length records, each including different fields, the method comprising the steps of: monitoring the track position relative to the transducer by identifying equal length, successively numbered data cells comprising successive equal groups of bytes following an index point, as a data transfer try is effected; detecting the existence of a retriable error; determining the beginning data cell number for the last field in which data transfer was to take place, upon detecting the existence of a retriable error; selecting a reconnection cell number for reorientation based upon the beginning data cell number determined and the error location; attempting to reorient the transducer to the location on the track on which the error was detected on a second passage of the track so as to initiate data transfer beginning at the reconnection cell without the passage of the previously correctly read portion of the record; and correcting the error previously detected concurrently with the reorientation procedure.
4. The method as set forth in claim 3 above, wherein the data cell numbers that are determined include count field, key field and data field numbers, and wherein the step of selecting a reconnection cell number includes selecting the beginning cell number of one of each of said fields.
5. A method of reorienting a transducer within a cyclically repeating track having a succession of different .Iadd.failure independent .Iaddend.fields recorded therein, different groups of the fields defining a succession of different records .Iadd.each of which has a unique address independent of its physical location .Iaddend.along the track, comprising the steps of: providing an indication of the location of each .Iadd.failure independent .Iaddend.field relative to a common reference location on the track; moving the transducer in a given direction along the track; identifying the indication of the location of the last .Iadd.failure independent .Iaddend.field presented to the transducer upon the occurrence of an error; storing the identified indication; terminating data processing at the transducer upon the occurrence of an error; advancing the transducer relative to the track in the given direction past the common reference location .[.to.]. g and any failure independent fields in the record in error preceding the .Iadd.precise .Iaddend.field the indication of which was stored; and .Iadd.only thereafter .Iaddend.attempting to continue data processing at the transducer.
6. A method of reorienting a transducer within a cyclically repeating track having a succession of different groups of .[.the.]. .Iadd.failure independent .Iaddend.fields defining a succession of different records along the track, comprising the steps of: providing an indication of the location of each .Iadd.failure independent .Iaddend.field relative to a common reference location on the track; identifying the indication of the location of the last .Iadd.failure independent .Iaddend.field presented to the transducer upon the occurrence of an error; terminating data processing at the transducer upon the occurrence of an error; advancing the transducer relative to the track past the common reference location to the .Iadd.precise failure independent .Iaddend.field the indication of which was identified; and attempting to continue data processing at the transducer, including the steps of seeking an external command to commence data processing before the transducer has advanced to the field the indication of which was identified, commencing data processing .Iadd.only .Iaddend.when the transducer is advanced to the field the indication of which was identified if an external command to commence data processing is received early enough to permit data processing to commence as the transducer is advanced to the field the indication of which was identified, and again advancing the transducer relative to the track past the common reference location to the field the indication of which was identified and commencing data processing if an external command to commence data processing is received too late to permit data processing to commence as the transducer is advanced to the field the indication of which was identified.
7. In a system in which a data storage device responds to commands from a channel to carry out data processing operations, the data storage device including at least one transducer capable of addressing at least one cyclically repeating track which has a plurality of fields recorded therealong and is divided into a plurality of cells of equal time-length which are numbered consecutively from a common index point on the track, each field having a cell coincident with the start thereof, a method of reorienting the transducer to a selected field within the track comprising the steps of: determining and storing the number of the cell coincident with the start of the last field addressed by the transducer upon the occurrence of an error; disconnecting the data storage device from the channel upon the occurrence of an error; advancing the transducer to the index point on the track; advancing the transducer from the index point to a cell the number of which equals the stored cell number minus a first number; advancing the transducer from the cell the number of which equals the stored cell number minus a first number to a cell the number of which equals the stored cell number minus a second number smaller than the first number and simultaneously looking for a particular channel command from the channel during a selected time interval; advancing the transducer from the cell the number of which equals the stored cell number minus the second number to the cell the number of which is stored and connecting the data storage device to the channel if the particular channel command is received from the channel during the selected time interval; and connecting the data storage device to the channel and advancing the transducer from the cell the number of which equals the stored cell number minus the second number past the index point to a cell the number of which equals the stored cell number minus the second number and then to the cell the number of which is stored if the particular channel command is received from the channel after the occurrence of the selected time interval.
8. The invention set forth in claim 7, wherein the first number is 16 and the second number is 8.
9. In a subsystem in which at least one transducer is positioned relative to a plurality of data tracks on a record member to effect data processing in response to commands from a channel to which the subsystem is selectively coupled, the data tracks moving relative to the transducer in cyclic, repeating fashion and each being divided into a plurality of cells numbered consecutively along the length thereof from a reference point and having a succession of fields arranged along the length thereof so that the boundaries thereof coincide with the boundaries of the cells, an arrangement for reorienting the transducer to the location of a detected error in a track being addressed by the transducer comprising the combination of: means responsive to detection of an error in the data processing for storing the cell number of the cell at the beginning boundary of the last field addressed by the transducer before detection of the error; means responsive to detection of the error in the data processing for disconnecting the subsystem from the channel; means responsive to detection of the error in the data processing for sensing the occurrence of the reference point at the transducer; means responsive to sensing of the occurrence of the reference point at the transducer for sensing the occurrence at the transducer of a first location following the occurrence of the reference point having a cell number equal to the difference between the stored cell number and a first number; means responsive to sensing of the occurrence at the transducer of the first location for initiating a timed interval of predetermined length; means responsive to sensing of the occurrence at the transducer of the first location for sensing the occurrence at the transducer of a second location having a cell number equal to the difference between the stored cell number and a second number; means responsive to the occurrence of a predetermined command from the channel during the timed interval of predetermined length and to the occurrence at the transducer of the second location for reconnecting the subsystem to the channel prior to the occurrence of the stored cell number at the transducer; and means responsive to the occurrence of a predetermined command from the channel after termination of the timed interval of predetermined length for reconnecting the subsystem to the channel and advancing the transducer past the second location, the stored cell number, the reference point and then the second location. .Iadd. 10. In a subsystem comprising a controller and at least one disk file in which at least one transducer is positioned relative to a plurality of data tracks on a record member to effect data processing in response to commands supplied to the subsystem, the data tracks moving relative to the transducer in cyclic, repeating fashion and each being divided into a plurality of cells numbered consecutively along the length thereof from a reference point and having a succession of failure independent fields arranged along the length thereof so that boundaries of the fields are related to the boundaries of the cells, apparatus for reorienting the transducer to the location of a detected error in one of the fields in the track comprising the combination of: means responsive to detection of an error in one of the fields during reading of the track for storing the cell number of the initial cell of the last failure independent field addressed by the transducer before detection of the error; and means operative, after detection of the error and while the transducer is being moved relative to the track past the reference point, to defer rereading of the field in error until the transducer is positioned at said initial cell of said last failure independent field addressed by the transducer before detection of said error. .Iaddend. .Iadd. 11. In a subsystem of the type wherein at least one transducer is positioned relative to a cyclically movable data track on a record member to effect data transfer to and from said track, said track having a succession of command addressable records whose addresses are independent of their physical location along the track, each such record having a plurality of failure independent fields of at least a predetermined minimum number of byte positions arranged along the length of said track, the improvement comprising apparatus for insuring that only that field of a record containing a detected error is reread during reorientation of the transducer to the location of the detected error to avoid generating two independent errors in the same record when the record is reread, during a subsequent revolution said apparatus comprising: means for establishing cell pulses at equal time intervals to effectively divide the track into a plurality of equal fixed length cells, each cell having a length at least equal to said predetermined number of byte positions so that the start of each field is relatable to only one respective specifically identifiable cell; means responsive to detection of an error in a record for storing the number of a cell related to the last failure independent field read by the transducer before detection of said error; and means operative after detection of the error to defer rereading of the record in error until the transducer has passed all failure independent fields in the record in error read prior to the field in error. .Iaddend. .Iadd. 12. In an apparatus for recording and reading data from a cyclic magnetic recording track on which data is recorded as a plurality of separately addressable records whose addresses are independent of the physical location of said record on said track, and wherein each record comprises a plurality of failure independent fields each including at least a predetermined minimum number of byte positions, and wherein on detection of an error in one of said fields, the field in error is reread by a transducer during reorientation of the transducer on a subsequent revolution to the location of the detected error, the improvement comprising: means for generating a plurality of timing pulses at a frequency related to the data rate of said magnetic recording track, said timing pulses being spaced apart a distance not more than said predetermined minimum number of byte positions; means for controlling the recording and reading of each of said failure independent fields to insure that only one field is started between any two successive timing pulses; means for storing an identification of a field in error upon the occurrence of an error; and means including means responsive to the timing pulse associated with the start of the field in error to initiate rereading of the field in error in the revolution following that during which the error occurred, thereby to insure that when an error has occurred in one of the fields, previously read fields of the record in error will not be reread. .Iaddend.Join the waitlist — get patent alerts
Track USRE31069E — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.