KR19980059945A - Error correction device and method - Google Patents

Error correction device and method Download PDF

Info

Publication number
KR19980059945A
KR19980059945A KR1019960079292A KR19960079292A KR19980059945A KR 19980059945 A KR19980059945 A KR 19980059945A KR 1019960079292 A KR1019960079292 A KR 1019960079292A KR 19960079292 A KR19960079292 A KR 19960079292A KR 19980059945 A KR19980059945 A KR 19980059945A
Authority
KR
South Korea
Prior art keywords
error
polynomial
calculating
errors
coefficient
Prior art date
Application number
KR1019960079292A
Other languages
Korean (ko)
Other versions
KR100209676B1 (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 KR1019960079292A priority Critical patent/KR100209676B1/en
Publication of KR19980059945A publication Critical patent/KR19980059945A/en
Application granted granted Critical
Publication of KR100209676B1 publication Critical patent/KR100209676B1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs

Abstract

DVD용 데이타의 에러 정정에 관한 것으로서, 특히 입력데이타 워드로부터 신드롬을 산출하고, 상기 신드롬을 사용하여 에러 위치 다항식의 계수와 에러 평가 다항식의 계수를 산출하는 에러 다항식부와, 상기 에러 위치 다항식의 계수와 에러평가 다항식의 계수를 이용하여 에러 위치 및 에러값을 구하는 에러 위치 및 에러 값 계산부와, 상기 검출된 에러위치로부터 에러 갯수를 카운트하는 카운터와, 상기 카운트된 에러 갯수가 내부코드의 정정능력을 초과하는지를 비교하는 비교부와, 섹터 동기가 검출되지 않거나 그 위치가 틀리면 GFS 신호를 발생하는 GFS 신호 발생부와, 에러 갯수가 정정 능력을 초과하거나 GFS 신호가 발생되면 소거 플래그를 발생하는 오아 게이트를 포함하여 구성되어, PI 에러정정에서 에러 갯수가 정정능력을 초과하지 않아도 GFS 신호가 발생하면 그 프레임에 대해 강제적으로 소거 플래그를 발생시킴으로써, PO 에러정정시 오정정을 방지하여 PO 에러정정 능력을 높인다.In particular, the error correction of data for DVD is performed. In particular, an error polynomial unit for calculating a syndrome from an input data word and calculating coefficients of the error position polynomial and coefficients of the error evaluation polynomial using the syndrome, and coefficients of the error position polynomial; And an error position and error value calculation unit for calculating an error position and an error value using coefficients of an error evaluation polynomial, a counter for counting the number of errors from the detected error position, and the counted error number for correcting an internal code. A comparison unit that compares with or exceeds the GFS signal generator that generates a GFS signal when no sector synchronization is detected or the position thereof is incorrect, or an oar gate that generates an erase flag when the number of errors exceeds the correction capability or a GFS signal is generated. GFS, even if the number of errors in PI error correction does not exceed the correction capability When a signal is generated, an erase flag is forcibly generated for the frame, thereby preventing PO error correction during PO error correction, thereby increasing the PO error correction capability.

Description

에러정정 장치 및 방법Error correction device and method

본 발명은 디지탈 비데오 디스크(Digital Video Disc;DVD)용 데이타의 에러 정정에 관한 것으로서, 특히 가로 방향으로 에러정정을 수행한 후 엥러가 있을 확률이 높은 경우에는 강제적으로 소거 플래그(Erasure Flag)를 발생시켜 세로 방향의 에러정정 능력을 높이는 에러정정 장치 및 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to error correction of data for a digital video disc (DVD). In particular, an error flag is forcibly generated when there is a high probability of an error after performing error correction in a horizontal direction. The present invention relates to an error correction apparatus and method for increasing vertical error correction capability.

최근들어 고효율 코딩 기술을 이용하여 화상을 압축한 후 고밀도의 광 디스크 또는 광 디스크로부터 동화상을 기록 및 재생하기 위한 시스템이 개발되고 있으며 그중 하나가 DVD 시스템이다.Recently, a system has been developed for recording and reproducing moving images from a high density optical disc or an optical disc after compressing an image using a high efficiency coding technique, and one of them is a DVD system.

상기 DVD 시스템은 복잡한 화상정보에 응답하여 발생된 코드량이 변화되는 가변비트 레이트 코딩 기술과 고화질의 영상을 보장하기 위한 MPEG 2(Moving Picture Experts Group 2)에 유사한 시스템을 이용하고 있다.The DVD system employs a variable bit rate coding technique in which a code amount generated in response to complex image information is changed, and a system similar to MPEG 2 (Moving Picture Experts Group 2) for ensuring a high quality image.

이러한 DVD 시스템에서 채용하는 에러 정정 기법은 도 1에서와 같이 내부코드(Inner Code)와 외부 코드(Outer code)로 이루어지는 적(Product) 코드이다.The error correction technique employed in such a DVD system is a product code consisting of an inner code and an outer code as shown in FIG. 1.

상기 내부 코드는 가로방향의 소스 데이타 172개의 심볼에 10바이트의 패리티를 추가하여 182 바이트(Byte)로 1개의 코드워드(Codeword)를 구성하는데, 이때의 정정능력은 5바이트까지이다.The inner code adds 10 bytes of parity to 172 symbols of the source data in the horizontal direction to form one codeword with 182 bytes. The correction capability is up to 5 bytes.

따라서, 디코딩에서는 1 프레임 즉, 1 코드워드의 데이타가 전송되면 5에러까지 정정을 수행하고, 5개 이상의 에러가 존재하면 정정능력을 초과하게 되므로 소거 플래그를 해당 프레임에 찍는다.Accordingly, in decoding, when data of one frame, that is, one codeword, is transmitted, correction is performed up to five errors. If five or more errors exist, the correction capability is exceeded.

이때, 내부 코드워드 208개가 모여서 하나의 블럭을 구성하므로, 208 프레임에 대해서 모두 내부 코드가 끝나면 세로 방향인 외부 코드를 생성하는데, 외부 코드는 세로 방향으로 192개의 심볼에 16바이트의 패러티를 추가하여 구성한다.In this case, since 208 internal codewords are gathered together to form a block, when all internal codes are completed for 208 frames, an external code is generated in a vertical direction. The external code adds 16 bytes of parity to 192 symbols in the vertical direction. Configure.

이때는 상기 내부 코드시에 소거 플래그가 생긴 에러 위치의 데이타에 대해 에러정정을 수행하는데, 16개 이하의 플래그가 발생하면 외부 코드에서 모두 정정할 수 있다.In this case, error correction is performed on the data of the error position where the erasure flag is generated in the inner code. When 16 or less flags occur, all of the outer code can be corrected.

이와같이 DVD 시스템의 에러정정은 리드-솔로몬(Reed-Solomon) 에러 정정 포맷으로 되어있어 통상 37856 바이트의 데이타를 가로로 182 바이트, 세로로 208바이트 단위로 행하여진다. 이때, 내부 코드로서 가로로 하는 정정을 PI(Parity Inner) 에러정정, 그리고 외부 코드로서 세로로 하는 정정을 PO(Parity Outer) 에러 정정이라 일컫는다.As described above, the error correction of the DVD system is in a Reed-Solomon error correction format. Normally, 37856 bytes of data are performed in units of 182 bytes horizontally and 208 bytes vertically. At this time, the horizontal correction as the inner code is referred to as PI (Parity Inner) error correction, and the vertical correction as the outer code is referred to as PO (Parity Outer) error correction.

도 2은 이러한 종래의 DVD 시스템의 에러정정 장치의 구성 블럭도로서, 디스크로부터 독출된 데이타의 코드 워드로부터 신드롬(Syndrom)을 산출하여 에러를 검출하는 신드롬 계산부(10), 소거 플래그 신호를 입력받아 소거수를 계산하는 소거 다항식부(20), 상기 신드롬 계산부(10)의 출력을 이용하여 에러 위치 계수를 계산하거나 소거 다항식부(20)의 출력을 이용하여 소거 플래그 위치 계수를 계산하는 에러 위치 다항식부(30), 상기 신드롬 계산부(10)의 출력과 에러 위치 다항식부(50)의 출력을 이용하여 에러 평가 다항식의 계수를 계산하는 에러평가 다항식부(40), 상기 에러 위치 다항식부(30)에서 출력되는 에러 위치 다항식의 계수와 에러평가 다항식부(40)에서 출력되는 에러평가 다항식의 계수를 이용하여 에러값과 에러 위치를 계산하는 치엔서치부(50), 및 상기 에러 위치 다항식부(30)의 출력과 치엔 서치부(50)의 출력을 이용하여 에러 갯수와 소거 플래그를 발생하는 소거 플래그 발생부(60)를 포함하여 구성된다.Fig. 2 is a block diagram showing the configuration of an error correcting apparatus of the conventional DVD system. The syndrome calculating unit 10 for detecting an error by calculating a syndrome from a code word of data read from a disc and inputting an erase flag signal is shown in FIG. An error polynomial unit 20 that calculates the number of erases and an error of calculating the error position coefficient using the output of the syndrome calculating unit 10 or an error of calculating the erase flag position coefficient using the output of the erasing polynomial unit 20 An error evaluation polynomial unit 40 for calculating a coefficient of an error evaluation polynomial by using a position polynomial unit 30, an output of the syndrome calculation unit 10, and an output of the error position polynomial unit 50. The Q & S unit 50 for calculating an error value and an error position using coefficients of the error position polynomial output from 30 and coefficients of the error evaluation polynomial output from the error evaluation polynomial unit 40, and And an erase flag generator 60 for generating the number of errors and an erase flag by using the output of the error position polynomial unit 30 and the output of the Chien search unit 50.

상기 소거 플래그 발생부(60)는 상기 치엔서치부(50)에서 검출된 에러 위치로 부터 에러의 갯수를 카운트하는 카운터(61), 상기 카운터(61)에서 출력되는 에러 갯수와 상기 에러 위치 다항식부(30)애서 출력되는 실제 발생된 에러 갯수(L)을 비교하여 같지 않을 경우 소거 플래그를 발생시키는 비교부(62)로 구성된다.The erasing flag generation unit 60 includes a counter 61 for counting the number of errors from the error position detected by the Q & A unit 50, the number of errors output from the counter 61 and the error position polynomial unit. (30) Comparing unit 62, which compares the actual number of errors (L) that are output from the output to generate an erase flag if not equal.

도 3은 이러한 종래의 DVD 시스템에서 에러를 정정하는 방법을 나타낸 흐름도이다.3 is a flowchart illustrating a method of correcting an error in such a conventional DVD system.

이와같이 구성된 종래의 에러 정정 기법은 디스크가 재생되면(단계 301), PI 에러정정인지 PO 에러정정인지를 판별한다(단계 302).In the conventional error correction scheme configured as described above, when the disc is played (step 301), it is discriminated whether it is PI error correction or PO error correction (step 302).

상기 단계 302에서 PI 에러정정으로 판별되면 신드롬 계산부(10)는 디스크로 부터 독출된 데이타의 코드 워드를 이용하여 신드롬을 산출하여 에러위치 다항식부(20)로 출력한다(단계 303).If it is determined in step 302 that PI error correction is performed, the syndrome calculation unit 10 calculates a syndrome using a code word of data read from the disk and outputs the syndrome to the error position polynomial unit 20 (step 303).

여기서, 신드롬은 에러형태에 의존한다. 즉, 에러 유무가 검출된다.Here, the syndrome depends on the error type. That is, the presence or absence of an error is detected.

상기 에러위치 다항식부(20)는 상기 신드롬 요소(s(x))로부터 에러 위치 다항식(σ(x))의 계수를 구한다(단계 304).The error position polynomial unit 20 obtains the coefficient of the error position polynomial σ (x) from the syndrome element s (x) (step 304).

그리고, 각 에러 위치에 대한 에러 값을 구하기 위해 에러평가 다항식부(40)는 상기 신드롬 다항식 S(x)과 에러위치 다항식 σ(x)을 곱하여 에러 평가 다항식 Ω(x)의 계수를 구하고 치엔서치부(50)로 출력한다(단계 305).In order to obtain an error value for each error location, the error evaluation polynomial unit 40 multiplies the syndrome polynomial S (x) by the error location polynomial σ (x) to obtain a coefficient of the error evaluation polynomial Ω (x) Output to section 50 (step 305).

상기 치엔서치부(50)에서는 에러 위치값을 구하기 위해 사용되는 알고리즘중 하나로 에러위치 다항식 σ(x)의 근을 구하여 에러 위치를 찾아낸다.The search engine 50 finds an error location by finding the root of the error location polynomial σ (x) as one of algorithms used to obtain an error location value.

즉, 갈로아 필드(GF)의 모든 원소 1, α, α2, ..., α181를 에러위치 다항식 σ(x)에 순차적으로 대입하여 그 값이 0이 되는 근을 찾는다.That is, all the elements 1, α, α 2 , ..., α 181 of the galoa field GF are sequentially substituted into the error position polynomial σ (x) to find a root whose value becomes zero.

만일, αp에서 에러위치 다항식 σ(x) = 0이 되면 p가 에러 위치값이 되고, 이때 로드 신호를 소거 플래그 발생부(60)의 카운터(61)로 출력한다.If the error position polynomial σ (x) = 0 at α p , p becomes the error position value, and at this time, the load signal is output to the counter 61 of the erasing flag generator 60.

그리고, 상기 구해진 에러 위치값과 상기 에러평가 다항식 Ω(x)의 계수를 이용하여 각 에러 위치에 대응되는 에러값을 구한다(단계 306).Then, using the obtained error position value and the coefficient of the error evaluation polynomial? (X), an error value corresponding to each error position is obtained (step 306).

또한, 치엔서치를 수행하면서 소거 플래그를 발생시키기 위해 PI 에러정정인 PO 에러정정인지를 판별한다(단계 307).In addition, it is determined whether the PI error correction is PO error correction in order to generate the erase flag while performing the chien search (step 307).

PI 에러정정이라고 판별되면 소거 플래그 발생부(60)의 카운터(61)는 상기 치엔서치부(50)에서 로드 신호가 출력되면 즉, 에러 위치를 구할때마다 카운트 업하여 총 에러 갯수를 구한다.If it is determined that the PI error correction is performed, the counter 61 of the erasing flag generator 60 counts up every time the error position is obtained when the load signal is output from the Q & A unit 50, thereby obtaining the total number of errors.

치엔서치가 완료되어 상기 카운터(61)에서 총 에러갯수가 구해지면 비교부(62)는 에러 갯수가 정정능력을 초과하는지를 비교한다(단계 308).When the search is completed and the total number of errors is obtained from the counter 61, the comparing unit 62 compares whether the number of errors exceeds the correction capability (step 308).

즉, 상기 비교부(62)는 상기 에러위치 다항식부(30)의 최고차항의 차수 예컨데, 실제 발생된 에러갯수(L)와 카운터(62)에서 출력되는 에러갯수 예컨데, 에러정정될 에러갯수를 비교하여 같지 않으면 정정 능력을 초과하였다고 판단하여 정정 블능이라는 소거 플래그를 발생시킨다(단계 309).That is, the comparison unit 62 orders the highest order term of the error position polynomial unit 30, for example, the number of errors actually generated L and the number of errors output from the counter 62, for example, the number of errors to be corrected. In comparison, if it is not the same, it is determined that the correction capability has been exceeded, and an erasing flag of correction capability is generated (step 309).

그리고, 상기 단계 308에서 에러 갯수가 정정 능력을 초과하지 않았다고 판별되면 에러 위치와 에러값을 알고 있으므로 PI 에러를 정정한다(단계 310).If it is determined in step 308 that the number of errors has not exceeded the correction capability, the PI error is corrected since the error position and error value are known (step 310).

한편, 상기 단계 302에서 PO 에러정정이라고 판별되면 신드롬 계산부(10)는 수신되는 데이타의 코드 워드를 이용하여 신드롬을 산출하고, 소거 다항식부(20)는 소거 플래그를 입력받아 소거수를 계산하여(단계 311), 에러위치 다항식부(20)로 출력된다.On the other hand, if it is determined in step 302 that PO error correction, the syndrome calculation unit 10 calculates a syndrome using a code word of the received data, and the erasing polynomial unit 20 receives an erasing flag and calculates the number of erases. (Step 311), it is output to the error position polynomial unit 20.

상기 에러위치 다항식부(20)는 상기 신드롬 요소 s(x)와 소거수로부터 소거위치 다항식Φ(x)의 계수를 구한다(단계 312).The error position polynomial unit 20 obtains a coefficient of the erase position polynomial Φ (x) from the syndrome element s (x) and the number of erases (step 312).

그리고, 상기 소거 위치 다항식부(312)의 출력은 PI 에러 정정일 경우와 마찬가지로 에러 평가 다항식부(40)와 치엔 서치부(50)로 입력되어 에러위치값과 에러값이 구해진다(단계 305, 306).The output of the erase position polynomial unit 312 is input to the error evaluation polynomial unit 40 and the Chien search unit 50 as in the case of PI error correction, thereby obtaining an error position value and an error value (steps 305 and 306). ).

상기 에러위치값과 에러값이 구해지고 단계 307에서 PO 에러정정으로 판별되면 PO 에러정정을 수행한다(단계 310).If the error position value and the error value are obtained and determined as PO error correction in step 307, PO error correction is performed (step 310).

즉, PO 에러정정은 소거 플래그가 발생한 경우에만 에러정정을 수행한다.That is, PO error correction performs error correction only when the erase flag occurs.

이와같이 PO 에러정정은 PI 에러정정의 결과에 의해 수행되므로 PI 에러정정에서 오정정이 발생하여 소거 플래그가 생기지 않은 경우 PO 에러정정에서는 해당 에러 위치에 대한 에러 정정을 수행하지 않게 되므로 오정정이 되고만다.In this way, since PO error correction is performed by the result of PI error correction, when error correction occurs in PI error correction and no erasure flag is generated, PO error correction does not perform error correction for the corresponding error position.

이러한 오정정은 시스템이 불안정하거나 디스크의 스크래치(Scratch)등으로 인해 데이타 에러가 많아지기 때문에 발생한다.This miscorrection is caused by data errors due to system instability or disk scratches.

또한, 섹터 동기가 흔들리면 그 프레임에 대한 신뢰도가 떨어지게 되므로 오정정이 일어날 확률이 높아진다.In addition, when the sector synchronization is shaken, the reliability of the frame is lowered, which increases the probability of miscorrection.

즉, PI 에러정정을 보완하기 위해 PO 에러정정을 수행하지만 PI 에러정정에서 문제가 생겨 부적절한 소거 플래그 정보를 보내면 PO 에러정정에서는 이를 사용하여 에러정정을 하므로 실제로 에러가 발생하는 정보라도 PI 에러정정시 소거 플래그가 발생하지 않으면 정정할 수 없게 된다.In other words, PO error correction is performed to compensate for PI error correction, but if a problem occurs in PI error correction and improper erasure flag information is sent, PO error correction uses the error correction to correct the PI error correction. If the erase flag does not occur, correction cannot be made.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 PI 에러정정에서 소거 플래그가 발생하지 않았더라도 에러가 있을 확률이 높은 경우에는 강제적으로 소거 플래그를 발생시켜 에러정정 능력을 높이는 에러정정 장치 및 방법을 제공함에 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to raise an error correction capability by forcibly generating an erase flag when there is a high probability that there is an error even if an erase flag does not occur in PI error correction. A correction apparatus and method are provided.

본 발명의 다른 목적은 PI 에러정정시 동기가 제대로 맞지않고 틀어졌을때 발생하는 GFS(Good Frame Sync) 신호가 발생되면 강제적으로 소거 플래그를 발생시켜 에러정정 능력을 높이는 에러정정 장치 및 방법을 제공함에 있다.Another object of the present invention is to provide an error correction apparatus and method for enhancing an error correction capability by forcibly generating an erase flag when a GFS (Good Frame Sync) signal generated when a synchronization is not properly synchronized and turned on during PI error correction. have.

상기와 같은 목적을 달성하기 위한 본 발명에 따른 에러정정장치의 특징은 입력데이타 워드로부터 신드롬을 산출하고, 상기 신드롬을 사용하여 에러 위치 다항식의 계수와 에러 평가 다항식의 계수를 산출하는 에러 다항식부와, 상기 에러 위치 다항식의 계수를 이용하여 에러 위치를 구하고, 상기 에러 위치 다항식의 계수와 에러 평가 다항식의 계수를 이용하여 에러값을 구하기위해 치엔서치를 수행하는 에러 위치 및 에러값 계산부와, 상기 검출된 에러위치로부터 에러 갯수를 카운트하는 카운터와, 상기 카운트된 에러 갯수가 내부코드의 정정능력을 초과하는지를 비교하는 비교부와, 섹터 동기가 검출되지 않거나 그 위치가 틀리면 GFS 신호를 발생하는 GFS 신호 발생부와, 상기 비교부에서 에러 갯수가 내부 코드의 에러정정능력을 초과한다고 판별되거나, 상기 GFS 신호 발생부에서 GFS 신호가 발생되면 그 프레임에 소거 플래그를 발생시키는 오아 게이트를 포함하여 구성되는데 있다.The error correction apparatus according to the present invention for achieving the above object is an error polynomial unit for calculating a syndrome from an input data word, and using the syndrome to calculate the coefficient of the error position polynomial and the coefficient of the error evaluation polynomial; An error position and error value calculator for performing an error search to obtain an error position using coefficients of the error position polynomial and calculating an error value using coefficients of the error position polynomial and coefficients of the error evaluation polynomial; A counter for counting the number of errors from the detected error position, a comparator for comparing whether the counted error number exceeds the correction capability of the internal code, and a GFS signal for generating a GFS signal if the sector synchronization is not detected or the position is incorrect The generation unit and the comparison unit determine that the number of errors exceeds the error correction capability of the internal code. Or an OR gate for generating an erase flag in the frame when a GFS signal is generated in the GFS signal generator.

본 발명에 따른 에러정정 방법의 특징은, 입력데이타 워드로부터 신드롬을 산출하고, 상기 신드롬을 사용하여 에러 위치 다항식의 계수와 에러 평가 다항식의 계수를 산출하는 단계와, 상기 에러 위치 다항식의 계수를 이용하여 에러 위치를 구하고, 상기 에러 위치 다항식의 계수와 에러 평가 다항식의 계수를 이용하여 에러값을 구하는 단계와, 상기 검출된 에러위치로부터 에러 갯수를 카운트하는 단계와, 상기 카운트된 에러 갯수가 내부코드의 정정능력을 초과하는지를 비교하는 단계와, 섹터 동기가 검출되지 않거나 그 위치가 틀리면 GFS 신호를 발생하는 단계와, 에러갯수가 정정능력을 초과한다고 판별되거나 또는 GFS 신호가 발생되면 그 프레임에 소거 플래그를 발생시키는 단계를 포함하여 이루어지는데 있다.A feature of an error correction method according to the present invention is the step of calculating a syndrome from an input data word, calculating a coefficient of an error position polynomial and an coefficient of an error evaluation polynomial using the syndrome, and using the coefficient of the error position polynomial. Obtaining an error position by using the coefficient of the error position polynomial and the coefficient of the error evaluation polynomial, counting the number of errors from the detected error position, and counting the number of errors Comparing the correcting capability of the apparatus; generating a GFS signal if no sector synchronization is detected or its position is incorrect; and erasing flag on the frame when the number of errors is determined to exceed the correcting capability or a GFS signal is generated. It comprises the step of generating a.

도 1은 일반적인 DVD 시스템에서 채용하는 에러정정 방법을 나타낸 도면1 is a diagram illustrating an error correction method employed in a general DVD system.

도 2는 종래의 에러정정 장치의 구성블럭도2 is a block diagram of a conventional error correction apparatus

도 3은 종래의 에러정정 방법을 나타낸 흐름도3 is a flowchart illustrating a conventional error correction method.

도 4는 본 발명에 따른 에러정정 장치의 구성 블럭도4 is a block diagram of an error correction apparatus according to the present invention.

도 5는 본 발명에 따른 에러정정 방법을 나타낸 흐름도5 is a flowchart illustrating an error correction method according to the present invention.

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

10:신드롬 계산부 20:에러위치 다항식부10: syndrome calculation unit 20: error position polynomial unit

30:소거 다항식부 40:에러평가 다항식부30: Elimination polynomial part 40: Error evaluation polynomial part

50:치엔서치부 70:소거 플래그 발생부50: Chien search department 70: Clearing flag generation part

71:카운터 72:비교부71: counter 72: comparison

73:선속도부 74:오아 게이트73: linear speed part 74: ora gate

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

도 4는 본 발명에 따른 에러정정 장치의 구성블럭도로서, 소거 플래그 발생부(70)를 제외한 신드롬 계산부(10), 소거 다항식부(20), 에러위치 다항식부(30), 에러평가 다항식부(40), 및 치엔서치부(50)는 상기된 도 2와 구성 및 동작이 동일하므로 동일 부호룰 사용하고 구성 설명을 생략한다.4 is a block diagram of an error correction apparatus according to the present invention, including the syndrome calculation unit 10 except the erasing flag generation unit 70, the erasing polynomial unit 20, the error position polynomial unit 30, and the error evaluation polynomial. The unit 40 and the Q & S unit 50 have the same configuration and operation as those of FIG.

도 4에서 소거 플래그 발생부(70)만을 설명한다.In FIG. 4, only the erase flag generator 70 will be described.

즉, 소거 플래그 발생부(70)는 상기 치엔서치부(50)에서 검출된 에러 위치를 카운트하여 총 에러 갯수를 구하는 카운터(71), 상기 카운터(71)에서 출력되는 에러갯수와 상기 에러 위치 다항식부(30)에서 출력되는 실제 발생된 에러 갯수(L)을 비교하는 비교부(72), 시스템이 불안정하거나 디스크에 스크래치가 있어 섹터의 위치가 맞지않을때 GFS 신호를 발생하는 정선속도(Constant Liner Velocity;CLV)부(73), 상기 비교부(72)의 출력과 CLV(73)을 논리조합하여 소거 플래그를 발생하는 오아 게이트(74)로 구성된다.That is, the erasing flag generator 70 counts the error positions detected by the CNN search unit 50 to obtain a total number of errors, and an error number output from the counter 71 and the error position polynomial. Comparator 72 that compares the actual number of errors (L) that are output from the unit 30, the constant line speed (Gnstant Liner) that generates a GFS signal when the system is unstable or there is a scratch on the disk and the sector is not correct A Velocity (CLV) section 73, an OR gate 74 for generating an erase flag by logically combining the output of the comparison section 72 and the CLV 73.

도 5는 본 발명에 따른 에러정정 방법을 수행하기 위한 흐름도이다,5 is a flowchart for performing an error correction method according to the present invention.

이와같이 구성된 본 발명은 시스템이 불안정하거나 디스크에 스크래치가 있어 섹터의 위치가 맞지 않을 경우 GFS 신호가 주로 발생하게 되므로, 이 신호가 발생한 데이타의 경우는 에러가 존재할 가능성이 크다.According to the present invention configured as described above, the GFS signal is mainly generated when the system is unstable or the disk is scratched and the sector is not aligned. Therefore, an error is likely to exist in the data generated by the signal.

따라서, GFS 신호가 발생한 프레임의 데이타에 대해서는 비록 PI 에러정정시 소거 플래그가 발생하지 않더라도 소거 플래그를 강제로 부가하여 출력한다.Therefore, even if the erase flag is not generated during PI error correction, the erase flag is forcibly added to the data of the frame in which the GFS signal is generated.

즉, 디스크가 재생되어 데이타가 수신되면(단계 501), 먼저 PI 에러정정인지 PO 에러정정인지를 판별한다(단계 502).That is, when the disc is played back and data is received (step 501), it is first determined whether PI error correction or PO error correction (step 502).

상기 단계 502에서 PI 에러정정으로 판별되면 신드롬 계산부(10)는 디스크로부터 독출된 데이타의 코드 워드를 이용하여 신드롬을 산출하여 에러유무를 검출하고 에러위치 다항식부(20)로 출력한다(단계 503).If it is determined in step 502 that PI error correction is made, the syndrome calculation unit 10 calculates a syndrome using a code word of data read from the disk, detects the presence of an error, and outputs the error to the error position polynomial unit 20 (step 503). ).

