KR102136331B1 - Bch 코드를 복호화하기 위해 bch 코드의 생성 다항식을 복원하는 방법 및 장치 - Google Patents

Bch 코드를 복호화하기 위해 bch 코드의 생성 다항식을 복원하는 방법 및 장치 Download PDF

Info

Publication number
KR102136331B1
KR102136331B1 KR1020190048605A KR20190048605A KR102136331B1 KR 102136331 B1 KR102136331 B1 KR 102136331B1 KR 1020190048605 A KR1020190048605 A KR 1020190048605A KR 20190048605 A KR20190048605 A KR 20190048605A KR 102136331 B1 KR102136331 B1 KR 102136331B1
Authority
KR
South Korea
Prior art keywords
bch code
null
probability
spectra
bch
Prior art date
Application number
KR1020190048605A
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 KR1020190048605A priority Critical patent/KR102136331B1/ko
Application granted granted Critical
Publication of KR102136331B1 publication Critical patent/KR102136331B1/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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/152Bose-Chaudhuri-Hocquenghem [BCH] codes
    • 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/43Majority logic or threshold decoding

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Error Detection And Correction (AREA)

Abstract

BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법에 있어서, BCH 코드의 해밍 웨이트(Hamming weight)에 대한 확률 분포에 기초하여 BCH 코드의 UE 확률(undetectable error probability)을 근사하는 단계, BCH 코드의 모든 켤레류(conjugacy class)들 중 적어도 하나로부터 구성되는 후보 널 스펙트럼(null spectrum)들을 생성하는 단계, UE 확률에 기초하여 후보 널 스펙트럼들 각각이 BCH 코드의 생성에 활용된 생성 널 스펙트럼에 포함되는지 여부에 관한 통계적 가설 검정을 수행하는 단계, 및 통계적 가설 검정의 결과에 기초하여 생성 널 스펙트럼을 추정함으로써 생성 다항식을 재구성하는 단계를 포함하는 방법이 개시된다.

Description

BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법 및 장치{METHOD AND APPARATUS FOR RECONTRUCTING GENERATOR POLYNOMIAL OF BCH CODE TO DECODE BCH CODE}
본 개시는 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법 및 장치에 관한 것이다. 보다 상세하게는, 본 개시는 BCH 코드의 UE 확률(undetectable error probability)을 구함으로써 보다 정확하게 BCH 코드를 복호화하는 방법 및 장치에 관한 것이다.
BCH 코드(Bose-Chaudhuri-Hocquenghem code)는 오류 수정에 적합한 순회 코드로서, 데이터 통신 분야에서 다양하게 활용될 수 있다. BCH 코드의 부호화와 복호화는 생성 다항식을 통해 수행될 수 있다. BCH 코드의 송신단은 특정 생성 다항식으로 BCH 코드를 부호화할 수 있고, BCH 코드의 수신단은 해당 생성 다항식으로부터 BCH 코드를 복호화하여 통신 대상이 되는 데이터를 복원할 수 있다.
BCH 코드의 생성시에 사용된 생성 다항식이 알려지지 않은 경우에도, 수신단은 암맹 판별(blind determination)을 통해 BCH 코드의 생성에 관여한 널 스펙트럼을 결정할 수 있고, 그에 따라 생성 다항식을 도출할 수 있다. 예를 들면, GFFT(Galois field Fourier transform)를 활용하여 생성 다항식의 재구성이 수행될 수 있다.
다만, 일반적으로 BCH 코드는 수신단으로 전송되는 과정에서 오류가 있는 채널을 통과하고, 그로부터 BCH 코드가 일부 변형될 수 있다. 따라서, BCH 코드가 오류 채널에 의해 일부 변형되는 경우에도, BCH 코드에 대한 암맹 판별을 정확하게 수행하여 생성 다항식을 재구성하는 기술이 요구될 수 있다.
본 개시와 관련되는 선행기술문헌으로서, 채널 상태가 악화된 상황에서도 BCH 부호에 대한 추정 성능을 향상시킬 수 있는 부호 추정 장치 및 그 방법에 관한 등록특허공보 제10-1146563호, BCH 디코더에 포함되는 신드롬 생성기에서 소요되는 클럭 지연 수를 줄이기 위한 목적으로 BCH 인코더와 관련한 최소다항식 기반의 전처리가 수행되는 방식에 관한 등록특허공보 제10-1636406호, 및 BCH 부호의 복호 시 오류 정정 효율이 높고 구조가 간단한 복호 장치와 그 장치에서 실시되는 방법에 관한 등록특허공보 제10-1432909호 등이 참조될 수 있다.
등록특허공보 제10-1146563호 등록특허공보 제10-1636406호 등록특허공보 제10-1432909호
다양한 실시예들은 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법 및 장치를 제공하기 위한 것이다. 본 개시가 이루고자 하는 기술적 과제는 전술한 바와 같은 기술적 과제들로 한정되지 않으며, 이하의 실시예들로부터 또 다른 기술적 과제들이 유추될 수 있다.
전술한 기술적 과제를 해결하기 위한 수단으로서, 본 개시의 일 측면에 따른 BCH 코드를 복호화하기 위해 상기 BCH 코드의 생성 다항식을 복원하는 방법은, 상기 BCH 코드의 해밍 웨이트(Hamming weight)에 대한 확률 분포에 기초하여 상기 BCH 코드의 UE 확률(undetectable error probability)을 근사하는 단계; 상기 BCH 코드의 모든 켤레류(conjugacy class)들 중 적어도 하나로부터 구성되는 후보 널 스펙트럼(null spectrum)들을 생성하는 단계; 상기 UE 확률에 기초하여 상기 후보 널 스펙트럼들 각각이 상기 BCH 코드의 생성에 활용된 생성 널 스펙트럼에 포함되는지 여부에 관한 통계적 가설 검정을 수행하는 단계; 및 상기 통계적 가설 검정의 결과에 기초하여 상기 생성 널 스펙트럼을 추정함으로써 상기 생성 다항식을 재구성하는 단계를 포함할 수 있다.
본 개시의 다른 측면에 따른 BCH 코드를 복호화하기 위해 상기 BCH 코드의 생성 다항식을 복원하는 장치는, 적어도 하나의 프로그램을 저장하는 메모리; 및 상기 적어도 하나의 프로그램을 실행함으로써 상기 생성 다항식을 복원하는 프로세서를 포함하고, 상기 프로세서는, 상기 BCH 코드의 해밍 웨이트(Hamming weight)에 대한 확률 분포에 기초하여 상기 BCH 코드의 UE 확률(undetectable error probability)을 근사하고, 상기 BCH 코드의 모든 켤레류(conjugacy class)들 중 적어도 하나로부터 구성되는 후보 널 스펙트럼(null spectrum)들을 생성하고, 상기 UE 확률에 기초하여 상기 후보 널 스펙트럼들 각각이 상기 BCH 코드의 생성에 활용된 생성 널 스펙트럼에 포함되는지 여부에 관한 통계적 가설 검정을 수행하고, 상기 통계적 가설 검정의 결과에 기초하여 상기 생성 널 스펙트럼을 추정함으로써 상기 생성 다항식을 재구성할 수 있다.
본 개시에 따른 방법 및 장치에 의해 BCH 코드의 UE 확률(undetectable error probability)이 근사될 수 있고, UE 확률에 기초하여 통계적 가설 검정이 수행되어 생성 널 스펙트럼이 추정될 수 있으므로, 수신단이 BCH 코드가 어떤 생성 다항식에 의해 부호화되었는지가 알려지지 않는 경우에도 BCH 코드에 대한 암맹 판별이 수행될 수 있다.
특히, UE 확률이 암맹 판별 과정에서 고려될 수 있다는 점에서, GFFT(Galois field Fourier transform)를 활용하여 생성 다항식을 재구성하는 종래의 방식 대비 암맹 판별의 정확도가 개선될 수 있다.
도 1은 일부 실시예에 따른 BCH 코드를 활용하는 통신 시스템을 설명하기 위한 도면이다.
도 2는 일부 실시예에 따른 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 장치를 구성하는 요소들을 나타내는 블록도이다.
도 3은 일부 실시예에 따른 BCH 코드의 UE 확률(undetectable error probability)을 근사하는 과정을 설명하기 위한 도면이다.
도 4는 일부 실시예에 따른 BCH 코드의 생성 다항식을 재구성하는 과정을 설명하기 위한 도면이다.
도 5는 일부 실시예에 따른 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법의 성능을 설명하기 위한 도면이다.
도 6은 일부 실시예에 따른 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법을 구성하는 단계들을 나타내는 흐름도이다.
이하 첨부된 도면을 참조하면서 오로지 예시를 위한 실시예들을 상세히 설명하기로 한다. 아래의 설명은 실시예들을 구체화하기 위한 것일 뿐 발명의 권리 범위를 제한하거나 한정하는 것이 아님은 물론이다. 상세한 설명 및 실시예로부터 당해 기술분야의 전문가가 용이하게 유추할 수 있는 것은 권리범위에 속하는 것으로 해석된다.
본 명세서에서 사용되는 '구성된다' 또는 '포함한다' 등의 용어는 명세서 상에 기재된 여러 구성 요소들 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수 있고, 또는 추가적인 구성 요소들 또는 단계들이 더 포함될 수 있는 것으로 해석되어야 한다.
본 명세서에서 사용되는 '제 1' 또는 '제 2' 등과 같은 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있으나, 상기 구성 요소들은 상기 용어들에 의해 한정되지 않아야 한다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소들로부터 구별하기 위한 목적으로만 사용된다.
본 명세서에서 사용되는 용어는 본 발명에서의 기능을 고려하여 가능한 현재 널리 사용되는 일반적인 용어들로 선택되었으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당하는 발명의 설명 부분에서 그 의미가 상세하게 기재될 것이다. 따라서, 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 실시예들은 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법 및 장치에 관한 것으로서 이하의 실시예들이 속하는 기술 분야에서 통상의 지식을 가진 자에게 널리 알려져 있는 사항들에 관해서는 자세한 설명을 생략한다.
도 1은 일부 실시예에 따른 BCH 코드를 활용하는 통신 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, BCH 코드를 활용하는 통신 시스템(10)은 부호화 및 송신 장치(100), 및 수신 및 복호화 장치(200)를 포함할 수 있다. 통신 시스템(10)에서 통신 대상이 되는 데이터는 BCH 코드의 형태로 장치(100)로부터 장치(200)에 전송될 수 있다.
BCH 코드(Bose-Chaudhuri-Hocquenghem code)는 순회 오류 정정 코드(cyclic error-correcting code)의 하나로서, BCH 코드는 유한체(finite field) 또는 갈루아체(Galois field) 상의 다항식을 통해 생성될 수 있다. BCH 코드를 활용하는 부호화 방식에는 오류에 대한 제어가 용이하다는 점, 및 복호화가 용이하다는 점 등의 이점을 가질 수 있다.
BCH 코드의 부호어는 다양한 형태로 형성될 수 있다. BCH 코드의 부호어는 n의 길이를 가질 수 있다. 예를 들면, BCH 코드의 부호어의 길이 n은 (qm-1)과 같을 수 있고, 그와 같은 경우 BCH 코드는 원시 BCH 코드(primitive BCH code)로 지칭될 수 있다. 다만 이에 제한되는 것은 아니고, 원시 BCH 코드가 아닌 경우에 대해서도 BCH 코드가 생성될 수 있다.
장치(100)는 특정 생성 다항식을 활용하여 통신 대상이 되는 데이터를 BCH 코드로 부호화할 수 있다. BCH 코드를 생성하기 위한 생성 다항식 g(x)는 아래의 수학식 1과 같이 계산될 수 있다.
Figure 112019042915476-pat00001
수학식 1에서, n은 BCH 부호어의 길이를 의미할 수 있고, α는 확장체(extension field) GF(qm) 상의 차수(order)가 n인 원소를 의미할 수 있고, b는 n보다 작은 임의의 자연수를 의미할 수 있고, d는 BCH 코드의 설계 거리(design distance)를 의미할 수 있고, LCM(x1, ... , xk)는 (x1, ... , xk)에 대한 최소공배수를 의미할 수 있다. BCH 코드의 오류 정정 능력이 t인 경우, 설계 거리 d는 (2t+1)과 같을 수 있다. 한편, b의 값이 1인 경우, BCH 코드는 협의의 BCH 코드(narrow-sense BCH code)일 수 있다.
수학식 1에서, Mα b+i(x)는 확장체 GF(qm) 상에서 정의되는 αb+i의 최소다항식을 의미할 수 있다. 확장체 GF(qm)의 원소들 (αb, αb+1, ... , αb+d-2)과 이들의 켤레 주파수(conjugate frequency)들에 대한 집합은 널 스펙트럼(null spectrum)일 수 있고, 널 스펙트럼을 이용하여 생성 다항식 g(x)가 생성될 수 있다.
시스템(10)에서, 장치(100)로부터 장치(200)에 전송되는 BCH 코드는 q의 값이 2이고 b의 값이 1인 원시 협의의 이진 BCH 코드(primitive narrow-sense binary BCH code)일 수 있다. 또한, 이진 BCH 코드는 이진 대칭 채널을 통해 전송될 수 있고, 전송 과정에서 채널 천이가 발생할 확률이 일정하게 유지될 수 있으며, 장치(200)에 BCH 코드 생성의 기반이 되는 확장체 GF(2m)이 알려져 있고, BCH 코드의 모든 부호어는 i.i.d.(independent and identically distributed)에 따라 독립적으로 균등하게 발생할 수 있으며, 장치(200)에 수신되는 부호어는 완벽하게 동기화(synchronization)될 수 있다. 다만 이에 제한되는 것은 아니고, BCH 코드는 전술한 내용 이외의 특성으로 생성될 수도 있다.
BCH 코드가 장치(200)에서 복호화되어 통신 대상이 되는 데이터가 복원되기 위해서는, 특정 생성 다항식이 무엇인지가 장치(200)에 알려질 것이 요구될 수 있다. 다만, 특정 생성 다항식이 무엇인지가 장치(200)에 알려지지 않은 경우에도, 장치(200)는 BCH 코드의 부호화에 관련되는 유한체에 관한 정보를 활용하여 특정 생성 다항식에 대한 암맹 판별(blind determination)을 수행할 수 있다. 암맹 판별이 수행되는 경우, 장치(200)는 BCH 코드의 부호화에 관여한 생성 다항식을 재구성할 수 있고, 그로부터 BCH 코드를 복호화하여 통신 대상이 되는 데이터를 복원할 수 있다.
BCH 코드가 장치(100)로부터 장치(200)에 전송되는 과정에서, 일반적으로 BCH 코드는 오류가 있는 채널을 통과할 수 있으므로, BCH 코드에 대한 암맹 판별이 수행되기 위해서는, 장치(200)가 전송 과정에서 BCH 코드에 부가되는 오류를 고려할 것이 요구될 수 있다. 종래의 방식으로서, GFFT(Galois field Fourier transform)을 활용하는 암맹 판별 방식의 경우, 전송 과정에서 BCH 코드에 부가되는 오류, 특히 UE 확률(undetectable error probability)이 적절하게 고려되지 않아, 암맹 판별의 성능이 저하될 수 있다.
장치(200)는 BCH 코드에 대한 암맹 판별을 수행하는 과정에서, BCH 코드의 UE 확률을 근사적으로 계산할 수 있고, UE 확률을 반영하여 생성 다항식을 재구성할 수 있다. 따라서, BCH 코드는 오류가 있는 채널을 통과하여 전송되는 경우에도, 장치(200)에 의해 수행되는 암맹 판별은 종래의 GFFT 방식의 암맹 판별 대비 높은 정확도를 가질 수 있다.
도 2는 일부 실시예에 따른 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 장치를 구성하는 요소들을 나타내는 블록도이다.
도 2를 참조하면, BCH 코드를 복호화하기 위해 상기 BCH 코드의 생성 다항식을 복원하는 장치(200)는 메모리(210) 및 프로세서(220)를 포함할 수 있다. 다만 이에 제한되는 것은 아니고, 도 2에 도시되는 요소들 외에 다른 범용적인 요소들이 장치(200)에 더 포함될 수 있다.
도 2의 BCH 코드를 복호화하기 위해 상기 BCH 코드의 생성 다항식을 복원하는 장치(200)는 도 1의 수신 및 복호화 장치(200)를 의미할 수 있다. 따라서, 도 1의 장치(200)에 대해 설명되는 내용은 도 2의 장치(200)에도 적용될 수 있고, 도 2의 장치(200)에 대해 설명되는 내용은 도 1의 장치(200)에도 적용될 수 있다.
메모리(210)는 장치(200) 내에서 처리되는 각종 데이터들을 저장하는 하드웨어로서, 장치(200)에서 처리된 데이터들 및 처리될 데이터들을 저장할 수 있다. 메모리(210)는 장치(200)에 의해 실행되는 적어도 하나의 프로그램을 저장할 수 있다. 메모리(210)에 저장되는 적어도 하나의 프로그램이 장치(200)에서 실행됨에 따라, BCH 코드의 생성 다항식을 복원하는 과정이 수행될 수 있다.
메모리(210)는 휘발성 메모리(volatile memory) 또는 불휘발성 메모리(nonvolatile memory) 중 적어도 하나를 포함할 수 있다. 불휘발성 메모리에는 ROM(read only memory), PROM(programmable ROM), EPROM(electrically programmable ROM), EEPROM(electrically erasable and programmable ROM), 플래시 메모리 등이 포함될 수 있다. 휘발성 메모리에는 DRAM(dynamic RAM), SRAM(static RAM), SDRAM(synchronous DRAM), PRAM(phase-change RAM) 등이 포함될 수 있다. 다른 예시로서, 메모리(210)는 HDD(hard disk drive), SSD(solid state drive), Micro-SD(micro secure digital), Mini-SD(mini secure digital) 중 어느 하나일 수 있다.
프로세서(220)는 장치(200)를 제어하기 위한 전반적인 기능을 수행할 수 있다. 프로세서(220)는 메모리(210)에 저장되는 적어도 하나의 프로그램을 실행함으로써 BCH 코드의 생성 다항식을 복원할 수 있다. 프로세서(220)는 장치(200)의 전반적인 동작을 제어할 수 있고, 장치(200) 내부에서 수행되는 각종 연산들을 수행할 수 있다.
프로세서(220)는 다수의 논리 게이트들의 어레이로 구현될 수 있고, 범용적인 마이크로 프로세서와 마이크로 프로세서에서 실행될 수 있는 프로그램이 저장되는 메모리의 조합으로 구현될 수도 있다. 프로세서(220)는 복수 개의 프로세싱 엘리먼트들(processing elements)로 구성될 수도 있다. 예를 들면, 프로세서(220)는 장치(200) 내에 구비되는 CPU(central processing unit), AP(application processor) 등으로 구현될 수 있다.
프로세서(220)는 BCH 코드의 해밍 웨이트(Hamming weight)에 대한 확률 분포에 기초하여 BCH 코드의 UE 확률(undetectable error probability)을 근사할 수 있다.
BCH 코드가 이진 BCH 코드(binary BCH code)인 경우, BCH 코드는 0 또는 1의 값으로 이루어질 수 있다. 이진 BCH 코드의 부호어의 길이가 n인 경우, 장치(200)가 수신하는 BCH 코드의 부호어는 n개의 0 또는 1의 값으로 구성될 수 있다. 해밍 웨이트(Hamming weight)는 부호어에서 0이 아닌 부호의 개수를 의미할 수 있고, 길이가 n인 이진 BCH 코드의 부호어의 경우, 해밍 웨이트는 0 내지 n의 값을 가질 수 있다.
이진 BCH 코드의 부호어의 해밍 웨이트가 i일 확률이 w(i)인 경우, 프로세서(220)는 해밍 웨이트에 대한 확률 분포를 정규 분포로 근사할 수 있다. 프로세서(220)는 아래의 수학식 2와 같이 확률 w(i)에 대한 분포를 정규 분포
Figure 112019042915476-pat00002
로 근사할 수 있다.
Figure 112019042915476-pat00003
수학식 2에서, n은 이진 BCH 코드의 부호어의 길이를 의미할 수 있고, σ는 해밍 웨이트에 대한 확률 분포의 표준편차로서, σ2는 분산을 의미할 수 있고, exp(x)는 자연상수 e를 밑으로 하는 x에 대한 지수 함수를 의미할 수 있다.
BCH 부호의 설계 거리가 d인 경우, 해밍 웨이트가 1 내지 (d-1)인 부호어는 존재하지 않을 수 있다. 특히, 이진 BCH 부호의 경우, 해밍 웨이트에 대한 확률 분포로서, 웨이트 분포(weight distribution)는 n/2를 기준으로 i가 0 및 n인 경우를 제외하고는 대칭이므로, i가 n-1, n-2, ... , n-d+1인 경우의 부호어 또한 존재하지 않을 수 있다. 따라서,
Figure 112019042915476-pat00004
는 아래의 수학식 3과 같이 계산될 수 있다.
Figure 112019042915476-pat00005
BCH 코드는 이진 대칭 채널을 통해 장치(200)로 전송될 수 있다. 이진 대칭 채널에서 BCH 코드의 채널 천이가 발생할 수 있으므로, BCH 코드의 해밍 웨이트에 대한 웨이트 분포에 관하여, 장치(100)에서 생성되는 BCH 코드의 웨이트 분포와 장치(200)에 수신되는 BCH 코드의 웨이트 분포가 서로 상이할 수 있다. 이진 대칭 채널을 통과하여 장치(200)에서 수신되는 BCH 코드의 웨이트 분포는 아래의 수학식 4 내지 수학식 6과 같이 계산될 수 있다.
Figure 112019042915476-pat00006
수학식 4에서, 이진 대칭 행렬 Tτ는 이진 대칭 채널을 통과하는 과정에서 BCH 코드의 웨이트 분포가 변형되는 정도를 나타낼 수 있다. 채널 천이 확률 τ는 이진 대칭 채널에서 이진 값의 천이가 발생할 확률을 의미할 수 있고, 이진 대칭 행렬 Tτ의 원소 sτ(i,j)는 아래의 수학식 5와 같이 계산될 수 있다.
Figure 112019042915476-pat00007
수학식 5에서, 이진 대칭 행렬 Tτ의 원소 sτ(i,j)는 채널 천이 확률 τ에 관하여 계산될 수 있고, 그에 따라 이진 대칭 행렬 Tτ이 계산될 수 있다. 이진 대칭 행렬 Tτ이 계산되는 경우, 장치(200)에서 수신될 것으로 추정되는 웨이트 분포는 아래의 수학식 6과 같이 계산될 수 있다.
Figure 112019042915476-pat00008
수학식 6에서, 장치(200)에서 수신될 것으로 추정되는 추정 웨이트 분포
Figure 112019042915476-pat00009
r은 수학식 2와 같이 계산되는 정규 분포
Figure 112019042915476-pat00010
및 이진 대칭 행렬 Tτ로부터 계산될 수 있다. 한편, 수학식 2 및 수학식 6의 웨이트 분포
Figure 112019042915476-pat00011
는 분산 σ2의 값이 최적의 값이 되도록 업데이트될 수 있다. 웨이트 분포
Figure 112019042915476-pat00012
의 분산 σ2의 값에 관한 업데이트는 아래의 수학식 7과 같이 계산될 수 있다.
Figure 112019042915476-pat00013
수학식 7에서, 수신 웨이트 분포 wr은 장치(200)에 실제로 수신되는 BCH 코드의 부호어들의 웨이트 분포를 의미할 수 있고, 추정 웨이트 분포
Figure 112019042915476-pat00014
r는 이진 대칭 행렬 Tτ에 의해 정규 분포
Figure 112019042915476-pat00015
가 변형될 것으로 추정되는 분포를 의미할 수 있다. 프로세서(220)는 장치(200)에 실제로 수신되는 수신 웨이트 분포 wr 및 정규 분포
Figure 112019042915476-pat00016
가 변형될 것으로 추정되는 추정 웨이트 분포
Figure 112019042915476-pat00017
r 간의 차이를 계산할 수 있다.
프로세서(220)는, 정규 분포
Figure 112019042915476-pat00018
의 분산 σ2의 값을 변경시키면서, 수신 웨이트 분포 wr 및 추정 웨이트 분포
Figure 112019042915476-pat00019
r 간의 차이가 최소화되도록 하는 분산 σ2의 최종 분산값을 도출할 수 있다. 그에 따라, 프로세서(220)는 정규 분포
Figure 112019042915476-pat00020
의 분산 σ2이 최종 분산값을 갖도록 정규 분포
Figure 112019042915476-pat00021
를 업데이트할 수 있다. 한편, 최종 분산값에 관하여 정규 분포
Figure 112019042915476-pat00022
가 업데이트되는 경우, 프로세서(220)는 정규 분포
Figure 112019042915476-pat00023
의 전체 확률이 1이 되도록, 정규 분포
Figure 112019042915476-pat00024
에 대한 정규화(normalization)를 수행할 수 있다.
정규 분포
Figure 112019042915476-pat00025
에 대한 근사가 완료되는 경우, 프로세서(220)는 정규 분포
Figure 112019042915476-pat00026
및 채널 천이 확률 τ에 기초하여 BCH 코드의 UE 확률(undetectable error probability)을 계산할 수 있다. UE 확률은 아래의 수학식 8과 같이 계산될 수 있다.
Figure 112019042915476-pat00027
수학식 8에서, 정규 분포
Figure 112019042915476-pat00028
및 채널 천이 확률 τ로부터 BCH 코드의 UE 확률 Pr[UE]가 계산될 수 있다. k는 BCH 코드의 차원(dimension)을 의미할 수 있다. 프로세서(220)는 BCH 코드의 생성 다항식을 복원하는 과정에서 UE 확률 Pr[UE]을 계산할 수 있고, UE 확률 Pr[UE]에 기초하여 통계적 가설 검정을 수행할 수 있어, 프로세서(220)는 BCH 코드가 전송되는 과정에서 오류가 더해지는 경우에도 생성 다항식을 보다 정확하게 재구성할 수 있다.
프로세서(220)는 BCH 코드의 모든 켤레류(conjugacy class)들 중 적어도 하나로부터 구성되는 후보 널 스펙트럼(null spectrum)들을 생성할 수 있다.
BCH 코드의 모든 켤레류들은 BCH 코드가 속하는 유한체 내지 확장체에서 정의될 수 있는 모든 켤레류들을 의미할 수 있다. 후보 널 스펙트럼들은 BCH 코드의 모든 켤레류들 중 적어도 하나로부터 구성될 수 있다. 예를 들면, BCH 코드의 모든 켤레류들이 집합 {C1, C2, ... , CL}인 경우, 후보 널 스펙트럼들은 집합 {C1, C2, ... , CL}의 부분 집합들로서, 2L개의 후보 널 스펙트럼들일 수 있다. 다만, 공집합 및 전체집합은 실제로 사용되기 어렵다는 점에서, BCH 코드의 켤레류들의 개수가 L인 경우 (2L-2)개의 후보 널 스펙트럼들이 고려될 수 있다.
후보 널 스펙트럼들이 생성되는 과정에서, 프로세서(220)는 둘 이상의 연속하는 원소들을 갖는 스펙트럼들만을 후보 널 스펙트럼들로 생성함으로써 알고리즘 복잡도(algorithm complexity)를 감소시킬 수 있다. BCH 코드에는 둘 이상의 연속하는 근이 존재한다는 점을 감안하면, 가능한 스펙트럼들 중에서 둘 이상의 연속하는 원소들을 갖지 않는 스펙트럼은 고려 대상에서 제외될 수 있다. 따라서, 프로세서(220)는 둘 이상의 연속하는 원소들을 갖는 스펙트럼들만을 후보 널 스펙트럼들로 생성할 수 있으므로, 켤레류들의 개수가 L인 경우 후보 널 스펙트럼들의 개수는 (2L-2)개보다 작을 수 있다.
프로세서(220)는 UE 확률(undetectable error probability)에 기초하여 후보 널 스펙트럼들 각각이 BCH 코드의 생성에 활용된 생성 널 스펙트럼에 포함되는지 여부에 관한 통계적 가설 검정을 수행할 수 있다.
BCH 코드의 생성에 활용된 생성 널 스펙트럼은 장치(100)에서 BCH 코드의 부호화에 활용된 널 스펙트럼을 의미할 수 있다. BCH 코드는 생성 널 스펙트럼으로부터 도출되는 생성 다항식에 의해 부호화되므로, 생성 널 스펙트럼이 추정되는 경우, 그로부터 생성 다항식이 재구성될 수 있다.
통계적 가설 검정(statistical hypothesis test)은 표본의 통계적 정보를 활용하여 특정 추측에 대한 타당성을 판정하는 과정을 의미할 수 있다. 프로세서(220)는 후보 널 스펙트럼들 각각이 생성 널 스펙트럼에 포함되는지 여부에 관하여 통계적 가설 검정을 수행할 수 있다. 통계적 가설 검정은 후보 널 스펙트럼들 각각에 대하여 수행될 수 있다. 예를 들면, 후보 널 스펙트럼들의 개수가 (2L-2)개인 경우, 생성 널 스펙트럼에 관한 통계적 가설 검정이 (2L-2)회 수행될 수 있다.
통계적 가설 검정을 수행하는 과정에서, 프로세서(220)는 후보 널 스펙트럼들 각각이 생성 널 스펙트럼에 포함되는 경우를 나타내는 귀무가설에 대한 확률 분포를 결정할 수 있고, 후보 널 스펙트럼들 각각이 생성 널 스펙트럼에 포함되지 않는 경우를 나타내는 대립가설에 대한 확률 분포를 결정할 수 있다.
생성 널 스펙트럼 S0 및 i번째 후보 널 스펙트럼 Si에 대하여, 귀무가설 H0는 "Si ⊆ S0"인 경우를 의미할 수 있다. 귀무가설 H0에 관하여, 장치(200)에 수신되는 부호어들 중 Si의 원소들을 모두 근으로 갖는 부호어의 개수에 대한 분포는 아래의 수학식 9와 같이 계산될 수 있다.
Figure 112019042915476-pat00029
수학식 9에서, 귀무가설 H0에 관하여, Si의 원소들을 모두 근으로 갖는 부호어의 개수 Mi는 정규 분포 N[Mpi', Mpi'(1-pi')]를 따를 수 있고, 정규 분포 N[Mpi', Mpi'(1-pi')]은 평균이 Mpi'이고 분산이 Mpi'(1-pi')인 정규 분포를 의미할 수 있다. M은 장치(200)에 수신되는 부호어들의 전체 개수를 의미할 수 있다. UE 확률 Pr[UEi]은 Si를 널 스펙트럼으로 갖는 BCH 코드의 UE 확률을 의미할 수 있다. 확률 p 및 UE 확률 Pr[UEi]에 관하여, 확률 pi'는 pi' = p + Pr[UEi]일 수 있다. 채널 천이 확률 τ에 관하여, 확률 p는 (1-τ)n일 수 있다.
생성 널 스펙트럼 S0 및 i번째 후보 널 스펙트럼 Si에 대하여, 대립가설 HA는 "Si
Figure 112019042915476-pat00030
S0"인 경우를 의미할 수 있다. 대립가설 HA에 관하여, 장치(200)에 수신되는 부호어들 중 Si의 원소들을 모두 근으로 갖는 부호어의 개수에 대한 분포는 아래의 수학식 10과 같이 계산될 수 있다.
Figure 112019042915476-pat00031
수학식 10에서, 대립가설 HA에 관하여, Si의 원소들을 모두 근으로 갖는 부호어의 개수 Mi는 정규 분포 N[Mpi'', Mpi''(1-pi'')]를 따를 수 있고, 정규 분포 N[Mpi'', Mpi''(1-pi'')]은 평균이 Mpi''이고 분산이 Mpi''(1-pi'')인 정규 분포를 의미할 수 있다. M은 장치(200)에 수신되는 부호어들의 전체 개수를 의미할 수 있다. UE 확률 Pr[UEi]은 Si를 널 스펙트럼으로 갖는 BCH 코드의 UE 확률을 의미할 수 있다. 확률 p 및 UE 확률 Pr[UEi]에 관하여, 확률 pi''는 pi'' = (p + Pr[UEi])/2ξ일 수 있다. ξ는 가장 적은 개수의 원소를 갖는 켤레류(conjugacy class)의 원소 개수를 의미할 수 있다. 채널 천이 확률 τ에 관하여, 확률 p는 (1-τ)n일 수 있다.
수학식 9의 귀무가설 H0에 관한 부호어의 개수 Mi, 및 수학식 10의 대립가설 HA에 관한 부호어의 개수 Mi가 도출되는 과정에서, Si를 널 스펙트럼으로 갖는 BCH 코드의 UE 확률 Pr[UEi]가 고려될 수 있다. 그에 따라, BCH 코드의 UE 확률에 대한 고려 없이 생성 다항식을 복원하는 종래의 방식 대비 귀무가설 H0 및 대립가설 HA에 대한 통계적 가설 검정이 보다 정확하게 수행될 수 있으므로, 장치(200)가 생성 다항식을 재구성하는 정확도가 개선될 수 있다.
수학식 9 및 수학식 10에 따라 귀무가설 H0에 대한 정규 분포 및 대립가설 HA에 대한 정규 분포가 결정되는 경우, 프로세서(220)는 귀무가설 H0에 대한 정규 분포 및 대립가설 HA에 대한 정규 분포의 교차점을 활용하여 임계값을 설정할 수 있고, 프로세서(220)는 임계값에 기초하여 생성 널 스펙트럼을 추정함으로써 생성 다항식을 재구성할 수 있다. 구체적으로, 프로세서(220)는 귀무가설 H0에 대한 정규 분포 및 대립가설 HA에 대한 정규 분포의 교차점들 중에서, 귀무가설 H0에 대한 정규 분포의 평균 및 대립가설 HA에 대한 정규 분포의 평균 사이에 위치하는 교차점의 값을 임계값으로 설정할 수 있다.
프로세서(220)는 통계적 가설 검정의 결과에 기초하여 생성 널 스펙트럼을 추정함으로써 생성 다항식을 재구성할 수 있다.
프로세서(220)는 후보 널 스펙트럼들 각각에 대하여, 장치(200)에서 수신되는 BCH 부호어들 중에서, 어느 하나의 후보 널 스펙트럼 Si의 모든 원소들을 근으로 갖는 BCH 부호어들의 개수를 계산할 수 있다. 예를 들면, BCH 코드의 후보 널 스펙트럼들의 개수가 (2L-2)인 경우, (S1, S2, ... , S2L-2) 각각에 대하여, 프로세서(220)는 장치(200)에 실제로 수신되는 BCH 부호어들 중에서 해당 후보 널 스펙트럼 Si의 모든 원소들을 근으로 갖는 부호어들의 개수 Mi를 카운트할 수 있다. 각각의 후보 널 스펙트럼 Si에 대하여 부호어들의 개수 Mi를 카운트하는 과정은 아래의 수학식 11과 같이 표현될 수 있다.
Figure 112019042915476-pat00032
수학식 11에서, |A|는 집합 A의 카디널리티(cardinality)로서, 집합 A에 속하는 원소들의 개수를 의미할 수 있다. 집합 {j|rj(β) = 0 for all β ∈ Si}은 장치(200)에 실제로 수신되는 BCH 부호어들 rj중에서, 후보 널 스펙트럼 Si의 모든 원소들을 근으로 갖는 부호어들의 집합을 의미할 수 있고, 부호어들의 개수 Mi는 집합 {j|rj(β) = 0 for all β ∈ Si}의 카디널리티를 의미할 수 있다.
각각의 후보 널 스펙트럼 Si에 대하여 부호어들의 개수 Mi가 카운트되는 경우, 프로세서(220)는 부호어들의 개수 Mi, 및 통계적 가설 검정의 결과 간의 비교를 수행함으로써 생성 널 스펙트럼 S0를 추정할 수 있다. 예를 들면, 프로세서(220)는 각각의 후보 널 스펙트럼 Si에 대하여, 수학식 11에 따라 계산되는 부호어들의 개수 Mi 및 귀무가설 H0에 대한 정규 분포 및 대립가설 HA에 대한 정규 분포의 교차점으로 계산되는 임계값 Ti를 비교함으로써 생성 널 스펙트럼 S0를 추정할 수 있다. Mi 및 Ti를 비교하여 생성 널 스펙트럼 S0를 추정하는 과정은 아래의 수학식 12와 같이 표현될 수 있다.
Figure 112019042915476-pat00033
수학식 12에서, 후보 널 스펙트럼들 각각을 나타내는 첨자 i에 대하여, 프로세서(220)는 부호어들의 개수 Mi가 임계값 Ti보다 큰 첨자 i의 집합 I를 정의할 수 있고, 프로세서(220)는 집합 I의 원소 중 부호어들의 개수 Mi가 가장 작은 첨자 i를 선택하여, 해당 첨자 i에 대응되는 후보 널 스펙트럼 Si를 생성 널 스펙트럼 S0로 추정할 수 있다. 집합 I의 원소 i가 존재하지 않는 경우, 장치(200)의 암맹 판별 절차가 종료될 수 있다. 부호어들의 개수 Mi가 가장 작은 첨자 i를 선택하는 내용은 아래의 수학식 13과 같이 표현될 수 있다.
Figure 112019042915476-pat00034
수학식 13에서, 후보 널 스펙트럼들의 첨자 i 중에서, 최종적으로 생성 널 스펙트럼 S0인 것으로 추정되는 첨자
Figure 112019042915476-pat00035
는 집합 I에 포함되는 원소 i 중에서, 부호어들의 개수 Mi가 최소인 첨자 i가 최종 첨자
Figure 112019042915476-pat00036
로 선택될 수 있다.
부호어들의 개수 Mi가 가장 작은 첨자 i가 둘 이상인 경우, 프로세서(220)는 둘 이상의 후보 널 스펙트럼들 중 카디널리티(cardinality)가 최소인 후보 널 스펙트럼을 생성 널 스펙트럼 S0으로 추정할 수 있다. 예를 들면 Mi1과 Mi2가 동일한 첨자 i1 및 i2가 존재하는 경우, 프로세서(220)는 후보 널 스펙트럼 Si1 및 후보 널 스펙트럼 Si2 중 카디널리티가 더 작은 후보 널 스펙트럼을 생성 널 스펙트럼 S0으로 추정할 수 있다.
프로세서(220)는 수학식 1에 따라, 생성 널 스펙트럼 S0을 활용하여 생성 다항식 g(x)를 재구성할 수 있다. 생성 다항식 g(x)이 재구성되는 경우, BCH 코드가 복호화될 수 있어, 통신 대상이 되는 데이터가 복원될 수 있다. 장치(200)가 BCH 코드의 생성 다항식을 복원하는 과정에 대한 보다 구체적인 예시는 도 3 및 도 4를 참조하여 후술될 수 있다.
도 3은 일부 실시예에 따른 BCH 코드의 UE 확률(undetectable error probability)을 근사하는 과정을 설명하기 위한 도면이다.
도 3을 참조하면, 장치(200)에 실제로 수신되는 BCH 코드의 웨이트 분포 wr을 나타내는 표(310), 이진 대칭 행렬 Tτ를 나타내는 표(320) 및 최종적으로 근사되는 정규 분포
Figure 112019042915476-pat00037
를 나타내는 표(330)가 도시되어 있다.
표(310)에서, BCH 코드는 길이가 15이고 차원이 11인 원시 협의의 이진 BCH(15, 11) 코드(primitive narrow-sense binary BCH(15, 11) code)일 수 있다. 5,000개의 부호어들이 채널 천이 확률 τ의 값이 0.1인 이진 대칭 채널을 통과하여 장치(200)에 실제로 수신되는 부호어의 웨이트 분포가 wr(0)부터 wr(15)까지 도시되어 있다. 이는 전술한 수학식 7의 수신 웨이트 분포 wr를 의미할 수 있다.
표(320)에서, 채널 천이 확률 τ의 값이 0.1인 경우의 이진 대칭 행렬 Tτ의 값이 (16x16) 행렬의 형태로 도시되어 있다. 이는 전술한 수학식 4 내지 수학식 5를 통해 계산될 수 있다.
표(330)에서, BCH(15, 11) 코드의 웨이트 분포로부터 근사되는 정규 분포
Figure 112019042915476-pat00038
의 값이
Figure 112019042915476-pat00039
(0)부터
Figure 112019042915476-pat00040
(15)까지 도시되어 있다.
Figure 112019042915476-pat00041
(0) 내지
Figure 112019042915476-pat00042
(15)의 값이 계산되는 과정에서, 수학식 7에서 전술한 방식으로, 정규 분포
Figure 112019042915476-pat00043
의 분산 σ2의 값에 대한 최종 분산값이 σ=1.8760, σ2=1.87602으로 계산될 수 있다. 그에 따라, 정규 분포
Figure 112019042915476-pat00044
가 분산 σ2=1.87602에 관하여 업데이트될 수 있고, 다시 정규화될 수 있다. 그 결과로, 표(330)의
Figure 112019042915476-pat00045
(0) 내지
Figure 112019042915476-pat00046
(15)의 값이 도출될 수 있다.
표(330)의
Figure 112019042915476-pat00047
(0) 내지
Figure 112019042915476-pat00048
(15)의 값으로부터, 전술한 수학식 8에 따라, BCH(15, 11) 코드의 UE 확률(undetectable error probability)이 0.0102의 값으로 계산될 수 있다. BCH(15, 11) 코드의 실제 UE 확률은 0.0139의 값을 가진다는 점을 고려하면, 수학식 8에 의해 UE 확률의 값이 높은 정확도로 계산될 수 있다.
표(310) 내지 표(330)을 통해 BCH(15, 11) 코드의 UE 확률이 추정되는 예시가 설명되었고, 이후 UE 확률을 활용하여 통계적 가설 검정이 수행되는 예시는 도 4를 통해 후술될 수 있다.
도 4는 일부 실시예에 따른 BCH 코드의 생성 다항식을 재구성하는 과정을 설명하기 위한 도면이다.
도 4를 참조하면, BCH 코드의 후보 널 스펙트럼들을 나타내는 표(410), 후보 널 스펙트럼들 각각의 부호어의 개수를 나타내는 표(420) 및 후보 널 스펙트럼들 각각에 대하여, 귀무가설에 관한 확률 분포 및 대립가설에 관한 확률 분포를 나타내는 표(430)가 도시되어 있다.
표(410)에서, 부호어 길이 n=15인 BCH(15, 11) 코드의 켤레류들은 C1 = {α1, α2, α4, α8}, C2 = {α3, α6, α12, α9}, C3 = {α5, α10}, C4 = {α7, α14, α13, α11}일 수 있다. C1 내지 C4 중 적어도 하나로부터 후보 널 스펙트럼들이 생성될 수 있다. 켤레류들의 개수 L이 4의 값을 가지므로, 후보 널 스펙트럼들의 개수는 공집합과 전체집합을 제외한 (24-2)개일 수 있으나, 둘 이상의 연속하는 원소들을 갖지 않는 널 스펙트럼으로서, C2 만으로 구성되는 널 스펙트럼 및 C4만으로 구성되는 널 스펙트럼은 고려 대상에서 제외되어, 총 12개의 후보 널 스펙트럼들이 고려될 수 있다.
표(420)에서, 12개의 후보 널 스펙트럼들 각각에 대하여, 후보 널 스펙트럼의 모든 원소를 근으로 갖는 부호어의 개수 M1 내지 M12가 계산된 결과가 도시되어 있다.
표(430)에서, 12개의 후보 널 스펙트럼들 각각에 대하여, 귀무가설에 대한 확률 분포 및 대립가설에 대한 확률 분포가 도시되어 있다. 특히, 귀무가설에 대한 확률 분포 및 대립가설에 대한 확률 분포의 교차점에 해당하는 임계값 T1 내지 T12가 도시되어 있다. 부호어의 개수 M1 내지 M12를 임계값 T1 내지 T12와 비교하면, Mi > Ti를 만족하는 첨자 i의 값이 6임이 확인될 수 있다. 따라서, 후보 널 스펙트럼 S6이 생성 널 스펙트럼 S0로 추정될 수 있고, 후보 널 스펙트럼 S6의 원소 α1, α2, α4, α8에 의해 생성 다항식 g(x)가 재구성될 수 있다.
도 5는 일부 실시예에 따른 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법의 성능을 설명하기 위한 도면이다.
도 5를 참조하면, 종래의 GFFT(Galois field Fourier transform) 방식에 의한 생성 다항식 복원 방식의 성능 및 장치(200)가 수행하는 UE 확률을 활용하는 생성 다항식 복원 방식의 성능을 함께 나타내는 그래프(500)가 도시되어 있다.
그래프(500)에서, 가로축은 채널 천이 확률 τ를 나타낼 수 있고, 세로축은 생성 다항식의 재구성 성공 확률을 나타낼 수 있다. 원시 협의의 BCH(31, 26) 코드 및 원시 협의의 BCH(63, 57) 코드 두 경우에 대하여, 부호어의 전체 개수 M이 1,000인 경우의 재구성 확률이 도시되어 있다.
원시 협의의 BCH(31, 26) 코드의 경우, 종래 GFFT 방식의 경우 채널 천이 확률 τ이 0.06을 넘어가는 경우 재구성 확률이 급격히 감소할 수 있으나, 장치(200)가 수행하는 UE 확률을 활용하는 방식의 경우, 채널 천이 확률 τ이 0.1까지 재구성 확률이 1에 가까운 것이 확인될 수 있다. 또한, 원시 협의의 BCH(63, 57) 코드의 경우에도, 종래 GFFT 방식의 경우 채널 천이 확률 τ이 0.02를 넘어가는 경우 재구성 확률이 급격히 감소할 수 있으나, 장치(200)가 수행하는 UE 확률을 활용하는 방식의 경우, 채널 천이 확률 τ이 0.06까지 재구성 확률이 1에 가까운 것이 확인될 수 있다.
그래프(500)에서 확인될 수 있는 바와 같이, 장치(200)가 수행하는 UE 확률을 활용하는 생성 다항식의 재구성 방식은 정규 분포 근사의 방식으로 BCH 코드의 UE 확률을 추정하여 이를 통계적 가설 검정에 반영할 수 있으므로, 종래의 생성 다항식 재구성 방식 대비 높은 정확도를 가질 수 있다.
도 6은 일부 실시예에 따른 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법을 구성하는 단계들을 나타내는 흐름도이다.
도 6을 참조하면, BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법은 단계 610 내지 단계 640을 포함할 수 있다. 다만 이에 제한되는 것은 아니고, 도 6에 도시되는 단계들 외에 다른 범용적인 단계들이 도 6의 방법에 더 포함될 수 있다.
도 6의 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법은 도 1 내지 도 5를 통해 설명되는 장치(200)에서 시계열적으로 처리되는 단계들로 구성될 수 있다. 따라서, 도 6의 방법에 대하여 이하에서 생략되는 내용이라 할지라도, 도 1 내지 도 5의 장치(200)에 대하여 이상에서 기술되는 내용은 도 6의 방법에 대해서도 동일하게 적용될 수 있다.
단계 610에서, 장치(200)는 BCH 코드의 해밍 웨이트(Hamming weight)에 대한 확률 분포에 기초하여 BCH 코드의 UE 확률(undetectable error probability)을 근사할 수 있다.
단계 620에서, 장치(200)는 BCH 코드의 모든 켤레류(conjugacy class)들 중 적어도 하나로부터 구성되는 후보 널 스펙트럼(null spectrum)들을 생성할 수 있다.
단계 630에서, 장치(200)는 UE 확률에 기초하여 후보 널 스펙트럼들 각각이 BCH 코드의 생성에 활용된 생성 널 스펙트럼에 포함되는지 여부에 관한 통계적 가설 검정을 수행할 수 있다.
단계 640에서, 장치(200)는 통계적 가설 검정의 결과에 기초하여 생성 널 스펙트럼을 추정함으로써 생성 다항식을 재구성할 수 있다.
도 6의 BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 방법은 그 방법을 실행하는 명령어들을 포함하는 하나 이상의 프로그램이 기록되는 컴퓨터로 판독 가능한 기록 매체에 기록될 수 있다.
컴퓨터로 판독 가능한 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령어의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드가 포함될 수 있다.
이상에서 실시예들에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.
10: BCH 코드를 활용하는 통신 시스템
100: 부호화 및 송신 장치
200: BCH 코드를 복호화하기 위해 BCH 코드의 생성 다항식을 복원하는 장치
210: 메모리
220: 프로세서

Claims (10)

  1. BCH 코드를 복호화하기 위해 상기 BCH 코드의 생성 다항식을 복원하는 방법에 있어서,
    상기 BCH 코드의 해밍 웨이트(Hamming weight)에 대한 확률 분포에 기초하여 상기 BCH 코드의 UE 확률(undetectable error probability)을 근사하는 단계;
    상기 BCH 코드의 모든 켤레류(conjugacy class)들을 원소로 포함하는 집합의 부분 집합들에 대응되는 후보 널 스펙트럼(null spectrum)들을 생성하는 단계;
    상기 UE 확률에 기초하여 상기 후보 널 스펙트럼들 각각이 상기 BCH 코드의 생성에 활용된 생성 널 스펙트럼에 포함되는지 여부에 관한 통계적 가설 검정을 수행하는 단계; 및
    상기 통계적 가설 검정의 결과에 기초하여 상기 생성 널 스펙트럼을 추정함으로써 상기 생성 다항식을 재구성하는 단계를 포함하는, 방법.
  2. 제 1항에 있어서,
    상기 UE 확률을 근사하는 단계는,
    상기 해밍 웨이트에 대한 확률 분포를 정규 분포로 근사하는 단계; 및
    상기 정규 분포 및 채널 천이 확률(channel cross-over probability)에 기초하여 상기 UE 확률을 계산하는 단계를 포함하는, 방법.
  3. 제 2항에 있어서,
    상기 정규 분포로 근사하는 단계는,
    수신단에서 수신되는 BCH 부호어들의 웨이트 분포 및 상기 정규 분포가 채널 천이 행렬에 의해 변환되는 분포 간의 차이를 계산하는 단계;
    상기 차이가 최소화되도록 하는 상기 정규 분포의 최종 분산값을 도출하는 단계; 및
    상기 정규 분포의 분산이 상기 최종 분산값을 갖도록 상기 정규 분포를 업데이트하는 단계를 포함하고,
    상기 웨이트 분포는 상기 해밍 웨이트에 대한 확률 분포에 대응되는, 방법.
  4. 제 1항에 있어서,
    상기 후보 널 스펙트럼들을 생성하는 단계는,
    상기 집합에 포함되는 원소들 중 둘 이상의 연속하는 원소들을 갖는 스펙트럼들만을 상기 후보 널 스펙트럼들로 생성함으로써 알고리즘 복잡도(algorithm complexity)를 감소시키는 단계를 포함하는, 방법.
  5. 제 1항에 있어서,
    상기 통계적 가설 검정을 수행하는 단계는,
    상기 후보 널 스펙트럼들 각각이 상기 생성 널 스펙트럼에 포함되는 경우를 나타내는 귀무가설에 대한 확률 분포를 결정하는 단계; 및
    상기 후보 널 스펙트럼들 각각이 상기 생성 널 스펙트럼에 포함되지 않는 경우를 나타내는 대립가설에 대한 확률 분포를 결정하는 단계를 포함하는, 방법.
  6. 제 5항에 있어서,
    상기 통계적 가설 검정을 수행하는 단계는,
    상기 귀무가설에 대한 확률 분포 및 상기 대립가설에 대한 확률 분포의 교차점을 활용하여 임계값을 설정하는 단계를 포함하고,
    상기 생성 다항식을 재구성하는 단계는,
    상기 임계값에 기초하여 상기 생성 널 스펙트럼을 추정하는 단계를 포함하는, 방법.
  7. 제 1항에 있어서,
    상기 생성 다항식을 재구성하는 단계는,
    상기 후보 널 스펙트럼들 각각에 대하여, 수신단에서 수신되는 BCH 부호어들 중에서, 상기 후보 널 스펙트럼들 중 어느 하나에 포함되는 모든 원소들을 근으로 갖는 BCH 부호어들의 개수를 계산하는 단계; 및
    상기 후보 널 스펙트럼들 각각에 대하여 계산되는 상기 개수 및 상기 통계적 가설 검정의 결과 간의 비교를 수행함으로써 상기 생성 널 스펙트럼을 추정하는 단계를 포함하는, 방법.
  8. 제 7항에 있어서,
    상기 생성 다항식을 재구성하는 단계는,
    상기 비교의 결과로 둘 이상의 널 스펙트럼들이 추정되는 경우, 상기 둘 이상의 널 스펙트럼들 중 카디널리티(cardinality)가 최소인 널 스펙트럼을 상기 생성 널 스펙트럼으로 추정하는 단계를 포함하는, 방법.
  9. 제 1항 내지 제 8항 중 어느 한 항의 방법을 구현하기 위한 프로그램이 기록되는, 컴퓨터로 판독 가능한, 기록 매체.
  10. BCH 코드를 복호화하기 위해 상기 BCH 코드의 생성 다항식을 복원하는 장치에 있어서,
    적어도 하나의 프로그램을 저장하는 메모리; 및
    상기 적어도 하나의 프로그램을 실행함으로써 상기 생성 다항식을 복원하는 프로세서를 포함하고,
    상기 프로세서는,
    상기 BCH 코드의 해밍 웨이트(Hamming weight)에 대한 확률 분포에 기초하여 상기 BCH 코드의 UE 확률(undetectable error probability)을 근사하고,
    상기 BCH 코드의 모든 켤레류(conjugacy class)들을 원소로 포함하는 집합의 부분 집합들에 대응되는 후보 널 스펙트럼(null spectrum)들을 생성하고,
    상기 UE 확률에 기초하여 상기 후보 널 스펙트럼들 각각이 상기 BCH 코드의 생성에 활용된 생성 널 스펙트럼에 포함되는지 여부에 관한 통계적 가설 검정을 수행하고,
    상기 통계적 가설 검정의 결과에 기초하여 상기 생성 널 스펙트럼을 추정함으로써 상기 생성 다항식을 재구성하는, 장치.
KR1020190048605A 2019-04-25 2019-04-25 Bch 코드를 복호화하기 위해 bch 코드의 생성 다항식을 복원하는 방법 및 장치 KR102136331B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190048605A KR102136331B1 (ko) 2019-04-25 2019-04-25 Bch 코드를 복호화하기 위해 bch 코드의 생성 다항식을 복원하는 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190048605A KR102136331B1 (ko) 2019-04-25 2019-04-25 Bch 코드를 복호화하기 위해 bch 코드의 생성 다항식을 복원하는 방법 및 장치

Publications (1)

Publication Number Publication Date
KR102136331B1 true KR102136331B1 (ko) 2020-07-22

Family

ID=71893024

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190048605A KR102136331B1 (ko) 2019-04-25 2019-04-25 Bch 코드를 복호화하기 위해 bch 코드의 생성 다항식을 복원하는 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102136331B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101146563B1 (ko) 2010-07-28 2012-05-25 국방과학연구소 부호 추정 장치 및 그 방법
KR101432909B1 (ko) 2012-12-21 2014-08-22 인하대학교 산학협력단 병렬 bch 복호기를 위한 고속 소면적의 수정된 스텝-바이-스텝 복호 방법 및 그 연산 회로
KR101636406B1 (ko) 2015-01-30 2016-07-05 고려대학교 산학협력단 저지연 신드롬 계산을 위한 bch 디코더의 전처리 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101146563B1 (ko) 2010-07-28 2012-05-25 국방과학연구소 부호 추정 장치 및 그 방법
KR101432909B1 (ko) 2012-12-21 2014-08-22 인하대학교 산학협력단 병렬 bch 복호기를 위한 고속 소면적의 수정된 스텝-바이-스텝 복호 방법 및 그 연산 회로
KR101636406B1 (ko) 2015-01-30 2016-07-05 고려대학교 산학협력단 저지연 신드롬 계산을 위한 bch 디코더의 전처리 장치 및 방법

Similar Documents

Publication Publication Date Title
Hashemi et al. Partitioned successive-cancellation list decoding of polar codes
US8245117B1 (en) Low complexity chien search in chase-type decoding of reed-solomon codes
Trifonov et al. Generalized concatenated codes based on polar codes
US9203432B2 (en) Symbol flipping decoders of non-binary low-density parity check (LDPC) codes
KR102136428B1 (ko) 코드의 워드들의 확장된 스펙트럼의 분석에 의해, 정정 코드, 예를 들면, 터보 코드를 디코딩하는 방법
US7949932B2 (en) Strengthening parity check bit protection for array-like LDPC codes
US10218388B2 (en) Techniques for low complexity soft decoder for turbo product codes
US9960790B2 (en) Belief propagation decoding for short algebraic codes with permutations within the code space
US10797728B1 (en) Systems and methods for diversity bit-flipping decoding of low-density parity-check codes
JP5705106B2 (ja) ユークリッド空間リード−マラー符号の軟判定復号を実行する方法
EP3539237B1 (en) Error detection in communication systems using polar coded data transmission
JP2001036417A (ja) 誤り訂正符号化装置、方法及び媒体、並びに誤り訂正符号復号装置、方法及び媒体
US10090865B2 (en) Performance optimization in soft decoding of error correcting codes
JP2012525062A (ja) 書込み検証を使用した符号のエラーフロア軽減
EP3602794B1 (en) Check bit concatenated polar codes
US20090158127A1 (en) Decoding apparatus and decoding method
US11418221B2 (en) Method and polar code decoder for determining to-be-flipped bit position
US9432054B2 (en) Method for decoding a correcting code with message passing, in particular for decoding LDPC codes or turbo codes
KR102136331B1 (ko) Bch 코드를 복호화하기 위해 bch 코드의 생성 다항식을 복원하는 방법 및 장치
JP6567238B1 (ja) 誤り訂正復号装置および誤り訂正復号方法
CN114499544A (zh) 一种极化码的译码方法
US8977925B2 (en) Efficient way to construct LDPC code by comparing error events using a voting based method
JP2010535459A (ja) 線形計画法復号のための座標上昇法
EP3526899B1 (en) Decoding of low-density parity-check convolutional turbo codes
KR101606040B1 (ko) 실패검사노드를 이용한 저밀도패리티 검사부호 복호장치 및 그 방법

Legal Events

Date Code Title Description
GRNT Written decision to grant