KR100200810B1 - 오류 정정부호화 방법 및 장치 - Google Patents

오류 정정부호화 방법 및 장치 Download PDF

Info

Publication number
KR100200810B1
KR100200810B1 KR1019930005526A KR930005526A KR100200810B1 KR 100200810 B1 KR100200810 B1 KR 100200810B1 KR 1019930005526 A KR1019930005526 A KR 1019930005526A KR 930005526 A KR930005526 A KR 930005526A KR 100200810 B1 KR100200810 B1 KR 100200810B1
Authority
KR
South Korea
Prior art keywords
parity
sequential
interleaved
information
output
Prior art date
Application number
KR1019930005526A
Other languages
English (en)
Other versions
KR940022524A (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 KR1019930005526A priority Critical patent/KR100200810B1/ko
Publication of KR940022524A publication Critical patent/KR940022524A/ko
Application granted granted Critical
Publication of KR100200810B1 publication Critical patent/KR100200810B1/ko

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

Landscapes

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

Abstract

본 발명은 재생기 기록된 디지탈 신호의 오류정정이 가능하도록 기록시 정보데이터에 패리티를 부가하는 오류정정 부호화 방법 및 그 장치에 관한 것으로, 전송되는 정보심볼을 저장하지 않고 곧바로 순차패리티 연산과 인터리브패리티 연산을 동시에 수행하는 오류정정 부호화 방법 및 장치를 제공하는 데 그 목적이 있다. 이를 위해 본 발명의 방법은 입력데이터를 시분할하여 공급하는 과정과, 순차패리티와 인터리브패리티를 병행적으로 생성하는 과정과 생성된 패리티를 원래의 정보심볼에 소정의 형태로 부가하여 출력하는 과정으로 이루어지며, 본 발명의 장치는 시분할공급수단, 순차패리티를 산출하는 제1패리티생성수단과, 인터리브패리티를 산출하는 제2패리티생성수단 및 선택출력부를 주요 구성요소로 한다. 디지탈 신호의 오류정정 부호화에 본 발명을 적용하면 소요되는 메모리용량을 크게 줄일 수 있고 데이터 처리도 신속하게 할 수 있는 효과를 얻을 수 있다.

Description

오류 정정부호화 방법 및 장치
제1도는 기록시 종래의 일반적인 오류정정 부호화 장치의 블럭도.
제2도는 본 발명에 따른 오류정정 부호화 장치의 블럭도.
제3도는 본 발명의 입출력신호의 구성형식을 나타낸 도면.
제4도는 제1도에 도시된 버퍼메모리의 맵을 나타낸 도면.
제5도는 제2도에 도시된 패리티메모리의 맵을 나타낸 도면.
제6도는 제2도에 도시된 시분할공급수단의 시분할출력관계를 도시한 신호도.
* 도면의 주요부분에 대한 부호의 설명
50 : 시분할공급수단 52 : 선택출력부
54 : 제1패리티생성수단 56 : 제1패리티연산부
58 : 레지스터부 60 : 제2패리티생성수단
62 : 제2패리티연산부 64 : 패리티메모리부
66 : 제어부 68 : 기록매체
본 발명은 광 디스크나 디지탈 테이프 등과 같은 디지탈 신호기록매체에 디지탈 신호를 기록하는 기술에 관한 것으로, 특히 재생시 기록된 신호의 오류정정이 가능하도록 기록시 정보데이터에 검사부호(패리티)를 부가하는 오류정정 부호화 방법 및 그 장치에 관한 것이다.
어떤 신호를 기록매체에 기록하거나 재생시 또는 송수신하는 과정에서 원신호와는 다른 내용의 신호 즉, 오류가 발생하는 것은 일반적인 현상이다. 따라서 신호의 오류에 관한 대책으로 오류발생을 사전에 예방하는 수단을 강구하는 것도 하나의 방법일 수 있지만, 실제에 있어서는 이러한 수단만으로는 부족하고 오히려 오류발생을 전제하는 토대 위에 보다 적극적인 대책을 마련하는 것이 합리적이다.
이러한 기조에 따르는 오류대책의 하나로서, 특히 디지탈신호의 경우, 원래의 정보데이터에 패리티를 부가하여 재생시 오류정정이 가능하도록 하는 오류정정 부호와 방법이나 그 장치가 여러가지 알려지고 있으며 실제의 장치에 있어서 다양하게 실용되고 있다.
패리티의 부가에 의한 데이터의 신뢰성 확보는 다음과 같은 방식으로 이루어진다. 기록시에는 소정의 방법으로 생성된 패리티를 부호화된 원래의 데이터에 부가하여 기록매체에 기록하고, 기록된 디지탈 신호를 재생하는 경우에는 부호의 오류를 검출하여 원래의 정확한 데이터로 정정하는 방식을 취한다.
그런데, 디지탈 신호의 경우 오류가 발생한 비트가 랜덤하게 분포하는 경우도 있고 거의 한 데 몰려 연집(Burst)으로 발생하는 경우도 있는 등 오류발생의 형태가 다양할 뿐만 아니라 기록매체 자체의 오류율도 높은 편이다. 이와 같은 이유로 인해 디지탈 데이터를 기록 또는 재생하거나 송수신하는 경우에는 강력한 오류 검출 및 정정수단 이나 방법이 필요하게 된다.
따라서 종래에는 디지탈 신호의 오류검출 및 정정을 위한 부호화와 관련하여 전송되는 데이터의 순서대로 일정크기의 데이터마다 검출부호를 부가하는 이른바 순차방식에 의한 부호화 이외에도 전송되는 데이터의 인터리브별로 별도의 패리티를 부가하는 이른바 인터리브(Interleave)방식에 의한 부호화를 병용하여 왔다. 특히 인터리브방식에 의한 부호화는 연집오류를 개선하는 데 효과적인 방법으로 알려져 디지탈 신호의 부호화에 널리 이용되고 있다. 그리고 상기 두 방식을 병용하는 예로써 리드-솔로몬부호를 이용한 오류검출 및 정정방식이 있다. 이 방식은 부호의 용장도(부호어에 있어서 검사워드와 정보데이터의 비율), 오류정정능력의 측면에서 우수하여 디지탈신호의 오류정정에 널리 사용되고 있다.
종래의 리드-솔로몬부호화 방식은 정보심볼의 각 요소를 주지의 갈로아필드 GF(2r)의 원소로 간주하여 오류정보심볼을 정정한다. 일반적으로 갈로아필드 GF(2r)는 원소의 수가 2r개 인 것을 뜻한다. 또한 갈로아필드는 승산과 제산에 닫혀 있다. 즉, 승산, 제산의 결과는 반드시 갈로아필드의 원소가 된다. 특히 바이트(Byte) 정정부호의 경우 하나의 정보심볼을 8비트로 구성하여 어느 정보심볼에 어떠한 오류가 있는지를 검출하는 것이다. 정보심볼이 8비트인 경우 갈로아필드 GF(28)의 바이트 정정부호에 있어서 정정가능한 최대 부호길이는 28-1=255바이트가 된다. 이중 패리티의 길이는 정정하고자 하는 오류정보심볼의 갯수에 따라 결정된다. 패리티의 길이가 길면 정정능력은 좋아지지만 실제의 정보데이타의 기록효율이 좋지 않게 될 것이고, 반대로 패리티를 짧게하면 기록효율은 좋아지는 대신 정정능력은 떨어질 것이다.
이하에서는 바이트 정정부호에 있어서 패리티의 길이가 16바이트인 경우를 예로하여 설명한다. 여기서 패리티를 제외한 나머지 부분이 실제 정보심볼의 길이가 되며 상기와 같은 경우 정보심볼의 길이는 239바이트가 된다. 즉, 239바이트의 실제정보데이타와 16바이트의 패리티가 하나의 그룹이 되어 정정가능한 부호의 단위가 되는 경우를 가정하는 것이다.
한편, 지금까지 알려진 바에 의하면 위에서 가정한 경우 뿐만 아니라 일반적으로 상기 종래와 같이 순차방식과 인터리브방식을 병용하는 부호화 방식은 데이타처리를 위하여 많은 양의 메모리가 필요하게 되고, 메모리에 데이타를 쓰거나 메모리에 저장된 데이타를 읽는데 소요되는 시간 및 데이타의 전송순서에 따른 순차패리티연산과 인터리브 단위의 인터리브패리티연산을 동시에 하지 않고 순차적으로 수행함에 따라 소요되는 시간 등으로 인하여 전반적으로 처리시간이 많이 걸리는 문제점이 있었다.
이를 첨부한 제1도, 제3도 및 제4도를 참조하여 설명한다.
제1도는 종래의 일반적인 오류정정 부호화장치의 블럭도(기록시), 제3도는 오류정정 부호화 전후의 입출력신호의 구성형식을 나타낸 도면, 제4도는 제1도에 도시된 버퍼메모리(20)의 맵을 나타낸 도면을 각각 나타낸다.
제3도에서 정보블럭은 기록대상이 되는 원래의 정보데이타이고 상기 정보블럭에 순차패리티블럭과 인터리브패리티블럭(1,2)을 부가한 것이 오류정정 부호화후 얻고자 하는 데이타형식이다. 이러한 목표 출력형식은 본 발명에서도 마찬가지이다.
제3도에서 정보블럭은 기록대상인 원래의 정보데이타인데, 그 구성단위는 소정비트로 구성된 정보심볼이다. 위에서 전제한 바와같이 상기 정보심볼은 8비트로 구성된 데이타이다. 제3도에 도시된 바와 같이 각 정보심볼은 열방향의 순서로 전송되어 버퍼메모리(20)에 일단 저장된다. 패리티의 부가가 정보블럭단위로 이루어지므로 상기 버퍼메모리(20)의 크기는 적어도 상기 정보블럭을 저장할 수 있는 크기가 필요하다. 위에서 가정한 것에 의할 경우 제4도에 도시된 것과 같이 요구되는 버퍼메모리(20)의 크기는 적어도 다음과 같다.
버퍼메모리(20)에 저장후 패리티연산부(24)에서는 예컨데 제3도에서 'a1.2a2.2a3.2… a239.2'의 순차그룹 데이타를 순서대로 읽어서 예컨데 제3도의 'c1.2c2.2… c16.2'와 같은 순차패리티를 산출한다. 패리티연산은 매 정보심볼이 인가될 때마다 기존에 산출되어 레지스터(26)에 보관중인 순차패리티를 이용한다. 하나의 순차그룹에 대한 순차패리티연산이 완료되면 원래의 정보데이타인 순차그룹에 순차패리티를 부가하여 기록매체(34)에 기록하기 위하여 출력한다. 이와 같은 과정을 다음 순차그룹에 대하여도 마찬가지로 실행한다. 이 경우 최소한 16개의 레지스터가 필요하다.
순차패리티생성이 완료되면 다음에는 또하나의 패리티연산부(28)는 상기 버퍼메모리(20)로 부터 정보심볼을 읽어들여 인터리브패리티를 연산하는데, 이 때 상기 패리티연산부(28)는 상기 정보심볼을 인터리브단위로 읽어들인다. 읽어들인 정보심볼과 기 생성된 인터리브패리티를 이용하여 인터리브패리티를 생성한 후에 원래의 정보데이타와 최종적으로 산출된 인터리브패리티가 부가되어 기록매체(34)에 원래의 정보데이타와 함께 기록된다. 아울러 상기 순차패리티에 대한 인터리브패리티도 연산하여 출력한다.
이 경우 레지스터(30)는 상당량의 갯수가 요구된다. 산출된 인터리브패리티는 곧바로 출력하지 않고 저장해 두었다가 출력해야 하므로 이를 위해 1바이트를 보관할 수 있는 레지스터가 239×16=3814개 필요하며 동일한 수의 레지스터가 상기 순차패리티 저장용으로 필요하다. 물론 회로 구성을 달리 하여 상기 레지스터를 당해 연산결과만을 보관하도록 하고 기존에 생성된 패리티는 상기 버퍼메모리에 저장해 두는 방식도 가능하다. 이러한 방식에 따른 것이 '일본 공개특허공보 평1-158828'에 개시되어 있다. 이 방식에 따라 소요되는 버퍼메모리의 크기를 개략적으로 환산해보면 다음과 같다.
따라서 상기 제(1)식과 제(2)식의 값을 합해보면 대략 518K(비트)의 메모리가 필요하다.
이상의 종래방식의 특징을 요약하면 첫째, 소정량의 데이타인 정보블럭 단위로 구분된 정보데이타는 일단 버퍼메모리라는 저장수단을 사용하여 저장시킨 후 패리티를 생성하는 연산을 위하여 소정량의 그룹단위로 읽어들인다는 점과, 둘째로는 검사비트를 산출하는 연산이 순차방식과 인터리브방식을 순차적으로 수행한다는 점이다.
따라서 종래 방식에 따라서 부호화를 할 경우에는 상기와 같은 특징으로 인하여 적어도 소정 단위에 해당하는 양의 데이타를 저장할 수 있는 크기의 메모리를 구비하지 않으면 안되며, 신뢰도를 높일 수 있는 댓가로 부호화에 필요한 데이타 처리시간이 많이 걸리는 부담을 져야하는 문제점이 있다. 만약 기록해야할 데이타량이 많아 빠른 처리가 요구되는 경우에는 종래방식은 한계가 있다.
상기와 같은 문제점을 해결하고자 본 발명은 전송되는 정보심볼을 저장하지 않고 곧바로 순차패리티 연산과 인터리브패리티 연산을 동시에 수행하므로써 메모리크기를 크게 줄일 수 있고 데이타 처리도 신속하게 할 수 있는 오류정정 부호화 방법 및 장치를 제공하는 데 그 목적이 있다.
이를 위해 본 발명의 방법은 순차전송되는 N×M개의 정보심볼 마다 소정의 검사비트를 부가하여 기록매체에 기록하므로써 재생시 오류정정이 가능하도록 부호화하는 오류 정정 부호화방법에 있어서,
순차 인가되는 N개의 상기 정보심볼을 하나의 순차그룹으로 묶고 각 순차그룹간은 T1의 시간간격을 갖도록 분할하고, M개의 순차그룹으로 구성되는 각 정보블럭간은 T2의 시간간격을 갖도록 시분할한 동일데이타를 별도의 전송로로 공급하는 시분할공급과정과,
상기 시분할공급과정에 의해 공급되는 상기 정보심볼이 인가될 때 마다 현재 인가되는 정보심볼과 기 생성된 순차패리티를 이용하여 패리티연산을 하여 새로운 순차패리티를 산출하는 제1패리티연산과정과,
상기 각 순차그룹의 마지막 정보심볼의 인가가 완료될 때 까지 상기 제1패리티연산과정에서 산출된 상기 새로운 순차패리티를 되풀이하여 갱신저장하는 제1패리티갱신저장과정과,
상기 각 순차그룹에 대한 순차패리티의 산출이 완료되면 상기 갱신저장되어 있는 각 그룹의 순차패리티를 출력시키는 제1패리티출력과정과,
상기 제1패리티출력과정에 의해 상기 순차패리티가 공급될 때마다 상기 순차패리티를 저장하는 순차패리티저장과정과,
상기 시분할공급과정에 의해 공급되는 상기 정보심볼이 인가될 때 마다 상기 정보심볼과 상기 정보심볼이 속하는 인터리브의 기 생성된 인터리브패리티를 이용하여 패리티연산을 하여 해당인터리브의 새로운 인터리브패리티를 산출한 후 상기 순차패리티에 대한 인터리브패리티를 동일방식으로 산출하는 제2패리티연산과정과,
상기 제2패리티연산과정에서 얻어진 상기 새로운 인터리브패리티를 인터리브별로 구분하여 갱신저장하는 제2패리티갱신저장과정과,
상기 각 인터리브에 대한 인터리브패리티의 산출이 완료되면 상기 제2패리티갱신저장과정에서 저장된 각 인터리브패리티를 출력시키는 제2패리티출력과정과,
상기 시분할공급과정에 의해 공급되는 N개의 상기 정보심볼을 선택한 다음 상기 제1패리티출력과정에 의해 공급되는 상기 순차패리티를 선택하여 상기 N개의 정보심볼에 상기 순차패리티를 부가하여 출력하는 것을 M회 반복 후 상기 제2패리티출력과정에 의해 공급되는 상기 인터리브패리티를 선택하여 N×M개의 정보심볼에 상기 인터리브패리티를 부가하여 출력하는 선택출력과정을 포함함을 특징으로 한다.
아울러 본 발명의 장치는 순차전송되는 N×M개의 정보심볼마다 소정의 검사비트를 부가하여 기록매체에 기록하므로써 재생시 오류정정이 가능하도록 부호화하는 오류 정정 부호화장치에 있어서,
순차 인가되는 N개의 상기 정보심볼을 하나의 순차그룹으로 묶고 각 순차그룹간은 T1의 시간간격을 갖도록 분할하고, M개의 순차그룹으로 구성되는 각 정보블럭간은 T2의 시간간격을 갖도록 시분할한 동일데이타를 별도의 전송로로 공급하는 시분할공급수단과,
상기 시분할공급수단으로부터 상기 정보심볼이 인가될 때 마다 현재 인가되는 정보심볼과 기 생성된 순차패리티를 이용하여 패리티연산을 하여 새로운 순차패리티를 구하고 상기 새로운 순차패리티의 갱신저장을 되풀이하면서 상기 각 순차그룹의 마지막 정보심볼이 인가되면 해당 순차그룹의 패리티연산을 완료하여 최종적인 순차패리티를 출력하는 제1패리티생성수단과,
상기 제1패리티생성수단에서 출력되는 순차패리티를 저장하는 한편 상기 시분할공급수단으로부터 상기 정보심볼이 인가될 때 마다 상기 정보심볼과 상기 정보심볼이 속하는 인터리브의 기 생성된 인터리브패리티를 이용하여 각 인터리브별로 패리티연산을 하여 새로운 인터리브패리티를 구하고 상기 새로운 인터리브패리티의 갱신저장을 되풀이하면서 각 인터리브의 마지막 정보심볼이 인가되면 해당 인터리브의 패리티 연산을 완료한 후 저장해둔 상기 순차패리티에 대한 인터리브패리티를 동일방법으로 산출하여 상기 정보심볼 및 순차패리티에 대한 최종적인 인터리브패리티를 출력하는 제2패리티생성수단과,
상기 시분할공급과정에 의해 공급되는 N개의 상기 정보심볼을 선택한 후 상기 제1패리티생성수단에서 공급되는 상기 순차패리티를 선택하여 상기 N개의 정보심볼에 상기 순차패리티를 부가하여 출력하는 것을 M회 반복 후 상기 제2패리티생성수단에서 공급되는 상기 인터리브패리티를 선택하여 N×M개의 정보심볼에 상기 인터리브패리티를 부가하여 출력하는 선택출력부를 포함함을 특징으로 한다.
이하에서는 첨부한 도면을 참조하여 본 발명을 상세히 설명한다.
제2도는 본 발명에 따른 오류정정 부호화장치의 블럭도이고, 제5도는 제2도에 도시된 패리티메모리의 맵을 나타낸 도면이다.
먼저, 기록매체에 기록될 입력신호를 일정한 형식으로 시분할공급하는 시분할공급과정을 수행한다. 이 과정은 시분할공급수단(50)을 이용하여 실행한다.
상기 시분할공급수단(50)은 순차 인가되는 239개의 정보심볼을 하나의 순차그룹으로 묶고 각 순차그룹간은 T1의 시간간격으로 출력한다. 그리고 239개의 순차그룹으로 구성되는 각 정보블럭은 T2의 시간간격을 갖도록 시분할하여 출력한다.
데이타의 시분할 출력을 제3도와 시분할출력관계를 도시한 신호도인 제6도를 참조하여 부가 설명한다. 제3도의 정보블럭을 구성하는 데이타가 순차적으로 상기 시분할공급수단(50)으로 인가되면 제6도에서 처음의 하이펄스구간(A2)동안에는 'a1.1a2.1a3.1… a239.1'의 정보심볼이 연속하여 순차 출력되고, 두번째 순차그룹인 'a1.2a2.2a3.2… a239.2'의 정보심볼은 T1의 시간이 경과된 후 두 번째의 하이펄스구간(A2) 동안에 연속하여 순차 출력된다. 이러한 과정을 239번째의 순차그룹까지 계속한 다음 정보블럭의 최초 정보심볼의 출력은 소정의 시간(T2)이 지난 후 이루어진다.
상기와 같이 시분할 된 데이타는 선택출력부(52), 제1패리티생성수단(54), 제2패리티생성수단(60) 및 제어부(66)에 동시에 인가되어 별도의 처리가 병행적으로 진행된다. 즉, 순차패리티를 산출하는 제1패리티생성과정과 인터리브패리티를 산출하는 제2패리티생성과정이 동시에 진행되고, 상기 두가지의 패리티생성과정에서 얻어진 패리티와 상기 시분할 공급수단에서 공급되는 데이타가 선택출력부(52)에서 선택적으로 출력된다. 이때 제어부(66)는 상기와 같은 과정의 실행에 필요한 제어를 담당한다.
보다 구체적으로 설명하면 다음과 같다.
먼저, 상기 제1패리티생성과정은 순차패리티를 연산하는 제1패리티연산과정, 연산에서 얻어진 새로운 순차패리티를 저장하는 제1패리티갱신저장과정 및 순차그룹에 대한 순차패리티가 모두 생성되면 출력하는 제1패리티출력과정으로 이루어진다.
각 과정을 보다 구체적으로 설명한다.
제1패리티연산과정 및 제1패리티갱신저장과정은 각각 제1패리티연산부(56)와 레지스터부(58)에서 이루어진다. 본 발명의 예에서는 상기 레지스터부(58)의 레지스터는 적어도 16로 구성한다. 상기 시분할공급수단(50)에서 시분할된 정보심볼이 인가되면 매정보심볼이 인가될 때 마다 곧바로 순차패리티연산을 실행한다. 이때 연산에는 인가되는 정보심볼 뿐만 아니라 기 생성되어 레지스터부(58)에 저장되어 있는 순차패리티가 이용된다. 그리고 새롭게 산출되는 순차패리티는 또다시 레지스터부(58)에 저장되므로써 기존에 저장되어 있는 패리티를 대체한다. 이와 같은 과정을 239개의 정보심볼 즉, 순차그룹에 대하여 반복적으로 행하면 각 순차그룹에 대한 최종 순차패리티는 16개의 패리티가 되며, 이들은 제5도의 (a)에서와 같이 16개의 레지스터에 각각 저장된다.
이후 상기 16개의 레지스터에 저장된 순차패리티를 출력하는 제1패리티출력과정을 실행하는데, 출력되는 상기 순차패리티는 선택출력부(52) 및 패리티메모리(64)로 인가된다.
다음으로, 상기 제1패리티생성과정과 병행하여 제2패리티생성과정이 실행된다. 이 과정은 인터리브패리티를 연산하는 제2패리티연산과정과, 새로 생성된 인터리브패리티 및 상기 제1패리티출력과정에 의해 출력되는 제1패리티를 패리티메모리(64)를 이용하여 저장하는 제2패리티갱신저장과정과, 일정한 시점에 생성된 인터리브패리티를 출력하는 제2패리티출력과정으로 이루어진다.
각 과정을 보다 구체적으로 설명한다.
제2패리티연산과정과 제2패리티갱신저장과정은 제2패리티연산부(62)와 패리티메모리(64)에 의해 수행된다.
상기 시분할공급수단(50)으로부터 정보심볼이 'a1.1a2.1… a239.1a1.2a2.2… a239.2a1.239a2.239… a239.239'의 순서로 제2패리티연산부(62)에 인가되면 각 인터리브별로 별도의 패리티연산을 수행한다. 즉, 상기 순차패리티 연산과는 달리 'a1.1a1.2a1.3… a1.239', 'a2.1a2.2a2.3… a2.239' … 'a239.1a239.2a239.3… a239.239' 의 인터리브 단위별로 별도의 패리티연산을 실행한다. 연산방법은 상기 제1패리티연산과 마찬가지로 정보심볼이 제2패리티연산부(62)에 인가될 때마다 상기 인가되는 정보심볼이 속하는 인터리브에 대응하는 기 생성된 인터리브패리티를 상기 패리티메모리부(64)로 부터 읽어들여 연산한다. 연산에 의해 얻어지는 새로운 인터리브패리티는 마찬가지로 상기 패리티메모리부(64)의 해당 위치에 기존의 인터리브패리티를 대체하면서 갱신저장된다.
이와같은 인터리브패리티 연산을 위해서 패리티메모리부(54)는 제5도(b)에 도시된 바와 같은 크기를 가질 필요가 있다. 제5도의 b1블럭은 제3도의 정보블럭의 데이타에 대한 인터리브패리티를 저장하는 부분이고, b2블럭은 상기 제1패리티생성수단(54)의 레지스터부(58)로부터 제공된 제1패리티를 저장하는 부분이고, b3블럭은 상기 b2블럭에 저장된 제1패리티에 대한 인터리브패리티를 저장하는 부분이다. 본 발명의 예에 따를 경우 상기 패리티메모리부(64)의 크기는 다음과 같다.
(B1+B2+B3)의 메모리크기 = (16×239×8)+(16×239×8)+(16×16×8) = 30592+30592+2048 = 63232 비트
소요되는 메모리 크기를 종래 방식과 비교해보자. 종래에는 대략 518 K(비트)가 필요하나 본 발명의 경우에는 63 K(비트)가 필요하게 되어 상당량의 메모리 절약이 가능하다.
제3도의 정보블럭이 제2패리티연산부(62)에 모두 인가되면 상기 정보블럭과 순차 패리티블럭에 대한 인터리브패리티블럭(1)과 인터리브패리티블럭(2)이 모두 생성되어 제5도의 b1블럭과 b3블럭에 저장된다.
그 후 상기 b1블럭과 b3블럭에 저장된 인터리브패리티는 제어부(66)의 출력제어를 받아 선택출력부(52)로 출력되는 제2패리티출력과정을 실행한다. 출력은 제6도의 T2 시간동안에 이루어져야 하는 바, 상기 T2시간은 적어도 각 정보블럭의 마지막 정보심볼이 제2패리티연산부(62)에 인가된 이후 부터 연산을 거쳐 출력이 완료되는 시점 까지의 시간이다.
여기서 상기 제어부(66)는 패리티메모리부(64)에 저장된 인터리브패리티의 갯수를 세는 어드레스카운터와 상기 인가되는 정보심볼의 갯수를 세는 정보심볼카운터로 구성된다.
다음으로 출력선택과정을 설명한다. 이 과정은 선택출력부(52)에 의하여 수행된다. 상기 선택출력부(52)는 멀티플렉서로 구현할 수 있다. 상기 선택출력부(52)에는 별도의 전송로를 통하여 상기 시분할공급수단(50), 상기 제1패리티생성수단(54) 및 제2패리티생성수단(60)의 출력이 인가된다. 데이타 인가와 관련하여 제6도를 참조하여 설명하면, 상기 선택출력부(52)에는 상기 시분할공급수단(50)에서 출력되는 정보심볼이 시분할된 순차그룹이 T3+T1의 주기로 T3동안 인가됨과 동시에, 상기 제1패리티생성수단(54)에서 각 순차그룹마다 생성된 순차패리티가 T3+T1의 주기로 T1동안 인가되며, 상기 제2패리티생성수단(60)에서 생성된 인터리브패리티가 T의 주기로 T2동안 인가된다. 따라서 상기 선택출력부(52)는 T3와 T1시간동안 상기 시분할공급수단(50)의 출력과 상기 제1패리티생성수단(54)의 출력을 교대로 선택함을 239회 반복한 뒤 상기 제2패리티생성수단(60)의 출력을 T2동안 선택한다. 이와 같은 형태를 하나의 단위로 하여 다음의 정보블럭에도 동일하게 적용한다.
상기 선택출력부(52)의 출력데이타의 형태를 제3도를 참조하여 설명하면, ' a1.1a1.2… a1.239c1.1‥ c16.1a1.2a2.2… a239.2c1.2‥ c16.2…… a1.239a2.239… a239.239c1.239‥ c16.239p1.1p1.2… p255.1…… p1.6… p255.255' 의 순서로 출력되어 기록매체(68)에 기록된다.
이상과 같은 본 발명은 종래의 방식에 비하여 상당량의 메모리를 절약할 수 있을 뿐만 아니라 버퍼메모리에 데이타를 보관하는 방식을 취하지 않으므로 인하여 데이타의 읽기, 쓰기에 소요되는 시간을 줄일 수 있어 전체적으로 데이타 처리시간이 줄어드는 효과를 얻을 수 있다.

Claims (8)

  1. 순차전송되는 N×M개의 정보심볼 마다 소정의 검사비트를 부가하여 기록매체에 기록하므로써 재생시 오류정정이 가능하도록 부호화하는 오류 정정 부호화방법에 있어서, 순차 인가되는 N개의 상기 정보심볼을 하나의 순차그룹으로 묶고 각 순차그룹간은 T1의 시간간격을 갖도록 분할하고, M개의 순차그룹으로 구성되는 각 정보블럭간은 T2의 시간간격을 갖도록 시분할한 동일데이타를 별도의 전송로로 공급하는 시분할공급과정과, 상기 시분할공급과정에 의해 공급되는 상기 정보심볼이 인가될 때 마다 현재 인가되는 정보심볼과 기 생성된 순차패리티를 이용하여 패리티연산을 하여 새로운 순차패리티를 산출하는 제1패리티연산과정과, 상기 각 순차그룹의 마지막 정보심볼의 인가가 완료될 때 까지 상기 제1패리티연산과정에서 산출된 상기 새로운 순차패리티를 되풀이하여 갱신저장하는 제1패리티갱신저장과정과, 상기 각 순차그룹에 대한 순차패리티의 산출이 완료되면 상기 갱신저장되어 있는 각 그룹의 순차패리티를 출력시키는 제1패리티출력과정과, 상기 제1패리티출력과정에 의해 상기 순차패리티가 공급될 때마다 상기 순차패리티를 저장하는 순차패리티저장과정과, 상기 시분할공급과정에 의해 공급되는 상기 정보심볼이 인가될 때 마다 상기 정보심볼과 상기 정보심볼이 속하는 인터리브의 기 생성된 인터리브패리티를 이용하여 패리티연산을 하여 해당 인터리브의 새로운 인터리브패리티를 산출한 후 상기 순차패리티에 대한 인터리브패리티를 동일방식으로 산출하는 제2패리티연산과정과, 상기 제2패리티연산과정에서 얻어진 상기 새로운 인터리브패리티를 인터리브별로 구분하여 갱신저장하는 제2패리티갱신저장과정과, 상기 각 인터리브에 대한 인터리브패리티의 산출이 완료되면 상기 제2패리티갱신저장과정에서 저장된 각 인터리브패리티를 출력시키는 제2패리티출력과정과, 상기 시분할공급과정에 의해 공급되는 N개의 상기 정보심볼을 선택한 다음 상기 제1패리티출력과정에 의해 공급되는 상기 순차패리티를 선택하여 상기 N개의 정보심볼에 상기 순차패리티를 부가하여 출력하는 것을 M회 반복 후 상기 제2패리티출력과정에 의해 공급되는 상기 인터리브패리티를 선택하여 N×M개의 정보심볼에 상기 인터리브패리티를 부가하여 출력하는 선택출력과정을 포함함을 특징으로 하는 오류 정정부호화 방법.
  2. 순차전송되는 N×M개의 정보심볼 마다 소정의 검사비트를 부가하여 기록매체에 기록하므로써 재생시 오류정정이 가능하도록 부호화하는 오류 정정 부호화장치에 있어서, 순차 인가되는 N개의 상기 정보심볼을 하나의 순차그룹으로 묶고 각 순차그룹간은 T1의 시간간격을 갖도록 분할하고, M개의 순차그룹으로 구성되는 각 정보블럭간은 T2의 시간간격을 갖도록 시분할한 동일데이타를 별도의 전송로로 공급하는 시분할공급수단과, 상기 시분할공급수단으로부터 상기 정보심볼이 인가될 때 마다 현재 인가되는 정보심볼과 기 생성된 순차패리티를 이용하여 패리티연산을 하여 새로운 순차패리티를 구하고 상기 새로운 순차패리티의 갱신저장을 되풀이하면서 상기 각 순차그룹의 마지막 정보심볼이 인가되면 해당 순차그룹의 패리티연산을 완료하여 최종적인 순차패리티를 출력하는 제1패리티생성수단과, 상기 제1패리티생성수단에서 출력되는 순차패러티를 저장하는 한편 상기 시분할공급수단으로 부터 상기 정보심볼이 인가될 때 마다 상기 정보심볼과 상기 정보심볼이 속하는 인터리브의 기 생성된 인터리브패리티를 이용하여 각 인터리브별로 패리티연산을 하여 새로운 인터리브패리티를 구하고 상기 새로운 인터리브패리티의 갱신저장을 되풀이하면서 각 인터리브의 마지막 정보심볼이 인가되면 해당 인터리브의 패리티 연산을 완료한 후 저장해둔 상기 순차패리티에 대한 인터리브패리티를 동일방법으로 산출하여 상기 정보심볼 및 순차패리티에 대한 최종적인 인터리브패리티를 출력하는 제2패리티생성수단과, 상기 시분할공급과정에 의해 공급되는 N개의 상기 정보심볼을 선택한 후 상기 제1패리티생성수단에서 공급되는 상기 순차패리티를 선택하여 상기 N개의 정보심볼에 상기 순차패리티를 부가하여 출력하는 것을 M회 반복 후 상기 제2패리티생성수단에서 공급되는 상기 인터리브패리티를 선택하여 N×M개의 정보심볼에 상기 인터리브패리티를 부가하여 출력하는 선택출력부를 포함함을 특징으로 하는 오류 정정부호화장치.
  3. 제2항에 있어서, 상기 제1패리티생성수단은 패리티연산에 의해 산출되는 상기 순차패리티를 갱신저장하는 레지스터부와, 인가되는 상기 정보심볼과 상기 레지스터부에 저장되어 있는 기존의 순차패리티를 이용하여 새로운 순차패리티를 연산하는 제1패리티연산부로 구성됨을 특징으로 하는 오류 정정부호화장치.
  4. 제2항에 있어서, 상기 제2패리티생성수단은 패리티연산에 의해 산출되는 상기 인터리브패리티를 각 인터리브별로 구분 가능하도록 갱신저장하는 한편 상기 제1패리티생성수단에서 공급되는 상기 순차패리티를 상기 인터리브패리티와 구분되도록 저장하는 패리티메모리와, 인가되는 상기 정보심볼과 상기 패리티메모리에 저장된 인터리브패리티중 인가되는 상기 정보심볼이 속하는 인터리브에 해당하는 기존의 인터리브패리티를 이용하여 새로운 인터리브패리티를 연산한 후 상기 패리티메모리에 저장된 상기 순차패리티에 대해서도 동일방식으로 인터리브패리티를 연산하는 제2패리티연산부와, 상기 제2패리티연산부에서 산출되는 패리티가 인터리브별로 구분되어 상기 패리티메모리에 저장될 수 있도록 제어하는 제어부로 구성됨을 특징으로 하는 오류 정정부호화장치.
  5. 제4항에 있어서, 상기 제어부는 상기 패리티메모리에 저장된 인터리브패리티의 갯수를 세는 어드레스카운터와 상기 인가되는 정보심볼의 갯수를 세는 정보심볼카운터로 구성됨을 특징으로 하는 오류 정정부호화 장치.
  6. 제2항에 있어서, 상기 선택출력부는 멀티플렉스임을 특징으로 하는 오류 정정부호화장치.
  7. 제2항에 있어서, 상기 각 순차그룹간의 분할시간 T1은 상기 선택출력부에서 상기 시분할공급수단과 상기 제1패리티생성수단의 출력을 연속하여 선택하여 출력하더라도 출력형태가 상기 각 순차그룹사이에 상기 순차패리티가 위치하는 데 충분한 시간임을 특징으로 하는 오류 정정부호화장치.
  8. 제2항에 있어서, 상기 각 정보블럭간의 분할시간 T2는 상기 선택출력부에서 상기 시분할공급수단과 상기 제2패리티생성수단의 출력을 연속적으로 선택하여 출력하더라도 출력형태가 상기 각 정보블럭사이에 상기 제2패리티생성수단에서 출력되는 인터리브패리티의 집합이 위치하는 데 충분한 시간임을 특징으로 하는 오류 정정부호화장치.
KR1019930005526A 1993-03-31 1993-03-31 오류 정정부호화 방법 및 장치 KR100200810B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019930005526A KR100200810B1 (ko) 1993-03-31 1993-03-31 오류 정정부호화 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019930005526A KR100200810B1 (ko) 1993-03-31 1993-03-31 오류 정정부호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR940022524A KR940022524A (ko) 1994-10-21
KR100200810B1 true KR100200810B1 (ko) 1999-06-15

Family

ID=19353405

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930005526A KR100200810B1 (ko) 1993-03-31 1993-03-31 오류 정정부호화 방법 및 장치

Country Status (1)

Country Link
KR (1) KR100200810B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100407328B1 (ko) * 1997-07-30 2004-03-22 삼성전자주식회사 이동통신시스템의채널부호화장치및방법
KR100771625B1 (ko) * 2006-04-20 2007-10-30 엘지전자 주식회사 디지털 방송 송/수신 시스템 및 방법
KR100771631B1 (ko) * 2006-05-23 2007-10-31 엘지전자 주식회사 방송 시스템 및 방송 시스템에서 데이터를 처리하는 방법

Also Published As

Publication number Publication date
KR940022524A (ko) 1994-10-21

Similar Documents

Publication Publication Date Title
EP0729674B1 (en) Cyclical redundancy check method and apparatus
US5946328A (en) Method and means for efficient error detection and correction in long byte strings using integrated interleaved Reed-Solomon codewords
KR930001071B1 (ko) 에러 정정회로
EP0076862B1 (en) Error correction coding method
JP3234130B2 (ja) 誤り訂正符号復号化方法およびこの方法を用いる回路
EP0167627A1 (en) Method and apparatus for decoding error correction code
KR850001675B1 (ko) 멀티트랙 pcm 데이타 기록방법
JPS63197123A (ja) エラ−訂正及びチエツク装置
KR19990044903A (ko) 컴퓨터 저장 장치에서 랜덤화된 데이터에 대해crc 신드롬을 생성하기 위한 ecc 시스템
US8102996B2 (en) Scrambler, descrambler and method, and disc apparatus
US7607074B2 (en) Error detecting code addition circuit, error detection circuit and method, and disc apparatus
US6163871A (en) RAM based error correction code encoder and syndrome generator with programmable interleaving degrees
JP3891568B2 (ja) 誤り訂正符号を復号化する方法及び装置
USRE28923E (en) Error correction for two bytes in each code word in a multi-code word system
KR100200810B1 (ko) 오류 정정부호화 방법 및 장치
KR100499467B1 (ko) 블록 인터리빙 방법 및 그를 위한 장치
EP1388944A1 (en) Cross interleave reed-solomon code correction
US6718505B1 (en) Method and apparatus for error correction in a process of decoding cross-interleaved Reed-Solomon code (CIRC)
EP1111799B1 (en) Error correction with a cross-interleaved Reed-Solomon code, particularly for CD-ROM
JPH08509351A (ja) セミサイクリックコードに基づく誤り補正可能データ伝送方法及び装置
JP2738659B2 (ja) 符号化方法,符号化装置,及び復号化装置
EP1388946A1 (en) Cross interleave reed-solomon code correction
SU972589A1 (ru) Логическое запоминающее устройство
JPH11163739A (ja) 消失誤り訂正方法とその装置
JPS6342343B2 (ko)

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

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee