KR100734307B1 - 포스트 비터비 에러 정정 방법 및 이에 적합한 장치 - Google Patents

포스트 비터비 에러 정정 방법 및 이에 적합한 장치 Download PDF

Info

Publication number
KR100734307B1
KR100734307B1 KR1020060006818A KR20060006818A KR100734307B1 KR 100734307 B1 KR100734307 B1 KR 100734307B1 KR 1020060006818 A KR1020060006818 A KR 1020060006818A KR 20060006818 A KR20060006818 A KR 20060006818A KR 100734307 B1 KR100734307 B1 KR 100734307B1
Authority
KR
South Korea
Prior art keywords
error
codeword
candidate
error event
event
Prior art date
Application number
KR1020060006818A
Other languages
English (en)
Inventor
이준
타카오 스가와라
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020060006818A priority Critical patent/KR100734307B1/ko
Priority to US11/655,969 priority patent/US7814394B2/en
Priority to JP2007012937A priority patent/JP5080817B2/ja
Priority to CN2007101097292A priority patent/CN101060341B/zh
Application granted granted Critical
Publication of KR100734307B1 publication Critical patent/KR100734307B1/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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • H03M13/451Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD]
    • 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/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • 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/3738Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with judging correct 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/6343Error control coding in combination with techniques for partial response channels, e.g. recording

Landscapes

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

Abstract

본 발명은 포스트 비터비(Post-Viterbi) 에러 정정 방법에 관한 것으로서 더욱 상세하게는 오정정이 발생할 수 있는 확률을 줄이는 포스트 비터비 에러 정정 방법 및 이에 적합한 장치에 관한 것이다.
본 발명에 따른 포스트 비터비 에러 정정 방법은 채널을 통하여 전송된 코드워드에서 발생한 에러를 상기 채널에서 발생할 수 있는 에러 이벤트들과의 상관 관계를 이용하여 정정하는 에러 정정 방법에 있어서, 상기 코드워드에 대해 가장 큰 상관성을 가지는 에러 이벤트를 고려하여 에러 이벤트 정정이 수행된 후보 코드워드를 얻는 과정; 상기 후보 코드워드 내에서 여전히 에러 이벤트가 존재하는 지를 검사하는 과정; 상기 후보 코드워드 내에서 여전히 에러 이벤트가 존재하는 것으로 판단되면, 다른 에러 이벤트들을 고려한 다른 후보 코드워드들을 얻는 과정; 및 상기 다른 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 것으로 판단되는 후보 코드워드를 선택하여 정정된 코드워드로서 출력하는 과정을 포함하는 것을 특징으로 한다.
본 발명에 따른 에러 정정 방법은 에러 이벤트와의 상관성에 기반하여 발생된 에러 이벤트를 정정함에 있어서 정정된 코드워드에서 여전히 에러 이벤트가 존재하는 지를 다시 검사함에 의해 오정정을 방지하는 효과를 가진다.

Description

포스트 비터비 에러 정정 방법 및 이에 적합한 장치{Post-Viterbi error correction method and apparatus for the same}
도 1은 포스트 비터비 처리기를 보이는 것이다.
도 2는 종래의 포스트 비터비 에러 정정 방법을 보이는 흐름도이다.
도 3은 포스트 비터비 처리기에 의한 오정정의 예를 보이는 것이다.
도 4는 본 발명에 따른 에러 정정 방법의 바람직한 실시예를 보이는 흐름도이다.
도 5는 본 발명에 따른 에러 정정 방법을 시뮬레이션한 결과를 보이는 것이다.
도 6은 본 발명에 따른 포스트 비터비 처리기를 보이는 블록도이다.
도 7은 본 발명에 따른 포스트 비터비 에러 정정 방법을 적용하여 비트 에러율에 대하여 시뮬레이션한 결과를 보이는 다른 그래프이다.
도 8은 본 발명에 따른 포스트 비터비 에러 정정 방법을 적용하여 섹터 에러율에 대하여 시뮬레이션한 결과를 보이는 또 다른 그래프이다.
본 발명은 포스트 비터비(Post-Viterbi) 에러 정정 방법에 관한 것으로서 더욱 상세하게는 오정정이 발생할 수 있는 확률을 줄이는 포스트 비터비 에러 정정 방법 및 이에 적합한 장치에 관한 것이다.
코드워드에서 발생된 에러 이벤트를 검출하기 위하여, 신드롬(syndrome) 산출에 기반한 순회 용장 검사(Cyclic Redundancy Check; CRC) 부호가 일반적으로 이용되고 있다.
포스트 비터비 처리기의 기본 개념은 알려진 형태의 주요 에러 이벤트들과 추정된 에러 신호와의 상관성을 산출함에 의해 코드워드 내에서 가장 가능성이 있는 에러 이벤트의 종류(에러 종류) 및 에러 시작 위치를 확인하는 것이다. 여기서, 추정된 에러 신호는 등화기의 출력 신호와 비터비 디코더의 출력 및 부분 응답 다항식(partial response polynomial)의 컨벌루션에 의해 생성된 신호 즉, 잡음이 존재하지 않는 부분 응답 신호와의 차이에 의해 얻어진다.
도 1은 포스트 비터비 처리기를 보이는 것이다. 도 1을 참조하면, 데이터는 에러 검출 코드 엔코더(Error Detection Code(EDC) encoder)에 의해 부호화된 후에 잡음을 포함하는 채널(channel)을 통하여 전송된다. 등화기(equalizer, 102)는 채널을 통하여 전송된 신호를 등화하고, 최대 유사 복호기(Maximum Likelihood (ML) decoder, 108)는 비터비 알고리즘에 근거하여 등화된 신호로부터 부호화된 데이터를 복호한다. 그렇지만, 최대 유사 복호기(108)에 의해 복호된 데이터에는 채널 상의 잡음에 의한 에러가 포함되어 있을 수 있다.
에러 검출 코드 디코더(EDC decoder; 112)는 최대 유사 복호기(108)에 의해 복호된 데이터에 에러 검출 코드를 적용하여 에러 이벤트의 발생 여부를 판단한다. 에러 검출 코드를 적용하여 산출된 신드롬의 값이 0이라면 에러 이벤트가 발생하지 않은 것으로 판단된다.
한편, 에러 검출 코드를 적용하여 산출된 신드롬의 값이 0이 아니라면 에러 이벤트가 발생한 것으로 판단하여 에러 이벤트에 대한 정정이 수행된다.
에러 이벤트에 대한 정정은 에러 이벤트 매치 필터 뱅크(114)와 선택기(116)에 의해 산출된 에러 종류 및 에러 시작 위치를 참조하여 에러 이벤트 정정기(118)에서 수행된다.
a가 기록 데이터이고, a'가 최대 유사 복호기(108)에 의해 검출된 데이터이고, P(D)가 부분 응답 다항식이라고 가정하면 등화기(102)의 출력 신호 y와 에러 신호 e는 각각 y=a*p + n 및 e = (a-a')*p + n으로 표현될 수 있다. 여기서, n은 잡음을 나타내고 *는 컨볼루션(convolution) 연산을 나타낸다.
에러 이벤트 매치 필터 뱅크(matched filters, 114)는 복수의 에러 이벤트 매치 필터들로 구성되며, 각각의 에러 이벤트 매치 필터는 주요 에러 이벤트(dominant error event)들 중의 하나와 관련된다. 따라서, 각 에러 이벤트 매치 필터들은 관련된 에러 이벤트에 대한 유사치(likelihood value) 혹은 신뢰치(confidence value)를 산출하기 위해 사용된다.
에러 이벤트 매치 필터를 이용하여 산출되는 신뢰치는 P-1(D)*E-1(D)로 나타내어진다. 여기서 P- 1(D)는 부분응답 다항식 P(D)의 시간 반전(time reversal)을 나 타내고, E-1(D)은 에러 신호 e의 시간 반전을 나타내며 그리고 *는 컨볼루션 연산을 나타낸다.
에러 이벤트 매치 필터는 에러 신호 e를 사용하여 코드워드 내의 모든 위치들에 대하여 에러 이벤트의 발생 확률 즉, 신뢰치를 산출하기 위해 이용된다.
선택기(116)는 에러 이벤트 매치 필터 뱅크(114)의 출력들 중에서 가장 큰 신뢰치를 참조하여 에러 종류 및 에러 시작 위치를 산출한다. 에러 이벤트 정정기(118)는 선택기(116)에서 출력되는 에러 종류 및 에러 위치를 참조하여 발생된 에러 이벤트를 정정한다.
도 2는 종래의 포스트 비터비 에러 정정 방법을 보이는 흐름도이다.
S202과정에서는 에러 검출 코드를 적용하여 에러 이벤트의 발생 여부를 판단한다. 에러 이벤트의 발생 여부는 신드롬(syndrome)에 의해 판단된다. 즉, 신드롬의 값이 0이라면 에러 이벤트가 발생되지 않은 것으로서 판단되며, 신드롬의 값이 0이 아니라면 에러 이벤트가 발생된 것으로 판단된다.
S202과정에서 에러 이벤트가 발생되지 않은 것으로 판단되면 즉, 신드롬의 값이 0이라면 S206과정으로 진행하여 데이터 복구를 수행한다. 여기서, 데이터 복구란 코드워드에서 에러 검출 코드 부호기(EDC encoder)에 의해 부가된 부가 비트들을 제거하는 것을 말한다.
S202과정에서 에러 이벤트가 발생된 것으로 판단되면 즉, 신드롬의 값이 0이 아니라면, S204과정에서는 포스트 비터비 처리 즉, 발생된 에러 이벤트에 대한 정 정을 수행한다.
S204과정은 K=1인 것을 가정하여 수행된다. 여기서, K는 코드워드 내에 발생할 수 있다고 가정한 에러 이벤트의 최대 개수이다. K≤E의 관계를 만족하며, 여기서 E는 포스트 비터비 처리기에서 사용되는 에러 이벤트 매치 필터들의 개수이다.
구체적으로, 에러 이벤트들에 상응하는 에러 이벤트 매치 필터들을 사용하여 코드워드의 모든 비트들에 대하여 각 에러 이벤트 별로 신뢰치(confidence value)들을 얻고, 이들 중에서 가장 큰 신뢰치를 선택한다. 에러 이벤트 매치 필터들은 주요 에러 이벤트(dominant error event)들을 고려하여 설정된다.
선택된 신뢰치에 상응하는 에러 종류 및 에러 시작 위치를 참조하여 발생된 에러 이벤트를 정정한다. 이러한 정정은 강제적으로 수행된다. 즉, 판정된 에러 종류 및 에러 시작 위치가 올바른 것인지에 상관 없이 에러 이벤트에 대한 정정이 수행된다.
그렇지만, 도 2에 도시된 바와 같은 종래의 포스트 비터비 에러 정정 방법은 오정정의 확률이 높다는 문제점이 있다. 포스트 비터비 처리기에서 발생하는 오정정은 에러 종류를 잘못 선택하는 잘못된 에러 종류 선택(miss-type selection) 및 에러 시작 위치를 잘못 지정하는 잘못된 에러 위치 지정(miss-position designation)으로 구분될 수 있다.
잘못된 에러 종류 선택의 예로서, 수직 기록 장치에서 가장 빈도가 많은 주요 에러 이벤트인 [2,-2]는 자주 [2,-2,2] 혹은 [2,-2,0,2,-2]로 판단되며, 다른 주요 에러 이벤트인 [2,-2,2]는 종종 [2,-2] 혹은 [2,-2,2,-2,2,-2]로 판단되는 것 을 들 수 있다. 마찬가지로 [2,-2,2,-2,2]와 [2,-2,2,-2,2,-2]도 가끔 잘못 판단된다.
한편, 빈도가 높은 잘못된 에러 위치 지정의 예로서 주요 에러 이벤트들 [2,-2]와 [2,-2,2]는 종종 각각 [2,0,2] 및 [2,0,0,2]로 정정되는 것을 들 수 있다.
도 3은 포스트 비터비 처리기에 의한 오정정의 예를 보이는 것이다.
도 3은 실제의 에러 이벤트가 [2,-2,2]이고, 실제의 에러 위치가 [715,716,717]이며 그리고 K=1인 조건에서 수행한 결과를 보이는 것이다. 즉, 코드워드 내에서 1개의 에러 이벤트가 있고, 가장 큰 신뢰치에 상응하는 에러 종류 및 에러 시작 위치에 기반하여 발생된 에러 이벤트를 정정하는 조건에서 수행된 것이다.
여기서, 포스트 비터비 처리기에서 사용되는 주요 에러 이벤트들로서 [2,-2], [2,-2,2], [2,-2,2,-2], [2,-2,0,2,-2], [2,-2,2,-2,2] 그리고 [2,-2.2,-2,2,-2]의 6가지가 고려되고 있다.
도 3을 참조하면, 가장 큰 신뢰치를 가지는 에러 이벤트는 [2,-2,2,-2]이고, 이에 대한 에러 위치들은 [705,706,707,708]이다.
이에 따라 코드워드의 705 ~ 708번째 비트들에 대하여 에러 이벤트 [2,-2,2,-2]에 상응하는 정정이 수행된다.
그렇지만, 실제의 에러 위치는 [715, 716, 717]이고 실제 에러 이벤트는 [2,-2,2]이므로, 잘못된 에러 종류 선택 및 잘못된 에러 위치 지정으로 인하여, 도 3에 도시된 바와 같은 정정은 잘못된 정정이 된다.
한편, 종래의 포스트 비터비 에러 정정 방법은 에러 검출 코드에 의해 에러가 발생된 것으로 판단되면 잘못된 정정의 여부에 상관 없이 강제적으로 정정을 수행하고 있으므로, 잘못된 정정이 발생될 경우 비트 에러율은 포스트 비터비 처리기에 의해 처리하기 전에 비해 오히려 증가하게 된다는 문제점도 있다.
본 발명은 정정된 코드워드에서 여전히 에러 이벤트가 존재하는 지를 다시 검사함으로써 잘못된 정정이 발생할 확률을 줄이는 개선된 포스트 비터비 에러 정정 방법을 제공하는 것을 그 목적으로 한다.
본 발명의 다른 목적은 상기의 포스트 비터비 에러 정정 방법에 적합한 장치를 제공하는 것에 있다.
상기의 목적을 달성하기 위한 본 발명에 따른 포스트 비터비 에러 정정 방법은
채널을 통하여 전송된 코드워드에서 발생한 에러를 상기 채널에서 발생할 수 있는 에러 이벤트들과의 상관 관계를 이용하여 정정하는 에러 정정 방법에 있어서,
상기 코드워드에 대해 가장 큰 상관성을 가지는 에러 이벤트를 고려하여 에러 이벤트 정정이 수행된 후보 코드워드를 얻는 과정;
상기 후보 코드워드 내에서 여전히 에러 이벤트가 존재하는 지를 검사하는 과정;
상기 후보 코드워드 내에서 여전히 에러 이벤트가 존재하는 것으로 판단되면, 다른 에러 이벤트들을 고려한 다른 후보 코드워드들을 얻는 과정; 및
상기 다른 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 것으로 판단되는 후보 코드워드를 선택하여 정정된 코드워드로서 출력하는 과정을 포함하는 것을 특징으로 한다.
여기서, 다른 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 것으로 판단되는 후보 코드워드가 하나도 없다면, 에러 이벤트에 대한 정정을 수행하지 않는 것이 바람직하다.
상기의 다른 목적을 달성하는 본 발명에 따른 포스트 비터비 처리기는
채널을 통하여 전송된 코드워드에서 발생한 에러 이벤트를 상기 채널에서 발생할 수 있는 에러 이벤트들과의 상관 관계를 이용하여 정정하는 포스트 비터비 처리기에 있어서,
상기 코드워드에 대하여 에러검출 코드를 적용하여 에러 이벤트의 발생 여부를 판단하는 에러 검출 코드 디코더;
복수의 에러 이벤트 매치 필터들을 구비하여 상기 코드워드와 상기 에러 이벤트들과의 상관성을 나타내는 신뢰치들을 산출하는 에러 이벤트 매치 필터 뱅크;
상기 에러 이벤트 매치 필터 뱅크에서 산출된 신뢰치들을 참조하여 복수의 에러 이벤트들을 고려한 후보 코드워드들을 발생하는 후보 코드워드 발생기; 및
상기 후보 코드워드 발생기에서 발생된 복수의 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 후보 코드워드를 선택하여 정정된 코드워드로서 출력하는 에러 이벤트 정정기를 포함하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 특징 및 효과를 상세히 설명하기로 한다.
도 4는 본 발명에 따른 에러 정정 방법의 바람직한 실시예를 보이는 흐름도이다. 도 4에 있어서, S402과정 및 S404과정은 도 2를 참조하여 설명된 S202과정 및 S204과정과 유사하다.
먼저, S402과정에서 에러 검출 코드를 적용하여 에러 이벤트의 발생 여부를 판단한다.
S402과정에서 에러 이벤트가 발생되지 않은 것으로 판단되면 즉, 신드롬의 값이 0이라면 S412과정으로 진행하여 데이터 복구를 수행한다. S412과정에서는 에러 검출 코드 부호기에 의해 코드워드에 부가된 부가 비트를 제거함에 의해 원래의 데이터를 복구한다.
S402과정에서 에러 이벤트가 발생된 것으로 판단되면 즉, 신드롬의 값이 0이 아니라면, S404과정에서 가장 큰 신뢰치에 해당하는 에러 종류 및 에러 시작 위치를 참조하여 발생된 에러 이벤트에 대한 정정을 수행하여 후보 코드워드를 얻는다.
S404과정은 K=1인 것을 가정하여 수행된다. S404과정은 에러 이벤트들에 상응하는 에러 이벤트 매치 필터들을 사용하여 각각의 에러 이벤트에 대한 신뢰치(confidence value)들을 얻고, 이들 중에서 가장 큰 신뢰치를 선택하고, 선택된 신뢰치에 상응하는 에러 종류 및 에러 시작 위치를 참조하여 후보 코드워드를 얻는다.
S406과정에서는 S404과정에서 얻어진 후보 코드워드에 대하여 에러 검출 코드를 적용하여 신드롬을 다시 체크한다.
S406과정에서 후보 코드워드 내에 에러 이벤트가 존재하지 않는 것으로 판단되면 즉, 신드롬의 값이 0이라면, 후보 코드워드를 정정된 코드워드로서 출력하고, S412과정으로 진행하여 데이터 복구를 수행한다.
만일, S406과정에서 신드롬의 값이 0이 아니라면, s408과정에서 산출된 에러 종류 및 에러 시작 위치들을 참조하여 다른 에러 이벤트들을 고려한 다른 후보 코드워드들을 얻는다. 즉, 가장 큰 신뢰치에 상응하는 에러 이벤트 이외의 다른 에러 이벤트들을 고려한 다른 후보 코드워드들을 얻는다.
S408과정은 L≥1이고 K≥1인 것을 가정하여 수행된다. 여기서, L은 후보 코드워드들을 생성하기 위해 고려되어진 에러 이벤트들의 개수이고 K≤L≤E이다. 여기서, E는 포스트 비터비 처리기에서 사용되는 에러 이벤트 매치 필터들의 개수이다.즉, S408과정은 코드워드 내에서 1개 이상의 에러 이벤트들이 발생될 수 있고, 또한 가장 큰 신뢰치를 나타내는 에러 이벤트 이외의 다른 에러 이벤트들도 고려한다는 조건하에서 수행된다.
후보 코드워드들은 LC1 + LC2 ,,, + LCK로 나타내어질 수 있다. 여기서, C는 조합(combination)을 나타낸다. 예를 들어, LC1은 코드워드 내에 1개의 에러 이벤트가 발생할 수 있다는 조건에서 L개의 주요 에러 이벤트들을 고려한 후보 코드워드들의 조합을 나타내고, LC2는 코드워드 내에서 최대 2개의 에러 이벤트들이 발생할 수 있다는 조건에서 L개의 주요 에러 이벤트들을 고려한 후보 코드워드들의 조합을 나타낸다.
S410과정에서는 S408과정에서 얻어진 다른 후보 코드워드들 각각에 대하여 에러 검출 코드를 적용하여 신드롬을 다시 검사한다. 즉, 각각의 후보 코드워드들에 대하여 여전히 에러 이벤트가 존재하는 지를 검사한다.
S410과정에서 후보 코드워드들 중의 하나에서 에러 이벤트가 존재하지 않는 것으로 판단되면 즉, 신드롬의 값이 0이라면 해당 후보 코드워드를 정정된 코드워드로 출력하고, S412과정으로 진행하여 데이터 복구를 수행한다.
S410과정에서 만일 신드롬이 0이 되는 후보 코드워드가 하나도 존재하지 않는다면, S412과정으로 진행한다. 즉, 발생된 에러 이벤트에 대한 에러 정정을 수행하지 않는다.
도 4에 도시된 바와 같은 본 발명에 따른 포스트 비터비 에러 정정 방법은
첫 째, 에러 이벤트와의 상관성에 기반하여 발생된 에러 이벤트를 정정함에 있어서 후보 코드워드에서 여전히 에러 이벤트가 존재하는 지를 다시 검사함에 의해 오정정을 방지하며,
둘 째, 가장 큰 신뢰치를 나타내는 에러 이벤트를 고려한 후보 코드워드에 의해 에러 이벤트가 정정되지 않을 경우 다른 에러 이벤트를 고려한 후보 코드워드에 의해 정정함으로써 정정 가능성을 높이고, 그리고
셋 째, 에러 이벤트가 존재하지 않는 후보 코드워드가 하나도 없으면 에러 이벤트에 대한 에러 정정을 수행하지 않도록 함으로써 인위적 오정정의 발생을 방 지할 수 있다.
도 5는 본 발명에 따른 포스트 비터비 에러 정정 방법을 적용하여 비트 에러 율 (Bit Error Rate; BER)에 대해 시뮬레이션한 결과를 보이는 것이다. 도 5는 도 3에 도시된 바와 동일하게 실제의 에러 이벤트가 [2,-2,2]이고, 실제의 에러 위치가 [715,716,717]이며, L=2이고 K=1인 조건에서 수행한 결과를 보이는 것이다. 즉, 코드워드 내에서 1개의 에러 이벤트가 발생할 수 있으며, 최대의 신뢰치를 나타내는 에러 이벤트 이외에도 1개의 다른 에러 이벤트에 대한 후보 코드워드들을 더 고려하는 조건에서 수행된 것이다.
도 5를 참조하면, 가장 큰 신뢰치를 가지는 에러 이벤트는 [2,-2,2,-2]이고, 이에 대한 에러 위치는 [705,706,707,708]이다. 그렇지만, 본 발명에 의하면, [2,-2,2]의 에러 이벤트 및 이에 대한 [715,716,717]의 에러 위치에 관계된 후보 코드워드를 올바른 것으로 선택할 수 있다.
가장 큰 신뢰치를 가지는 에러 이벤트 [2,-2,2,-2] 및 이에 대한 에러 위치 [705,706,707,708]에 기반하여 얻어진 후보 코드워드에 대하여 신드롬을 다시 체크하면 신드롬의 값이 0이 아니게 된다. 따라서, 이 후보 코드워드는 올바른 것이 아님을 판단할 수 있다.
다음으로 두 번째로 큰 신뢰치를 가지는 에러 이벤트 [2,-2,2] 및 이에 대한 에러 위치 [715, 716, 717]에 기반하여 얻어진 후보 코드워드에 대한 신드롬을 체크하게 되며, 이 후보 코드워드에 대한 신드롬이 0이 된다. 따라서, 이 후보 코드워드가 올바른 것으로 선택된다.
만일 모든 후보 코드워드들에 대하여 신드롬을 다시 체크한 결과 신드롬이 0이 되는 후보 코드워드가 없다면 발생된 에러 이벤트에 대한 정정을 수행하지 않고 종료하게 된다.
도 6은 본 발명에 따른 포스트 비터비 처리기의 구성을 보이는 블록도이다.
도 6에 있어서 블록들(602, 608, 614)은 도 1에 도시된 블록들(106, 108, 114)과 유사한 동작을 수행하므로 그것들의 상세한 설명을 생략하기로 한다.
후보 코드워드 생성부(616)는 복수의 후보 코드워드들을 생성한다. 구체적으로 후보 코드워드 생성부(616)는 에러 이벤트 매치 필터 뱅크(614)에서 출력되는 신뢰치들을 기반으로, LC1 + LC2 ,,, + LCK개의 한도 내에서 결정되는 후보 코드워드들을 생성한다.
여기서, K는 코드워드 내에서 발생할 수 있다고 가정한 에러 이벤트의 최대 개수이고, L은 후보 코드워드들을 생성하기 위해 고려되어진 에러 이벤트들의 개수이고, E는 포스트 비터비 처리기에서 사용되는 에러 이벤트 매치 필터들의 개수이며, K≤L≤E이다. 또한, C는 조합(combination)을 나타낸다.
에러 이벤트 정정기(618)는 후보 코드워드 생성부(616)에서 생성된 복수의 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 후보 코드워드를 선택하여 정정된 코드워드로서 출력한다. 만일, 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 후보 코드워드가 하나도 없다면 에러 이벤트에 대한 정정을 수행하지 않는다.
에러 이벤트 정정기(618)는 에러 검출 코드 디코더(612)로 후보 코드워드들에 대한 신드롬 체크를 요청하며, 에러 검출 코드 디코더(612)는 후보 코드워드들 각각에 에러 검출 코드를 적용하여 신드롬들을 산출하고 그 결과를 에러 이벤트 정정기(618)에 제공한다. 에러 이벤트 정정기(618)는 후보 코드워드들에 대한 신드롬들을 참조하여 에러 이벤트가 존재하지 않는 후보 코드워드를 선택하여 정정된 코드워드로서 출력한다.
도 7은 본 발명에 따른 포스트 비터비 에러 정정 방법을 적용하여 비트 에러율에 대하여 시뮬레이션한 결과를 보이는 다른 그래프이다. 도 7에 있어서 종축은 BER(Bit Error Rate)을 나타내고 횡축은 SNR(signal to noise ratio)를 나타낸다. 도 7에 도시된 시뮬레이션 결과는 K=1이고 L=1,2,3이며, 부분 응답 목표 다항식P=[1 6 7 2]인 조건에서 수행된 것이다.
도 7에 있어서 702는 포스트 비터비 처리기가 최적의 성능을 발휘할 경우의 BER을 보이는 것이고, 704~708은 본 발명에 따른 포스트 비터비 에러 정정 방법에 의한 BER들을 보이는 것이고, 그리고 710은 도 2에 도시된 바와 같은 종래의 포스트 비터비 에러 정정 방법에 의한 BER을 보이는 것이고, 712는 포스트 비터비 에러 정정을 적용하지 않는 경우의 BER을 보이는 것이다.
도 8은 본 발명에 따른 포스트 비터비 에러 정정 방법을 적용하여 섹터 에러율에 대해 시뮬레이션한 결과를 보이는 그래프이다. 도 8에 있어서 종축은 SER(Sector Error Rate)을 나타내고 횡축은 SNR(signal to noise ratio)를 나타낸다. 도 8에 도시된 시뮬레이션 결과는 K=1이고 L=3이며, 부분 응답 목표 다항식 P=[1 6 7 2]인 조건에서 수행된 것이다.
도 8에 있어서 802는 포스트 비터비 처리기가 최적의 성능을 발휘할 경우의 SER를 보이는 것이고, 804는 본 발명에 따른 포스트 비터비 에러 정정 방법에 의한 SER(L=3, K=1)을 보이는 것이고, 그리고 806은 도 2에 도시된 바와 같은 종래의 포스트 비터비 에러 정정 방법에 의한 SER(K=1)을 보이는 것이고, 808은 포스트 비터비 에러 정정을 적용하지 않는 경우의 SER을 보이는 것이다.
도 8에 의해, 본 발명에 따른 포스트 비터비 에러 정정 방법에 의해 종래의 포스트 비터비 에러 정정 방법보다 SER이 개선되는 것을 알 수 있다.
상술한 바와 같이 본 발명에 따른 에러 정정 방법은 에러 이벤트와의 상관성에 기반하여 발생된 에러 이벤트를 정정함에 있어서 후보 코드워드에서 여전히 에러 이벤트가 존재하는 지를 다시 검사함에 의해 오정정을 방지하는 효과를 가진다.
또한, 본 발명에 따른 에러 정정 방법은 가장 큰 신뢰치를 나타내는 에러 이벤트를 고려한 후보 코드워드에 의해 에러 이벤트가 정정되지 않을 경우 다른 에러 이벤트를 고려한 후보 코드워드에 의해 정정함으로써 정정 가능성을 높인다.
또한, 본 발명에 따른 에러 정정 방법은 에러 이벤트가 존재하지 않는 후보 코드워드가 하나도 없으면 에러 이벤트에 대한 에러 정정을 수행하지 않도록 함으로써 인위적 오정정의 발생을 방지할 수 있는 이점을 가진다.

Claims (9)

  1. 채널을 통하여 전송된 코드워드에서 발생한 에러를 상기 채널에서 발생할 수 있는 에러 이벤트들과의 상관 관계를 이용하여 정정하는 에러 정정 방법에 있어서,
    상기 코드워드에 대해 가장 큰 상관성을 가지는 에러 이벤트를 고려하여 에러 이벤트 정정이 수행된 후보 코드워드를 얻는 과정;
    상기 후보 코드워드 내에서 여전히 에러 이벤트가 존재하는 지를 검사하는 과정;
    상기 후보 코드워드 내에서 여전히 에러 이벤트가 존재하는 것으로 판단되면, 다른 에러 이벤트들을 고려한 다른 후보 코드워드들을 얻는 과정; 및
    상기 다른 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 것으로 판단되는 후보 코드워드를 선택하여 정정된 코드워드로서 출력하는 과정을 포함하는 포스트 비터비 에러 정정 방법.
  2. 제1항에 있어서,
    상기 검사하는 과정에 있어서 상기 후보 코드워드에서 에러 이벤트가 존재하지 않는 것으로 판단되면, 상기 후보 코드워드를 정정된 코드워드를 출력하는 과정을 더 구비하는 것을 특징으로 하는 포스트 비터비 에러 정정 방법.
  3. 제1항에 있어서,
    상기 다른 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 것으로 판단되는 후보 코드워드가 하나도 없다면, 에러 이벤트에 대한 정정을 수행하지 않는 것을 특징으로 하는 포스트 비터비 에러 정정 방법.
  4. 제1항에 있어서, 상기 다른 후보 코드워드들을 얻는 과정은
    상기 코드워드 내에서 발생할 수 있다고 가정한 에러 이벤트의 최대 개수 K 및 포스트 비터비 처리기에서 사용되는 에러 이벤트 매치 필터들의 개수 E를 참조하여 LC1 + LC2 ,,, + LCK개(여기서, K≤L≤E이고, L은 후보 코드워드들을 생성하기 위해 고려되어진 에러 이벤트들의 개수이고 그리고 C는 조합(combination)을 나타냄)의 한도 내에서 결정되는 후보 코드워드들을 얻는 것을 특징으로 하는 포스트 비터비 에러 정정 방법.
  5. 채널을 통하여 전송된 코드워드에서 발생한 에러를 상기 채널에서 발생할 수 있는 에러 이벤트들과의 상관 관계를 이용하여 정정하는 에러 정정 방법에 있어서,
    상기 코드워드 내에서 발생할 수 있는 복수의 에러 이벤트들을 고려하여 상기 코드워드에 대해 에러 이벤트 정정이 수행된 복수의 후보 코드워드들을 얻는 과정; 및
    상기 복수의 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 후보 코드워드를 선택하여 정정된 코드워드로서 출력하는 과정을 포함하는 포스트 비터비 에러 정정 방법.
  6. 제5항에 있어서,
    상기 복수의 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 것으로 판단되는 후보 코드워드가 하나도 없다면, 에러 이벤트에 대한 정정을 수행하지 않는 것을 특징으로 하는 포스트 비터비 에러 정정 방법.
  7. 제5항에 있어서, 상기 후보 코드워드들을 얻는 과정은
    상기 코드워드 내에 발생할 수 있다고 가정한 에러 이벤트의 최대 개수 K 및 포스트 비터비 처리기에서 사용되는 에러 이벤트 매치 필터들의 개수 E를 참조하여 LC1 + LC2 ,,, + LCK개(여기서, K≤L≤E이고, L은 후보 코드워드들을 생성하기 위해 고려되어진 에러 이벤트들의 개수이고 그리고 C는 조합(combination)을 나타냄)의 한도 내에서 결정되는 후보 코드워드들을 얻는 것을 특징으로 하는 포스트 비터비 에러 정정 방법.
  8. 채널을 통하여 전송된 코드워드에서 발생한 에러 이벤트를 상기 채널에서 발생할 수 있는 에러 이벤트들과의 상관 관계를 이용하여 정정하는 포스트 비터비 처리기에 있어서,
    상기 코드워드에 대하여 에러검출 코드를 적용하여 에러 이벤트의 발생 여부를 판단하는 에러 검출 코드 디코더;
    복수의 에러 이벤트 매치 필터들을 구비하여 상기 코드워드와 상기 에러 이벤트들과의 상관성을 나타내는 신뢰치들을 산출하는 에러 이벤트 매치 필터 뱅크;
    상기 에러 이벤트 매치 필터 뱅크에서 산출된 신뢰치들을 참조하여 복수의 에러 이벤트들을 고려한 후보 코드워드들을 발생하는 후보 코드워드 발생기; 및
    상기 후보 코드워드 발생기에서 발생된 복수의 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 후보 코드워드를 선택하여 정정된 코드워드로서 출력하는 에러 이벤트 정정기를 포함하는 포스트 비터비 처리기.
  9. 제8항에 있어서,
    상기 에러 이벤트 정정기는 상기 복수의 후보 코드워드들 중에서 에러 이벤트가 존재하지 않는 후보 코드워드가 하나도 없다면, 에러 이벤트에 대한 정정을 수행하지 않는 것을 특징으로 하는 포스트 비터비 처리기.
KR1020060006818A 2006-01-23 2006-01-23 포스트 비터비 에러 정정 방법 및 이에 적합한 장치 KR100734307B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020060006818A KR100734307B1 (ko) 2006-01-23 2006-01-23 포스트 비터비 에러 정정 방법 및 이에 적합한 장치
US11/655,969 US7814394B2 (en) 2006-01-23 2007-01-22 Post viterbi error correction apparatus and related methods
JP2007012937A JP5080817B2 (ja) 2006-01-23 2007-01-23 ポストビタビエラー訂正方法及びポストビタビ処理器
CN2007101097292A CN101060341B (zh) 2006-01-23 2007-01-23 后维特比纠错装置及其相关方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060006818A KR100734307B1 (ko) 2006-01-23 2006-01-23 포스트 비터비 에러 정정 방법 및 이에 적합한 장치

Publications (1)

Publication Number Publication Date
KR100734307B1 true KR100734307B1 (ko) 2007-07-02

Family

ID=38287059

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060006818A KR100734307B1 (ko) 2006-01-23 2006-01-23 포스트 비터비 에러 정정 방법 및 이에 적합한 장치

Country Status (4)

Country Link
US (1) US7814394B2 (ko)
JP (1) JP5080817B2 (ko)
KR (1) KR100734307B1 (ko)
CN (1) CN101060341B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200037642A (ko) * 2018-10-01 2020-04-09 삼성전자주식회사 메모리 컨트롤러 및 이를 포함하는 스토리지 장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8213546B2 (en) * 2007-11-13 2012-07-03 Silicon Laboratories Inc. System and method for decoding RDS/RBDS data
US8078947B2 (en) * 2008-07-15 2011-12-13 Macronix International Co., Ltd. Data processing circuit and method
US8601338B2 (en) * 2008-11-26 2013-12-03 Broadcom Corporation Modified error distance decoding of a plurality of signals
US8904266B2 (en) * 2010-08-10 2014-12-02 Nxp, B.V. Multi-standard viterbi processor
US8898539B2 (en) * 2012-09-12 2014-11-25 Lsi Corporation Correcting errors in miscorrected codewords using list decoding
KR102007770B1 (ko) 2012-12-14 2019-08-06 삼성전자주식회사 패킷의 부호화 방법과 그 복호화 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5136592A (en) 1989-06-28 1992-08-04 Digital Equipment Corporation Error detection and correction system for long burst errors
JP2000224049A (ja) 1999-01-21 2000-08-11 Internatl Business Mach Corp <Ibm> 誤り検出装置およびその方法
JP2001211084A (ja) 2000-01-26 2001-08-03 Nec Saitama Ltd 時分割多元接続方式での誤りビット訂正方法及びその回路
KR20060025350A (ko) * 2004-09-16 2006-03-21 한국전자통신연구원 복호기에서의 반복 복호 중지 방법 및 그 장치
KR20060030455A (ko) * 2004-10-05 2006-04-10 삼성전자주식회사 수직 자기 기록매체가 재생하는 코드 워드의 에러 이벤트발생 유무 검출방법 및 장치

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5577053A (en) * 1994-09-14 1996-11-19 Ericsson Inc. Method and apparatus for decoder optimization
JPH0946241A (ja) 1995-07-27 1997-02-14 Saitama Nippon Denki Kk ブロック符号復号器
US5636208A (en) * 1996-04-12 1997-06-03 Bell Communications Research, Inc. Technique for jointly performing bit synchronization and error detection in a TDM/TDMA system
KR100301518B1 (ko) 1999-07-28 2001-11-01 구자홍 리드 솔로몬 복호기에서의 정정 불가능 에러 검출 방법
CN100426407C (zh) * 2003-05-30 2008-10-15 国际商业机器公司 数据存储***
US7325183B2 (en) * 2004-07-21 2008-01-29 Hewlett-Packard Development Company, L.P. Error correction code generation method and apparatus
JP4681415B2 (ja) * 2004-10-05 2011-05-11 リージェンツ オブ ザ ユニバーシティ オブ ミネソタ エラーイベント検出方法およびエラーイベント検出装置
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
US8108759B2 (en) * 2006-12-14 2012-01-31 Regents Of The University Of Minnesota Error detection and correction using error pattern correcting codes

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5136592A (en) 1989-06-28 1992-08-04 Digital Equipment Corporation Error detection and correction system for long burst errors
JP2000224049A (ja) 1999-01-21 2000-08-11 Internatl Business Mach Corp <Ibm> 誤り検出装置およびその方法
JP2001211084A (ja) 2000-01-26 2001-08-03 Nec Saitama Ltd 時分割多元接続方式での誤りビット訂正方法及びその回路
KR20060025350A (ko) * 2004-09-16 2006-03-21 한국전자통신연구원 복호기에서의 반복 복호 중지 방법 및 그 장치
KR20060030455A (ko) * 2004-10-05 2006-04-10 삼성전자주식회사 수직 자기 기록매체가 재생하는 코드 워드의 에러 이벤트발생 유무 검출방법 및 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IEEE 2005 10월 논문 "imposing a k constraint in recording systems employing post-viterbi error correction"

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200037642A (ko) * 2018-10-01 2020-04-09 삼성전자주식회사 메모리 컨트롤러 및 이를 포함하는 스토리지 장치
KR102554418B1 (ko) * 2018-10-01 2023-07-11 삼성전자주식회사 메모리 컨트롤러 및 이를 포함하는 스토리지 장치

Also Published As

Publication number Publication date
US7814394B2 (en) 2010-10-12
US20070174755A1 (en) 2007-07-26
JP2007200535A (ja) 2007-08-09
CN101060341A (zh) 2007-10-24
CN101060341B (zh) 2012-07-25
JP5080817B2 (ja) 2012-11-21

Similar Documents

Publication Publication Date Title
US5684810A (en) Error correcting decoder and error correction decoding method
JP5127189B2 (ja) エラー検出コードに基づくエラーの検出と訂正方法、及びそれに適した装置
KR100881192B1 (ko) 에러 패턴 검출 방법, 에러 정정 장치, 및 데이터 부호화 방법
JP4152887B2 (ja) リニアブロックコードに関する消去箇所−及び−単一−エラー訂正デコーダ
KR100734307B1 (ko) 포스트 비터비 에러 정정 방법 및 이에 적합한 장치
US8671335B2 (en) Soft output Viterbi detector with error event output
TWI785309B (zh) 多模式通道寫碼技術
JPH084233B2 (ja) 誤り訂正符号の復号装置
US7480852B2 (en) Method and system for improving decoding efficiency in wireless receivers
WO2020165260A1 (en) Multi-mode channel coding with mode specific coloration sequences
US8910009B1 (en) Method and apparatus for enhancing error detection in data transmission
US7383489B1 (en) Method and apparatus for detecting viterbi decoder errors due to quasi-catastrophic sequences
KR100909963B1 (ko) 포스트 비터비 에러 정정 방법, 이에 적합한 기록 매체그리고 이에 적합한 장치
WO1995001008A1 (fr) Methode de comptage des erreurs sur les bits et compteur
EP3697005A1 (en) Multi-mode channel coding with mode specific coloration sequences
JP2606647B2 (ja) 誤り訂正方法
JPH1022839A (ja) 軟判定誤り訂正復号方法
KR100780958B1 (ko) 에러 검출 코드에 기반한 에러 검출 및 정정 방법 및 장치
JP6552776B1 (ja) 誤り訂正復号装置および誤り訂正復号方法
JPH05235906A (ja) 多元符号の復号装置及びこれを用いた誤り訂正・検出方式
JP2001189059A (ja) 記録再生装置
JPH06188750A (ja) 圧縮データのエラー訂正装置及び方法
JPH05175940A (ja) 誤り訂正方式
JP2001160761A (ja) 誤り訂正装置及び誤り訂正方法
JP2000232375A (ja) 誤り訂正装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Publication of correction
FPAY Annual fee payment

Payment date: 20120608

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130611

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee