KR100658382B1 - 채널 코드 제한에 정합된 트렐리스 시퀀스 검출기 및 신호 샘플들과 에러 신드롬을 사용하여 검출 이진수 시퀀스에서 에러들을 정정하기 위한 포스트 프로세서를 사용하는 샘플링 진폭 판독 채널 - Google Patents

채널 코드 제한에 정합된 트렐리스 시퀀스 검출기 및 신호 샘플들과 에러 신드롬을 사용하여 검출 이진수 시퀀스에서 에러들을 정정하기 위한 포스트 프로세서를 사용하는 샘플링 진폭 판독 채널 Download PDF

Info

Publication number
KR100658382B1
KR100658382B1 KR1020017001284A KR20017001284A KR100658382B1 KR 100658382 B1 KR100658382 B1 KR 100658382B1 KR 1020017001284 A KR1020017001284 A KR 1020017001284A KR 20017001284 A KR20017001284 A KR 20017001284A KR 100658382 B1 KR100658382 B1 KR 100658382B1
Authority
KR
South Korea
Prior art keywords
sequence
error
code
channel
bits
Prior art date
Application number
KR1020017001284A
Other languages
English (en)
Other versions
KR20010072116A (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 KR20010072116A publication Critical patent/KR20010072116A/ko
Application granted granted Critical
Publication of KR100658382B1 publication Critical patent/KR100658382B1/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/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
    • G11B20/10055Improvement or modification of read or write signals filtering or equalising, e.g. setting the tap weights of an FIR filter using partial response filtering when writing the signal to the medium or reading it therefrom
    • 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/10037A/D conversion, D/A conversion, sampling, slicing and digital quantisation or adjusting parameters 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/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

Landscapes

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

Abstract

특수한 코드 제한을 강화시킴으로서 트렐리스 시퀀스(trellis sequence) 검출기의 특정한 최소 거리 에러 이벤트(error event)를 코드화하는 높은 레이트 채널 코드를 실시하도록 인코더/디코더를 포함하는 디스크 저장 시스템을 위한 샘플링 진폭 판독 채널(sampled amplitude read channel)이 설명된다. 트렐리스 시퀀스 검출기는 검출된 출력 시퀀스로부터 대응하는 최소 거리 에러를 효과적으로 제거하는 코드 제한에 매칭된 상태 머신(state machine)을 구비한다. 부가하여, 채널 코드는 에러 검출 코드를 실시하도록 기록 데이터에 리던던시 비트(redundancy bit)를 인코딩한다. 리던던시 비트는 NRZ (+) 및 (+-+) 에러 이벤트와 같이, 다른 지배적인 에러 이벤트를 검출하고 정정하는데 사용되는 에러 신드롬(error syndrome)을 발생하도록 판독 동작 동안 처리된다. 이 방식으로, 트렐리스 시퀀스 검출기의 가장 가능성이 있는 에러 이벤트는 채널 코드 제한에 의해 코드화되거나, 에러 신드롬을 사용하여 검출 및 정정된다. 그 결과로, 본 발명은 시스템의 코드 레이트를 감소시키지 않고 종래 기술 보다 현저한 거리 증진 성능 이득을 제공하고, 그에 의해 선형 비트 밀도 및 전체 저장 용량에서의 실질적인 증가를 제공하게 된다.
트렐리스 시퀀스 검출기, 채널 코드 제한, 포스트 프로세서, 에러 신드롬.

Description

채널 코드 제한에 정합된 트렐리스 시퀀스 검출기 및 신호 샘플들과 에러 신드롬을 사용하여 검출 이진수 시퀀스에서 에러들을 정정하기 위한 포스트 프로세서를 사용하는 샘플링 진폭 판독 채널{A sampled amplitude read channel employing a trellis sequence detector matched to a channel code constraint and a post processor for correcting errors in the detected binary sequence using the signal samples and an error syndrome}
발명의 분야
본 발명은 디지털 컴퓨터들용의 저장 시스템(자기 및 광학적 디스크 드라이브와 같은)에서 이진수 데이터의 기록 및 재생에 관한 것으로, 특히 판독 동작 동안 이진수 시퀀스를 검출하는기 위해 코드 제한에 매칭된 트렐리스 시퀀스(trellis sequence) 검출기를 사용하는 샘플링 진폭 판독 채널에 관한 것이다.
관련 출원들 및 특허들의 교차 참조문헌
본 출원은, 다른 US-A-5926490호인 "에러 신드롬에 의해 유도된 REMOD/DEMOD 시퀀스 검출기를 사용하는 샘플링 진폭 판독 채널(SAMPLED AMPLITUDE READ CHANNEL EMPLOYING A REMOD/DEMOD SEQUENCE DETECTOR GUIDED BY AN ERROR SYNDROME)"에 관련된다. 이 출원은 또한 수개의 미국 특허, 즉 미국 특허 번호 제 5,291,499 호인 "복잡성을 감소한 비터비형 시퀀스 검출기에 대한 방법 및 장치(METHOD AND APPARATUS FOR REDUCED-COMPLEXITY VITERBI-TYPE SEQUENCE DETECTORS)", 제 5,696,639 호인 "보간 타이밍 회복을 사용하는 샘플링 진폭 판독 채널(SAMPLED AMPLITUDE READ CHANNEL EMPLOYING INTERPOLATED TIMING RECOVERY)", 제 5,424,881 호인 "동기화 판독 채널", 및 제 5,585,975 호인 "샘플링 진폭 판독 채널에서 샘플값 추정 및 시퀀스 검출을 위한 동기화(EQUALIZATION FOR SAMPLE VALUE ESTIMATION AND SEQUENCE DETECTION IN A SAMPLED AMPLITUDE READ CHANNEL)"에 관련된다.
광학 및 자기 디스크 드라이브들과 같은 컴퓨터 저장 장치들에서는, 상당히 높은 선형 비트 밀도들을 허용함으로써 최대 공산(maximum likelihood, ML) 시퀀스 검출을 갖춘 부분 응답(partial response, PR) 신호 전송을 사용하는 샘플링 진폭 판독 채널들이 저장 용량의 실질적인 증가를 제공한다. 부분 응답 신호 전송은 통신 매체를 통해 아날로그 펄스들로서 나타내지는 심볼들을 전송하는 특정한 방법을 말한다. 그 이점은 신호 전송 순간(보드 비율(baud rate)에, 바로 인접하는 오버랩 펄스들로부터 제어된 양을 제외한 다른 펄스들로부터 심볼간 간섭(intersymbol interference, ISI)이 없다는 점이다. 제어된 방식으로 펄스들이 오버랩되도록 허용하면, 신호-대-잡음비(SNR)에 대해 성능을 희생시키지 않고 심볼 레이트(선형 기록 밀도)를 증가시키게 된다.
부분 응답 채널은 다음의 다항식에 의해 특징지워지고,
(1-D)(1+D)n
여기서, D는 한 심볼 기간의 지연을 나타내고, n은 정수이다. n = 1, 2, 3에 대해, 부분 응답 채널들은 도 1a에 도시된 각 주파수 응답들을 갖는 PR4, EPR4, 및 EEPR4라 칭하여진다. 채널의 디펄스(dipulse) 응답, 즉 고립된 심볼에 대한 응답은 시스템의 전달 함수(미리정해진 입력에 대한 출력)를 특징지운다. 이진수 "1" 비트가 양의 디펄스 응답을 변조하고, 이진수 "0" 비트가 음의 디펄스 응답을 변조하며, 채널의 출력은 시간 쉬프트된 디펄스 응답들의 선형 조합이다. PR4 채널(1-D2)에 대한 디펄스 응답은 도 1b에서 실선으로 도시된다. 심볼 순간(보드 레이트(baud rate))에서, 디펄스 응답은 시간 t = 0 및 t = 2를 제외하고 0이 됨을 주목한다. 그래서, 시간 쉬프트된 PR4 디펄스 응답들의 선형 조합은 바로 인접한 펄스들이 오버랩되는 심볼 순간을 제외하고 0의 ISI가 된다.
시간 쉬프트된 PR4 디펄스 응답들의 선형 조합은 이진수 입력 시퀀스에 의존하여 심볼 순간들에 +2, 0, 또는 -2의 채널 출력을 제공하게 됨이 명백해진다. 그러므로, 채널의 출력은 이진수 입력 시퀀스에 의해 구동된 상태 머신(state machine)으로 특징지워질 수 있고, 반대로, 입력 시퀀스는 "역(inverse)" 상태 머신을 통해 채널의 출력에서 신호 샘플들을 동작함으로써 추정 또는 복조될 수 있다. 잡음이 신호 샘플들을 흐리게 하기(obfuscate) 때문에, 역상태 머신은 실제로 신호 샘플과 연관된 가장 가능성 있는 입력 시퀀스를 계산하는 트렐리스 시퀀스 검출기로 구현된다.
PR4 트렐리스 시퀀스 검출기의 동작은 도 2a에 도시된 상태 전이도로부터 이해된다. 각 상태(100)는 마지막 2개의 입력 심볼들(프리코드화(precoding) 이후의 NRZ에서)에 의해 나타내지고, 한 상태에서 또 다른 상태로의 각 브랜치는 판독하는 동안 만들어지는 NRZ(102)에서의 현재 입력 심볼 및 대응하는 샘플값(104)으로 라벨링(labeling)된다. PR4 시퀀스 검출기의 복조 처리는 도 2a의 상태 전이도를 도 2b에 도시된 트렐리스도로 나타냄으로써 이해된다. 트렐리스도는 샘플 시퀀스를 만들 수 있는 가능한 기록 입력 시퀀스 및 샘플값들의 시간 시퀀스를 나타낸다. 가능한 각 입력 시퀀스에 대해, 에러 측정치(error metric)는 채널에 의해 출력되는 실제 샘플값들과 무잡음 시스템에서 발생되는 기대된 샘플값의 시퀀스 사이의 차이와 관련되어 계산된다. 예를 들어, 실제 샘플값들과 기대된 샘플값 사이의 누적 제곱차로서 유클리드 측정치(Euclidean metric)가 계산된다. 가장 작은 유클리드 측정치를 발생하는 입력 시퀀스는 실제 샘플값을 생성할 가능성이 가장 큰 시퀀스이다; 그러므로, 이 시퀀스는 시퀀스 검출기의 출력으로서 선택된다.
복조 처리를 용이하게 하기 위해, 시퀀스 검출기는 가능한 입력 시퀀스와 대응하는 측정치 각각을 저장하는 경로 메모리들을 구비한다. 시퀀스 검출기의 이미 공지된 특징은 입력 시퀀스가 적절하게 제한되는 한, 특정한 수의 샘플값들이 처리된 이후에, 가능한 입력 시퀀스들을 저장하는 경로가 가장 가능성이 있는 입력 시퀀스로 "병합(merge)"된다는 것이다. 사실상, 필요로 되는 경로 메모리들의 최대수는 트렐리스도에서의 상태들의 수와 같다; 가장 가능성이 있는 입력 시퀀스는 항상 이들 경로들 중 하나로 나타내지고, 이들 경로들은 결국 샘플값들의 특정한 수가 처리된 이후에 한 경로로(즉, 가장 가능성이 있는 입력 시퀀스로) 병합된다.
경로 메모리들의 "병합"은 "생존(survivor)" 시퀀스들이 실선으로 나타내지는 도 2b의 트렐리스도로부터 이해된다. 트렐리스도의 각 상태는 두 상태들 중 하나로부터 달성될 수 있음을 주목한다; 즉, 각 상태에 이르는 2개의 전이 브랜치들이 존재한다. 각각의 새로운 샘플값으로, 비터비(Viterbi) 알고리즘은 새로운 에러 측정치를 회귀적으로 계산하고, 최소 에러 측정치에 대응하는 각 상태에 대한 단일 생존 시퀀스를 유지한다. 다른 말로 하면, 비터비 알고리즘은 브랜치들 중 단 하나만이 최소 에러 측정치에 대응하므로 2개의 입력 브랜치들 중 하나를 각 상태로 선택하고, 선택되지 않은 브랜치들에 대응하는 트렐리스를 통한 경로들은 선택되었던 경로들로 병합된다. 결국, 모든 생존 시퀀스들은 도 2b에 도시된 바와 같이 샘플값들을 발생했을 가능성이 가장 큰 추정된 데이터 시퀀스를 나타내는 트렐리스를 통해 하나의 경로로 병합된다.
일부 경우에서, 입력 시퀀스가 채널 코드의 사용을 통해 적절하게 제한되지 않으면, 경로 메모리들은 하나의 생존 시퀀스로 병합되지 않는다. 도 2b에 도시된 PR4 트렐리스를 고려하면; 모두 0이거나 모두 1인 입력 시퀀스는 경로가 병합되는 것을 방지하여, 검출기에 의해 다수의 가능한 생존 시퀀스들을 야기한다. 경로 메모리들이 병합되는 것을 방지하는 데이터 시퀀스들은 출력 시퀀스에서 준대변동 에러(quasi-catastrophic error)를 제공하게 되므로 "준대변동" 데이터 시퀀스라 칭하여진다. 준대변동 에러들을 방지하기 위해, 통상적으로, 기록된 데이터 중에서 경로 메모리들이 병합되는 것을 방지할 수 있는 모든 시퀀스들을 코드화하는 채널 코드가 사용된다.
입력 시퀀스 중에서 준대변동 데이터 시퀀스들이 코드화되더라도, 충분한 파괴 잡음이 판독 신호에 존재하는 경우, 시퀀스 검출기는 여전히 출력 시퀀스를 검출하는데 에러를 만들 수 있다. 가능한 출력 시퀀스들은 최소 유클리드 거리만큼 서로 다르다; 검출 에러는 통상적으로 유효한 출력 시퀀스들 사이에서 신호 잡음이 이 최소 거리를 위반할 때 발생된다. 도 3a 내지 도 3d는 각각 NRZ, PR4, EPR4, 및 EEPR4 공간에서 PR4 시퀀스 검출기의 지배적인 최소 거리 에러 이벤트들과 연관된 샘플 에러 시퀀스들을 도시한다. 일반적으로, 더 높은 차수의 시퀀스 검출기는 에러 이벤트가 영향을 주는 다수의 데이터 샘플들로 인해 더 낮은 차수의 시퀀스 검출기를 능가하게 된다. 예를 들어, 도 3a에 도시된 NRZ 공간에서의 제1 에러 이벤트를 고려해보자. 이 에러 이벤트는 도 3b의 PR4 공간에서 2개의 데이터 샘플들(2개의 출력 비트들), 도 3c의 EPR4 공간에서 4개의 잡음 샘플들, 또한 도 3d의 EEPR4 공간에서 2개가 증가된 크기를 갖는 4개의 잡음 샘플들을 손상시키는 2개의 잡음 샘플들을 발생한다. 에러 이벤트의 "확산(spreading out)"은 검출 에러의 확률을 감소시킨다.
최소 거리 에러 이벤트는 트렐리스의 특정한 상태로부터 데이터 시퀀스들이 발산되고, 이어서 나중 상태에서 재병합되는 경우 발생될 수 있다. 완벽한 시스템에서는, 모든 최소 거리 에러 이벤트들이 똑같은 확률로 일어나게 된다. 그러나, 채널 등화기들이 신호 샘플들에서 잡음을 서로 상관시키기 때문에, 최소 길이, 최소 거리 에러 이벤트들이 더 일어날 가능성이 있다. 그래서, 도 3a 내지 도 3d에 도시된 에러 이벤트들은 거리가 가장 짧기 때문에 "지배적인" 최소 거리 에러 이벤트들이다. 가장 짧은 에러 이벤트인 제1 에러 이벤트(NRZ에서의 (+))가 통상적으로 가장 지배적이다; 그러나, 사용되는 부분 응답 다항식에 의존하여, 선형 비트 밀도가 증가됨에 따라, 다른 에러 이벤트들이 가장 지배적으로 될 수 있다.
성능의 증가는 최소 거리 에러 이벤트들과 연관된 데이터 시퀀스들을 코드화하는데 채널 코드를 사용하고(준대변동 데이터 시퀀스를 코드화하는 것과 유사하게), 이어서 종래의 트렐리스 코드화 변조(trellis coded modulation, TCM) 기술들을 사용하여 이 채널 코드에 시퀀스 검출기를 매칭시키는데 사용함으로써 달성될 수 있다. 예를 들면, 도 3a에 도시된 최소 거리 에러 이벤트들은 입력 시퀀스로부터(1, 0, 1) 또는(0, 1, 0)으로 구성된 비트 시퀀스들을 제거함으로써 코드화될 수 있다. 이때, PR4 시퀀스 검출기의 상태 머신은 도 2a에 도시된 내부 브랜치들을 제거함으로써 이 코드 제한에 매칭될 수 있다. 제거된 브랜치들로, PR4 시퀀스 검출기의 최소 거리는 dmin2 = 2에서 dmin2 = 4로 증가된다(+1, 0, -1로 표준화된 신호 샘플로).
디스크 저장 매체를 통한 디지털 데이터의 기록 및 재생은 통신 채널로 모델링될 수 있다. 부분 응답 신호전송은 특성이 대역통과 채널이기 때문에 디스크 저장 시스템들에 특히 적합하고, 그러므로 원하는 부분 응답 다항식에 전체 응답을 매칭하는데 등화가 거의 요구되지 않는다. 도 1a를 참고로, EEPR4와 같이 더 높은 차수의 부분 응답 다항식들은 특히 더 높은 선형 밀도들에서 더 낮은 차수의 다항식들보다 채널의 본래 응답에 보다 가깝게 매칭된다. 그래서, 도 3a에 도시된 바와 같이 에러 샘플들을 확산하는 것에 부가하여, 더 높은 차수의 부분 응답 채널들은 통상적으로 원하는 부분 응답에 채널 응답을 매칭하는데 등화가 거의 요구되지 않으므로 더 나은 성능을 제공한다. 그러나, 성능의 교환(trade-off)은 복잡성을 요구하게 된다; 상태 머신의 상태들의 수는 2n+1 만큼 증가된다. 즉, 이는 복잡성이 지사적으로 증가됨을 의미한다. 전체 EPPR4 상태 머신은 PR4 상태 머신의 단 4개의 상태들과 비교해 16개의 상태들(n = 3)을 구비한다.
상술된 PR4 판독 채널과 유사하게, EEPR4 상태 머신을 런렝스 한정(run-length limited, RLL) d = 1 제한(연속적인 NRZI "1" 비트들을 방지하는)에 EEPR4 상태 머신을 매칭시키는 것은 EEPR4 시퀀스 검출기의 최소 거리 에러 이벤트들을 코드화하여, 유효한 출력 시퀀스들 사이의 최소 거리를 dmin2 = 6에서 dmin2 = 10으로 효과적으로 증가시킨다. 그러나, RLL d = 1 제한에 대한 단점은 코드 레이트, RLL(1, 7) 시스템에서 통상적으로 2/3인 코드워드 비트들에 대한 사용자 데이터 비트들의 비율이 부수적으로 감소되는 것이다. 코드 레이트의 감소는 사용자 데이터 밀도를 감소시켜 디스크의 전체 저장 용량을 감소시키기 때문에 바람직하지 못하다. 사용자 데이터 밀도 및 저장 용량은 채널 데이터 밀도를 증가시킴으로써 증가될 수 있지만, 이는 SNR에서의 유효 감소로 인해 비트 에러 레이트를 증가시킨다. 또한, 채널 밀도를 증가시키는데는 채널 데이터 레이트의 증가를 보상하도록 더 빠른 판독 채널 회로를 요구한다. RLL d = 1 제한이 EEPR4 시퀀스 검출기의 최소 거리 에러 이벤트들을 코드화하더라도, 이는 다음으로 가장 지배적인 에러 이벤트를 코드화하지 않고, (+) 에러 이벤트에 의해 비트 쉬프트가 일어난다.
그러므로, 저장 시스템의 코드 레이트를 감소시키지 않고 거리 증진 성능 이득을 제공하는 디스크 저장 시스템에서 사용하기 위한 개선된 샘플링 진폭 판독 채널이 필요하다. 특히, 비트-쉬프트 에러 이벤트를 포함하여, 특정한 최소 거리 에러 이벤트들을 감소시키고, 높은 레이트, 비용 효과적인 채널 코드를 사용함으로써 트렐리스 시퀀스 검출기의 동작을 향상시킬 필요성이 존재한다.
이것은, 시변 트렐리스 디코더가 패리티 코드로 인코딩된 데이터를 디코딩하기 위해 사용될 수 있는, The Key to Global Prosperity, Globecom 1996, IEEE (18-11-1996), 363-367에서, 티. 콘웨이(T. Conway)와 제이.넬슨(J. Nelson)의 "자기 기록 채널 상에서 SBR를 증가시키는 신규한 코딩 방법(A New Coding Method to Increase on the Magnetic Recording Channel)"에 개시되어 있다.
이것은, 에러 정정이 부분적인 응답 검출기의 출력에 적용될 수 있는, IEEE Transactions on Magnetics(11-1995), 31(6), 3042-3044에서, 티. 니시야(T. Nishiya)와 에이치. 야마카와(H. Yamakawa)에 의해 개시되어 있다.
US-A-5280489호는 또 다른 시변 트렐리스 디코더를 개시한다.
이것은, 시변 코드 제한이 시변 트렐리스 디코더를 갖는 부분적인 응답 채널에 사용되는, IEEE Transaction on Magnetics, 1997년 9월, p.2746-2748에서, 더블유, 지, 블리스(W.G. Bliss)의 "고밀도 자기 기록을 위한 8/9 레이트 시변 트렐리드 코드(An 8/9 rate time-varying trellis code for high density magnetic recording)"에 개시되어 있다.
이것은, 거리 향상 코드들이 트렐리스 디코더를 갖는 부분적인 응답 코딩 시스템에 사용될 수 있는, IEEE Transactions on Magnetics, vol.33, No.5, 1997년 9월, p.2734-2736에서, 에스.지. 맥카시(S.C. McCarthy)와 제트.에이 키른(Z.A. Keirn)의 "ERPRML용 거리 향상 코드들: 스핀스탠드 데이터를 사용한 성능 비교(Distance Enhancing Codes for E2PRML: Performance Comprison using Spinstand Data)"에 개시되어 있다.
이것은, 트렐리스 디코더와 포스트프로세서가 사용되는 리코더 및 dc-프리 인코딩을 사용하기 위해, 1997년 6월 8-12일 몬트리올에서의 IEEE International Conference on Communications (ICC)와, 1997년, IEEE International Conference Communications에서, 이.솔젠인(E. Soljanin)의 "일부 특별히 구성된 DC-프리 코드들용 디코딩 기술들(Decoding Techniques for Some Specially Constructed DC-Fress Codes)"에 개시되어 있고,
본 발명의 특징들은 청구범위에 설정되어 있다.
<발명의 요약>
특정한 코드 제한을 강화시킴으로써 트렐리스 시퀀스 검출기의 지정된 최소 거리 에러 이벤트들을 코드화하는 높은 레이트 채널 코드를 구현하기 위한 인코더/디코더를 포함하는 디스크 저장 시스템들용의 샘플링 진폭 판독 채널이 설명된다. 트렐리스 시퀀스 검출기는 검출된 출력 시퀀스로부터 대응하는 최소 거리 에러들을 효과적으로 제거하는 코드 제한에 매칭된 상태 머신(state machine)을 구비한다. 부가하여, 채널 코드는 에러 검출 코드를 구현하기 위해 기록 데이터로 리던던시 비트들(redundancy bits)을 인코딩한다. 리던던시 비트들은 NRZ (+) 및 (+-+) 에러 이벤트들과 같이, 다른 지배적인 에러 이벤트들을 검출하여 정정하는데 사용되는 에러 신드롬(error syndrome)을 발생하도록 판독 동작 동안 처리된다. 이 방식으로, 트렐리스 시퀀스 검출기의 가장 가능성이 있는 에러 이벤트들은 채널 코드 제한에 의해 코드화되거나, 에러 신드롬을 사용하여 검출되고 정정된다. 그 결과로, 본 발명은 시스템의 코드 레이트를 감소시키지 않고 종래 기술 보다 현저하게 거리 증진 성능 이득을 제공하고, 그에 의해 선형 비트 밀도 및 전체 저장 밀도를 상당히 증가시키게 된다.
일 실시예에서, 본 발명의 채널 코드는 기록 데이터의 짝수 또는 홀수 인터리브들 중 하나로부터 5개 이상의 연속적인 NRZI "1" 비트들의 시퀀스들과 4개의 연속적인 NRZI "1" 비트들의 시퀀스들을 코드화한다. QM2(quadbit-modulo-2) 코드라 칭하여지는 이 코드는 종래 RLL d = 1 채널 코드에 대한 코드 레이트 2/3 보다 훨씬 더 높은 17/18의 코드 레이트를 가지고 효과적으로 실시될 수 있다. 시퀀스 검출기의 상태 머신을 QM2 코드 제한에 매칭시키기 위해, 4개의 연속적인 NRZI "1" 비트들에 대응하는 브랜치들은 매 하나씩 걸러 샘플 구간에서 제거된다. 이러한 상태 머신은 그 구조가 시간에 따라 변하므로 "시변(time varying)"인 것으로 정해진다.
QM2 코드 제한은 길이가 4 이상인 대응하는 최소 거리 에러 이벤트들을 코드화한다; 이어서, 보다 짧은 최소 거리 에러 이벤트 (+-+) 및 지배적인 (+) 에러 이벤트를 정정하는데 간단한 패리티(parity) 에러 검출 코드가 사용된다. QM2 코드를 패리티 코드와 조합하면, 시스템의 유효 신호-대-잡음비(SNR)가 현저하게 증가된다; 이는 코드 제한들 둘 모두에 매칭된 트렐리스 시퀀스 검출기의 성능에 접근하지만, 회로 비용 및 복잡성이 현저하게 감소된다. 더욱이, 본 발명의 QM2-패리티 코드는 종래 RLL d=1 코드의 2/3 코드 레이트와 비교해 48/52의 높은 코드 레이트를 가지고 효과적으로 실시될 수 있고, 그에 의해 채널 데이터 레이트를 증가시키지 않고 시스템의 저장 용량을 증가시키게 된다.
본 발명의 상기 및 다른 양태들 및 이점들은 도면과 연계하여 본 발명의 상세한 설명으로부터 보다 잘 이해될 것이다.
도 1a는 PR4, EPR4, 및 EEPR4 판독 채널에 대한 주파수 응답을 도시하는 도면.
도 1b는 도 1a의 PR4, EPR4, 및 EEPR4 판독 채널에 대한 디펄스(dipulse) 응답을 도시하는 도면.
도 2a는 PR4 시퀀스 검출기에 대한 상태 전이도.
도 2b는 미리정해진 입력 시퀀스에 대한 경로 메모리 및 생존 시퀀스를 도시하는 도 2a의 PR4 상태 전이도에 대응하는 트렐리스도.
도 3a 내지 도 3d는 각각 NRZ, PR4, EPR4, 및 EEPR4 공간에서 PR4 시퀀스 검출기의 지배적인 최소 거리 에러 이벤트(error event)를 도시하는 도면.
도 4a는 자기 디스크 저장 매체에 대한 전형적인 데이터 포맷을 도시한 것으로, 미리정해진 구역에 그룹화된 다수의 동심 데이터 트랙들(tracks)을 구비하고, 각 데이터 트랙이 다수의 데이터 섹터들(sectors)로 분할된 도면.
도 4b는 데이터 섹터에 대한 전형적인 포맷을 도시하는 도면.
도 5는 본 발명의 샘플링 진폭 판독 채널에 대한 블록도로, QM2 코드에 매칭된 시변 EEPR4 시퀀스 검출기, 및 에러 검출 코드를 사용하여 최소 거리 에러 이벤트를 정정하는 포스트 프로세서(post processor)를 포함하는 도면.
도 6은 NRZ로 라벨이 정해진 출력 비트를 갖는 전체 16개 상태의 EEPR4 시퀀스 검출기에 대한 상태 전이도.
도 7은 QM2 코드 제한에 매칭된 16개 상태의 시변 EEPR4 시퀀스 검출기에 대한 상태 전이도.
도 8a는 신드롬(syndrome) 발생기, 재변조기, 에러 패턴 검출기, 및 에러 정정기를 포함하는 포스트 프로세서를 상세히 도시하는 도면.
도 8b는 도 5의 포스트 프로세서에 대한 바람직한 실시예를 상세히 도시하는 도면.
도 8c는 도 8a의 포스트 프로세서 중 에러 패턴 검출기를 상세히 도시하는 도면.
도 8d는 도 8a의 포스트 프로세서의 동작을 설명하는 흐름도.
도 8e 및 도 8f는 에러 이벤트가 코드워드(code word) 경계에 걸쳐 일어날 때 신드롬 발생(패리티(parity))를 설명하는 도면.
도 8g는 도 8a의 포스트 프로세서 중 에러 정정의 블록도.
도 9a는 본 발명의 QM2에 대한 상태 전이도(state transition diagram, STD).
도 9b는 도 9a의 STD의 2제곱에 대응하는 2-상태 STD.
도 9c는 도 9a의 8제곱 STD 및 도 9b의 STD의 4제곱에 대응하는 2-상태 STD.
도 9d는 도 9a의 STD의 16제곱 및 도 9c의 STD의 2제곱에 대응하는 2-상태 STD.
도 9e는 도 9c의 STD의 특정한 브랜치를 삭제함으로서 발생된 2-상태 STD.
도 9f는 도 9e의 STD의 2제곱에 대응하는 2-상태 STD.
도 10a는 도 9e의 STD의 두가지 예를 사용하여 레이트 15/16 QM2 코드를 실시하도록 선택된 상태 시퀀스를 도시하는 도면.
도 10b는 도 10a의 상태 브랜치의 코드워드 세트가 인코더에서 간단한 어드레스 지정 구조를 이루도록 2의 제곱으로 인수 분해되는 방법을 도시하는 도면.
도 11은 도 10b의 가능한 코드워드 연결을 실시하는데 사용되는 메모리 뱅크(memory bank)를 도시하는 도면.
도 12는 레이트 15/16 QM2 코드에 대한 인코딩 방법을 설명하는 수렴도.
도 13a 내지 도 13g는 레이트 15/16 QM2 코드를 발생하는데 사용되는 것과 유사한 기술을 사용하여 레이트 17/18 QM2 코드를 발생하는데 사용되는 상태 전이도.
도 14는 도 8a의 포스트 프로세서에 대한 패리티 에러 검출 코드를 실시하는데 사용되는 짝수 및 홀수 패리티의 메모리 뱅크로 분할된 레이트 15/16 QM2 코드의 메모리 뱅크를 도시하는 도면.
데이터 포맷
도 4a는 동심 방사형으로 이격된 데이터 트랙(data track)(14)의 시리즈를 구비하는 자기 디스트 저장 매체의 종래 데이터 포맷을 도시하고, 여기서 각 데이터 트랙(14)은 삽입된 서보 웨지(servo wedge)(18)를 갖는 다수의 섹터들(16)을 구비한다. 서보 제어기(도시되지 않은)는 서보 웨지(18)에서 서보 데이터를 처리하고, 그에 응답하여, 선택된 트랙에서 판독/기록 헤드의 위치를 정한다. 부가하여, 서보 제어기는 헤드가 데이터를 기록 및 판독하는 동안 선택된 트랙의 중심선 위에 정렬되어 유지되도록 서보 웨지(18)내에서 서보 버스트(burst)를 처리한다. 서보 웨지(18)는 간단한 이산-시간 펄스 검출기 또는 이산-시간 시퀀스 검출기에 의해 검출될 수 있다. 서보 웨지(18)의 포맷은 도 4b를 참고로 이후 설명될 사용자 데이터 섹터(16)와 유사하게, 프리앰블(preamble) 및 싱크 마크(sync mark)를 포함한다.
구역화 기록(zoned recording)은 내부 지름 및 외부 지름 트랙 사이에 미리정해진 구역내에서 상이한 레이트로 사용자 데이터를 기록함으로서 저장 밀도를 증가시키기 위한 종래 기술에서 공지된 기술이다. 데이터 레이트는 원주 기록 영역에서의 증가 및 심볼간 간섭의 감소로 인해 외부 지름의 트랙에서 증가될 수 있다. 이는 디스크가 트랙 당 14개의 데이터 섹터를 구비하는 외부 구역(20)과 트랙 당 7개의 데이터 섹터를 구비하는 내부 구역(22)으로 분할되는 도 4a에 도시된 바와 같이 더 많은 데이터가 외부 지름 트랙에 저장되도록 허용한다. 실제로, 디스크는 내부에서 외부 지름 구역으로 증가된 데이터 레이트를 갖는 수개의 구역으로 분할된다.
도 4b는 포착 프리앰블(acquisition preamble)(24), 싱크 마크(sync mark)(26), 사용자 데이터 필드(28), 및 판독시 사용자 데이터에서 에러를 검출하고 정정하는데 사용되도록 첨부된 ECC 바이트(30)로 구성된 데이터 섹터(16)의 포맷을 도시한다. 도 5의 타이밍 회복(69)은 사용자 데이터 필드(28)를 판독하기 이전에 정확한 데이터 주파수 및 위상을 구하도록 포착 프리앰블(24)을 처리하고, 싱크 마크(26)는 사용자 데이터를 심볼 동기화하는데 사용되는 사용자 데이터 필드(28)의 시작부를 표시한다. 본 실시예에서, 사용자 데이터(28)는 이후 보다 상세히 설명되는 종래 기술 보다 개선된 거리를 제공하는 채널 코드에 따라 인코딩된다.
샘플링 진폭 판독 채널
이제는 도 5를 참고로, 본 실시예의 샘플링 진폭 판독 채널의 블록도가 도시된다. 기록 동작 동안, 판독 채널은 호스트 시스템으로부터 선(32)을 통해 사용자 데이터를 수신한다. 데이터 발생기(34)는 사용자 데이터(28)를 기록하기 이전에 디스크에 기록되는 도 4b의 프리앰블(24)(예를 들면, 2T 프리앰블 데이터)을 발생한다. 데이터 발생기(34)는 또한 판독 동작 동안 사용자 데이터에 심볼 동기화하는데 사용되는 싱크 마크(26)를 발생한다. QM2-패리티(QM2-Parity) 인코더(36)는 QM2(quadbit-mod-two) 및 패리티 제한에 따라 사용자 데이터(32)를 인코딩하여, 인코딩된 이진수 시퀀스 b(n)(38)을 발생한다. QM2 제한은 입력 데이터로부터 5개 이상의 연속적인 전이(즉, 연속적인 NRZI "1" 비트)의 모든 시퀀스를 삭제하고 4개의 연속적인 전이(쿼드비트(quadbit))의 시퀀스가 짝수 인터리브(interleave)에서만 시작되도록 허용함으로서 형태 {+-+-}, {+-+-+}, {+-+-+-} 등의 모든 에러 이벤트를 코드화한다. 이후 설명될 바와 같이, 시퀀스 검출기(88)의 상태 전이도는 현저한 거리 증진 성능 이득을 제공하는 QM2 제한에 매칭된다. 부가하여, 패리티 제한은 기록 시퀀스 ~b(n)(46)로 인코딩되고, 포스트 프로세서(post processor)(95)는 지배적인 NRZ (+) 및 (+-+) 에러값과 같이, 시퀀스 검출기(88)에 의해 추정된 이진수 시퀀스 ^b(n)(90) 출력에서 다른 에러를 검출 및 정정하는데 사용되는 패리티 신드롬(parity syndrome)을 발생한다.
QM2 및 패리티 제한을 인코딩(36)한 이후에, 프리코더(precoder)(40)는 등화 필터 및 기록 채널(42)의 전달 함수를 보상하도록 순서대로 이진수 입력 시퀀스 b(n)를 미리 코드화한다. 결과의 기록 시퀀스 ~b(n)(46)는 기록 회로(52)의 전류를 변조하고(48), 그에 의해 기록된 데이터를 나타내는 디스크(42)에 전이의 시퀀스를 기록하도록 구역 보드(baud) 레이트로 기록 헤드 코일(또는 레이저광의 강도)에서 전류를 변조한다. NRZ 기록에서, "1" 비트는 기록 전류의 양의 극성을 변조하고(48), "0" 비트는 음의 극성을 변조한다(48). 주파수 합성기(54)는 기록 회로(52)에 보드 레이트 기록 클럭(56)을 제공하고, 이는 기록 헤드가 위에 있는 현재 구역에 따라 보드 또는 채널 데이터 레이트 신호(CDR)(58)에 의해 조정된다.
기록된 이진수 시퀀스를 매체로부터 판독할 때, 타이밍 회복(68)은 먼저 판독 채널로의 입력으로서 멀티플렉서(70)를 통해 기록 클럭(56)을 선택함으로서 구역의 기록 주파수에 고정된다. 일단 명목상 샘플링 주파수인 기록 주파수에 고정되면, 멀티플렉서(70)는 도 4b에 도시된 바와 같이 기록된 사용자 데이터(28) 이전에 디스크에 기록된 포착 프리앰블(24)을 구하기 위해 판독 채널로의 입력으로서 판독 헤드로부터 신호(72)를 선택한다. 가변 이득 증폭기(62)는 아날로그 판독 신호(60)의 진폭을 조정하고, 아날로그 수신 필터(61)는 원하는 응답 쪽으로 초기 등화를 제공할 뿐만 아니라 앨리어싱 잡음(aliasing noise)을 감소시킨다. 샘플링 장치(64)는 아날로그 필터(61)로부터 아날로그 판독 신호(66)를 샘플링하고, 이산-시간 등화기 필터(74)는 원하는 응답 쪽으로 샘플값(76)의 등화를 더 제공한다. 도표 1은 도 1b의 PR4, EPR4, 및 EEPR4 디펄스 응답에 대해 표준화된 값을 도시한다.
Figure 112001001956871-pct00001
이산적 등화기 필터(74)는 디스크 반지름(즉, 구역), 디스크 각도, 및 온도 변화와 같은 환경 조건에 걸친 매개변수 변화를 보상하는 실시간 적응성 필터로 실시될 수 있다.
등화 이후에, 등화된 샘플값(78)은 판독 신호(60)의 진폭과 샘플링 장치(64)의 주파수 및 위상을 각각 조정하기 위한 결정 지시 이득 제어(80) 및 타이밍 회복 회로(68)에 인가된다. 이득 제어(80)는 채널 주파수 응답의 크기를 원하는 부분 응답으로 매칭시키기 위해 선(82)을 통해 가변 이득 증폭기(62)의 이득을 조정하고, 타이밍 회복(68)은 등화된 샘플(78)을 보드 레이트에 동기화시키기 위해 선(84)을 통해 샘플링 장치(64)의 주파수를 조정한다. 주파수 합성기(54)는 온도, 전압, 및 처리 변화를 통해 타이밍 회복 주파수의 중심을 맞추기 위해 선(86)을 통해 타이밍 회복 회로(68)에 대략적인 중심 주파수 설정을 제공한다.
바람직한 실시예에서, 이산-시간 등화기(74)는 간단한 슬라이서(slicer) 회로(도시되지 않은)가 타이밍 회복(68) 및 이득 제어(80) 결정 지시 피드백 루프에서 사용되는 추정된 샘플값을 발생할 수 있도록 샘플값들(76)을 PR4 응답에 등화시킨다. PR4 등화 샘플(78)은 이어서(1+D)n 필터에 전달되어 시퀀스 검출기(88)의 부분 응답 정의역에서 샘플값을 발생시킨다. 타이밍 회복(68) 및 이득 제어(80)에서 샘플값 추정의 다양한 다른 방법의 실시예에 대한 상세한 설명을 위해서는 상기 참고되었던 미국 특허 제5,585,975 호인 "샘플링 진폭 판독 채널에서 샘플값 추정 및 시퀀스 검출을 위한 등화(EQUALIZATION FOR SAMPLE VALUE ESTIMATION AND SEQUENCE DETECTION IN A SAMPLED AMPLITUDE READ CHANNEL)"를 참고한다.
동기화 등화 샘플(78)은 결국 샘플값으로부터 추정된 이진수 시퀀스 ^b(n)(90)를 검출하는 시변 QM2 시퀀스 검출기(88)에 입력된다. 포스트 프로세서(95)는 시퀀스 검출기(88)가 검출 에러를 만든 때를 나타내는 추정된 이진수 시퀀스 ^b(n)(90)로부터 패리티 신드롬을 발생한다. 에러가 검출될 때, 포스트 프로세서(95)는 추정된 이진수 시퀀스 ^b(n)(90)내에서 에러가 발생되었을 가능성이 가장 큰 위치를 결정하고, 이를 정정한다. QM2-패리티 디코더(92)는 정정된 이진수 시퀀스(97)를 추정된 사용자 데이터(94)로 디코딩한다. 데이터 싱크 검출기(96)는 QM2-패리티 디코더(92)의 동작을 적합하게 만들기 위해 데이터 섹터(16)에서 싱크 마크(26)(도 4b에 도시된)를 검출한다. 에러가 없으면, 추정된 이진수 시퀀스 ^b(n)(90)는 기록된 이진수 시퀀스 b(n)(38)를 매칭시키고, 디코딩 사용자 데이터(94)를 기록된 사용자 데이터(32)와 매칭시킨다. 이후에는 QM2 및 패리티 채널 코드의 성능 증진 특성을 포함하여, 시변 QM2 시퀀스 검출기(88)와 포스트 프로세서(95)의 상세한 설명이 제공된다.
시변 QM2 시퀀스 검출기 및 포스트 프로세서
본 발명의 바람직한 실시예에서는 도 5의 트렐리스 시퀀스 검출기(88)가 EEPR4 정의역에서 실시된다. 도 6에는 NRZ에서 라벨이 정해진 출력 비트 없이 16개의 상태를 구비하는 종래의 EEPR4 상태 전이도가 도시된다. 상태 전이도를 QM2 제한에 매칭시키기 위해, 상태 5와 10 사이의 내부 브랜치는 매 다른 심볼 기간 마다 삭제된다(즉, 상태 머신이 시변이다). 이는 이들 브랜치가 매 다른 심볼 기간에서만 트렐리스에 존재함을 나타내도록 상태 5와 10 사이의 내부 브랜치를 점선으로 도시한 도 7에서 설명된다. 홀수(또는 짝수) 심볼 기간 동안 이들 브랜치를 삭제하는 것은 쿼드비트 전이가 짝수(또는 홀수) 인터리브에서만 시작되도록 허용하는 QM2 제한에 시퀀스 검출기를 매칭시킨다. 이는 형태 {+-+-}, {+-+-+}, {+-+-+-} 등의 에러를 효과적으로 코드화함으로서 시퀀스 검출기에서 거리 증진 성능 이득을 제공한다. 그러나, QM2 제한은 더 짧은 {+-+} 최소 거리 에러 이벤트나 지배적인 (+) 에러 이벤트를 코드화하지 않는다.
QM2 코드에 의해 코드화되지 않은 에러 이벤트를 고려하여, 사용자 데이터는 에러 검출 코드(error detection code, EDC), 예를 들면 기록 전류(46)의 블록(NRZ 기록 데이터)에 걸친 패리티에 따라 인코딩된다. 다른 방법으로, 패리티는 NRZI 정의역(domain)에서 기록 데이터의 짝수 또는 홀수 인터리브의 블록에 걸쳐 발생될 수 있다.
판독 동작 동안, 도 5의 포스트 프로세서(95)는 (+) 및 (+-+) 에러 이벤트에 의해 발생된 에러를 검출하여 정정하도록 추정된 판독 데이터의 블록에 걸쳐 에러 신드롬을 발생한다. 패리티 채널 코드 및 포스트 프로세서(95)에 의해 제공된 개선은 종래의 트렐리스 코드 변조(trellis coded modulation, TCM) 기술을 사용하여 패리티 코드 제한에 검출기의 트렐리스 상태 머신을 매칭시켜 이루어진 성능 이득에 가깝지만, 비용 및 복잡성이 현저하게 감소된다.
도 8a는 도 5의 포스트 프로세서(95)의 블록도를 도시한다. 재변조기(116)는 샘플 에러값(120)의 시퀀스를 발생하도록 채널 샘플(78)로부터 감산되는(시퀀스 검출기(88)에서의 지연을 고려하여 지연(118)을 통과한 이후에) 이상적인 샘플값(117)의 추정된 시퀀스로 시퀀스 검출기(88)에 의해 출력된 이진수 시퀀스(90)를 재변조한다. 에러 패턴 검출기(122)는 시퀀스 검출기(88)가 검출 에러를 만들었을 가능성이 높은 때를 검출하도록 샘플 에러(120)의 시퀀스를 처리한다. 에러 패턴 검출기(122)는 QM2 코드에 의해 코드화되지 않은 시퀀스 검출기(88)의 지배적인 에러 이벤트(예를 들면, NRZ (+) 및 (+-+) 에러 이벤트)에 매칭되는 다수의 FIR(finite-impulse-response) 필터들을 구비한다. 에러 패턴 검출기(122)가 에러 이벤트를 검출할 때, 이는 시퀀스 검출기(88)에 의해 출력된 이진수 시퀀스(90)를 정정하도록 에러 정정기(124)에 신호를 전한다. 비록 에러 패턴 검출기(122)만이 현저한 성능 이득을 제공하지만, 때때로 이진수 시퀀스(90)의 잘못된 정정에 이르는 거짓 에러 이벤트를 검출할 수 있다.
바람직한 실시예에서 간단한 패리티 코드인 에러 검출 코드(error detection code, EDC)는 검출된 이진수 시퀀스(90)의 미리정해진 수의 비트(즉, 블록이나 코드워드)에서 에러가 발생하는 때를 검출함으로서 잘못된 정정의 확률을 감소시킨다. 도 8a의 신드롬 발생기(110)는 EDC 코드워드에서 에러가 발생되었나 여부를 나타내는 에러 신드롬(126)을 발생하도록 시퀀스 검출기(88)에 의해 출력된 검출 이진수 시퀀스(90)를 처리한다. 에러가 검출될 때, 에러 정정기(124)는 에러를 발생하였을 가능성이 가장 높은 에러 패턴 검출기(122)에 의해 검출된 에러 이벤트(예를 들면, 최대 에러 이벤트)를 사용하여 검출된 이진수 시퀀스(90)를 정정한다. 이 방식으로, 에러가 주어질 때 EDC의 에러 신드롬(126)만이 정정을 허용하기 때문에, 잘못된 정정의 확률이 감소된다. 잘못된 정정은 정정을 하는데 사용되는 선택된 에러 이벤트가 잘못된 에러 이벤트인 경우 아직 일어날 수 있지만, 그럼에도 불구하고 이는 아직까지 종래 기술 보다 현저한 개선이다.
현재 EDC 코드워드에서 일어나는 에러는 코드워드 경계를 통해 이전 또는 이후 EDC 코드워드에 전파될 수 있다. 에러 패턴 검출기(122)에는 이러한 가능성을 고려하여 회로가 제공된다 - 이 회로에 대한 실시예는 도 8c 내지 도 8f를 참고로 이후 보다 상세히 논의되고, 도 8b를 참고로 본 발명의 포스트 프로세서(95)에 대한 바람직한 실시예가 도시된다.
도 5를 참고로 상기에 논의된 바와 같이, 채널 샘플(78)은 간단한 슬라이서 회로가 타이밍 회복(68) 및 이득 제어(80)에 의해 사용되는 추정된 샘플값을 발생할 수 있도록 PR4 응답으로 등화된다. PR4 샘플(78)은 도 8b에 도시된 간단한 (1+D)2 필터(130)에 의해 EEPR4 샘플로 변환된다. EEPR4 시퀀스 검출기(88)는 EEPR4 샘플로부터 예비 NRZ 시퀀스(90)를 검출하고, 이어서 NRZ 시퀀스(90)는 재변조기(138)에 의해 재변조되어 도 8a에 유사한 추정된 샘플값(140)의 시퀀스를 발생한다. 추정된 샘플값(140)은 PR4 채널 샘플(7)로부터 (EEPR4 검출기(88)에서의 지연을 고려하여 지연(142)을 통과한 이후에) 감산되어 샘플 에러값(144)의 시퀀스를 발생한다. PR4/EPR4 에러 패턴 검출기(146)는 샘플 에러값(144)을 처리하고, 가장 가능성이 있는 에러 이벤트의 위치 및 정정값을 저장한다. 신드롬 발생기(148)는 NRZ 시퀀스(90)의 블록을 통해 에러 신드롬(예를 들면, 패리티)을 발생하고, 에러 신드롬에서 EEPR4 검출기(88)가 검출 에러를 만든 것으로 나타나면, 에러 패턴 검출기(146)에 의해 발생된 가장 가능성이 있는 에러 이벤트를 사용하여 에러 정정기(150)에 의해 부호가 정해진 NRZI 시퀀스(154)(재변조기(138)에 의해 발생된)가 정정된다.
도 8b의 재변조기(138)는 NRZ 시퀀스(90)를 부호가 정해진 NRZI(SNRZI) 시퀀스(154)로 변환하는 1-D 필터(152), 및 SNRZI 시퀀스(154)를 추정된 PR4 샘플값(140)의 시퀀스로 변환하는 1+D 필터(18)를 구비한다. 추정된 PR4 샘플 시퀀스(140)는 이어서 가산기(178)에서 실제 판독 신호 샘플값(176)으로부터 감산되어, 에러 패턴 검출기(146)에 의해 처리되는 PR4 샘플 에러 시퀀스(144)를 발생한다. 에러 패턴 검출기(146)의 더 상세한 내용은 도 8c에 도시된다.
컴퓨터 시뮬레이션(simulation)을 통해, 1.8 내지 2.5의 사용자 밀도에 대해 가장 지배적인 에러 이벤트((+) 에러 이벤트)는 EPR4 정의역에서 가장 잘 검출되고, 다음으로 지배적인 에러 이벤트((+-+) 에러 이벤트)는 PR4 정의역에서 가장 잘 검출되는 것으로 결정되었다. 그러므로, 본 발명의 PR4/EPR4 에러 패턴 검출기(146)는 다음 형태의 2가지 FIR 필터(180)를 구비한다:
(1 + 2D + D2)(1 - D2) 및 1 - D + D3 - D4
제1 FIR 필터는 EPR4 정의역에서 NRZ (+) 또는 SNRZI (+1, -1) 에러 이벤트에 정의되고, 제2 FIR 필터는 PR4 정의역에서 NRZ (+-+) 또는 SNRZI (+1, -2, +2, -1) 에러 이벤트에 매칭된다.
탄력성을 더 허용하도록, 멀티플렉서(185)는 PR4 정의역 보다 EPR4 정의역에서 에러 이벤트를 검출하도록 제2 FIR 에러 필터를 선택적으로 구성하게 제공된다. 즉, 멀티플렉서(185)는 다음 형태로 제2 FIR 필터를 구성하기 위해 제1 FIR 필터로부터 중간 출력(187)을 선택할 수 있다:
(1 + 2D + D2)(1 - D + D3 - D4)
이는 EPR4 정의역에서 SNRZI(+1, -2, +2, -1) 최소 거리 에러 이벤트로 매칭된다. 사용되는 시스템 동력 및/또는 기록 밀도에 따라, EPR4 정의역에서 에러 이벤트를 모두 검출하는 것이 바람직할 수 있다.
에러 패턴 검출기로 입력되는 각 에러 샘플에 대해, 비교기(182)는 이후 설명될 바와 같이 유효한 에러 시퀀스에 대응하는 최대 절대 크기의 출력을 갖는 FIR 필터를 선택한다. 비교기(182)의 출력은 이어서 비교기(184)에서 "현재 최대치"와 비교되고, 비교기(186)에서 다음 최대치에 비교된다. "현재 최대치"는 처리되고 있는 현재 EDC 코드워드에 대한 최대 FIR 출력을 저장하고, "다음 최대치"는 이어지는 EDC 코드워드에 대한 최대 FIR 출력을 저장한다.
재변조기(138)에 의해 발생된 SNRZI 시퀀스(154)는 FIFO 버퍼(188)에서 버퍼 처리되고, 룩업 테이블(lookup table)(190)에 저장된 기대 에러 시퀀스에 비교된다. 각 새로운 샘플값이 처리됨에 따라, 에러 필터(180)의 출력은 검출된 SNRZI 시퀀스(154)가 유효한 에러 시퀀스를 매칭시키는가 여부를 결정하도록 선(192)을 통해 룩업 테이블(190)을 인덱스 처리한다. 비교기(182)는 단지 에러 필터(180)의 출력을 대응하는 유효 에러 시퀀스와 비교한다(유효하지 않은 에러 시퀀스에 대응하는 에러 필터의 출력은 0으로 설정된다). 최대 유효한 FIR 출력(180)이 비교기(184 또는 186)에서 현재 최대치 또는 다음 최대치를 넘기 때문에 전위 에러 이벤트가 검출될 때, 룩업 테이블(190)은 현재 및/또는 다음 EDC 코드워드에 대한 검출 에러에 대응하는 정정 시퀀스를 출력하고, 정정 시퀀스는 각각 레지스터(194, 196)에 저장된다.
도 8c의 룩업 테이블(190)은 아래 2개의 검출 에러 이벤트 E1 및 E2와 대응하는 정정 출력 시퀀스로부터 주어지는 기대 SNRZI 시퀀스를 도시하는 도표 2 및 도표 3에 따라 동작한다.
Figure 112001001956871-pct00002
Figure 112001001956871-pct00003
에러 이벤트 E1 및 E2는 샘플 에러 시퀀스(144)의 극성에 의존하여 양의 값이거나 음의 값이 될 수 있다. 도 8c의 FIFO 버퍼(188)에 저장된 검출 SNRZI 시퀀스는 상기 룩업 테이블에서 "기대되는 SNRZI" 시퀀스에 비교되어, 유효한 정정이 이루어질 수 있는가 여부를 결정한다. 룩업 테이블(190)은 또한 정정이 QM2 코드 제한을 위반하는가 여부를 결정하도록 SNRZI FIFO(188)에 저장된 주변 비트에 대해 상기 테이블에서 "정정된 SNRZI" 시퀀스를 추정하는 회로를 포함할 수 있다. QM2 제한이 위반되면, 정정은 무효한 것으로 되고, 대응하는 에러 필터의 출력은 0으로 설정된다.
비교기(184, 186)의 출력은 룩업 테이블(190)의 출력을 가능하게 할 뿐만 아니라, 현재 및 다음 EDC 코드워드에 대해 SNRZI 시퀀스(154)에서 에러 이벤트의 위치를 나타낸다. 에러의 위치는 각각 레지스터(198, 200)에 저장된다. 도 8b의 패리티 발생기(148)에 의해 발생된 패리티 신드롬이 현재 EDC 코드워드에서 검출 에러를 나타낼 때, 에러 정정기(150)는 도 8c의 레지스터(194)에 저장된 정정 시퀀스 및 레지스터(198)에 저장된 에러의 대응하는 위치를 사용하여 SNRZI 시퀀스(154)를 정정한다.
최대 FIR 출력 및 대응하는 정정 시퀀스와 다음 EDC 코드워드에 대한 에러 위치를 저장하는 이유는 현재 EDC 코드워드의 에러가 코드워드 경계를 통해 이전 또는 다음 EDC 코드워드에 전파될 수 있기 때문이다. 그러므로, 에러 패턴 검출기(146)는 이전 EDC 코드워드 중 마지막 2 비트로 시작하여 다음 EDC 코드워드 중 처음 3 비트를 통해 확장되는 에러 이벤트를 탐색한다. 본 발명의 이러한 특성은 데이터 섹터를 처리할 때 실행되는 흐름도인 도 8d와, 에러가 EDC 코드워드 경계를 통해 확장되는 경우를 포함하여, 패리티 발생 및 최대 에러 이벤트 검출을 모두 설명하는 도 8e 및 도 8f를 참고로 더 잘 이해된다.
본 발명의 바람직한 실시예에서, EDC 코드워드는 NRZ 정의역에서 짝수 패리티를 갖는 52 비트를 구비한다(짝수개의 NRZ "1" 비트). 도 8e는 이전 EDC 코드워드의 마지막 2 비트, 현재 EDC 코드워드의 52 비트, 및 다음 EDC 코드워드의 처음 3 비트를 포함하여, FIFO 버퍼(202)에서 버퍼 처리되는 57 비트의 현재 섹터를 도시한다. FIFO 버퍼(202)에 저장된 데이터는 도 8d의 흐름도에 따라 처리되고, 여기서는 단계(204)에서 현재 패리티 CUR_PARITY, 다음 패리티 NEXT_PARITY, 현재 최대 FIR 출력 CUR_MAX, 및 다음 최대 FIR 출력 NEXT_MAX이 0으로 초기화된다. COUNTER는 도 8e에 도시된 바와 같이 섹터의 처음 EDC 코드워드의 제1 비트로 시작하도록 3으로 초기화된다.
단계(206)에서, 브랜치는 FIFO 버퍼(202)에 대한 포인터를 나타내는 현재 COUNTER값에 의존하여 실행된다. COUNTER값이 단계(206)에서 3 - 54이면, remod/demod 검출기는 현재 EDC 코드워드의 데이터 비트를 처리한다. 단계(208)에서, 현재 패리티 CUR_PARITY는 EEPR4 시퀀스 검출기(88)에 의해 출력된 현재 NRZ 비트(90)로 업데이트되고, 단계(210)에서, 현재 샘플 에러값(144)은 도 8c의 에러 패턴 검출기(146)에서 FIR 필터(180)에 의해 필터 처리된다. 단계(212)에서는 도표 2 또는 도표 3으로부터 유효한 정정 시퀀스에 대응하는 최대 출력 MAX_FIR을 갖는 FIR 필터가 선택되고, 선택된 FIR 필터는 CUR_FIR로 지정된다. 단계(214)에서, 최대 FIR 필터 출력 MAX_FIR이 현재 최대 CUR_MAX 보다 더 크면, 단계(216)에서, 도 8c의 룩업 테이블(190)은 FIFO 버퍼(188)에 저장된 검출 SNRZI 시퀀스를 도표 2 및 도표 3에 도시된 바와 같은 검출 에러 이벤트에 대응하는 기대 SNRZI 시퀀스에 비교한다. 단계(216)에서 유효한 정정이 이루어질 수 있음을 나타내는 매칭이 있으면, 단계(218)에서, 현재 최대 CUR_MAX는 MAX_FIR로 업데이트되고, 검출 에러 LOC[CUR_FIR]의 대응하는 위치는 CUR_LOC로 지정되고, 또한 도표 2 또는 도표 3으로부터 대응하는 정정 시퀀스는 CUR_COR로 지정된다. 단계(214)에서 최대 FIR 출력 MAX_FIR이 현재 최대 CUR_MAX 보다 더 크지 않거나, 단계(216)에서 유효한 정정이 이루어질 수 없으면, 단계(218)는 스킵된다.
또 다른 브랜치는 단계(220)에서 COUNTER의 현재값을 근거로 실행된다. COUNTER값이 53 - 57이면, 에러 패턴 검출기(146)는 다음 EDC 코드워드에서 최대 에러 이벤트를 탐색하기 시작한다. 단계(222)에서, 최대 FIR 출력은 NEXT_MAX에 비교되고, 그 최대값은 다음 EDC 코드워드로 저장된다. 더 큰 경우, 도 8c의 룩업 테이블(190)은 다시 FIFO 버퍼(188)에 저장된 검출 SNRZI 시퀀스를 도표 2 또는 도표 3에 저장된 기대 SNRZI 시퀀스에 비교한다. 단계(224)에서 유효한 정정이 이루어질 수 있음을 나타내는 매칭이 있으면, 단계(226)에서, 다음 EDC 코드워드 NEXT_MAX에 대한 최대 FIR 출력은 MAX_FIR로 업데이트되고, 검출 에러 LOC[CUR_FIR]의 대응하는 위치는 NEXT_LOC로 지정되고, 또한 도표 2 또는 도표 3으로부터 댕으하는 정정 시퀀스는 NEXT_COR로 지정된다. 단계(222)에서 최대 FIR 출력 MAX_FIR이 NEXT_MAX 보다 더 크지 않거나, 단계(224)에서 유효한 정정이 이루어질 수 없으면, 단계(226)는 스킵된다.
단계(228)에서는 COUNTER가 증가되고, 브랜치를 루프의 시작부로 제어한다. 단계(206)에서, COUNTER값이 55 - 57이면, 현재 EDC 코드워드에 대한 패리트는 완전하게 발생된다. 그러므로, 다음 EDC 코드워드에 대한 패리티는 단계(230)에서 현재 NRZ 비트를 NEXT_PARITY에 부가하고 단계(208)에서의 현재 EDC 코드워드에 대한 패리티 업데이트를 스킵함으로서 업데이트된다.
COUNTER값이 단계(206)에서 58이면, 에러 패턴 검출기(146)는 현재 EDC 코드워드의 처리를 완료한다. 그러므로, 단계(232)에서는 현재 EDC 코드워드 CUR_PARITY에 대한 패리티 신드롬이 추정된다. 검출 에러가 발생되었음을 나타내도록 0이 아니면, 단계(234)에서는 에러가 도 8c의 레지스터(194)에 저장된 현재 정정 시퀀스 CUR_COR 및 레지스터(198)에 저장된 현재 위치 CUR_LOC를 사용하여 정정된다. 단계(236)에서는 시스템 변수가 재초기화된다; COUNTER는 5로 재설정되고; 현재 패리티 CUR_PARITY는 다음 EDC 코드워드에 대해 추정된 패리티인 NEXT_PARITY로 설정되고; 현재 FIR 최대치 CUR_MAX는 다음 EDC 코드워드에 대해 저장된 최대 FIR 출력인 NEXT_MAX로 설정되고; 또한 다음 EDC 코드워드에 대한 패리티 및 정정 시퀀스 NETX_PARITY 및 NEXT_COR은 0으로 설정된다. 이어서, 도 8d의 흐름도는 단계(238)에서 섹터의 끝부분에 이를 때까지 다음 EDC 코드워드에 대해 재실행된다.
도 8f는 현재 및 다음 EDC 코드에 대한 패리티 및 최대 FIR 에러 이벤트를 추적하는데 사용되는 회로의 상세한 내용을 도시한다. 도 8b의 EEPR4 시퀀스 검출기(88)에 의해 출력된 검출 NRZ 시퀀스(90)는 레지스터(242a, 242b)에서 각각 현재 및 다음 EDC 코드워드에 대해 축적된다. 현재 EDC 코드워드에 대한 패리티는 COUNTER(240a)가 3 - 54일 때 업데이트되고, 다음 EDC 코드워드에 대한 패리티는 COUNTER(240b)가 55 - 57일 때 업데이트된다. COUNTER가 58일 때, 레지스터(242b)에 저장된 다음 EDC 코드워드에 대한 패리티는 레지스터(242a)의 현재 EDC 코드워드에 대한 패리티로 전달된다.
도 8b의 재변조기(138)에 의해 발생된 SNRZI 시퀀스(154)는 도 8e에 도시된 FIFO와 똑같은 도 8f에 도시된 FIFO(202)에서 버퍼 처리된다. 레지스터(242a)에 저장된 현재 EDC 코드워드에 대한 패리티에서 EEPR4 시퀀스 검출기(88)에 의해 검출 에러가 있었음을 나타낼 때, 에러 정정기(150)는 SNRZI 시퀀스(154)에서 에러를 정정하도록 에러 패턴 검출기(146)에 의해 검출된 최대 에러 이벤트를 사용한다.
도 8c의 두 FIR 에러 필터(180)에 의해 검출된 두 에러 이벤트 E1(n) 및 E2(n)은 비교기(182)에서 비교되고, 절대값 중 최대치가 비교기(182)의 출력으로 선택된다. 최대 에러 필터 출력은 COUNTER(240c)가 3 - 57일 때 비교기(244a)에서 현재 EDC 코드워드에 대한 최대치에 비교되고, COUNTER(240d)가 53 - 57일 때 비교기(244b)에서 다음 EDC 코드워드에 대한 최대치에 비교된다. 현재 EDC 코드워드에 대한 최대 에러 이벤트(위치 및 정정 시퀀스)는 레지스터(246a)에 저장되고, 다음 EDC 코드워드에 대한 최대 에러 이벤트는 레지스터(246b)에 저장된다. COUNTER가 58일 때, 현재 EDC 코드워드에 대한 최대 에러 이벤트(위치 및 정정 시퀀스)는 레지스터(242a)에 저장된 현재 패리티가 0이 아닌 경우 현재 EDC 코드워드를 정정하는데 사용된다. 이어서, 레지스터(246b)에 저장된 다음 EDC 코드워드에 대한 최대 에러 이벤트(정정 및 위치 시퀀스)는 레지스터(246a)에 저장된 현재 최대 에러 이벤트에 전달된다. COUNTER는 5로 재설정되고, 과정은 다시 다음 EDC 코드워드에 대해 시작된다.
도 8b의 에러 정정기(150)가 검출된 SNRZI 시퀀스에서 에러를 정정하는 방법은 도 8g의 블록도를 참고로 이해된다. 도 8b의 신드롬 발생기(148)에 의해 발생된 에러 신드롬(패리티)에서 현재 EDC 코드워드에 검출 에러가 발생된 것으로 나타날 때, 에러 정정기(150)는 도 8c의 PR4/EPR4 에러 패턴 검출기(146)로부터 선(250)을 통해 최대 에러 이벤트의 위치를 수신하고 선(252)을 통해 대응하는 정정 SNRZI 시퀀스를 수신한다. 정정된 SNRZI 시퀀스는 레지스터(254)에 저장되고 멀티플렉서(256a - 256d)의 제1 입력에 인가된다. 검출된 SNRZI 시퀀스(154)는 쉬프트 레지스터(258)를 통해 쉬프트되고, 여기서 지연 소자(260a - 260d)의 출력은 멀티플렉서(256a - 256d)의 제2 입력에 인가된다. 최대 에러 이벤트의 위치 LOCATION(250)는 검출된 SNRZI 시퀀스에서 에러가 있는 비트를 적절한 시간에 정정된 SNRZI 시퀀스로 대치하기 위해 멀티플렉서(256a - 256d)의 동작을 제어한다. Sn, Sn-1, Sn-2, 및 Sn-3이라 칭하여지는 레지스터(254)의 출력선은 상기에 논의된 도표 2 및 도표 3에 도시된 정정 SNRZI 시퀀스에 대응한다.
QM2-패리티 인코더
이제는 도 5의 QM2-패리티 인코더(36)가 QM2 및 패리티 제한에 따라 사용자 데이터(32)를 인코딩하는 방식이 논의된다. 중요한 설계 기준은 시스템의 효율성 및 저장 용량을 최대화하기 위해 가장 높은 실질적인 코드 레이트(채널 코드워드 당 사용자 비트의 수)를 사용하여 코드 제한을 실시하는 것이고, 여기서 "실질적"이란 말은 비용면에서 가장 효율적인 실시를 의미한다. 최고의 가능한 코드 레이트 또는 QM2 코드의 "용량(capacity)"은 0.9613이지만, 이 레이트를 실시하는 비용은 과중하다. 본 발명은 새로운 인코딩 기술을 사용하여 유도된 효율적인 인코딩 회로를 사용해 48/52(0.9231)의 코드 레이트를 이룬다.
QM2 코드 제한에 대한 상태 전이도(state transition diagram, STD)는 다음의 전이 매트릭스를 갖는 도 9a에 도시된다:
Figure 112001001956871-pct00004
이 매트릭스의 2제곱을 구하면, 2개의 매트릭스 및 대응하는 STD에 이르고, STD에서 하나는 2개의 상태를 갖고 다른 하나는 3개의 상태를 갖는다. 2제곱 2-상 태의 STD는 도 9b에 도시되고, 이는 다음의 전이 매트릭스를 갖는다:
Figure 112001001956871-pct00005
상기 2제곱 매트릭스의 4제곱 및 8제곱(원래 매트릭스의 8제곱 및 16제곱)을 구하면, 각각 도 9c 및 도 9d에 도시된 STD를 산출한다.
도 9d의 16제곱 STD는 레이트 15/16 코드(최소 요구되는 32,768)를 생성하기에 충분한 상태 1에서 시작되어 상태 1에서 끝나는 브랜치를 그 이상을 가짐을 주목한다. 도 9d의 16제곱 STD는 도 9c의 8제곱 STD의 2회 사용으로부터 구성될 수 있다. 인코더의 실시를 간략화하기 위해, 다수의 브랜치들이 제거되지만, 레이트 15/16 코드를 실시하기에 충분한 브랜치가 8제곱 STD의 2회 사용에 아직 유지된다. 도 9c의 STD로부터 상태 1로의 자체 루프에서 브랜치 중 3개, 상태 1에서 2로의 브랜치 중 5개, 상태 2로의 자체 루프에서 모든 브랜치, 및 상태 2에서 상태 1로의 브랜치 중 7개를 삭제함으로서, 도 9e의 수정된 8제곱 STD가 주어진다. 도 9e의 STD의 2회 사용은 도 9d의 16제곱 STD 보다 전체 브랜치가 더 적은 도 9f의 수정된 16제곱 STD에 이르지만, 아직까지 상태 1로의 자체 루프에서 레이트 15/16 코드를 실시하기에 충분한 브랜치가 있다.
도 9f의 수정된 16제곱 STD에 상태 1로의 자체 루프에서 모든 시퀀스는 도 9e의 수정된 8제곱 STD의 2회 사용으로부터 발생될 수 있다. 가능한 상태 시퀀스가 2가지 있고, 이들은 모두 상태 1에서 시작되고 끝난다: 1 -> 1 -> 1로부터의 전이 또는 1 -> 2 -> 1 로부터의 전이. 이는 도 9e의 수정된 8제곱 STD에서 브랜치 수로 라벨이 정해진 2가지 가능한 상태 시퀀스를 도시하는 도 10a에서 설명된다. 라벨의 곱은 합법적인 각 상태 전이 시퀀스에 이용가능한 시퀀스의 총수를 산출하고, 15/16 코드에서 유효한 각 코드워드는 2가지 유효한 상태 전이 시퀀스 중 하나에 대응한다.
복잡성을 더 감소시키는 것은 간단한 해결 구조를 허용하는 2제곱으로 도 10a의 각 상태로부터 나오는 브랜치를 인수 분해함으로서 이루어진다. 이는(128, 32, 8)로 인수 분해된 1 -> 1 시퀀스에서 168 브랜치, (32, 8)로 인수 분해된 1 -> 2 시퀀스에서 40 브랜치, 또한 수정되지 않은 2 -> 1 시퀀스에서 128 브랜치를 도시하는 도 10b에서 설명된다. 발생될 수 있는 16-비트 코드워드의 총수는 도표 4에 도시된 바와 같이 인수 분해된 브랜치의 외적(cross product)을 취함으로서 발생된다:
Figure 112004021852444-pct00047
발생될 수 있는 16-비트 코드워드의 총수(33,344)가 필요한 것 (32,768) 보다 크므로, 마지막 3개의 외적은 삭제되어, 도표 5에 도시된 바와 같이 레이트 15/16 코드를 실시하는데 필요한 코드워드의 수만을 정확히 남겨둔다:
Figure 112004021852444-pct00048
도표 5는 6개의 다른 서브세트 브랜치를 사용하는 8개의 엔트리(entry)를 구비한다: 12811, 3211, 811, 3212, 812, 및 12821. 각 전이 시퀀스에 대한 서브세트 브랜치는 도 11에 도시된 바와 같이 메모리 뱅크(memory bank)에 저장될 수 있고, 적절한 메모리 뱅크는 16-비트 출력 코드워드를 형성하도록 선택된다. 6개의 브랜치 서브세트를 나타내는데 3 비트를 사용할 때, 특정한 15-비트 입력 코드워드에 대한 전이 시퀀스를 지정하는데 총 8 x 3 x 2 = 6 바이트를 요구한다. 15-비트 입력 코드워드 중 최상위 5 비트는 도표 5에서 엔트리를 선택하는데 사용되고, 여기서 도표 5의 각 엔트리는 도 11에서 대응하는 메모리 뱅크를 선택하기 위한 2개의 3-비트 시퀀스를 구비한다. 15 비트 입력 코드워드 중 최하위 14 비트는 두 서브세트 브랜치로부터 특정한 브랜치를 선택하는데 사용되고, 선택된 브랜치는 16-비트 출력 코드워드를 형성하도록 연관된다.
인코딩 처리는 도 12의 코드 트리(code tree)로부터 더 이해되고, 이는 b14 - b0으로 나타내지는 15-비트 입력 코드워드로 다음의 인코딩 알고리즘을 실시한다:
1. b14가 0이면, 도 11의 12811 메모리 뱅크로부터 2개의 8-비트 시퀀스를 선택하도록 나머지 14개 비트(b13 - b0)가 7개의 두 그룹으로 분할된 12811 x 12811의 연결을 선택한다.
2. b14가 1이면, 다음 두 비트(b13, b12)가 다음과 같은 경우:
00 - 다음 7개 비트(b11 - b5)가 12811 메모리 뱅크로부터 8-비트 시퀀스를 선택하는데 사용되고 마지막 5개 비트(b4 - b0)가 3211 메모리 뱅크로부터 8-비트 시퀀스를 선택하는데 사용되는 연결 12811 x 3211을 선택한다.
01 - 다음 5개 비트(b11 - b7)가 3211 메모리 뱅크로부터 8-비트 시퀀스를 선택하는데 사용되고 마지막 7개 비트(b6 - b0)가 12811 메모리 뱅크로부터 8-비트 시퀀스를 선택하는데 사용되는 연결 3211 x 12811을 선택한다.
10 - 다음 5개 비트(b11 - b7)가 3212 메모리 뱅크로부터 8-비트 시퀀스를 선택하는데 사용되고 마지막 7개 비트(b6 - b0)가 12821 메모리 뱅크로부터 8-비트 시퀀스를 선택하는데 사용되는 연결 3212 x 12821을 선택한다.
3. 처음 3개 비트(b14 - b12)가 1이면, 다음 2개 비트(b11, b10)는 적절한 메모리 뱅크를 선택하는데 사용되고, 나머지 10개 비트(b9 - b0)는 각각 7 + 3, 5 + 5, 3 + 7, 및 3 + 7의 그룹으로 분할되어 도 11의 적절한 메모리 뱅크로부터 8-비트 시퀀스를 선택하는데 사용된다.
상기 인코딩 구조를 실시하는데 요구되는 총 메모리는 쉽게 계산된다. 총 336 바이트에 대해 도 11의 메모리 뱅크에는 총 128 + 32 + 8 + 32 + 8 + 128 8-비트가 저장된다. 도 12의 인코딩 트리는 하드웨어화되거나, 도표 5의 각 엔트리에서 두 메모리 뱅크에 대한 2개의 3-비트 어드레스의 8개 엔트리를 구비하는 룩업 테이블을 사용하여 실시될 수 있다(즉, 총 6개의 추가 바이트). 이는 215 x 16 비트 또는 65,536 바이트를 요구하는 직접적인 15-대-16 룩업 테이블과 비교해 하드웨어가 상당히 감소된다.
상기 인코딩 방법은 복잡성을 적절하게 증가시켜 더 높은 코드 레이트를 생성하도록 확장될 수 있다. 또한, 본 발명의 인코딩 방법은 8제곱 STD로 제한되지 않는다; 다른 멱수가 실제로 설계를 간략화할 수 있다. 예를 들면, 2제곱 STD에 이어서 4제곱 STD의 4회 사용으로 레이트 17/18 코드를 생성하는 것이 가능하다. 이는 도 13a 내지 도 13g에서 설명된다. 도 13a는 도 9a의 4제곱 STD이고, 도 13b는 2제곱 STD이고, 또한 도 13c는 1회의 2제곱 STD로 이어지는 4회의 4제곱 STD의 연결이다. 도 13c의 STD에서 상태 1로의 자체 루프에는 레이트 17/18 코드를 실시하기에 충분한 브랜치가 있음을 주목한다. 도 13d는 코드워드 시퀀스가 항상 상태 1에서 시작하므로 상태 2로부터의 모든 브랜치가 제거된 도 13a의 4제곱 STD이다. 도 13e는 수정되지 않은 4제곱 STD이고, 도 13f는 코드워드가 항상 상태 1에서 끝나므로 상태 2에서 끝나는 모든 브랜치가 제거된 도 13b의 2제곱 STD이다. 도 13d의 STD를 도 13e의 3회 사용 및 도 13f의 1회 사용과 연결시키면, 도 13g의 STD가 되어, 간단한 블록 코드가 상태 1의 자체 루프에서 레이트 17/18 코드를 실시하기에 충분한 브랜치를 갖는다. 상태 1에서 시작되고 끝나는 이 특정한 연결의 허용가능한 상태 시퀀스는 16개가 있다.
본 발명의 바람직한 실시예에서는 기록 전류에 짝수 패리티를 갖는 레이트 48/52 QM2 코드가 레이트 17/18 코드의 2회 사용과 레이트 14/16 코드의 1회 사용을 연결시킴으로서 구성된다. 2개의 17/18 코드워드의 패리티가 발생되고, 이어서 레이트 14/16 코드워드의 패리티는 레이트 48/52 코드워드의 모든 패리티가 짝수이도록 선택된다. 이는 레이트 15/16 QM2 코드에 대한 코드북(codebook)을 짝수 및 홀수 패리티의 코드워드를 구비하는 2개의 코드북으로 분할함으로서 이루어진다.
원래의 15/16 QM2 코드(도 9c)는 도표 6에 도시된 바와 같이 84개 짝수 패리티 코드워드 및 86개 홀수 패리티 코드워드로 분할된 상태 1로의 자체 루프에서 171개 브랜치를 구비한다. 상태 1에서 상태 2로는 22개의 짝수 패리티 코드워드 및 22개의 홀수 패리티 코드워드로 분할된 45개의 원래 브랜치가 있다. 또한, 상태 2에서 상태 1로는 67개의 짝수 패리티 코드워드 및 68개의 홀수 패리티 코드워드로 분할된 135개의 원래 브랜치가 있다. 도 14는 각 코드워드 세트에 대한 메모리 뱅크가 2개의 멱수로 분할되는 방법을 포함하여, 짝수 및 홀수 패리티 코드북을 도시한다.
16-비트 출력 코드워드를 구성하는 것은 기본적으로 상기와 똑같다. 코드 트리(또는 룩업 테이블)는 도 14의 메모리 뱅크로부터 2개의 8-비트 코드워드를 선택하는데 사용되고, 15-비트 입력 코드워드로부터의 한 비트는 짝수와 홀수 패리티 사이를 선택하는데 사용된다. 짝수 패리티 16-비트 코드워드는 짝수-짝수 또는 홀수-홀수 8-비트 코드워드를 연관시킴으로서 발생되고, 홀수 패리티 16-비트 코드워드는 짝수-홀수 또는 홀수-짝수 8-비트 코드워드를 연관시킴으로서 발생된다. 코드 트리(또는 룩업 테이블)는 도 14에서 메모리 뱅크의 충분한 순열이 요구되는 2 x 214 또는 32,768개 16-비트 코드워드를 발생하는데 사용되도록 구성된다.
도 14의 메모리 뱅크는 도 5의 기록 시퀀스 ~b(n)(46)에서 원하는 패리티를 발생하게 되는 8-비트 코드워드로 구성된다. 도 5의 프리코더(precoder)(40)는 간단한 1/(1-D) 필터이므로, 8-비트 코드워드는 기록 시퀀스 ~b(n)(46)에서 NRZ 패리티가 프리코더(40)의 출력에서 짝수 또는 홀수가 되도록 선택된다. 다음의 도표는 도 14의 짝수 및 홀수 코드북에 대한 8-비트 코드워드를 열거한다:
Figure 112001001956871-pct00008
도 5의 QM2-패리티 디코더(92)는 상술된 인코딩 처리의 역동작을 실행한다. 먼저, 17/18 코드에 따라 2개의 18-비트 코드워드를 디코딩하고, 이어서 15/16 코드에 따라 16-비트 코드워드를 디코딩한다. 상술된 인코딩 처리를 사용하여, 종래 기술에 숙련된 자는 도 5의 QM2-패리티 디코더(92)를 구성할 수 있다; 이는 본 발명을 이해하는데 필요하지 않으므로, 상세한 내용은 설명되지 않는다.
본 발명의 목적은 여기서 설명된 실시예를 통해 완전히 실현된다. 종래 기술에 숙련된 자는 본 발명의 다양한 특성이 기본적인 기능에서 벗어나지 않고 다른 실시예를 통해 이루어질 수 있음을 이해하게 된다. 예를 들면, 본 발명의 특성은 EEPR4 이외의 시퀀스 검출기에서 에러 이벤트를 감소시키도록 적용될 수 있다. QM2 및 패리티 에러 검출 코드를 구성하기 위한 다른 실시예는 먼저 QM2 제한을 인코딩하고, 이어서 패리티 제한을 발생하도록 다수의 비트들을 첨부하는 것이다. 더욱이, 종래 기술에 숙련된 자는 시퀀스 검출기가 검출 에러를 만들 때 패리티 이외의 EDC 코드가 사용될 수 있음을 이해하게 된다. 설명된 특정 실시예는 설명적인 것이지, 다음의 청구항으로 적절하게 구성되는 바와 같은 본 발명의 범위를 제한함을 의미하지 않는다.

Claims (23)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 사용자 데이터(32)를 디스크 저장 매체(42)에 기록하고, 상기 디스크 저장 매체로부터 상기 사용자 데이터를 판독하기 위한 샘플링된 진폭 판독/기록 채널에 있어서,
    (a) 사용자 데이터의 n 비트들을 m 비트 코드워드(codeword)로 인코딩하기 위한 인코더(36)로서, 상기 m 비트 코드워드는 미리정해진 제1 거리의 에러 이벤트들을 감소시키기 위한 제1 채널 코드 제한, 연속적인 NRZI "1" 비트들, 및 미리정해진 제2 거리의 에러 이벤트들을 감소시키기 위한 제2 채널 코드 제한을 포함하고, 상기 미리정해진 제1 거리는 상기 미리정해진 제2 거리와 같지 않은, 상기 인코더(36);
    (b) 상기 m 비트 코드워드를 상기 디스크 저장 매체에 기록하기 위한 기록 회로(52);
    (c) 이산 시간 샘플값들의 시퀀스(78)를 발생하도록 아날로그 판독 신호를 샘플링하기 위한 샘플링 장치(64);
    (d) 상기 이산 시간 샘플값들의 시퀀스로부터 예비 이진수 시퀀스(90)를 검출하기 위해 상기 제1 채널 코드 제한에 매칭된 트렐리스 시퀀스 검출기(88); 및
    (e) 포스트 프로세서(95)로서:
    (i) 상기 예비 이진수 시퀀스 및 상기 제2 채널 코드 제한에 응답하여 에러 신드롬(126)을 발생시키기 위한 신드롬 발생기(110); 및
    (ii) 이산 시간 샘플값들 및 상기 에러 신드롬에 응답하며, 상기 예비 이진수 시퀀스에서 에러들을 정정하기 위한 에러 정정기(124)를 포함하는 상기 포스트 프로세서를 포함하는, 샘플링된 진폭 판독/기록 채널.
  12. 제 11 항에 있어서,
    상기 제2 채널 코드 제한을 발생하기 위해 리던던시 비트(redundancy bit)가 상기 m 비트 코드워드로 인코딩되는, 진폭 판독/기록 채널.
  13. 제 12 항에 있어서,
    상기 리던던시 비트는 NRZ에서 미리정해진 비트들의 수에 대해 패리티(parity)로서 발생되는, 샘플링된 진폭 판독/기록 채널.
  14. 제 11 항에 있어서,
    상기 제1 채널 코드 제한은 상기 m 비트 코드워드 중에서 미리정해진 데이터 시퀀스를 코드화하는, 샘플링된 진폭 판독/기록 채널.
  15. 제 14 항에 있어서,
    상기 미리정해진 데이터 시퀀스는 4개 이상의 연속적인 NRZI "1" 비트들을 포함하는, 샘플링된 진폭 판독/기록 채널.
  16. 제 14 항에 있어서,
    (a) 상기 m 비트 코드워드는 짝수 및 홀수 인터리브를 포함하고;
    (b) 상기 미리정해진 데이터 시퀀스는 상기 짝수 또는 홀수 인터리브들 중 하나에서 4개의 연속적인 NRZI "1" 비트들을 포함하는, 샘플링된 진폭 판독/기록 채널.
  17. 제 11 항에 있어서,
    상기 트렐리스 시퀀스 검출기는 상기 제1 채널 코드 제한에 매칭된 상태 머신(state machine)을 포함하는, 샘플링된 진폭 판독/기록 채널.
  18. 제 17 항에 있어서,
    상기 상태 머신은 시간에 따라 변하는, 샘플링된 진폭 판독/기록 채널.
  19. 제 11 항에 있어서,
    상기 포스트 프로세서는:
    (a) 상기 예비 이진수 시퀀스를 추정된 샘플값들의 시퀀스(117)로 재변조하기 위한 재변조기(116);
    (b) 상기 이산 시간 샘플값들 및 상기 추정된 샘플값들에 응답하며, 샘플 에러 시퀀스(120)를 발생시키기 위한 샘플 에러 발생기; 및
    (c) 상기 샘플 에러 시퀀스에서 에러 이벤트를 검출하기 위한 에러 패턴 검출기(122)를 더 포함하는, 샘플링된 진폭 판독/기록 채널.
  20. 제 19 항에 있어서,
    상기 에러 패턴 검출기는 상기 트렐리스 시퀀스 검출기의 최소 거리 에러 이벤트에 매칭된 이산 시간 필터(180)를 포함하는, 샘플링된 진폭 판독/기록 채널.
  21. 디스크 저장 매체에 사용자 데이터를 기록하고 디스크 저장 매체로부터 사용자 데이터를 판독하기 위한 방법에 있어서,
    (a) 사용자 데이터의 n 비트들을 m 비트의 코드워드로 인코딩하는 단계로서, 상기 m 비트 코드워드는 미리정해진 데이터 시퀀스가 없고, 코드 레이트 n/m이 2/3 보다 큰, 상기 인코딩 단계;
    (b) 이산 시간 샘플값들의 시퀀스를 발생시키기 위해 상기 디스크 저장 매체 위에 위치된 기록 헤드로부터 나오는 아날로그 판독 신호를 샘플링하는 단계;
    (c) 상기 이산 시간 샘플값들의 시퀀스로부터 예비 이진수 시퀀스를 검출하는 단계;
    (d) 상기 예비 이진수 시퀀스에 응답하여 에러 신드롬을 발생하는 단계; 및
    (e) 상기 이산 시간 샘플값들 및 상기 에러 신드롬을 사용하여 상기 예비 이진수 시퀀스에서 에러들을 정정하는 단계를 포함하는, 판독 및 기록 방법.
  22. 제 21 항에 있어서,
    상기 미리정해진 데이터 시퀀스는 4개 이상의 연속적인 NRZI "1" 비트들을 포함하는, 판독 및 기록 방법.
  23. 제 21 항에 있어서,
    (a) 상기 m 비트 코드워드는 짝수 및 홀수 인터리브를 포함하고;
    (b) 상기 미리정해진 데이터 시퀀스는 상기 짝수 또는 홀수 인터리브들 중 하나에서 4개의 연속적인 NRZI "1" 비트들을 포함하는, 판독 및 기록 방법.
KR1020017001284A 1998-07-31 1999-07-27 채널 코드 제한에 정합된 트렐리스 시퀀스 검출기 및 신호 샘플들과 에러 신드롬을 사용하여 검출 이진수 시퀀스에서 에러들을 정정하기 위한 포스트 프로세서를 사용하는 샘플링 진폭 판독 채널 KR100658382B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/127,101 US6185173B1 (en) 1998-07-31 1998-07-31 Sampled amplitude read channel employing a trellis sequence detector matched to a channel code constraint and a post processor for correcting errors in the detected binary sequence using the signal samples and an error syndrome
US09/127,101 1998-07-31

Publications (2)

Publication Number Publication Date
KR20010072116A KR20010072116A (ko) 2001-07-31
KR100658382B1 true KR100658382B1 (ko) 2006-12-18

Family

ID=22428312

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017001284A KR100658382B1 (ko) 1998-07-31 1999-07-27 채널 코드 제한에 정합된 트렐리스 시퀀스 검출기 및 신호 샘플들과 에러 신드롬을 사용하여 검출 이진수 시퀀스에서 에러들을 정정하기 위한 포스트 프로세서를 사용하는 샘플링 진폭 판독 채널

Country Status (7)

Country Link
US (1) US6185173B1 (ko)
EP (1) EP1101224A1 (ko)
JP (1) JP2002521788A (ko)
KR (1) KR100658382B1 (ko)
AU (1) AU5238499A (ko)
TW (1) TWI223798B (ko)
WO (1) WO2000007187A1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6856660B1 (en) * 1996-10-11 2005-02-15 Hitachi, Ltd. Signal processing method and apparatus and disk device using the method and apparatus
US6519715B1 (en) * 1998-05-22 2003-02-11 Hitachi, Ltd. Signal processing apparatus and a data recording and reproducing apparatus including local memory processor
US6522705B1 (en) * 1999-03-01 2003-02-18 Stmicroelectronics N.V. Processor for digital data
US6513141B1 (en) * 1999-05-07 2003-01-28 Cirrus Logic Inc. Sampled amplitude read channel employing a trellis sequence detector and a post processor for generating error metrics used to correct errors made by the trellis sequence detector
US6546518B1 (en) * 1999-05-19 2003-04-08 Texas Instruments Incorporated Detector error suppression circuit and method
US6732328B1 (en) * 1999-07-12 2004-05-04 Maxtor Corporation Two stage detector having viterbi detector matched to a channel and post processor matched to a channel code
US6396254B1 (en) * 1999-12-06 2002-05-28 Cirrus Logic, Inc. Read channel
US6581184B1 (en) * 2000-04-11 2003-06-17 Texas Instruments Incorporated Method and circuit for including parity bits in write data of a mass data storage device, or the like, using a 48/54 mtr (3:k) code constraint, and post-processing circuit and method for processing read back data that includes said code constraint
JP2002237036A (ja) * 2001-02-08 2002-08-23 Hitachi Ltd 情報記録方法、再生方法及び情報記録装置
EP1271509A1 (en) * 2001-06-22 2003-01-02 STMicroelectronics S.r.l. Method and apparatus for detecting and correcting errors in a magnetic recording channel of a mass storage system
EP1300955A1 (en) * 2001-10-03 2003-04-09 STMicroelectronics S.r.l. A process for decoding signals, system and computer program product therefor
US6788223B2 (en) * 2002-09-25 2004-09-07 Infineon Technolgies Na Corp. High rate coding for media noise
US8009551B2 (en) * 2004-12-22 2011-08-30 Qualcomm Incorporated Initial pilot frequency selection
US7694205B2 (en) * 2005-02-28 2010-04-06 Hitachi Global Storage Technologies Netherlands B.V. Method and apparatus for providing a read channel having combined parity and non-parity post processing
KR100813260B1 (ko) * 2005-07-13 2008-03-13 삼성전자주식회사 코드북 탐색 방법 및 장치
US7644338B2 (en) * 2005-09-13 2010-01-05 Samsung Electronics Co., Ltd. Method of detecting and correcting a prescribed set of error events based on error detecting code
US7620879B2 (en) * 2005-09-13 2009-11-17 Samsung Electronics Co., Ltd. Method of detecting occurrence of error event in data and apparatus for the same
US7590927B1 (en) * 2005-11-14 2009-09-15 Link —A—Media Devices Corporation Soft output viterbi detector with error event output
JP2007140758A (ja) * 2005-11-16 2007-06-07 Konica Minolta Business Technologies Inc 操作手順最適化方法、機器及びプログラム
US7369343B1 (en) 2006-07-27 2008-05-06 Western Digital Technologies, Inc. Disk drive correcting track address during a write operation
KR100749752B1 (ko) * 2006-08-01 2007-08-17 삼성전자주식회사 디스크 구동 회로의 리드 회로 및 리드 회로의 신호처리방법
US7890841B2 (en) * 2006-11-14 2011-02-15 Samsung Electronics Co., Ltd. Post-viterbi error correction method and apparatus
US8073083B2 (en) * 2007-04-30 2011-12-06 Broadcom Corporation Sliding block traceback decoding of block codes
US8910009B1 (en) * 2008-09-08 2014-12-09 Marvell International Ltd. Method and apparatus for enhancing error detection in data transmission
US8700981B2 (en) * 2011-11-14 2014-04-15 Lsi Corporation Low latency enumeration endec
US10056920B1 (en) * 2015-11-03 2018-08-21 Western Digital Technologies, Inc. Data storage device encoding and interleaving codewords to improve trellis sequence detection
US10063257B1 (en) * 2015-11-03 2018-08-28 Western Digital Technologies, Inc. Data storage device encoding and interleaving codewords to improve trellis sequence detection
CN107038397B (zh) * 2017-04-10 2019-12-31 上海汇尔通信息技术有限公司 一种解码方法及系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5257272A (en) 1992-04-15 1993-10-26 International Business Machines Corporation Time-varying modulo N trellis codes for input restricted partial response channels
US5280489A (en) 1992-04-15 1994-01-18 International Business Machines Corporation Time-varying Viterbi detector for control of error event length
JP2780612B2 (ja) 1993-10-13 1998-07-30 富士通株式会社 磁気記録再生装置
US5617573A (en) 1994-05-23 1997-04-01 Xilinx, Inc. State splitting for level reduction
US5548600A (en) 1994-08-12 1996-08-20 International Business Machines Corporation Method and means for generating and detecting spectrally constrained coded partial response waveforms using a time varying trellis modified by selective output state splitting
JPH0877726A (ja) 1994-09-06 1996-03-22 Hitachi Ltd ディジタル信号処理装置、誤り検出方法および記録媒体再生装置
JPH08329619A (ja) 1994-10-27 1996-12-13 Hitachi Ltd データ再生方法、データ再生装置、およびデータ再生用回路
US5521945A (en) 1995-06-30 1996-05-28 Quantum Corporation Reduced complexity EPR4 post-processor for sampled data detection
DE69628172T2 (de) 1995-08-03 2004-04-01 Seagate Technology Llc, Scotts Valley Verfahren zum Kodieren eines Eingabewertes für die Übertragung auf Partial-Response Kanälen
US5809080A (en) 1995-10-10 1998-09-15 Mitel Semiconductor Americas Inc. System and method for coding partial response channels with noise predictive Viterbi detectors
US5859601A (en) 1996-04-05 1999-01-12 Regents Of The University Of Minnesota Method and apparatus for implementing maximum transition run codes
US5771127A (en) 1996-07-29 1998-06-23 Cirrus Logic, Inc. Sampled amplitude read channel employing interpolated timing recovery and a remod/demod sequence detector
US5949357A (en) 1997-01-13 1999-09-07 Quantum Corporation Time-varying maximum-transition-run codes for data channels
US5938790A (en) 1997-03-04 1999-08-17 Silicon Systems Research Ltd. Sequence error event detection and correction using fixed block digital sum codes
US6032284A (en) * 1997-03-12 2000-02-29 Cirrus Logic, Inc. Trellis coding system for disc storage systems
US5949831A (en) 1997-05-21 1999-09-07 International Business Machines Corporation Method and apparatus for data detection for PRML data channels
US6023386A (en) * 1997-10-31 2000-02-08 Cirrus Logic, Inc. Fault tolerant sync mark detector for synchronizing a time varying sequence detector in a sampled amplitude read channel

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Global Telecommunications Conference, (18. Nov. 1996; P363 - 367) *

Also Published As

Publication number Publication date
WO2000007187A1 (en) 2000-02-10
EP1101224A1 (en) 2001-05-23
TWI223798B (en) 2004-11-11
JP2002521788A (ja) 2002-07-16
KR20010072116A (ko) 2001-07-31
AU5238499A (en) 2000-02-21
US6185173B1 (en) 2001-02-06

Similar Documents

Publication Publication Date Title
KR100658382B1 (ko) 채널 코드 제한에 정합된 트렐리스 시퀀스 검출기 및 신호 샘플들과 에러 신드롬을 사용하여 검출 이진수 시퀀스에서 에러들을 정정하기 위한 포스트 프로세서를 사용하는 샘플링 진폭 판독 채널
US6052248A (en) Parity channel code for enhancing the operation of a remod/demod sequence detector in a d=1 sampled amplitude read channel
US5961658A (en) PR4 equalization and an EPR4 remod/demod sequence detector in a sampled amplitude read channel
US6530060B1 (en) Sampled amplitude read channel employing a post processor with a boundary error compensator which compensates for boundary error events in a split-field data sector
US6005727A (en) Servo decoder for decoding an error correcting servo code recorded on a disc storage medium
US5926490A (en) Sampled amplitude read channel employing a remod/demod sequence detector guided by an error syndrome
US6009549A (en) Disk storage system employing error detection and correction of channel coded data, interpolated timing recovery, and retroactive/split-segment symbol synchronization
US6115198A (en) PR4 sampled amplitude read channel for detecting user data and embedded servo data
US6246723B1 (en) Sampled amplitude read channel employing early-decisions from a trellis sequence detector for sampling value estimation
US6516443B1 (en) Error detection convolution code and post processor for correcting dominant error events of a trellis sequence detector in a sampled amplitude read channel for disk storage systems
US6023386A (en) Fault tolerant sync mark detector for synchronizing a time varying sequence detector in a sampled amplitude read channel
US6185175B1 (en) Sampled amplitude read channel employing noise whitening in a remod/demod sequence detector
US6032284A (en) Trellis coding system for disc storage systems
Cideciyan et al. Noise predictive maximum likelihood detection combined with parity-based post-processing
JP3533315B2 (ja) 信号処理回路
US6513141B1 (en) Sampled amplitude read channel employing a trellis sequence detector and a post processor for generating error metrics used to correct errors made by the trellis sequence detector
GB2286952A (en) Maximum-likelihood data detection in a partial-response data channel for a direct access storage device
US6460150B1 (en) Noise-predictive post-processing for PRML data channel
KR19990087405A (ko) Prml 기록 채널용의 레이트 24/25 변조 코드
US5717395A (en) Rate 16/17 ENDEC with independent high/low byte decoding
US5576707A (en) Method and apparatus for detecting and decoding data in a PRML class-IV digital communication channel
JP4065357B2 (ja) 高密度データの記録/再生のための符号化/復号化方法
US5838738A (en) Coding to improve timing recovery in a sampled amplitude read channel
US5544178A (en) Method and apparatus for encoding data in a PRML class-IV digital communication channel
US6035435A (en) Method and apparatus for encoding a binary signal

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121203

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131129

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150108

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151203

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20161128

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee