KR19990032073A - Error correction device of digital TV - Google Patents

Error correction device of digital TV Download PDF

Info

Publication number
KR19990032073A
KR19990032073A KR1019970053005A KR19970053005A KR19990032073A KR 19990032073 A KR19990032073 A KR 19990032073A KR 1019970053005 A KR1019970053005 A KR 1019970053005A KR 19970053005 A KR19970053005 A KR 19970053005A KR 19990032073 A KR19990032073 A KR 19990032073A
Authority
KR
South Korea
Prior art keywords
error
syndrome
polynomial
data
output
Prior art date
Application number
KR1019970053005A
Other languages
Korean (ko)
Other versions
KR100226837B1 (en
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 KR1019970053005A priority Critical patent/KR100226837B1/en
Publication of KR19990032073A publication Critical patent/KR19990032073A/en
Application granted granted Critical
Publication of KR100226837B1 publication Critical patent/KR100226837B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/015High-definition television systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)

Abstract

데이터 전송 시 발생하는 디지털 TV의 에러 정정 장치에 관한 것으로서, 특히 정정 데이터의 신드롬 다항식을 다시 계산하여 정정 데이터의 신드롬 다항식이 0이면 정정 데이터를 최종 데이터로 출력하고, 정정 데이터의 신드롬 다항식이 0이 아니면 정정되지 않은 원래의 데이터를 최종 데이터로 출력함으로써, 채널 상에서 t개 이상의 에러가 발생하였을 경우 R-S 디코더의 오동작에 의해 생기는 오류를 방지하고, 또한, 신드롬 발생기, 에러 위치 발생부, 에러 평가 발생부에서 보통 곱셈기 대신 상수 갈로아 필드 곱셈기를 사용하여 곱셈을 수행하고, 더불어 에러 위치 발생부와 에러 평가 발생부를 유사한 셀 기초(Based) 구조를 갖도록 설계함으로써, VLSI로 집적시 집적도를 향상시켜 칩 사이즈를 줄이고 비용을 감소시키며, 상기 신드롬 발생기는 신드롬 다항식을 병렬로 출력하고, 유클리디언 디바이더는 이를 병렬로 로딩하도록 함으로써, 디바이딩 연산 수행 시간을 단축시키고 이로인해 FIFO 램의 크기를 줄인다.A syndrome polynomial of the correction data is recalculated, and when the syndrome polynomial of the correction data is 0, the correction data is output as the final data, and when the syndrome polynomial of the correction data is 0 Alternatively, by outputting the uncorrected original data as the final data, it is possible to prevent an error caused by a malfunction of the RS decoder when more than t errors occur on the channel, and also to prevent an error caused by a syndrome generator, In addition, by performing the multiplication using a constant Galois field multiplier instead of the ordinary multiplier, and by designing the error location generator and the error evaluation generator to have a similar cell basis structure, the degree of integration when integrated into a VLSI is increased, Wherein the syndrome generator comprises a syndrome generator Hangsik outputs in parallel, and shorten the time Dividing operation performed by Euclidean divider to load them in parallel and This reduces the size of the FIFO RAM.

Description

디지털 티브이의 에러 정정 장치Error correction device of digital TV

본 발명은 데이터 전송 시 발생하는 에러를 정정하는 장치에 관한 것으로서, 특히 디지털 티브이(TV)의 하이 스피드 리드-솔로몬(High Speed Reed-Solomon) 디코더에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an apparatus for correcting errors occurring in data transmission, and more particularly to a High Speed Reed-Solomon decoder of a digital TV.

일반적인 데이터 전송 시스템은 데이터를 전송하는 과정에서 외부 또는 내부의 노이즈에 의하여 발생하는 에러를 복원하기 위하여 채널 코딩 기법을 사용한다. 이중에서 가장 널리 사용되는 코드가 리드-솔로몬 코드이다. 그리고, 하이 데이터 레이트(Data Rate)를 필요로 하는 고화질 티브이(HDTV) 전송 시스템에서도 R-S 코드를 채택하고 있다.A typical data transmission system uses a channel coding scheme to recover errors caused by external or internal noise in the process of transmitting data. The most widely used code is Reed-Solomon code. In addition, a high-definition television (HDTV) transmission system that requires a high data rate also adopts the R-S code.

이러한 광범위한 R-S 코드를 디코딩할 수 있는 기술이 미국특허 4,873,688에 개시되어 있으며, 종래 기술로서 도 1에 도시되어 있다.A technique capable of decoding such an extensive R-S code is disclosed in U.S. Patent No. 4,873,688 and is shown in Figure 1 as a prior art.

도 1을 보면, 신드롬(Syndrome) 발생기(33), 유클리드(Euclid) 디바이더(Divider)(34), 유클리드 곱셈기(Multiplier)(35), 다항식 해석(Polynomial Solver)부(36), 인버스 롬(Inverse Rom)(37), 에러 정정부(38), 및 선입선출(First In First Output ; FIFO) 램(39)으로 구성된 유클리디언 알고리즘을 사용하여 하이 스피드 리얼 타임 R-S 디코더를 구현하고 있다. 이와같이 구성된 도 1은 i) 신드롬 발생기(33), ii) 유클리드 디바이더(34) 및 유클리드 곱셈기(35), iii) 다항식 해석부(36) 및 에러정정부(38), iv) 에러정정 정정부(39)로부터의 출력 데이터로 된 4개의 파이프라인 구조를 갖고 있으므로, 4개의 수신된 블록 데이터를 저장할 수 있는 FIFO 램(39)이 필요하게 된다.1, a syndrome generator 33, an Euclid divider 34, an Euclidean multiplier 35, a polynomial solver unit 36, an inverse (inverse) Speed real-time RS decoder using an Euclidian algorithm composed of a random access memory (RAM) 37, an error correction unit 38, and a first-in first-out (FIFO) RAM 39. 1 configured as described above includes i) a syndrome generator 33, ii) a Euclidean divider 34 and an Euclidean multiplier 35, iii) a polynomial analysis unit 36 and an error correction unit 38, iv) 39, it is necessary to have a FIFO RAM 39 capable of storing four pieces of received block data.

즉, 먼저 수신된 다항식(32)은 신드롬 발생기(33)와 FIFO 램(39)으로 입력된다. 상기 신드롬 계산기(33)는 블록 단위의 데이터가 모두 입력되면 2t(t는 에러정정 가능한 개수)개의 신드롬을 계산하여 유클리드 디바이더(34)와 유클리드 곱셈기(35)로 출력한다. 상기 유클리드 디바이더(34)는 신드롬을 입력받아 에러 평가 다항식 Ω(x)의 계수를 검출하고, 유클리드 곱셈기(35)는 에러 위치 다항식 Λ(x)의 계수를 생성하여 다항식 해석부(36)로 출력한다. 상기 다항식 해석부(36)는 상기 에러 평가 다항식 Ω(x)의 계수와 에러 위치 다항식 Λ(x)의 계수를 입력받아 에러 위치 다항식 Λ(x)의 근(Root)과 에러 위치 다항식 Λ(x)의 1차 미분 함수 Λ'(x)|x=root,에러 평가 다항식 Ω(x)의 근 Ω(x)|x=root를 각각 구하게 된다. 이 값들이 에러 정정부(38)로 입력되어 에러의 크기(Magnitude)를 결정하게 되며, FIFO 램(39)으로부터 입력되는 원래의 데이터와 배타적 오아링되어 에러를 정정함에 의해 정정 데이터를 출력하게 된다.That is, the received polynomial 32 is input to the syndrome generator 33 and the FIFO RAM 39. The syndrome calculator 33 calculates 2t (t is an error-correctable number) syndromes and outputs the syndrome to the Euclidean divider 34 and the Euclidean multiplier 35 when all data of the block unit is input. The Euclidean divider 34 receives the syndromes and detects the coefficients of the error evaluation polynomial Ω (x). The Euclidean multiplier 35 generates coefficients of the error locator polynomial Λ (x) and outputs the coefficients to the polynomial analysis unit 36 do. The polynomial analyzing unit 36 receives the coefficients of the error evaluation polynomial Ω (x) and the coefficients of the error locator polynomial Λ (x) to calculate the root of the error locator polynomial Λ (x) and the error locator polynomial Λ (x ) Of the first-order differential function Λ '(x) | x = root , error evaluation polynomial Ω (x) Ω (x) | x = root , respectively. These values are input to the error correction unit 38 to determine the magnitude of the error and are exclusive-ORed with the original data input from the FIFO RAM 39 to correct the error and output the correction data .

그러나, 상기된 종래 기술은 에러가 올바르게 수정되었는지의 확인이 없이 바로 데이터를 출력하여 다음 블록으로 전송하므로 t-에러 정정 R-S 코드에서 전송 채널 상에서 에러가 t개 이상 발생하였을 경우 R-S 디코더가 오동작을 하게된다. 즉, R-S 디코더가 정정할 수 있는 에러의 개수를 t개라 하면, 전송 채널 상에서 노이즈에 의하여 t개 이상의 에러가 발생하였을 경우 원래 수신된 데이터를 그대로 출력해야 한다. 만일 이 경우에 에러 정정부에서 구해진 에러 값(잘못 정정된 데이터)과 원래 데이터를 배타적 오아링하면 오히려 원래 수신된 데이터보다 더 에러를 발생시킬 가능성이 크기 때문이다.However, since the above-mentioned conventional technique outputs data immediately without checking whether the error is correctly corrected, and transmits the data to the next block, when an error occurs more than t on the transmission channel in the t-error correction RS code, the RS decoder malfunctions do. That is, if the number of errors that can be corrected by the R-S decoder is t, if t or more errors occur due to noise on the transmission channel, the originally received data must be output as it is. If the error value (erroneously corrected data) obtained from the error correction unit and the original data are exclusive-ORed in this case, it is more likely to generate an error than the originally received data.

그리고, 상기 신드롬 발생기(33)는 일반적인 보통 곱셈기를 사용하여 신드롬을 계산하므로 게이트 수가 많아지게 되고, 이로인해 VLSI로 집적화시 디자인이 어렵고 복잡하여 집적도가 떨어지며 비용 상승의 원인이 된다.Since the syndrome generator 33 calculates a syndrome by using a general ordinary multiplier, the number of gates is increased. As a result, integration in a VLSI makes design difficult and complicated, resulting in low integration and increased cost.

