KR19990066105A - Error Correction Method of 2D Reed-Solomon Code - Google Patents

Error Correction Method of 2D Reed-Solomon Code Download PDF

Info

Publication number
KR19990066105A
KR19990066105A KR1019980001743A KR19980001743A KR19990066105A KR 19990066105 A KR19990066105 A KR 19990066105A KR 1019980001743 A KR1019980001743 A KR 1019980001743A KR 19980001743 A KR19980001743 A KR 19980001743A KR 19990066105 A KR19990066105 A KR 19990066105A
Authority
KR
South Korea
Prior art keywords
error
decoding
codes
code
erase
Prior art date
Application number
KR1019980001743A
Other languages
Korean (ko)
Inventor
신용후
김승호
Original Assignee
구자홍
엘지전자 주식회사
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 구자홍, 엘지전자 주식회사 filed Critical 구자홍
Priority to KR1019980001743A priority Critical patent/KR19990066105A/en
Publication of KR19990066105A publication Critical patent/KR19990066105A/en

Links

Abstract

본 발명은 2차원 리드-솔로몬 코드의 오류정정방법에 관한 것으로서, 종축복호화시, 오류정정방법을 달리하는 것에 관한 것이다. 본 발명의 오류정정방법은 정보심볼의 개수가 k1인 데이터에 n1-k1개의 패리티심볼이 첨가된 (n1, k1) 코드로 횡축복호화하는 단계, (n1,k1)코드 중에서 오류가 발생한 심볼을 말소코드(Erasure Code)로 설정하는 단계, 말소코드의 개수와 소정의 기준개수를 비교하는 단계, 말소코드의 개수가 상기 기준개수보다 많으면 종축의 (n2, k2)코드로 오류정정(Error Correction)하는 방법으로 복호화하는 단계, 그리고 말소코드의 개수가 기준개수보다 같거나, 적으면 말소코드를 오류말소정정(Error-Erasure Correction)방법으로 복호화하는 단계를 포함하여 구성된 것이 특징이다.The present invention relates to an error correction method of a two-dimensional Reed-Solomon code, and to a different error correction method in longitudinal decoding. In the error correction method of the present invention, transverse-decoding of (n1, k1) codes in which n1-k1 parity symbols are added to data having the number of information symbols k1, and erasing a symbol having an error among (n1, k1) codes Setting the code (Erasure Code), comparing the number of erase codes with a predetermined reference number, and if the number of erase codes is larger than the reference number, performing error correction with (n2, k2) codes on the vertical axis. And decoding the erase code by an error-error correction method if the number of erase codes is equal to or less than the reference number.

Description

2차원 리드-솔로몬 코드의 오류정정방법Error Correction Method of 2D Reed-Solomon Code

본 발명은 2차원 리드-솔로몬 오류정정코드에 관한 것이다.The present invention relates to a two-dimensional Reed-Solomon error correction code.

일반적으로 디지털 데이터를 전송하거나 저장매체에 기록 또는, 재생하는 경우, 오류를 줄이기 위해서 처리하고자 하는 디지털 데이터를 오류정정코드로 부호화하는 경우가 많다. 이러한 오류정정코드로 리드-솔로몬 코드가 많이 쓰인다. 특히 최근의 디지털 위성방송이나, 콤팩트디스크(CD:Compact Disk) 등에 리드-솔로몬 오류정정부호가 많이 사용되고 있다.In general, when digital data is transmitted, recorded on a storage medium, or reproduced, digital data to be processed is often encoded with an error correction code to reduce errors. Reed-Solomon codes are commonly used for these error correction codes. In particular, Reed-Solomon error correction codes are widely used in digital satellite broadcasting and compact disks (CD).

도1에 나타낸 도면은 이러한 리드-솔로몬 코드의 2차원 구조를 나타낸 것이다. 이 2차원 리드-솔로몬 코드는 횡축방향으로 k1 개의 정보심볼(10)에 대해 오류정정을 위해 n1-k1 개의 패리티심볼(11)을 추가하고, 종축방향으로 k2 개의 정보심볼에 대해 n2-k2 개의 패리티심볼(12)을 추가한 형태를 가지고 있다. 즉, 리드-솔로몬 코드는 정보심볼(10)에 패리티심볼(11, 12)을 덧붙임으로써, 본래의 데이터보다 더 큰 데이터로 변환된 코드이다.1 shows a two-dimensional structure of this Reed-Solomon code. This two-dimensional Reed-Solomon code adds n1-k1 parity symbols 11 for error correction for k1 information symbols 10 in the horizontal axis direction, and n2-k2 number for k2 information symbols in the longitudinal axis direction. The parity symbol 12 has a form added. That is, the Reed-Solomon code is a code converted into data larger than the original data by adding the parity symbols 11 and 12 to the information symbol 10.

도2는 2차원 구조의 리드-솔로몬 코드의 일반적인 인코딩 및 디코딩 과정을 도시한 블록도이다. 도2에 나타낸 블록도를 통한 부호화(encording)과정을 설명하면 다음과 같다. 먼저, 입력데이터(Din)은 종축인코더에 입력되어 종축방향으로 부호화된다. 그리고, 종축방향으로 부호화된 데이터는 메모리에 저장되었다가, 소정의 처리단위로 횡축인코더에 입력되어 횡축방향으로 부호화된다. 종축방향과 횡축방향으로 모두 부호화된 데이터는 자기테이프(magnetic tape)와 같은 기록매체(20)에 기록된다.2 is a block diagram illustrating a general encoding and decoding process of a Reed-Solomon code having a two-dimensional structure. The encoding process through the block diagram shown in FIG. 2 will now be described. First, the input data Din is input to the vertical axis encoder and encoded in the vertical axis direction. The data encoded in the longitudinal axis direction is stored in the memory, input to the horizontal axis encoder in a predetermined processing unit, and encoded in the horizontal axis direction. Data encoded in both the longitudinal and transverse directions is recorded on a recording medium 20 such as a magnetic tape.

도2에 나타낸 블록도를 통한 복호화(decording)과정을 설명하면 다음과 같다. 먼저 자기테이프와 같은 기록매체(20)에 기록된 데이터가 횡축디코더에 입력된다. 횡축디코더는 입력된 데이터를 횡축방향으로 복호화하여 메모리에 저장한다. 메모리에 저장된 데이터는 종축디코더에 인가되어 종축방향으로 복호화되어 출력된다.The decoding process through the block diagram shown in FIG. 2 will now be described. First, data recorded on the recording medium 20 such as a magnetic tape is input to the horizontal axis decoder. The horizontal axis decoder decodes the input data in the horizontal axis direction and stores the received data in the memory. Data stored in the memory is applied to the vertical axis decoder and decoded in the longitudinal axis direction and output.

즉, 2차원 리드-솔로몬 코드의 부호화과정은 먼저 데이터가 종축인코더에서 종축방향으로 부호화되어 메모리에 저장된 후, 그 부호화된 코드가 횡축인코더에서 횡축방향으로 부호화되어 기록매체에 기록되는 순서로 실시된다. 그리고, 2차원 리드-솔로몬 코드의 복호화과정은 부호화과정과 반대의 순서로 실시되는 것으로, 먼저 기록매체에 기록된 데이터를 횡축디코더가 먼저 횡축방향으로 복호화하여 메모리에 저장한 후, 종축디코더가 메모리에 저장된 데이터를 종축방향으로 복호화하여 원래의 데이터로 환원시키는 순서로 실시된다.That is, the encoding process of the two-dimensional Reed-Solomon code is performed in the order that the data is first encoded in the longitudinal axis in the longitudinal axis encoder and stored in the memory, and then the encoded code is encoded in the horizontal axis in the horizontal axis encoder and recorded on the recording medium. . The decoding process of the 2D Reed-Solomon code is performed in the reverse order of the encoding process. First, the horizontal axis decoder first decodes the data recorded on the recording medium in the horizontal axis direction, and then stores the data in the memory. Data is stored in the longitudinal axis direction and reduced to the original data.

일반적으로 정보심볼의 개수가 k 개이고, n-k 패리티심볼이 추가된 리드-솔로몬코드를 (n, k)리드-솔로몬 코드라고 명명한다. 이 (n, k)리드-솔로몬 코드의 성질은 다음과 같다.In general, Reed-Solomon codes with k information symbols and n-k parity symbols added are named (n, k) lead-solomon codes. The nature of this (n, k) lead-solomon code is:

먼저 오류가 발생한 심볼의 위치가 파악되지 않았을 경우, (n, k)리드-솔로몬 코드는 '(n-k)/2' 개의 오류를 정정할 수 있다. 그리고, 오류가 발생한 심볼의 위치가 파악된 경우에는 해당심볼에 대해 오류말소정정(Error-Erasure Correnction)을 할 수 있다. 이 때, 위치를 모르는 오류심볼의 개수를 x, 말소(Erasure)심볼의 개수를 y라고 할 때, 2x+y≤n-k 의 조건을 만족하면 그 오류심볼은 바르게 정정된다. 만약, 오류심볼의 위치가 모두 파악되었다고 가정하면, x=0 이므로 y≤n-k 의 조건에서 오류심볼이 바르게 정정된다.First, when the location of an error symbol is not known, the (n, k) lead-solomon code may correct '(n-k) / 2' errors. In addition, when the position of an error symbol is identified, error-correction correction may be performed on the symbol. At this time, when the number of error symbols whose position is unknown is x and the number of erasure symbols is y, the error symbols are correctly corrected if the condition of 2x + y≤n-k is satisfied. If it is assumed that the positions of the error symbols are all known, since x = 0, the error symbols are correctly corrected under the condition of y≤n-k.

이러한 리드-솔로몬 코드의 성질을 이용하여 종래의 복호화 방법에 대해 설명하면 다음과 같다. 도3은 리드-솔로몬 코드의 복호화 방법을 도시한 흐름도이다. 먼저 횡축방향의 코드에 대하여 에러(Error) 정정을 수행하면, 오류심볼의 개수가 '(n1-k1)/2' 개 이하인 경우에는 오류심볼이 바르게 정정된다.Referring to the conventional decoding method using the properties of the Reed-Solomon code as follows. 3 is a flowchart illustrating a method of decoding a Reed-Solomon code. If error correction is performed on the code in the horizontal axis direction, the error symbols are correctly corrected when the number of error symbols is less than (n1-k1) / 2.

그런데, 도3에 나타낸 2차원 리드-솔로몬 코드의 복호화방법은 다음과 같은 문제점이 발생한다. 먼저, 오류가 발생한 심볼이 '(n1-k1)/2' 보다 한 개라도 더 많게 되면, 디코더는 엉뚱한 부호로 오정정(mis-Correction)하거나, 오류검출을 하게 된다. 오정정(mis-correction)이란, 수신된 횡축코드에서 '(n1-k1)/2' 개보다 더 많은 오류가 발생하였을 때 오류검출을 하지 못하고 다른 부호어로 정정하는 경우를 의미한다.However, the decoding method of the two-dimensional Reed-Solomon code shown in FIG. 3 has the following problems. First, if there is one more symbol having an error than '(n1-k1) / 2', the decoder mis-corrects the wrong code or detects an error. Mis-correction means a case where error detection is not performed when more than '(n1-k1) / 2' errors occur in the received horizontal axis code and corrected by another codeword.

그리고, 종래의 2차원 리드-솔로몬 코드의 복호화방법은 횡축디코더 오류가 발생한 코드를 말소(Erasure)코드로 설정하고, 종축디코더에서 이 말소코드를 이용하여 말소정정(Erasure-Correction)을 수행한다. 그런데, 이 때, 만약 말소코드가 n2-k2 보다 더 많게 되거나 오정정이 발생한 경우, 종축디코더에서 말소정정을 실시하면, 디코딩오류가 발생한다. 예를 들어, 횡축 복호화시, 한 개 이상의 오정정이 발생하고, n2-k2 개의 말소코드가 설정된 경우, 말소정정을 실시하면 정상적인 종축복호화가 이루어지지 않는다. 즉, 디코딩오류가 발생되는 것이다.In the conventional two-dimensional decoding method of the Reed-Solomon code, the code in which the horizontal axis decoder error occurs is set as an erasure code, and the erasure code is used to perform erasure correction by using the erasure code. At this time, however, if the erase code becomes larger than n2-k2 or if a miscorrection occurs, the decoding error occurs when the subordinate decoder performs erase correction. For example, when one or more miscorrections occur in the horizontal axis decoding, and n2-k2 erase codes are set, normal erasure decoding is not performed when the erase correction is performed. That is, a decoding error occurs.

본 발명은 이러한 문제점을 해결하기 위한 것으로, 종축복호화 시, 발생하는 디코딩오류를 최소화하는 데에 그 목적이 있다.The present invention has been made to solve such a problem, and an object thereof is to minimize decoding errors occurring during vertical axis decoding.

도 1은 2차원 리드-솔로몬 코드의 구조를 도시한 도면.1 illustrates the structure of a two-dimensional Reed-Solomon code.

도 2는 일반적인 디코더의 동작과 구조를 나타낸 블록도.2 is a block diagram showing the operation and structure of a typical decoder.

도 3은 종래의 복호화 과정을 도시한 흐름도.3 is a flowchart illustrating a conventional decoding process.

도 4는 본 발명의 복호화 과정을 도시한 흐름도.4 is a flowchart illustrating a decoding process of the present invention.

도 5는 말소코드(Erasure)의 정정개수에 따라 변화하는 종축복호화 후의 디코딩 오류율을 도시한 그래프.Fig. 5 is a graph showing the decoding error rate after longitudinal axis decoding, which changes according to the correction number of erase codes.

도면의 주요부분에 대한 부호의 설명Explanation of symbols for main parts of the drawings

10 : 정보심볼 11 : 횡축 패리티 심볼10: information symbol 11: horizontal axis parity symbol

12 : 종축 패리티 심볼 20 : 기록매체12: vertical parity symbol 20: recording medium

본 발명은 종축복호화 시, 말소정정(Erasure Correction)을 실시하는 종래의 방법 대신, 말소코드가 소정의 개수보다 작거나 같은 경우에는 오류말소정정을 실시하고, 그 보다 많은 개수의 말소코드가 발생했을 경우에는 횡축복호화 시 설정된 말소코드를 무시하고 오류를 정정하는 것을 특징으로 한다. 즉, 본 발명은 말소코드(Erasure)의 개수에 따라 복호화를 달리하는 것이 특징이다. 바로 본 발명의 핵심은 복호화를 달리하는 시점의 말소코드의 개수를 설정하는 방법이다.In the present invention, instead of the conventional method of performing erasure correction when performing longitudinal decoding, when the erase codes are smaller than or equal to a predetermined number, error erasure correction is performed, and a larger number of erase codes have been generated. In this case, the erase code is ignored and the error is corrected. That is, the present invention is characterized in that the decoding is different depending on the number of erase codes. The core of the present invention is a method of setting the number of erase codes at different decoding points.

본 발명의 핵심인 복호화를 달리하는 시점의 말소코드의 개수를 설정하기 위하여 2차원 리드-솔로몬 코드의 종축복호화 후의 오류율을 구해보도록 한다. 도4는 본 발명의 복호화과정을 도시한 흐름도이다.In order to set the number of erase codes at the time of different decoding, which is the core of the present invention, the error rate after the longitudinal axis decoding of the 2D Reed-Solomon code is calculated. 4 is a flowchart illustrating a decoding process of the present invention.

먼저 횡축복호화과정에서 (n1, k1)리드-솔로몬 코드는 오류심볼의 개수가 '(n1-k1)/2' 보다 작거나 같을 경우, 바르게 복호화된다. 입력 데이터에 오류심볼이 무작위적(random)으로 분포되어 있고 오류심볼이 발생할 확률을 PS라고 하면, 데이터가 올바르게 횡축복호화될 확률 PC는 다음과 같다.First, in the transverse decoding process, the (n1, k1) lead-solomon code is correctly decoded when the number of error symbols is less than or equal to '(n1-k1) / 2'. If the error symbols are randomly distributed in the input data and the probability that the error symbols occur is P S , the probability P C for correctly transversely decoding the data is as follows.

단, t1 = (n1-k1)/2 이어야 한다.T1 = (n1-k1) / 2.

만약 오류의 개수가 '(n1-k1)/2' 보다 크면 오정정되어, 오류를 더 발생시킬 수 있다. 이 때, 오정정될 확률 Pud는 다음과 같다.If the number of errors is greater than '(n1-k1) / 2', they may be miscorrected, resulting in more errors. At this time, the probability P ud to be miscorrected is as follows.

단, 수학식 2는 다음의 조건 ,However, Equation 2 is the following condition,

이고, ego,

을 만족해야만 한다. 이 때, q는 코드심볼의 크기이다. 또, 오류가 검출되어 말소코드(Erasure)가 발생될 확률 Per의 다음과 같다.Must satisfy Q is the size of the code symbol. In addition, the fault is detected erasure code follows the probability P er be (Erasure) occurs.

Per= 1 - PC- Pud P er = 1-P C -P ud

횡축복호화한 후 임의의 한 심볼을 선택했을 때, 그 심볼이 오류일 경우는 오정정에 의해 발생한 경우와 말소코드가 발생한 경우가 있다. 먼저, 횡축복호화를 실시한 후 임의의 한 심볼을 선택했을 때, 오정정에 의해 오류심볼이 발생할 확률 Pud,s는 다음과 같다.When an arbitrary symbol is selected after horizontal axis decoding, if the symbol is an error, it may be caused by miscorrection or an erase code may be generated. First, when an arbitrary symbol is selected after performing transverse axis decoding, the probability P ud, s of error symbol occurrence due to miscorrection is as follows.

그리고, t1+1개의 오류가 발생했을 때 오류가 검출되어 말소코드(Erasure)가 발생될 확률을 Per(t1+1)이라고 하면, 다음의 식이 성립한다.Then, the error is detected when a t1 + 1 of error occurs when the probability of occurrence as the cancellation code (Erasure) P er (t1 + 1), and then the expression is satisfied.

Per(t1+1) = P(오류심볼이 t1+1개 발생할 확률) - P(오류심볼이 t1+1개 발생했을 때 오정정된 코드가 발생할 확률) P er (t1 + 1) = P ( symbol error rate is caused t1 + 1 pieces) - P (symbol error probability is the cause ohjeongjeong code generated when t1 + 1 pieces)

이 경우, 디코딩한 후의 오류심볼의 개수는 (t1+1) 이다. 따라서, 말소코드가 검출된 코드에서 임의의 심볼을 선택했을 때, 그 코드가 오류심볼일 확률 Per,s는 다음과 같다.In this case, the number of error symbols after decoding is (t1 + 1). Therefore, when an arbitrary symbol is selected from the code in which the erase code is detected, the probability P er, s that the code is an error symbol is as follows.

단, 이 때의 Per(i)는 다음과 같다.Here, Per (i) at this time is as follows.

종래의 복호화방법은 종축방향으로 복호화할 때, 말소(Erasure)코드에 대해서만 정정한다. 이 경우, 그 올바른 정정을 할 수 있는 말소코드의 개수는 최대 n2-k2이다. 이것은 (n2, k2)코드의 패리티심볼 수와 동일하다. 만약, 말소코드의 개수가 n2-k2개를 넘게되면, 종래의 복호화방법은 위에서 나타낸 것과 같이 종축디코더에서 디코딩오류가 발생했었다.In the conventional decoding method, only the erasure code is corrected when decoding in the vertical axis direction. In this case, the maximum number of erase codes that can be corrected is at most n2-k2. This is equal to the number of parity symbols in the (n2, k2) code. If the number of erase codes exceeds n2-k2, the decoding method of the conventional decoding method has occurred in the vertical decoder as described above.

본 발명은 복호화 후의 오류율을 줄이기 위하여 말소코드가 K 개일 때까지는 오류말소(Error Erasure)정정방법을 실시하고, K+1 개 이상 발생하면 오류정정(Error Correction)을 하여 복호화 후의 오류율을 줄이는 것이다. 이 때의 K는 복호화 후의 오류율을 최소로 할 수 있는 값으로 결정된다. 그러면, 이 K를 결정하기 위하여 먼저 종축디코더에서 j개의 말소코드가 발생할 확률 P(j Erasure)을 구해보면, 다음과 같다.In order to reduce the error rate after decoding, an error erasing method is performed until there are K erase codes, and when more than K + 1 occurs, error correction is performed to reduce the error rate after decoding. K at this time is determined as a value that can minimize the error rate after decoding. Then, in order to determine K, first, the probability P (j Erasure) of occurrence of j erase codes in the vertical axis decoder is calculated as follows.

그리고, j 개의 말소코드가 발생하고, 말소정정을 했을 때, 오류가 발생할 확률은 다음과 같다.Then, when j erase codes are generated and erased, the probability of an error is as follows.

이 때, t는 오정정에 의해서 발생한 오류심볼의 개수이다. 따라서, 말소코드의 개수가 K 보다 작거나 같을 때, 오류말소정정의 복호화 후의 오류율은 다음과 같다.In this case, t is the number of error symbols generated by miscorrection. Therefore, when the number of erase codes is less than or equal to K, the error rate after decoding of the error erasure definition is as follows.

본 발명은 말소코드의 개수가 K보다 큰 경우에는 종축디코더에서 횡축디코더에서 발생된 말소정보를 무시하고 오류정정을 하는 것이다. 이 경우, 말소코드로 설정된 코드 중에서 i 개의 오류심볼이 발생하고, 말소코드로 설정되지 않은 코드 중에서 t 개의 오류심볼이 발생했을 때 i+t > (n2-k2)/2 인 경우에는 디코딩오류가 발생한다. 먼저 j 개의 말소코드 중에서 i 개의 오류심볼이 발생할 확률은 다음과 같다.According to the present invention, when the number of erase codes is larger than K, error correction is performed by disregarding the erase information generated in the horizontal axis decoder in the vertical axis decoder. In this case, i + t> (n2-k2) / 2 when i error symbols occur among the codes set to the erase code and t error symbols occur among the codes not set to the erase code, Occurs. First, the probability of generating i error symbols among the j erase codes is as follows.

그리고, j 개의 말소코드가 발생했을 때, 말소코드를 제외한 나머지 심볼들 중에 오정정에 의한 오류심볼이 발생할 확률은 다음과 같다.In addition, when j erase codes are generated, a probability of generating an error symbol due to miscorrection among remaining symbols except for the erase codes is as follows.

따라서, j 개의 말소코드가 발생했을 때 오류정정을 하는 경우, 디코딩오류가 발생할 확률은 다음과 같다.Therefore, when error correction is performed when j erase codes are generated, the probability of decoding error is as follows.

이 때, t2=(n2-k2)/2 이고,At this time, t2 = (n2-k2) / 2,

이다. to be.

따라서, 말소코드의 개수가 K보다 클 때, 디코딩오류가 발생할 확률은 다음과 같다.Therefore, when the number of erase codes is larger than K, the probability of generating a decoding error is as follows.

그러므로, 본 발명에 의해 복호화할 때, 종축디코더에서 오류코드가 발생할 확률은 다음과 같다.Therefore, when decoding according to the present invention, the probability of generating an error code in the longitudinal decoder is as follows.

Pe(K)=Pe1(K)+Pe2(K)P e (K) = P e1 (K) + P e2 (K)

말소코드가 j개 발생했을 때, 오류말소정정을 하는 경우와 오류정정을 하는 경우의 종축복호화 오류율은 각각 수학식 6과 수학식 10에 나타낸 것과 같게 된다. 그러므로, 2가지 방법 중에서 오류율이 최소화되는 방법으로 복호화를 수행하는 것이 바람직하다. 입력데이터의 오류심볼의 발생율은 복호화의 오류정정과정에서 제어할 수 있는 요소는 아니다. 하지만, 말소코드의 설정개수는 오류정정과정에서 충분히 결정될 수 있으므로, 이 말소코드의 설정개수에 따라 디코더는 오류에 대한 정정방법이 다르게 실시되도록 설계될 수 있다. 그러므로, 본 발명의 디코더는 종축디코더에서 발생하는 오류율을 최소로 만드는 K 값으로 설계될 수 있다.When j erase codes occur, the vertical axis decoding error rates in case of error erasing correction and error correction are as shown in Equations 6 and 10, respectively. Therefore, it is preferable to perform decoding in a manner in which the error rate is minimized among the two methods. The occurrence rate of the error symbol of the input data is not a factor that can be controlled in the error correction process of decoding. However, since the set number of erase codes can be sufficiently determined in the error correction process, the decoder can be designed such that an error correction method is implemented differently according to the set number of erase codes. Therefore, the decoder of the present invention can be designed with a K value that minimizes the error rate that occurs in the longitudinal decoder.

본 발명의 K값을 결정하는 적절한 실시예를 다음의 표를 참조로 설명하겠다.A suitable embodiment for determining the K value of the present invention will be described with reference to the following table.

(실시예)(Example)

표 1부터 표 4는 도 1에 나타낸 것과 같은 2차원 (n, k)리드-솔로몬 코드에서 k1=100, k2=100, n2=110으로 설정하고, n1을 106, 108, 110, 112 로 설정하는 네가지 경우에 따라 입력데이터의 오류심볼 발생율에 따른 최적의 K값을 나타낸 것이다.Table 1 to Table 4 set k1 = 100, k2 = 100, n2 = 110 and n1 to 106, 108, 110, 112 in the two-dimensional (n, k) lead-solomon code as shown in FIG. According to the following four cases, the optimal K value according to the error symbol occurrence rate of the input data is shown.

(n1,k1)(n1, k1) BERBER K0K0 K2K2 K4K4 K6K6 K8K8 K10K10 (106,100)(106,100) 0.020.02 1.42E-041.42E-04 1.42E-041.42E-04 1.42E-041.42E-04 1.42E-041.42E-04 2.38E-042.38E-04 4.23E-044.23E-04 (106,100)(106,100) 0.010.01 1.01E-091.01E-09 1.01E-091.01E-09 1.05E-091.05E-09 1.19E-081.19E-08 9.89E-079.89E-07 1.12E-061.12E-06 (106,100)(106,100) 0.0050.005 5.96E-165.96E-16 5.96E-165.96E-16 5.47E-165.47E-16 5.53E-175.53E-17 3.99E-163.99E-16 4.06E-164.06E-16 (106,100)(106,100) 0.0020.002 6.55E-256.55E-25 6.55E-256.55E-25 5.87E-255.87E-25 2.01E-292.01E-29 7.57E-307.57E-30 7.57E-307.57E-30 (106,100)(106,100) 0.0010.001 6.15E-326.15E-32 6.15E-326.15E-32 5.52E-325.52E-32 3.52E-383.52E-38 2.95E-382.95E-38 2.95E-382.95E-38

(n1,k1)(n1, k1) BERBER K0K0 K2K2 K4K4 K6K6 K8K8 K10K10 (108,100)(108,100) 0.020.02 2.24E-062.24E-06 2.24E-062.24E-06 2.24E-062.24E-06 2.26E-062.26E-06 7.96E-057.96E-05 1.34E-041.34E-04 (108,100)(108,100) 0.010.01 3.05E-133.05E-13 3.05E-133.05E-13 3.03E-133.03E-13 2.59E-142.59E-14 1.59E-131.59E-13 1.66E-131.66E-13 (108,100)(108,100) 0.0050.005 3.25E-213.25E-21 3.25E-213.25E-21 3.21E-213.21E-21 8.05E-258.05E-25 1.71E-261.71E-26 1.71E-261.71E-26 (108,100)(108,100) 0.0020.002 1.63E-321.63E-32 1.63E-321.63E-32 1.61E-321.61E-32 7.16E-407.16E-40 3.28E-433.28E-43 3.28E-433.28E-43 (108,100)(108,100) 0.0010.001 2.48E-412.48E-41 2.48E-412.48E-41 2.45E-412.45E-41 1.35E-511.35E-51 8.36E-538.36E-53 8.36E-538.36E-53

(n1,k1)(n1, k1) BERBER K0K0 K2K2 K4K4 K6K6 K8K8 K10K10 (110,100)(110,100) 0.020.02 1.24E-081.24E-08 1.24E-081.24E-08 1.24E-081.24E-08 8.45E-098.45E-09 2.42E-082.42E-08 2.79E-082.79E-08 (110,100)(110,100) 0.010.01 3.13E-173.13E-17 3.13E-173.13E-17 3.13E-173.13E-17 1.12E-191.12E-19 1.17E-211.17E-21 1.12E-211.12E-21 (110,100)(110,100) 0.0050.005 5.96E-275.96E-27 5.96E-275.96E-27 5.94E-275.94E-27 1.33E-321.33E-32 1.02E-371.02E-37 9.75E-389.75E-38 (110,100)(110,100) 0.0020.002 1.32E-401.32E-40 1.32E-401.32E-40 1.32E-401.32E-40 8.47E-518.47E-51 3.48E-573.48E-57 3.48E-573.48E-57 (110,100)(110,100) 0.0010.001 3.24E-513.24E-51 3.24E-513.24E-51 3.24E-513.24E-51 6.05E-656.05E-65 3.43E-683.43E-68 3.43E-683.43E-68

(n1,k1)(n1, k1) BERBER K0K0 K2K2 K4K4 K6K6 K8K8 K10K10 (112,100)(112,100) 0.020.02 2.84E-112.84E-11 2.84E-112.84E-11 2.84E-112.84E-11 4.79E-124.79E-12 2.81E-132.81E-13 1.26E-131.26E-13 (112,100)(112,100) 0.010.01 1.34E-211.34E-21 1.34E-211.34E-21 1.34E-211.34E-21 1.34E-251.34E-25 3.52E-303.52E-30 1.37E-301.37E-30 (112,100)(112,100) 0.0050.005 4.45E-334.45E-33 4.45E-334.45E-33 4.45E-334.45E-33 6.81E-416.81E-41 2.94E-492.94E-49 1.26E-491.26E-49 (112,100)(112,100) 0.0020.002 4.32E-494.32E-49 4.32E-494.32E-49 4.32E-494.32E-49 3.08E-623.08E-62 1.00E-711.00E-71 1.00E-711.00E-71 (112,100)(112,100) 0.0010.001 1.68E-611.68E-61 1.68E-611.68E-61 1.68E-611.68E-61 8.81E-798.81E-79 2.50E-842.50E-84 2.50E-842.50E-84

표 1 내지 표 4에서 (n2, k2)는 (110, 100)이고, BER는 입력데이터 심볼의 오류율이다. 그리고, K뒤의 숫자는 K의 설정값으로서, K 뒤의 숫자에 해당하는 말소코드의 개수까지는 오류말소정정을 하고, 그 이상의 말소코드가 발생하면 오류정정을 실시하는 것임을 나타낸다.In Tables 1 to 4, (n2, k2) is (110, 100), and BER is an error rate of input data symbols. The number after K is a setting value of K, which indicates that error erasure is corrected up to the number of erasure codes corresponding to the number after K, and that error correction is performed when more erase codes occur.

표 1 내지 표 4에서 오류심볼의 발생율이 10-2인 경우, 즉 BER값이 0.01인 경우의 각 코드오류율을 다음의 표 5에 나타내었다.In Tables 1 to 4, each code error rate when the incidence of error symbols is 10 −2 , that is, when the BER value is 0.01, is shown in Table 5 below.

BERBER (n1,k1)(n1, k1) K0K0 K2K2 K4K4 K6K6 K8K8 K10K10 0.010.01 (106,100)(106,100) 1.01E091.01E09 1.01E-091.01E-09 1.01E-091.01E-09 9.48E-109.48E-10 1.48E-081.48E-08 1.12E-061.12E-06 0.010.01 (108,100)(108,100) 3.05E-133.05E-13 3.05E-133.05E-13 3.05E-133.05E-13 1.14E-131.14E-13 4.85E-154.85E-15 1.66E-131.66E-13 0.010.01 (110,100)(110,100) 3.13E-173.13E-17 3.13E-173.13E-17 3.13E-173.13E-17 2.62E-182.62E-18 3.18E-213.18E-21 1.12E-211.12E-21 0.010.01 (112,100)(112,100) 1.34E-211.34E-21 1.34E-211.34E-21 1.34E-211.34E-21 1.90E-231.90E-23 6.24E-286.24E-28 1.37E-301.37E-30

표 5에 의하면, 입력데이터의 오류율이 0.01로 가정되었을 때, n1이 106일 때 디코딩 오류율이 최소가 되는 K값은 6이고, n1이 108일 때 디코딩 오류율이 최소가 되는 K값은 8, n1이 110 또는, 112일 때 디코딩 오류율이 최소가 되는 K값은 10임을 알 수 있다. 도5는 말소코드(Erasure)의 정정개수에 따라 변화하는 종축복호화 시의 디코딩 오류율을 도시한 것이다.According to Table 5, when the error rate of the input data is assumed to be 0.01, the K value at which the decoding error rate is minimum when n1 is 106 is 6, and the K value at which the decoding error rate is minimum when n1 is 108 is 8, n1. When the value is 110 or 112, it can be seen that the K value at which the decoding error rate is minimum is 10. Fig. 5 shows the decoding error rate at the time of vertical axis decoding which changes according to the correction number of erase codes.

그러나, 표1 내지 표 4에 나타내었듯이 동일한 구조의 2차원 리드-솔로몬 코드라 할지라도, 입력데이터의 오류율이 다르면, 최적의 K 값은 달라지는 것을 알 수 있다. 그러므로, 본 발명은 종축디코딩 시, 입력데이터의 오류율과 리드-솔로몬 코드의 구조에 따라 K값을 달리하여 디코딩함으로써, 오류정정효과를 개선시키는 것이다. 본 발명은 어떤 구조의 리드-솔로몬 코드를 사용할 것인가에 따라 K값을 설정하여 복호화하면 된다.However, as shown in Tables 1 to 4, even if the two-dimensional Reed-Solomon code of the same structure, it can be seen that the optimum K value is different if the error rate of the input data is different. Therefore, the present invention improves the error correction effect by differently decoding the K value according to the error rate of the input data and the structure of the Reed-Solomon code during longitudinal axis decoding. According to the present invention, the K-value may be set and decoded according to the structure of the Reed-Solomon code.

본 발명의 오류정정방법은 2차원 리드-솔로몬 코드의 복호화 시, 말소코드의 개수에 따라 복호화방법을 달리하므로, 종래의 단순한 복호화에 의한 오류정정방법에 비해 복호화 후, 오류발생확률이 최소화되는 효과가 있다. 따라서, 본 발명의 오류정정방법은 종래의 오류정정방법에 비해 종축복호화 후, 디지털 데이터의 전송신뢰도가 높아지게 된다.In the error correction method of the present invention, since the decoding method is different depending on the number of erase codes when the 2D Reed-Solomon code is decoded, the probability of error occurrence after decoding is minimized as compared to the conventional error correction method by simple decoding. There is. Therefore, the error correction method of the present invention increases the transmission reliability of digital data after longitudinal axis decoding, as compared with the conventional error correction method.

Claims (3)

정보심볼의 개수가 k1인 데이터에 n1-k1개의 패리티심볼이 첨가된 (n1, k1) 코드로 횡축복호화하는 단계;Performing horizontal axis decoding with (n1, k1) codes in which n1-k1 parity symbols are added to data having the number of information symbols k1; 상기 (n1,k1)코드 중, 오류가 발생한 심볼을 말소코드(Erasure Code)로 설정하는 단계;Setting an error symbol among the (n1, k1) codes as an erasure code; 상기 말소코드의 개수와 소정의 기준개수를 비교하는 단계;Comparing the number of erase codes with a predetermined reference number; 상기 말소코드의 개수가 상기 기준개수보다 많으면 종축의 (n2, k2)코드로 오류정정복호화하는 단계; 그리고,Error correcting and decoding the (n2, k2) code of a vertical axis if the number of erase codes is larger than the reference number; And, 상기 말소코드의 개수가 상기 기준개수보다 같거나, 적으면 말소코드를 오류말소정정(Error-Erasure Correction)방법으로 복호화하는 단계를 포함하여 구성된 2차원 리드-솔로몬 코드의 오류정정방법.And if the number of erase codes is equal to or less than the reference number, decoding the erase codes by an error erasure correction method. 제 1 항에 있어서, 상기 기준개수는 소정의 입력오류율이 주어졌을 때, 종축복호화 후의 오류발생율이 최소화되는 것을 특징으로 하는 2차원 리드-솔로몬 코드의 에러정정방법.The error correction method of claim 1, wherein the reference number is minimized when a predetermined input error rate is given, and the error occurrence rate after vertical axis decoding is minimized. 제 2 항에 있어서, 상기 입력오류율에 따라 상기 기준개수가 변동되는 것을 특징으로 하는 2차원 리드-솔로몬 코드의 오류정정방법.The error correction method of claim 2, wherein the reference number varies according to the input error rate.
KR1019980001743A 1998-01-21 1998-01-21 Error Correction Method of 2D Reed-Solomon Code KR19990066105A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980001743A KR19990066105A (en) 1998-01-21 1998-01-21 Error Correction Method of 2D Reed-Solomon Code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980001743A KR19990066105A (en) 1998-01-21 1998-01-21 Error Correction Method of 2D Reed-Solomon Code

Publications (1)

Publication Number Publication Date
KR19990066105A true KR19990066105A (en) 1999-08-16

Family

ID=65892664

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980001743A KR19990066105A (en) 1998-01-21 1998-01-21 Error Correction Method of 2D Reed-Solomon Code

Country Status (1)

Country Link
KR (1) KR19990066105A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100600310B1 (en) * 2004-12-02 2006-07-18 주식회사 대우일렉트로닉스 Method for encoding and decoding 2-dimension page
KR100617769B1 (en) * 2004-03-24 2006-08-28 삼성전자주식회사 Channel encoding apparatus and method
KR100785610B1 (en) * 2000-07-05 2007-12-12 주식회사 대우일렉트로닉스 High speed encoder of reed-solomon product coder

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100785610B1 (en) * 2000-07-05 2007-12-12 주식회사 대우일렉트로닉스 High speed encoder of reed-solomon product coder
KR100617769B1 (en) * 2004-03-24 2006-08-28 삼성전자주식회사 Channel encoding apparatus and method
KR100600310B1 (en) * 2004-12-02 2006-07-18 주식회사 대우일렉트로닉스 Method for encoding and decoding 2-dimension page

Similar Documents

Publication Publication Date Title
US4653052A (en) Method for decoding double-encoding codes and apparatus using the same
US6272659B1 (en) Error correction code processor employing adjustable correction power for miscorrection minimization
KR960003094B1 (en) Error correction code generator
US7409622B1 (en) System and method for reverse error correction coding
JPH0812612B2 (en) Error correction method and apparatus
KR20020027365A (en) Encoding/decoding device and encoding/decoding method
US7310765B1 (en) Method and apparatus for checking read errors with two cyclic redundancy check stages
US6832042B1 (en) Encoding and decoding system in an optical disk storage device
KR20060029495A (en) Apparatus and method for decoding of reed-solomon symbols
US20070204188A1 (en) Error correction method and reproduction apparatus
JPS628056B2 (en)
US5371751A (en) Method of correcting errors of coded data
US5809042A (en) Interleave type error correction method and apparatus
KR19990066105A (en) Error Correction Method of 2D Reed-Solomon Code
JPH06338807A (en) Method and equipment for sign correction
US6718505B1 (en) Method and apparatus for error correction in a process of decoding cross-interleaved Reed-Solomon code (CIRC)
US6453439B1 (en) Pseudo product code encoding and decoding apparatus and method
EP1111799B1 (en) Error correction with a cross-interleaved Reed-Solomon code, particularly for CD-ROM
KR100259296B1 (en) Error correction method
KR0141826B1 (en) Error correction method of compression data
JP2005064608A (en) Method and circuit of processing signal
JP3277062B2 (en) Error correction code decoding device
US20090106624A1 (en) Error correction method
JP2792670B2 (en) Error correction code decoding method
JP6552776B1 (en) Error correction decoding apparatus and error correction decoding method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application