상기 에러위치 다항식부(20)는 상기 신드롬 계수 s(x)로부터 에러 위치 다항식(σ(x))의 계수를 구한다(단계 504).The error position polynomial unit 20 obtains the coefficient of the error position polynomial σ (x) from the syndrome coefficient s (x) (step 504).

그리고, 각 에러 위치에 대한 에러 값을 구하기 위해 에러평가 다항식부(40)는 상기 신드롬 다항식 S(x)과 에러위치 다항식 σ(x)의 계수들을 곱하여 에러 평가 다항식 Ω(x)의 계수를 구하고 치엔서치부(50)로 출력한다.(단계 505).In order to obtain an error value for each error position, the error evaluation polynomial unit 40 multiplies the coefficients of the syndrome polynomial S (x) and the error location polynomial σ (x) to obtain a coefficient of the error evaluation polynomial Ω (x). It outputs to the CQ search part 50 (step 505).

상기 치엔서치부(50)에서는 에러 위치값을 구하기 위해 사용되는 알고리즘중 하나로 에러위치 다항식 σ(x)의 근을 구하여 에러 위치를 찾아낸다.The search engine 50 finds an error location by finding the root of the error location polynomial σ (x) as one of algorithms used to obtain an error location value.

즉, 갈로아 필드(GF)의 모든 원소 1, α, α2, ..., α181를 에러위치 다항식 σ(x)에 순차적으로 대입하여 그 값이 0이 되는 근을 찾는다.That is, all the elements 1, α, α 2 , ..., α 181 of the galoa field GF are sequentially substituted into the error position polynomial σ (x) to find a root whose value becomes zero.

만일, αp에서 에러위치 다항식 σ(x) = 0이 되면 p가 에러 위치값이 되고, 이때 로드 신호를 소거 플래그 발생부(70)의 카운터(71)로 출력한다.If the error position polynomial σ (x) = 0 at α p , p becomes the error position value, and at this time, the load signal is output to the counter 71 of the erasing flag generator 70.

또한, 상기 치엔서치부(50)는 상기 구해진 에러 위치값과 상기 에러평가 다항식 Ω(x)의 계수를 이용하여 각 에러 위치에 대응되는 에러값을 구한다(단계 506).In addition, the Q-search unit 50 obtains an error value corresponding to each error position by using the obtained error position value and the coefficient of the error evaluation polynomial? (X) (step 506).

그리고, 상기 치엔서치를 수행하면서 소거 플래그를 발생시키기 위해 PI 에러정정인지 PO 에러정정인지를 판별한다(단계 507).Then, whether the PI error correction or the PO error correction is performed in order to generate an erase flag while performing the chien search (step 507).

PI 에러정정이라고 판별되면 소거 플래그 발생부(70)의 카운터(71)는 상기 치엔서치부(50)에서 로드 신호가 출력되면 즉, 에러 위치를 구할때마다 카운트 업하여 총 에러 갯수를 구한다.If it is determined that the PI error correction is performed, the counter 71 of the erasing flag generator 70 counts up every time the error position is obtained when the load signal is output from the Q & A unit 50 to obtain the total number of errors.

치엔서치가 완료되어 상기 카운터(71)에서 총 에러갯수가 구해지면 비교부(72)는 에러 갯수가 정정능력을 초과하는지를 비교한다(단계 508).When the search is completed and the total number of errors is obtained from the counter 71, the comparing unit 72 compares whether the number of errors exceeds the correcting capability (step 508).

즉, 상기 비교부(72)는 상기 에러위치 다항식부(30)의 최고차항의 차수 예컨데, 실제 발생된 에러갯수와 카운터(72)에서 출력되는 에러갯수 예컨데, 에러정정될 에러갯수를 비교하여 같지 않으면 정정 능력을 초과하였다고 판단하여 오아 게이트(74)를 통해 정정 블능이라는 소거 플래그를 발생시킨다(단계 511).That is, the comparison unit 72 is an order of the highest order term of the error position polynomial unit 30. For example, the number of errors actually generated and the number of errors output from the counter 72 are not equal. Otherwise, it is determined that the correction capability has been exceeded, and an erase flag of the correction disable capability is generated through the ora gate 74 (step 511).

이때, CLV부(73)에서는 동기 검출부분에서 동기가 제대로 맞지않고 틀러졌을 때 GFS 신호를 발생시켜 상기 오아 게이트(74)로 출력한다.At this time, the CLV unit 73 generates a GFS signal and outputs the GFS signal to the OR gate 74 when the synchronization detection unit is not properly synchronized.

따라서, 상기 오아 게이트(74)는 에러 갯수가 정정 능력을 초과하거나 또는 에러 갯수가 정정 능력을 초과하지 않았어도 CLV부(73)에서 GFS 신호가 발생되면 소거 플래그를 발생시킨다(단계 511).Therefore, the OR gate 74 generates an erase flag when the GFS signal is generated in the CLV unit 73 even if the number of errors exceeds the correction capability or the number of errors does not exceed the correction capability (step 511).

즉, GFS 신호가 발생하면 PI 에러정정에서 에러가 발생하지 않아도 무조건 소거 플래그를 발생시킨다.That is, when a GFS signal is generated, an erase flag is unconditionally generated even though no error occurs in PI error correction.

이와같이, 상기 단계 508에서 에러 갯수가 정정 능력을 초과하지 않았다고 판별되어도 단계 509에서 GFS 신호가 발생되었다고 판별되면 소거 플래그가 발생된다.As such, even if it is determined in step 508 that the number of errors has not exceeded the correction capability, an erase flag is generated when it is determined in step 509 that a GFS signal is generated.

그러므로, 에러 갯수가 정정 능력을 초과하지 않고 GFS 신호가 발생되지 않았을 경우에만 PI 에러정정이 이루어진다(단계 510).Therefore, PI error correction is made only if the number of errors does not exceed the correction capability and no GFS signal is generated (step 510).

이때, 치엔서치부(50)에 의해 에러 위치와 에러값을 알고 있으므로 PI 에러정정을 수행할 수 있다.At this time, since the error search unit and the error value are known by the Q & A unit 50, PI error correction can be performed.

한편, 상기 단계 502에서 PO 에러정정이라고 판별되면 신드롬 계산부(10)는 수신되는 데이타 코드 워드를 이용하여 신드롬을 산출하고, 소거 다항식부(20)는 소거 플래그를 입력받아 소거수를 계산하여(단계 512), 에러위치 다항식부(20)로 출력한다.On the other hand, if it is determined in step 502 that PO error correction, the syndrome calculation unit 10 calculates a syndrome using the received data code word, and the erase polynomial unit 20 receives an erase flag and calculates the erase count ( Step 512), outputs to the error position polynomial unit 20.

상기 에러위치 다항식부(20)는 상기 신드롬 요소 s(x)와 소거수로부터 소거위치 다항식 Φ(x)의 계수를 구한다(단계 513).The error position polynomial unit 20 obtains the coefficient of the erase position polynomial? (X) from the syndrome element s (x) and the number of erases (step 513).

그리고, 상기 소거 위치 다항식부(30)의 출력 PI 에러정정일 경우와 마찬가지로 에러 평가 다항식부(40)와 치엔 서치부(50)로 입력되어 에러위치값과 에러값이 구해진다(단계 505, 506).Then, as in the case of output PI error correction of the erasure position polynomial unit 30, the error position polynomial unit 40 and the Chien search unit 50 are input to obtain an error position value and an error value (steps 505 and 506). .

상기 에러위치값과 에러값이 구해지고 단계 507에서 PO 에러정정으로 판별되면 PO 에러정정을 수행한다(단계 510).If the error position value and the error value are obtained and determined as PO error correction in step 507, PO error correction is performed (step 510).

이상에서와 같이 본 발명에 따른 에러정정 장치 및 방법에 의하면, PI 에러정정에서 에러 갯수가 정정능력을 초과하지 않아 소거 플래그가 발생하지 않았더라도 에러가 있을 확률이 높은 경우 예컨데, 섹터 동기가 맞지 않아 GFS 신호가 발생될 때에는 그 프레임에 대해 강제적으로 소거 플래그를 발생시킴으로써, PO 에러정정시 오정정을 방지하여 PO 에러정정 능력을 높이는 효과가 있다.As described above, according to the error correction apparatus and method according to the present invention, when the error count in PI error correction does not exceed the correction capability and there is a high probability that there is an error, for example, sector synchronization is not correct. When the GFS signal is generated, an erase flag is forcibly generated for the frame, thereby preventing the error correction during PO error correction, thereby increasing the PO error correction capability.

Claims (8)

입력데이타 워드로부터 신드롬을 산출하고, 상기 신드롬을 사용하여 에러 위치 다항식의 계수와 에러 평가 다항식의 계수를 산출하는 에러 다항식수단과, 상기 에러 위치 다항식의 계수를 이용하여 에러 위치를 구하고, 상기 에러 위치 다항식의 계수와 에러 평가 다항식의 계수를 이용하여 에러값을 구하는 에러 위치 및 에러 값 계산부와, 상기 검출된 에러위치로부터 에러 갯수를 카운트하는 카운터와, 상기 카운트된 에러 갯수가 내부코드의 정정능력을 초과하는지를 비교하는 비교부와, 섹터 동기가 검출되지 않거나 그 위치가 틀리면 GFS(Good Frame Sync) 신호를 발생하는 GFS 신호 발생부와, 상기 비교부의 결과와 GFS 신호 발생부의 출력을 논리 조합하여 소거 플래그를 발생하는 로직부를 포함하여 구성됨을 특징으로 하는 에러정정 장치.An error polynomial means for calculating a syndrome from an input data word, calculating the coefficient of the error position polynomial and the coefficient of the error evaluation polynomial using the syndrome, and obtaining the error position using the coefficient of the error position polynomial; Error position and error value calculation unit for calculating error values using coefficients of polynomials and error evaluation, a counter for counting the number of errors from the detected error positions, and the counted error number for correcting an internal code A comparison unit for comparing whether or not, a GFS signal generator for generating a Good Frame Sync (GFS) signal when the sector synchronization is not detected or the position thereof is incorrect, and the result of the comparison unit and the output of the GFS signal generator are logically erased. Error correction device comprising a logic unit for generating a flag. 제1항에 있어서, 상기 에러위치 및 에러값 계산수단은 치엔서치 알고리즘을 이용함을 특징으로 하는 에러정정 장치.The error correcting apparatus according to claim 1, wherein the error position and error value calculating means uses a Chien search algorithm. 제1항에 있어서, 상기 비교부는 상기 카운트된 에러 갯수와 에러위치 다항식의 최고차항의 갯수를 비교하여 같지 않으면 에러 갯수가 정정능력을 초과한다고 판별함을 특징으로 하는 에러정정 장치.The error correcting apparatus according to claim 1, wherein the comparing unit compares the counted error number with the number of highest order terms of the error position polynomial and determines that the error number exceeds a correcting capability if not equal. 제1항에 있어서, 상기 로직부는 상기 비교부에서 에러 갯수가 내부 코드의 에러정정능력을 초과한다고 판별되면 그 프레임에 소거 플래그를 발생시킴을 특징으로 하는 에러정정 장치.The error correcting apparatus of claim 1, wherein the logic unit generates an erase flag in the frame when it is determined by the comparing unit that the number of errors exceeds the error correcting capability of an internal code. 제1항에 있어서, 상기 로직부는 상기 GFS 신호 발생부에서 GFS 신호가 발생되면 그 프레임에 소거 플래그를 발생시킴을 특징으로 하는 에러정정 장치.The error correcting apparatus of claim 1, wherein the logic unit generates an erase flag in a frame when a GFS signal is generated in the GFS signal generator. 제1항에 있어서, 상기 로직부는 상기 비교부의 출력과 GFS 신호 발생부의 출력을 논리합하는 오아 게이트로 이루어짐을 특징으로 하는 에러정정 장치.The error correcting apparatus of claim 1, wherein the logic unit comprises an OR gate for performing an OR between the output of the comparator and the output of a GFS signal generator. 입력데이타 워드로부터 신드롬을 산출하고, 상기 신드롬을 사용하여 에러 위치 다항식의 계수와 에러 평가 다항식의 계수를 산출하는 단계와, 상기 에러위치 다항식의 계수를 이용하여 에러위치를 구하고, 상기 위치 다항식의 계수와 에러 평가 다항식의 계수를 이용하여 에러값을 구하는 단계와, 상기 검출된 에러위치로부터 에러 갯수를 카운트하는 단계와, 상기 카운트된 에러 갯수가 내부코드의 정정능력을 초과하는지를 비교하는 단계와, 섹터 동기가 검출되지 않거나 그 위치가 틀리면 GFS 신호를 발생하는 단계와 에러 갯수가 정정능력을 초과한다고 판별되거나 또는 GFS 신호가 발생되면 그 프레임에 소거 플래그를 발생시키는 단계를 포함하여 이루어짐을 특징으로 하는 에러정정 방법.Calculating a syndrome from an input data word, calculating a coefficient of an error position polynomial and a coefficient of an error evaluation polynomial using the syndrome, obtaining an error position using the coefficient of the error position polynomial, and calculating the coefficient of the position polynomial And calculating an error value using the coefficient of the error evaluation polynomial, counting the number of errors from the detected error position, comparing whether the counted error number exceeds the correctability of an internal code, and Generating a GFS signal if the synchronization is not detected or the position thereof is wrong, and determining that the number of errors exceeds the correcting capability, or generating an erase flag in the frame when the GFS signal is generated. Correction method. 제7항에 있어서, 상기 단계는 카운트된 에러 갯수와 에러위치 다항식 최고차항의 갯수를 비교하여 같지 않으면 에러 갯수가 정정능력을 초과한다고 판별함을 특징으로 하는 에러정정 방법.8. The error correction method according to claim 7, wherein the step compares the number of counted errors with the number of error position polynomial highest order terms and determines that the number of errors exceeds the correction capability if not equal.
KR1019960079292A 1996-12-31 1996-12-31 Error correction apparatus and method KR100209676B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960079292A KR100209676B1 (en) 1996-12-31 1996-12-31 Error correction apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960079292A KR100209676B1 (en) 1996-12-31 1996-12-31 Error correction apparatus and method