또한, 상기 유클리드 디바이더(34)는 신드롬 다항식 S(x)를 셀(Cell) 0부터 최상위 차수의 계수까지 시리얼 로딩을 하도록 되어 있다. 이럴 경우 S(x)의 계수가 모두 2t개이고, 나누기 연산을 하는데 필요한 클럭 사이클 수가 최대 2t 사이클이 요구되므로 총 4t 클럭 사이클이 필요하게 된다. 따라서, 처리시간(Latency)이 늘어나고 이로인해 FIFO 램(39)의 크기가 커진다.In addition, the Euclidean divider 34 performs serial loading of the syndrome polynomial S (x) from the cell 0 to the coefficient of the highest order. In this case, all the coefficients of S (x) are 2t, and the maximum number of clock cycles required for the division operation is 2t, which requires a total of 4t clock cycles. Therefore, the processing time (latency) increases and the size of the FIFO RAM 39 increases.

또한, 4개의 파이프라인 구조를 갖고 있으므로, FIFO 램(39)은 최대 4개의 수신된 블록 데이터를 저장할 수 있어야 하고 이로인해 FIFO 램(39)의 크기는 더욱 커진다.In addition, since the FIFO RAM 39 has four pipeline structures, the FIFO RAM 39 must be able to store a maximum of four received block data, thereby increasing the size of the FIFO RAM 39.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 GA HDTV와 같은 디지털 TV 규격에 일치하는 R-S 디코더를 VLSI(Very Large Scale Integrated Circuit)로 집적시 집적도를 향상시킬 수 있도록 하는 디지털 TV의 에러 정정 장치를 제공함에 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and it is an object of the present invention to provide a digital multi-scale integrated circuit which can improve the integration degree when integrating an RS decoder conforming to a digital TV standard such as GA HDTV into a VLSI And an error correction apparatus for a TV.

본 발명의 다른 목적은 수신된 데이터 또는 정정된 데이터의 신드롬 발생시 상수 갈로아 필드 곱셈기를 이용하여 곱셈을 수행하도록 하는 디지털 TV의 에러 정정 장치를 제공함에 있다.Another object of the present invention is to provide an error correction apparatus for a digital TV that performs a multiplication using a constant Galois field multiplier when a syndrome of received data or corrected data occurs.

본 발명의 또다른 목적은 신드롬 다항식을 한 클럭 사이클동안 병렬로 로딩하여 에러 평가 다항식의 계수를 구하도록 하는 디지털 TV의 에러 정정 장치를 제공함에 있다.It is still another object of the present invention to provide an error correction apparatus for a digital TV that loads a syndrome polynomial in parallel for one clock cycle to obtain coefficients of an error evaluation polynomial.

본 발명의 또다른 목적은 정정 데이터의 신드롬을 다시 계산하여 정정된 데이터가 올바르게 정정되었는지를 판별하고 판별 결과에 따라 원래의 데이터 또는 정정 데이터를 최종 데이터로 선택 출력하도록 하는 디지털 TV의 에러 정정 장치를 제공함에 있다.It is still another object of the present invention to provide an error correction device for a digital TV that recalculates a syndrome of correction data to determine whether the corrected data has been correctly corrected and outputs the original data or correction data as final data according to the discrimination result .

상기와 같은 목적을 달성하기 위한 본 발명에 따른 디지탈 TV의 에러정정 장치는 신드롬 발생기, 유클리디언 디바이더/곱셈기, 에러 평가 발생부, 에러 위치 발생부, 에러 다항식 발생부, 에러 정정부, 메모리, 에러 확인 및 데이터 출력부로 구성됨을 특징으로 한다.According to another aspect of the present invention, there is provided an apparatus for correcting error in a digital TV, the apparatus including a syndrome generator, an Euclidean divider / multiplier, an error evaluator, an error locator, an error polynomial generator, An error check and a data output unit.

본 발명은 메시지 다항식 M(x)에 2t(t는 정정 가능한 에러의 수)개의 패리티 비트가 추가되어 만들어진 R-S 코드 워드 다항식 C(x)가 전송되면 상기 신드롬 발생기는 곱셈 수행시 상수 갈로아 필드 곱셈기를 이용하여 수신되는 다항식 R(x)의 신드롬 다항식 S(x)를 발생하여 병렬로 출력함을 특징으로 한다.When the RS code word polynomial C (x) generated by adding 2t (t is the number of correctable errors) parity bits to the message polynomial M (x) is transmitted, the syndrome generator generates a constant Galois field multiplier (X) of the received polynomial R (x) and outputs the generated syndrome polynomial S (x) in parallel.

본 발명에 따른 유클리디언 디바이더/곱셈기는 상기 신드롬 발생기에서 발생된 신드롬 다항식 S(x)를 병렬로 로딩하여 에러 평가 다항식 Ω(x)의 계수와 에러 위치 다항식 Λ(x)의 계수를 각각 구함을 특징으로 한다.The Euclidean divider / multiplier according to the present invention loads the syndrome polynomial S (x) generated in the syndrome generator in parallel to obtain the coefficients of the error evaluation polynomial Ω (x) and the coefficients of the error location polynomial Λ (x) .

본 발명에 따른 에러 평가 발생부는 상기 유클리디언 디바이더에서 발생된 에러 평가 다항식 Ω(x)에 α-N+1부터 α0까지 지수를 증가하면서 순차적으로 대입시킴에 의해 에러 평가 다항식 Ω(x)의 근을 구함을 특징으로 한다.The error evaluation generator according to the present invention generates the error evaluation polynomial Ω (x) by sequentially substituting the error evaluation polynomial Ω (x) generated in the Euclidean divider with increasing indices from α -N + 1 to α 0 , Is obtained.

본 발명에 따른 에러 평가 발생부는 상수 갈로아 필드 곱셈기를 사용하여 곱셈을 수행함을 특징으로 한다.The error evaluation generator according to the present invention is characterized in that a multiplication is performed using a constant Galois field multiplier.

본 발명에 따른 에러 위치 발생부는 상기 유클리디언 곱셈기에서 발생된 에러 위치 다항식 Λ(x)에 α-N+1부터 α0까지 지수를 증가하면서 순차적으로 대입시킴에 의해 에러 위치 다항식 Λ(x)의 근을 구하여 Λ(αi)=0을 만족하는 x=αi의 위치를 발생함을 특징으로 한다.The error location generator according to the present invention generates the error locator polynomial Λ (x) by sequentially substituting the error locator polynomial Λ (x) generated in the Euclidean multiplier with increasing indices from α -N + 1 to α 0 , And the position of x = α i satisfying Λ (α i ) = 0 is generated.

본 발명에 따른 에러 위치 발생부는 상기 유클리디언 곱셈기에서 발생된 에러 위치 다항식 Λ(x)에 α-N+1부터 α0까지 지수를 증가하면서 순차적으로 대입시킨 후 홀수 텀의 계수들만을 추출함에 의해 에러 위치 다항식 Λ(x)의 1차 미분 함수 Λ'(x)를 출력함을 특징으로 한다.The error location generator according to the present invention sequentially extracts the coefficients of the odd term after sequentially increasing the index from? -N + 1 to? 0 to the error locator polynomial? (X) generated by the Euclidean multiplier, (X) of the error locator polynomial Λ (x).

본 발명에 따른 에러 위치 발생부는 상수 갈로아 필드 곱셈기를 사용하여 곱셈을 수행함을 특징으로 한다.The error location generator according to the present invention is characterized in that a multiplication is performed using a constant Galois field multiplier.

본 발명에 따른 에러 다항식 발생부는 상기 에러 평가 발생부의 출력 Ω(αi)과 에러 위치 발생부에서 계산된 에러 위치 그리고, 에러 위치 다항식 Λ(x)의 1차 미분 함수 Λ'(x)를 포니 알고리즘에 적용하여 에러 다항식 E(x)를 구함을 특징으로 한다.The error polynomial generating unit according to the present invention generates an error polynomial based on the output Ω (α i ) of the error evaluation generating unit, the error position calculated in the error position generating unit, and the first-order differential function Λ '(x) Algorithm to find the error polynomial E (x).

본 발명에 따른 에러 확인 및 데이터 출력부는 상기 에러 정정부에서 정정된 데이터의 신드롬을 계산하여 정정 데이터가 올바르게 정정되었는지를 판별하고 판별 결과에 따라 정정되지 않은 원 데이터 또는 상기 에러 정정부에서 정정된 데이터를 최종 데이터로 선택 출력함을 특징으로 한다.The error checking and data output unit according to the present invention calculates a syndrome of corrected data by the error correcting unit to determine whether the corrected data has been corrected correctly and to correct the original data not corrected according to the discrimination result or the corrected data As the final data.

도 1은 종래의 디지털 TV의 에러 정정 장치의 구성 블록도1 is a block diagram of a conventional digital TV error correction apparatus

도 2는 본 발명에 따른 디지털 TV의 에러 정정 장치의 구성 블록도2 is a block diagram of an apparatus for error correction of a digital TV according to the present invention

도 3은 도 2의 신드롬 발생기의 상세 블록도Figure 3 is a detailed block diagram of the syndrome generator of Figure 2;

도 4는 도 2의 유클리디언 디바이더의 상세 블록도4 is a detailed block diagram of the Euclidian divider of FIG.

도 5는 도 2의 에러 위치 발생부의 상세 블록도5 is a detailed block diagram of the error location generating unit of FIG.

도 6은 도 2의 에러 평가 발생부의 상세 블록도Fig. 6 is a detailed block diagram of the error evaluation generation unit of Fig. 2

도 7은 도 2의 에러 다항식 발생부의 상세 블록도FIG. 7 is a detailed block diagram of the error polynomial generating unit of FIG.

도 8은 도 2의 에러 확인 및 데이터 출력부의 상세 블록도Fig. 8 is a detailed block diagram of the error checking and data output unit of Fig. 2

도면의 주요부분에 대한 부호의 설명DESCRIPTION OF THE REFERENCE NUMERALS

