GB2422478A - Tape data format having skip frames in areas of write failures - Google Patents

Tape data format having skip frames in areas of write failures Download PDF

Info

Publication number
GB2422478A
GB2422478A GB0501280A GB0501280A GB2422478A GB 2422478 A GB2422478 A GB 2422478A GB 0501280 A GB0501280 A GB 0501280A GB 0501280 A GB0501280 A GB 0501280A GB 2422478 A GB2422478 A GB 2422478A
Authority
GB
United Kingdom
Prior art keywords
frames
skip
tape
run
region
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB0501280A
Other versions
GB0501280D0 (en
Inventor
Andrew Malcolm Clarke
Nigel Ronald Evans
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Priority to GB0501280A priority Critical patent/GB2422478A/en
Publication of GB0501280D0 publication Critical patent/GB0501280D0/en
Publication of GB2422478A publication Critical patent/GB2422478A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs

Abstract

A method of writing a sequence of user data 61 and 65 formatted in frames along a tape and identifying a skip region 63 of the tape liable to write failure. The sequence of user data 61 is interrupted at the skip region 63 and resumed 65 following the skip region. The skip region may be identified by detecting RAW failures while writing the sequence of user data. Alternatively, the skip region may be identified by reference to an entry in a log of tape usage. The skip region may comprise a run of skip frames that include repeated information and a count identifying their incremental positions. The skip frames may comprise a run of jump frames and a run of landing frames where the jump frames include a pointer to the landing frames. The skip frames may be identified in sub-code information.

Description

DATA STORAGE AND APPARATUS AND METHOD
FIELD OF THE INVENTION
The present invention relates to storing data on a tape and in particular to writing a sequence of data formatted in frames along the tape.
BACKGROUND OF THE INVENTION
It is known to provide the storage and retrieval of digital information on magnetic tape in a format that is referred to as the DDS format which has developed through a number of versions.
In a DDS tape drive, a magnetic tape cassette is loaded into the tape drive and the tape in the cassette is transported past a rotary head drum to record overlapping oblique tracks across the tape by means of read/write heads carried on the drum. The DDS format provides for a number of specific areas on the tape including a device area for loading and testing the tape, a system area that includes a tape log and a data area for recording frames of user data. Data recovery features and algorithms are used to recover from read/write failures including algorithms used in a technique known as read-after write (RAW) In the read-after-write technique, a frame is read immediately after being written, decoded and examined to determine if it was written successfully, and re-written if not.
When a frame is identified as having been unsuccessfully written, it is rewritten further along the tape. The original frame is not overwritten by the rewritten frame. The primary intent of the read-after-write technique is the detection and rewriting of frames containing errors of significant magnitude caused by local non-trivial defects in the tape. The determination whether a frame was written successfully depends on the quality of the recording of the frame. There must be sufficient correctly decoded data to recover the entire frame reliably.
A tape backup in which data is written to the tape typically takes several hours to complete and is usually scheduled to run unattended overnight. Occasions may arise where repeated attempts to write a frame fail and there is consequently a failure to complete the backup. This can go unnoticed for a significant period of time during which incremental data is vulnerable to loss. A failure such as this may result from mechanical damage to the tape, oxide debris or contamination, tape creases, tape edge damage and manufacturing defects or mishandling.
SUMMARY OF THE INVENTION
According to the present invention, there is now provided a method of writing a sequence of user data formatted in frames along a tape, the method comprising the steps of identifying a skip region of the tape liable to write failure, interrupting the said sequence at the said skip region and resuming the said sequence following the skip region.
Further according to the present invention, there is provided a tape storage apparatus adapted to store a sequence of user data formatted in frames along a tape, the apparatus being programmed to identify a skip region of the tape liable to write failure, to interrupt the said sequence at the skip region, and to resume the said sequence following the skip region.
DESCRIPTION OF THE DRAWINGS
The invention will now be described, by way of example only, by reference to the accompanying drawings in which; Figure 1 shows a block diagram of the components of a magnetic tape recording system embodying the present invention; Figure 2 shows the main physical components of a tape deck included in the system of Figure 1, Figure 3 is a diagrammatic representation of two data tracks recorded on a tape by means of the tape deck of Figure 2, Figure 4 and 5 are flow diagrams illustrating steps in a process embodying the present invention for recording data on a tape by means of the tape deck of Figure 2, Figure 6 shows an overall layout of data recorded on a tape by means of the process illustrated in Figures 4 and 5, Figure 7 is a flow diagram of steps in a process embodying the present invention for reading the tape shown in Figure 6, Figure 8 shows a further layout of data recorded on a tape by means of a process embodying the present invention, Figure 9 shows steps in a process embodying the present invention for recording the data layout of Figure 8, Figure 10 shows yet a further layout of data recorded on a tape in a process embodying the present invention, Figure 11 shows a process embodying the present invention for recording the layout of data shown in Figure 10, and Figure 12 shows a further process embodying the present invention for recording the layout of data shown in Figure 10.
DETAILED DESCRIPTION OF THE INVENTION
Referring to Figure 1, there is shown a data storage system 10 embodying the present invention. The system includes a host 11 coupled to a controller 12 via an interface 13. The controller 12 is programmed to control a tape drive 14 that includes a drive engine 15 and a drive mechanism 16. The drive mechanism is adapted to receive a tape cartridge 17. A controlling software application on the host 11 controls the reading and writing of data on a magnetic data tape in the tape cartridge 17.
The host system 11 has at least one central processing unit (CPU) and a memory to store the controlling software application. The interface 13 connecting the host system 11 to the controller 12 may be any suitable proprietary standard bus known to those skilled in the art.
The drive mechanism 16 includes electrical and mechanical components that receive, position and access tape cartridges.
The drive mechanism has components to lock a tape cartridge in place, an ejection motor and read/write heads. The drive engine is a data processor that is programmed to supervise the operations of the drive mechanism 16 and to manage the flow of data to be recorded in or read from a tape cartridge 17 received in the drive 14.
Referring to Figure 2, there is shown the basic layout of the tape drive 14 which is in the form of a helical-scan tape deck 20 in which tape 21 from a tape cartridge 22 passes at an angle across a rotary head drum 23. The tape is driven in the direction indicated by the arrows from a motor driven supply reel 24 to a motor driven take up reel 25. A capstan 26 and pinch roller 27 control the passage of the tape past the head drum 23. The rotary head drum 23 carries two magnetic write heads 28A and 28E spaced apart by 180 and two read heads 28C and 28D also spaced apart by 180 . The heads 28A and 28B are arranged to write a succession of overlapping oblique data tracks 30, 31 on the tape as shown in Figure 3. The two tracks 30, 31 are representative of a succession of tracks along the tape that are recorded according to a DDS format. The track written by the head 28A has a positive azimuth while the track written by the head 28B has a negative azimuth. Each pair of positive and negative azimuth tracks 30,31 constitutes a frame.
The tape 21 may be formatted so as to have a single space for data or may be formatted as a partitioned tape in which data may be recorded in one partition independently of data recorded in another partition on the tape. The present invention may be applied to either a single data space tape or a partitioned tape but for convenience will be described in relation to a single data space tape.
Referring now to Figure 4, in a first step 40, the tape cartridge 17 is inserted into the tape drive and in step 41 the tape 21 is threaded into the tape drive. As indicated in step 42, a frame in the sequence of user data received by the tape drive from the host 11 is written to the tape 21. As each frame is written to the tape 21, it is read as indicated in step 43.
In step 44 the frame read in the step 43 is decoded and checked to determine if it was written successfully or whether a read after write (RAW) failure has occurred. When a RAW failure has occurred, a check is then conducted in step 45 to determine, by reference to a count value held in the tape drive engine 15, how many times this RAW failure has occurred. If the RAW failure has been repeated less than X times, the process returns to step 42 and a fresh attempt is made to write the user data frame.
The primary intent of the RAW check is the detection of frames that contain errors of significant size and/or quantity e.g. as caused by nontrivial defects in the tape. Consequently, a re-write of a data frame may be unnecessary if the quality of the recording and the quantity of correctly decoded data is such that the data of the entire frame is recoverable with a sufficiently reliable margin. The actual performance of a user data frame against this requirement may be assessed in a number of ways, for example by measuring the length, severity and/or distribution of missing bits of data, counting the number of detected errors, comparing written and read checksums and comparing the written data with the read data on a sampled or full basis. The number X in the counter and used in step 45 is chosen to provide a reasonable certainty that the data in a written frame is not recoverable. X may for example be 3.
If the RAW failure has occurred more than X times, the process moves to step 46. In the step 46, a series of skip frames is written in a manner to be described with reference to Figures 5 and 6. Following the writing of skip frames, the process returns to step 42 to resume the writing of user data frames starting with a re-write of the failing frame. If in the step 44 it is determined that the data frame read in the step 43 has been successfully decoded without a RAW failure, the process moves to the step 47 where a check is made whether the end of the sequence of user data has been reached. If so an end of data frame is written to the tape 21 and the tape is ejected from the tape drive.
The manner of writing skip frames will now be explained with reference to Figures 5 and 6. The skip frame does not contain any user data, rather it consists of sub code information which fully identifies it as a skip frame. The sub- code information is repeated 24 times within each skip frame.
This increases the likelihood of identifying the skip frame during subsequent reads. The skip region comprises a run of 10000 skip frames, and the skip frames are encoded so that the incremental position of each skip frame in the run is represented by two counts. A first of the two counts increments from 0 at the beginning of the run to N-i = 9999 at the end of the run. The second of the counts decrements from N-i = 9999 at the beginning of the run to 0 at the end of the run.
In step 51, the drive engine 15 within the tape drive sets a first counter (not shown) to the incrementing count value for the first skip frame in a run of skip frames. In step 52 the drive engine sets a second counter (not shown) to the decrementing count value for the first skip frame in the run of skip frames. The process moves to step 53 where a skip frame is written with the count values set in the steps 51 and 52. After the first skip frame has been written, the process moves to step 54 where the increment count in the first counter is increased by one and then to step 55 where the decrement count in the second counter is reduced by one. In step 56 a check is made whether the count in the first counter has reached an end limit of 9999 and the count in the second counter has reached an end limit of 0. If the limits have not been reached, the process returns to step 53 to write the next skip frame using the count values set in steps 54 and 55. If the limits have been reached in step 56, the process moves to step 57 to resume writing the user data frames in the sequence interrupted by the run of skip frames.
Figure 6 shows diagrammatically a part of the tape 21. A region 61 of the tape 21 is occupied by some of the sequence of user data frames ending with a RAW failure at a point 62. A run of skip frames fills a skip region 63 that starts at the point 62 of the tape up to a point 64 where the interrupted sequence of user data frames is resumed and continues on in the region 65. The first skip frame at the point 62 has an increment count of 0 and a decrement count of N-i = 9999 and the last skip frame at the point 63 has an increment count of N-i = 9999 and a decrement count of 0. The sequence of user data frames on the tape 21 may be interrupted one or more times by a run of skip frames depending on the number and position of RAW failures encountered by the tape drive.
Figure 7 shows the process of reading a sequence of user data frames interrupted by a run of skip frames as recorded on the tape 21 following the process illustrated in Figures 5 and 6. In step 70, the tape 21 is loaded in the tape drive and in step 71 the tape is threaded in the tape drive. In step 72 the tape is positioned at the start of the sequence of user data frames and in step 73 a data frame is read. The process moves on to step 74 where the data is decoded and a check is made whether the frame is a user data frame or a skip frame. If the check in step 74 indicates that the frame is a user data frame, the process moves on to step 75 where a check is made whether the data frame is an end of data frame. If not the process returns to the step 73 to read the next data frame on the tape 21. If the check in step 75 is positive, the tape drive will have reached the end of the sequence of data frames and the tape 21 is ejected in step 76.
If the check in the step 74 indicates that the frame read is a skip frame, the tape drive decodes the frame to recover the increment and decrement counts. The drive will process 3 consecutive skip frames to ensure it is not picking up a bogus frame. On encountering a run of skip frames the tape drive may not be able to decode the first few frames in the run because of degradation of the tape 21. The first few attempts to recover the increment and decrement counts may be unsuccessful and so when the tape drive has successfully decoded a skip frame, the increment and decrement counts that are recovered may have values that relate to frames that are part way into the run of skip frames. On encountering a run of skip frames in the forward direction, the tape drive will recover a decrement count having a value of N-l, N-2 or N-3 etc depending on how many skip frames the tape drive has reached before it is able to recover a decrement count. This count will then indicate to the tape drive how many skip frames will be encountered in the run before reaching the last. The corresponding increment number indicates the current skip frame in the run. As an example, if the tape drive picks up a data discontinuity, and is able to decode the third skip frame in a run, the decrement count will be 9997, the increment count will be 2 and the two count values identify that the skip frame is the third in the run of 10000 frames. If the tape drive is spacing backwards onto a skip region of the tape, the first of the skip frames will have an increment count of 9999 and a decrement count of 0. As before, the count values identify where the skip frame is in the run of 10000 frames.
After decoding the counts in step 77, the process moves to step 78 where an assessment is made from the counts whether the tape drive can fast forward reading frames. The assessment is made on the basis of where the current skip frame is positioned in the run of skip frames. If the assessment is that the tape drive is able to fast forward reading frames, the process moves to step 79A where the tape drive is switched to a fast forward mode and the process returns to step 73 to read the next frame.
Once the tape drive is nearing the end of the run of skip frames, the assessment in step 78 causes the process to move to step 79B where the tape drive is switched to a normal speed mode before returning to the step 73. It will be apparent that whilst each skip frame is encoded to represent an increment count and a decrement count to indicate the position of the frame in the run of skip frames, the position of each skip frame may be indicated by a single count.
Referring to Figures 8 and 9, an alternative method of creating a skip region on the tape 21 by writing skip frames will now be described. In this alternative, each skip frame is further encoded to include an identifier that identifies the frame as either a jump frame or a landing frame. The skip region comprises a run 81 of 1000 jump frames followed by a run 82 of 1000 landing frames in a skip region of the tape 21. The run of landing frames is spaced from the run of jump frames by an intervening region 84 that has no skip frames. The jump frames are encoded so that the incremental position of each jump frame in the run is represented by two counts, a first of which increments from 0 at the beginning of the jump frame run to n-i = 999 at the end of the run. The second of the counts decrements from n-i = 999 at the beginning of the jump frame run to 0 at the end of the run. Each jump frame also has a pointer to the site of the landing frames measured in frames. Similarly, the incremental position of each landing frame in the run is represented by two counts, a first of which increments from 0 at the beginning of the landing frame run to n-i = 999 at the end of the run. The second of the counts decrements from n-i = 999 at the beginning of the landing frame run to 0 at the end of the run. Each landing frame also has a pointer to the site of the jump frames measured in frames.
In step 91A of Figure 9, the drive engine 15 within the tape drive sets a first jump counter (not shown) to the incrementing count value for the first jump frame in a run of jump frames. In step 92A the drive engine sets a second jump counter (not shown) to the decrementing count value for the first jump frame in the run of skip frames. The process moves to step 93A where a jump frame is written with the count values set in the steps 9lA and 92A and a pointer to the site where the landing frames will be written. After the first jump frame has been written, the process moves to step 94A where the increment count in the first jump counter is increased by one and then to step 95A where the decrement count is reduced by one in the second jump counter. In step 96A a check is made whether the count in the first jump counter has reached an end limit of 999 and the count in the second jump counter has reached an end limit of 0. If the limits have not been reached, the process returns to step 93A to write the next jump frame using the count values set in steps 94A and 95A.
If the limits have been reached in step 96A, the process moves to step 97 where the tape drive moves the tape at increased speed toward the site where the landing frames are to be written. In step 98 a check is performed to determine whether the tape has reached the landing frame site. If not the process returns to step 97. When the check in step 98 indicates that the landing frame site has been reached, the process moves to step 9lB.
In step 913 of Figure 9, the drive engine 15 within the tape drive sets a first landing counter (not shown) to the incrementing count value for the first landing frame in the run of landing frames. In step 92B the drive engine sets a second landing counter (not shown) to the decrementing count value for the first landing frame in the run of landing frames. The process moves to step 93B where a landing frame is written with the count values set in the steps 91B and 92B and a pointer to the site where the jump frames have been written. After the first landing frame has been written, the process moves to step 94B where the increment count in the first landing counter is increased by one and then to step 95B where the decrement count is reduced by one in the second landing counter. In step 96B a check is made whether the count in the first landing counter has reached an end limit of 999 and the count in the second landing counter has reached an end limit of 0. If the limits have not been reached, the process returns to step 93B to write the next landing frame using the count values set in steps 94B and 95B.
If the count limits have been reached as determined in the step 96B, the process moves to step 99 where the user data frames are resumed in the sequence interrupted by writing the skip region.
Referring to Figure 10, a further alternative method of creating skip regions on the tape 21 by writing skip frames will now be described. Figure 10 shows the tape 21 in which data frames are distributed between 256 logical sections 101 that are divided by logical boundaries 102 and mapped against a tape counter in the tape drive 14. The tape is also formatted to include an area 103 at the beginning of the tape in which is recorded a log of tape-usage. The log is updated following each load of the tape into the tape drive 14 to record regions where data discontinuities such as RAW failures or excessive errors or retries have occurred and to record the identity of the tape drives in which the tape was been loaded. Such regions will be referred to as dirty regions.
Two ways of updating the log and of writing skip frames may be employed. A first of these will be described with reference to Figure 11 and a second by reference to Figure 12. Referring first to Figure 11, in step 111, a tape backup operation begins by loading the tape and reading the tape load history from the log of tape usage in step 112. A determination is made from the log whether there are dirty regions overwritten by skip frames already logged on the tape. The process continues to step 113 where a determination is made whether the tape has advanced to a region identified in the log as a dirty region. If so, the process moves to step 114 where a check is made for the presence of skip frames. If skip frames are detected in step 114, the tape is advanced to the end of the skip region in step 115. If no skip frames are detected in step 114, the process moves to step 116 in which skip frames are written up to the end of the logical section in the manner already described with reference to Figure 9. The process moves on from either step 115 or 116 to step 117 where user data frames are recorded in the backup operation. In step 118 a RAW check is made to determine if a RAW failure has occurred or an excessive number of retries to successfully write data have occurred. If there has been no such occurrence, the process moves to step 119 where a check is made whether the sequence of user data to be recorded in the backup operation is complete. If not, the process returns to step 113.
If the check in step 118 is positive, the process moves to step in which the relevant dirty region is registered by the drive engine 15 in the tape drive. The process reverts to step 119 following registration of the dirty region in step 120. If, in step 113, a skip region has not been encountered, the process moves directly to step 117 without invoking steps 114, 115 or 116. If, in step 119, the recording of user data is complete, the process moves on to step 121 in which the tape 21 is rewound. In step 122 the tape log is updated with the information, if any, registered in step 119.
It will be apparent that if the check made in step 118 indicates a failure that is not recoverable so that data cannot be written to the tape, the backup process will have to be aborted. In this case, the tape is rewound and the log is updated with the information registered in step 115. A user may then attempt a fresh backup operation in which case the drive engine 15 and the tape log will indicate the dirty region where the RAW failure occurred. The drive engine will proceed as before but will now respond in step 113 by writing skip frames in the logical section where the RAW failure occurred so as to advance the tape into the logical section of the tape beyond the position where the RAW failure occurred. A repeat of the RAW failure that caused the backup to be aborted will thus be prevented.
In the method of identifying errors and writing skip regions described with reference to Figure 11, the drive engine reacts passively to the presence of errors by registering the errors as they occur. The drive engine then writes each skip region during a subsequent backup operation taking note of the logical sections that have been identified in the log as dirty and requiring to be skipped. Each skipped region occupies the whole of a logical section. The logical section numbered 5 in Figure 10 is shown diagrammatically as such a skipped logical section.
Reference will now be made to Figure 12 that illustrates a method in which it is predicted that dirty regions of the tape should be skipped. The predictions are based on events including the occurrence of an excessive error rate or an excessive use of RAW retry algorithms whilst user data is being written in a backup operation. In step 123 of Figure 12, the tape log is accessed to read the history of tape loads of the tape 21 and in step 124 a check is made to determine if the number of errors in the same region exceeds a pre-set threshold. If not the tape drive moves on to step 125 to execute the host commands instructing the tape backup operation. If it is determined in step 124 that there is an excessive error rate, the process moves to step 126 where a determination is made whether the history indicates that multiple error events have occurred in the same tape region on the same or different tape drives. If the error events occurred on different tape drives, the number of error events is checked in step 127, discounting those that occurred when a tape drive clean request was pending. If in step 127 it is determined that there were more than two error events in the same region, the process moves to step 128 where a check is made to determine whether there is any reason to suspect the performance of the tape drive. If there is no reason to suspect the performance of the tape drive, the process moves to step 129 in which a skip region is written with skip frames from the point where user data has been recorded up to the next logical section boundary on the tape. Following step 129, the process moves to step 125 to execute the next host command. User data is written from the point where the skipped region has ended. If in step 128 the performance of the tape drive is suspect, the process moves to step 125 where the host will command a response to the input from step 128. That response will depend on the reason to suspect the performance of the tape drive and may include a continuation with the backup operation or a command to perform a tape unload in step 130. A command to execute step 130 is followed in step 131 by an update of the tape load history in the tape drive and the tape log.
If in the step 126, it is determined that multiple error events have occurred on the same tape drive, the process moves to step 132 where a check is made on whether the tape drive has been successfully cleaned within the past 24 hours. If it is determined that the tape drive has been successfully cleaned in the past 24 hours, the process moves to step 128. If not, a cleaning request is made in step 133 following which the process moves to step 125 to execute the next host command.
A check is made in step 134 following the writing of user data to determine whether a read, write or positioning error has occurred. If not, the process continues with the execution of the host commands. If an error is observed in step 134, a further check is made in step 135 whether there is a performance issue or fault in the tape drive. If so the performance issue or fault is identified in step 136 and the process returns to step 124. If there is no performance issue or fault detected in step 135, the process returns directly to step 124. The host completes the backup operation by commanding execution of steps and 131 to unload the tape and update the tape load history.
The process of writing skip frames has the advantage that the jump and landing frames are not exposed to damaged or contaminated regions of the tape and so the overhead of RAW retries to complete writing the data is avoided. The tape drive heads are also less exposed to debris that could clog the heads.
Over a period of time, a number of the logical sections may be logged as dirty logical sections with the result that the tape becomes fragmented.By periodically disabling the recognition of skip frames and attempting to write a full tape, at least some of the dirty logical sections may be successfully written without excessive use of RAW retries. The entry for a successfully written logical section may then be deleted from the dirty log.
What has been described is a method of writing a sequence of user data formatted in frames along a tape and identifying a skip region of the tape liable to write failure. The sequence of user data is interrupted at the skip region and resumed following the skip region. The skip region may be identified by detecting RAW failures while writing the sequence of user data.
Alternatively, the skip region may be identified by reference to an entry in a log of tape usage.

Claims (33)

1. A method of writing a sequence of user data formatted in frames along a tape, the method comprising the steps of identifying a skip region of the tape liable to write failure, interrupting the said sequence at the said skip region and resuming the said sequence following the skip region.
2. A method as claimed in claim 1, comprising writing a run of skip frames in the skip region, the skip frames each including information that is repeated a plurality of times in each frame.
3. A method as claimed in claim 2, wherein the skip frames include count values identifying the incremental positions of the skip frames within the run of skip frames.
4. A method as claimed in claim 3, wherein the count values include count values that increment from the beginning of the run of skip frames and count values that decrement from the beginning of the run of skip frames.
5. A method as claimed in claim 2, 3 or 4 wherein the run of skip frames constitutes one of a pair of such runs of skip frames separated from each other along the tape.
6. A method as claimed in claim 5, wherein the skip frames comprise a run of jump frames and a run of landing frames, the jump frames including a pointer to the site of the landing frames and the landing frames having a pointer to the site of the jump frames.
7. A method as claimed in any one of the preceding claims, wherein the step of identifying a skip region of the tape liable to write failure comprises detecting a region of the tape where read after write failures have occurred.
8. A method as claimed in any one of the preceding claims, wherein the step of identifying a skip region of the tape liable to write failure comprises recording an identification of the skip region in a log area of the tape.
9. A method as claimed in claim 8, wherein the tape is divided into sections having predefined boundaries and the skip region occupies one of the said sections between two of the predefined boundaries.
10. A method of reading the data written by the method of any one of the preceding claims, the method comprising decoding the user data at a first speed and decoding at least some of the skip frames at a higher speed than the first speed.
11. A method of reading the data written by the method of claim 3, the method comprising decoding the user data at a first speed and decoding at least some of the skip frames at a higher speed than the first speed for a length of the tape controlled by reference to the said count values.
12. A tape storage apparatus adapted to store a sequence of user data formatted in frames along a tape, the apparatus being programmed to identify a skip region of the tape liable to write failure, to interrupt the said sequence at the skip region, and to resume the said sequence following the skip region.
13. Apparatus as claimed in claim 12, programmed to write a run of skip frames in the skip region, the skip frames each including information that is repeated a plurality of times in each frame.
14. Apparatus as claimed in claim 13, wherein the skip frames include count values identifying the incremental positions of the skip frames within the run of skip frames.
15. Apparatus as claimed in claim 14, wherein the count values include count values that increment from the beginning of the run of skip frames and count values that decrement from the beginning of the run of skip frames.
16. Apparatus as claimed in claim 13, 14 or 15, wherein the run of skip frames constitutes one of a pair of such runs of skip frames separated from each other along the tape.
17. Apparatus as claimed in claim 16, wherein the skip frames comprise a run of jump frames and a run of landing frames, the jump frames including a pointer to the site of the landing frames and the landing frames having a pointer to the site of the jump frames.
18. Apparatus as claimed in any one of claims 12 to 17, programmed to identify a skip region of the tape liable to write failure by detecting a region of the tape where read after write failures have occurred.
19. Apparatus as claimed in any one of claims 12 to 18, programmed to identify a skip region of the tape liable to write failure by recording an identification of the skip region in a log area of the tape.
20. Apparatus as claimed in claim 19, wherein the skip region occupies a section of the tape between two predefined boundaries.
21. Apparatus as claimed in any one of claims 12 to 20, programmed to read the tape, to decode the user data at a first speed and to decode at least some of the skip frames at a higher speed than the first speed.
22. Apparatus as claimed in claim 14, programmed to read the tape, to decode the user data at a first speed and to decode at least some of the skip frames at a higher speed than the first speed for a length of the tape controlled by reference to the said count values.
23. A computer program that, when loaded on a computer control system, is effective to control data storage apparatus to write a sequence of user data formatted in frames along a tape, to identify a skip region of the tape liable to write failure, to interrupt the said sequence at the said skip region and to resume the said sequence following the skip region.
24. A computer program as claimed in claim 23, effective to control the data storage apparatus to write a run of skip frames in the skip region, the skip frames each including information that is repeated a plurality of times in each frame.
25. A computer program as claimed in claim 24, wherein the skip frames include count values identifying the incremental positions of the skip frames within the run of skip frames.
26. A computer program as claimed in claim 25, wherein the count values include count values that increment from the beginning of the run of skip frames and count values that decrement from the beginning of the run of skip frames.
27. A computer program as claimed in claim 24, 25 or 26, wherein the run of skip frames constitutes one of a pair of such runs of skip frames separated from each other along the tape.
28. A computer program as claimed in claim 27, wherein the skip frames comprise a run of jump frames and a run of landing frames, the jump frames including a pointer to the site of the landing frames and the landing frames having a pointer to the site of the jump frames.
29. A computer program as claimed in any one of claims 23 to 28, effective to control the data processing apparatus to identify a skip region of the tape liable to write failure by detecting a region of the tape where read after write failures have occurred.
30. A computer program as claimed in any one of claims 23 to 29, effective to control the data processing apparatus to identify a skip region of the tape liable to write failure by recording an identification of the skip region in a log area of the tape.
31. A computer program as claimed in claim 30, wherein the skip region occupies a section of the tape between two predefined boundaries.
32. A computer program as claimed in any one of claims 23 to 31, effective to control the data processing apparatus to read the tape, to decode the user data at a first speed and to decode at least some of the skip frames at a higher speed than the first speed.
33. A computer program as claimed in claim 25, effective to control the data processing apparatus to read the tape, to decode the user data at a first speed and to decode at least some of the skip frames at a higher speed than the first speed for a length of the tape controlled by reference to the said count values.
GB0501280A 2005-01-21 2005-01-21 Tape data format having skip frames in areas of write failures Withdrawn GB2422478A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0501280A GB2422478A (en) 2005-01-21 2005-01-21 Tape data format having skip frames in areas of write failures

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0501280A GB2422478A (en) 2005-01-21 2005-01-21 Tape data format having skip frames in areas of write failures

Publications (2)

Publication Number Publication Date
GB0501280D0 GB0501280D0 (en) 2005-03-02
GB2422478A true GB2422478A (en) 2006-07-26

Family

ID=34259472

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0501280A Withdrawn GB2422478A (en) 2005-01-21 2005-01-21 Tape data format having skip frames in areas of write failures

Country Status (1)

Country Link
GB (1) GB2422478A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0572711A2 (en) * 1992-05-29 1993-12-08 Tandberg Data A/S Method and system for detecting and correcting errors on a tape in a tape drive system
US5327301A (en) * 1991-03-20 1994-07-05 Fujitsu Limited Erasing and recovering system for data block on a magnetic tape
US5394280A (en) * 1993-06-14 1995-02-28 International Business Machines Corporation Detecting a servo error on a magnetic tape and identifying extent and location of the detected servo error by linked control marks
US5892633A (en) * 1996-01-26 1999-04-06 Exabyte Corporation Dynamic control of magnetic tape drive
US5901004A (en) * 1994-01-20 1999-05-04 Sony Corporation Recording and reproducing apparatus, information signal recording and reproducing system and method of managing invalid area information
US20040264022A1 (en) * 2003-04-17 2004-12-30 International Business Machines Corp. Apparatus and method for reducing errors in writing to a storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5327301A (en) * 1991-03-20 1994-07-05 Fujitsu Limited Erasing and recovering system for data block on a magnetic tape
EP0572711A2 (en) * 1992-05-29 1993-12-08 Tandberg Data A/S Method and system for detecting and correcting errors on a tape in a tape drive system
US5394280A (en) * 1993-06-14 1995-02-28 International Business Machines Corporation Detecting a servo error on a magnetic tape and identifying extent and location of the detected servo error by linked control marks
US5901004A (en) * 1994-01-20 1999-05-04 Sony Corporation Recording and reproducing apparatus, information signal recording and reproducing system and method of managing invalid area information
US5892633A (en) * 1996-01-26 1999-04-06 Exabyte Corporation Dynamic control of magnetic tape drive
US20040264022A1 (en) * 2003-04-17 2004-12-30 International Business Machines Corp. Apparatus and method for reducing errors in writing to a storage medium

Also Published As

Publication number Publication date
GB0501280D0 (en) 2005-03-02

Similar Documents

Publication Publication Date Title
EP1684292A1 (en) Data storage apparatus and method
US5442638A (en) Apparatus and method for recording over defects in storage media
EP1715478B1 (en) Method of protecting data on recording medium and recording medium storing program for executing the method
US7561372B2 (en) System and method for writing data to magnetic tape
US20080007856A1 (en) Magnetic tape storage, method for writing data to magnetic tape, and medium for writing data program
US20060164744A1 (en) Method, system, and program for storing data in a storage medium
JPH05298835A (en) Information recording and reproducing device with mechanism for recording self diagnostic information
EP0704091B1 (en) Methods and apparatus for storing data and auxiliary information
US7440212B2 (en) Method and systems for a highly error tolerant tape format
JP3921727B2 (en) Magnetic recording / reproducing device
US7324297B2 (en) Data storage apparatus and method
KR101475993B1 (en) Method for controlling overwriting of data by tape recording apparatus, program for controlling overwriting, and tape recording apparatus
US7143232B2 (en) Method, system, and program for maintaining a directory for data written to a storage medium
EP0572711B1 (en) Method and system for detecting and correcting errors on a tape in a tape drive system
US6833970B2 (en) Data storage
JP2755370B2 (en) Peripheral storage system and data processing system control method
US7167332B2 (en) Method and apparatus for recording data onto a recording medium including warning of the approach to an end of medium position
GB2422478A (en) Tape data format having skip frames in areas of write failures
US7965463B2 (en) Recording multiple codeword sets during latency period
US7870442B2 (en) Read interchange optimization
JP2563466B2 (en) Digital signal recording / reproducing device
JP2002042303A (en) Magnetic disk device and error-processing method of magnetic disk device
US20060023336A1 (en) Cleaning read/write heads of a magnetic tape recording system
GB2419223A (en) Cleaning read/write heads of a magnetic tape recording system
JP2000293825A (en) Automatic cleaning method for magnetic head and device therefor

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)