KR20110091506A - Ecc 코딩된 비트스트림 삭제 디코딩 방법 및 장치 - Google Patents

Ecc 코딩된 비트스트림 삭제 디코딩 방법 및 장치 Download PDF

Info

Publication number
KR20110091506A
KR20110091506A KR1020117010246A KR20117010246A KR20110091506A KR 20110091506 A KR20110091506 A KR 20110091506A KR 1020117010246 A KR1020117010246 A KR 1020117010246A KR 20117010246 A KR20117010246 A KR 20117010246A KR 20110091506 A KR20110091506 A KR 20110091506A
Authority
KR
South Korea
Prior art keywords
error
clue
positive
data
information
Prior art date
Application number
KR1020117010246A
Other languages
English (en)
Other versions
KR101639090B1 (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 톰슨 라이센싱
Publication of KR20110091506A publication Critical patent/KR20110091506A/ko
Application granted granted Critical
Publication of KR101639090B1 publication Critical patent/KR101639090B1/ko

Links

Images

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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • H03M5/145Conversion to or from block codes or representations thereof
    • 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/10046Improvement or modification of read or write signals filtering or equalising, e.g. setting the tap weights of an FIR filter
    • 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/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2954Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using Picket codes or other codes providing error burst detection capabilities, e.g. burst indicator codes and long distance codes [LDC]
    • 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/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • G11B2020/1457Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof wherein DC control is performed by calculating a digital sum value [DSV]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

에러 위치를 안다면 블록 코드의 에러 정정 능력이 배가될 수 있다. 종래 기술에서의 에러 위치 검출 방식은 반드시 전용의 중복 데이터를 부가하고 이를 평가하여 에러 위치 정보를 생성해야 하는 과정을 포함한다. 본 발명은 데이터 스트림 속에 존재하는 특정의 DC 제어 비트(32)로부터 클루(31) 형태의 에러 위치검출 정보를 도출하는 방법을 제시하고 설명한다.

Description

ECC 코딩된 비트스트림 삭제 디코딩 방법 및 장치{METHOD AND APPARATUS FOR ERASURE DECODING AN ECC CODED BITSTREAM}
본 발명은 버스트 에러 환경에서 디지털 데이터의 에러 정정 코딩 및 디코딩 기술분야에 관한 것으로, 특히 저주파 저감 데이터를 포함하는 디지털 데이터의 삭제 디코딩에 관한 것이다.
디지털 데이터 스토리지에서는 페이로드 데이터를 에러로부터 보호하기 위해서 녹화 측에서 채널 코딩에 앞서 에러 정정 인코딩을 실시하고, 이에 대응하여 판독 측에서 채널 디코딩 후에 에러 정정 디코딩을 실시한다. 소위 블록 코드는 널리 사용되는 에러 정정 코드의 일종이다. 리드 솔로몬(Reed Solomon) 코드는 블록 코드의 일례이다.
광학 저장 채널은 통상적으로 랜덤 에러 이외에도 스크래치, 먼지, 지문, 기포, 기타 결함에 의해 유발되는 긴 버스트 에러를 갖고 있다. 버스트 에러를 방지하기 위해서 인터리브식(interleaved) 리드 솔로몬 코드가 널리 이용된다. 긴 인접 심볼 열에 악영향을 미치는 버스트 에러는 인터리빙 단계에서 후속 리드 솔로몬 코드에 의해 정정될 수 있기에 충분히 넓게 떨어진 단일 심볼 에러들로 변환된다.
블록 코드의 에러 정정 기능은 잘못된 심볼의 위치를 안다면 배가될 수 있다는 것은 잘 알려져 있다. 그러므로 실제 에러 정정 방식의 중요한 서브태스크(sub-task)는 이들 에러 위치를 추정 또는 검출("삭제(erasure)"라고도 함)하는 것이다.
버스트 에러 환경에의 삭제 검출에 대해서 소위 "피켓 코드(picket code)"방식이 미국특허 제6,378,100호에 개시되어 있다. 이 방식에서는 사용자 데이터들 사이에 소위 "버스트 표시 서브코드" 또는 BIS 필드가 규칙적으로 배치되어 있다. 이 방식은 에러 버스트를 포함하는 데이터 시퀀스를 가정하고 이를 목표로 한다. 그러므로 2개의 연속한 BIS 필드가 오류가 있는 것으로 밝혀질 때마다 이들 사이의 사용자 데이터는 삭제인 것으로 추정된다. BIS 필드와 사용자 데이터의 배치는 도 1에 나타나 있다. 각 섹터 내의 BIS 필드는 소위 코드워드로 그룹화되며 이 코드워드에는 자신의 매우 강한 에러 정정 코드가 제공된다.
이러한 공지의 삭제 검출 방식은 다음과 같은 결점을 갖고 있다고 할 수 있다.
- BIS 필드의 오류는 개별적으로 검출될 수 없다. 즉, 항상 BIS 코드워드 전체가 읽어지고 디코딩되어야 한다. 결과적으로 BIS 필드에 기초한 삭제 검출 방식은 한 섹터의 레이턴시 또는 지연을 갖는다.
- BIS 필드를 그 에러 방지 코드와 함께 삽입하는 것은 중복 오버헤드(redundancy overhead)가 상당히 많이 드는 것이다.
다른 삭제 정보 생성 방식은 JJAP-43-4867의 "고밀도 광 저장 시스템의 새로운 에러 정정 알고리즘(A New Error Correction Algorithm for High-Density Optical Storage Systems)"에 개시되어 있다. 이 방식에서는 행들이 블록으로 분할된다. 에러를 검출할 수만 있고 정정은 할 수 없는 이너(inner) (i+1, i, 2) RS-코드는 각 블록의 i개의 고루 분포된 정보 바이트에 적용된다. 이렇게 해서 생기는 RS-코드 패리티 바이트는 각 블록에 첨부된다. 이너 RS-코드워드 무결성(integrity)을 체크하는데는 신드롬 체킹(syndrome checking)이 이용된다. 이너 RS-코드워드 장애를 가진 블록은 삭제되어야 하는 것으로 표명된다. 이 방식은 상이한 행들 간의 워드와이즈 인터리빙(wordwise interleaving)은 하지 않는다. 대신에 각 이너 RS-코드워드의 심볼들이 행 내의 대응 블록과 함께 균일하게 분포된다. 따라서 이너 RS-코드워드의 물리적 팽창이 작기 때문에 에러 위치검출 RS 코드는 불필요하다. 인터리빙이 없으면 레이턴시가 감소한다. 그러나 JJAP-43-4867의 방식은 삭제 생성을 위해 추가적인 중복이 필요하다는 결점이 있는 것으로 볼 수 있다.
그러므로 개선된 삭제 검출 방식이 요구된다.
<발명의 개요>
본 발명은 채널 인코딩된 데이터 스트림에 존재하는 중복(redundancy)을 삭제 검출의 기초로 이용하는 것을 제안한다. 본 발명에 따른 방법에서 비트스트림에 포함된 중복으로부터 삭제 정보가 도출된다. 중복은 일반적으로 예컨대 어떤 데이터의 다른 데이터에의 종속성의 의미에서 데이터의 구속성(constrainedness)에 대응한다. 이런 종류의 종속성은, 위반 시에, 리드백(readback) 측에서, 데이터 에러가 존재하고 있다고 결론을 내릴 수 있고, 데이터 에러로부터 삭제 정보가 공제 또는 추출될 수 있고, 이에 따라 삭제 검출이 가능하도록 할 수 있다.
본 발명에서는 미공개 유럽 특허출원 EP 07107630의 DC 제어 방법이 이용되는 경우에는 채널 인코딩된 데이터 스트림 내에 특정 중복이 존재하고 이 특정 중복이 삭제 검출에 이용될 수 있다는 것을 인식하고 있다. EP 07107630의 방법은 비록 작지만 잘 알려진 어떤 중복을 가진 소위 DC 제어 비트를 이용한다. 그러므로 선행 데이터 비트와 후속 데이터 비트를 함께 취하면 각 DC 제어 비트 패턴은 삭제 클루(clue)로서 이용될 수 있다. EP 07107630에 따른 DC 제어 비트는 DC 제어 비트 패턴의 일 실시예를 구성한다. 본 발명에 따른 방법에서, ECC 코딩된 비트스트림이 그와 같은 DC 제어 비트 패턴을 포함하면 이 ECC 코딩된 비트스트림에 포함된 DC 제어 비트 패턴으로부터 삭제 정보가 도출된다.
본 발명에서 이용되는 중복은 모든 가능한 비트 조합 또는 바이너리 워드 값이 EP 07107630에 따른 유효 DC 제어 비트인 것은 아니라는 사실에 근거한다. 즉, n 제어 비트가 데이터 블록들 사이에 삽입되는 것으로 가정하면, 전체 2**n개의 개별 워드 값 세트는 개념적으로는 다음과 같이 세분될 수 있다.
- 유효 DC 제어 비트 패턴을 구성하는 워드 값을 포함하는 제1 서브세트, 및
- 유효 DC 제어 비트 패턴을 구성하지 않는 워드 값을 포함하는 제2 상보(complementary) 서브세트.
유효 DC 제어 비트 패턴을 구성하는 값을 가진 바이너리 워드를 수신한다는 것은 채널 에러가 발생하지 않았고, 따라서 이들 값도 하기의 "네거티브( negative ) 클루"로 표시될 것임을 의미하는 것으로 해석될 수 있다.
이에 대응하여, 유효 DC 제어 비트 패턴을 구성하지 않는 값을 가진 바이너리 워드를 수신한다는 것은 채널 에러가 발생하였고, 따라서 이들 값도 하기의 "포지티브( positive ) 클루"로 표시될 것임을 의미하는 것으로 해석될 수 있다.
모든 개별적 워드 값의 참(true) 서브세트만이 유효 DC 제어 비트 패턴을 구성한다. 즉, 제2 서브세트는 비어있지 않다. 이 사실은 DC 제어에 전용인 비트스트림 부분이 구속되는 것, 즉 이들 비트스트림 부분에 중복이 포함됨을 보여준다. EP 07107630에 따른 DC 제어 방법에서 모든 개별 워드 값의 절반 이상이 유효 DC 제어 비트 패턴을 구성하는데, 이는 중복이 작다는 것을 뜻한다. 이 개별 워드 값의 소수만이 유효 DC 제어 비트 패턴을 구성하지 않는다. 그러므로 저장 채널의 에러는 대개는 네거티브 클루를 다른 네거티브 클루로 변경시킨다. 즉, 모든 채널 에러가 비트스트림의 DC 제어 비트 부분에 영향을 주더라도 포지티브 클루로 보이도록 하는 것은 아니다. 따라서 포지티브 클루를 수신하는 것으로부터 삭제를 검출할 확률은 낮으며 분류 오류(misclassification)를 고려해야 한다. 그러므로 본 발명은 바람직한 확장으로서, 비트 계열로서 보여지는 포지티브/네거티브 클루 계열에 대한 비선형 미디언(median) 필터 방식 후처리를 설명한다.
본 발명은 에러 검출을 위해 추가적인 중복을 소비하지 않고서 삭제 정보를 생성할 수 있다. 이는 EP 07107630에 개시된 방법에 따라 RLL 변조된 비트스트림에 주기적으로 삽입된 DC-제어 비트의 고유 중복을 이용함으로써 달성된다. 본 발명에 따라 생성된 삭제 정보는 이 정보가 사용되는 유일한 삭제 정보를 구성하는 시스템에서 이용될 수 있다. 하기에 설명되는 예시적인 실시예는 그러한 시스템이다.
대안으로서, 본 발명에 따라 생성된 삭제 정보는 다른 소스로부터 도출된 다른 종류의 삭제 정보에 대한 보완으로서 이용될 수 있다. 상이한 소스로부터 생기는, 또는 상이한 방법으로 생성되는 2 종류의 삭제 정보를 갖게 되면, 이 2 종류의 삭제 정보를 통합함으로써, 예컨대 이들 정보를 일종의 다수결을 이용하여 통합함으로써 분류 오류를 검출하여 없앨 수 있다는 이점이 있다. 본 발명에 따라 생성된 삭제 정보는, 이를 생성하는데 중복 삽입이 필요없기 때문에, 즉 레이트 손실이 발생하지 않기 때문에, 특히 추가 또는 보완 삭제 정보로서 이용하는데 적합하다.
본 발명의 예시적인 실시예들은 도면에 도시되어 있으며 다음의 발명의 상세한 설명에서 더 자세히 설명한다. 도면에서,
도 1은 www.blu-raydisc.com에 발표된 기술 백서, "BD-R의 1.B 물리적 포맷 사양"에서 인용한 종래 기술의 BD 피켓 코드를 보여주는 도.
도 2는 본 발명에 따라서, 동기 블록을 간헐적으로 삭제 클루가 있는 채널 데이터 블록 계열로 세분하는 것을 보여주는 도.
표 1은 (1,7) RLL 코드에 삽입 시의 DC-제어 비트값의 주위 비트값에의 종속성을 보여주는 표.
도 3은 2 비트 테일 데이터, 2 DC 제어 비트 및 2 비트 헤드 데이터로부터 6 비트 삭제 클루를 구성하는 것을 보여주는 도.
표 2는 6 비트 삭제 클루의 64개 개별 값 중 유효 클루를 구성하는 것과 무효 클루를 구성하는 것을 보여주는 표.
도 4는 4 비트 테일 데이터, 2 DC 제어 비트 및 2 비트 헤드 데이터로부터 8 비트 삭제 클루를 구성하는 것을 보여주는 도.
표 3은 8 비트 삭제 클루의 256개 개별 값 중 유효 클루를 구성하는 것과 무효 클루를 구성하는 것을 보여주는 표.
도 5는 수신된 클루 계열의 예와 가정된 기본 에러 이벤트를 보여주는 도.
도 6은 고립된 포지티브 클루를 무시한 후(단계 1)의 도 5의 클루 계열을 보여주는 도.
도 7은 고립되지 않은 포지티브 클루를 연결한 후(단계 2)의 도 6의 클루 계열을 보여주는 도.
도 8은 포지티브 클루를 확장한 후(단계 3)의 도 7의 클루 계열을 보여주는 도.
도 9는 삭제로 플래그되고 있는 데이터 범위(단계 4)를 보여주는 도.
디지털 데이터 스토리지에서는 채널 변조라고도 하는 채널 코딩을 이용하여 디지털 데이터를 저장 채널의 요건에 맞는 신호로 변환한다. 채널 코딩에 이용되는 한 가지 개념은 "DC 제어"로 표기하며 신호 스펙트럼 중 저주파 종단에 영향을 미치는 신호 처리 단계들을 포함한다. 만일 저장 매체에 기입되고 있는 신호가 "무DC(DC free)"라면, 즉 적어도 평균적으로 이 신호가 광 데이터 저장의 경우에 "스페이스(space)"와 그 만큼의 "피트(pit)"를포함하거나 자기 데이터 저장의 경우에 "마이너스"와 그 만큼의 "플러스"를 포함하고 있다면, 저장 판독 측에서의 신호 재생이 가능하다. 그러한 상황에서 신호의 저주파 내용은 소위 RDS(running digital sum)로 측정된다.
미공개 유럽 특허출원 EP 07107630은 디지털 데이터 블록 계열을 채널 인코딩하면서 DC 콘텐츠를 제어하는 방법과 장치를 개시하고 있다. 이 데이터 블록은 개별적으로 헤드부, 바디부 및 테일부로 세분되며, 각 부는 그 길이가 가변적이다. 특정 데이터 블록의 각 테일부는 삽입된 제어 비트 및 다음 번 데이터 블록의 헤드부와 함께 소위 제어 블록으로 그룹화된다. EP 07107630에 따르면 헤드부와 테일부의 크기는 데이터 블록의 바디부와 제어 블록의 독립적인 런렝스(runlength) 제한 인코딩을 가능하게 하도록 동적으로 선택된다. EP 07107630에 따른 제어 비트 삽입은 소위 "반전(inverting)" 제어 비트 패턴과 "보존(preserving)" 제어 비트 패턴 사이의 선택을 포함하며, 이러한 선택에 의해 바디부의 RDS 기여분이 반전될 수 있다. EP 07107630은 DC 콘텐츠를 최소화하도록 이러한 선택을 실행하는 것에 대해 개시하고 있다.
오류 심볼의 위치를 알면 RS 코드의 에러 정정 능력이 실질적으로 배가될 수 있다는 것은 잘 알려져 있다. 그러므로 실제 에러 정정 방식의 중요한 서브태스크(sub-task)는 이들 에러 위치를 추정("삭제"라고도 함)하는 것이다. 공지의 블루레이 디스크 포맷에서 미국특허 제6,378,100호에 개시되어 있는 피켓 코드 방식은 이를 위해 사용되며, 이 방식에서는 사용자 데이터들 사이에 소위 "버스트 표시 서브코드" 또는 BIS가 규칙적으로 배치되어 있으며, 2개의 연속한 오류 BIS 필드 간의 사용자 데이터는 삭제인 것으로 생각한다.
블루레이 디스크는 피켓 내의 오류 심볼의 위치를 찾는 피켓 코드 방식을 이용한다. 이 정보는 오류 피켓들 간의 삭제를 표명하는 특정 방식으로 이용될 수 있다. 그러므로 피켓도 버스트 표시 서브코드 또는 BIS라고 한다. 블루레이 포맷에서 각 ECC 프레임은 4개의 피켓으로 이루어지며, 이중에서 제1 피켓은 동기 워드로 주어진다.
사용자 데이터를 보호하는 RS [248, 216, 33]의 전체 삭제 정정 기능을 이용하기 위해서, 24개의 인터리브된 RS [62 30, 33] 코드워드를 이용하여 피켓 내의 에러의 위치를 찾아낼 확률이 높다.
이 방식의 기본 개념은 미국특허 제6,378,100호에서 나온다. 이 개념은 JJAP-39-912의 "디지털 비디오 녹화용 광 디스크 시스템(Optical Disc System for Digital Video Recording)"에도 게재되어 있다. 미국특허 제6,378,100호에서는 피켓 코드워드를 "클루 워드"라고 하는데, 이는 "데이터를 제1의 멀티심볼 에러 정정 코드의 코드워드로 인코딩함으로써 형성된다". 사용자 데이터 RS 코드워드는 "타겟 워드"라고부르는데, 이는 "데이터를 제2의 멀티심볼 에러 정정 코드의 코드워드로 인코딩함으로써 형성된다". 이들은 함께 "클루워드와 타겟 워드로" 분할되고 "워드식(wordwise) 인터리빙 및 에러 방지 코딩된" "멀티워드 정보"라고 한다.
이 피켓 코드 방식은 다음과 같은 단점을 갖고 있다고 볼 수 있다.
- 삭제 정보는 단일 섹터를 나타내는 특정 수의 행 또는 동기 블록이 수신되어 디코딩되지 않았다면 생성될 수 없다. 따라서 한 섹터의 레이턴시가 최소가 된다.
- 클루 워드의 에러 방지 수준을 높이려면 추가적인 중복이 필요하다.
본 발명에 따라서, 판독된 채널 데이터 비트 스트림 내의 삭제 정보는 채널 데이터 비트의 블록들 간의 주기적으로 삽입된 에러 위치검출 클루의 무결성을 체크함으로써 생성된다. 그러면 특정 거리 내의 에러 표시 (포지티브) 클루들 간의 블록은 삭제되는 것으로 표명된다.
클루는 중복이 부가된 소정 수의 채널 데이터 비트 또는 다른 서브채널 데이터 비트로 구성된다. 중복은 패리티 체크, CRC 또는 기타 다른 에러 검출 코드나 방법에 의해 유발될 수 있다. 또한 무결성 체크를 위해서는 DC-제어 비트 삽입과 같이 에러 검출이 주목적이 아니면서 다른 방법에 의해 유발되는 고유 중복이 이용될 수 있다.
주목해야 할 중요한 점은 본 발명에 따라서 다른 클루는 무시하고 각 개별 클루에 대해 에러 검출에 달하는 무결성 검사가 실시될 수 있다는 것이다. 즉 다중심볼 클루 워드는 존재하지 않는다. 이 특성은 다음의 설명에서는 "자기 점검 클루(self checkable clue)"라고 할 것이다.
클루는 자기 점검이 가능하고 유발된 중복은 보통은 낮기 때문에 에러 검출 확률도 낮다. 그러나 긴 채널 장애 버스트, 즉 긴 버스트 에러는 많은 클루에 오류가 생기게 할 가능성이 크다. 그러므로 버스트 길이가 증가하면 이들 중 적어도 일부를 검출할 확률이 증가할 것이다. 2개의 인접한 포지티브 클루 사이에 위치한 네거티브 클루는 (이 경우에 2개의 클루를 "인접"한 것으로 생각하기 위한 한계 거리는 에러 검출 확률과 랜덤 에러 확률에 따라 다름) 검출되지 않은 에러에 의해 유발되는 것으로 가정한다. 이 가정에 따라서 인접 포지티브 클루들 사이의 네거티브 클루는 반전되고, 이에 따라서 긴 삭제를 타나태는 인접 포지티브 클루 계열이 생성된다. 버스트가 길수록 삭제 정보의 신뢰성은 더 높아질 것이다.
이 실시예에서 채널 데이터 비트 스트림은 주기적으로 삽입된 동기 패턴을 통해 블록들로 분할되는 것으로 가정한다. 또, 에러 버스트에 의한 동기 패턴의 에러 발생도 검출될 가능성이 큰 것으로 가정한다. 이러한 가정들에 따라서 각 동기 블록 내의 삭제 구간들은 독립적으로 표명될 수 있을 것이나 본 발명의 원리는 이러한 가정이 유지되지 않더라도 적용될 수 있을 것이다.
도 2에 도시된 바와 같이, 이 실시예에서 동기 블록은 (n-1)개의 삭제 클루를 통해 n개의 채널 데이터 블록으로 분할된다. 통상적으로 블록 당 채널 데이터 비트의 수는 클루 비트의 수보다 훨씬 많다. 이는 도 2에서 파단선으로 나타나 있다. 즉, 클루 비트의 수는 2개의 연속한 클루 사이의 채널 데이터 비트의 수보다 상당히 적다.
본 발명은 클루의 무결성 검사를 통해 에러 버스트를 식별하는 것을 목적으로 한다. 무결성 검사 실패를 나타내는 포지티브 클루는 삭제 구간을 표명하는데 이용된다. 클루는 자기 점검이 가능해야 한다. 즉, 클루에 에러가 발생하였는지 여부를 아는 데 클루 자신이 아닌 다른 정보는 필요없다. 이 점이 다중심볼 코드워드로부터 클루를 추출하는 미국특허 제6,378,100호에 개시된 방법과 다른 것이다. 미국특허 제6,378,100호는 인코딩된 클루 워드로부터 에러 위치지시 클루를 도출하며, 따라서 에러 위치검출 프로세스가 있어야 한다. 본 발명에서는 클루 위치를 알기 때문에 에러 위치검출 프로세스가 필요치 않다.
여분의 에러 검출 중복을 유지하는 길이 y의 자기 점검 클루는,
● y 기정 데이터 비트를 이용하고,
● (y,y-z) 에러 검출 코드, 예컨대 단일 패리티 체크, CRC 등을 가지고 y-z (서브)채널 데이터 비트를 인코딩함으로써 구성될 수 있다. 체계적인 코드의 경우에는 패리티에 접두사나 접미사가 붙여질 수 있다.
본 발명은 주기적으로 삽입된 서브채널 또는 제어 구조의 고유 중복을 클루로 이용하는 대신에 여분의 중복을 이용하지 않고 자기 점검 클루를 구성한다는 점에서 다른 방식을 사용한다. 본 발명의 일 양상에 따라서, EP 07107630에 개시된 DC-제어 비트 삽입법에 의해 유발된 중복을 자기 점검 클루로 이용한다. 표 1은 EP 07107630에 따른 (1,7) RLL 코드로의 DC-제어 비트 삽입을 보여준다. 단 몇 개의 특수한 데이터 비트의 조합으로부터 생긴 DC-제어 블록의 특이한 RDS의 반전이나 보존을 보장하기 위해 2개의 DC-제어 비트를 소비할 필요가 있다. 그러므로 EP 07107630에 따라 선택된 2 DC 제어 비트 마다 1 비트보다 약간 작은 중복을 포함한다.
표 1에서 ci로 나타낸 2 DC-제어 비트는 적어도 일부 경우에는 이들 비트에 선행하는 2 테일 비트 utail i -1과 후속하는 2 헤드 비트 uhead i에 따라 달라진다. 표 1의 라인들은 (여기서는 utail i-1에 대한 값, uhead i에 대한 값, 또는 이 둘 다 나타나 있지 않음) 약기법(shorthand notation)을 구성하며, 비어 있는 표의 칸들은 "무관심(don't care)"을 지시하는 것을 가정하는 것으로 해석되어야 한다.
설명된 종속성을 평가할 수 있기 위해서 2 테일 비트, 2 DC-제어 비트 및 2 헤드 비트가 이 순으로 연쇄되어 6 비트 클루가 된다. EP 07107630에 규정되고 표 1에 나타낸 DC 제어 비트의 특정 종속성을 이용하고 "무관심" 칸에 요약된 경우들을 개별적으로 나열하면 6 비트 워드에 대해 존재하는 64개의 개별 값들 중에서 37개 값은 유효를 나타내는 네거티브 클루이고 27개 값은 무효를 나타내는 포지티브 클루인 것으로 나타난다. 이는 에러를 찾을 확률이 낮다는 것을 의미한다. 즉, 클루에 중복이 확산된다.
표 2는 6 비트 삭제 클루의 64개 개별 값 중 유효 클루를 구성하는 것과 무효 클루를 구성하는 것을 보여준다.
DC 제어 비트를 삭제 클루로 이용하는 것의 이점은 추가 중복의 삽입이 필요하지 않아 이 방법이 레이트 손실(rate loss)을 겪지 않는다는 것이다. 또한, 단순히 표 2에서 클루 값을 찾거나 이와 유사한 작업을 통해 수신한 후에 바로 모든 클루를 체크할 수 있다.
또한, DC-제어 비트와 클루가 이들의 미약한 에러 검출 기능을 부분적으로 보상하는 채널 데이터 스트림 내에 자주 나타날 것이라는 것을 고려해야 한다.
만일 2 선행 데이터 비트가 아니라 4 선행 데이터 비트를 고려하면 에러 검출 확률이 더 증가할 수 있다. 도 4는 이러한 삭제 클루 구성 변형을 보여준다. 256개의 개별 8 비트 클루값 중에서 133개는 네거티브 클루를 구성하고 123개는 포지티브 클루를 구성한다. 표 3은 그 결과로 만들어진 탐색표를, 즉 8 비트 삭제 클루의 256개 개별 값 중 유효 클루를 구성하는 것과 무효 클루를 구성하는 것을 보여준다. 유효 클루, 즉 네거티브 클루는 "1"로 표시하고 무효 클루, 즉 포지티브 클루는 "0"으로 표시한다.
여분의 중복이나 고유의 중복으로부터 생기는 클루 에어 검출 능력이 낮을 때마다, 브리징법(bridging strategy)을 적용하여 많은 미검출 클루로 인한 삭제 구간들을 식별할 수 있다.
하기의 브리징법은 포지티브 클루를 이용하여 삭제 구간들을 식별한다. 동기 패턴은 높은 버스트 에러 검출 가능성과 높은 신뢰성을 가진 경계 클루의 역할을 할 수 있다. 이에 따라서 인접 동기 블록 내의 클루를 고려하지 않아도 동기 블록 내의 삭제를 표명할 수가 있을 것이다. 그러지 않으면 슬라이딩 윈도우(sliding window) 기법이 이어져야 한다.
양 경우에 다음의 방법이 단계적으로 적용될 수 있다.
단계 1: 단일의, 즉 고립된 포지티브 클루는 무시한다. 여기서, 만일 어떤 포지티브 클루의 다른 가장 가까운 포지티브 클루까지의 거리가 소정 임계치를 넘으면 그 포지티브 클루는 고립된 것으로 간주되어야 한다. 이러한 고립된 포지티브 클루는 랜덤 에러에 기인할 가능성이 크며 따라서 네거티브로 바뀐다. 랜덤 에러 환경에서는 가상 무에러(error-free) 환경에서보다 더 작은 임계 거리를 적용하는 것이 적당할 수 있다.
단계 2: 고립되지 않은 포지티브 클루들을 연결한다. 서로간에 임계 거리 이상으로 멀리 떨어지지 않은 2개의 포지티브 클루 간의 연속한 네거티브 클루 계열은 미검출 버스트 에러로 인한 것으로 간주되고, 이에 따라서 포지티브로 바뀐다.
단계 3: 포지티브 클루 계열을 소정 여유만큼 확장한다: 연속한 포지티브 클루 계열에 인접한 특정 수의 네거티브 클루는 포지티브로 바뀐다. 이 여유의 크기는 오검출 클루와 미검출 클루 간의 원하는 비율에 따라 조정될 것이다.
단계 4: 포지티브 클루와, 포지티브 클루에 의해 적어도 일 측에 배치된 채널 데이터 블록을 삭제로 플래그한다.
도 5 내지 도 9는 브리징법을 적용하는 방법의 일례를 보여준다. 이 예에서 단일 랜덤 에러와 버스트 에러는 나타나 있는 것으로 가정한다. 이들 에러로 인해, 도 5에서 좌측부터 2번째, 6번째 및 9번째 클루에 "+"로 나타낸 바와 같이 3개의 포지티브 클루, 즉 에러 표시 클루가 채널 비트 스트림에서 식별되었다고 가정한다. 상기 단계 1의 임계 거리는 3개 채널 데이터(이 데이터들 사이 사이에 2개의 클루가 개재되어 있음)인 것으로 가정한다. 상기 단계 3의 여유는 1 채널 데이터 블록인 것으로 가정한다.
단계 1: 고립된 포지티브 클루는 무시한다: 도 5에서 "랜덤 에러"로 표기된 포지티브 클루는 다음 번 포지티브 클루가 임계 거리인 3 채널 블록을 넘는 4 채널 블록만큼 떨어져 있기 때문에 네거티브로 표명될 것이다. 도 5에서 "버스트 에러"로 표기된 2개의 포지티브 클루는 이들의 거리가 임계 거리 내에 있으므로 변하지 않고 그대로 있을 것이다. 도 6은 단계 1을 적용한 결과를 보여준다: 랜덤 에러로부터 생기는 것으로 간주된 고립 클루는 삭제되었다.
단계 2: 고립되지 않은 포지티브 클루들을 연결한다: 2개의 나머지 포지티브 클루 사이의 구간에 있는 2개의 네거티브 클루는 포지티브로 바뀐다. 도 7은 단계 2를 적용한 결과를 보여준다: 이제는 6번째 클루부터 9번째 클루까지의 포지티브 클루의 단일의 연속 "런(run)"이 있다.
단계 3: 포지티브 클루 계열을 소정 여유만큼 확장한다: 1의 여유 크기를 적용하면, 포지티브 런의 좌측과 우측에 인접한 한 개의 클루가 포지티브로 바뀐다. 도 8은 단계 3을 적용한 결과를 보여준다: 이제 포지티브 클루의 런은 5번째 클루로부터 10번째 클루로 확장된다.
단계 4: 도 9에 도시된 바와 같이, 간헐적인 6개의 포지티브 클루를 포함하는 7개의 데이터 블록은 삭제되는 것으로 표명된다. 여유 1 확장 과정에서 포지티브로 바뀌었던 최우측의 포지티브 클루, 즉 10번째 클루는 실제로는 오검출 또는 잘못된 네거티브를 구성함에 유의한다. 클루는 검출되지 않았다. 즉 잘못된 네거티브는 없다.
본 발명의 개념은 긴 버스트에서 에러가 발생할 가능성이 있고 그리고/또는 수신기나 리드패스(readpath)가 낮은 레이턴시 삭제 정보를 이용할 수 있는 임의의 전송 또는 저장 시스템에 적용될 수 있다.
본 발명의 이점은 다음과 같다:
- DC 제어 비트로부터의 제시된 클루는 자기 점검이 가능하다. 즉 클루에 에러가 발생했는지 여부를 검출하는데 다른 정보가 필요없다.
- 그러므로, 고유의 레이턴시가 없다.
- DC 제어 비트와 이에 기초한 클루는 약한 에러 검출 기능을 부분적으로 보상하는 미국특허 제6,378,100호의 BIS보다 더 자주 사용자 데이터 스트림 속에 배치된다.
- 본 발명의 방법은 DC 제어에 필요한 것 이상의 중복 경비가 들지 않으면서 삭제 검출을 제공한다.
본 발명은 양호하게는 버스트 에러 환경에서 에러 정정 디코딩 전에 낮은 레이턴시 삭제 정보를 생성할 수 있다. 낮은 레이턴시 삭제 정보는 다음의 이유 또는 목적으로 유용할 수 있다.
● 만일 리드 솔로몬과 같은 아우터(outer) 버스트 에러 정정 코드가 섹터보다 작은 길이의 행 정렬 랜덤 에러 정정 이너 RS 또는 LDPC 코드와 함께 사용되는 경우, 긴 버스트 에러가 이너 코드의 에러 정정 능력을 넘어서서 디코딩을 쓸모 없게 만들 가능성이 있기 때문에 이너 코드 디코딩 전에 삭제 정보를 이용하는 것이 바람직하다. 반면에 짧은 에러 버스트는 삭제로 올바르게 플래그된다면 이너 코드에 의해 여전히 디코딩될 수 있다.
● 만일 한 동기 블록에 실시되는 보간 타이밍 복원이 이용되는 경우에는 삭제 정보를 평가함으로써 개략적인 무결성 체크가 수행될 수 있다.
● 광 드라이브 리드패스 내의 다른 태스크가 낮은 레이턴시 삭제 정보를 이용할 수 있는 경우.
본 발명은 에러 표시 클루로부터 삭제 구간을 생성하는 방법을 제시한다. 임의 길이의 에러 버스트가 검출될 수 있다.
즉, 에러 위치를 안다면 블록 코드의 에러 정정 능력이 배가될 수 있다. 종래 기술에서의 에러 위치 검출 방식은 반드시 전용의 중복 데이터를 부가하고 이를 평가하여 에러 위치 정보를 생성해야 하는 과정을 포함한다. 본 발명은 데이터 스트림 속에 존재하는 특정의 DC 제어 비트(32)를 이용하고 이로부터 클루(31) 형태의 에러 위치검출 정보를 도출하는 방법을 제시하고 설명한다.
Figure pct00001
Figure pct00002
Figure pct00003

Claims (7)

  1. DC 제어 비트 패턴들을 포함하는 ECC 코딩된 비트스트림을 삭제 디코딩(erasure decoding)하는 방법으로서,
    상기 DC 제어 비트 패턴들로부터 삭제 정보가 도출되는 비트스트림 삭제 디코딩 방법.
  2. 제1항에 있어서,
    특정 발생 확률을 가진 상기 비트스트림 내에서의 특정 심볼의 발생으로부터 삭제 확률이 도출되는 비트스트림 삭제 디코딩 방법.
  3. 제1항에 있어서,
    상기 DC 제어 비트 패턴들은 상기 비트스트림으로부터의 선행 데이터 비트 및 후속 데이터 비트와 함께 상기 비트스트림의 DC 제어 비트들부터 형성되는 비트스트림 삭제 디코딩 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 비트스트림으로부터 추출된 상기 삭제 정보에 비선형 필터가 적용되는 비트스트림 삭제 디코딩 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 삭제 정보는 상기 삭제 디코딩에 이용되기 전에 제2 삭제 정보와 통합되는 비트스트림 삭제 디코딩 방법.
  6. 제5항에 있어서,
    상기 통합은 상기 삭제 정보의 해당 비트들과 상기 제2 삭제 정보의 해당 비트들 간의 다수결에 의해 수행되는 비트스트림 삭제 디코딩 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 따른 방법을 수행하도록 장비되고 구성된 장치.
KR1020117010246A 2008-11-05 2009-10-28 Ecc 코딩된 비트스트림 삭제 디코딩 방법 및 장치 KR101639090B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP08305774.5 2008-11-05
EP08305774A EP2187397A1 (en) 2008-11-05 2008-11-05 Method and apparatus for erasure decoding an ECC coded bitstream

Publications (2)

Publication Number Publication Date
KR20110091506A true KR20110091506A (ko) 2011-08-11
KR101639090B1 KR101639090B1 (ko) 2016-07-12

Family

ID=40677853

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117010246A KR101639090B1 (ko) 2008-11-05 2009-10-28 Ecc 코딩된 비트스트림 삭제 디코딩 방법 및 장치

Country Status (6)

Country Link
US (1) US8560912B2 (ko)
EP (2) EP2187397A1 (ko)
JP (1) JP5713912B2 (ko)
KR (1) KR101639090B1 (ko)
CN (1) CN102203863B (ko)
WO (1) WO2010052159A2 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9354991B2 (en) 2013-06-25 2016-05-31 Microsoft Technology Licensing, Llc Locally generated simple erasure codes

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6292178A (ja) * 1985-10-17 1987-04-27 Matsushita Electric Ind Co Ltd 誤り検出方法
JP2003036608A (ja) * 2001-07-19 2003-02-07 Matsushita Electric Ind Co Ltd 光ディスク、光ディスク装置、エラー訂正フォーマットおよびデータ記録再生方法
JP2006092712A (ja) * 2004-09-27 2006-04-06 Mediatek Inc マルチワード情報をデコードするための方法及び装置
JP2006134550A (ja) * 2004-11-04 2006-05-25 Mediatek Inc マルチワード情報をデコードするための方法及び装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6378100B1 (en) 1997-12-29 2002-04-23 U.S. Philips Corporation Method and apparatus for encoding multiword information with error locative clues directed to low protectivity words
CN1516346A (zh) * 1998-04-29 2004-07-28 �ʼҷ����ֵ������޹�˾ 用于编码多字信息的载体
YU49283B (sh) * 1998-07-27 2005-03-15 Koninklijke Philips Electronics N.V. Kodiranje informacije koja se sastoji od više reči preklapanjem reči
EP1805762B1 (en) * 2004-10-20 2009-02-11 Koninklijke Philips Electronics N.V. Device and method for embedding a secondary signal in a primary data bit stream on an optical disc
EP1990918A1 (en) * 2007-05-07 2008-11-12 Deutsche Thomson OHG Method and apparatus for channel coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6292178A (ja) * 1985-10-17 1987-04-27 Matsushita Electric Ind Co Ltd 誤り検出方法
JP2003036608A (ja) * 2001-07-19 2003-02-07 Matsushita Electric Ind Co Ltd 光ディスク、光ディスク装置、エラー訂正フォーマットおよびデータ記録再生方法
JP2006092712A (ja) * 2004-09-27 2006-04-06 Mediatek Inc マルチワード情報をデコードするための方法及び装置
JP2006134550A (ja) * 2004-11-04 2006-05-25 Mediatek Inc マルチワード情報をデコードするための方法及び装置

Also Published As

Publication number Publication date
WO2010052159A2 (en) 2010-05-14
EP2345033B1 (en) 2017-07-26
CN102203863A (zh) 2011-09-28
JP5713912B2 (ja) 2015-05-07
US20110225474A1 (en) 2011-09-15
EP2187397A1 (en) 2010-05-19
KR101639090B1 (ko) 2016-07-12
WO2010052159A3 (en) 2011-01-20
US8560912B2 (en) 2013-10-15
JP2012507821A (ja) 2012-03-29
EP2345033A2 (en) 2011-07-20
CN102203863B (zh) 2014-07-09

Similar Documents

Publication Publication Date Title
US7530003B2 (en) Permuting MTR code with ECC without need for second MTR code
US7071851B1 (en) Techniques for implementing non-uniform constraints in modulation encoded data
KR100887895B1 (ko) 기록 매체, 기록 및 재생 장치
US6891690B2 (en) On-drive integrated sector format raid error correction code system and method
US7188295B2 (en) Method and apparatus for embedding an additional layer of error correction into an error correcting code
US7178086B2 (en) Direct partial update of CRC/ECC check bytes
JP4219092B2 (ja) 多重ワード情報を符号化する方法、デバイスおよび担体
JP2006517048A (ja) エラー訂正ブロックをエンコーディング及びデコーディングする方法
JP4141964B2 (ja) エラー訂正コードに追加のエラー訂正レイヤを埋め込む方法及び装置
US20020157055A1 (en) Method and device for encoding information words, method and device for decoding information words, storage medium and signal
US7245236B2 (en) Data processing method and circuit for data recording and reproducing and data recording and reproducing apparatus
KR101639090B1 (ko) Ecc 코딩된 비트스트림 삭제 디코딩 방법 및 장치
KR20060013381A (ko) 데이터 저장 시스템
EP2270790A2 (en) Method and apparatus for decoding multiword information
KR20040067102A (ko) 고밀도 광디스크의 에러정정 블록 엔코딩 및 디코딩 방법
KR20070012928A (ko) 광 데이터 저장 장치를 위한 변조 복호기의 오류 검출 방법및 오류 제어 방법

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