KR101385380B1 - 듀얼 이진 및 비이진 디코딩 프로세싱을 위한 시스템 및 방법 - Google Patents

듀얼 이진 및 비이진 디코딩 프로세싱을 위한 시스템 및 방법 Download PDF

Info

Publication number
KR101385380B1
KR101385380B1 KR1020130042407A KR20130042407A KR101385380B1 KR 101385380 B1 KR101385380 B1 KR 101385380B1 KR 1020130042407 A KR1020130042407 A KR 1020130042407A KR 20130042407 A KR20130042407 A KR 20130042407A KR 101385380 B1 KR101385380 B1 KR 101385380B1
Authority
KR
South Korea
Prior art keywords
binary
data
decoded output
circuit
output
Prior art date
Application number
KR1020130042407A
Other languages
English (en)
Other versions
KR20130129093A (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 KR20130129093A publication Critical patent/KR20130129093A/ko
Application granted granted Critical
Publication of KR101385380B1 publication Critical patent/KR101385380B1/ko

Links

Images

Classifications

    • 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
    • H03M13/11Error 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 using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1171Parity-check or generator matrices with non-binary elements, e.g. for non-binary LDPC codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3707Adaptive decoding and hybrid decoding, e.g. decoding methods or techniques providing more than one decoding algorithm for one code
    • 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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6511Support of multiple decoding rules, e.g. combined MAP and Viterbi decoding
    • 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/2957Turbo codes and decoding
    • 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/63Joint error correction and other techniques
    • H03M13/6331Error control coding in combination with equalisation
    • 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/63Joint error correction and other techniques
    • H03M13/6343Error control coding in combination with techniques for partial response channels, e.g. recording

Landscapes

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

Abstract

본 발명은 프로세싱 데이터 세트에 둘 이상의 데이터 디코드 알고리즘을 적용하기 위한 시스템 및 방법에 관한 것이다.

Description

듀얼 이진 및 비이진 디코딩 프로세싱을 위한 시스템 및 방법{SYSTEMS AND METHODS FOR DUAL BINARY AND NON-BINARY DECODING PROCESSING}
본 발명은 데이터 프로세싱을 수행하기 위한 시스템 및 방법에 관한 것이고 더 구체적으로는 프로세싱 데이터 세트에 둘 이상의 데이터 디코드 알고리즘을 적용하기 위한 시스템 및 방법에 관한 것이다.
데이터 프로세싱 회로는 종종 데이터 검출기 회로 및 데이터 디코더 회로를 포함한다. 일부 경우에 원래 기록된 데이터를 복구하기 위한 시도에서 데이터 검출기 회로와 데이터 디코더 회로 양쪽을 통해 많은 패스가 행해진다. 데이터 검출기 회로와 데이터 디코더 회로 양쪽을 통한 각각의 패스는 데이터 디코더 회로를 통한 다수의 반복을 포함할 수 있다. 일부 경우에, 데이터 디코더 및 데이터 검출기 회로를 통한 허용된 횟수의 반복은 정확한 결과를 산출할 수 없다.
따라서, 적어도 전술된 이유로, 데이터 프로세싱을 위한 향상된 시스템 및 방법을 위한 필요성이 당 기술 분야에 존재한다.
본 발명은 데이터 프로세싱을 수행하기 위한 시스템 및 방법에 관한 것이고 더 구체적으로는 프로세싱 데이터 세트에 둘 이상의 데이터 디코드 알고리즘을 적용하기 위한 시스템 및 방법에 관한 것이다.
본 발명의 다양한 실시예는 샘플 버퍼 및 데이터 디코더 회로를 포함하는 데이터 프로세싱 시스템을 제공한다. 샘플 버퍼는 비이진 코드워드에 대응하는 샘플 세트를 유지하도록 작동가능하다. 데이터 디코더 회로는, 비이진 디코딩된 출력을 산출하기 위해 샘플 세트로부터 도출된 디코더 입력에 비이진 데이터 디코드 알고리즘을 적용하고, 이진 디코딩된 출력을 산출하기 위해 디코더 입력에 이진 데이터 디코드 알고리즘을 적용하고, 비이진 디코딩된 출력에 대응한 비충족 체크의 제 1 개수를 판정하고, 이진 디코딩된 출력에 대응하는 비충족 체크의 제 2 개수를 판정하고, 비충족 체크의 제 1 개수 및 비충족 체크의 제 2 개수에 적어도 부분적으로 기초하여 선택된 디코딩 출력으로서 이진 디코딩된 출력 및 비이진 디코딩된 출력 중 하나를 선택하도록 작동가능하다. 데이터 프로세싱 시스템은 예를 들어, 저장 디바이스 또는 수신 디바이스로서 구현될 수 있다. 다양한 경우에, 데이터 프로세싱 시스템은 집적 회로의 부분으로서 구현된다. 하나 이상의 경우에, 데이터 디코더 회로는 저밀도 패리티 체크 회로이다.
전술된 실시예의 일부 예시에서, 비이진 디코딩된 출력은 제 1 비이진 디코딩된 출력이고, 이진 디코딩된 출력은 제 1 이진 디코딩된 출력이다. 이러한 예시에서, 데이터 디코더 회로는, 제 2 비이진 디코딩된 출력을 산출하기 위해 선택된 디코딩 결과에 의해 가이딩된(guided) 디코더 입력에 비이진 데이터 디코드 알고리즘을 재적용하고, 제 2 이진 디코딩된 출력을 산출하기 위해 선택된 디코딩 결과에 의해 가이딩된 디코더 입력에 이진 데이터 디코드 알고리즘을 재적용하도록 더 작동가능할 수 있다.
전술된 실시예의 다양한 예시에서, 비이진 데이터 디코드 알고리즘을 적용하는 것은 비이진 H 매트릭스를 사용하고, 이진 데이터 디코드 알고리즘을 적용하는 것은 이진 H 매트릭스를 사용한다. 일부 경우에, 비이진 디코딩된 출력에 대응하는 비충족 체크의 제 1 개수를 판정하는 것은 등가 이진수를 산출하기 위해 이진 H 매트릭스에 의해 비이진 디코딩된 출력을 승산하는 것을 포함한다. 전술된 실시예의 하나 이상의 예시에서, 비이진 코드워드의 각각의 심볼은 2N 패턴을 나타내고, N은 심볼 당 비트의 수(the non-zero number of bits per symbol)이고, 이진 데이터 디코드 알고리즘을 적용하는 것은 단일 비트 심볼을 갖는 것으로서 비이진 코드워드를 처리하는 것을 포함한다. 전술된 실시예의 특정 예시에서, 비충족 체크의 제 2 개수가 비충족 체크의 제 1 개수보다 작을 때 이진 디코딩된 출력이 선택되고/또는 비충족 체크의 제 1 개수가 비충족 체크의 제 2 개수보다 작을 때 비이진 디코딩된 출력이 선택된다.
본 발명의 다른 실시예는 비이진 디코딩된 출력을 산출하기 위해 디코더 입력에 비이진 데이터 디코드 알고리즘을 적용하는 단계와, 이진 디코딩된 출력을 산출하기 위해 디코더 입력에 이진 데이터 디코드 알고리즘을 적용하는 단계와, 비이진 디코딩된 출력에 대응하는 비충족 체크의 제 1 개수를 판정하는 단계와, 이진 디코딩된 출력에 대응하는 비충족 체크의 제 2 개수를 판정하는 단계와, 비충족 체크의 제 1 개수 및 비충족 체크의 제 2 개수에 적어도 부분적으로 기초하여 선택된 디코딩 출력으로서 이진 디코딩된 출력 및 비이진 디코딩된 출력 중 하나를 선택하는 단계를 포함하는 방법을 제공한다.
본 요약은 본 발명의 일부 실시예의 일반적인 개요만을 제공한다. 본 발명의 많은 다른 목적, 특징, 장점 및 다른 실시예가 다음의 자세한 설명, 첨부된 청구항 및 첨부한 도면으로부터 더 완전하게 이해될 것이다.
본 발명의 다양한 실시예의 추가적인 이해는 본 명세서의 나머지 부분에서 설명된 도면을 참조함으로써 실현될 수 있다. 도면에서, 유사한 참조 번호는 유사한 컴포넌트를 지칭하기 위해 다수의 도면을 전반에서 사용된다. 일부 경우에, 소문자로 이루어진 서브라벨은 다수의 유사한 컴포넌트 중 하나를 표시하기 위해 참조 번호와 연관된다. 기존 서브 라벨에 대한 설명 없이 참조 번호에 대한 참조가 이루어질 때, 모든 이러한 다수의 유사한 컴포넌트에 대해 지칭하는 것으로 의도된다.
도 1은 본 발명의 하나 이상의 실시예에 따른 듀얼 이진 및 비이진 디코딩 회로를 갖는 판독 채널을 포함하는 저장 디바이스를 도시한다.
도 2는 본 발명의 일부 실시예에 따른 듀얼 이진 및 비이진 디코딩 회로를 갖는 수신기를 포함하는 데이터 전송 디바이스를 도시한다.
도 3은 본 발명의 일부 실시예에 따른 듀얼 이진 및 비이진 디코딩 회로를 갖는 데이터 프로세싱 회로를 도시한다.
도 4a 내지 도 4c는 듀얼 이진 및 비이진 디코딩 프로세싱에 대한 본 발명의 일부 실시예에 따른 방법을 도시하는 흐름도이다.
본 발명은 데이터 프로세싱을 수행하기 위한 시스템 및 방법에 관한 것이고 더 구체적으로는 프로세싱 데이터 세트에 둘 이상의 데이터 디코드 알고리즘을 적용하기 위한 시스템 및 방법에 관한 것이다.
본 발명의 다양한 실시예는 지연 프로세싱이 필요할 때 데이터 디코딩 프로세스를 수정하는 것을 제공한다. 이러한 지연 프로세싱은 데이터 프로세싱 회로의 프로세싱 요구사항에서의 감소가 발생할 때 수행되어서, 이전에 비수렴한 데이터 세트(non-converging datasets)에 대해 사용될 그밖에 비사용된 프로세싱 리소스의 적용을 가능하게 한다. 예를 들어, 데이터 디코딩 프로세스에 도입될 데이터의 볼륨 상의 감소를 야기하는 데이터 전송 디바이스의 전송의 종료 또는 저장 매체로부터의 데이터에 액세스할 때 트랙에서의 변화에 기인하여, 데이터 프로세싱 회로의 프로세싱 요구사항에서 이러한 감소가 발생할 수 있다. 본원에서 제공된 개시에 기초하여, 당업자는 데이터 프로세싱 회로의 불충분한 사용(under-use)을 야기할 수 있는 다양한 시나리오를 인식할 것이다. 수정된 디코딩 프로세스는 불충분한 사용 역시 포함하지 않는 다른 상황에서 적용될 수 있음에 또한 유의해야할 것이다.
본 발명의 특정 실시예에서, 데이터 프로세싱 회로는 데이터 디코더 회로에 의해 프로세싱된 데이터 세트를 수신하고 수신자에게 전달하기 이전에 프로세싱된 데이터 세트를 버퍼링하는 경판정 출력 회로와, 프로세싱된 데이터 세트에 대응하는 비검출된/디코딩된 데이터 세트(non-detected/decoded datasets)를 유지하는 샘플 버퍼를 포함한다. 비지연 또는 표준 프로세싱이 진행중일 때, 경판정 출력 회로는 표준 방식으로 수신자에게 데이터 세트를 제공하도록 작동한다. 표준 프로세싱이 수렴하는데 실패할 때 데이터 세트는 샘플 버퍼에서 유지될 수 있고 현재 디코딩된 출력은 지연 프로세싱 동안 수정된 프로세싱을 대기하도록 경판정 출력 회로에서 유지될 수 있다. 지연 프로세싱 동안, 어떤 것이 가장 적은 비충족 체크를 산출하는지를 판정하도록 이진 및 비이진 디코딩 프로세싱 모두가 데이터 세트에 적용된다. 가장 적은 비충족 체크를 산출하는 이진 디코딩 또는 비이진 디코딩으로부터의 결과는 데이터 검출 알고리즘 및/또는 데이터 디코드 알고리즘의 후속 적용을 가이딩하도록 선택된다.
도 1을 참조하면, 본 발명의 일부 실시예에 따른 듀얼 이진 및 비이진 디코딩 회로를 갖는 판독 채널 회로(110)를 포함하는 저장 시스템(100)이 도시된다. 저장 시스템(100)은 예를 들어, 하드 디스크 드라이브가 될 수 있다. 저장 시스템(100)은 또한 전치 증폭기(170), 인터페이스 제어기(120), 하드 디스크 제어기(166), 모터 제어기(168), 스핀들 모터(172), 디스크 플래터(178), 및 판독/기록 헤드 어셈블리(176)를 포함한다. 인터페이스 제어기(120)는 디스크 플래터(178)로/로부터의 데이터의 어드레싱 및 타이밍을 제어한다. 어셈블리가 디스크 플래터(178) 위에서 적합하게 위치될 때 디스크 플래터(178) 상의 데이터는 판독/기록 헤드 어셈블리(176)에 의해 검출될 수 있는 자기 신호의 그룹으로 구성된다. 일 실시예에서, 디스크 플래터(178)는 세로 또는 수직 레코딩 스킴 중 하나에 따라 레코딩된 자기 신호를 포함한다.
통상적인 판독 동작에서, 판독/기록 헤드 어셈블리(176)는 모터 제어기(168)에 의해 디스크 플래터(178) 상의 원하는 데이터 트랙 위에 정확하게 위치된다. 모터 제어기(168)는 디스크 플래터(178)와 관련한 판독/기록 헤드 어셈블리(176)를 위치시키는 것과 하드 디스크 제어기(166)의 제어 하에 판독/기록 헤드 어셈블리를 디스크 플래터(178) 상의 적합한 데이터 트랙으로 이동함으로써 스핀들 모터(172)를 구동하는 것 양자를 수행한다. 스핀들 모터(172)는 판정된 회전 속도(RPM)에서 디스크 플래터(178)를 회전시킨다. 판독/기록 헤드 어셈블리(176)가 적절한 데이터 트랙에 인접하게 위치되면, 디스크 플래터(178)가 스핀들 모터(172)에 의해 회전됨에 따라 디스크 플래터(178) 상의 데이터를 나타내는 자기 신호가 판독/기록 헤드 어셈블리(176)에 의해 센싱된다. 센싱된 자기 신호는 디스크 플래터(178) 상의 자기 데이터를 나타내는 연속적인, 미세 아날로그 신호로서 제공된다. 이 미세 아날로그 신호는 판독/기록 헤드 어셈블리(176)로부터 전치 증폭기(170)를 통해 판독 채널 회로(110)로 전송된다. 전치 증폭기(170)는 디스크 플래터(178)로부터 액세스되는 미세 아날로그 신호를 증폭하도록 동작가능하다. 그 다음, 판독 채널 회로(110)는 디스크 플래터(178)에 원래 기록된 정보를 재생성하기 위해 수신된 아날로그 신호를 디코딩하고 디지털화한다. 이 데이터는 판독 데이터(103)로서 수신 회로에 제공된다. 기록 동작은 실질적으로 판독 채널 회로(110)에 제공되는 기록 데이터(101)를 사용하는 앞선 판독 동작의 반대이다. 그 다음 이 데이터는 디스크 플래터(178)에 인코딩되고 기록된다.
동작중에, 데이터는 디스크 플래터(178)로부터 센싱되고 표준 프로세싱을 이용하여 프로세싱된다. 이러한 표준 프로세싱은 이진 데이터 디코딩 또는 비이진 데이터 디코딩 중 하나를 사용하여 수행될 수 있다. 일부 경우에, 표준 프로세싱을 사용하는 하나 이상의 데이터 세트는 수렴하는데 실패한다. 이러한 경우에, 비수렴 데이터 세트는 비수렴 데이터 세트가 사용불가능하다는 표시를 갖는 출력으로서 제공되고 대응하는 비검출된/디코딩된 데이터 세트에 따른 비수렴 데이터 세트가 지연 프로세싱 기간 동안 추가 프로세싱을 위한 데이터 프로세싱 시스템에서 유지된다. 이 지연 프로세싱 기간은 예를 들어, 판독/기록 헤드 어셈블리(176)가 현재 트랙으로부터 다른 트랙으로 제거될 때의 시간의 기간이 될 수 있다. 이 지연 프로세싱 기간 동안, 비수렴 데이터 세트 및 대응하는 비검출된/디코딩된 데이터 세트의 조합은 재프로세싱을 위해 액세스된다. 재프로세싱은 후속 프로세싱을 위해 나머지 비충족 체크의 가장 적은 개수를 보여주는 결과의 선택으로 데이터 이진 데이터 디코딩 및 비이진 데이터 디코딩 모두를 수행하는 것을 포함한다. 본 발명의 일부 실시예는 도 3과 관련하여 이하에서 논의된 것과 유사한 데이터 프로세싱 회로가 사용될 수 있고/또는 프로세싱은 도 4a 내지 도 4c와 관련하여 이하에서 논의된 것과 유사하게 수행될 수 있다.
저장 시스템(100)은 예를 들어, RAID(redundant array of inexpensive disks 또는 redundant array of independent disks) 기반 저장 시스템과 같은 더 큰 저장 시스템으로 집적될 수 있음에 유의해야할 것이다. 이러한 RAID 저장 시스템은 리던던시를 통해 안정성 및 신뢰성을 증가시키고, 다수의 디스크를 논리적 유닛으로 통합한다. 데이터는 다양한 알고리즘에 따라 RAID 저장 시스템에 포함된 많은 디스크 전반에 전개될 수 있고 마치 단일 디스크인 것처럼 운영 시스템에 의해 액세스될 수 있다. 예를 들어, 데이터는 RAID 저장 시스템에서 다수의 디스크에 미러링될 수 있거나, 다양한 기술에 따라 슬라이스되어 다수의 디스크 전반에 분포될 수 있다. RAID 저장 시스템에서 적은 수의 디스크가 고장나거나 사용불가능하게 되면, RAID 저장 시스템에서 다른 디스크로부터의 데이터의 나머지 부분에 기초하여 잃어버린 데이터를 재생성하기 위해 에러 정정 기술(error correction techniques)이 사용될 수 있다. RAID 저장 시스템의 디스크는 저장 시스템(100)과 같은 개별 저장 시스템이 될 수 있지만, 이에 제한되지 않고, 서로 근접하게 위치될 수 있거나 증대된 보안을 위해 더 멀리 분포될 수 있다. 기록 동작에서, 기록 데이터는, 예를 들어, 기록 데이터를 미러링하거나 스트라이핑함으로서 디스크 전반에 기록 데이터를 저장하는 제어기에 제공된다. 판독 동작에서, 제어기는 디스크로부터 데이터를 검색한다. 제어기는 또한 RAID 저장 시스템이 단일 디스크인 것처럼 결과 판독 데이터를 산출한다.
판독 채널 회로(110)와 관련하여 사용되는 데이터 디코더 회로는 당 기술 분야에서 알려진 것과 같은 저밀도 패리티 체크(a low density parity check;LDPC) 디코더 회로가 될 수 있지만, 이에 제한되지 않는다. 이러한 저밀도 패리티 체크 기술은 가상으로 임의의 채널을 통한 정보의 전송 또는 가상으로 임의의 매체 상의 정보의 저장에 적용가능하다. 전송 용례는 광섬유, 무선 주파수 채널, 유선 또는 무선 로컬 영역 네트워크, 디지털 가입자 회선 기술, 무선 셀룰러, 구리 또는 광섬유와 같은 임의의 매체를 통한 이더넷, 케이블 텔레비전과 같은 케이블 채널, 및 인공위성 통신을 포함하지만, 이에 제한되지 않는다. 저장 용례는 하드 디스크 드라이브, 컴팩트 디스크, 디지털 비디오 디스크, 마그네틱 테이프 및 DRAM, NAND 플래쉬, NOR 플래쉬, 다른 비휘발성 메모리 및 솔리드 스테이트 드라이브와 같은 메모리 디바이스를 포함하지만, 이에 제한되지 않는다.
도 2를 참조하면, 본 발명의 일부 실시예에 따라 듀얼 이진 및 비이진 디코딩 회로를 갖는 수신기(220)를 포함하는 데이터 전송 디바이스(200)가 도시된다. 데이터 전송 시스템(200)은 당 기술 분야에서 알려진 것과 같은 전송 매체(230)를 통해 디코딩된 정보를 전송하도록 작동가능한 전송기(210)를 포함한다. 인코딩된 데이터는 수신기(220)에 의해 전송 매체(230)로부터 수신된다.
동작중에, 데이터는 전송 매체(230)를 통해 수신기(220)에 의해 수신되고 표준 프로세싱을 사용하여 프로세싱된다. 일부 경우에, 표준 프로세싱을 사용하여 프로세싱된 하나 이상의 데이터 세트가 수렴하는데 실패한다. 이러한 표준 프로세싱은 이진 데이터 디코딩 또는 비이진 데이터 디코딩 중 하나를 사용하여 수행된다. 이러한 경우에, 비수렴 데이터 세트는 비수렴 데이터 세트가 사용불가능하다는 표시를 갖는 출력으로서 제공되고 대응하는 비검출된/디코딩된 데이터 세트에 따른 비수렴 데이터 세트가 지연 프로세싱 기간 동안 추가 프로세싱을 위한 데이터 프로세싱 시스템에서 유지된다. 이 지연 프로세싱 기간은, 예를 들어, 데이터가 전송 매체(230)를 통해 수신되지 않는 시간 기간이 될 수 있다. 이 지연 프로세싱 기간 동안, 비수렴 데이터 세트 및 대응하는 비검출된/디코딩된 데이터 세트의 조합이 재프로세싱을 위해 액세스 된다. 재프로세싱은 후속 프로세싱을 위해 나머지 비충족 체크의 가장 적은 수를 보여주는 결과의 선택으로 이진 데이터 디코딩 및 비이진 데이터 디코딩 모두를 수행하는 것을 포함한다. 본 발명의 일부 실시예에서, 도 3과 관련하여 이하에서 논의된 것과 유사한 데이터 프로세싱 회로가 사용될 수 있고/또는 도 4a 내지 도 4c와 관련하여 이하에서 논의된 것과 유사한 프로세싱이 수행될 수 있다.
도 3을 참조하면, 본 발명의 일부 실시예에서 따라 듀얼 이진 및 비이진 디코딩 회로를 갖는 데이터 프로세싱 회로(300)가 도시된다. 데이터 프로세싱 회로(300)는 아날로그 입력(308)을 수신하는 아날로그 프론트 엔드 회로(310)를 포함한다. 아날로그 프론트 엔드 회로(310)는 아날로그 입력(308)을 프로세싱하고 아날로그 디지털 변환기 회로(315)에 프로세싱된 아날로그 신호(312)를 제공한다. 아날로그 프론트 엔드 회로(310)는 당 기술분야에서 알려진 것과 같은 아날로그 필터 및 증폭기 회로를 포함할 수 있지만, 이제 제한되지 않는다. 본원에서 제공된 개시에 기초하여, 당업자는 아날로그 프론트 엔드 회로(310)의 부분으로서 포함될 수 있는 다양한 회로를 인식할 것이다. 일부 경우에, 아날로그 입력(308)은 저장 매체(도시되지 않음)와 관련하여 배치된 판독/기록 헤드 어셈블리(도시되지 않음)로부터 도출된다. 다른 경우에, 아날로그 입력(308)은 전송 매체(도시되지 않음)로부터 신호를 수신하도록 작동가능한 수신기 회로(도시되지 않음)로부터 도출된다. 전송 매체는 유선 또는 무선이 될 수 있다. 본원에서 제공된 개시에 기초하여, 당업자는 아날로그 입력(308)이 도출될 수 있는 다양한 소스를 인식할 것이다.
아날로그 디지털 변환기 회로(315)는 프로세싱된 아날로그 신호(312)를 대응하는 일련의 디지털 샘플(317)로 변환한다. 아날로그 디지털 변환기 회로(315)는 아날로그 입력 신호에 대응하는 디지털 샘플을 생성하는 것이 가능한 당 기술분야에서 알려진 임의의 회로가 될 수 있다. 본원에서 제공된 개시에 기초하여, 당업자는 본 발명의 상이한 실시예와 관련하여 사용될 수 있는 다양한 아날로그 디지털 변환기 회로를 인식할 것이다. 디지털 샘플(317)은 등화기 회로(320)에 제공된다. 등화기 회로(320)는 등화된 출력(322)을 산출하기 위해 디지털 샘플(317)에 등화 알고리즘을 적용한다. 본 발명의 일부 실시예에서, 등화기 회로(320)는 당 기술분야에서 알려진 것과 같은 디지털 유한 임펄스 응답 필터 회로이다.
등화된 출력(322)은 데이터 검출기 회로(325)와 샘플 버퍼 회로(375) 모두에 제공된다. 샘플 버퍼 회로(375)는 데이터 검출기 회로(325)를 통해 후속 반복에서 사용하기 위해 등화된 출력(322)을 버퍼링된 데이터(377)로서 저장한다. 데이터 검출기 회로(325)는 검출된 출력(327)을 생성하는 것이 가능한 당 기술 분야에서 알려진 임의의 데이터 검출기 회로가 될 수 있다. 일부 예시로서, 데이터 검출기 회로(325)는 당 기술분야에서 알려진 것과 같은 비터비 알고리즘 데이터 검출기 회로 또는 최대 사후 확률 데이터 검출기 회로(a maximum a posteriori data detector circuit)가 될 수 있지만 이에 제한되지 않는다. 그 중에서도, 일반적인 구문 "비터비 데이터 검출 알고리즘" 또는 "비터비 알고리즘 데이터 검출기 회로"는 양방향 비터비 검출 알고리즘 또는 양방향 비터비 알고리즘 검출기 회로를 포함하지만, 이에 제한되지 않는, 임의의 비터비 검출 알고리즘 또는 비터비 알고리즘 검출기 회로 또는 이들의 변형을 의미하는 가장 넓은 의미로 사용된다. 또한, 일반적인 구문 "최대 사후 확률 데이터 검출 알고리즘" 또는 "최대 사후 확률 데이터 검출기 회로"는 간이 최대 사후 확률 데이터 검출 알고리즘 및 최대 로그 최대 사후 확률 데이터 검출 알고리즘 또는 대응하는 검출기 회로를 포함하지만, 이에 제한되지 않는, 임의의 최대 사후 확률 검출 알고리즘 또는 검출기 회로 또는 이들의 변형을 의미하는 가장 넓은 의미로 사용된다. 본원에서 제공된 개시에 기초하여, 당업자는 본 발명의 상이한 실시예와 관련하여 사용될 수 있는 다양한 데이터 검출기 회로를 인식할 것이다. 검출된 출력(327)은 경판정 및 연판정 모두를 포함할 수 있다. "경판정" 및 "연판정"이라는 용어는 이들의 가장 넓은 의미로 사용된다. 특히, "경판정"은 예상된 원래 입력 값(예를 들어, 이진 '1' 또는 '0', 또는 비이진 디지털 값)을 나타내는 출력이고 "연판정"은 대응하는 경판정이 정확한 가능성을 나타낸다. 본원에서 제공된 개시에 기초하여, 당업자는 본 발명의 상이한 실시예와 관련하여 사용될 수 있는 다양한 경판정 및 연판정을 인식할 것이다.
검출된 출력(327)은 데이터 검출기 회로(325)와 데이터 디코더 회로(350) 사이에서 통과된 데이터를 버퍼링하도록 동작하는 중앙 큐 메모리 회로(360)에 제공된다. 일부 경우에, 중앙 큐 메모리 회로(360)는 당 기술 분야에서 알려진 인터리빙(즉, 데이터 셔플링) 및 디인터리빙(즉, 데이터 언셔플링) 회로를 포함한다. 데이터 디코더 회로(350)가 사용가능하게 될 때, 데이터 디코더 회로(350)는 중앙 큐 메모리 회로(360)로부터 검출된 출력(327)에 디코더 입력(356)으로서 액세스한다. 데이터 디코더 회로(350)는 원래 기록된 데이터를 복구하기 위한 시도에서 데이터 디코딩 알고리즘을 디코더 입력(356)에 적용한다. 데이터 디코더 회로(350)는 지연 프로세싱 신호(395)의 디어써션(de-assertion)에 의해 나타난 바와 같은 표준 프로세싱 동안 비이진 데이터 디코드 알고리즘을 디코더 입력(356)에 적용하도록 작동가능하다. 비이진 데이터 디코드 알고리즘은 매트릭스 출력(396)을 데이터 디코더 회로(350)에 제공하는 비이진 H 매트릭스(non-binary H-matrix)(397)를 사용하여 적용된다.
대조적으로, 데이터 디코더 회로(350)는 처음에는 디코더 입력(356)에 비이진 데이터 디코드 알고리즘을 적용하고, 다음에는 지연 프로세싱 동안 디코더 입력(356)에 이진 데이터 디코드 알고리즘을 적용하도록 작동가능하다. 이진 데이터 디코드 알고리즘은 매트릭스 출력(398)을 데이터 디코더 회로(350)에 제공하는 이진 H 매트릭스(a binary H-matrix)(394)를 사용하여 적용된다. 이러한 지연 프로세싱은 지연 프로세싱 신호(395)의 어써션에 의해 나타난다. 지연 프로세싱 신호(395)는 지연 프로세싱 입력(392)이 어써팅될 때마다 데이터 프로세싱 제어기 회로(390)에 의해 어써팅되고, 지연 프로세싱 입력(392)이 디어써팅될 때마다 디어써팅된다. 데이터 프로세싱 회로(300)의 프로세싱 요구조건에서의 감소가 발생할 때 지연 프로세싱 입력(392)이 어서팅될 수 있다. 예를 들어, 저장 매체를 판독할 때 트랙에서의 변화 또는 데이터 전송 디바이스의 전송의 종료에 기인하여, 데이터 프로세싱 회로의 프로세싱 요구사항에서 이러한 감소가 발생할 수 있다. 본원에서 제공된 개시에 기초하여, 당업자는 데이터 프로세싱 회로(300)의 불충분한 사용을 야기할 수 있는 다양한 시나리오를 인식할 것이다.
표준 프로세싱 동안 결과적인 비이진 디코딩된 출력(352)이 비이진 데이터 디코드 알고리즘의 적용의 완료시에 데이터 디코더 회로(350)로부터 제공된다. 검출된 출력(327)과 유사하게, 디코딩된 출력(352)은 경판정 및 연판정 모두를 포함할 수 있다. 예를 들어, 데이터 디코더 회로(350)는 수신된 입력에 디코딩 알고리즘을 적용하는 것이 가능한 당 기술 분야에서 알려진 임의의 데이터 디코더 회로가 될 수 있다. 데이터 디코더 회로(350)는 당 기술분야에서 알려진 저밀도 패리티 체크(LDPC) 디코더 회로 또는 리드 솔로몬 디코더 회로(a Reed Solomon decoder circuit)가 될 수 있지만, 이에 제한되지 않는다. 본원에서 제공된 개시에 기초하여, 당업자는 본 발명의 상이한 실시예와 관련하여 사용될 수 있는 다양한 데이터 디코더 회로를 인식할 것이다. 원본 데이터가 복구되거나(즉, 데이터 디코딩 알고리즘이 수렴) 타임아웃 조건이 발생하는 경우에, 디코딩된 출력(352)은 경판정 출력 회로(380)에 포함된 메모리에 저장된다. 결국, 경판정 출력 회로(380)는 수렴된 디코딩된 출력(352)을 데이터 출력(384)으로서 수신자(도시되지 않음)에게 제공한다. 수신자는, 예를 들어, 프로세싱된 데이터 세트를 수신하도록 작동가능한 인터페이스 회로가 될 수 있다. 본원에서 제공된 개시에 기초하여, 당업자는 본 발명의 상이한 실시예와 관련하여 사용될 수 있는 다양한 수신자를 인식할 것이다. 타임아웃 조건 이전에 원본 데이터가 복구되지 않은 경우에(즉, 데이터 디코딩 알고리즘이 수렴하는데 실패), 디코딩된 출력(352)은 이하에서 더 특별하게 논의되는 바와 같이 데이터가 사용불가능함을 나타내고, 데이터 출력(384)은 사용불가능한 것으로서 유사하게 식별된다.
데이터 검출기 회로(325) 및 데이터 디코더 회로(350)의 조합을 통한 하나 이상의 반복(one or more iterations)은 원래 기록된 데이터 세트에 대해 수렴하기 위한 노력으로 이루어질 수 있다. 데이터 검출기 회로 및 데이터 디코더 회로 모두를 통한 프로세싱은 "글로벌 반복"으로서 지칭된다. 대조적으로, 데이터 디코더 회로를 통한 각각의 단계는 "로컬 반복으로서 지칭된다. 제 1 글로벌 반복에 대해, 데이터 검출기 회로(325)는 디코딩된 출력으로부터의 가이드 없이 데이터 검출 알고리즘을 등화된 출력(322)에 적용한다. 후속 글로벌 반복에 대해, 데이터 검출기 회로(325)는 디코딩된 출력(352)에 의해 가이딩되는 버퍼링된 데이터(377)에 데이터 검출 알고리즘을 적용한다. 디코딩된 출력(352)은 디코더 출력(354)으로서 중앙 큐 메모리 회로(360)에 저장되고, 중앙 큐 메모리 회로(360)로부터 검출기 입력(329)으로서 제공된다.
각각의 글로벌 반복 동안 데이터 디코더 회로(350)가 디코더 입력(356)에 대한 데이터 디코딩 알고리즘의 적용을 포함하는 하나 이상의 로컬 반복을 행하는 것이 가능하다. 제 1 로컬 반복 동안, 데이터 디코더 회로(350)는 디코딩된 출력(352)으로부터의 가이드 없이 데이터 디코더 알고리즘을 적용한다. 후속 로컬 반복 동안, 데이터 디코더 회로(350)는 이전 디코딩된 출력(352)에 의해 가이딩되는 디코더 입력(356)에 데이터 디코딩 알고리즘을 적용한다. 허용된 로컬 반복의 수는 예를 들어, 10이다. 본원에서 제공된 개시에 기초하여, 당업자는 본 발명의 상이한 실시예에 따라 허용될 수 있는 다양한 상이한 수의 로컬 반복을 인식할 것이다. 데이터 디코더 회로(350)를 통한 허용된 로컬 반복의 수가 초과하지만, 데이터 세트의 표준 프로세싱 동안 적어도 하나의 추가적인 글로벌 반복이 허용된다는 것이 결정된 경우, 디코딩된 출력(352)이 디코딩된 출력(354)으로서 중앙 큐 메모리 회로(360)에 다시 제공된다. 데이터 검출기 회로(325)가 추가 프로세싱을 수행하는 것이 가능하게 될 때까지 디코딩된 출력(354)이 중앙 큐 메모리 회로(360)에서 유지된다.
대조적으로, 데이터 디코더 회로(350)를 통한 허용된 로컬 반복의 수가 초과하고, 데이터 세트에 대해 글로벌 반복의 허용가능한 수를 초과하거나 및/또는 타임아웃 또는 메모리 사용이 특정 데이터 세트의 프로세싱의 종료를 필요로 한다고 판정되는 경우 데이터 세트의 표준 프로세싱이 종결되고 디코딩된 출력은 출력이 사용불가능하다는 표시를 갖는 데이터 출력(352)으로서 제공된다. 데이터 세트의 표준 프로세싱이 종결되는 이러한 경우에, 비수렴된 데이터 세트(즉, 데이터 출력(352)으로서 제공됨)는 경판정 출력 회로(380)의 메모리에 저장되고, 지연 프로세싱 입력(392)의 어써션에 의한 지연 프로세싱의 표시를 기다리는 적어도 정의된 기간 동안 비수렴된 데이터 세트에 대응하는 샘플 데이터(즉, 샘플 버퍼 회로(375)에서 유지됨)가 샘플 버퍼 회로(375)에서 유지된다. 또한, 비수렴된 데이터 세트 및 대응하는 샘플 데이터는 보유 신호(391)의 어써션에 의해 나타나는 지연 프로세싱에 대해 식별된다. 다시 한번, 지연 프로세싱은 지연 프로세싱 입력(392)의 어써션에 의해 시그널링된다.
지연 프로세싱 입력(392)의 어써션에 의해 나타난 지연 프로세싱 동안, 샘플 버퍼 회로(375)에 남아있는 이전에 비수렴된 데이터 세트에 대응하는 샘플 데이터 세트 중 하나는 데이터 프로세싱 제어기 회로(390)로부터의 제어 출력(376)에 의해 지시된 것과 같이 액세스된다. 또한, 데이터 프로세싱 제어기 회로(390)는 데이터 디코더 회로(350) 및 경판정 출력 회로(380)에 지연 프로세싱 신호(395)를 어써팅한다. 데이터 검출기 회로(325)는 검출된 출력(327)을 산출하기 위해 제어 출력(376)에 의해 지시된 것과 같이 액세스되고 지연 프로세싱에 대해 식별되는 샘플 세트에 데이터 검출 알고리즘을 재적용한다. 검출된 출력(327)은 중앙 큐 메모리 회로(360)에 저장된다. 데이터 디코더 회로(350)가 사용가능하게 되면, 데이터 디코더 회로(350)는 디코더 입력(356)으로서 중앙 큐 메모리 회로(360)로부터 검출된 출력(327)에 액세스한다. 데이터 디코더 회로(350)는 경판정 출력 회로(380)의 메모리에 이전에 저장된 대응하는 디코딩된 출력(382)에 액세스하고, 지연 프로세싱 동안 대부분 사용되지 않은 경판정 출력 회로(380)의 메모리에 저장된 비이진 디코딩된 출력(352)을 산출하기 위해 비이진 H 매트릭스(397)로부터의 매트릭스 출력(396)을 사용하여 디코딩된 출력(382)에 의해 가이딩된 디코더 입력(356)에 비이진 디코딩 알고리즘을 적용한다. 그 다음, 데이터 디코더 회로(350)는 다시 한번, 지연 프로세싱 동안 대부분 사용되지 않는 경판정 출력 회로(380)의 메모리에 저장된 이진 디코딩된 출력(352)을 산출하기 위해 이진 H 매트릭스(394)로부터 매트릭스 출력(398)을 사용하여 디코딩된 출력(382)에 의해 가이딩된 디코더 입력(356)에 이진 디코딩 알고리즘을 적용한다. 이진 디코딩 알고리즘 및 비이진 디코딩 알고리즘을 적용하는 순서는 본 발명의 다른 실시예에 따라 뒤바뀔 수 있음을 주목한다.
데이터 디코더 회로(350)는 또한 이진의 비충족 체크의 개수를 산출하기 위해 경판정 출력 회로(380)의 메모리에서 유지되는 비이진 디코딩된 출력에 대응하는 경판정을 이진 H 매트릭스(394)로 승산한다. 비이진 결과로부터 이진의 비충족 체크를 획득하는 이 프로세스가 당 기술 분야에서 알려져 있다. 예를 들어, F.J. Macwilliams et al.,"에러 수정 코드의 이론(The Theory of Error Correction Codes)",North-Holland Publishing Company, p. 106. 참조. 전술된 참조의 전부가 다목적으로 참조로서 본원에서 통합된다. 비이진 디코딩된 출력으로부터 도출된 이진의 비충족 체크의 개수가 또한 이진 디코딩된 출력을 적용하는 것으로부터 초래된 이진 디코딩된 출력에 남아있는 비충족 체크의 개수와 비교된다. 비이진 디코딩 알고리즘을 적용하는 것의 결과와 연관된 이진의 비충족 체크의 개수가 이진 디코딩 알고리즘을 적용하는 것의 결과와 연관된 이진의 비충족 체크의 개수보다 더 적은 경우에, 비이진 디코딩 알고리즘의 결과는 미래 데이터 검출 및/또는 데이터 디코딩을 가이딩하는 것에서 사용하기 위해 보유된다. 그렇지 않다면, 이진 디코딩 알고리즘의 결과는 미래 데이터 검출 및/또는 데이터 디코딩을 가이딩하는 것에서 사용하기 위해 보유된다.
데이터 디코더 회로(350)를 통한 다른 로컬 반복이 허용되는 경우에, 비이진 데이터 디코드 알고리즘 및 이진 데이터 디코드 알고리즘 모두를 적용하는 전술된 프로세스는 보유된 데이터 디코드 결과에 의해 가이딩된다. 이진 데이터 디코드 알고리즘 또는 비이진 데이터 디코드 알고리즘 중 하나가 수렴되거나, 현재 글로벌 반복에 대한 최대 수의 로컬 반복이 완료되거나 타임아웃 조건이 충족될 때까지 이 프로세스가 반복된다. 타임아웃 조건이 충족되는 경우에, 에러가 리포팅된다. 최대 수의 글로벌 반복이 소진(exhausted)되면 에러 조건이 충족될 수 있다. 본원에서 제공된 개시에 기초하여, 당업자는 타임아웃 조건이 충족되는 것으로서 간주될 수 있는 다양한 다른 환경을 인식할 것이다. 최대 수의 로컬 반복이 충족되는 경우에, 데이터 검출 알고리즘이 보유된 결과에 의해 가이딩되는 샘플 버퍼 회로(375)로부터의 데이터 입력에 적용되고, 디코딩의 프로세스가 다시 시작된다. 이진 데이터 디코드 알고리즘 또는 비이진 데이터 디코드 알고리즘 중 하나가 수렴하는 경우에, 수렴된 결과가 데이터 출력으로서 제공된다.
도 4a 내지 도 4c를 참조하면, 흐름도(400, 445, 470)는 듀얼 이진 및 비이진 디코딩 프로세싱에 대해 본 발명의 일부 실시예에 따른 방법을 도시한다. 도 4a 및 다음의 흐름도 400을 참조하면, 아날로그 입력이 수신된다(블록 405). 아날로그 입력은 저장 매체 또는 데이터 전송 채널로부터 도출될 수 있다. 본원에서 제공된 개시에 기초하여, 당업자는 다양한 소스의 아날로그 입력을 인식할 것이다. 아날로그 입력은 일련의 디지털 샘플로 변환된다(블록 410). 이 변환은 당 기술 분야에서 알려진 것과 같은 아날로그 디지털 변환기 회로 또는 시스템을 사용하여 수행될 수 있다. 아날로그 신호를 수신된 아날로그 신호를 표현하는 일련의 디지털 값으로 변환하는 것이 가능한 당 기술 분야에서 알려진 임의의 회로가 사용될 수 있음을 주목한다. 최종 디지털 샘플은 등화된 출력을 산출하기 위해 등화된다(블록 415). 본 발명의 일부 실시예에서, 등화는 당 기술 분야에서 알려진 것과 같은 디지털 유한 임펄스 응답을 사용하여 수행된다. 본원에서 제공된 개시에 기초하여 당업자는 본 발명의 상이한 실시예에 따른 등화를 수행하는 이러한 디지털 유한 임펄스 응답 회로 대신에 사용될 수 있는 다양한 등화기 회로를 인식할 것이다. 등화된 출력이 버퍼링된다(블록 420).
지연 프로세싱이 필요한지가 판정된다(블록 425). 데이터 프로세싱 회로의 프로세싱 요구조건에서의 감소가 발생할 경우에 이러한 지연 프로세싱이 선택된다. 예를 들어, 데이터 전송 디바이스의 전송의 종료 또는 저장 매체를 판독할 때 트랙에서의 변경에 기인하여, 프로세싱 요구조건에서의 이러한 감소가 발생할 수 있다. 본원에서 제공된 개시에 기초하여, 당업자는 데이터 프로세싱 회로의 불충분한 사용을 초래할 수 있는 다양한 시나리오를 인식할 것이다.
지연 프로세싱이 필요하지 않은 경우(블록 425), 표준 프로세싱이 적용된다. 이 표준 프로세싱은 프로세싱을 위래 버퍼로부터 다음 등화된 출력을 선택하는 것을 포함한다(블록 430). 이 선택은 당 기술 분야에서 알려진 임의의 데이터 프로세싱 회로 선택 알고리즘에 따라 수행될 수 있다. 검출된 출력을 산출하기 위해 데이터 검출 알고리즘이 선택된 등화된 출력에 적용되고(블록 435), 검출된 출력(또는 이들의 파생물(derivative))이 중앙 메모리 회로에 저장된다(블록 440). 이 저장된 데이터는 또한 표준 프로세싱의 성능을 위해 중앙 메모리로부터 액세싱될 수 있다(흐름도 445). 이 표준 프로세싱은 도 4b의 흐름도(445)에 따라 수행된다.
지연 프로세싱이 필요한 경우에(블록 425), 지연 프로세싱이 적용된다. 이 지연 프로세싱은 프로세싱을 위해 버퍼로부터 다음 지연 프로세싱 등화된 출력을 선택하는 것을 포함한다(블록 450). 지연 프로세싱 등화된 출력은 표준 프로세싱동안 수렴하는데 실패된 하나 이상의 데이터 세트로부터 선택된다. 현재 프로세싱 데이터 세트에 적용될 나머지 글로벌 반복의 수는 지연 글로벌 최대치와 동일하게 설정된다(블록 480). 본 발명의 일부 실시예에서, 지연 글로벌 최대치는 20이다. 데이터 검출 알고리즘은 검출된 출력을 산출하기 위해 선택된 지연 프로세싱 등화된 출력에 적용되고(블록 485), 검출된 출력(또는 이들의 파생물)은 중앙 메모리 회로에 저장된다(블록 490). 이 저장된 데이터는 또한 지연 프로세싱의 성능을 위해 중앙 메모리로부터 액세스될 수 있다(도 4c의 흐름도 495).
도 4b를 참조하면, 흐름도 445는 전술된 표준 프로세싱의 구현을 도시한다. 흐름도 445에 따르면, 디코더 회로가 이전에 저장된 검출된 출력을 프로세싱하는 것이 가능한지를 판정한다(블록 401). 디코더 회로가 사용가능한 경우에(블록 401), 검출된 출력의 다음 파생물이 프로세싱을 위해 선택되고 중앙 메모리 회로로부터 액세스된다(블록 406). 비이진 디코딩된 출력을 산출하기 위해 비이진 데이터 디코딩 알고리즘의 제 1 로컬 반복이 선택된 검출된 출력에 데이터 디코더 회로에 의해 적용된다(블록 411).
비이진 디코딩된 출력이 수렴되는지(즉, 정확한 결과를 산출하는지)가 또한 판정된다(블록 416). 디코딩된 출력이 수렴되는 경우에(블록 416), 비이진 디코딩된 출력이 경판정 출력 버퍼에 제공된다(블록 421). 경판정 출력 버퍼가 언로딩되도록 준비되는지가 또한 판정된다(블록 456). 일부 경우에, 거의 최근에 완료된 디코딩된 출력이 데이터 출력으로서 이전에 제공된 것 이후에 다음 디코딩된 출력일 때 경판정 출력 버퍼가 언로딩되도록 준비된다. 경판정 출력 버퍼가 언로딩되도록 준비되는 경우(블록 456), 경판정 출력 버퍼에서 유지되는 모든 연속적인 디코딩된 출력이 데이터 출력으로서 수신자 디바이스 제공된다(블록 461). 본원에서 제공된 개시에 기초하여, 당업자는 본 발명의 상이한 실시예와 관련하여 사용될 수 있는 다양한 수신자 디바이스를 인식할 것이다.
대안적으로, 비이진 디코딩된 출력이 수렴하지 못하는 경우(블록 416), 로컬 반복 카운트가 로컬 반복 제한을 초과하는지가 판정된다(블록 426). 이 로컬 반복 제한은, 예를 들어, 10 로컬 반복이 될 수 있다. 로컬 반복의 수가 아직 초과되지 않은 곳에서(블록 426), 업데이트된 비이진 디코딩된 출력을 산출하기 위해 비이진 디코딩된 출력에 의해 가이딩된 후속 로컬 반복에 대한 현재 프로세싱 데이터 세트에 데이터 디코딩 알고리즘이 재적용된다. 블록 416에서 시작하는 프로세스가 또한 반복된다.
대안적으로, 현재 진행중인 글로벌 반복에 대한 로컬 반복의 수가 초과되는 경우(블록 426), 글로벌 반복의 최대 수가 현재 프로세싱 데이터 세트에 이미 적용되었는지가 판정된다(블록 436). 예를 들어, 타임아웃 조건이 발생되거나, 메모리 사용 제한이 초과되는 경우에, 다수의 글로벌 반복이 완료될 수 있다. 글로벌 반복이 완료되지 않은 경우에(블록 436), 비이진 디코딩된 출력이 표준 출력으로서 중앙 메모리에 저장되고 여기서 후속 글로벌 반복에서의 프로세싱을 대기한다(블록 441). 대안적으로, 글로벌 반복이 완료되는 경우(블록 436), 현재 프로세싱 데이터 세트가 지연 프로세싱을 위해 식별되고(즉, 지연 프로세싱 기간 동안 프로세싱)(블록 446), 비이진 디코딩된 출력이 사용불가능한 것으로서 마킹된 데이터 출력으로서 제공된다(블록 451).
도 4c를 참조하면, 흐름도(495)는 전술된 지연 프로세싱의 구현을 도시한다. 흐름도 495에 따르면, 디코더 회로가 이전에 저장된 검출된 출력을 프로세싱하는데 사용가능한지가 판정된다(블록 402). 디코더 회로가 사용가능한 경우에(블록 402), 지연 프로세싱에 대해 발생된 검출된 출력의 다음 파생물(즉, 블록 446에서 지연 프로세싱을 위해 식별됨)이 프로세싱을 위해 선택되고 중앙 메모리 회로로부터 액세스된다(블록 407). 비이진 디코딩이 선택되고(블록 412), 비이진 디코딩된 출력을 산출하기 위해 이전에 선택된 디코딩 출력에 의해 가이딩된 검출된 출력의 파생물에 비이진 H 매트릭스를 사용하여 비이진 디코딩 알고리즘이 적용된다(블록 417). 지연 프로세싱의 제 1 로컬 반복 동안, 이전에 선택된 디코딩 결과는 블록 451로부터의 출력 버퍼에 저장된 비이진 디코딩된 출력이다. 후속 로컬 반복 동안, 이전에 선택된 디코딩 결과는 비이진 디코딩된 출력(블록 482) 또는 이진 디코딩된 출력(블록 477) 중 선택된 하나이다.
비이진 디코딩된 출력이 수렴되는지(즉, 정확한 결과를 산출하는지)가 판정된다(블록 422). 비이진 디코딩된 출력이 수렴되는 경우에(블록 422), 비이진 디코딩된 출력이 데이터 출력으로서 제공되고 후속 데이터 세트에 대해 작동하는 다른 글로벌 반복이 시작된다(블록 432). 그렇지 않다면, 비이진 디코딩된 출력이 수렴하는데 실패되는 경우에(블록 422), 비이진 디코딩된 출력은 미래 사용을 위해 저장된다(블록 427). 비이진 디코딩된 출력은 예를 들어, 출력 버퍼, 중앙 메모리 버퍼, 또는 입력 버퍼의 미사용된 부분에 저장될 수 있다. 또한, 비이진 디코딩된 출력에서의 비충족 체크는 이진 비충족 체크로 변환된다(블록 437). 이는 예를 들어, 다수의 이진 비충족 체크를 산출하기 위해 이진 H 매트릭스로 비이진 디코딩된 출력에 대응하는 경판정을 승산함으로써 수행될 수 있다. 비이진 결과로부터 이진 비충족 체크를 획득하는 이 프로세스가 당 기술 분야에서 알려져 있다. 예를 들어, F.J. Macwilliams et al.,"에러 수정 코드의 이론(The Theory of Error Correction Codes)",North-Holland Publishing Company, p. 106. 참조.
그 다음, 이진 디코딩이 선택되고(블록 442), 이진 디코딩된 출력을 산출하기 위해 이전에 선택된 디코딩 결과에 의해 가이딩된 검출된 출력의 파생물에 이진 H 매트릭스를 사용하여 이진 디코딩 알고리즘이 적용된다(블록 447). 지연 프로세싱의 제 1 로컬 반복 동안, 이전에 선택된 디코딩 결과는 블록 451로부터의 출력 버퍼에 저장된 비이진 디코딩된 출력이다. 후속 로컬 반복 동안, 이전에 선택된 디코딩 결과는 비이진 디코딩된 출력(블록 482) 또는 이진 디코딩된 출력(블록 477) 중 선택된 하나이다. 흐름도 495가 이진 디코딩(블록 447)에 선행하는 비이진 디코딩(블록 417)을 도시하지만, 본 발명의 다른 실시예에서 이진 디코딩은 비이진 디코딩에 선행할 수 있음을 주목한다. 본 발명의 또 다른 실시예에서, 비이진 디코딩과 병렬로 이진 디코딩이 수행될 수 있다.
이진 디코딩된 출력이 수렴되는지(즉, 정확한 결과가 산출되는지)가 판정된다(블록 452). 이진 디코딩된 출력이 수렴되는 경우(블록 452), 이진 디코딩된 출력이 데이터 출력으로서 제공되고 후속 데이터 세트에 대해 작동하는 다른 글로벌 반복이 시작된다(블록 462). 그렇지 않다면, 이진 디코딩된 출력이 수렴하는데 실패하는 경우(블록 452), 이진 디코딩된 출력은 미래 사용을 위해 저장된다(블록 457). 예를 들어, 출력 버퍼, 중앙 메모리 버퍼 또는 입력 버퍼의 미사용된 부분에 이진 디코딩된 출력이 저장될 수 있다.
비이진 디코딩된 출력에 대응하는 이진 비충족 체크의 개수(블록 437)가 이진 디코딩된 출력에서의 이진 비충족 체크의 개수와 비교된다(블록 467). 비이진 디코딩된 출력에 대응하는 이진 비충족 체크의 개수가 이진 디코더 출력에 대응하는 이진 비충족 체크의 개수보다 더 클 때(블록 472), 블록(447)으로부터의 이진 디코딩된 출력은 선택된 디코딩 결과로서 선택된다(블록 477). 그렇지 않다면, 비이진 디코딩된 출력에 대응하는 이진 비충족 체크의 개수가 이진 디코더 출력에 대응하는 이진 비충족 체크의 개수보다 작거나 동일한 경우에(블록 472), 블록 417로부터의 비이진 디코딩된 출력은 선택된 디코딩 결과로서 선택된다(블록 482).
다른 로컬 반복이 허용되는지가 또한 판정된다(블록 487). 다른 로컬 반복이 허용되는 경우에(블록 487), 블록(412)에서 시작하는 프로세스가 새롭게 선택된 디코딩 결과를 사용하여 반복된다. 그렇지 않다면, 다른 로컬 반복이 허용되지 않는 경우에(블록 487), 다른 글로벌 반복이 허용되는지가 판정된다(블록 492). 다른 글로벌 반복이 허용되지 않는 경우에(블록 492), 에러가 표시되고 후속 데이터 세트에 대한 프로세싱이 시작된다(블록 499). 그렇지 않다면, 다른 글로벌 반복이 허용되는 경우에(블록 492), 업데이트된 검출된 출력을 산출하기 위해 선택된 디코딩 결과에 의해 가이딩된 선택된 지연 프로세싱 등화된 출력에 데이터 검출 알고리즘이 적용되고(블록 497), 블록(402)에서 시작하는 프로세스가 동일한 데이터 세트에 대해 재시작된다.
위 명세서에서 논의된 다양한 블록은 다른 기능을 따라 집적된 회로에서 구현될 수 있음에 유의해야할 것이다. 이러한 집적 회로는 주어진 블록, 시스템 또는 회로의 모든 기능, 또는 블록, 시스템 또는 회로의 서브세트를 포함할 수 있다. 또한, 블록, 시스템 또는 회로의 요소는 다수의 집적 회로에 걸쳐 구현될 수 있다. 이러한 집적 회로는 당 기술 분야에서 알려진 임의의 타입의 집적 회로가 될 수 있고, 모놀리식 집적 회로(a monolithic integrated circuit), 플립 칩 집적 회로(a flip chip integrated circuit), 멀티칩 모듈 집적 회로(a multichip module integrated circuit), 및/또는 혼합 신호 집적 회로를 포함하지만, 이에 제한되지 않는다. 본 명세서에 논의된 블록, 시스템 또는 회로의 다양한 기능은 소프트웨어 또는 펌웨어 중 하나에서 구현될 수 있음에 유의해야할 것이다. 일부 이러한 경우에, 전체 시스템, 블록 또는 회로는 이의 소프트웨어 또는 펌웨어 동등물을 사용하여 구현될 수 있다. 다른 경우에, 주어진 시스템, 블록 또는 회로의 일부분은 소프트웨어 또는 펌웨어에서 구현될 수 있고, 반면 다른 부분은 하드웨어에 구현된다.
결론적으로, 본 발명은 데이터 프로세싱을 위한 신규 시스템, 디바이스, 방법 및 구성을 제공한다. 본 발명의 하나 이상의 실시예의 자세한 설명이 위에서 주어졌지만, 다양한 대안, 수정, 및 등가가 본 발명의 사상으로부터 벗어남이 없이 당업자에게 명백해질 것이다. 따라서, 상기 설명은 본 발명의 범위를 제한하는 것으로서 간주되어서는 안되고, 첨부된 청구항에 의해서 정의된다.

Claims (20)

  1. 비이진 코드워드(a non-binary codeword)에 대응하는 샘플 세트를 유지하도록 작동가능한 샘플 버퍼와,
    데이터 디코더 회로를 포함하되, 상기 데이터 디코더 회로는,
    비이진 디코딩된 출력을 산출하기 위해 상기 샘플 세트로부터 도출된 디코더 입력에 비이진 데이터 디코드 알고리즘(a non-binary data decode algorithm)을 적용하고,
    이진 디코딩된 출력을 산출하기 위해 상기 디코더 입력에 이진 데이터 디코드 알고리즘을 적용하고,
    상기 비이진 디코딩된 출력에 대응하는 비충족 체크(unsatisfied check)의 제 1 개수를 판정하고,
    상기 이진 디코딩된 출력에 대응하는 비충족 체크의 제 2 개수를 판정하고,
    상기 비충족 체크의 제 1 개수 및 상기 비충족 체크의 제 2 개수에 적어도 부분적으로 기초하여 선택된 디코딩 결과로서 상기 이진 디코딩된 출력 및 상기 비이진 디코딩된 출력 중 하나를 선택하도록 작동가능한
    데이터 프로세싱 시스템.
  2. 제 1 항에 있어서,
    상기 비이진 디코딩된 출력은 제 1 비이진 디코딩된 출력이고, 상기 이진 디코딩된 출력은 제 1 이진 디코딩된 출력이고, 상기 데이터 디코더 회로는,
    제 2 비이진 디코딩된 출력을 산출하기 위해 상기 선택된 디코딩 결과에 의해 가이딩된(guided) 상기 디코더 입력에 상기 비이진 데이터 디코드 알고리즘을 재적용하고,
    제 2 이진 디코딩된 출력을 산출하기 위해 상기 선택된 디코딩 결과에 의해 가이딩된 상기 디코더 입력에 상기 이진 데이터 디코드 알고리즘을 재적용하도록 더 동작가능한
    데이터 프로세싱 시스템.
  3. 제 1 항에 있어서,
    상기 비이진 데이터 디코드 알고리즘을 적용하는 것은 비이진 H 매트릭스를 사용하고, 상기 이진 데이터 디코드 알고리즘을 적용하는 것은 이진 H 매트릭스를 사용하는
    데이터 프로세싱 시스템.
  4. 제 3 항에 있어서,
    상기 비이진 디코딩된 출력에 대응하는 상기 비충족 체크의 제 1 개수를 판정하는 것은 등가 이진수(a binary equivalent)를 산출하기 위해 상기 비이진 디코딩된 출력을 상기 이진 H 매트릭스로 승산하는(multiplying) 것을 포함하는
    데이터 프로세싱 시스템.
  5. 제 1 항에 있어서,
    상기 비이진 코드워드의 각각의 심볼은 2N 개의 패턴을 나타내고, N은 심볼 당 비트의 수이고 상기 이진 데이터 디코드 알고리즘을 적용하는 것은 단일 비트 심볼을 갖는 것으로서 상기 비이진 코드워드를 처리하는 것을 포함하는
    데이터 프로세싱 시스템.
  6. 제 1 항에 있어서,
    상기 비충족 체크의 제 2 개수가 비충족 체크의 상기 제 1 개수보다 적을 때 상기 이진 디코딩된 출력이 선택되는
    데이터 프로세싱 시스템.
  7. 제 1 항에 있어서,
    상기 비충족 체크의 제 1 개수가 상기 비충족 체크의 제 2 개수보다 적을 때상기 비이진 디코딩된 출력이 선택되는
    데이터 프로세싱 시스템.
  8. 제 1 항에 있어서,
    검출된 출력을 산출하기 위해 상기 샘플 세트에 데이터 검출 알고리즘을 적용하도록 동작가능한 데이터 검출기 회로를 더 포함하되, 상기 디코더 입력은 상기 검출된 출력으로부터 도출되는
    데이터 프로세싱 시스템.
  9. 제 8 항에 있어서,
    상기 데이터 검출기 회로는 비터비 알고리즘 데이터 검출기 회로(a Viterbi algorithm data detector circuit), 및 최대 사후 데이터 검출기 회로(a maximum a posteriori data detector circuit)로 구성된 그룹으로부터 선택되는
    데이터 프로세싱 시스템.
  10. 제 1 항에 있어서,
    상기 데이터 디코더 회로는 저밀도 패티리 체크 회로(a low density parity check circuit)인
    데이터 프로세싱 시스템.
  11. 제 1 항에 있어서,
    상기 데이터 프로세싱 시스템은 저장 디바이스 및 수신 디바이스로 구성된 그룹으로부터 선택된 디바이스의 부분으로서 구현되는
    데이터 프로세싱 시스템.
  12. 제 1 항에 있어서,
    상기 데이터 프로세싱 시스템은 집적 회로의 부분으로서 구현되는
    데이터 프로세싱 시스템.
  13. 데이터 프로세싱을 수행하기 위한 방법에 있어서,
    비이진 디코딩된 출력을 산출하기 위해 디코더 입력에 비이진 데이터 디코드 알고리즘을 적용하는 단계와,
    이진 디코딩된 출력을 산출하기 위해 상기 디코더 입력에 이진 데이터 디코드 알고리즘을 적용하는 단계와,
    상기 비이진 디코딩된 출력에 대응하는 비충족 체크의 제 1 개수를 판정하는 단계와,
    상기 이진 디코딩된 출력에 대응하는 비충족 체크의 제 2 개수를 판정하는 단계와,
    상기 비충족 체크의 제 1 개수 및 상기 비충족 체크의 제 2 개수에 적어도 부분적으로 기초하여 선택된 디코딩 결과로서 상기 이진 디코딩된 출력 및 상기 비이진 디코딩된 출력 중 하나를 선택하는 단계를 포함하는
    데이터 프로세싱 수행 방법.
  14. 제 13 항에 있어서,
    상기 비이진 디코딩된 출력은 제 1 비이진 디코딩된 출력이고, 상기 이진 디코딩된 출력은 제 1 이진 디코딩된 출력이고,
    상기 데이터 프로세싱 수행 방법은,
    제 2 비이진 디코딩된 출력을 산출하기 위해 상기 선택된 디코딩 결과에 의해 가이딩된 상기 디코더 입력에 상기 비이진 데이터 디코드 알고리즘을 재적용하는 단계와,
    제 2 이진 디코딩된 출력을 산출하기 위해 상기 선택된 디코딩 결과에 의해 가이딩된 상기 디코더 입력에 상기 이진 데이터 디코드 알고리즘을 재적용하는 단계를 더 포함하는
    데이터 프로세싱 수행 방법.
  15. 제 14 항에 있어서,
    상기 비이진 데이터 디코드 알고리즘을 적용하는 단계는 비이진 H 매트릭스를 사용하고, 상기 이진 데이터 디코드 알고리즘을 적용하는 단계는 이진 H 매트릭스를 사용하는
    데이터 프로세싱 수행 방법.
  16. 제 15 항에 있어서,
    상기 비이진 디코딩된 출력에 대응하는 상기 비충족 체크의 제 1 개수를 판정하는 단계는 등가 이진수를 산출하기 위해 상기 비이진 디코딩된 출력을 상기 이진 H 매트릭스로 승산하는 단계를 포함하는
    데이터 프로세싱 수행 방법.
  17. 제 13 항에 있어서,
    상기 비충족 체크의 제 2 개수가 비충족 체크의 상기 제 1 개수보다 적을 때 상기 이진 디코딩된 출력이 선택되고, 상기 비충족 체크의 제 1 개수가 상기 비충족 체크의 제 2 개수보다 적을 때 상기 비이진 디코딩된 출력이 선택되는
    데이터 프로세싱 수행 방법.
  18. 제 13 항에 있어서,
    검출된 출력을 산출하기 위해 샘플 세트에 데이터 검출 알고리즘을 적용하는 단계를 더 포함하되, 상기 디코더 입력은 상기 검출된 출력으로부터 도출되는
    데이터 프로세싱 수행 방법.
  19. 저장 매체와,
    상기 저장 매체와 관련하여 배치되고 상기 저장 매체 상의 정보에 대응하는 센싱된 신호를 제공하도록 동작가능한 헤드 어셈블리와,
    판독 채널 회로를 포함하되, 상기 판독 채널 회로는,
    상기 센싱된 신호에 대응하는 아날로그 신호를 제공하도록 동작가능한 아날로그 프론트 엔드 회로와,
    일련의 디지털 샘플을 산출하기 위해 상기 아날로그 신호를 샘플링하도록 동작가능한 아날로그 디지털 변환기 회로와,
    샘플 세트를 산출하도록 상기 디지털 샘플을 등화하도록 동작가능한 등화기 회로와,
    상기 샘플 세트를 유지하도록 동작가능한 샘플 버퍼와,
    데이터 디코더 회로를 포함하고, 상기 데이터 디코더 회로는,
    비이진 디코딩된 출력을 산출하기 위해 상기 샘플 세트로부터 도출된 디코더 입력에 비이진 데이터 디코드 알고리즘을 적용하고,
    이진 디코딩된 출력을 산출하기 위해 상기 디코더 입력에 이진 데이터 디코드 알고리즘을 적용하고,
    상기 비이진 디코딩된 출력에 대응하는 비충족 체크의 제 1 개수를 판정하는 단계와,
    상기 이진 디코딩된 출력에 대응하는 비충족 체크의 제 2 개수를 판정하는 단계와,
    상기 비충족 체크의 제 1 개수 및 상기 비충족 체크의 제 2 개수에 적어도 부분적으로 기초하여 선택된 디코딩 결과로서 상기 이진 디코딩된 출력 및 상기 비이진 디코딩된 출력 중 하나를 선택하도록 동작가능한
    저장 디바이스.
  20. 제 19 항에 있어서,
    상기 비이진 디코딩된 출력은 제 1 비이진 디코딩된 출력이고, 상기 이진 디코딩된 출력은 제 1 이진 디코딩된 출력이고, 상기 데이터 디코더 회로는,
    제 2 비이진 디코딩된 출력을 산출하기 위해 상기 선택된 디코딩 결과에 의해 가이딩된 상기 디코더 입력에 상기 비이진 데이터 디코드 알고리즘을 재적용하고,
    제 2 이진 디코딩된 출력을 산출하기 위해 상기 선택된 디코딩 결과에 의해 가이딩된 상기 디코더 입력에 상기 이진 데이터 디코드 알고리즘을 재적용하도록 더 작동가능한
    저장 디바이스.
KR1020130042407A 2012-05-17 2013-04-17 듀얼 이진 및 비이진 디코딩 프로세싱을 위한 시스템 및 방법 KR101385380B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/474,672 2012-05-17
US13/474,672 US8525707B1 (en) 2012-05-17 2012-05-17 Systems and methods for dual binary and non-binary decoding processing

Publications (2)

Publication Number Publication Date
KR20130129093A KR20130129093A (ko) 2013-11-27
KR101385380B1 true KR101385380B1 (ko) 2014-04-14

Family

ID=48128161

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130042407A KR101385380B1 (ko) 2012-05-17 2013-04-17 듀얼 이진 및 비이진 디코딩 프로세싱을 위한 시스템 및 방법

Country Status (6)

Country Link
US (1) US8525707B1 (ko)
EP (1) EP2665191B1 (ko)
JP (1) JP5415638B2 (ko)
KR (1) KR101385380B1 (ko)
CN (1) CN103427843B (ko)
TW (1) TWI456911B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9324371B2 (en) * 2012-07-02 2016-04-26 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for multi-stage decoding processing
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
US9761273B1 (en) 2015-11-03 2017-09-12 Western Digital Technologies, Inc. Data storage device encoding and interleaving codewords to improve trellis sequence detection
CN109429324B (zh) * 2017-06-30 2021-03-05 中国电信股份有限公司 实现tti-b激活、去激活的方法、系统和基站

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5392362A (en) 1992-11-13 1995-02-21 Fuji Xerox Co., Ltd. Image coding device and decoding device
US20060232454A1 (en) 2005-04-19 2006-10-19 Samsung Electronics Co., Ltd. Context-based adaptive arithmetic coding and decoding methods and apparatuses with improved coding efficiency and video coding and decoding methods and apparatuses using the same

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3328093B2 (ja) 1994-07-12 2002-09-24 三菱電機株式会社 エラー訂正装置
US5701314A (en) 1995-12-21 1997-12-23 Cirrus Logic, Inc. On-the-fly error correction using thermal asperity erasure pointers from a sampled amplitude read channel in a magnetic disk drive
GB2350531B (en) 1999-05-26 2001-07-11 3Com Corp High speed parallel bit error rate tester
WO2001039188A2 (en) 1999-11-22 2001-05-31 Seagate Technology Llc Method and apparatus for data error recovery using defect threshold detector and viterbi gain
US6678230B2 (en) * 2000-10-31 2004-01-13 Matsushita Electric Industrial Co., Ltd. Waveform equalizer for a reproduction signal obtained by reproducing marks and non-marks recorded on a recording medium
US7136244B1 (en) 2002-02-22 2006-11-14 Western Digital Technologies, Inc. Disk drive employing data averaging techniques during retry operations to facilitate data recovery
WO2003103152A2 (en) * 2002-05-31 2003-12-11 Koninklijke Philips Electronics N.V. Soft decoding of linear block codes
US7730384B2 (en) 2005-02-28 2010-06-01 Agere Systems Inc. Method and apparatus for evaluating performance of a read channel
US7054219B1 (en) * 2005-03-31 2006-05-30 Matrix Semiconductor, Inc. Transistor layout configuration for tight-pitched memory array lines
ATE425588T1 (de) * 2006-02-16 2009-03-15 Ericsson Telefon Ab L M Hybride dekodierung unter benutzung mehrerer paralleler turbo-dekoder
US7738201B2 (en) 2006-08-18 2010-06-15 Seagate Technology Llc Read error recovery using soft information
US7702989B2 (en) 2006-09-27 2010-04-20 Agere Systems Inc. Systems and methods for generating erasure flags
US7971125B2 (en) 2007-01-08 2011-06-28 Agere Systems Inc. Systems and methods for prioritizing error correction data
RU2377722C2 (ru) * 2007-06-21 2009-12-27 Валерий Владимирович Золотарев Способ декодирования помехоустойчивого кода
KR101480383B1 (ko) * 2007-07-25 2015-01-09 삼성전자주식회사 코드 인코딩 장치
US8359516B2 (en) * 2007-12-12 2013-01-22 Densbits Technologies Ltd. Systems and methods for error correction and decoding on multi-level physical media
KR20090126829A (ko) * 2008-06-05 2009-12-09 삼성전자주식회사 반복 복호 방법과 반복 복호 장치
CN102037513A (zh) 2008-11-20 2011-04-27 Lsi公司 用于噪声降低的数据检测的系统和方法
US7948699B2 (en) * 2009-01-02 2011-05-24 Lsi Corporation Systems and methods for equalizer optimization in a storage access retry
US8504891B2 (en) * 2009-03-27 2013-08-06 University Of Connecticut Apparatus, systems and methods including nonbinary low density parity check coding for enhanced multicarrier underwater acoustic communications
US7990642B2 (en) 2009-04-17 2011-08-02 Lsi Corporation Systems and methods for storage channel testing
US8347155B2 (en) * 2009-04-17 2013-01-01 Lsi Corporation Systems and methods for predicting failure of a storage medium
FR2945391A1 (fr) * 2009-05-05 2010-11-12 Univ Bretagne Sud Procede de commande d'une unite de calcul, telle qu'un noeud de parite elementaire dans un decodeur de codes ldpc non binaires, et unite de calcul correspondante
US8176404B2 (en) 2009-09-09 2012-05-08 Lsi Corporation Systems and methods for stepped data retry in a storage system
FR2951339B1 (fr) * 2009-10-09 2011-12-09 Commissariat Energie Atomique Procede de decodage de codes non binaires
US8688873B2 (en) 2009-12-31 2014-04-01 Lsi Corporation Systems and methods for monitoring out of order data decoding
US8810940B2 (en) 2011-02-07 2014-08-19 Lsi Corporation Systems and methods for off track error recovery
US8693120B2 (en) 2011-03-17 2014-04-08 Lsi Corporation Systems and methods for sample averaging in data processing
US8566666B2 (en) * 2011-07-11 2013-10-22 Lsi Corporation Min-sum based non-binary LDPC decoder
US8656249B2 (en) * 2011-09-07 2014-02-18 Lsi Corporation Multi-level LDPC layer decoder
US8707144B2 (en) * 2011-10-17 2014-04-22 Lsi Corporation LDPC decoder with targeted symbol flipping

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5392362A (en) 1992-11-13 1995-02-21 Fuji Xerox Co., Ltd. Image coding device and decoding device
US20060232454A1 (en) 2005-04-19 2006-10-19 Samsung Electronics Co., Ltd. Context-based adaptive arithmetic coding and decoding methods and apparatuses with improved coding efficiency and video coding and decoding methods and apparatuses using the same

Also Published As

Publication number Publication date
CN103427843A (zh) 2013-12-04
JP5415638B2 (ja) 2014-02-12
EP2665191B1 (en) 2016-06-15
CN103427843B (zh) 2014-10-15
TWI456911B (zh) 2014-10-11
US8525707B1 (en) 2013-09-03
JP2013243652A (ja) 2013-12-05
EP2665191A1 (en) 2013-11-20
KR20130129093A (ko) 2013-11-27
TW201406071A (zh) 2014-02-01

Similar Documents

Publication Publication Date Title
US8949704B2 (en) Systems and methods for mis-correction correction in a data processing system
KR101385380B1 (ko) 듀얼 이진 및 비이진 디코딩 프로세싱을 위한 시스템 및 방법
JP2013255221A (ja) 保持されたセクターの再処理を用いるデータ処理システム
US8880986B2 (en) Systems and methods for improved data detection processing
KR101547858B1 (ko) 심볼 재그룹화 디코딩 프로세싱을 위한 시스템 및 방법
US8949702B2 (en) Systems and methods for detector side trapping set mitigation
US8762815B2 (en) Systems and methods for data decoder state preservation during extended delay processing
US8850289B2 (en) Quality based priority data processing with soft guaranteed iteration
US8749907B2 (en) Systems and methods for adaptive decoder message scaling
US8959414B2 (en) Systems and methods for hybrid layer data decoding
US8782488B2 (en) Systems and methods for back step data decoding
US8634152B1 (en) Systems and methods for throughput enhanced data detection in a data processing circuit
US9817716B2 (en) Systems and methods for retaining non-converged data sets for additional processing
US9112539B2 (en) Systems and methods for iterative data processing using feedback iteration
US9019647B2 (en) Systems and methods for conditional positive feedback data decoding
US8817404B1 (en) Systems and methods for data processing control
US8819521B2 (en) Systems and methods for short media defect detection using non-binary coded information
US20130219233A1 (en) Systems and Methods for Quality Based Priority Data Processing
EP2670074A2 (en) Systems and methods for data processing including EET feedback
US9324371B2 (en) Systems and methods for multi-stage decoding processing
US8416666B1 (en) Systems and methods for local iteration determination during delay processing
US9245586B2 (en) Systems and methods for short media defect detection using multi-iteration soft data feedback
US20140250352A1 (en) Systems and Methods for Signal Reduction Based Data Processor Marginalization

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee