The present invention relates to data storage, and more particularly, to providing improved error correction capability to data read from a tape by selecting an optimum tape layout with which to write data to the tape.
A tape layout scheme used to write data to a tape, such as a magnetic tape used for data storage, is a critical component of a two-level error correction architecture commonly used in magnetic tape drives. Error correction in tape drives is typically based on using a first-level C1 code and a second-level C2 code, a process which is well known in the art.
Each data set is encoded using interleaved sets of codewords that are organized into an ECC-encoded matrix of size M bytes×N bytes (M×N) and then written to tape as shown in FIG. 1, according to the prior art. There are two levels of encoding within this matrix 150. The first level of encoding utilizes the matrix rows 102. Each row 102 of the matrix contains C1-ECC row parity 106, which adds p-bytes of C1-ECC to the n-bytes of user data (e.g., N=n+p bytes). The second level of encoding, C2-ECC column parity 108, adds q-bytes of C2-ECC to each matrix column 104. For example, if q=12, then adding 12 bytes of C2-ECC would add 12 rows to the matrix 150 (e.g., M=m+q bytes).
The tape layout scheme provides reliable decoding of the two-level error correction code even if errors on the tape are spatially correlated to a large extent. An optimum tape layout design should minimize the correlations between byte errors in a C2 codeword at the C2 decoder input. Therefore, the tape layout scheme should ensure that under normal conditions, the byte errors at the C2 decoder input are as uncorrelated as possible. The first two generations of Linear Tape Open (LTO) tape drives (LTO 1 and LTO 2 tape drives) simultaneously read or write eight tracks of data, whereas the follow-on four generations of LTO tape drives (LTO 3, LTO 4, LTO 5, and LTO 6 tape drives) simultaneously read or write sixteen tracks of data. Next-generation tape drives may be capable of reading or writing even more tracks of data simultaneously.
Various tape layout algorithms have been proposed and used in tape drives. However, the drawbacks associated with current tape layout approaches are two-fold: first, no method for selecting a tape layout scheme that includes a rewrite scheme has been used, and second, there are better performance metrics available for selecting a tape layout scheme aside from maximizing a minimum codeword interleave (CWI) distance as has been used by other conventional methods.
However, regardless of the tape layout scheme that is used or the number of tracks of data that are being written or read simultaneously, if the tape layout scheme is not optimized for decorrelating the byte errors at the C2 decoder input, the data read from the tape will encounter many more uncorrectable errors than is possible using an improved tape layout scheme.