101 : 신드롬 발생기 102 : 유클리디언 디바이더101: Syndrome generator 102: Euclidean divider

103 : 유클리디언 곱셈기 104 : 에러 평가 발생부103: Euclidean multiplier 104: Error evaluation generator

105 : 에러 위치 발생부 106 : 에러 다항식 발생부105: error position generating unit 106: error polynomial generating unit

107 : FIFO 램 108 : 에러 정정부107: FIFO RAM 108: error correction unit

109 : 에러 확인 및 데이터 출력부109: Error check and data output unit

이하, 본 발명의 바람직한 실시예를 첨부도면을 참조하여 상세히 설명한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 따른 디지탈 TV의 에러정정 장치의 전체 구성 블록도로서, 수신된 다항식 R(x)로부터 신드롬 S(x)을 발생하여 병렬로 출력하는 신드롬 발생기(101), 상기 신드롬 발생기(101)에서 발생된 신드롬 S(x)를 병렬로 로딩하여 에러 평가 다항식 Ω(x)의 계수를 구하는 유클리디언 디바이더(102), 상기 신드롬 발생기(101)에서 발생된 신드롬을 입력받아 에러 위치 다항식 Λ(x)의 계수를 구하는 유클리디언 곱셈기(103), 상기 유클리디언 디바이더(102)에서 발생된 에러 평가 다항식 Ω(x)의 계수를 이용하여 에러 평가 다항식 Ω(x)의 근을 구함에 의해 에러 크기를 추정하는 에러 평가 발생부(104), 상기 유클리디언 곱셈기(103)의 에러 위치 다항식 Λ(x)의 근을 구하여 에러 위치를 추정하고 에러 위치 다항식 Λ(x)의 1차 미분값 Λ'(αi)·αi을 출력하는 에러 위치 발생부(105), 상기 에러 평가 발생부(104)에서 구한 에러 평가 다항식 Ω(x)의 근과 에러 위치 발생부(105)에서 구한 에러 위치 그리고, 에러 위치 다항식 Λ(x)의 1차 미분함수 Λ'(αi)·αi을 이용하여 에러 값을 구하는 에러 다항식 발생부(106), 수신된 다항식을 저장하는 FIFO 램(107), 상기 에러 다항식 발생부(106)의 에러 값과 FIFO 램(107)에 저장된 원래의 데이터를 배타적 오아링하여 에러를 정정하는 에러 정정부(108), 및 에러 정정부(108)에서 정정된 데이터의 신드롬을 계산하여 정정 데이터가 올바르게 정정되었는지를 판별하고 판별 결과에 따라 상기 FIFO 램(108)에 저장된 원 데이터 또는 정정 데이터를 최종 데이터로 선택 출력하는 에러 확인 및 데이터 출력부(109)로 구성된다.FIG. 2 is an overall block diagram of an apparatus for error correction of a digital TV according to the present invention, which includes a syndrome generator 101 for generating a syndrome S (x) from a received polynomial R (x) An Euclidean divider 102 for calculating the coefficients of the error evaluation polynomial Ω (x) by loading the syndrome S (x) generated in the syndrome generating unit 101 in parallel, a syndrome generator 102 for receiving the syndrome generated by the syndrome generator 101, (X) of the error evaluation polynomial Ω (x) by using the coefficients of the error evaluation polynomial Ω (x) generated in the Euclidean divider 102. The Euclidean multiplier 103 calculates the coefficients of the error evaluation polynomial Ω (X) of the euclidean multiplier 103 to estimate the error position, and outputs the error locator polynomial Λ (x) of the error locator polynomial Λ And outputs the differential value Λ '(α i ) · α i . (X) of the error evaluation polynomial Ω (x) obtained by the error evaluation generation unit 104 and the error position obtained by the error position generation unit 105 and the first derivative of the error position polynomial Λ An error polynomial generating unit 106 for obtaining an error value using Λ '(α i ) · α i , a FIFO RAM 107 for storing the received polynomial, an error value of the error polynomial generating unit 106, An error correction unit 108 for exclusive-ORing the original data stored in the error correction unit 107 to correct the error, and a syndrome correction unit 108 for calculating the syndrome of the corrected data in the error correction unit 108 to discriminate whether the correction data has been corrected correctly, And an error check and data output unit 109 for selectively outputting original data or correction data stored in the FIFO RAM 108 as final data according to the result.

이와같이 구성된 본 발명에서 R-S 코드워드 다항식 C(x)는 실제 데이터인 전송하고자 하는 메시지 다항식 M(x)에 2t(t는 정정 가능한 에러의 수)개의 패리티 심볼을 추가하여 만들어진다. 이를 수학적으로 표현하면 하기의 수학식 1과 같다.In the present invention configured as described above, the RS codeword polynomial C (x) is created by adding 2t (t is the number of correctable errors) parity symbols to the message polynomial M (x) to be transmitted, which is actual data. This can be mathematically expressed by Equation 1 below.

C(x) = M(x) ·X2t+ M(x) ·X2tMOD G(X)C (x) = M (x) 占X2t + M 占 x 占2t MOD G (X)

여기서, G(x)는 생성 다항식(Generator Polynomial)으로서, 하기 수학식 2와 같이 표현되며, 정정하고자 하는 에러 개수가 10개이면 20차가 나온다.Here, G (x) is a generator polynomial, expressed as Equation (2) below, and if the number of errors to be corrected is 10, 20 values are obtained.

상기 수학식 1과 수학식 2에서 알수 있듯이 C(x)는 G(x)의 멀티플(Multiple)이 되며, G(x) = 0을 만족시키는 근은 C(x) = 0을 만족시키게 된다.As can be seen from Equations 1 and 2, C (x) is a multiple of G (x), and a root satisfying G (x) = 0 satisfies C (x) = 0.

이때, GA HDTV 규격에서는 상기 생성 다항식 G(x) 및 원시(Primitive) 다항식 P(x)를 다음의 수학식 3과 같이 정하고 있다.In this case, in the GA HDTV standard, the generator polynomial G (x) and the primitive polynomial P (x) are defined as Equation (3).

이와같이, R-S 엔코딩된 코드 워드 다항식 C(x)가 어떤 채널 상으로 전송될 경우 채널 상의 노이즈에 의해 에러가 발생될 수 있으며, 디지털 TV와 같은 수신단에서 수신된 데이터 R(x)는 다음의 수학식 4와 같이 표현된다.In this way, an error may be caused by the noise on the channel when the RS encoded codeword polynomial C (x) is transmitted on a certain channel, and the data R (x) received at the receiving end, such as a digital TV, 4.

따라서, 에러 다항식 E(x)는 만일 채널 노이즈에 의하여 ν개의 심볼 에러가 발생하였다면 다음의 수학식 5와 같이 표현할 수 있다.Therefore, the error polynomial E (x) can be expressed by the following equation (5) if? Symbol error occurs due to the channel noise.

여기서, jk는 k번째 에러의 위치이고, ejk는 k번째 에러의 크기이다.Where jk is the position of the kth error and ejk is the magnitude of the kth error.

그리고, 상기 수학식 4에서 C(x)는 G(x)의 멀티플임을 이용하여 에러 패턴에 대한 정보를 포함하고 있는 신드롬 다항식 S(x)를 다음의 수학식 6과 같이 정의할 수 있다.In Equation (4), C (x) can be defined as a syndrome polynomial S (x) including information on an error pattern using the multiple of G (x) as Equation (6).

이때, C(x)가 G(x)의 멀티플이므로, G(x)의 근은 모두 C(x) = 0을 만족시키게 되어, Sj= R(αj)= C(αj) + E(αj)= E(αj) 가 된다.At this time, since the C (x) is the multiple of G (x), it is thereby root of G (x) are both satisfied with the C (x) = 0, S j = R (α j) = C (α j) + E (? j ) = E (? j ).

따라서, 신드롬 다항식 S(x)는 R(x)에 무관하며, 에러 패턴에 의존(Dependent)함을 알 수 있다.Therefore, it can be seen that the syndrome polynomial S (x) is independent of R (x) and depends on the error pattern (Dependent).

그리고, GA HDTV 규격에서 G(x)의 근은 α0, α1, ... , α18, α19이므로 S(x)의 각 계수들은 α0∼ α19을 수신된 데이터 R(x)에 대입시켜 다음의 수학식 7과 같이 구할 수 있다.Then, the root of G (x) in the GA HDTV standard is α 0, α 1, ..., α 18, α 19 , so the coefficients of S (x) are the received data to α 0 ~ α 19 R (x ) And can be obtained by the following equation (7).

상기 수학식 7에서 신드롬의 계수들 Sj는 다음의 수학식 8과 같이 표현 가능하다.In Equation (7), the coefficients S j of the syndrome can be expressed by the following Equation (8).

상기 수학식 8에서와 같이 각 신드롬의 계수들은 갈로아 필드 가산(Addition)과 곱셈(Multiplication)의 반복에 의하여 계산할 수 있다.As shown in Equation (8), the coefficients of each syndrome can be calculated by repeating Galois field addition and multiplication.

따라서, 신드롬 발생기(101)는 도 3과 같이 구현할 수 있으며, N(즉, 20개)개의 신드롬 블럭으로 이루어진다.Accordingly, the syndrome generator 101 can be implemented as shown in FIG. 3, and is composed of N (i.e., twenty) syndrome blocks.

그중 두 번째 신드롬 블럭을 일실시예로 보면, 직렬로 입력되는 데이터 심볼과 피드백되는 누적 값을 더하는 가산기, 블럭 에지 신호에 따라 상기 가산기의 출력 또는 입력되는 데이터 심볼을 선택 출력하는 제 1 멀티플렉서, 상기 제 1 멀티플렉서의 출력을 일시 저장하는 제 1 레지스터, 상기 제 1 레지스터의 출력과 해당 차수의 α 지수값 즉, α1(1 ≤ i ≤ 2t)을 곱하여 상기 가산기로 피드백시키는 상수 갈로아 필드 곱셈기, 상기 블럭 에지 신호에 따라 최종 출력단(S0)에서 피드백되는 신드롬 계수 또는 상기 제 1 레지스터의 출력을 선택 출력하는 제 2 멀티플렉서, 및 상기 제 2 멀티플렉서의 출력을 1 블럭의 데이터가 모두 입력될 때까지 저장하는 제 2 레지스터로 구성된다.A first multiplexer for selectively outputting an output of the adder or an input data symbol according to a block edge signal, a second multiplexer for selectively outputting the data symbol, A constant Galois field multiplier for multiplying the output of the first register by an a-exponent value of a corresponding order, that is, α 1 (1 ≦ i ≦ 2t) and feeding back the result to the adder, a first register for temporarily storing the output of the first multiplexer, A second multiplexer for selectively outputting a syndrome coefficient fed back from a final output stage (S 0 ) or an output of the first register according to the block edge signal, and a second multiplexer for outputting the output of the second multiplexer And a second register for storing the data.

여기서, 첫 번째 신드롬 블럭, 세 번째 신드롬 블럭 내지 N 번째 신드롬 블럭도 상기된 두 번째 신드롬 블럭의 구성과 동일하다.Here, the first syndrome block, the third syndrome block, and the Nth syndrome block are the same as those of the second syndrome block.

이와같이 구성된 도 3은 데이터 입력 심볼들이 최상위 차수의 계수부터 즉, (N,K,t) R-S 코드라고 가정하면, XN-1차 항의 계수부터 차례로 신드롬 발생기(101)의 각 신드롬 블럭의 가산기로 동시에 입력된다. 여기서, N은 한 코드 블록의 심볼 수이고, t는 정정 가능한 에러의 수, 2t는 부가되는 패리티 심볼, K는 N-2t로서, 실제 보낼려는 정보인 메세지 심볼의 수이다. 그러므로, N = K + 2t개의 심볼로 이루어진다.3, assuming that the data input symbols are the coefficients of the most significant order, i.e., (N, K, t) RS codes, the coefficients of the X N-1 terms are sequentially supplied to the adders of the respective syndrome blocks of the syndrome generator 101 Are input simultaneously. Here, N is the number of symbols of one code block, t is the number of correctable errors, 2t is the parity symbol to be added, and K is N-2t, which is the number of message symbols actually to be sent. Therefore, N = K + 2t symbols.

상기 가산기는 입력 심볼과 상수 갈로아 필드 곱셈기의 출력을 더하여 제 1 멀티플렉서로 출력한다. 상기 제 1 멀티플렉서는 블럭 에지 신호에 따라 즉, 하나의 블럭 코드가 입력될 때 첫 번째 심볼 입력 사이클에서는 누적된 데이터가 없으므로 입력되는 데이터 심볼을 선택하고, 나머지 구간에서는 상기 가산기의 가산 결과를 선택하여 제 1 레지스터로 출력한다. 이때, 상수 갈로아 필드 곱셈기는 상기 제 1 레지스터의 출력에 해당 차수의 α지수값 예컨대, S1블럭이라면 α1을 곱하여 상기 가산기로 피드백시킨다. 즉, 상기 제 1 레지스터의 출력은 S1를 계산하는 셀만 상기 가산기로 피드백되고 나머지 셀은 상수 갈로아 필드 곱셈기의 입력으로 사용된다.The adder adds the input symbol and the output of the constant Galois field multiplier to output to the first multiplexer. The first multiplexer selects an input data symbol because there is no accumulated data in a first symbol input cycle when a block code is input according to a block edge signal and selects an addition result of the adder in a remaining interval And outputs it to the first register. At this time, the constant Galois field multiplier multiplies the output of the first register by? 1 if the value of? Of the corresponding order, for example, S 1 block, is fed back to the adder. That is, the output of the first register is fed back to the adder only for the cell calculating S 1 , and the remaining cells are used as inputs to the constant Galois field multiplier.

한편, 상기 제 1 레지스터의 출력은 제 2 멀티플렉서로 입력되는데, 상기 제 2 멀티플렉서는 상기 블럭 에지 신호에 따라 즉, 하나의 블럭 코드가 입력될 때 첫 번째 심볼 입력 사이클에서는 피드백되는 최종 출력을 선택하고, 나머지 구간에서는 상기 제 1 레지스터의 출력을 선택하여 제 2 레지스터로 출력한다. 상기 제 2 레지스터는 1 블럭의 데이터 입력이 끝나면 구해진 신드롬을 출력한다.Meanwhile, the output of the first register is input to the second multiplexer. The second multiplexer selects a final output to be fed back in the first symbol input cycle according to the block edge signal, that is, when one block code is input And selects the output of the first register and outputs it to the second register in the remaining period. The second register outputs a syndrome obtained when data input of one block is completed.

즉, 시리얼로 한 블럭의 데이터 입력이 끝나면 동시에 N개의 신드롬 블럭으로부터 N개의 신드롬(S0∼ S19)이 병렬로 출력된다.That is, when data input of one block is completed by serial, N syndromes (S 0 to S 19 ) are output in parallel from N syndrome blocks at the same time.

만일, 두 번째 신드롬 블럭이 2t 사이클동안 루프를 돌면, 신드롬 S1은 하기의 수학식 9와 같이 구해진다.If, second syndrome block is just around the loop for a cycle 2t, syndrome S 1 is obtained as shown in Equation 9 below.

이와같이 신드롬 발생기(101)는 보통 곱셈기보다 크기가 훨씬 작은 상수 곱셈기를 사용함으로써, 게이트 수를 종래에 비해 약 1/10 정도 줄일 수 있으므로 VLSI로 집적화시 디자인이 용이하고 칩 사이즈를 줄일 수 있으며, 더불어 비용도 절감할 수 있다.Since the syndrome generator 101 uses a constant multiplier that is much smaller in size than a normal multiplier, the number of gates can be reduced by about one tenth compared to the conventional one. Therefore, when integrated into a VLSI, the design is easy and the chip size can be reduced. Cost can also be reduced.

그리고, 상기 신드롬 발생기(101)로부터 병렬로 출력되는 신드롬(S0∼ S19)을 입력받는 상기 유클리디언 디바이더(102)는 에러 평가 다항식 Ω(x)의 계수를 구하고, 유클리디언 곱셈기(103)는 에러 위치 다항식 Λ(x)의 계수를 구한다.The Euclidean divider 102 receiving the syndromes S 0 to S 19 output in parallel from the syndrome generator 101 obtains the coefficients of the error evaluation polynomial Ω (x) and outputs the coefficients of the Euclidean multiplier 103 obtains the coefficient of the error locator polynomial Λ (x).

상기 유클리디언 디바이더(102)는 도 4에서와 같이 각각의 셀은 신드롬 다항식 S(x)의 계수가 낮은 차수부터 각각의 멀티플렉서에 연결되어, 로드 인에이블 신호가 하이이면 S(x)의 계수가 상기 멀티플렉서로 입력되고, 로우이면 각 셀의 전단의 셀 출력이 상기 멀티플렉서로 입력되도록 구성되어 있다. 이때, 상기 로드 인에이블 신호는 에지 검출 신호를 이용하여 만드는데 1 클럭 사이클 동안에만 하이가 되어야 한다. 따라서, 상기 각 셀의 멀티플레서의 출력단에 연결된 각 셀의 레지스터에는 S(x)가 한 클럭 사이클 동안에 병렬로 로딩된다. 상기된 도 4는 에러 평가 다항식 Ω(x)의 차수가 t보다 작아질 때까지 수행된다. 그 이외는 종래의 기술과 동일하므로 상세한 동작 설명을 생략한다.As shown in FIG. 4, each of the cells of the Euclidean divider 102 is connected to each of the multiplexers from a low-order coefficient of the syndrome polynomial S (x), and when the load enable signal is high, Is inputted to the multiplexer, and when the cell is low, the cell output of the previous stage of each cell is inputted to the multiplexer. At this time, the load enable signal is made high by using the edge detection signal only for one clock cycle. Therefore, S (x) is loaded in parallel for one clock cycle in the register of each cell connected to the output terminal of the multiplexer of each cell. The above-described FIG. 4 is performed until the degree of the error evaluation polynomial? (X) becomes smaller than t. Other than the above, the same as the conventional technique, and therefore, detailed description of the operation will be omitted.

이와같이 상기된 유클리디언 디바이더는 S(x)를 각 셀의 레지스터에 한번에 병렬로 로딩하므로 총 2t 클럭 사이클만 필요하게 되어 유클리디언 디바이딩 연산 시간을 종래의 기술보다 약 1/2로 단축시킬 수 있다.Since the above-described Euclidean divider loads S (x) into the registers of each cell at a time in parallel, only a total of 2t clock cycles are required, thereby shortening the Euclidean divide operation time by about half the conventional technique .

그리고, 상기 에러 위치 발생부(105)는 도 5에 도시된 바와같이 상기 유클리디언 곱셈기(103)에서 출력되는 에러 위치 다항식 Λ(x)의 계수들을 입력받아 Λ(x)|x=α i= 0을 만족하는 αi를 찾아내고 Λ(x)를 1차 미분한 Λ'(x)|x=α i의 값을 계산하는 동작을 한다.The error position generator 105 receives the coefficients of the error locator polynomial Λ (x) output from the Euclidean multiplier 103 as shown in FIG. Finding α i satisfying x = α i = 0 and Λ '(x) | and calculates the value of x = alpha i .

즉, 도 5는 t+1개의 셀(51-0∼51-t)과 각 셀(51-0∼51-t)의 레지스터의 출력을 배타적 오아링하여 Λ(αi)의 전체 합(Total Sum)을 구하고 각 셀의 레지스터의 출력 중 오드 텀(Odd Term)의 계수들만을 추출하여 에러 위치 다항식 Λ(x)의 1차 미분 함수 Λ'(x)를 출력하는 배타적 오아 게이트(56)와 상기 배타적 오아 게이트(56)의 출력이 0인지를 판별하여 에러 위치를 추정하는 제로 검출부(57)로 구성된다.That is, Figure 5 is t + 1 of the output of the register cell (51-0~51-t) and each cell (51-0~51-t) to the sum total of the rings exclusive Iowa Λ (α i) (Total (X) of the error locator polynomial Λ (x) by extracting only the coefficients of the odd term of the outputs of the registers of the respective cells and obtaining an output of the exclusive OR gate 56 And a zero detection unit 57 for determining whether the output of the exclusive OR gate 56 is 0 and estimating an error position.

상기 t+1개의 셀중 t번째 셀을 예로들어 그 구성을 설명하면, 선택 신호(MUX_SEL)에 따라 초기에는 병렬로 입력되는 t번째 값 Λt을 선택 출력하고 이후에는 누적된 중간값을 선택 출력하는 제 1 멀티플렉서(52), 상기 선택 신호(MUX_SEL)에 따라 초기에는 α(255-N+1)t을 선택 출력하고 이후에는 αt값을 선택 출력하는 제 2 멀티플렉서(53), 상기 제 1, 제 2 멀티플렉서(52,53)의 출력을 곱하는 곱셈기(54), 및 상기 곱셈기(54)의 출력을 일시 저장하여 배타적 오아 게이트(56)로 출력함과 동시에 상기 제 1 멀티플렉서(52)로 피드백시키는 레지스터(55)로 구성된 루프 구조이다. 나머지 셀의 구성도 상기 t번째 셀의 구성과 동일하다. 이때, 상기 곱셈기(54)는 상수 갈로아 필드 곱셈기를 사용하면 VLSI로 집적시 집적도를 향상시킬 수 있다.The t-th cell of the (t + 1) th cell is taken as an example. In accordance with the selection signal (MUX_SEL), the t-th value Λ t input in parallel is selectively output. A first multiplexer 52 selectively outputs a (255-N + 1) t at the beginning according to the selection signal MUX_SEL and selectively outputs a value of α t thereafter, A multiplier 54 for multiplying the output of the second multiplexer 52 and 53 and a multiplier 54 for temporarily storing the output of the multiplier 54 and outputting the same to the exclusive OR gate 56 and feeding back the result to the first multiplexer 52 And a register 55 as shown in Fig. The configuration of the remaining cells is the same as that of the t-th cell. At this time, the multiplier 54 can improve the integration degree when integrated into a VLSI by using a constant Galois field multiplier.

이와같이 구성된 상기 에러 위치 발생부(105)는 에러 위치 다항식 Λ(x)의 계수들이 병렬로 입력되면 초기 클럭 사이클에서 선택 신호(MUX_SEL)는 로우가 되고, 이 선택 신호(MUX_SEL)에 의해 각각의 셀의 제 1 멀티플렉서에서 Λtt-1,...,Λ1가 각각 선택되고, 제 2 멀티플레서에서 상수 α(255-N+1)t가 선택되어 상수 갈로아 필드 곱셈기에서 서로 곱해진 후 각각의 레지스터에 저장된다. 다음 클럭 사이클부터 선택 신호(MUX_SEL)는 하이가 되며, 각 셀의 레지스터의 출력이 배타적 오아 게이트(56)로 출력됨과 동시에 제 1 멀티플렉서로 피드백된다. 따라서, 선택 신호(MUX_SEL)에 의해 각각의 셀의 제 1 멀티플렉서에서는 각 레지스터에서 피드백되는 값이 선택되고, 제 2 멀티플레서에서는 αt가 선택되어 상기 상수 갈로아 필드 곱셈기에서 서로 곱해진 후 다시 각각의 레지스터에 저장된다.If the error location generator 105 receives the coefficients of the error locator polynomial Λ (x) in parallel, the selection signal MUX_SEL becomes low in the initial clock cycle. By this selection signal MUX_SEL, in the first multiplexer t Λ, Λ t-1, ..., Λ 1 is selected and the second multiplexers constant α (255-N + 1) t is selected from each other from the constant multiplying Galois field multiplier, respectively And stored in each register. From the next clock cycle, the selection signal MUX_SEL goes high, and the output of the register of each cell is output to the exclusive OR gate 56 and fed back to the first multiplexer. Therefore, a value fed back from each register is selected by the selection signal MUX_SEL in the first multiplexer of each cell, and in the second multiplexer, the selection signal? T is selected and multiplied by the constant Galois field multiplier, Lt; / RTI >

이와같은 과정을 N 사이클동안 수행한다. 여기서, N은 블록내에 있는 데이터 심볼 수이다.This process is performed for N cycles. Where N is the number of data symbols in the block.

즉, 상기와 같은 방식으로 Λ(x)에 α-N+1부터 α0까지 지수를 증가하면서 순차적으로 대입시켜 계산된 값을 매 클럭마다 구할 수 있다. 그리고, 매 클럭마다 출력되는 각 셀(51-0∼51-t)의 레지스터의 출력을 배타적 오아 게이트(56)에서 배타적 오아링하여 제로 검출부(57)로 출력하고, 제로 검출부(57)는 그 값이 제로인지 아닌지를 판별한다. 이때, 배타적 오아 게이트(56)의 출력 즉, 에러 위치 다항식 Λ(x)의 근이 0이면 바로 그 위치가 에러가 발생한 곳이다. 만일, αp에서 에러 위치 다항식 Λ(x) = 0이 되면 p번째가 에러 위치가 된다.That is, in the above-described manner, it is possible to obtain a value calculated every time the index is sequentially incremented from? -N + 1 to? 0 in? (X). The output of the register of each cell 51-0 to 51-t output every clock is exclusive-ORed by the exclusive OR gate 56 and is output to the zero detecting section 57. The zero detecting section 57 outputs Determines whether the value is zero or not. At this time, if the output of the exclusive OR gate 56, that is, the root of the error locator polynomial Λ (x) is 0, the position is the place where the error occurred. If the error locator polynomial Λ (x) = 0 at α p , the p-th error position is obtained.

한편, Λ(x)를 미분한 Λ'(x)의 값은 각 레지스터의 출력중 오드 텀(Odd Term) 즉, 1차, 3차, 5차,...의 계수들만을 배타적 오아 게이트(56)에서 추출하여 구할 수 있다. 예를들어, Λ(x) = α5X32X2+αX 7이라 할 때, 이를 미분하면 Λ'(x) = 3·α5X2+ 2·α2X1+α 가 되는데, Λ(x)의 이븐 텀(Even Term)은 미분을 하게되면 짝수가 곱해지므로 갈로아 필드 덧셈의 특성상 없어지게 되어 Λ'(x) = α5X2+ α 가 된다.On the other hand, the value of Λ '(x) that differentiates Λ (x) differs only from the odd term of the output of each register, ie, the coefficients of the first, third, fifth, 56). For example, if Λ (x) = α5X3+ alpha2X2+ αX + alpha7If you say that, Λ '(x) = 3 · α5X2+ 2.alpha.2XOne+ (x), and the even term of Λ (x) is multiplied by an even number when it is differentiated, so that it is lost due to the characteristic of the Galois field addition, so that Λ '(x) = α5X2+ < / RTI >

이때, 상기 배타적 오아 게이트(56)에서 오드 텀의 계수들만을 추출하게 되면 Λ'(αi) 값들이 계산되어 출력되는 것이 아니라 αiΛ'(αi) 가 출력되게 된다. 그렇지만 에러 다항식 발생부(106)에서 에러 크기를 계산할 때 αiΛ'(αi) 값이 필요하므로 그대로 이 값을 출력한다.At this time, if only the coefficients of the odd term are extracted from the exclusive OR gate 56, the values of Λ '(α i ) are not calculated and output but α i Λ' (α i ) is outputted. However, when the error magnitude is calculated by the error polynomial generation unit 106, since the value of α i Λ '(α i ) is required, this value is output as it is.

도 6은 상기 에러 평가 발생부(104)의 상세 블록도로서, 에러 위치 다항식 Λ(x)의 계수대신 유클리디언 디바이더(102)에서 출력되는 에러 평가 다항식 Ω(x)의 계수들이 병렬로 입력되고, 제로 검출부가 필요없는 것을 빼고는 상기된 도 5의 에러 위치 발생부와 구성이 동일하며, 동일한 방식으로 동작한다. 즉, 상기 에러 평가 발생부(104)는 상기 유클리디언 디바이더(102)에서 출력되는 에러 평가 다항식 Ω(x)의 계수들을 병렬로 입력받아 Ω(αi), αi255-N+1255-N+2,...,α-10를 구한다.6 is a detailed block diagram of the error evaluation generation unit 104. It is assumed that coefficients of the error evaluation polynomial Ω (x) output from the Euclidian divider 102 are input in parallel instead of coefficients of the error locator polynomial Λ (x) Except that the zero detecting section is not necessary, and operates in the same manner as the error position generating section of FIG. 5 described above. That is, the error evaluation generation unit 104 receives the coefficients of the error evaluation polynomial Ω (x) output from the Euclidean divider 102 in parallel and outputs Ω (α i ), α i = α 255-N + 1 ,? 255-N + 2 , ...,? -1 ,? 0 .

도 7은 에러 다항식 E(x)를 계산하는 에러 다항식 발생부(106)의 상세 블록도로서, 포니(Forney) 알고리즘에 의하여 상기 에러 위치 발생부(105)에서 구한 에러의 위치에 해당하는 에러 보정값을 구한다.7 is a detailed block diagram of an error polynomial generating unit 106 for calculating an error polynomial E (x). The error polynomial generating unit 106 performs error correction corresponding to the error position obtained by the error position generating unit 105 by a Forney algorithm. Value.

즉, 도 7은 상기 에러 위치 발생부(105)의 배타적 오아 게이트(56)에서 출력되는 Λ'(αi)·αi값을 반전시키는 인버스 롬(71), 상기 인버스 롬(71)의 출력과 상기 에러 평가 발생부(104)에서 출력되는 Ω(αi)를 곱하는 갈로아 필드 곱셈기(72), 및 상기 에러 위치 발생부(105)에서 계산된 에러 위치값에 따라 제로 또는 상기 곱셈기(72)의 곱셈 결과를 선택하여 에러 다항식 E(x)로 출력하는 멀티플렉서(73)로 구성된다.7 shows an inverse ROM 71 for inverting the value of Λ '(α i ) · α i output from the exclusive OR gate 56 of the error position generator 105, an output of the inverse ROM 71 And a Galois field multiplier 72 for multiplying the output of the Galois field multiplier 72 by? (? I ) output from the error evaluation generator 104 and a zero or the multiplier 72 ), And outputs the result as an error polynomial E (x).

이와같이 구성된 도 7은 상기 에러 평가 발생부(104)에서 계산된 Ω(αi) 그리고, 상기 에러 위치 발생부(105)에서 계산된 에러 위치 신호와 Λ'(αi)·αi값에 의하여 다음의 수학식 10과 같은 포니 알고리즘으로 에러의 크기를 계산한다.7, which is constructed as described above, can be obtained by calculating Ω (α i ) calculated by the error evaluation generation unit 104 and the error position signal calculated by the error position generation unit 105 and the value Λ '(α i ) · α i The size of the error is calculated by the following Pony algorithm as shown in Equation (10).

여기서, h는 옵셋이며, GA HDTV 규격은 -1이다.Where h is the offset and GA HDTV standard is -1.

즉, 상기 에러 위치 발생부(105)의 배타적 오아 게이트(56)에서 출력되는 Λ'(αi)·αi값이 인버스 롬(71)를 거치면 가 된다. 그리고, 갈로아 필드 곱셈기(72)에서 상기 인버스 롬(71)의 출력( )과 에러 평가 발생부(104)에서 계산된 Ω(αi) 값을 곱하면 에러 다항식 E(x)의 계수 즉, 에러 값이 계산된다. 이때, 멀티플렉서(73)는 상기 에러 위치 발생부(105)에서 계산된 에러 위치 신호에 따라 즉, 에러가 발생한 위치에서는 상기 곱셈기(72)에서 구한 에러 다항식 E(x)의 계수를 선택하고 에러가 발생하지 않은 위치에서는 제로 신호를 선택하여 에러 정정부(108)로 출력한다.That is, when the value of Λ '(α i ) · α i output from the exclusive OR gate 56 of the error location generator 105 passes through the inverse ROM 71 . The Galois field multiplier 72 multiplies the output of the inverse ROM 71 ) Is multiplied by the value of? (? I ) calculated by the error evaluation generating unit 104, the coefficient of the error polynomial E (x), that is, the error value is calculated. At this time, the multiplexer 73 selects the coefficient of the error polynomial E (x) obtained by the multiplier 72 at the position where the error has occurred according to the error position signal calculated by the error position generator 105, And outputs the selected zero signal to the error correction unit 108. [

상기 에러 정정부(108)는 배타적 오아 게이트로 되어 있어 상기 에러 다항식 발생부(106)에서 출력되는 에러 값과 상기 FIFO 램(107)에 저장된 원래의 데이터를 배타적 오아링함에 의해 에러를 정정하여 에러 확인 및 데이터 출력부(109)로 출력한다.The error correction unit 108 is an exclusive OR gate and exclusively processes the error value output from the error polynomial generation unit 106 and the original data stored in the FIFO RAM 107 to correct an error, And outputs it to the confirmation and data output unit 109.

도 8은 상기 에러 확인 및 데이터 출력부(109)의 상세 블록도로서, 상기 FIFO 램(107)으로부터 출력되는 원래의 데이터를 저장하는 제 1 FIFO(81), 상기 에러 정정부(108)에서 출력되는 정정 데이터를 저장하는 제 2 FIFO(82), 상기 에러 정정부(108)에서 출력되는 정정 데이터를 이용하여 신드롬을 계산하는 신드롬 계산부(83), 상기 신드롬 계산부(83)에서 계산된 신드롬이 0인지를 판별하는 제로 검출부(84), 및 상기 제로 검출부(84)의 판별 결과에 따라 상기 제 1 FIFO(81)에 저장된 원래의 데이터 또는 제 2 FIFO(82)에 저장된 정정 데이터를 선택하여 최종 데이터로 출력하는 멀티플렉서(85)로 구성된다.8 is a detailed block diagram of the error checking and data output unit 109. The first FIFO 81 stores original data output from the FIFO RAM 107, A syndrome calculation unit 83 for calculating a syndrome using the correction data output from the error correction unit 108, a syndrome calculation unit 83 for calculating a syndrome calculated by the syndrome calculation unit 83, And a correcting data stored in the first FIFO 81 or the second FIFO 82 according to the discrimination result of the zero detecting unit 84 And a multiplexer 85 for outputting the data as final data.

여기서, 상기 신드롬 계산부(83)는 상기된 도 3의 신드롬 계산기(101)와 동일한 구조를 갖는다.Here, the syndrome calculation unit 83 has the same structure as the syndrome calculation unit 101 of FIG. 3 described above.

이와같이 구성된 도 8의 에러 확인 및 데이터 출력부(109)는 상기 에러 정정부(108)에서 정정된 데이터가 올바르게 정정되었는지 아닌지를 확인하기 위하여 정정된 데이터에 대하여 신드롬을 계산하여 S(x)=0인지 아닌지를 판별한다.The error checking and data output unit 109 of FIG. 8 configured as described above calculates syndromes on the corrected data to check whether the corrected data is correctly corrected or not by the error correction unit 108, and outputs S (x) = 0 Or not.

즉, 제 1 FIFO(81)에는 FIFO 램(107)에서 출력되는 원래의 데이터를 저장하고 제 2 FIFO(82)에는 에러 정정부(108)에서 출력되는 정정 데이터를 저장한다. 그리고, 신드롬 계산부(83)는 정정 데이터를 이용하여 도 3과 같은 방식으로 신드롬 S(x)를 계산한다.That is, the first FIFO 81 stores the original data output from the FIFO RAM 107 and the second FIFO 82 stores the correction data output from the error correction unit 108. Then, the syndrome calculation section 83 calculates the syndrome S (x) in the same manner as in Fig. 3 using the correction data.

제로 검출부(84)는 상기 신드롬 계산부(83)에서 계산된 신드롬 S(x)가 0인지 아닌지를 판별하고 그 결과를 멀티플렉서(85)의 선택 신호로 출력한다. 즉, 상기 정정된 데이터의 신드롬 S(x)=0이면 데이터가 올바르게 정정 되었음을 의미하므로 상기 멀티플렉서(85)는 제 2 FIFO(82)에 저장된 정정 데이터를 최종 데이터로 선택 출력하고, 정정된 데이터의 신드롬 S(x)≠0이면 전송 채널상에서 t개 이상의 에러가 발생하였음을 나타내므로 상기 멀티플렉서(85)는 제 1 FIFO(81)에 저장된 즉, 정정되지 않은 원래의 데이터를 최종 데이터로 선택 출력한다.The zero detection unit 84 determines whether the syndrome S (x) calculated by the syndrome calculation unit 83 is 0 or not and outputs the result as a selection signal of the multiplexer 85. That is, if the syndrome S (x) = 0 of the corrected data means that the data is corrected correctly, the multiplexer 85 selectively outputs the correction data stored in the second FIFO 82 as final data, If the syndrome S (x)? 0 indicates that more than t errors have occurred on the transmission channel, the multiplexer 85 selects and outputs the uncorrected original data stored in the first FIFO 81 as final data .

따라서, 채널 상에서 t개 이상의 에러가 발생하였을 경우 R-S 디코더의 오동작에 의해 생기는 오류를 방지할 수 있다.Therefore, when more than t errors occur on the channel, it is possible to prevent an error caused by a malfunction of the R-S decoder.

한편, 본 발명에 사용된 R-S 디코더의 구조는 모든 (N,K) R-S 코드에 적용할 수 있다.Meanwhile, the structure of the R-S decoder used in the present invention can be applied to all (N, K) R-S codes.

이상에서와 같이 본 발명에 따른 디지털 티브이의 에러 정정 장치에 의하면, 정정 데이터의 신드롬 다항식을 계산하여 정정 데이터의 신드롬 다항식이 0이면 데이터가 올바르게 정정 되었음을 의미하므로 정정 데이터를 최종 데이터로 출력하고, 정정 데이터의 신드롬 다항식이 0이 아니면 전송 채널 상에서 t개 이상의 에러가 발생하였음을 의미하므로 정정되지 않은 원래의 데이터를 최종 데이터로 출력함으로써, 채널 상에서 t개 이상의 에러가 발생하였을 경우 R-S 디코더의 오동작에 의해 생기는 오류를 방지할 수 있다.As described above, according to the error correcting apparatus of the digital TV according to the present invention, since the syndrome polynomial of the correction data is calculated and the syndrome polynomial of the correction data is 0, it means that the data is corrected correctly, If the syndrome polynomial of the data is not 0, it means that there are more than t errors on the transmission channel. Therefore, if more than t errors are generated on the channel by outputting uncorrected original data as final data, This can prevent errors.

또한, 신드롬 발생기, 에러 위치 발생부, 에러 평가 발생부, 에러 다항식 발생부에서 일반적인 보통 곱셈기 대신 상수 갈로아 필드 곱셈기를 사용함과 더불어 에러 위치 발생부와 에러 평가 발생부를 유사한 셀 기초(Based) 구조를 갖도록 설계함으로써, VLSI로 집적시 디자인이 용이하고, 집적도를 향상시켜 칩 사이즈를 줄이며 비용을 감소시킬 수 있다.In addition, a syndrome generator, an error location generator, an error evaluation generator, and an error polynomial generator use a constant Galois field multiplier instead of a general ordinary multiplier, and a similar cell basis structure to the error location generator and the error evaluation generator It is possible to easily design the integrated circuit in the VLSI, improve the integration degree, reduce the chip size, and reduce the cost.

그리고, 상기 신드롬 발생기는 신드롬 다항식을 병렬로 출력하고, 유클리디언 디바이더는 이를 병렬로 로딩함으로써, 디바이딩 연산 수행 시간을 단축시키고 이로인해 FIFO 램의 크기를 줄일 수 있으며, 또한 파이프라인 구조를 단축하여 FIFO 램의 크기를 더욱 줄일 수 있다.The syndrome generator outputs the syndrome polynomials in parallel, and the Eclipse divider loads them in parallel, thereby shortening the execution time of the divide operation, thereby reducing the size of the FIFO RAM, and shortening the pipeline structure The size of the FIFO RAM can be further reduced.

Claims (14)

메시지 다항식 M(x)에 2t(t는 정정 가능한 에러의 수)개의 패리티 비트가 추가되어 만들어진 R-S 코드 워드 다항식 C(x)가 전송되면 이를 수신하여 에러를 정정하는 디지털 TV의 에러 정정 장치에 있어서,An error correction apparatus for a digital TV that corrects an error by receiving an RS code word polynomial C (x) generated by adding 2t (t is the number of correctable errors) parity bits to a message polynomial M (x) , 수신된 다항식 R(x)로부터 신드롬 다항식 S(x)를 발생하여 병렬로 출력하는 신드롬 발생기와;A syndrome generator for generating a syndrome polynomial S (x) from the received polynomial R (x) and outputting it in parallel; 상기 신드롬 발생기에서 발생된 신드롬 다항식 S(x)를 병렬로 로딩하여 에러 평가 다항식 Ω(x)의 계수를 구하는 유클리디언 디바이더와;An Euclidean divider that loads the syndrome polynomial S (x) generated in the syndrome generator in parallel to obtain a coefficient of the error evaluation polynomial Ω (x); 상기 신드롬 발생기에서 발생된 신드롬을 입력받아 에러 위치 다항식 Λ(x)의 계수를 구하는 유클리디언 곱셈기와;An Euclidean multiplier receiving a syndrome generated by the syndrome generator and obtaining a coefficient of an error locator polynomial Λ (x); 상기 유클리디언 디바이더에서 발생된 에러 평가 다항식 Ω(x)의 계수의 근을 구하여 에러 크기를 추정하는 에러 평가 발생부와;An error evaluation generator for calculating a root of a coefficient of the error evaluation polynomial Ω (x) generated in the Euclidean divider to estimate an error magnitude; 상기 유클리디언 곱셈기에서 발생된 에러 위치 다항식 Λ(x)에 α-N+1부터 α0까지 지수를 증가하면서 순차적으로 대입시킴에 의해 에러 위치 다항식 Λ(x)의 근을 구하여 Λ(αi)=0을 만족하는 x=αi의 위치를 발생하고, 에러 위치 다항식 Λ(x)의 1차 미분 함수 Λ'(x)를 출력하는 에러 위치 발생부와;Obtaining the roots of the error locator polynomial by Euclidean while the error locator polynomial in the multipliers Λ (x) increase in the indices from -N + α 1 to α 0 Sikkim assigned sequentially Λ (x) Λ (α i ) = 0 generates a position of x = α i satisfying and the error locator polynomial Λ (x) 1-order differential function Λ '(error position generating and outputting a x) of the unit; 상기 에러 평가 발생부의 에러 평가 다항식 Ω(x)의 근과 에러 위치 발생부에서 계산된 에러 위치 그리고, 에러 위치 다항식 Λ(x)의 1차 미분 함수 Λ'(x)를 이용하여 에러 다항식 E(x)를 구하는 에러 다항식 발생부와;(X) of the error evaluation polynomial Ω (x) of the error evaluation generating unit and the error position calculated by the error position generating unit and the first order differential function Λ '(x) of the error locator polynomial Λ (x) x), < / RTI > 수신된 다항식 R(x)을 저장하는 메모리와;A memory for storing the received polynomial R (x); 상기 에러 다항식 발생부의 에러 다항식 E(x)와 상기 메모리에 저장된 원래 데이터를 논리 조합하여 에러를 정정하는 에러 정정부와;An error corrector for correcting an error by logically combining the error polynomial E (x) of the error polynomial generator and original data stored in the memory; 상기 에러 정정부에서 정정된 데이터의 신드롬을 계산하여 정정 데이터가 올바르게 정정되었는지를 판별하고 판별 결과에 따라 상기 메모리에 저장된 원 데이터 또는 에러 정정부에서 정정된 데이터를 최종 데이터로 선택 출력하는 에러 확인 및 데이터 출력부를 포함하여 구성됨을 특징으로 하는 디지털 TV의 에러 정정 장치.A syndrome calculation unit for calculating a syndrome of the corrected data by the error correction unit, discriminating whether the correction data has been corrected correctly, checking whether the original data stored in the memory or the corrected data by the error correction unit is selected and output as final data, And a data output unit for outputting the error correction code. 제 1 항에 있어서, 상기 신드롬 발생기는2. The apparatus of claim 1, wherein the syndrome generator 를 만족하도록 설계됨을 특징으로 하는 디지털 TV의 에러 정정 장치.The error correction unit is designed to satisfy the following equation. 여기서, N은 한 코드 블록의 데이터 심볼 수, Sj는 j번째 신드롬 계수임.Here, N is the number of data symbols of one code block, and S j is the jth syndrome coefficient. 제 1 항에 있어서, 상기 신드롬 발생기는2. The apparatus of claim 1, wherein the syndrome generator 직렬로 입력되는 데이터 심볼과 피드백되는 누적 값을 더하는 가산기와,An adder for adding the data symbols input in series and the cumulative value fed back, 한 블럭 코드의 첫 번째 심볼 입력 사이클에서는 입력되는 데이터 심볼을 선택하고 나머지 구간에서는 상기 가산기의 가산 결과를 선택하여 출력하는 제 1 멀티플렉서와,A first multiplexer for selecting an input data symbol in a first symbol input cycle of one block code and selecting and outputting an addition result of the adder in a remaining interval, 상기 제 1 멀티플렉서의 출력을 일시 저장하는 제 1 레지스터와,A first register for temporarily storing the output of the first multiplexer, 상기 제 1 레지스터의 출력과 해당 차수의 α 지수값을 곱하여 상기 가산기로 피드백시키는 상수 갈로아 필드 곱셈기와,A constant Galois field multiplier for multiplying an output of the first register by an exponent of a corresponding order and feeding back the result to the adder; 한 블록 코드의 첫 번째 심볼 입력 사이클에서는 최종 출력단에서 피드백되는 신드롬 계수를 선택하고 나머지 구간에서는 상기 제 1 레지스터의 출력을 선택하여 출력하는 제 2 멀티플렉서와,A second multiplexer for selecting a syndrome coefficient to be fed back at a final output stage in a first symbol input cycle of one block code and selecting and outputting an output of the first register in a remaining interval, 상기 제 2 멀티플레서로부터 출력되는 신드롬 계수를 저장하는 제 2 레지스터로 구성된 신드롬 블록이 신드롬 다항식 S(x)의 차수만큼 구비됨을 특징으로 하는 디지털 TV의 에러 정정 장치.And a syndrome block composed of a second register for storing a syndrome coefficient output from the second multiplexer is provided in the order of the syndrome polynomial S (x). 제 3 항에 있어서, 상기 신드롬 발생기는4. The apparatus of claim 3, wherein the syndrome generator 데이터 입력 심볼들이 최상위 차수의 계수부터 시리얼로 각 신드롬 블럭의 가산기에 공통으로 입력되고, 한 블록의 데이터 입력이 끝나면 각 신드롬 블록의 제 2 레지스터를 통해 각각의 신드롬 계수가 동시에 출력됨을 특징으로 하는 디지털 TV의 에러 정정 장치.The data input symbols are input to the adder of each syndrome block in serial from the coefficient of the most significant order, and when the data input of one block is completed, the respective syndrome coefficients are output simultaneously through the second register of each syndrome block An error correction device for a TV. 제 1 항에 있어서, 상기 유클리디언 디바이더에서2. The method of claim 1, wherein in the Euclidian divider 각각의 셀은 신드롬 다항식 S(x)의 계수가 낮은 차수부터 각각의 멀티플렉서에 연결되어, 1 클럭 사이클 동안에만 하이가 되는 로드 인에이블 신호가 하이이면 S(x)의 계수가 상기 멀티플렉서로 입력되고, 로우이면 각 셀의 전단의 셀 출력이 상기 멀티플렉서로 입력되도록 구성되어 에러 평가 다항식 Ω(x)의 계수를 구함을 특징으로 하는 디지털 TV의 에러 정정 장치.Each cell is connected to a respective multiplexer from a coefficient of a syndrome polynomial S (x) having a low coefficient, and a coefficient of S (x) is input to the multiplexer if the load enable signal that is high only for one clock cycle is high And a cell output of a previous stage of each cell is input to the multiplexer if low, to obtain a coefficient of the error evaluation polynomial Ω (x). 제 1 항에 있어서, 상기 에러 위치 발생부는2. The apparatus of claim 1, wherein the error location generator 상기 유클리디언 곱셈기로부터 에러 위치 다항식 Λ(x)의 계수들이 병렬로 입력되면 초기 클럭 사이클에서는 Λtt-1,...,Λ1를 각각 선택하여 초기 α 지수값(α(255-N+1)i; 1 ≤ i ≤ 2t)과 서로 곱한 후 각 레지스터에 저장하고, 다음 클럭 사이클에서는 상기 각 레지스터에서 피드백되는 값을 각각 선택하여 해당 차수의 지수값(αi)과 각각 곱한 후 각 레지스터에 저장하는 과정을 N(N은 한 코드 블록의 데이터 심볼 수) 사이클 동안 수행하는 셀 블록과,If the Euclidean coefficient multiplier from the error location polynomial Λ (x) are input in parallel in the initial clock cycle Λ t, Λ t-1, ..., Λ 1 respectively select the initial index value α (α (255 -N + 1) i; 1 ≤ i ≤ 2t) and then multiplied by each other and stored in the respective registers, in the next clock cycle by each select a value that is fed back from each of the registers and multiplied by the respective index values (α i) of the order (N is a number of data symbols of one code block) cycle, 매 클럭마다 상기 셀 블록의 각 레지스터로부터 출력되는 값을 논리 조합하여 Λ(α1)의 전체 합을 구하는 배타적 오아 게이트와,An exclusive OR gate that logically combines the values output from the respective registers of the cell block every clock to obtain a total sum of? (? 1 ) 상기 배타적 오아 게이트에서 출력되는 Λ(α1)의 합이 0인지를 판별하는 제로 검출부로 구성됨을 특징으로 하는 디지털 TV의 에러 정정 장치.And a zero detection unit for determining whether a sum of? (? 1 ) output from the exclusive OR gate is 0 or not. 제 6 항에 있어서, 상기 에러 위치 발생부는7. The apparatus of claim 6, wherein the error location generator 각 셀 블록에서 상수 갈로아 필드 곱셈기를 사용하여 곱셈을 수행함을 특징으로 하는 디지털 TV의 에러 정정 장치.Wherein multiplication is performed using a constant Galois field multiplier in each cell block. 제 6 항에 있어서, 상기 에러 위치 발생부는7. The apparatus of claim 6, wherein the error location generator 상기 에러 위치 다항식 Λ(x)를 1차 미분한 Λ'(x)의 값은 각 레지스터의 출력중 오드 텀의 계수들만을 배타적 오아 게이트에서 추출하여 구함(αiΛ'(αi))을 특징으로 하는 디지털 TV의 에러 정정 장치.(X) obtained by first differentiating the error-locator polynomial Λ (x) is obtained by extracting only the odd-term coefficients of the output of each register from the exclusive OR gate (α i Λ '(α i )) Wherein the error correction unit comprises: 제 1 항에 있어서, 상기 에러 평가 발생부는The apparatus of claim 1, wherein the error evaluation generator 상기 유클리디언 디바이더로부터 에러 평가 다항식 Ω(x)의 계수들이 병렬로 입력되면 초기 클럭 사이클에서는 Ωtt-1,...,Ω1를 각각 선택하여 초기 α 지수값(α(255-N+1)i; 1 ≤ i ≤ 2t)과 서로 곱한 후 각 레지스터에 저장하고, 다음 클럭 사이클에서는 상기 각 레지스터에서 피드백되는 값을 각각 선택하여 해당 차수의 지수값(αi)과 각각 곱한 후 각 레지스터에 저장하는 과정을 N(N은 한 코드 블록의 데이터 심볼 수) 사이클 동안 수행하는 셀 블록과,When the oil cleaners coefficients of the error evaluation polynomial Ω (x) from Meridian divider are input in parallel in the initial clock cycle Ω t, Ω t-1, ..., select Ω 1 α respectively to the initial index value (α (255 -N + 1) i; 1 ≤ i ≤ 2t) and then multiplied by each other and stored in the respective registers, in the next clock cycle by each select a value that is fed back from each of the registers and multiplied by the respective index values (α i) of the order (N is a number of data symbols of one code block) cycle, 매 클럭마다 상기 셀 블록의 각 레지스터로부터 출력되는 값을 논리 조합하여 Ω(α1)의 전체 합을 구하는 배타적 오아 게이트로 구성됨을 특징으로 하는 디지털 TV의 에러 정정 장치.And an exclusive OR gate for logically combining the values output from the respective registers of the cell block every clock to obtain a total sum of? (? 1 ). 제 1 항에 있어서, 상기 에러 다항식 발생부는The apparatus of claim 1, wherein the error polynomial generator 상기 에러 평가 발생부에서 계산된 Ω(αi)와 상기 에러 위치 발생부에서 계산된 에러 위치 신호 그리고, 1차 미분함수 Λ'(αi)·αi를 포니 알고리즘에 적용하여 상기 에러 위치 발생부에서 구한 에러 위치에 해당하는 에러 값을 구함을 특징으로 하는 디지털 TV의 에러 정정 장치.By applying the Ω (α i) and the error position The error position signal calculated in the generator and, a primary differential function Λ '(α i) · α i for pony algorithm calculated by the error evaluation generating unit of the error position occurs And an error value corresponding to the error position obtained by the error correction unit. 제 1 항에 있어서, 상기 에러 다항식 발생부는The apparatus of claim 1, wherein the error polynomial generator 상기 에러 위치 발생부에서 출력되는 에러 위치 다항식 Λ(X)의 1차 미분함수 Λ'(αi)·αi값을 반전시키는 인버스 롬과,An inverse ROM for inverting a first-order differential function Λ '(α i ) · α i of the error locator polynomial Λ (X) output from the error position generator, 상기 인버스 롬의 출력( )과 상기 에러 평가 발생부의 출력 (Ω(αi))를 곱하는 상수 갈로아 필드 곱셈기와,The output of the inverse ROM ) And the output (? (? I ) of the error evaluation generation unit) 상기 에러 위치 발생부에서 계산된 에러 위치값에 따라 제로 또는 상기 곱셈기의 곱셈 결과를 선택하여 에러 다항식 E(x)로 출력하는 멀티플렉서로 구성됨을 특징으로 하는 디지털 TV의 에러 정정 장치.And a multiplexer for selecting a result of the multiplication by zero or the multiplier according to the error position value calculated by the error position generator and outputting the selected result as an error polynomial E (x). 제 11 항에 있어서, 상기 멀티플렉서는12. The apparatus of claim 11, wherein the multiplexer 에러가 발생한 위치에서는 상기 곱셈기에서 구한 에러 다항식 E(x)의 계수를 선택하고 에러가 발생하지 않은 위치에서는 제로 신호를 선택함을 특징으로 하는 디지털 TV의 에러 정정 장치.Selects a coefficient of the error polynomial E (x) obtained by the multiplier at a position where an error occurs, and selects a zero signal at a position where no error has occurred. 제 1 항에 있어서, 상기 에러 확인 및 데이터 출력부는The apparatus of claim 1, wherein the error checking and data outputting unit 상기 메모리로부터 출력되는 원래의 데이터를 저장하는 제 1 선입선출 메모리와,A first first-in-first-out memory for storing original data output from the memory; 상기 에러 정정부에서 출력되는 정정 데이터를 저장하는 제 2 선입선출 메모리와,A second first-in-first-out memory for storing correction data output from the error correcting unit; 상기 에러 정정부에서 출력되는 정정 데이터의 신드롬을 계산하는 신드롬 계산부와,A syndrome calculation unit for calculating a syndrome of correction data output from the error correction unit; 상기 신드롬 계산부에서 계산된 신드롬이 0인지를 판별하는 제로 검출부와,A zero detection unit for determining whether the syndrome calculated by the syndrome calculation unit is 0, 상기 제로 검출부의 판별 결과에 따라 상기 제 1 선입선출 메모리에 저장된 원래의 데이터 또는 제 2 선입선출 메모리에 저장된 정정 데이터를 선택하여 최종 데이터로 출력하는 멀티플렉서로 구성됨을 특징으로 하는 디지털 TV의 에러 정정 장치.And a multiplexer for selecting the original data stored in the first first-in-first-out memory or the correction data stored in the second first-in-first-out memory according to the discrimination result of the zero detection unit and outputting the selected data as final data. . 제 13 항에 있어서, 상기 멀티플렉서는14. The apparatus of claim 13, wherein the multiplexer 상기 정정 데이터의 신드롬 S(x)=0이면 제 2 선입선출 메모리에 저장된 정정 데이터를 최종 데이터로 선택 출력하고, 정정 데이터의 신드롬 S(x)≠0이면 제 1 선입선출 메모리에 저장된 원래의 데이터를 최종 데이터로 선택 출력함을 됨을 특징으로 하는 디지털 TV의 에러 정정 장치.If the syndrome S (x) of the correction data is 0, the correction data stored in the second first-in-first-out memory is selected and outputted as final data, and if the syndrome S (x) And outputs the selected data as final data.
KR1019970053005A 1997-10-16 1997-10-16 Apparatus for error correction of digital tv KR100226837B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970053005A KR100226837B1 (en) 1997-10-16 1997-10-16 Apparatus for error correction of digital tv

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970053005A KR100226837B1 (en) 1997-10-16 1997-10-16 Apparatus for error correction of digital tv

Publications (2)

Publication Number Publication Date
KR19990032073A true KR19990032073A (en) 1999-05-06
KR100226837B1 KR100226837B1 (en) 1999-10-15

Family

ID=19522850

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970053005A KR100226837B1 (en) 1997-10-16 1997-10-16 Apparatus for error correction of digital tv

Country Status (1)

Country Link
KR (1) KR100226837B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100450320B1 (en) * 2002-05-10 2004-10-01 한국전자통신연구원 Method/Module of Digital TV image signal processing with Auto Error Correction
US8002485B2 (en) 2005-06-29 2011-08-23 Samsung Electronics Co., Ltd. Guide apparatus for mounting and dismounting inner part and image forming device having the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100450320B1 (en) * 2002-05-10 2004-10-01 한국전자통신연구원 Method/Module of Digital TV image signal processing with Auto Error Correction
US8002485B2 (en) 2005-06-29 2011-08-23 Samsung Electronics Co., Ltd. Guide apparatus for mounting and dismounting inner part and image forming device having the same

Also Published As

Publication number Publication date
KR100226837B1 (en) 1999-10-15

Similar Documents

Publication Publication Date Title
EP1131893B1 (en) Forward error corrector
US6374383B1 (en) Determining error locations using error correction codes
US6347389B1 (en) Pipelined high speed reed-solomon error/erasure decoder
US6704902B1 (en) Decoding system for error correction code
JP4036338B2 (en) Method and apparatus for correcting and detecting multiple spotty byte errors in a byte with a limited number of error bytes
US6637002B1 (en) Decoder for error correcting block codes
EP0567148B1 (en) Operating circuit for galois field
US6119262A (en) Method and apparatus for solving key equation polynomials in decoding error correction codes
JP2001502153A (en) Hardware-optimized Reed-Solomon decoder for large data blocks
US5805617A (en) Apparatus for computing error correction syndromes
KR19990016134A (en) High Speed Serial Error Position Polynomial Computation Circuit
EP1458105B1 (en) Method and device for decoding of Reed-Solomon codes
US20140013181A1 (en) Error Correction Coding Using Large Fields
US9191029B2 (en) Additional error correction apparatus and method
KR100258951B1 (en) Rs decoder having serial expansion architecture and method therefor
US20100174970A1 (en) Efficient implementation of a key-equation solver for bch codes
US20030159103A1 (en) Efficient method for fast decoding of BCH binary codes
JP3245290B2 (en) Decoding method and device
KR100226837B1 (en) Apparatus for error correction of digital tv
KR101149110B1 (en) Reed solomon decoder in a digital communication system
US6691277B1 (en) High speed pre-computing circuit and method for finding the error-locator polynomial roots in a Reed-Solomon decoder
US7693927B2 (en) Data processing system and method
US6145113A (en) Series reed-solomon decoder synchronized with bit clock signal
US10623018B2 (en) Method of arrangement of an algorithm in cyclic redundancy check
KR100301518B1 (en) Method for detecting uncoreectable error when using reed-solomon decoder

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050607

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee