KR100505566B1 - Parallel Circulation Check Method for Subcode Q Data - Google Patents
Parallel Circulation Check Method for Subcode Q Data Download PDFInfo
- Publication number
- KR100505566B1 KR100505566B1 KR1019970035762A KR19970035762A KR100505566B1 KR 100505566 B1 KR100505566 B1 KR 100505566B1 KR 1019970035762 A KR1019970035762 A KR 1019970035762A KR 19970035762 A KR19970035762 A KR 19970035762A KR 100505566 B1 KR100505566 B1 KR 100505566B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- subcode
- parallel
- bit
- cyclic
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B2020/1264—Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
- G11B2020/1265—Control data, system data or management information, i.e. data used to access or process user data
- G11B2020/1267—Address data
- G11B2020/1271—Address data the address data being stored in a subcode, e.g. in the Q channel of a CD
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
- G11B2020/1843—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information using a cyclic redundancy check [CRC]
Abstract
서브코드 Q데이타의 병렬 순환 여유 검사 방법이 개시된다. 본 발명에 따른 서브코드 Q데이타의 병렬 순환 여유 검사 방법은, N비트 쉬프트 레지스터의 각 비트 값과, 입력되는 소정 비트의 서브코드 Q데이타를 논리 조합하여 순환 여유 검사 데이타를 생성하고, 생성된 순환 여유 검사 데이타로부터 에러의 유무를 검사하는 서브코드 Q데이타의 순환 여유 검사 방법에 있어서, 서브코드 Q데이타 중에서 N(1)비트씩 병렬 Q데이타를 인가하는 제 1 단계, 인가된 N비트 병렬 Q데이타와 쉬프트 레지스터 값을 논리조합하여 순환 여유 검사 데이타를 생성하는 제 2 단계, 생성된 순환 여유 검사 데이타가 모두 0인가를 판단하는 단계, 순환 여유 검사 데이타가 모두 0이면, 에러가 없는 것으로 판별하는 단계, 및 상기 순환 여유 검사 데이타에 0이 아닌 값이 존재하면, 에러가 있는 것으로 판별하는 단계를 구비하는 것을 특징으로 한다.A parallel cyclic margin checking method of subcode Q data is disclosed. In the parallel cyclic margin checking method of subcode Q data according to the present invention, a cyclic margin check data is generated by logically combining each bit value of an N-bit shift register with the input subcode Q data of a predetermined bit and generating the generated cyclic margin check data. In the cyclic margin checking method of subcode Q data for checking for error from the margin checking data, the first step of applying parallel Q data by N (1) bits in the subcode Q data and the applied N bit parallel Q data And a second step of generating a cyclic margin check data by logical combination of the shift register values, determining whether the generated cyclic margin check data is all zero, and determining that there is no error if the cyclic margin check data is all zero. And determining that there is an error if a non-zero value exists in the cyclic margin check data. Shall be.
Description
본 발명은 콤팩트 디스크 시스템의 에러 정정에 관한 것으로서, 서브코드 Q데이타에 존재하는 에러 정정을 위한 순환 여유 검사 코드를 처리하는데 있어서 워드 단위의 병렬 처리가 가능한 서브코드 Q데이타의 병렬 순환 여유 검사 방법에 관한 것이다.BACKGROUND OF THE
일반적으로 콤팩트 디스크에 기록되는 단일 프레임의 신호에는 사용자를 위해 디스크를 사용하기 쉽게 하기 위한 코드로서 서브코드가 포함된다. 서브코드는 각각 한 비트를 차지하는 P ~ W의 8개의 채널로 구성되며, 이들 채널 중에서 P채널 및 Q채널은 곡의 서두나 새로 설정된 순서에 따라 재생하는 프로그램을 가지는데 관련된다. 즉, 콤팩트 디스크 시스템에서는 서브코드(subcode)라는 데이타 영역에 정보를 실어 보내는데 이에 대해서는 특별한 에러 정정 코드가 없고, 서브코드 Q데이타에만 순환 여유 검사 코드(Cyclic Redundancy Check code : CRC)가 있어서 이를 점검하여 서브코드 Q데이타에 에러가 존재하는지를 검사한다.In general, a signal of a single frame recorded on a compact disc includes a subcode as a code for facilitating the use of the disc for a user. The subcode is composed of eight channels of P to W each occupying one bit, and among these channels, the P channel and the Q channel are related to having a program which plays at the beginning of a song or in a newly set order. That is, in a compact disk system, information is sent to a data area called a subcode, and there is no special error correction code. There is a cyclic redundancy check code (CRC) only in the subcode Q data. Check for errors in the subcode Q data.
도 1은 종래의 CRC 회로를 설명하기 위한 회로도로서, 16개의 플립플롭들(11 ~ 16)로 이루어진 쉬프트 레지스터(110)와 제 1 배타적 오아 게이트(120), 제 2 배타적 오아 게이트(140) 및 제 3 배타적 오아 게이트(160) 및 DOSEM 게이트(180)로 이루어진다.FIG. 1 is a circuit diagram illustrating a conventional CRC circuit, including a
제 3 배타적 오아 게이트(160)는 데이타 입력 단자 DIN으로부터 순차적으로 입력되는 데이타들과 제 16 플립플롭(26)의 출력을 배타적 논리합이고, 배타적 논리합된 결과를 제 1 플립플롭(11), 제 1 배타적 오아 게이트(120) 및 제 2 배타적 오아 게이트(140)로 인가한다. 쉬프트 레지스터(110)의 플립플롭들(11 ~ 26)은 클럭 신호(CK)에 응답하여 입력된 데이타를 출력한다. 앤드 게이트(180)는 16개의 플립플롭들(11 ~ 26)의 각각의 출력들을 입력하여 논리곱하고, 논리곱된 결과를 출력 신호로서 출력 단자 OUT를 통하여 출력한다. 즉, 쉬프트 레지스터(110)의 최종적인 출력이 모두 0이면, 출력 단자 OUT를 통하여 출력되는 데이타는 0이 되고, 에러가 없는 것으로 판별되며, 만약 0이 아닌 값이 하나라도 있으면, 0이 출력되지 않으므로 에러가 있는 것으로 판별할 수 있다.The third exclusive OR
일반적인 서브코드 Q데이타에 적용된 CRC 다항식 g(x)는 다음과 같다.The CRC polynomial g (x) applied to general subcode Q data is as follows.
[수학식 1][Equation 1]
g(x) = x16 + x12 + x5 + 1g (x) = x 16 + x 12 + x 5 + 1
도 1에 도시된 CRC 회로에서 수행되는 CRC 처리 방법 즉, CRC 데이타 생성 과정을 수학식으로 표현하면 다음과 같다.A CRC processing method, that is, a CRC data generation process, performed in the CRC circuit shown in FIG. 1 is represented as follows.
[수학식 2][Equation 2]
여기에서, b는 쉬프트 레지스터(110)를 나타내고, a는 입력 데이타를 나타내고, [ ]는 위치를 나타낸다. 따라서, bn은 n번째 쉬프트 레지스터 값을 나타내고, 는 배타적 논리합을 나타낸다.Here, b represents the
수학식 1에 나타난 바와 같이, 종래에는 데이타를 한 비트씩 입력하며 96비트의 서브코드 Q를 처리하기 위해서는 상술한 수학식을 96번 반복해야 한다. 따라서, 종래의 CRC 처리는 서브코드 Q데이타의 비트 단위로 이루어지기 때문에 처리속도가 늦어진다는 문제점이 있다.As shown in
본 발명이 이루고자 하는 기술적 과제는, 서브코드 Q데이타에 존재하는 에러 검출을 위한 CRC 코드를 병렬로 처리하는 서브코드 Q데이타의 병렬 순환 여유 검사 방법을 제공하는데 있다.SUMMARY OF THE INVENTION The present invention has been made in an effort to provide a parallel cyclic margin checking method for subcode Q data in which CRC codes for error detection present in subcode Q data are processed in parallel.
상기 과제를 이루기 위해, 본 발명에 따른 서브코드 Q데이타의 병렬 순환 여유 검사 방법은, N비트 쉬프트 레지스터의 각 비트 값과, 입력되는 소정 비트의 서브코드 Q데이타를 논리 조합하여 순환 여유 검사 데이타를 생성하고, 생성된 순환 여유 검사 데이타로부터 에러의 유무를 검사하는 서브코드 Q데이타의 순환 여유 검사 방법에 있어서, 서브코드 Q데이타 중에서 N(1)비트씩 병렬 Q데이타를 인가하는 제 1 단계, 인가된 N비트 병렬 Q데이타와 쉬프트 레지스터 값을 논리조합하여 순환 여유 검사 데이타를 생성하는 제 2 단계, 생성된 순환 여유 검사 데이타가 모두 0인가를 판단하는 단계, 순환 여유 검사 데이타가 모두 0이면, 에러가 없는 것으로 판별하는 단계, 및 순환 여유 검사 데이타에 0이 아닌 값이 존재하면, 에러가 있는 것으로 판별하는 단계로 구성되는 것이 바람직하다.In order to achieve the above object, the parallel cyclic margin checking method of the subcode Q data according to the present invention comprises a logical combination of each bit value of the N-bit shift register and the subcode Q data of the predetermined bit to be input. A cyclic redundancy check method for generating subcode Q data for generating an error from the generated cyclic redundancy check data, the first step of applying parallel Q data by N (1) bits in the subcode Q data. A second step of generating a cyclic redundancy check data by logically combining the N-bit parallel Q data and the shift register value, determining whether the generated cyclic redundancy check data is all zero, and if the cyclic redundancy check data is all zero, an error occurs. And determining that there is an error if a non-zero value exists in the cyclic margin check data. It is preferable property.
이하, 본 발명에 따른 서브코드 Q데이타의 병렬 순환 여유 검사 방법에 관하여 첨부된 도면을 참조하여 다음과 같이 설명한다.Hereinafter, with reference to the accompanying drawings, a method for checking the parallel cyclic margin of the sub code Q data according to the present invention will be described as follows.
도 2는 본 발명에 따른 서브코드 Q데이타의 병렬 순환 여유 검사 방법을 설명하기 위한 플로우차트로서, N비트의 병렬 Q데이타를 인가하는 단계(제 200 단계), 병렬 Q데이타와 쉬프트 레지스터 값을 논리조합하여 CRC 데이타를 생성하는 단계(제 220 단계) 및 CRC 데이타가 모두 0인가를 판단하고, 모두 0이면, 에러가 없는 것으로 판별하고, 0이 아닌 값이 존재하면 에러가 있는 것으로 판별하는 단계(제 240 ~ 280 단계)로 구성된다.FIG. 2 is a flowchart for explaining a method for checking a parallel cyclic margin of subcode Q data according to the present invention, which includes applying N bits of parallel Q data (step 200), and logic parallel Q data and a shift register value. Combining to generate CRC data (step 220) and determining whether the CRC data are all zero, determining that there is no error if all zeros, and determining if there is an error if a non-zero value exists ( 240 to 280 steps).
도 1에 도시된 종래의 서브코드 Q데이타의 CRC 회로를 이용하여 16비트의 데이타를 차례로 계산하면, 16비트의 병렬 데이타를 처리할 수 있는 계산식으로 얻을 수 있다.By sequentially calculating 16 bits of data using the CRC circuit of the conventional subcode Q data shown in FIG. 1, a calculation formula capable of processing 16 bits of parallel data can be obtained.
우선, 도 1에 도시된 종래의 CRC 회로와 수학식 1에 따라서 16비트의 입력 데이타 a0 ~ a15를 순차적으로 인가했을 때의 출력값을 계산하여 16비트의 병렬 데이타를 처리하는 계산식을 얻는 과정을 상세히 설명한다.First, in accordance with the conventional CRC circuit shown in FIG. 1 and
데이타 입력 단자를 통해 a0가 입력되면, 제 3 배타적 오아 게이트(160)에는 a0가 출력되고, 제 1 배타적 오아 게이트(120)와 제 2 배타적 오아 게이트(140)에는 a0가 입력된다. 따라서, 쉬프트 레지스터(110)의 각 플립플롭(11 ~ 26)(b[0] ~ b[15])에는 각각 다음과 같은 값들이 생성된다.When a0 is input through the data input terminal, a0 is output to the third
bn[15] = bn -1[14]b n [15] = b n -1 [14]
여기서, bn은 n번째 쉬프트 레지스터 값을 나타내고, a는 입력 데이타를 나타낸다. 또한, 데이타 a1이 입력되면, 각각의 쉬프트 레지스터 값은 다음과 같이 표시된다.Where b n represents the nth shift register value and a represents the input data. Further, when data a1 is input, each shift register value is displayed as follows.
bn[15] = bn -1[13]b n [15] = b n -1 [13]
bn[14] = bn -1[12]b n [14] = b n -1 [12]
따라서, 상기의 수학식을 이용하면, 서브코드 Q데이타를 한 비트씩 입력하는 것이 아니라 16비트씩 병렬로 입력하여 처리하는 것이 가능하게 된다.Therefore, using the above equation, it is possible to input and process subcode Q data in parallel by 16 bits instead of inputting bit by bit.
상술한 전개 과정과 도 2에 도시된 플로우차트를 이용하여 본 발명에 따른 서브코드 Q데이타의 병렬 순환 여유 검사 방법을 설명하면, 우선 96비트의 서브코드 Q데이타 중 N비트씩 병렬 데이타를 인가한다(제 200 단계). 바람직하게는 16비트씩 병렬 데이타를 인가하여 처리하도록 되어 있으나, 처리 방법을 구현하기에 따라서 4비트 또는 8비트 즉, 바이트 단위로 병렬 데이타를 인가하여 처리하는 것이 가능하다. 인가된 병렬 데이타들은 상기의 수학식에서 나타난 바와 같이 해당하는 비트의 쉬프트 레지스터 값들과 배타적 오아 게이트에서 배타적 논리합되고, 배타적 논리합된 결과는 CRC를 검사하기 위한 데이타로서 생성된다(제 220 단계). 즉, 클럭신호(CK)에 응답하여 16비트씩 6번의 병렬 데이타가 입력되어 96비트의 Q데이타가 모두 입력되고, 상기의 과정을 통하여 쉬프트 레지스터(110)의 각 플립플롭(b[0] ~ b[15])에 생성된 값들을 검사하면 에러 발생 여유를 검출할 수 있다. 즉, 96비트의 서브코드 Q데이타를 수학식 1에 나타난 다항식으로 나누어 그 나머지를 CRC 검사 데이타로 이용한다. 결과적으로 상기의 과정으로부터 도출된 다음의 수학식을 이용한다.Referring to the parallel cyclic margin checking method of subcode Q data according to the present invention using the above-described development process and the flowchart shown in FIG. 2, first, parallel data is applied by N bits among 96-bit subcode Q data. (Step 200). Preferably, the data is processed by applying parallel data by 16 bits. However, according to the implementation of the processing method, it is possible to apply and process the parallel data by 4 bits or 8 bits, that is, byte units. The applied parallel data are exclusive OR in the shift register values of the corresponding bit and the exclusive OR gate as shown in the above equation, and the exclusive OR is generated as data for checking the CRC (step 220). That is, in response to the clock signal CK, six parallel data are input by 16 bits, and all 96 bits of Q data are input, and the respective flip-flops b [0] to the
[수학식 3][Equation 3]
상기의 수학식 3으로부터 생성된 CRC 데이타를 검사하면, 서브코드 Q데이타에 에러가 존재하는지의 유무를 판별할 수 있다. 즉, 96비트의 Q데이타를 처리하여 최종적으로 생성된 16비트의 CRC 데이타가 모두 0인지를 판단하고(제 240 단계), 모두 0이면, 에러가 없는 것으로 판별한다(제 260 단계). 만약, 0이 아닌 값이 존재하면, 서브코드 Q데이타 중에서 에러가 있는 것으로 판별한다(제 280 단계).Examining the CRC data generated from
따라서, 수학식 3을 이용하여 워드 단위로 병렬로 처리하면, 종래의 방법보다 16배 빠르게 에러 검출이 가능하게 된다. 즉, 96비트 서브코드 1블럭을 처리하는데 종래의 방식으로 96n시간이 소요되었다면, 본 발명에 따른 CRC 방법에서는 6n의 시간만으로 처리할 수 있다.Therefore, when the parallel processing is performed in word
본 발명에 따르면, CRC 처리에 있어서 비트 단위가 아닌 바이트 단위 또는 워드 단위로 병렬 처리가 가능하도록 구현함으로써 종래의 CRC 처리 속도에 비해 16배로 개선될 수 있다는 효과가 있다.According to the present invention, the parallel processing is possible in the unit of byte or word rather than unit of bit in the CRC process, which can be improved by 16 times compared to the conventional CRC processing speed.
도 1은 종래의 서브코드 Q데이타의 병렬 순환 여유 검사 회로를 설명하기 위한 회로도이다.1 is a circuit diagram for explaining a conventional parallel cyclic margin test circuit of subcode Q data.
도 2는 본 발명에 따른 서브코드 Q데이타의 병렬 순환 여유 검사 방법을 설명하기 위한 플로우차트이다.2 is a flowchart for explaining a parallel cyclic margin checking method of subcode Q data according to the present invention.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970035762A KR100505566B1 (en) | 1997-07-29 | 1997-07-29 | Parallel Circulation Check Method for Subcode Q Data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970035762A KR100505566B1 (en) | 1997-07-29 | 1997-07-29 | Parallel Circulation Check Method for Subcode Q Data |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990012389A KR19990012389A (en) | 1999-02-25 |
KR100505566B1 true KR100505566B1 (en) | 2005-11-08 |
Family
ID=37305839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970035762A KR100505566B1 (en) | 1997-07-29 | 1997-07-29 | Parallel Circulation Check Method for Subcode Q Data |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100505566B1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6083261A (en) * | 1983-10-14 | 1985-05-11 | Nippon Gakki Seizo Kk | Reading circuit of subcode signal |
JPH04125749A (en) * | 1990-09-17 | 1992-04-27 | Fujitsu Ltd | Detection circuit for id number of rom |
JPH0918354A (en) * | 1995-07-04 | 1997-01-17 | Oki Electric Ind Co Ltd | Error detection code generator and error detector for cyclic redundancy checking system |
KR970002631A (en) * | 1995-06-29 | 1997-01-28 | 김주용 | Cyclic redundancy check error detection and correction device using decoder |
KR970050868A (en) * | 1995-12-28 | 1997-07-29 | 김광호 | Parallel CRC decoder |
KR19980050154A (en) * | 1996-12-20 | 1998-09-15 | 양승택 | Selective Force CRC-32 Processing Encoder and Decoder and Parallel Processing Method |
-
1997
- 1997-07-29 KR KR1019970035762A patent/KR100505566B1/en not_active IP Right Cessation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6083261A (en) * | 1983-10-14 | 1985-05-11 | Nippon Gakki Seizo Kk | Reading circuit of subcode signal |
JPH04125749A (en) * | 1990-09-17 | 1992-04-27 | Fujitsu Ltd | Detection circuit for id number of rom |
KR970002631A (en) * | 1995-06-29 | 1997-01-28 | 김주용 | Cyclic redundancy check error detection and correction device using decoder |
JPH0918354A (en) * | 1995-07-04 | 1997-01-17 | Oki Electric Ind Co Ltd | Error detection code generator and error detector for cyclic redundancy checking system |
KR970050868A (en) * | 1995-12-28 | 1997-07-29 | 김광호 | Parallel CRC decoder |
KR19980050154A (en) * | 1996-12-20 | 1998-09-15 | 양승택 | Selective Force CRC-32 Processing Encoder and Decoder and Parallel Processing Method |
Also Published As
Publication number | Publication date |
---|---|
KR19990012389A (en) | 1999-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR950012983B1 (en) | Reed solomon decoding method | |
JP2721099B2 (en) | Trial and error method for error burst correction and multibyte error correction method | |
US4994993A (en) | System for detecting and correcting errors generated by arithmetic logic units | |
JPH0728227B2 (en) | Decoding device for BCH code | |
US5068856A (en) | Method and circuit for detecting data error | |
KR100188147B1 (en) | Error detecting circuit used for code | |
JP3257298B2 (en) | CRC code generation method | |
KR100505566B1 (en) | Parallel Circulation Check Method for Subcode Q Data | |
JP2627581B2 (en) | Electronic circuit for generating error detection codes in digital signals | |
KR100253043B1 (en) | Error correction method and eror correction circuit | |
KR100281946B1 (en) | Syndrome calculation device | |
US5588010A (en) | Parallel architecture error correction and conversion system | |
JPH05225717A (en) | Address generation circuit for error correction of dat | |
JPH0629953A (en) | Error detection circuit | |
US6581083B1 (en) | Syndrome generator and method for generating syndromes in a video/audio processing system | |
JP2858538B2 (en) | Re-syndrome check method | |
JPH05335969A (en) | Error correction device | |
KR930001921B1 (en) | Cyclic redundancy code checking circuit | |
KR0186166B1 (en) | Error detecting device for a cd-rom driver | |
CN115987304A (en) | Error correction method, device and storage medium for data shielding | |
KR20000013501A (en) | Parallel circulation surplus testing method in high speed series bus interface device | |
KR100230419B1 (en) | Sector sync. protection circuit | |
KR0166153B1 (en) | Error position detecting circuit of error correction system | |
JP2002207593A (en) | Galois field multiplier and galois field divider | |
JPS61152131A (en) | Error analysis and arithmetic unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |