Secondary storage facility empolying serial communications between drive and controller
AssigneeDigital Equipment Corporation
InventorsRobert G. Bean, Michael E. Beckman, Barry L. Rubinson, Edward A. Gardner, O. Winston Sergeant, Peter T. McLean
Life of this patent
Estimating the term…
Abstract
A secondary storage facility having a drive and a controller employing multiple error recovery techniques; the controller signals the drive to try such techniques in sequence, according to descending a priori probability of success. The controller does not know or need to know the details of the error recovery procedures.
Claims7
In a secondary storage system for a data processing system including a mass storage device and a controller for effectuating the operations of the mass storage device, a method of attempting to recover from data errors in reading data from the mass storage device comprising the steps of:
- A. assigning a number to each error recovery technique available to the mass storage device;
- B. the controller requesting information regarding the number of error recovery techniques in the mass storage device;
- C. the mass storage device providing to the controller a signal representing the numer of error recovery techniques available to the device;
- D. the controller monitoring read data from the mass storage device to detect a data error;
- E. if the mass storage device has only one available error recovery technique, then upon the detection of a data error,
- 1. the controller producing a command signal including the number of the error recovery technique available to the mass storage device;
- 2. the controller sending to the mass storage device the command signal including the number of the error recovery technique available to the mass storage device;
- and
- 3. the mass storage device implementing the error recovery technique specified by the command signal;
- F. if the mass storage device has more than one available error recovery technique step A further comprises the step of ordering the number assignment for each error recovery technique so as to prescribe an order of implementation and then upon detection of a data error,
- 1. the controller, using information from the signal provided by the mass storage device representing the number of error recovery techniques, producing a command signal including the number identifying one of the error recovery techniques available to the mass storage device;
- 2. the controller sending the command signal to the mass storage device;
- 3. the mass storage device implementing the error recovery technique identified by the command signal;
- 4. the controller monitoring the read data;
- after the mass storage device implements the error recovery technique, to detect a data error;
- 5. if a data error is detected, and if there is at least one error recovery technique which has not been implemented, the controller producing and sending another command signal including the number identifying another of the error recovery techniques available to the mass storage device;
- 6. if the controller sends another command signal to the mass storage device, the mass storage device responding to said another command signal by implementing the next error recovery technique of the prescribed order;
- and
- 7. repeating steps F.4., F.5., and F.6. until either the read operation succeeds or all of the error recovery techniques of the mass storage device have been implemented;
- and
- G. if the mass storage device has no error recovery techniques available, the controller not sending a command signal to the mass storage device.
In a secondary storage system comprising a mass storage device and a mass storage device controller, an apparatus for implementing one or more error recovery techniques available to the mass storage device in a desired order so as to recover data from an unsuccessful read operation comprising:
- means for assigning an identifier to each error recovery technique available to the mass storage device so as to prescribe a desired order of implementation;
- means for producing a first signal requesting information regarding characteristics of the mass storage device;
- means, responsive to said first signal, for producing a characteristics signal indicative of the number of the error recovery techniques available to the mass storage device;
- means for detecting an unsuccessful read operation;
- means, responsive to the detection of an unsuccessful read operation and said characteristics signal, for producing a command to recover from an error;
- and
- means, responsive to said command, for implementing an available error recovery technique identified by said command;
- and
- wherein said means for producing said command further includes means for producing an additional command to recover from an error if an implemented error recovery technique is unsuccessful and if an additional error recovery technique is available and, for continuing to produce additional commands until either an implemented error recovery technique is successful or until all of the available error recovery techniques have been implemented.
In a data processing system, a mass storage subsystem that is capable of implementing a unique error recovery algorithm comprising:
- a mass storage device having a plurality of error recovery techniques comprising,
- means for assigning an identifier to each of said plurality of error recovery techniques, said each identifier being assigned in an order corresponding to a desired order for implementation of said plurality of error recovery techniques,
- means for producing a characteristics signal that includes number of said plurality of error recovery techniques, and
- means, responsive to a command signal, for implementing an error recovery technique designated by said command signal;
- and
- a controller for effectuating the operations of said device, said controller comprising,
- means for detecting an unsuccessful read operation,
- means, responsive to said characteristics signal and a detection of an unsucccessful read operation for producing said command signal.
Dependencies are inferred from the claim text.