Publications (2)

Publication Number Publication Date
KR19980059945A true KR19980059945A (en) 1998-10-07
KR100209676B1 KR100209676B1 (en) 1999-07-15

Family

ID=19493130

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960079292A KR100209676B1 (en) 1996-12-31 1996-12-31 Error correction apparatus and method

Country Status (1)

Country Link
KR (1) KR100209676B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990024299A (en) * 1997-08-09 1999-04-06 윤종용 PID detection method of DVD-RAM and its device
KR100469572B1 (en) * 2002-03-20 2005-02-02 주식회사 레인콤 Method and system for sensing a shock in optical disk device
KR100499878B1 (en) * 2001-09-29 2005-07-07 주식회사 씨엔에스 An error correction circuit for pid in dvd ram
KR100505210B1 (en) * 2002-03-12 2005-08-04 엘지전자 주식회사 Apparatus and method for correcting error

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990024299A (en) * 1997-08-09 1999-04-06 윤종용 PID detection method of DVD-RAM and its device
KR100499878B1 (en) * 2001-09-29 2005-07-07 주식회사 씨엔에스 An error correction circuit for pid in dvd ram
KR100505210B1 (en) * 2002-03-12 2005-08-04 엘지전자 주식회사 Apparatus and method for correcting error
KR100469572B1 (en) * 2002-03-20 2005-02-02 주식회사 레인콤 Method and system for sensing a shock in optical disk device

Also Published As

Publication number Publication date
KR100209676B1 (en) 1999-07-15

Similar Documents

Publication Publication Date Title
US7653862B2 (en) Error detection and correction for encoded data
US6378103B1 (en) Apparatus and method for error correction in optical disk system
TW200302454A (en) Decoding method and apparatus therefor
NL9402204A (en) Error correcting decoder and error correction decoding method.
JPH084233B2 (en) Error correction code decoding device
US6029265A (en) Error control device
US8166376B2 (en) Techniques for correcting errors and erasures using a single-shot generalized minimum distance key equation solver
KR100209676B1 (en) Error correction apparatus and method
JP2999881B2 (en) Reed-Solomon decoding device
US20010023495A1 (en) Error correction in digital data storage device
JPH05218883A (en) Decoder circuit
KR100207492B1 (en) Method for testing error correction and apparatus therefor
US7213190B2 (en) Data processing apparatus and method
US20060085721A1 (en) Method of detecting error event in codeword reproduced by perpendicular magnetic recording medium and apparatus using the same
KR100223821B1 (en) The circuit and method for error correction in a dvd
JP3537722B2 (en) Recording / playback device
JPH1117557A (en) Error correction method and device therefor
KR100425083B1 (en) Error correction code circuit for different kinds of optical disks
KR100253171B1 (en) Error correcting circuit and method
KR100505210B1 (en) Apparatus and method for correcting error
JPS63298777A (en) Correction system for error detection
JP3551879B2 (en) Error correction apparatus and method
JPH04177673A (en) Information recorder/reproducer
JP3519684B2 (en) Data processing device using error correction code
KR19990039252A (en) Eraser correction method and apparatus

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: 20060324

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee