« PrécédentContinuer »
ERROR CORRECTION APPARATUS AND
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates in general to an error correction apparatus and method, and in particular to an error correction apparatus and method with which a plurality of error correction encodings are performed for communication contents, and error corrections are reduced.
2. Description of the Related Art
With a conventional error correction technique for correcting errors that occurred during the sending of communication contents, the transmitting station would subject the communication contents (hereinafter referred to as "information bits") to redundant encoding before transmission, and the receiving station would correct errors based on this redundant code. With this error correction technique, the encoding method and generating polynomial to be used are specified based on the length of the information bits and on the error correction capability provided, coding is performed by producing a generator matrix from this coding method and generating polynomial, and decoding is performed by using a check matrix that is orthogonal to the generator matrix.
In specific terms, at the transmitting station, an information string is produced by taking the inner product of the information bit string and the generator matrix G, and the communication data containing this information string is transmitted to the receiving station, while at the receiving station, the error syndrome is calculated by taking the inner product of the received information string and the check matrix H (GH=0) that is orthogonal to this generator matrix G.
Here, this "syndrome" refers to data indicating whether or not there are errors in the received information string, and confirmation of this syndrome allows errors to be detected. This syndrome, however, does not directly indicate the error location, so specification of the error location requires factoring or the like to be performed based on this syndrome. In specific terms, if this syndrome is "0," it means that there are no errors in the received information string, and if it is "1," it means that some kind of error is present.
Thus, performing error correction using a syndrome allows bit errors and burst errors to be corrected automatically. Nevertheless, even when this error correction technique is used, it does not keep track of all the errors, and skipped errors and improper corrections sometimes occur.
As a result, a system that demands a high level of communication quality does not stop at using error correction by itself, but rather employs a technique for enhancing the reliability of the error correction by combining error correction with error detection. For example, information bits are multiplied by a generator matrix Gl to produce an information string having undergone error detection coding, which in turn is multiplied by a generation matrix G2 to produce data having undergone error correction coding. The transmitting station sends the data thus produced to the receiving station, while the receiving station subjects this data to error correction using a check matrix H2 that is orthogonal to the generator matrix G2, after which it confirms whether there are any errors in the data by using a check matrix HI that is orthogonal to the generator matrix Gl.
The procedure of the above prior art, which combines an error correction technique with an error detection technique, will now be described.
FIG. 9 is a flow chart illustrating the procedure at the receiving station when an error correction technique is combined with an error detection technique. As shown in FIG. 9, when an information string transmitted from the
5 transmitting station is received by the receiving station (step 901), the first thing the receiving station does is to confirm whether there are any errors in the information string. Specifically, the receiving station computes the error correction syndrome by multiplying the received information
10 string by the check matrix H2 (step 902), and confirms whether an error has been generated in the information string based on this syndrome (step 903).
When an error is present in the information string, the error location is specified based on the error correction
15 syndrome (step 904), and the error location is corrected (step 905). Here, the specification of the error location in step 904 will vary with the encoding method, but in the case of a double error correction code, the error location can be specified either by factoring a polynomial having the value
20 of the syndrome as a coefficient, or by consulting a table listing the results of this factoring.
Next, in order to verify that the error correction of steps 903 through 905 above has actually been carried out, the error detection syndrome is calculated based on the check
25 matrix HI (step 906), and the information string that has undergone error correction is examined to see if any errors remain (step 907).
If there are no errors in the information string that has undergone error correction, then it is determined that there
are no skipped errors or improper corrections, and the process is ended normally (step 908), but if there are errors present, then it is recognized that skipped errors or improper correction has occurred, and retransmission is requested 35 (step 909).
Thus, using prior art in which an error correction technique is combined with an error detection technique allows skipped errors and improper correction to be confirmed, and the reliability of the communication information to be
40 improved. However, with this prior art, since the determination as to whether correction has been performed is made after the errors produced in the information string have been corrected, error detection cannot be performed until the correction has been completed. Consequently, the correction
45 process takes longer than when error correction is performed by itself, i.e., it is longer by the amount of time it takes to determine whether the error correction is proper using an error detection technique (syndrome generation time+time required for input/output).
5q Therefore, prior art in which an error correction technique is combined with an error detection technique cannot be used in a real application because improved reliability is achieved at the cost of processing time.
There is a technique with which error correction can be
55 made parallel by using dual error correction techniques, and which does not involve a combination of an error correction technique and an error detection technique. Specifically, this technique comprises detecting error locations by means of dual error correction techniques, comparing the error loca
60 tions of the two, and performing error correction if the error locations are in agreement.
In this case, the generator matrix G2 used in the second error correction encoding must be in an irreducible standard form so that the transmitted information string will be in a
65 joint data format of check bits and data encoded with Gl, and so that decoding by the check matrix HI corresponding to the generator matrix Gl can be carried out in parallel with
decoding by the check matrix H2 corresponding to the generator matrix G2.
However, when this technique is used, as relates to finally confirming the correctness of errors by contrasting error locations of the two, decoding by the check matrix HI and 5 the check matrix H2 is insufficient with syndrome calculation, and detection of error locations must be performed in both cases.
When this error location detection is carried out in duality, not only does the number of check bits to be added increase, 10 but error location, which is the most complicated part of error correction, must be carried out twice, which is inefficient.
As discussed above, when prior art involving a combination of an error correction code and an error detection code was used, the problem was that a processing delay was incurred because the processing had to be carried out sequentially, and with prior art in which error correction encoding was carried out in duality, the problem was that the code length increased and the complicated specification of 20 the error location had to be carried out twice.
SUMMARY OF THE INVENTION
In view of this, an object of the present invention is to solve the above problems and provide an error correction 25 apparatus and method with which a determination of proper correction can be made efficiently and processing delay can be reduced in the course of improving the reliability of communication information by subjecting information bits to error correction encoding in convolutional form. 30
In order to achieve the stated object, the present invention is designed such that, when an error correction technique and an error detection technique are combined, a determination as to proper errors is made on the syndrome level 3J rather than detecting errors after error correction of the information bits.
Specifically, when the error location is detected by an error correction technique, the syndrome that is probably produced when the error detection technique detects the 4Q same error is calculated backward from the error location detected as a dummy syndrome, and the syndrome actually produced by the error detection technique is compared with the dummy syndrome to confirm that the error is proper on the syndrome level. 45
Even when prior art is used, if the leading bit that is transmitted serves as the reference location for errors, and if the same encoding method is used, then it can be confirmed that the error is proper on the syndrome level. However, when variable-length data is used and the reference location 50 of the error is the last bit, or when an encoding method with a different syndrome format is used (such as Hamming code), it cannot be determined that the error is proper on the syndrome level.
The present invention allows confirmation that the error is 55 proper on the syndrome level even when variable-length data is used and the reference location of the error is the last bit, or when an encoding method with a different syndrome format is used (such as Hamming code).
Also, since error correction and error detection can be 60 carried out in parallel, error correction can be accomplished more efficiently.
Furthermore, since no correction is performed when the dummy syndrome calculated backward from the error location does not match up with the syndrome determined from 65 the received data, the time required for error correction can be shortened.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram illustrating the structure of the error correction system in the first embodiment according to the present invention;
FIG. 2 is a diagram illustrating the data construction of a communication data when error detection encoding and error correction encoding are performed for variable-length information bits;
FIG. 3 is a flow chart illustrating the procedure of the error correction control component shown in FIG. 1;
FIG. 4 is a diagram illustrating the data construction of the communication data when error detection encoding is performed after error correction encoding;
FIG. 5 is a diagram illustrating the data construction of the communication data when error detection encoding and error correction encoding are performed for fixed-length information bits;
FIG. 6 is a flow chart illustrating the procedure of the error correction control component when the data construction shown in FIG. 5 is used;
FIG. 7 is a diagram illustrating an example of the data construction when error detection encoding and error correction encoding are combined in three or more layers;
FIGS. 8(a) through 8(c) are block diagrams illustrating the structure of a radio communication apparatus and a cable communication apparatus to which the present invention is applied; and
FIG. 9 is a flow chart illustrating the procedure of prior art in which both error correction encoding and error detection encoding are used.
DESCRIPTION OF THE PREFERRED
The first embodiment of the present invention will now be described while referring to the accompanying drawings. In this first embodiment, the description will be for a case in which error correction encoding is performed after error detection encoding has been performed for variable-length communication contents (information bits) of 64 bits to 512 bits.
FIG. 1 is a block diagram illustrating the structure of the error correction system in the first embodiment pertaining to the present invention.
As shown in FIG. 1, this error correction system comprises an encoding apparatus 1, which outputs to a communication channel 3 communication data including an information string that has undergone error detection encoding and error correction encoding in communication contents received from a user, and a decoding apparatus 2, which outputs communication information obtained by decoding the communication data received from this communication channel.
First, the encoding apparatus 1 comprises an encoding component 10, an encoding component 11, a data storage component 12, an encoding control component 13, and a data output component 14.
The encoding component 10 receives input data via a control bus 15 under the control of the encoding control component 13, and subjects the input data to error detection encoding. In specific terms, with this encoding component 10, error detection encoding is performed by taking the inner product of the input data and the generator matrix Gl. In this embodiment, this generator matrix Gl is used in the irreducible standard form, and the data format for the encoding data is a data format in which check bits are added to the input data.