Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUSRE34245 E
Publication typeGrant
Application numberUS 07/578,178
Publication dateMay 11, 1993
Filing dateSep 6, 1990
Priority dateDec 26, 1984
Fee statusPaid
Also published asDE3590661C2, DE3590661T, US4769819, WO1986003911A1
Publication number07578178, 578178, US RE34245 E, US RE34245E, US-E-RE34245, USRE34245 E, USRE34245E
InventorsKiyoshi Matsutani, Ken Ohnishi
Original AssigneeMitsubishi Denki Kabushiki Kaisha
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Two stage coding method
US RE34245 E
Abstract
Errors which arise in recording and reproducing data in a recording material are corrected with the use of an error correction code such as an RS (Reed-Solomon) code, and a two stage C2 and C1 coding method is conducted at an interval of repetition of a combination of [k2 /n2 ] and [k2 /n2 ]+1 on digital data having a two dimensional arrangement of k1 in the first direction and k2 in the second direction, whereby burst error correction ability is enhanced by the enhancement of error correction capacity.
Images(4)
Previous page
Next page
Claims(4)
We claim:
1. A two stage coding system for encoding digital information arranged in a matrix of k1 q digits in a first direction, and k2 digits in a second direction orthogonal to the first direction, wherein
K1, q, and k2 are integers,
K1 <k2 ; q=the number of digits per data word, and
K1, K2 =the number of data words in said first and second directions respectively, comprising:
C2 encoder means for encoding said digital information with a C2 code on a Galois Field GF (2q), including means for .[.numbering.]. .Iadd.selecting .Iaddend.data words in said matrix diagonally from an arbitrary data word a1 and establishing a2 to an2, wherein n2 is the length of .[.code.]. .Iadd.the .Iaddend.C2 encoded data, such that ##EQU8## wherein h1 to hn2-1 satisfy the following
h2i-1 =[K2 /n2 ]
h2i =[k2 /n2 ]+1 1≦i≦(n2 -1)/.Badd.2
.Iadd.said C2 encode means including .Iaddend.means for C2 encoding said .[.numbered.]. .Iadd.selected .Iaddend.data words, and means for adding the obtained C2 code to an end of said matrix in said first direction; and
C1 encoder means for encoding said C2 encoded matrix with a C1 code having a .Iadd.predetermined .Iaddend.length .[.of n1 .]. on a GF (2q) for each row of data words in said first direction, and adding the obtained C1 code to an end of said matrix in said first direction. .Iadd.
2. The two stage coding system of claim 1 wherein said means for C2 encoding further encodes said selected data words in each said diagonal;
said means for adding a C2 code to the end of each said diagonal to form a C2 code field at the end of said matrix in said first direction. .Iaddend. .Iadd.3. The two stage coding system of claim 2 wherein said C2 encoder means subtracts n2 k2 from any initially calculated value of a2 to an2 that exceed n2 k2 to select data words in said matrix diagonally. .Iaddend. .Iadd.4. The two stage coding system of claim 1 wherein said C2 encoder means subtracts n2 k2 from any initially calculated value of a2 to an2 that exceed n2 k2 to select data words in said matrix diagonally. .Iaddend. .Iadd.5. The two stage coding system of claim 1 wherein additional data added to said rows of data words in said first direction prior to encoding of said C2 encoded matrix with a C1 code is also encoded with this C1 code by said C1 encoder means. .Iaddend. .Iadd.6. A two stage coding system for encoding digital information arranged in an information matrix of k1 q digits in a first direction, and k2 digits in a second direction orthogonal to the first direction, wherein
k1, q, and k2 are integers,
k1 <k2 ; q=the number of digits per data word, and
k1, k2 =the number of data words in said first and second directions respectively, comprising:
C2 encoder means for encoding said digital information with a C2 code on a Galois field GF(22), said C2 encoder means selecting data words in said information matrix diagonally from an arbitrary data word a1 and including a2 to an2, wherein n2 is the length of the C2 encoded data, such that
a2 =a1 +n2 h1 +1
a3 =a2 +n2 h2 +1
:
ak1 =ak1-1 +n2 hk1-1 +1
:
an2 =an2-1 +n2 hn2-1 +1,
h1 to h2n-1 each being selected from one of hA and hB, wherein,
hA =[k2 /n2 ],
hB =[k2 /n2 ]+1, and
hA l1 +hB l2 ≦k2, where
l1 +l2 =n2 
said C2 encoder means forming said C2 code from said selected data words and adding the obtained C2 code to an end of said information matrix in said first direction thereby forming a C2 encoded matrix; and
C1 encoder means for encoding each line in said first direction of said C2 encoded matrix with a C1 code having a predetermined length on a GF(2q), and adding the obtained C1 code to an end of each said line of said matrix in said first direction to form a C2
C1 encoded matrix. .Iaddend. .Iadd.7. The two stage coding system of claim 6 wherein a group of two or more adjacent lines h1, h2, . . . utilize a repetition pattern having at least one of each of hA and hB contained therein, said selection of data words a1 to an by said C2 encoder means utilizing said repetition pattern for selection of all said data words (a) in said information matrix. .Iaddend. .Iadd.8. The two stage coding system of claim 7 wherein said repetition pattern is selected from the group consisting of hA, hB ; hB, hA ; and hA, hB, hB. .Iaddend. .Iadd.9. The two stage coding system of claim 6 wherein:
h2i-1 =hA,
h2i =hB,
where 1<i<(n2 -1)/2. .Iaddend. .Iadd.10. The two stage coding system of claim 6 wherein:
h2i-1 =hB,
h2i =hA,
where 1<i<(n2 -1)/2. .Iaddend. .Iadd.11. The two stage coding system of claim 6 wherein said C2 encoder means repeatedly selects data words in said information matrix from an arbitrary data word a1 and including a2 to an2, said C2 encoder means repeatedly forming said C2 code and adding said C2 to the end of the matrix, each repetition starting from a different arbitrary data word a1. .Iaddend. .Iadd.12. The two stage coding system of claim 11 wherein said C2 encoder means selects k2 arbitrary data words from which to perform selecting, forming and adding to thereby form a complete C2 encoded matrix. .Iaddend. .Iadd.13. The two stage coding system of claim 6 wherein said means for C2 encoding further encodes said selected data words in each said diagonal;
said means for adding a C2 code to the end of each said diagonal to form a C2 code field at the end of said information matrix in said first direction. .Iaddend. .Iadd.14. The two stage coding system of claim 6 wherein additional data added to said rows of data words in said first direction prior to encoding of said C2 encoded matrix with a C1 code is also encoded with this C1 code by said C1 encoder means to thereby form said C2 C1 encoded matrix. .Iaddend. .Iadd.15. The two stage coding system of claim 14 wherein the length of said C2 C1 encoded data matrix in the first direction is (n1 +k3)q digits, where k3 is an integer. .Iaddend. .Iadd.16. The two stage coding system of claim 6 wherein said C2 encoder means subtracts n2 k2 from any initially calculated value of a2 to an2 that exceed n2 k2 to select data words in said matrix diagonally. .Iaddend. .Iadd.17. The two stage coding system of claim 6 wherein the length of said C2 C1 encoded data matrix in the first direction is n1 q digits. .Iaddend. .Iadd.18. A two stage coding system for encoding digital information arranged in an information matrix of k1 q digits in a first direction, and k2 digits in a second direction orthogonal to the first direction, wherein
k1, q, and k2 are integers,
k1 <kq ; q=the number of digits per data word, and
k1, k2 =the number of data words in said first and second directions respectively,
said system further single stage coding additional information of k3 q digits in the first direction, where k3 is an integer and k2 digits in the second direction, comprising:
C2 encoder means for encoding said digital information with a C2 code on a Galois field GF(2q), said C2 encoder means selecting data words in said information matrix diagonally from an arbitrary data word a1 and including a2 to an2, wherein n2 is the length of the C2 encoded data, such that
a2 =a1 +n2 h1 +1
a3 =a2 +n2 h2 +1
:
ak1 =ak1-1 +n2 hk1-1 +1
:
an2 =an2-1 +n2 hn2-1 +1
h1 to hn2-1 each being selected from one of hA and hB, wherein,
hA =[k2 /n2 ],
hB =[k2 /n2 ]+1, and
hA l1 +hB l2 ≦k2, where
l1 +l2 =n2 
said C2 encoder means forming said C2 code from said selected data words and adding the obtained C2 code to an end of said information matrix in said first direction to form a C2 encoded matrix; and
said additional data of k3 words and said C2 encoded matrix collectively forming an added data matrix having k2 lines;
C1 encoder means for encoding each of said k2 lines extending in said first direction of said added data matrix with a C1 code having a predetermined length on a GF(2q), and adding the obtained C1 code to an end of each said line of said added data matrix in said first
direction to form a C2 C1 encoded matrix. .Iaddend. .Iadd.19. The two stage coding system of claim 18 wherein a group of two or more adjacent lines h1, h2, . . . utilize a repetition pattern having at least one of each of hA and hB contained therein, said selection of data words a1 to an by said C2 encoder means utilizing said repetition pattern for selection of all said data words (a) in said information matrix. .Iaddend. .Iadd.20. The two stage coding system of claim 19 wherein said repetition pattern is selected from the group consisting of hA, hB ; hB, hA ; and hA, hB, hB. .Iaddend. .Iadd.21. The two stage coding system of claim 18 wherein:
h2i-1 =hA,
h2i =hB,
where 1<i<(n2 -1)/2. .Iaddend. .Iadd.22. The two stage coding system of claim 18 wherein:
h2i-1 =hB,
h2i =hA,
where 1<i<(n2 -1)/2. .Iaddend. .Iadd.23. The two stage coding system of claim 18 wherein said C2 encoder means repeatedly selects data words in said information matrix from an arbitrary data word a1 and including a2 to an2, said C2 encoder means repeatedly forming said C2 code and adding said C2 to the end of the matrix, each repetition starting from a different arbitrary data word a1. .Iaddend. .Iadd.24. The two stage coding system of claim 23 wherein said C2 encoder means selects k2 arbitrary data words from which to perform selecting, forming and adding to thereby form a complete C2 encoded matrix. .Iaddend. .Iadd.25. The two stage coding system of claim 18 wherein said means for C2 encoding further encodes said selected data words in each said diagonal;
said means for adding a C2 code to the end of each said diagonal to form a C2 code field at the end of said information matrix in said first direction. .Iaddend. .Iadd.26. The two stage coding system of claim 18 wherein said C2 encoder means subtracts n2 k2 from any initially calculated value of a2 to an2 that exceed n2 k2 to select data words in said information matrix diagonally. .Iaddend. .Iadd.27. The two stage coding system of claim 18 wherein the length of said C2 C1 encoded matrix in the first direction is (n1 +k3)q digits. .Iaddend.
Description
TECHNICAL FIELD

The present invention relates to a two stage coding method having a high burst error correction ability and also a random error correction ability equivalent to that of the prior art when an error correction code such as a Reed Solomon code (hereinafter referred to as "RS code") is used in order to correct data errors which arise in reproducing data recorded in a recording material such as a magnetic disk.

BACKGROUND ART

Generally, in recording and reproducing data into and from a recording material such as a magnetic disk a data error may arise dependent on the state of the recording material. A data error may be a burst error caused by a signal drop out .[.on.]. .Iadd.or .Iaddend.a random error caused by a deterioration in SN ratio. In order to correct these errors a two stage coded error correction code is used. As an example, a two stage code using RS codes on a GF .[.(28).]. (.Iadd.2q) .Iaddend.where q=8 will be considered. A two stage encoder is shown in FIG. 3. In FIG. 3, reference numeral 1 designates an input terminal, reference numeral 2 designates a C2 encoder, reference numeral 3 designates an interleaving circuit, reference numeral 4 designates a C1 encoder, the reference numeral 5 designates an output terminal. First of all, C2 encoding is performed on the original data, interleaving is executed thereto, and thereafter C1 encoding is conducted, and the resulting code signal is output to the output terminal. A two stage decoder is shown in FIG. 4. In FIG. 4, reference numeral 6 designates an input terminal, reference numeral 7 designates a C1 decoder, reference numeral 8 designates a deinterleaving circuit, reference numeral 9 designates a C2 decoder, and reference numeral 10 designates an output terminal. In this decoder deinterleaving is executed after the C1 decoding, and thereafter C2 decoding is conducted. There is a prior art two stage coding method which, assuming that data obtained by arranging .[.k1 9.]. .Iadd.k1 q .Iaddend.digits in a first direction and k2 digits (k1 <k2) in a second direction as shown in FIG. 5 is arranged into 8 .[.data.]. .Iadd.digit .Iaddend.words in the first direction, consists of adding a first check code of n2 -k1 digits, and thereafter adding a second check code of n1 -n2 digits as shown in FIG. 2, (n2, k1) RS code is used as the C2 code, and (n1, n2) RS code is used as the C1 code.

A specific coding example will be described with reference to FIGS. 5 and 2. When it is established that k1 =32, k2 =128, n1 =40, n2 =36, and h1 =h2 = . . . =h35 =h=3, the data region comprising the data and the first check code becomes data of n2 k2 =4608 digits as shown in FIG. 5, and when a1 is set to 1, a2 to a36 become as follows: ##EQU1## and C2 encoding is conducted on the data corresponding to the a1 -th, a2 -th, . . . , a32 -th data .Iadd.selected .Iaddend.with use of the following generation polynomial of C2 code ##EQU2## where α is a root of a primary polynomial (for example, such as x8 +x4 +x3 +x2 +1 on GF (28)). The generated check codes are arranged at the positions corresponding to the a33 -th, a34 -th, . . . , a36 -th data. Next, a1 is set as follows:

a1 =a1 +n2 =a1 +36,

and similarly check codes are added to the data successively. Herein, if the calculated result of a2 to a36 exceeds n2 k2 =4608, a number obtained by subtracting 4608 therefrom is made the result. The encoding is repeated k2 times thereby to conclude the C2 encoding.

Next, C1 encoding is conducted on the data of n2 digits in each column arranged in the first direction as shown in FIG. 2 with the use of the following generation polynomial of C1 code ##EQU3## The generated check code is added to the end portion of the data and the encoding is repeated k2 times. In the recording of the data onto the recording material data of n1 =40 digits arranged in the first direction is sent out k2 times successively. In the reproduction of the same the sent out data are arranged in a column in the first direction by 40 digits successively.

In the prior art two stage coding method with such a construction, the C2 code is concerned with burst error correction ability, and the C1 and C2 codes are concerned with random error correction ability. In the stage of conducting C2 encoding the h must be made large in order to enhance the burst error correction ability, and h is set as follows:

h=[k2 /n2 ]=[128/36]=3

.Iadd.where [A] denotes an integer which does not exceed A .Iaddend.The C2 codes are gathered at the right end portion of the data region in FIG. 5, and the C2 and the C1 code are arranged adjacent to each other in the first direction subsequent to the data of k1 =32 digits when the C1 encoding is completed.

The prior art two stage coding method is constructed in such a manner, and the error correction ability by one code amounts to n2 -k1 digits when forfeiture correction is conducted by the C2 decoding. Accordingly, the burst error correction ability becomes as follows for data of n2 k2 =4608 digits comprising all the data and the C2 code

(n2 -k1)n2 h=432,

but h becomes as follows:

h=[k2 /n2 ]=[128/36]=3<128/36,

and k2 /n2 does not equal an integer, thereby resulting in deterioration of error correction capability.

DISCLOSURE OF THE INVENTION

The present invention is directed to solve the problems pointed out above and an object is to provide a two stage coding method in which the above-described deterioration in a burst error correction ability is improved and a higher burst error correction ability than that of the prior art device is obtained.

According to the coding method of the present invention, assuming that data of k1 8k2 digits are arranged in a matrix of k1 8 digits in a first direction and k2 digits(s) in a second direction and the data is divided into words of 8 digit(s) in the first direction, in conducting C2 encoding by taking out n2 data words from the data of .[.n2 .]. .Iadd.n2 -k1 .Iaddend.words in the first direction and k2 words in the second direction with no duplication of data in either of the first and second directions, a C2 code of .[.code.]. length .[.n2 .]. .Iadd.n2 -k1 .Iaddend.is produced by establishing a1 at an arbitrary data number word, and establishing h1, h2, . . . , hn2-1 such that they become a repetition of a combination satisfying the condition that [k.sub. 2 /n2 ] and [k2 /n2 ]+1 may be

[k2 /n2 ]11 +([k2 /n2 ]+1)12 ≦k2 

(herein, l1 +l2 =n2 (l1, 12 : integer) and a2 to an2 exceeding n2 k2 are obtained by subtracting n2 k2 therefrom) for a2 to an2 as in the following: ##EQU4## when numbering is conducted successively in the first direction on the data of n2 words in the first direction and k2 words in the second direction, and this is repeated k2 words in the second direction, and thereafter C1 encoding of each n2 q digits in the first direction .[.into a.]..Iadd., forming an C1 C2 encoded data matrix having a total .Iaddend.code length n1 is conducted.

In the two stage coding method of the present invention, C2 codes are constructed to be effective for error correction at the portion of n2 -k1 in the first direction and at the portion of k2 in the second direction against the data obtained by arranging k1 digits in the first direction and k2 digits in the second direction, as shown in FIG. 1. According to the present invention, the burst error correction ability against the data of n2 k2 =4608 digits comprising all the data, and the C2 codes becomes

(n2 -k1)n2 (h4 +hB)/2=504.

and this exceeds 432 which is the burst error correction ability of the prior art device against the same number of data and the same number of check codes.

In this way, it is possible to conduct a two stage coding having a higher burst error correction ability than that of the prior art, and having a random error correction ability equivalent to that of the prior art due to the C1 and C2 codes.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram showing a data arrangement for conducting a C2 encoding method as one embodiment of the present invention;

FIG. 2 is a diagram showing a data arrangement for conducting a prior art two stage coding method and a C1 encoding method as an embodiment of the present invention;

FIG. 3 is a block diagram showing a two stage encoding circuit;

FIG. 4 is a block diagram showing a two stage decoding circuit; and

FIG. 5 is a diagram showing a data arrangement for conducting the C2 encoding method of the prior art two stage coding method.

BEST MODES OF EMBODYING THE INVENTION

Embodiments of the present invention will be described with reference to the drawings. In FIGS. 1 and 2, the constants are established that q=8, k1 =32, k2 =128, n1 =40, n2 =36, and data are divided into words of 8 digits in the first direction. FIG. 1 shows a C2 encoding method. Data of k1 k2 =4096 data words are arranged sequentially in the first direction and in a matrix of k1 =32 words in the first direction and k2 =128 words in the second direction, and when h2i-1 and h2i are set as follows

h2i-1 =hA =]k2 /n2 ]=3

h2i =hB =[k2 /n2 ]+1=4,

(i: integer, 1≦i≦(n2 -1)/2)

and a1 is set 1, a2 to a36 become ##EQU5## and, C2 encoding is performed on the data corresponding to the a1 -th, a2 -th, . . . , and a32 -th data with the use of the generation polynomial of the C2 code ##EQU6## Herein, α is a root of a primary polynomial. The generated check codes are arranged at the positions corresponding to the a33 -th, a34 -th, . . . , a36 -th data. Next, a1 is set as follows

a1 =a1 +n2 =a1 +36

and similarly inspection codes are added to the data successively. a2 to a36 exceeding n2 k2 =4608 are made by subtracting 4608 therefrom. When this encoding operation is repeated k2 times the C2 encoding is completed.

Next, C1 encoding is performed on the data of n2 words in each column arranged in the first direction as shown in FIG. 2 with the use of the generation polynomial of C1 code ##EQU7## The generated check codes are added to the data, and the encoding is repeated k2 times. The recording of the data on a recording material is conducted by sending out data of n1 =40 words arranged in the first direction successively k2 times. The data format reproduction is conducted by arranging the sent out data by 40 words successively in a column in the first direction.

In the two stage coding method of the present invention, the C2 code is concerned with burst error correction ability and both C1 and C2 codes are concerned with random error correction ability. In conducting the C2 encoding, C2 codes of n2 -k1 in the first direction and k2 in the second direction can be used effectively for the error correction of the data arranged in a matrix of k1 in the first direction and k2 in the second direction.

In the above-illustrated embodiment a repetition pattern of (hA, hB) is adopted for h1, h2, . . . , hn2-1, but other combinations using hA and hB such as (hB, hA) or (hA, hB, hB) can be used if they comply with the following conditions

hA l1 +hB l2 ≦k2 

l1 +l2 =n2 

Furthermore, an RS code on GF (2q) is used as an error correction code, but another code such as a BCH code can be used as an error correction code. Furthermore, the number of data, the construction of information lengths in the first and second directions, and the C2 and C1 code lengths can be arbitrarily established. Furthermore, in the illustrated embodiment the region occupied by the check codes of the C2 code and the C1 code is shown in FIG. 2, but this occupied region can be arbitrarily established by establishing a1 at an arbitrary number.

Furthermore, it is possible to add the additional information of k3 q digits in the second direction k2 times precedent to the C1 encoding, and thereafter to conduct C1 encoding on GF (2q) having the (n1 +k3)q digits in the first direction, and to conduct a coding k2 times repeatedly in the second direction.

APPLICABILITY TO THE INDUSTRY

The present invention is applicable not only to a magnetic disk apparatus but also to an optical recording and reproducing apparatus, and an optical magnetic recording and reproducing apparatus.

Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US4336612 *May 16, 1980Jun 22, 1982Mitsubishi Denki Kabushiki KaishaError correction encoding and decoding system
US4398292 *Feb 23, 1981Aug 9, 1983Sony CorporationMethod and apparatus for encoding digital with two error correcting codes
US4413340 *Nov 12, 1981Nov 1, 1983Sony CorporationError correctable data transmission method
US4646170 *Jul 22, 1985Feb 24, 1987Hitachi, Ltd.Method and apparatus for recording and reproducing a digital signal with a stationary head
US4646301 *Oct 26, 1984Feb 24, 1987Hitachi, Ltd.Decoding method and system for doubly-encoded Reed-Solomon codes
US4683572 *Sep 24, 1984Jul 28, 1987U.S. Philips CorporationDecoding device for code symbols protected by Reed-Solomon code
US4716567 *Feb 10, 1986Dec 29, 1987Hitachi, Ltd.Method of transmitting digital data in which error detection codes are dispersed using alternate delay times
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US5537429 *Feb 5, 1993Jul 16, 1996Mitsubishi Denki Kabushiki KaishaError-correcting method and decoder using the same
Classifications
U.S. Classification714/761, 714/763, 714/784
International ClassificationH03M13/27, H03M1/24, G11B20/18, H03M13/29
Cooperative ClassificationH03M13/29, H03M13/27
European ClassificationH03M13/29, H03M13/27
Legal Events
DateCodeEventDescription
Feb 28, 2000FPAYFee payment
Year of fee payment: 12
Feb 20, 1996FPAYFee payment
Year of fee payment: 8