Non-regular two-dimensional error correction method, reading and writing method, controller and system suitable for optical storage
By adopting a non-regular two-dimensional error correction method in the optical storage system and using Reed-Solomon code with alternating error correction capability for encoding, the problem of insufficient block error correction capability in traditional optical storage is solved, and a stronger error correction effect is achieved.
Patent Information
- Application Number
- CN202411100227.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-12
- Publication Date
- 2025-10-03
- Estimated Expiration
- 2044-08-12
AI Technical Summary
In traditional optical storage technology, Reed-Solomon error correction codes are difficult to effectively correct block errors, resulting in limitations in the practical application of optical storage devices.
A non-regular two-dimensional error correction method is adopted. By alternately using Reed-Solomon codes with different error correction capabilities for horizontal and column encoding, a non-regular check symbol distribution is generated to enhance the error correction capability.
Without increasing the number of check symbols, the error correction capability for block errors is significantly improved, and the data recovery capability of the optical storage system is enhanced.
Smart Images

Figure CN119068960B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of optical storage technology, and more specifically, relates to a non-regular two-dimensional error correction method, a reading and writing method, a controller and a system suitable for optical storage. Background Art
[0002] Optical storage technology is widely used for massive cold data storage due to its advantages, including long shelf life, contactless read / write, high security, easy disk replacement, low production cost, and convenient copying and distribution. Traditional optical storage technology stores information based on the interaction between lasers and media, which causes changes in the media's properties. With the advent of the digital age, the demand for information storage continues to grow. It is predicted that the total amount of data generated globally will reach 175 zettabytes (ZB) by 2025. To meet this growing storage demand, increasing the storage capacity of optical storage devices is crucial. Traditional optical storage technology increases storage capacity by reducing the size of the focused laser spot and the recorded symbols on the media. However, due to the optical diffraction limit, increasing the capacity of optical discs using traditional optical storage technology is becoming increasingly difficult.
[0003] In traditional optical storage technology, Reed-Solomon error-correcting codes (Reed-Solomon codes) are widely used to ensure reliable signal readout. The Reed-Solomon Product Code (RSPC) used in DVDs encodes and decodes data. During encoding, RSPC encodes each row of data in a data block using an RS code with the same error-correcting capability to generate corresponding horizontal check symbols. Then, each column of data in the data block is encoded using an RS code with the same error-correcting capability to generate corresponding column-wise check symbols. The horizontal check symbols are then re-encoded to generate additional check symbols. Finally, the data block and all the check symbols are organized into a large coding block, completing the encoding of the data block.
[0004] RSPC has two-dimensional error correction capabilities, enabling high error correction performance. However, RSPC is only adept at resolving random and burst errors, and struggles with block errors. In practical applications, when optical storage media, such as CDs, are contaminated by fingerprints and dust, the resulting block errors are often difficult for RSPC to correct, limiting its practical application. Summary of the Invention
[0005] In response to the defects of the existing technology and the need for improvement, the present invention provides a non-regular two-dimensional error correction method, a read-write method, a controller and a system suitable for optical storage. Its purpose is to improve the error correction capability of the error correction code in the optical storage system for block errors without increasing the number of check symbols.
[0006] To achieve the above object, according to one aspect of the present invention, a non-regular two-dimensional error correction method suitable for optical storage is provided, comprising: an encoding step; the encoding step comprises:
[0007] E1: for n r row n l The data blocks D of the columns are coded horizontally and column-wise respectively;
[0008] Horizontal coding includes: alternating use of error correction capability t r1 and t r2 The RS code of the data block D is n r The rows are encoded and 2t are generated alternately accordingly. r1 horizontal check symbols and 2t r2 horizontal check symbols; all horizontal check symbols are interleaved into n r Row(t r1 +t r2 ) column horizontal check block P r ;
[0009] Column-wise coding includes: alternating use of error correction capability t l1 and t l2 The RS code of the data block D is n l Column encoding, correspondingly generate 2t alternately l1 column-wise check symbols and 2t l2 column-wise check symbols; all column-wise check symbols are interleaved into (t l1 +t l2 ) row n l Column-wise check block P l ;
[0010] Among them, t r1 , t r2 , t l1 and t l2 are all positive integers, and t r1 ≠t r2 , t l1 ≠t l2 ;
[0011] E2: Use RS code to check the horizontal block P r Encode to get (t l1 +t l2 )row(t r1 +t r2 ) column of additional check blocks P e ;
[0012] E3: Data block D and horizontal check block P r , column-wise check block P l And the additional check block P eOrganization is (n r +t l1 +t l2 )row(n l +t r1 +t r2 ) column of coding block C to complete the encoding of data block D.
[0013] Furthermore, the non-regular two-dimensional error correction method applicable to optical storage provided by the present invention further includes: a decoding step; the decoding step includes:
[0014] D1: Extract the data block D′ and the horizontal check block P from the code block C′ read from the optical storage system. r ′, column-wise check block P l ′ and additional check block P e ';
[0015] D2: For the additional check block P′ e Decode to correct the horizontal check block P r ′ is a symbol error, and the horizontal check block P is obtained. r ″;
[0016] D3: horizontal check block P r ″ is deinterleaved to obtain the horizontal check symbols corresponding to each row in the data block D′; l ' is deinterleaved to obtain the column-wise check symbols corresponding to each column in the data block D';
[0017] D4: Iteratively correct the data block D′ until the preset iteration termination condition is reached. In each iteration, the error correction includes horizontal error correction and column error correction performed sequentially.
[0018] Horizontal error correction includes: decoding the horizontal check symbols corresponding to each row to correct symbol errors in the corresponding row;
[0019] Column-wise error correction includes decoding the column-wise check symbols corresponding to each column to correct symbol errors in the corresponding column.
[0020] According to another aspect of the present invention, another non-regular two-dimensional error correction method applicable to optical storage is provided, comprising: an encoding step; the encoding step comprises:
[0021] E1: for n r row n l The data blocks D of the columns are coded horizontally and column-wise respectively;
[0022] Horizontal coding includes: alternating use of error correction capability t r1 and t r2 The RS code of the data block D is n rThe rows are encoded and 2t are generated alternately accordingly. r1 horizontal check symbols and 2t r2 horizontal check symbols; all horizontal check symbols are interleaved into n r Row(t r1 +t r2 ) column horizontal check block P r ;
[0023] Column-wise coding includes: alternating use of error correction capability t l1 and t l2 The RS code of the data block D is n l Column encoding, correspondingly generate 2t alternately l1 column-wise check symbols and 2t l2 column-wise check symbols; all column-wise check symbols are interleaved into (t l1 +t l2 ) row n l Column-wise check block P l ;
[0024] Among them, t r1 , t r2 , t l1 and t l2 are all positive integers, and t r1 ≠t r2 , t l1 ≠t l2 ;
[0025] E2: Use RS code to check the column-wise block P l Encode to get (t l1 +t l2 )row(t r1 +t r2 ) column of additional check blocks P e ;
[0026] E3: Data block D and horizontal check block P r , column-wise check block P l And the additional check block P e Organization is (n r +t l1 +t l2 )row(n l +t r1 +t r2 ) column of coding block C to complete the encoding of data block D.
[0027] Furthermore, the non-regular two-dimensional error correction method applicable to optical storage provided by the present invention further includes: a decoding step; the decoding step includes:
[0028] D1: Extract the data block D′ and the horizontal check block P from the code block C′ read from the optical storage system. r ′, column-wise check block P l ′ and additional check block P e ';
[0029] D2: For the additional check block P′ e Decode to correct the column-wise check block P l ′ is a symbol error, and the column-wise check block P is obtained. l ″;
[0030] D3: horizontal check block P r ' is deinterleaved to obtain the horizontal check symbols corresponding to each row in the data block D'; the column-wise check block P l ″De-interleave to obtain the column-wise check symbols corresponding to each column in the data block D′;
[0031] D4: Iteratively correct the data block D′ until the preset iteration termination condition is reached. In each iteration, the error correction includes horizontal error correction and column error correction performed sequentially.
[0032] Horizontal error correction includes: decoding the horizontal check symbols corresponding to each row to correct symbol errors in the corresponding row;
[0033] Column-wise error correction includes decoding the column-wise check symbols corresponding to each column to correct symbol errors in the corresponding column.
[0034] According to yet another aspect of the present invention, there is provided a non-regular two-dimensional error correction device suitable for optical storage, comprising: a computer-readable storage medium and a processor;
[0035] Computer-readable storage medium for storing computer programs;
[0036] The processor is used to read the computer program stored in the computer-readable storage medium and execute the above-mentioned non-regular two-dimensional error correction method applicable to optical storage provided by the present invention.
[0037] According to another aspect of the present invention, there is provided a reading and writing method applicable to optical storage, comprising: a writing operation and a reading operation;
[0038] The write operation includes: r row n l The data block D of the column is encoded using the encoding steps of the above-mentioned irregular two-dimensional error correction method applicable to optical storage provided by the present invention to obtain a coded block C, and the coded block C is written into the optical storage medium;
[0039] The read operation includes: reading the code block C' from the optical storage medium, decoding it using the decoding steps of the above-mentioned irregular two-dimensional error correction method applicable to optical storage provided by the present invention, and obtaining the data block D to be read.
[0040] According to yet another aspect of the present invention, there is provided an optical storage controller comprising: a computer-readable storage medium and a processor;
[0041] Computer-readable storage medium for storing computer programs;
[0042] The processor is used to read the computer program stored in the computer-readable storage medium and execute the above-mentioned reading and writing method applicable to optical storage provided by the present invention.
[0043] According to another aspect of the present invention, an optical storage system is provided, comprising: an optical storage medium and the above-mentioned optical storage controller provided by the present invention.
[0044] When encoding, traditional RSPC codes have the same error correction capability in each row and column. When a block error is large and exceeds the error correction capability of a row or column, the block error cannot be corrected.
[0045] The above technical solution conceived by the present invention can achieve the following beneficial effects compared with the traditional RSPC code:
[0046] The present invention implements a non-regular two-dimensional error correction code by interleaving the use of error correction codes with strong and weak error correction capabilities for horizontal encoding, so that adjacent rows have different error correction capabilities, and interleaving the use of error correction codes with strong and weak error correction capabilities for column encoding, so that adjacent columns have different error correction capabilities. When the total number of horizontal check symbols and the total number of column check symbols are equal to those of traditional RSPC codes, for larger block errors, during the iterative error correction process, the rows or columns with stronger error correction capabilities can be used to correct the symbol errors in the block errors, destroying the error pattern and reducing the number of symbol errors in the rows or columns with weaker error correction capabilities, so that the symbol errors in these rows and columns can also be corrected in subsequent iterations.
[0047] In general, the present invention can improve the error correction capability for block errors without increasing the number of check symbols through a non-regular two-dimensional encoding method. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] Figure 1 Schematic diagram of a non-regular two-dimensional error correction method applicable to optical storage provided in Example 1 of the present invention;
[0049] Figure 2 Schematic diagram of horizontal coding and column coding in Example 1 of the present invention;
[0050] Figure 3 This is a schematic diagram of a coding block formed after coding in Example 1 of the present invention;
[0051] Figure 4 The diagram shows four uncorrectable error modes in Example 1 of the present invention; wherein (a), (b), (c), and (d) correspond to the four error modes respectively. DETAILED DESCRIPTION
[0052] In order to make the objectives, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely for the purpose of explaining the present invention and are not intended to limit the present invention. In addition, the technical features involved in the various embodiments of the present invention described below may be combined with each other as long as they do not conflict with each other.
[0053] In the present invention, the terms "first", "second", etc. (if any) in the present invention and the drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0054] Example 1:
[0055] A non-regular two-dimensional error correction method suitable for optical storage, such as Figure 1 As shown, it includes: encoding step and decoding step.
[0056] like Figure 1 and Figure 2 As shown, the encoding steps of this embodiment include:
[0057] E1: for n r row n l The data blocks D of the columns are coded horizontally and column-wise respectively;
[0058] Horizontal coding includes: alternating use of error correction capability t r1 and t r2 The RS code of the data block D is n r The rows are encoded and 2t are generated alternately accordingly. r1 horizontal check symbols and 2t r2 horizontal check symbols; all horizontal check symbols are interleaved into n r Row(t r1 +t r2 ) column horizontal check block P r ;
[0059] Column-wise coding includes: alternating use of error correction capability t l1 and t l2 The RS code of the data block D is n lColumn encoding, correspondingly generate 2t alternately l1 column-wise check symbols and 2t l2 column-wise check symbols; all column-wise check symbols are interleaved into (t l1 +t l2 ) row n l Column-wise check block P l ;
[0060] Among them, t r1 , t r2 , t l1 and t l2 are all positive integers, and t r1 ≠t r2 , t l1 ≠t l2 ;
[0061] E2: Use RS code to check the horizontal block P r Encode to get (t l1 +t l2 )row(t r1 +t r2 ) column of additional check blocks P e ;
[0062] E3: Data block D and horizontal check block P r , column-wise check block P l And the additional check block P e Organization Figure 3 As shown (n r +t l1 +t l2 )row(n l +t r1 +t r2 ) column of coding block C to complete the encoding of data block D.
[0063] like Figure 1 As shown, in this embodiment, the decoding step includes:
[0064] D1: Extract the data block D′ and the horizontal check block P from the code block C′ read from the optical storage system. r ′, column-wise check block P l ′ and additional check block P e ';
[0065] D2: For the additional check block P′ e Decode to correct the horizontal check block P r ′ is a symbol error, and the horizontal check block P is obtained. r ″;
[0066] D3: horizontal check block P r″ is deinterleaved to obtain the horizontal check symbols corresponding to each row in the data block D′; l ' is deinterleaved to obtain the column-wise check symbols corresponding to each column in the data block D';
[0067] D4: Iteratively correct the data block D′ until the preset iteration termination condition is reached. In each iteration, the error correction includes horizontal error correction and column error correction performed sequentially.
[0068] Horizontal error correction includes: decoding the horizontal check symbols corresponding to each row to correct symbol errors in the corresponding row;
[0069] Column-wise error correction includes decoding the column-wise check symbols corresponding to each column to correct symbol errors in the corresponding column.
[0070] In practical applications, the iteration termination condition can be set as: all symbol errors have been corrected; or the number of symbol errors no longer changes after iteration; or a preset maximum number of iterations is reached.
[0071] In this embodiment, by alternating between using RS codes with strong and weak error correction capabilities for horizontal encoding, and alternating between using RS codes with strong and weak error correction capabilities for column encoding, adjacent rows have different error correction capabilities, and different columns have different error correction capabilities. Therefore, this embodiment implements a non-regular two-dimensional error correction code. While the total number of horizontal check symbols and the total number of column check symbols are equal to those of a traditional RSPC code, this embodiment will have a stronger block error correction capability. This will be explained below with reference to specific examples.
[0072] First, assume that there is a 16-row 16-column information data block, where each element is 8 bits long and belongs to the Galois field GF(2 8 ) symbol.
[0073] In the encoding step, when horizontally encoding the information data block, the error correction capability is alternately used. r1 =4 RS code and error correction capability is t r2 =2 RS code for encoding.
[0074] Using error correction capability t r2 = 4 RS code is used for encoding, specifically using RS (24, 16) code to obtain 8 horizontal check symbols, where the generating polynomial used for encoding is
[0075] g(x)=(x-α)(x-α 2 )…(x-α 8 )
[0076] Using error correction capability tr1 = 2, specifically using RS (20, 16) code to encode, to obtain 4 horizontal check symbols, where the generating polynomial used in the encoding is
[0077] g(x)=(x-α)(x-α 2 )…(x-α 4 )
[0078] Interweave all the horizontal check symbols obtained above to obtain a horizontal check block P with 16 rows and 6 columns. r ;
[0079] When encoding the information data block in the column direction, the error correction capability is alternately used. l1 =4 RS code and error correction capability is t l2 =2 RS code for encoding.
[0080] Using error correction capability t l2 = 4 RS code is used for encoding, specifically using RS (24, 16) code to obtain 8 column-wise check symbols, where the generating polynomial used for encoding is
[0081] g(x)=(x-α)(x-α 2 )…(x-α 8 )
[0082] Using error correction capability t l1 = 2, specifically using RS (20, 16) code to encode, to obtain 4 column-wise check symbols, where the generating polynomial used in the encoding is
[0083] g(x)=(x-α)(x-α 2 )…(x-α 4 )
[0084] All the column-wise parity symbols obtained above are interleaved together to obtain a column-wise parity block P1 of 6 rows and 16 columns.
[0085] Finally, the horizontal check block is encoded using RS code to obtain 6×6 check symbols and interleaved into an additional check block P with 6 rows and 6 columns. e The original information data block and the horizontal check block P r and column-wise parity block P l Finally, it is organized into a coding block of 22 rows and 22 columns.
[0086] In the decoding step, the coded block is first decomposed into information data block, horizontal check block P r , column-wise check block P l and additional check block P e .
[0087] Next, the additional check block P e Decode and correct horizontal check block P r The error in P is detected by the traditional Reed-Solomon decoding algorithm. r Check the corresponding symbols: α 1 , α 2 ,…,α 6 Substitute the code element polynomial into the calculated syndrome S1, S2, ..., S6, and then use the syndrome to calculate the error position polynomial and error value polynomial. Then use the Qian search algorithm and Forney algorithm to calculate the error position and the corresponding error value respectively, and finally correct the corresponding position of the code element.
[0088] Then, P r De-interleave to restore the check symbol sequence obtained during horizontal coding and perform horizontal decoding. r1 =2 length of the row, and α 1 , α 2 ,…,α 4 Substituting into the code element polynomial, we can calculate the syndromes S1, S2, ..., S4. For t r2 =4 length rows, change α 1 , α 2 ,…,α 8 Substitute the code element polynomial into the calculated syndrome S1, S2, ..., S8, and then use the syndrome to calculate the error position polynomial and error value polynomial. Then use the Qian search algorithm and Forney algorithm to calculate the error position and the corresponding error value respectively. Finally, correct the corresponding position of the code element to achieve horizontal error correction.
[0089] Finally, P l De-interleaving restores the check symbol sequence obtained during column encoding and performs column decoding. l1 = 2 length columns, and α 1 , α 2 ,…,α 4 Substituting into the code element polynomial, we can calculate the syndromes S1, S2, ..., S4. For t l2 =4 length column, change α 1 , α 2 ,…,α 8 Substitute the code element polynomial into the calculated syndrome S1, S2, ..., S8, and then use the syndrome to calculate the error position polynomial and error value polynomial. Then use the Qian search algorithm and Forney algorithm to calculate the error position and corresponding error value respectively. Finally, correct the corresponding position of the code element to achieve column-wise error correction.
[0090] The above-mentioned horizontal error correction and column error correction are iterated multiple times to finally restore the correct data block D.
[0091] If the traditional RSPC code is used for encoding, when the information data block of 16 rows and 16 columns is encoded to obtain a coding block of 22 rows and 22 columns, the error correction capability of each row is 3, and the error correction capability of each column is also 3.
[0092] Now assume that symbol errors of varying numbers and sizes occur in a 22-row, 22-column coding block. One of these errors is a 4×4 block error at the intersection of rows 11 to 14 and columns 12 to 15. If a traditional RSPC code is used, this block error cannot be corrected. When using the encoding method provided in this embodiment, the error correction capability for rows 11 and 13 is 4, the error correction capability for rows 12 and 14 is 2, the error correction capability for columns 12 and 14 is 2, and the error correction capability for columns 13 and 15 is 4. In the first iteration, when horizontal error correction is performed, the symbol errors in rows 11 and 13 can be corrected. At this time, the block error pattern is broken down to a 2×4 size, and the symbol errors in each column are reduced to 2. When column-wise error correction is performed, these symbol errors can all be corrected, and ultimately the entire block error is corrected.
[0093] Another error is a 4×8 block error at the intersection of rows 1 to 4 and columns 1 to 8. If the traditional RSPC code is used, this block error cannot be corrected. When the encoding method provided in this embodiment is used, the error correction capability of rows 1 and 3 is 4, the error correction capability of rows 2 and 4 is 2, the error correction capability of columns 1, 3, 5, and 7 is 4, and the error correction capability of columns 2, 4, 6, and 8 is 2. In the first iteration, when horizontal error correction is performed, since the number of symbol errors in rows 1 to 4 is 8, they all exceed the error correction capability of the corresponding rows and cannot be corrected; when column-wise error correction is performed, the symbol errors in columns 1, 3, 5, and 7 can be corrected. At this time, the block error pattern will be destroyed to a size of 4×4, and the symbol error of each row is reduced to 4. In the second iteration, when horizontal error correction is performed, the number of symbol errors in each row is 4. At this time, the block error pattern will be destroyed to a size of 2×4, and the symbol errors in the remaining columns are reduced to 2. When column-wise error correction is performed, these symbol errors can all be corrected, and finally the entire block error is corrected.
[0094] Based on the above examples, it can be seen that, when the number of horizontal check symbols and the column check symbols are the same, this embodiment has a stronger block error correction capability than the traditional RSPC code.
[0095] It should be noted that in actual applications of this embodiment, when the symbol errors in each row of block errors exceed the error correction capability of the corresponding row, and the symbol errors in each column also exceed the error correction capability of the corresponding row, the error will not be corrected. Figure 4(a), (b), (c), and (d) are four error modes that cannot be corrected by this embodiment. However, the statistical analysis results of a large number of error modes show that Figure 4 The probability of the error pattern shown is extremely low. Therefore, this embodiment can still be effectively applied to an optical storage system to achieve symbol error correction.
[0096] Example 2:
[0097] A non-regular two-dimensional error correction method suitable for optical storage. This embodiment is similar to the above-mentioned embodiment 1 and also includes an encoding step and a decoding step. The difference is that in the encoding step of this embodiment, after the data block is horizontally encoded and column-wise encoded, the column-wise check block is encoded to generate an additional check block; accordingly, in the decoding step of this embodiment, the data block D′ and the horizontal check block P′ are extracted from the code block C′ read from the optical storage system. r ′, column-wise check block P l ′ and additional check block P e ', the additional check block P' e Decode to correct the column-wise check block P l ′ is a symbol error, and the column-wise check block P is obtained. l ″, and when de-interleaving is performed, the horizontal check block P r ' is deinterleaved to obtain the horizontal check symbols corresponding to each row in the data block D'; the column-wise check block P l ″ is deinterleaved to obtain the column-wise check symbols corresponding to each column in the data block D′.
[0098] Specifically, in this embodiment, the encoding step includes:
[0099] E1: for n r row n l The data blocks D of the columns are coded horizontally and column-wise respectively;
[0100] Horizontal coding includes: alternating use of error correction capability t r1 and t r2 The RS code of the data block D is n r The rows are encoded and 2t are generated alternately accordingly. r1 horizontal check symbols and 2t r2 horizontal check symbols; all horizontal check symbols are interleaved into n r Row(t r1 +t r2 ) column horizontal check block P r ;
[0101] Column-wise coding includes: alternating use of error correction capability t l1 and t l2 The RS code of the data block D is nl Column encoding, correspondingly generate 2t alternately l1 column-wise check symbols and 2t l2 column-wise check symbols; all column-wise check symbols are interleaved into (t l1 +t l2 ) row n l Column-wise check block P l ;
[0102] Among them, t r1 , t r2 , t l1 and t l2 are all positive integers, and t r1 ≠t r2 , t l1 ≠t l2 ;
[0103] E2: Use RS code to check the column-wise block P l Encode to get (t l1 +t l2 )row(t r1 +t r2 ) column of additional check blocks P e ;
[0104] E3: Data block D and horizontal check block P r , column-wise check block P l And the additional check block P e Organization is (n r +t l1 +t l2 )row(n l +t r1 +t r2 ) column of coding block C to complete the encoding of data block D.
[0105] In this embodiment, the decoding step includes:
[0106] D1: Extract the data block D′ and the horizontal check block P from the code block C′ read from the optical storage system. r ′, column-wise check block P l ′ and additional check block P e ';
[0107] D2: For the additional check block P′ e Decode to correct the column-wise check block P l ′ is a symbol error, and the column-wise check block P is obtained. l ″;
[0108] D3: horizontal check block P r' is deinterleaved to obtain the horizontal check symbols corresponding to each row in the data block D'; the column-wise check block P l ″De-interleave to obtain the column-wise check symbols corresponding to each column in the data block D′;
[0109] D4: Iteratively correct the data block D′ until the preset iteration termination condition is reached. In each iteration, the error correction includes horizontal error correction and column error correction performed sequentially.
[0110] Horizontal error correction includes: decoding the horizontal check symbols corresponding to each row to correct symbol errors in the corresponding row;
[0111] Column-wise error correction includes decoding the column-wise check symbols corresponding to each column to correct symbol errors in the corresponding column.
[0112] In this embodiment, the specific implementation of each step can refer to the description in the above embodiment 1.
[0113] Similarly, this embodiment implements a non-regular two-dimensional error correction code. When the number of overall horizontal check symbols and overall column check symbols are equal to those of traditional RSPC codes, this embodiment will have a stronger block error correction capability.
[0114] Example 3:
[0115] A non-regular two-dimensional error correction device suitable for optical storage, comprising: a computer-readable storage medium and a processor;
[0116] Computer-readable storage medium for storing computer programs;
[0117] The processor is used to read the computer program stored in the computer-readable storage medium and execute the irregular two-dimensional error correction method applicable to optical storage provided in the above embodiment 1 or 2.
[0118] Example 4:
[0119] A reading and writing method applicable to optical storage, comprising: a writing operation and a reading operation;
[0120] The write operation includes: r row n l The data block D of the column is encoded using the encoding steps of the irregular two-dimensional error correction method applicable to optical storage provided in the above embodiment 1 or 2 to obtain a coded block C, and the coded block C is written into the optical storage medium;
[0121] The read operation includes: reading the code block C' from the optical storage medium, decoding it using the decoding steps in the irregular two-dimensional error correction method applicable to optical storage provided in the above embodiment 1 or 2, and obtaining the data block D to be read.
[0122] Example 5:
[0123] An optical storage controller includes: a computer-readable storage medium and a processor;
[0124] Computer-readable storage medium for storing computer programs;
[0125] The processor is used to read the computer program stored in the computer-readable storage medium and execute the reading and writing method applicable to optical storage provided in the above embodiment 4.
[0126] Example 6:
[0127] An optical storage system includes an optical storage medium and the optical storage controller provided in the fifth embodiment.
[0128] It will be easily understood by those skilled in the art that the above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.
Claims
1. A non-regular two-dimensional error correction method suitable for optical storage, characterized in that: include: Coding steps; The encoding step comprises: E1: for n r row n l The data blocks D of the columns are coded horizontally and column-wise respectively; The horizontal coding includes: alternatingly using an error correction capability of t r1 and t r2 The RS code of the data block D is n r The rows are encoded and 2t are generated alternately accordingly. r1 horizontal check symbols and 2t r2 horizontal check symbols; all horizontal check symbols are interleaved into n r Row(t r1 +t r2 ) column horizontal check block P r ; The column coding includes: alternately using the error correction capability of t l1 and t l2 The RS code of the data block D is n l Column encoding, correspondingly generate 2t alternately l1 column-wise check symbols and 2t l2 column-wise check symbols; all column-wise check symbols are interleaved into (t l1 +t l2 ) row n l Column-wise check block P l ; Among them, t r1 , t r2 , t l1 and t l2 are all positive integers, and t r1 ≠t r2 , t l1 ≠t l2 ; E2: Use RS code to check the horizontal check block P r Encode to get (t l1 +t l2 )row(t r1 +t r2 ) column of additional check blocks P e ; E3: The data block D and the horizontal check block P r , the column-wise check block P l And the additional check block P e Organization is (n r +t l1 +t l2 )row(n l +t r1 +t r2 ) column of coding blocks C to complete the encoding of the data block D.
2. The non-regular two-dimensional error correction method for optical storage according to claim 1, wherein: It also includes: a decoding step; the decoding step includes: D1: Extract the data block D′ and the horizontal check block P from the code block C′ read from the optical storage system. r ′, column-wise check block P l ′ and additional check block P e '; D2: For the additional check block P e ′ Decode to correct the horizontal check block P r ′ is a symbol error, and the horizontal check block P is obtained. r ″; D3: For the horizontal check block P r ” is deinterleaved to obtain the horizontal check symbols corresponding to each row in the data block D′; the column-wise check block P l ' is deinterleaved to obtain the column-wise check symbols corresponding to each column in the data block D'; D4: performing iterative error correction on the data block D′ until a preset iteration termination condition is reached; in each iteration, error correction includes sequentially performing horizontal error correction and column error correction; The horizontal error correction includes: decoding the horizontal check symbols corresponding to each row to correct symbol errors in the corresponding row; The column-wise error correction includes decoding the column-wise check symbols corresponding to each column to correct symbol errors in the corresponding column.
3. A non-regular two-dimensional error correction method suitable for optical storage, characterized in that: include: Coding steps; The encoding step comprises: E1: for n r row n l The data blocks D of the columns are coded horizontally and column-wise respectively; The horizontal coding includes: alternatingly using an error correction capability of t r1 and t r2 The RS code of the data block D is n r The rows are encoded and 2t are generated alternately accordingly. r1 horizontal check symbols and 2t r2 horizontal check symbols; all horizontal check symbols are interleaved into n r Row(t r1 +t r2 ) column horizontal check block P r ; The column coding includes: alternately using the error correction capability of t l1 and t l2 The RS code of the data block D is n l Column encoding, correspondingly generate 2t alternately l1 column-wise check symbols and 2t l2 column-wise check symbols; all column-wise check symbols are interleaved into (t l1 +t l2 ) row n l Column-wise check block P l ; Among them, t r1 , t r2 , t l1 and t l2 are all positive integers, and t r1 ≠t r2 , t l1 ≠t l2 ; E2: Use RS code to check the column-wise check block P l Encode to get (t l1 +t l2 )row(t r1 +t r2 ) column of additional check blocks P e ; E3: The data block D and the horizontal check block P are r , the column-wise check block P l And the additional check block P e Organization is (n r +t l1 +t l2 )row(n l +t r1 +t r2 ) column of coding blocks C to complete the encoding of the data block D.
4. The non-regular two-dimensional error correction method for optical storage according to claim 3, wherein: It also includes: a decoding step; the decoding step includes: D1: Extract the data block D′ and the horizontal check block P from the code block C′ read from the optical storage system. r ′, column-wise check block P l ′ and additional check block P e '; D2: For the additional check block P e ′ Decode to correct the column-wise check block P l ′ is a symbol error, and the column-wise check block P is obtained. l ″; D3: For the horizontal check block P r ' is deinterleaved to obtain the horizontal check symbols corresponding to each row in the data block D'; the column-wise check block P l ″De-interleave to obtain the column-wise check symbols corresponding to each column in the data block D′; D4: performing iterative error correction on the data block D′ until a preset iteration termination condition is reached; in each iteration, error correction includes sequentially performing horizontal error correction and column error correction; The horizontal error correction includes: decoding the horizontal check symbols corresponding to each row to correct symbol errors in the corresponding row; The column-wise error correction includes decoding the column-wise check symbols corresponding to each column to correct symbol errors in the corresponding column.
5. A non-regular two-dimensional error correction device suitable for optical storage, characterized in that: include: Computer-readable storage media and processor; The computer-readable storage medium is used to store a computer program; The processor is used to read the computer program stored in the computer-readable storage medium and execute the non-regular two-dimensional error correction method applicable to optical storage according to any one of claims 1 to 4.
6. A reading and writing method suitable for optical storage, characterized in that: include: Write operations and read operations; The write operation includes: for n to be written r row n l The data block D of the column is encoded by using the encoding step in the irregular two-dimensional error correction method suitable for optical storage according to claim 2 or 4 to obtain a coded block C, and the coded block C is written into the optical storage medium; The read operation includes: reading the code block C' from the optical storage medium, decoding it using the decoding step in the irregular two-dimensional error correction method applicable to optical storage according to claim 2 or 4, and obtaining the data block D to be read.
7. An optical storage controller, characterized in that: include: Computer-readable storage media and processor; The computer-readable storage medium is used to store a computer program; The processor is used to read the computer program stored in the computer-readable storage medium and execute the reading and writing method applicable to optical storage according to claim 6.
8. An optical storage system, characterized in that: include: An optical storage medium and the optical storage controller according to claim 7.
Citation Information
Patent Citations
Construction method of single-node fault quick repair erasure code
CN113258938A
Two-dimensional folding error correction method, controller and system suitable for optical storage
CN117672274A