KR20030073532A - Apparatus and method for operating double product outer syndrome - Google Patents

Apparatus and method for operating double product outer syndrome Download PDF

Info

Publication number
KR20030073532A
KR20030073532A KR1020020013153A KR20020013153A KR20030073532A KR 20030073532 A KR20030073532 A KR 20030073532A KR 1020020013153 A KR1020020013153 A KR 1020020013153A KR 20020013153 A KR20020013153 A KR 20020013153A KR 20030073532 A KR20030073532 A KR 20030073532A
Authority
KR
South Korea
Prior art keywords
syndrome
ecc block
block data
buffer memory
data
Prior art date
Application number
KR1020020013153A
Other languages
Korean (ko)
Inventor
히동식
Original Assignee
주식회사 엘지이아이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엘지이아이 filed Critical 주식회사 엘지이아이
Priority to KR1020020013153A priority Critical patent/KR20030073532A/en
Publication of KR20030073532A publication Critical patent/KR20030073532A/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
    • 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/10009Improvement or modification of read or write signals
    • G11B20/10305Improvement or modification of read or write signals signal quality assessment
    • G11B20/10361Improvement or modification of read or write signals signal quality assessment digital demodulation process
    • G11B20/1037Improvement or modification of read or write signals signal quality assessment digital demodulation process based on hard decisions, e.g. by evaluating bit error rates before or after ECC decoding

Abstract

PURPOSE: A double PO syndrome operating device and a method thereof are provided to reduce an access request of ECC block data when operating the PO syndrome so as to improve bandwidth of a buffer memory. CONSTITUTION: A double PO syndrome operating method includes the steps of reading ECC block data by 2 bytes from a buffer memory by a control part, dividing the ECC block data into upper and lower bytes, and operating the syndrome from the upper and lower bytes and roots of a set generating polynomial by odd and even row of PO syndrome operating parts(221,223).

Description

이중 피오 신드롬 연산장치 및 방법{Apparatus and method for operating double product outer syndrome}Apparatus and method for operating double product outer syndrome}

본 발명은 광 디스크에서 재생된 데이터 스트림의 에러 유무를 판별하기 위하여 PO(Product Outer) 신드롬(syndrome)을 연산하는 PO 신드롬 연산장치 및 방법에 관한 것으로 특히 이중(double)으로 PO 신드롬을 연산하는 이중 PO 신드롬 연산장치 및 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a PO syndrome calculating device and method for calculating a PO (Product Outer) syndrome in order to determine an error of a data stream reproduced on an optical disc. The present invention relates to a PO syndrome calculating device and method.

DVD(Digital Video Disc) 등의 광 디스크는 소정의 숫자, 문자, 도형, 음성은 물론 동화상까지도 기록하고 재생할 수 있을 뿐만 아니라, 디지털 기록 방식을 사용하고 있으므로 반복 재생을 하여도 화질의 저하를 염려할 필요가 없는 매우 우수한 기록매체이다.Optical discs such as DVDs (Digital Video Discs) can record and play back certain numbers, letters, figures, and voices, as well as moving images, and use digital recording. There is no need for a very good recording medium.

이러한 광 디스크를 사용하는 DVD 플레이어 등의 광 디스크 기록재생기기들은 광 픽업부를 통해 광 디스크에 소정의 데이터 스트림을 기록하고, 재생하여 출력하고 있다.Optical disc recording and reproducing apparatus such as a DVD player using such an optical disc records, reproduces and outputs a predetermined data stream on the optical disc via the optical pickup unit.

상기 광 디스크에 기록된 데이터 스트림을 정확하게 재생할 수 있도록 하기 위하여 광 디스크 기록재생기기들은 광 디스크에 데이터 스트림을 기록할 경우에 먼저 데이터 스트림에 소정의 에러 정정부호를 삽입하고, 그 에러 정정부호를 삽입한 데이터 스트림을 광 디스크에 적합하게 변조한 후 광 디스크에 기록하고 있다.In order to accurately reproduce the data stream recorded on the optical disc, the optical disc recording / reproducing apparatus first inserts an error correction code into the data stream and then inserts the error correction code into the data stream when recording the data stream onto the optical disc. One data stream is modulated for an optical disk and then recorded on the optical disk.

그리고 광 디스크에 기록된 데이터 스트림을 재생할 경우에는 광 디스크에서 데이터 스트림을 독출하고, 복조한 후 상기 데이터 스트림의 기록시 그 데이터 스트림에 삽입한 에러 정정부호를 이용하여 재생된 데이터 스트림의 에러를 정정하게 된다.When reproducing the data stream recorded on the optical disc, the data stream is read from the optical disc, demodulated, and the error of the reproduced data stream is corrected by using the error correction code inserted in the data stream when the data stream is recorded. Done.

광 디스크에서 독출된 데이터 스트림들의 에러를 정정하기 위하여 RS(Reed - Solomon) 부호를 디코딩하는 알고리즘으로는 Berlekamp-Massey 알고리즘, Euclid 알고리즘 및 Peterson 알고리즘 등이 알려져 있고, 이들 알고리즘은 모두 에러위치 다항식(error locator polynomial)을 이용하여 에러의 발생위치를 구할 수 있다.Algorithms for decoding RS (Reed-Solomon) codes to correct errors in data streams read from optical discs are known as Berlekamp-Massey algorithm, Euclid algorithm, and Peterson algorithm, all of which are error-position polynomials (error) The location of the error can be found using the locator polynomial.

즉, 에러위치 다항식은 신드롬(syndrome)으로부터 에러의 발생위치를 구할 수 있는 정보를 가지고 있고, 상기한 알고리즘들은 상기 에러위치 다항식의 계수와의 연립방정식을 푸는 해법을 나름대로의 이론으로 정리한 것으로서 에러의 발생위치를 구할 수 있다.That is, the error location polynomial has information for finding the location of error occurrence from the syndrome, and the above algorithms are a theory of the solution of solving the system of equations with the coefficients of the error location polynomial. The occurrence position of can be found.

광 디스크 기록재생기기에서 ECC(Error Correction Code)는 인터리브드 프로덕트 코드(interleaved product code)로서 인너 코드(inner code)와, 아우터 코드(outer code)로 이루어져 있다. 즉, 도 1에 도시된 바와 같이 하나의 ECC 블록은 172 바이트의 데이터 심볼(symbol)과 10개의 패리티 바이트로 이루어진 182개의 열을 가지고 있고, 192개의 데이터 심볼과 16개의 패리티 심볼을 가지는 208개의 행을 가지고 있는 것으로서 PI(Product Inner) 정정에서는 5개의 에러까지 정정할 수 있고, PO 정정에서는 8개의 에러 또는 16개의 이레이저(eraser)까지 정정할 수 있다.In an optical disc recorder, an ECC (Error Correction Code) is composed of an inner code and an outer code as an interleaved product code. That is, as illustrated in FIG. 1, one ECC block has 182 columns of 172 bytes of data symbols and 10 parity bytes, and 208 rows of 192 data symbols and 16 parity symbols. In the PI (Product Inner) correction, up to 5 errors can be corrected, and in PO correction, up to 8 errors or 16 erasers can be corrected.

광 디스크 기록재생기기에서 디코더의 기본적인 역할은 재생된 데이터 스트림에 에러가 포함되어 있으면, 이 에러를 정정하여 원래의 데이터로 복원하는 것이다. 그러나 데이터 스트림의 어느 위치에 에러가 발생하였고, 에러 값이 얼마이며, 몇 개의 에러가 발생하였는지를 알 수 없고, 유일한 정보는 데이터 스트림을 엔코딩하면서 삽입한 패리티 비트로부터 에러의 발생에 관련된 정보를 얻게 된다.The basic role of the decoder in the optical disc recording / reproducing apparatus is to restore the original data by correcting the error if the reproduced data stream contains an error. However, it is not possible to know where the error occurred in the data stream, how much the error value is, and how many errors occurred, and the only information is information related to the occurrence of the error from the parity bits inserted while encoding the data stream. .

디코더는 PI 정정 및 PO 정정을 수행할 경우에 도 2에 도시된 바와 같이 단계(100)에서 데이터 스트림을 입력하고, 단계(102)에서 ECC 블록 데이터로 신드롬을 연산하여 단계(104)에서 상기 데이터 스트림에 에러가 발생되었는지의 여부를 판단한다.When the decoder performs PI correction and PO correction, as shown in FIG. 2, the decoder inputs a data stream in step 100, and in step 102, computes a syndrome with ECC block data, and in step 104, the data. Determines whether an error has occurred in the stream.

상기 단계(104)에서 에러가 없는 것으로 판단되면, 바로 종료한다. 그리고 상기 단계(104)에서 에러가 발생하였다고 판단되면, 단계(106)에서 에러위치 다항식을 연산하고, 단계(108)에서 상기 연산한 에러위치 다항식을 이용하여 에러의 발생위치를 찾아내며, 단계(110)에서 상기 찾아낸 에러의 발생위치에 해당되는 에러 값을 판별한 후 단계(112)에서 상기 판별한 에러 값을 데이터 스트림에 가산하여 에러를 정정하고, 에러가 없는 원래의 데이터 스트림으로 복원하게 된다.If it is determined in step 104 that there are no errors, the process ends immediately. If it is determined that an error has occurred in step 104, the error location polynomial is calculated in step 106, and the error location polynomial is found using the calculated error location polynomial in step 108, and the step ( In step 110, the error value corresponding to the occurrence of the found error is determined, and in step 112, the determined error value is added to the data stream to correct the error, and the original data stream without error is restored. .

이러한 에러 정정 동작을 수행하는 디코더에 있어서, ECC 정정을 수행하기 위해서는 상기 도 1에 도시된 ECC 블록 데이터를 미리 저장하고 있어야 되는 것으로서 데이터의 고속 처리와 고용량을 위하여 16Mbit의 SDRAM(synchronous dynamic random access memory) 또는 그 이상의 하이엔드(high-end) 메모리를 버퍼 메모리로 사용하여 ECC 블록 데이터를 저장하고 있다.In the decoder that performs such an error correction operation, in order to perform ECC correction, the ECC block data shown in FIG. 1 must be stored in advance. A 16 Mbit synchronous dynamic random access memory (SDRAM) can be used for high-speed data processing and high capacity. ) Or more high-end memory is used as buffer memory to store ECC block data.

그리고 상기한 도 1의 ECC 블록 데이터를 버퍼 메모리에 저장하여 두고, PI 정정 및 PO 정정을 할 경우에 그 버퍼 메모리에서 ECC 블록 데이터를 리드해야 하며, 이 때, 메모리의 액세스 효율을 고려하여 ECC 블록 데이터의 메모리 맵을 구성하고 있다.The ECC block data of FIG. 1 is stored in the buffer memory, and ECC block data must be read from the buffer memory when PI correction and PO correction are performed. In this case, the ECC block data is considered in consideration of the access efficiency of the memory. It constitutes a memory map of data.

PI 정정을 수행할 경우에는 버퍼 메모리를 행 방향으로 액세스하여 ECC 블록 데이터를 독출하므로 버퍼 메모리의 페이지 모드(page mode)를 이용하여 효율적으로 ECC 블록 데이터를 독출할 수 있다. 그러나 PO 정정을 수행할 경우에는 버퍼 메모리를 열 방향으로 액세스하여 ECC 블록 데이터를 독출해야 되므로 PI 정정에 비하여 버퍼 메모리의 많은 밴드위드(bandwidth)가 소요된다.When the PI correction is performed, the ECC block data is read by accessing the buffer memory in a row direction, so that the ECC block data can be efficiently read using the page mode of the buffer memory. However, when performing the PO correction, it is necessary to access the buffer memory in the column direction to read the ECC block data, which requires more bandwidth of the buffer memory than the PI correction.

그러므로 적절한 버퍼메모리의 밴드위드를 확보하기 위해서는 PO 정정에서 버퍼 메모리를 액세스하여 ECC 블록 데이터를 독출하는 것이 중요한 요소로 고려되고 있다.Therefore, in order to secure a bandwith of an appropriate buffer memory, accessing the buffer memory to read ECC block data in PO correction is considered as an important factor.

따라서 본 발명의 목적은 PO 신드롬을 연산할 경우에 ECC 블록 데이터의 액세스 요구를 줄여 버퍼 메모리의 밴드위드를 향상시키고 PO 신드롬의 연산 소요시간을 1/2배로 단축시킬 수 있는 이중 PO 신드롬 연산장치 및 방법을 제공하는데 있다.Accordingly, an object of the present invention is to improve the bandwidth of the buffer memory by reducing the access request of the ECC block data when calculating the PO syndrome, dual PO syndrome calculation device that can reduce the calculation time of the PO syndrome by 1/2 times and To provide a method.

본 발명의 다른 목적은 PI 신드롬 연산을 위한 연산장치와 공용할 수 있는 이중 PO 신드롬 연산장치 및 방법을 제공하는데 있다.Another object of the present invention is to provide a dual PO syndrome calculation device and method that can be shared with the calculation device for PI syndrome calculation.

본 발명의 또 다른 목적은 기존의 ECC 정정인 PI 정정 →PO 정정 이외에도 PI 정정 → PO 정정 → PI 정정 또는 PI 정정 → PO 정정 →PI 정정 →PO 정정에도 유리한 이중 PO 신드롬 연산장치 및 방법을 제공하는데 있다.Another object of the present invention is to provide a dual PO syndrome calculation apparatus and method which is advantageous for PI correction → PO correction → PI correction or PI correction → PO correction → PI correction → PO correction in addition to the PI correction → PO correction, which is an existing ECC correction. have.

이러한 목적을 가지는 본 발명의 이중 PO 신드롬 연산장치 및 방법은 ECC 정정에서 PO 신드롬의 연산을 이중으로 수행하여 버퍼 메모리의 밴드위드에서 가장 많이 차지하는 ECC 블록 데이터의 액세스 요구를 1/2로 줄인다.The dual PO syndrome calculating device and method of the present invention having such a purpose reduces the access request of the ECC block data, which occupies the most in the bandweed of the buffer memory, by doubling the operation of the PO syndrome in ECC correction.

즉, ECC 정정을 수행할 경우에 ECC 블록 데이터가 필요하고, 그 ECC 블록 데이터를 저장하기 위하여 DRAM 등이 버퍼 메모리로 사용되고 있다. 그리고 상기 버퍼 메모리는 워드 단위(2바이트)로 ECC 블록 데이터를 기록하고 독출하는 것이 가능하다.In other words, when performing ECC correction, ECC block data is required, and a DRAM or the like is used as a buffer memory to store the ECC block data. The buffer memory can write and read ECC block data in word units (2 bytes).

종래에는 단일(single) PO 신드롬을 연산할 경우에 버퍼 메모리를 액세스하여 워드 단위로 ECC 블록 데이터를 독출하고, 독출한 ECC 블록 데이터 중에서 홀수 번째 PO ECC에 해당하는 열의 블록 데이터를 선택하여 PO 신드롬을 연산하고 있다.Conventionally, when calculating a single PO syndrome, a buffer memory is read to read ECC block data in word units, and block data of a column corresponding to an odd-numbered PO ECC is selected from the read ECC block data. Calculating

그리고 이웃하는 짝수 번째 PO ECC에 해당하는 열의 블록 데이터를 선택하여 PO 신드롬을 연산할 경우에 다시 버퍼 메모리의 동일한 어드레스를 액세스하여 ECC 블록 데이터를 독출하게 되므로 버퍼 메모리의 밴드위드의 효율성이 떨어지게 된다.In addition, when the block data of the column corresponding to the even-numbered PO ECC is selected to calculate the PO syndrome, the ECC block data is read again by accessing the same address of the buffer memory, thereby reducing the efficiency of bandweed of the buffer memory.

본 발명에서는 버퍼 메모리를 액세스하여 ECC 블록 데이터를 독출할 경우에 2개 열의 PO 신드롬을 함께 연산하여 전체적으로 버퍼 메모리의 밴드위드를 향상시킨다.In the present invention, when reading ECC block data by accessing the buffer memory, two rows of PO syndromes are calculated together to improve the bandweed of the buffer memory as a whole.

그러므로 본 발명의 이중 PO 신드롬 연산장치는, PO 신드롬의 연산을 제어하는 제어부의 제어에 따라 버퍼 메모리가 미리 저장하고 있는 ECC 블록 데이터를 2바이트씩 독출하고, 그 버퍼 메모리에서 독출된 2바이트의 ECC 블록 데이터와, 미리 설정된 생성 다항식의 근을 이중 PO 신드롬 연산부가 입력받아 이중으로 PO 신드롬을 연산하는 것을 특징으로 한다.Therefore, the dual PO syndrome calculating device of the present invention reads the ECC block data stored in advance by the buffer memory by two bytes according to the control of the control unit controlling the operation of the PO syndrome, and the two-byte ECC read out of the buffer memory. The dual PO syndrome calculating unit receives the block data and the root of the predetermined generation polynomial, and double-operates the PO syndrome.

상기 이중 PO 신드롬 연산부는, 짝수 열 PO 신드롬 연산부 및 홀수 열 PO 신드롬 연산부를 구비하는 것으로서 짝수 열 PO 신드롬 연산부는, 상기 버퍼메모리로부터 입력받은 2바이트의 ECC 블록 데이터중에서 하위 바이트의 데이터와 생성 다항식의 근으로 PO 신드롬을 연산하고, 상기 짝수 열 PO 신드롬 연산부는, 상기 버퍼메모리로부터 입력받은 2바이트의 ECC 블록 데이터중에서 상위 바이트의 데이터와 생성 다항식의 근으로 PO 신드롬을 연산하며, 상기 짝수 열 PO 신드롬 연산부 및 홀수 열 PO 신드롬 연산부는 모두, 복수의 신드롬 출력부가 신드롬을 연산하여 출력하고, 그 복수의 신드롬 출력부에서 출력되는 복수의 신드롬과 미리 설정된 생성 다항식의 복수의 근을 복수의 논리 곱 수단이 각기 논리 곱하며, 상기 논리 곱 수단의 출력신호와 상기 ECC 블록 데이터를 논리 합 수단이 논리 합한 후 신드롬 출력부로 입력시키게 구성되는 것을 특징으로 한다.The dual PO syndrome calculating unit includes an even column PO syndrome calculating unit and an odd column PO syndrome calculating unit. The even column PO syndrome calculating unit includes a lower byte of data and a generated polynomial among 2 bytes of ECC block data received from the buffer memory. The PO column is computed by the operation, and the even-numbered PO PO calculation unit is configured to calculate the PO syndrome from the root of the high-order byte data and the generated polynomial among two-byte ECC block data received from the buffer memory. Both arithmetic unit and odd column PO syndrome arithmetic unit, a plurality of syndrome output unit calculates and outputs a syndrome, and a plurality of logical multiplying means performs a plurality of syndromes outputted from the plurality of syndrome output units and a plurality of roots of a predetermined generation polynomial. Logical multiplication, and the output signal of the logical multiplication means and the ECC block And the logic sum means inputs the data to the syndrome output unit after the logic sum means.

그리고 본 발명의 이중 PO 신드롬 연산방법은, 제어부가 버퍼 메모리에서 2바이트씩 ECC 블록 데이터를 독출하고, 상기 독출한 2바이트의 ECC 블록 데이터를 하위 바이트 및 상위 바이트로 구분하며, 구분한 하위 바이트 및 상위 바이트와, 설정된 생성 다항식의 근을 짝수 열 PO 신드롬 연산부 및 홀수 열 PO 신드롬 연산부가 각기 입력받아 신드롬을 연산하는 것을 특징으로 한다.In the dual PO syndrome calculation method of the present invention, the control unit reads ECC block data by 2 bytes from the buffer memory, divides the read 2 byte ECC block data into lower bytes and higher bytes, and divides the lower bytes and The even-order column PO syndrome calculation unit and the odd-numbered column PO syndrome calculation unit respectively receive the upper byte and the root of the set generation polynomial, and calculate a syndrome.

도 1은 에러 정정을 위한 ECC 블록 데이터의 구성을 보인 도면이고,1 is a view showing the configuration of ECC block data for error correction,

도 2는 일반적인 PI 및 PO 에러 정정과정을 보인 신호흐름도이며,2 is a signal flow diagram showing a general PI and PO error correction process,

도 3은 본 발명의 신드롬 연산장치의 구성을 보인 도면이며,3 is a view showing the configuration of the syndrome calculation device of the present invention,

도 4는 신드롬 연산장치의 기본 구성을 보인 도면이며,4 is a view showing a basic configuration of a syndrome calculation device,

도 5는 본 발명의 이중 PO 신드롬 연산장치의 동작을 설명하기 위한 도면이며,5 is a view for explaining the operation of the dual PO syndrome calculation device of the present invention,

도 6은 본 발명의 이중 PO 신드롬 연산장치에서 이중 신드롬 연산부의 구성을 보인 도면이며,6 is a view showing the configuration of a dual syndrome calculation unit in the dual PO syndrome calculation device of the present invention,

도 7은 본 발명의 이중 PO 신드롬 연산방법에 따라 이중 PO 신드롬을 연산한 후 에러정정을 수행하는 과정을 보인 신호흐름도이다.7 is a signal flow diagram illustrating a process of performing error correction after calculating a double PO syndrome according to the dual PO syndrome calculation method of the present invention.

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

200 : 제어부 210 : 버퍼 메모리200: control unit 210: buffer memory

220 : 이중 PO 신드롬 연산부 221 : 짝수 열 PO 신드롬 연산부220: dual PO syndrome calculation unit 221: even column PO syndrome calculation unit

223 : 홀수 열 PO 신드롬 연산부 300 : 신드롬 출력부223: odd column PO syndrome calculation unit 300: syndrome output unit

302 : 논리 합 수단 304 : 논리 곱 수단302: logical sum means 304: logical product means

이하, 첨부된 도면을 참조하여 본 발명의 이중 PO 신드롬 연산장치 및 방법을 상세히 설명한다.Hereinafter, a dual PO syndrome calculating device and a method of the present invention will be described in detail with reference to the accompanying drawings.

도 3은 본 발명의 이중 PO 신드롬 연산장치의 구성을 보인 도면이다. 이에 도시된 바와 같이 PO 신드롬의 연산을 제어하는 제어부(200)와, ECC 블록 데이터를 미리 저장하고 상기 제어부(200)의 제어에 따라 2바이트씩 독출하는 버퍼 메모리(210)와, 상기 버퍼 메모리(210)에서 독출된 2바이트의 ECC 블록 데이터와 미리 설정되어 있는 생성 다항식의 근(αO∼α15)으로 신드롬을 연산하는 이중 PO 신드롬 연산부(220)로 이루어진다.3 is a view showing the configuration of a dual PO syndrome calculation device of the present invention. As shown therein, the control unit 200 controls the operation of the PO syndrome, a buffer memory 210 which stores ECC block data in advance and reads the data by 2 bytes according to the control of the control unit 200, and the buffer memory. It consists of a double PO syndrome calculation unit 220 that calculates the syndrome using the two-byte ECC block data read out at 210 and the roots α O to α 15 of the generation polynomial set in advance.

이러한 구성을 가지는 본 발명의 이중 PO 신드롬 연산장치는 이중 PO 신드롬을 연산할 경우에 제어부(200)의 제어에 따라 버퍼 메모리(210)가 미리 저장되어 있는 ECC 블록 데이터를 2바이트씩 출력하게 된다. 이 때, 제어부(200)는 버퍼 메모리(210)의 어드레스를 열 방향으로 액세스하여 버퍼 메모리(210)가 저장된 ECC 블록 데이터를 열 방향으로 2바이트씩 출력하게 된다.The dual PO syndrome calculating device of the present invention having such a configuration outputs the ECC block data, which is pre-stored by the buffer memory 210, by two bytes when the dual PO syndrome is calculated. At this time, the controller 200 accesses the address of the buffer memory 210 in the column direction, and outputs the ECC block data stored in the buffer memory 210 by 2 bytes in the column direction.

상기 버퍼 메모리(210)가 출력하는 ECC 블록 데이터를 이중 PO 신드롬 연산부(220)가 입력받고, 또한 설정된 생성 다항식의 근(αO∼α15)을 이중 PO 신드롬 연산부(220)가 입력받아 짝수 번째 및 홀수 번째 열의 신드롬을 각기 계산한 후 출력한다.The dual PO syndrome calculation unit 220 receives the ECC block data output from the buffer memory 210, and the double PO syndrome calculation unit 220 receives the root (α O ˜ α 15 ) of the set generation polynomial. And after calculating the syndrome of the odd-numbered column, respectively.

여기서, 상기 이중 PO 신드롬 연산부(220)의 구성을 보다 상세히 설명한다.Here, the configuration of the dual PO syndrome calculation unit 220 will be described in more detail.

먼저, 에러가 발생하지 않은 데이터 스트림 W(x)는 다음의 수학식 1과 같이 표현된다.First, the data stream W (x) in which no error occurs is represented by Equation 1 below.

W(x) = rn-1xn-1+ rn-2xn-2+ ㆍㆍㆍ + r1x1+ r0x0 W (x) = r n-1 x n-1 + r n-2 x n-2 + ... + r 1 x 1 + r 0 x 0

여기서, r은 데이터 스트림 각각의 바이트 단위의 심볼이고, x는 심볼의 위치이다.Where r is a symbol in bytes of each data stream and x is the position of the symbol.

그리고 상기 데이터 스트림 W(x)를 광 디스크에 기록한 후 독출하고, 독출한 데이터 스트림에 에러가 포함되어 있다고 가정할 경우에 데이터 스트림의 전체 에러 e(x)는 다음의 수학식 2와 같이 표현될 수 있다.When the data stream W (x) is recorded on the optical disk and then read, and assuming that an error is included in the read data stream, the total error e (x) of the data stream may be expressed as in Equation 2 below. Can be.

e(x) = en-1xn-1+ en-2xn-2+ ㆍㆍㆍ + e1x1+ e0x0 e (x) = e n-1 x n-1 + e n-2 x n-2 + ... + e 1 x 1 + e 0 x 0

여기서, e는 에러이다.Where e is an error.

그러므로 광 디스크에서 독출한 데이터 스트림 즉, 에러가 포함되어 있는 데이터 스트림 R(x)는 다음의 수학식 3과 같이 표현될 수 있다.Therefore, the data stream read from the optical disc, that is, the data stream R (x) containing the error, may be expressed as in Equation 3 below.

R(x) = c(x) + e(x)R (x) = c (x) + e (x)

ri= ci+ ei(0≤i ≤n-1)r i = c i + e i (0≤i≤n-1)

여기서, c(x)는 에러가 삽입되지 않은 데이터 스트림이다.Here, c (x) is a data stream in which no error is inserted.

그러므로 설정된 생성 다항식의 근(α0∼αn-k-1)(여기서, n은 데이터 스트림에 패리티를 가산한 개수이고, k는 데이터 스트림의 개수이다.)을 데이터 스트림R(x)에 대입하고, 그 값이 0인가를 판별하여 에러의 유무를 조사할 수 있고, 만일 0이 아닐 경우에 1개 이상의 에러가 존재하는 것으로 판단하여 에러 정정을 수행한다.Therefore, the root of the set polynomial (α 0 to α n -k-1 ), where n is the number of parities added to the data stream and k is the number of data streams, is assigned to the data stream R (x). Then, it is determined whether the value is 0, and whether or not there is an error can be checked. If it is not 0, it is determined that one or more errors exist and error correction is performed.

이와 같이 생성다항식의 모든 근(α0∼αn-k-1)을 대입하여 구해지는 값이 신드롬이고, ECC 정정의 기초가 된다.In this way, the value obtained by substituting all roots α 0 to α n -k-1 of the generated polynomial is a syndrome, which is the basis for ECC correction.

신드롬의 연산은 다음의 수학식 5와 같이 표현될 수 있다.The operation of the syndrome may be expressed as in Equation 5 below.

상기 수학식 5는 하드웨어의 설계를 용이하게 하기 위하여 수학식 6과 같이 변형시킬 수 있다.Equation 5 may be modified as shown in Equation 6 to facilitate the design of hardware.

상기 수학식 6을 하드웨어로 구성하면 도 4에 도시된 바와 같이 신드롬 출력부(300)에서 출력되는 신드롬을 생성 다항식의 근 αj와 논리 곱 수단(302)에서 논리 곱하고, 논리 곱 수단(302)의 출력신호와 데이터 스트림 R(x)를 논리 합 수단(304)으로 논리 합하여 상기 신드롬 출력부(300)로 출력하는 논리 합 수단(306)으로 이루어진다.When Equation 6 is configured as hardware, the syndrome output from the syndrome output unit 300 is logically multiplied by the root α j of the generated polynomial by the logical multiplication means 302 as shown in FIG. 4, and the logical multiplication means 302. Logic summation means 306 for logical summation of the output signal and the data stream R (x) to the logic summation unit 304 and output to the syndrome output unit 300.

이러한 PO 신드롬 연산장치로 PO 신드롬을 연산할 경우에 버퍼 메모리(210)에서 ECC 블록 데이터를 열 방향으로 독출해야 된다. 상기 ECC 블록 데이터는 열 방향으로 208 바이트의 블록 데이터로 구성되어 있고, 그 208 바이트의 블록 데이터 내에는 16 바이트의 패리티가 존재한다.When the PO syndrome is calculated by the PO syndrome calculating device, the ECC block data must be read in the column direction from the buffer memory 210. The ECC block data is composed of 208 bytes of block data in the column direction, and there are 16 bytes of parity in the 208 bytes of block data.

본 발명에서는 이중 PO 신드롬을 연산할 경우에 상기한 바와 같이 먼저 버퍼 메모리(210)에 저장되어 있는 ECC 블록 데이터를 열 방향으로 독출한다. 이 때, 상기 버퍼 메모리(210)는 2 바이트씩 데이터를 기록 및 독출할 수 있는 것으로서 독출한 2바이트의 ECC 블록 데이터에서 하위 바이트의 데이터(B0,0, B1,0,···, B207,0)를 이용하여 짝수 번째 열의 PO 신드롬을 연산한다. 그리고 짝수 번째 열의 PO 신드롬 연산과 동시에 상기 버퍼 메모리에서 독출한 상위 바이트의 데이터(B0,1, B1,1,···, B207,1)를 이용하여 홀수 번째 열의 PO 신드롬 연산을 수행한다.In the present invention, when calculating the double PO syndrome, the ECC block data stored in the buffer memory 210 is first read in the column direction as described above. At this time, the buffer memory 210 is capable of writing and reading data by two bytes, and thus, the lower byte data B 0,0 , B 1,0 ,... B 207,0 ) is used to compute the even syndrome of PO syndromes. In addition, the PO syndrome of the odd-numbered column is performed using the data of the upper byte B 0,1 , B 1,1 ,. do.

즉, 본 발명은 도 5에 도시된 바와 같이 버퍼 메모리(210)에서 독출한 ECC 블록 데이터를 하위 바이트의 데이터(B0,0, B1,0,···, B207,0)와 상위 바이트의 데이터(B0,1, B1,1,···, B207,1)를 구분하고, 구분한 하위 바이트의 데이터(B0,0, B1,0,···, B207,0)는 짝수 번째 열의 PO 신드롬을 연산하는 짝수 열 PO 신드롬 연산부(221)에 입력시키며, 상위 바이트의 데이터(B0,1, B1,1,···, B207,1)는 홀수 번째 열의 PO 신드롬을 연산하는 홀수 열 PO 신드롬 연산부(223)에 입력시켜 짝수 열 PO 신드롬 연산부(221) 및 홀수 열 PO 신드롬 연산부(223)가 각기 하위 바이트의 데이터(B0,0, B1,0,···, B207,0) 및 상위 바이트의 데이터(B0,1, B1,1,···,B207,1)와, 설정된 생성 다항식의 근 α0∼α15로 짝수 열 PO 신드롬 및 홀수 열 PO 신드롬을 연산하게 구성된다.That is, according to the present invention, as illustrated in FIG. 5, the ECC block data read from the buffer memory 210 is different from the lower byte data B 0,0 , B 1,0 ,..., B 207,0 . Byte data (B 0,1 , B 1,1 ,..., B 207,1 ) are divided, and the lower byte data (B 0,0 , B 1,0 ,..., B 207) , 0 ) is input to the even column PO syndrome calculation unit 221 for calculating the PO syndrome of the even column, and the data (B 0,1 , B 1,1 ,..., 207,1 ) of the upper byte is odd. the second column PO PO odd columns as input to a syndrome calculation unit 223, even columns PO syndrome calculation unit 221 and the odd column PO syndrome calculation unit 223, a lower byte, respectively for calculating the syndrome data (B 0,0, B 1, 0 ,..., B 207,0 ) and the data of the high byte (B 0,1 , B 1,1 ,..., B 207,1 ) and the root α 0 to α 15 of the set generation polynomial Calculate column PO syndromes and odd column PO syndromes.

이러한 본 발명의 이중 PO 신드롬 연산부(220)를 도 4의 신드롬 출력부를 이용하여 하드웨어로 표시하면, 도 6에 도시된 바와 같이 구성된다. 즉, 짝수 열 PO 신드롬 연산부(221)는, 하위 바이트의 데이터와 복수의 논리 곱 수단(302)의 출력신호가 복수의 논리 합 수단(304)에 각기 입력되어 논리 합되고, 복수의 논리 합 수단(304)의 출력신호가 복수의 신드롬 출력부(300)로 각기 입력되며, 복수의 신드롬 출력부(300)는 복수의 논리 합 수단(304)으로부터 입력받은 신호로 각기 신드롬(S0∼S15)을 연산하여 출력한다.When the dual PO syndrome calculation unit 220 of the present invention is displayed in hardware using the syndrome output unit of FIG. 4, the dual PO syndrome calculation unit 220 is configured as shown in FIG. 6. That is, the even-numbered column PO syndrome calculation unit 221 is configured to logically sum the data of the lower byte and the output signals of the plurality of logical multiplication means 302 by inputting them to the plurality of logical sum means 304, respectively, 304 output signal is input to each of the plurality of the syndrome output unit 300 of the plurality of the syndrome output unit 300 are each syndrome as signals received from a plurality of means 304 the logical sum (S 0 ~S 15 ) And output.

그리고 상기 복수의 신드롬 출력부(300)가 출력한 신드롬(S0∼S15)은 복수의 논리 곱 수단(302)에 각기 입력되어 설정된 생성 다항식의 근(α0∼α15)과 각기 논리 곱되고, 논리 곱 수단(302)의 출력신호는 상기 논리 합 수단(304)에 입력되어 하위 바이트의 데이터와 각기 논리 합된 후 신드롬 출력부(300)로 입력되어 신드롬(S0∼S15)을 연산 출력하게 된다.The syndromes S 0 to S 15 outputted by the plurality of syndrome output units 300 are respectively input to the plurality of logical multiplication means 302 and the roots of the generated polynomials α 0 to α 15 and the logical products respectively. The output signal of the logical multiplication means 302 is inputted to the logical sum means 304 to be logically summed with the data of the lower byte, and then input to the syndrome output part 300 to calculate syndromes S 0 to S 15 . Will print.

또한 홀수 열 PO 신드롬 연산부(223)는 상기한 짝수 열 PO 신드롬 연산부(223)와 마찬가지로 상위 바이트의 데이터와 설정된 생성 다항식의 근 α0∼α15로 신드롬(S0∼S15)을 연산하여 출력한다.In addition, the odd-numbered column PO syndrome calculation unit 223 outputs the computed syndromes to the muscle α 015 of the generator polynomial of the upper byte data and the set (S 0 ~S 15) as in the above even-numbered columns PO syndrome arithmetic unit 223 do.

도 7은 본 발명의 이중 PO 신드롬 연산방법에 따라 이중 PO 신드롬을 연산하고 에러정정을 수행하는 동작을 보인 신호흐름도이다. 이에 도시된 바와 같이 단계(400)에서 버퍼 메모리(210)로부터 열 방향으로 2바이트씩 ECC 블록 데이터를 독출한다.7 is a signal flow diagram illustrating an operation of calculating a double PO syndrome and performing error correction according to the dual PO syndrome calculation method of the present invention. As shown in FIG. 4, the ECC block data is read from the buffer memory 210 in the column direction at step 400.

그리고 다음 단계(402)에서 상기 독출한 ECC 블록 데이터를 하위 바이트의 데이터와 상위 바이트의 데이터를 구분하고, 단계(404)에서 상기 구분한 하위 바이트의 데이터와 상위 바이트의 데이터로 각기 짝수 번째 및 홀수 번째 열의 PO 신드롬을 연산한다.In the next step 402, the read ECC block data is divided into lower byte data and upper byte data, and in step 404, the even-numbered and odd-numbered data are divided into the lower byte data and the upper byte data, respectively. Compute the PO syndrome of the first column.

다음 단계(406)에서는 상기 연산한 PO 신드롬의 값으로 데이터 스트림에 에러가 발생하였는지의 여부를 판단하여 판단 결과 에러가 발생하지 않았을 경우에 종료하고, 에러가 발생하였을 경우에는 단계(408)에서 에러 정정과정을 수행하여 데이터 스트림의 에러를 정정한다.In the next step 406, it is determined whether an error has occurred in the data stream by using the calculated value of the PO syndrome, and if the error does not occur as a result of the determination, the error is terminated in step 408. A correction process is performed to correct an error in the data stream.

한편, 상기에서는 본 발명을 특정의 바람직한 실시 예에 관련하여 도시하고 설명하였지만, 이하의 특허청구범위에 의해 마련되는 본 발명의 정신이나 분야를 이탈하지 않는 한도 내에서 본 발명이 다양하게 개조 및 변화될 수 있다는 것을 당 업계에서 통상의 지식을 가진 자는 용이하게 알 수 있다. 예를 들면, 상기에서는 PO 정정을 수행할 경우에 이중으로 PO 신드롬을 연산하는 것을 예로 들어 설명한 것으로서 본 발명은 PO 신드롬의 연산에만 사용되지 않고, 간단히 PI 정정을 수행할 경우에 본 발명의 연산장치를 그대로 이용하여 PI 신드롬을 연산할 수도 있는 등 여러 가지로 변형 실시할 수 있다.On the other hand, while the present invention has been shown and described with respect to specific preferred embodiments, various modifications and changes of the present invention without departing from the spirit or field of the invention provided by the claims below It can be easily understood by those skilled in the art. For example, in the above description, the PO syndrome is doublely calculated when performing PO correction, and the present invention is not used only for the calculation of PO syndrome, and the computing device of the present invention is simply used when PI correction is performed. You can use it as it is to calculate the PI syndrome.

이상에서 상세히 설명한 바와 같이 본 발명은 재생된 데이터 스트림의 ECC 정정을 수행할 경우에 버퍼 메모리에서 한 번에 2바이트씩 독출되는 ECC 블록 데이터를 모두 이용하여 2중으로 PO 신드롬을 연산하는 것으로 버퍼 메모리의 밴드위드를 가장 많이 소요하는 PO 데이터의 액세스를 2배로 향상할 수 있다. 또한 PI 정정 → PO 정정 → PI 정정은 물론 PI 정정 → PO 정정 → PI 정정 → PO 정정으로 에러를 정정할 경우에 2바이트씩 처리하므로 에러 정정이 용이하고, 하드웨어의 가격 및 고속화 측면에서 이점이 있다. 즉, 데이터 스트림에 대하여 2열로 PO 신드롬을 계산하므로 시스템에 추가적인 고속 메모리나 버퍼 메모리의 어드레싱 방법을 사용하지 않고서도 버퍼 메모리를 효율적으로 사용할 수 있어 버퍼 메모리의 액세스 효율을 향상시킬 수 있고, 에러정정 처리의 고속화가 가능하다.As described in detail above, in the present invention, when performing ECC correction of a reproduced data stream, the PO syndrome is calculated in duplicate using all ECC block data read out from the buffer memory two bytes at a time. Access to PO data, which consumes the most bandwidth, can be doubled. In addition, since errors are corrected every two bytes when PI correction → PO correction → PI correction as well as PI correction → PO correction → PI correction → PO correction, error correction is easy and there is an advantage in terms of hardware cost and speed. . In other words, since the PO syndrome is calculated in two columns for the data stream, the buffer memory can be efficiently used without additional fast memory or buffer memory addressing method in the system, thereby improving the access efficiency of the buffer memory, and error correction. The processing can be speeded up.

Claims (5)

PO 신드롬의 연산을 제어하는 제어부;A control unit controlling an operation of the PO syndrome; ECC 블록 데이터를 미리 저장하고 상기 제어부의 제어에 따라 상기 저장한 데이터를 독출하는 버퍼 메모리; 및A buffer memory for storing ECC block data in advance and reading the stored data under control of the controller; And 상기 버퍼 메모리에서 독출된 ECC 블록 데이터와, 설정된 생성 다항식의 근을 입력받아 짝수 열과 홀수 열의 PO 신드롬 각각을 이중으로 신드롬 연산하는 이중 PO 신드롬 연산부로 구성됨을 특징으로 하는 이중 PO 신드롬 연산장치.And a dual PO syndrome calculation unit configured to receive the ECC block data read from the buffer memory and the root of the generated polynomial, and perform syndromes on each of the even and odd column PO syndromes. 제1항에 있어서, 상기 이중 PO 신드롬 연산부는;The apparatus of claim 1, wherein the dual PO syndrome calculating unit comprises; 상기 버퍼메모리로부터 입력받은 2바이트의 ECC 블록 데이터에서 하위 바이트의 데이터와 생성 다항식의 근으로 PO 신드롬을 연산하는 짝수 열 PO 신드롬 연산부; 및An even-numbered PO syndrome calculation unit configured to calculate a PO syndrome from the low-byte data and the root of the generated polynomial from the 2-byte ECC block data received from the buffer memory; And 상기 버퍼메모리로부터 입력받은 2바이트의 ECC 블록 데이터에서 상위 바이트의 데이터와 생성 다항식의 근으로 PO 신드롬을 연산하는 홀수 열 PO 신드롬 연산부로 구성됨을 특징으로 하는 이중 PO 신드롬 연산장치.And an odd-numbered PO syndrome calculation unit configured to calculate a PO syndrome from the two-byte ECC block data input from the buffer memory and the data of the upper byte and the root of the generated polynomial. 제2항에 있어서, 상기 짝수 및 홀수 열 PO 신드롬 연산부는;3. The apparatus of claim 2, wherein the even and odd column PO syndrome calculation unit; 다음의 수학식 6으로 PO 신드롬을 연산하는 것을 특징으로 하는 이중 PO 신드롬 연산장치.A dual PO syndrome calculation device, characterized in that for calculating the PO syndrome by the following equation (6). 수학식 6Equation 6 여기서, S는 PO 신드롬이고, r은 데이터 스트림 각각의 바이트 단위의 심볼이며, α는 생성 다항식의 근이며, n 및 j는 상수이다.Where S is a PO syndrome, r is a symbol in bytes for each data stream, α is the root of the generation polynomial, and n and j are constants. 제2항에 있어서, 상기 짝수 및 홀수 열 PO 신드롬 연산부는;3. The apparatus of claim 2, wherein the even and odd column PO syndrome calculation unit; 신드롬을 연산하여 출력하는 복수의 신드롬 출력부;A plurality of syndrome output units for calculating and outputting syndromes; 상기 복수의 신드롬 출력부에서 출력되는 복수의 신드롬과 설정된 생성 다항식의 복수의 근을 각기 논리 곱하는 복수의 논리 곱 수단; 및A plurality of logical multiplication means for respectively logically multiplying a plurality of syndromes output from the plurality of syndrome output units and a plurality of roots of a set generation polynomial; And 상기 논리 곱 수단의 출력신호와 상기 ECC 블록 데이터를 논리 합하여 상기 신드롬 출력부로 입력시키는 논리 합 수단으로 구성됨을 특징으로 하는 이중 PO 신드롬 연산장치.And a logical sum means for logically adding the output signal of the logical multiplication means and the ECC block data to the syndrome output unit. 제어부가 버퍼 메모리에서 2바이트씩 ECC 블록 데이터를 독출하는 제1과정;A first step of the control unit reading ECC block data by 2 bytes from the buffer memory; 상기 제1과정에서 독출한 2바이트의 ECC 블록 데이터를 하위 바이트 및 상위 바이트로 구분하는 제2과정; 및A second step of dividing the two bytes of ECC block data read in the first step into a lower byte and an upper byte; And 상기 제2과정에서 구분한 하위 바이트 및 상위 바이트와, 설정된 생성 다항식의 근을 짝수 열 PO 신드롬 연산부 및 홀수 열 PO 신드롬 연산부가 각기 입력받아 신드롬을 연산하는 제3과정으로 이루어짐을 특징으로 하는 이중 PO 신드롬 연산방법.A double PO comprising a third process of calculating the syndrome by receiving the even-numbered PO PO calculation unit and the odd-numbered PO PO syndrome calculation unit respectively from the lower byte and the upper byte and the root of the generated polynomial set in the second process. Syndrome calculation method.
KR1020020013153A 2002-03-12 2002-03-12 Apparatus and method for operating double product outer syndrome KR20030073532A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020020013153A KR20030073532A (en) 2002-03-12 2002-03-12 Apparatus and method for operating double product outer syndrome

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020020013153A KR20030073532A (en) 2002-03-12 2002-03-12 Apparatus and method for operating double product outer syndrome

Publications (1)

Publication Number Publication Date
KR20030073532A true KR20030073532A (en) 2003-09-19

Family

ID=32224358

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020013153A KR20030073532A (en) 2002-03-12 2002-03-12 Apparatus and method for operating double product outer syndrome

Country Status (1)

Country Link
KR (1) KR20030073532A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000165259A (en) * 1998-11-27 2000-06-16 Nec Corp Data decoding processor and its method
JP2001292066A (en) * 2000-01-31 2001-10-19 Sanyo Electric Co Ltd Error correction device and error correction method
JP2002050968A (en) * 1999-11-24 2002-02-15 Sanyo Electric Co Ltd Error correcting apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000165259A (en) * 1998-11-27 2000-06-16 Nec Corp Data decoding processor and its method
JP2002050968A (en) * 1999-11-24 2002-02-15 Sanyo Electric Co Ltd Error correcting apparatus
JP2001292066A (en) * 2000-01-31 2001-10-19 Sanyo Electric Co Ltd Error correction device and error correction method

Similar Documents

Publication Publication Date Title
KR100415136B1 (en) Meth0d and apparatus for c0rrecting data errors
KR100573356B1 (en) An ecc system employing a data buffer for storing codeword data and a syndrome buffer for storing error syndromes
JP2605271B2 (en) Error correction and checking device
KR100517482B1 (en) Concurrent row/column syndrome generator for a product code
US5546409A (en) Error correction encoding and decoding system
KR940008742B1 (en) Information transmission method
US4949342A (en) Code error detecting method
US6357030B1 (en) ECC block format for storage device
US6378103B1 (en) Apparatus and method for error correction in optical disk system
JP3239863B2 (en) Data decoding processing apparatus and method
US7640483B2 (en) Error detecting code calculation circuit, error detecting code calculation method, and recording apparatus
US7607074B2 (en) Error detecting code addition circuit, error detection circuit and method, and disc apparatus
US8102996B2 (en) Scrambler, descrambler and method, and disc apparatus
JPS62217468A (en) Method and device for recording and reproducing digital information
US20070050663A1 (en) Error correction apparatus for performing consecutive reading of multiple code words
US20040163026A1 (en) Optical recording method
JPH11328880A (en) Error correcting device and optical disk reproducing device
JP2001292066A (en) Error correction device and error correction method
KR100691065B1 (en) Method and apparatus for generating error correction codes for data recorded on high density optical medium and correcting error using the codes
KR20030073532A (en) Apparatus and method for operating double product outer syndrome
JP2605270B2 (en) Error correction and checking device
KR20000023004A (en) Error detection circuit applied to disk reproducing apparatus
KR100215807B1 (en) Error correcting apparatus and method for digital signal
JPH087496A (en) Method and device for recording/reproducing disk
KR19990049147A (en) Error correction method

Legal Events

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