KR20090094984A - 확률 값 계산장치 - Google Patents

확률 값 계산장치 Download PDF

Info

Publication number
KR20090094984A
KR20090094984A KR1020080020020A KR20080020020A KR20090094984A KR 20090094984 A KR20090094984 A KR 20090094984A KR 1020080020020 A KR1020080020020 A KR 1020080020020A KR 20080020020 A KR20080020020 A KR 20080020020A KR 20090094984 A KR20090094984 A KR 20090094984A
Authority
KR
South Korea
Prior art keywords
value
probability
minimum value
variable node
memory
Prior art date
Application number
KR1020080020020A
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 KR1020080020020A priority Critical patent/KR20090094984A/ko
Publication of KR20090094984A publication Critical patent/KR20090094984A/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/01Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of 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/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/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1125Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using different domains for check node and bit node processing, wherein the different domains include probabilities, likelihood ratios, likelihood differences, log-likelihood ratios or log-likelihood difference pairs
    • 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/6502Reduction of hardware complexity or efficient processing

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

본 발명은 저밀도 패리티 검사코드를 복호하는 복호장치에서 변수노드가 제공하는 확률 값을 이용하여 검사노드에서 간단히 확률 값을 계산하는 확률 값 계산장치에 관한 것으로서 최소 값 연산부가 변수노드로부터 입력되는 복수의 확률 값에서 가장 낮은 제 1 최소 값과, 확률 값이 2번째로 낮은 제 2 최소 값을 연산하고, 부호 판단부가 변수노드로부터 입력되는 확률 값들의 전체 부호를 판단하며, 카운터가 변수노드로부터 입력되는 확률 값들의 개수를 카운트하며, 최소 값 연산부가 연산한 제 1 최소 값 및 제 2 최소 값과, 부호 판단부가 판단한 부호와, 카운터의 카운트 값을 이용하여 확률 값 연산부가 확률 값을 연산한다.
저밀도패리티검사, 검사노드, 확률 값, 계산, 복호장치, 검사노드, 변수노드

Description

확률 값 계산장치{Apparatus for calculating value of probability}
본 발명은 확률 값 계산장치에 관한 것이다. 보다 상세하게는 저밀도 패리티 검사(Low Density Parity Check) 코드를 복호하는 복호장치에서 변수노드(Variable Node)가 제공하는 확률 값을 이용하여 검사노드(Check Node)에서 확률 값을 간단히 계산할 수 있는 확률 값 계산장치에 관한 것이다.
유럽형 차세대 위성방송의 표준인 DVB-S2(Digital Video Broadcasting - Satellite 2)는 DVB-S보다 다양한 변조 기법을 사용한다. 이에 따라 DVB-S2는 보다 효율적인 오류정정기법인 저밀도 패리티 검사코드를 사용하여 오류를 정정하도록 하고 있다.
상기 저밀도 패리티 검사코드는 1962년 'Gallager'에 의해 처음으로 발표된 선형 블록코드로서 선형 블록코드를 구성하는 패리티 검사 행렬(Parity-Check Matrix)의 각 원소들의 대부분이 '0'인 성긴(Sparse) 행렬로 정의된다. 여기서, 상기 성긴 행렬이란 원소의 대부분이 0인 행렬을 말한다.
이러한 저밀도 패리티 검사코드가 처음 발표되었을 당시에는 구현에 소요되 는 막대한 비용으로 인하여 오랫동안 사용하지 않았으나, 1995년에 다시 발표되었고, 1998년에는 'Gallager'가 제안한 저밀도 패리티 검사코드를 일반화한 비정규 저밀도 패리티 검사코드가 발표되었다.
또한, 'Gallager'에 의해 처음 발표될 때, 상기 저밀도 패리티 검사코드에 대한 확률적 복호방법이 제안되었고, 이 복호방법을 통해 복호된 저밀도 패리티 검사코드의 성능이 대단히 우수한 것으로 밝혀졌으며, 또한, 코드어를 이진코드(Binary Codes)에서 비이진 코드(Nonbinary Codes)로 확장하여 정의할 경우에 개선된 성능을 보임이 밝혀졌다.
이러한 저밀도 패리티 검사코드는 터보 코드(Turbo Codes)와 마찬가지로 Shannon 통신로 용량의 한계(Channel Capacity Limit)에 접근하는 비트 오류율(Bit Error Rate ; BER)을 보이고 있다.
가장 좋은 성능을 보이는 것으로 알려진 비정규 저밀도 패리티 검사코드는 가산 백색 가우스 분포 잡음(Additive White Gaussian Noise ; AWGN) 통신로 환경 하에서 코드의 길이가 백만(106)비트 정도일 때 비트 오류율(BER) 10-6을 달성하기 위해 Shannon 통신로 용량으로부터 추가적으로 단지 0.13㏈만 필요하므로 대단히 낮은 비트 오류율의 고품질 전송 환경을 요구하는 응용에 적절하다.
일반적인 블록 코드의 복호방법인 대수적 복호방법(Algebraic Decoding Algorithm)과는 달리 저밀도 패리티 검사코드의 복호는 확률적 복호방법(Probabilistic Decoding Algorithm)으로 구성됨으로써 그래프 이론과 확률적 추 측 이론을 적용한 신뢰 전파 방법이 그대로 적용된다.
또한, 저밀도 패리티 검사코드의 복호는 통신로를 통해 수신된 코드어의 각 비트에 대해 해당 비트가 '1'이거나 '0'이었을 확률을 계산하게 된다. 여기서, 상기 계산한 확률 정보를 메시지라고 부르며, 패리티 검사 행렬에서 정의된 각 패리티를 통해 메시지의 품질을 검사할 수 있다.
패리티 검사 행렬의 특정 패리티가 만족되었을 때, 계산되는 메시지를 특별히 패리티 검사 메시지라고 하며, 각 코드어 비트에 대해서 가장 가능성이 큰 값을 나타내어 준다.
이때, 각 패리티에 대한 패리티 검사 메시지는 해당 비트들의 값을 결정하는데 이용하고, 여기서 계산된 비트에 대한 정보는 비트 메시지라고 한다.
그리고 이러한 메시지 전달을 반복하는 과정에서 각 코드어들의 비트에 대한 정보는 패리티 검사 행렬의 모든 패리티가 만족하게 된다. 최종적으로 패리티 검사 행렬의 모든 패리티가 만족되면, 코드어의 복호를 종료한다.
일반적으로 신호대잡음비가 낮은 통신로 환경에서는 조직코드(Systematic Codes)가 사용되므로 코드어의 특정부분을 추출하여 정보 비트를 재생하게 된다.
여기서, 조직코드란 코드어 내에 정보어가 코드어의 일부로 존재하게 만든 코드이다. 즉, 코드어를 정보어 부분과 오류를 정정하기 위하여 부가로 추가된 부분으로 명확히 구분할 수 있게 만든 코드를 말한다.
일반적으로 그래프를 이용한 복호에 적합한 코드로는 저밀도 패리티 검사코 드가 있으며, 이 저밀도 패리티 검사코드를 복호하기 위해 제안된 디코딩 알고리즘으로 Sum-product 알고리즘과, Min-sum 알고리즘이 있다. 또한, 저밀도 패리티 검사코드를 복호하는 Sum-Product 알고리즘으로 메시지를 계산하여 주고받으면서 반복적으로 복호를 시행하는 태너(Tanner) 그래프가 사이클을 갖고 있지 않을 때 최적의 성능을 보이고 있다.
상기 태너 그래프는 행렬에서 열을 나타내는 변수(variable) 노드와 행렬에서 행을 나타내는 검사(check) 노드로 구성되어 있고, 메시지는 두 가지 노드로 전송된다.
이러한 메시지 전송 알고리즘을 이용하여 실제적으로 저밀도 패리티 검사 복호장치를 구현할 경우에 복호 속도를 높이게 되면, 배선이나 하드웨어가 복잡해지고, 또한 복호 알고리즘의 복잡도가 높아지게 된다.
저밀도 패리티 검사 복호 과정은 태너 그래프를 기반으로 하여 진행되는데, 노드들의 메시지 처리 방식에 따라 구조가 달라지고 그로 인해 성능이나 처리 속도 또한 달라진다.
태너 그래프를 기반으로 하는 복호장치는 복수의 복수의 변수노드와 복수의 검사노드로 이루어지고, 상기 복수의 변수노드와 복수의 검사노드는 '1'의 정보가 삽입된 위치에 따라 계산한 확률 값을 상호간에 전송할 수 있게 연결되고, 상기 복수의 변수노드들 각각에는 초기 값이 입력된다.
이러한 태너 그래프를 기반으로 하는 복호장치를 구현함에 있어서, 복호 속도, 성능 그리고 복잡도 등을 고려하여 구현해야 되는 것으로서 간단한 구성을 가지고, 빠른 속도로 확률 값을 게산하는 것이 요구된다.
그러므로 본 발명이 해결하고자 하는 과제는 저밀도 패리티 검사코드를 복호하는 저밀도 패리티 검사코드의 복호장치에서 변수노드(Variable Node)가 계산한 확률 값을 검사노드(Check Node)가 제공받아 확률 값을 계산하는 간단한 구성의 확률 값 계산장치를 제공하는데 있다.
본 발명의 확률 값 계산장치에 따르면, 변수노드가 제공하는 복수의 확률 값들 중에서 크기가 가장 작은 제 1 최소 값과, 크기가 2번째로 작은 제 2 최소 값을 추출한다.
상기 추출한 제 1 최소 값에 상기 변수노드가 제공하는 확률 값들의 개수를 곱한다. 그리고 상기 변수노드가 제공하는 확률 값들의 전체 부호를 판단하고, 판단한 부호를, 상기 제 1 최소 값에 상기 확률 값들의 개수를 곱한 값에 곱한 후 상기 제 2 최소 값을 다시 곱하여 확률 값을 계산하고, 계산한 확률 값을 상기 변수 노드에 제공한다.
그러므로 본 발명의 확률 값 계산장치는, 변수노드로부터 입력되는 복수의 확률 값에서 가장 낮은 제 1 최소 값과, 확률 값이 2번째로 낮은 제 2 최소 값을 연산하는 최소 값 연산부와, 상기 변수노드로부터 입력되는 확률 값들의 전체 부호를 판단하는 부호 판단부와, 상기 변수노드로부터 입력되는 확률 값들의 개수를 카운트하는 카운터와, 상기 최소 값 연산부가 연산한 제 1 최소 값 및 제 2 최소 값과, 상기 부호 판단부가 판단한 부호와, 상기 카운터의 카운트 값을 이용하여 확률 값을 연산하는 확률 값 연산부를 포함하여 구성됨을 특징으로 한다.
상기 최소 값 연산부는 상기 변수노드로부터 입력되는 확률 값을 저장하는 제 1 메모리와, 상기 변수노드로부터 입력되는 확률 값들 중에서 값이 가장 낮은 제 1 최소 값이 저장되는 제 2 메모리와, 상기 변수노드로부터 입력되는 확률 값들 중에서 값이 2번째로 낮은 제 2 최소 값이 저장되는 제 3 메모리와, 상기 변수노드로부터 입력되는 확률 값들을 상호간에 비교하여 상기 제 1 최소 값 및 상기 제 2 최소 값을 추출하고, 추출한 제 1 최소 값 및 제 2 최소 값을 상기 제 2 메모리 및 제 3 메모리에 저장하는 최소 값 검출부를 포함하여 구성됨을 특징으로 한다.
상기 부호 판단부는 상기 변수노드로부터 입력되는 확률 값의 부호가 마이너스일 경우에 판단한 부호를 토글시켜 확률 값들의 전체 부호를 판단하는 것을 특징으로 한다.
상기 확률 값 연산부는 상기 최소 값 연산부가 연산한 제 1 최소 값에 상기 카운터의 카운트 값을 곱하는 제 1 곱셈기와, 상기 제 1 곱셈기의 출력신호에 상기 부호 판단부가 판단한 부호를 곱셈하는 제 2 곱셈기와, 상기 제 2 곱셈기의 출력신 호에 상기 최소 값 연산부가 연산한 제 2 최소 값을 곱셈하는 제 3 곱셈기를 포함하여 구성됨을 특징으로 한다.
또한 본 발명의 확률 값 계산장치는 상기 카운터의 카운트 값이 미리 설정된 소정의 값일 경우에 인에이블 신호를 발생하여 상기 확률 값 연산부를 인에이블시키는 제어부를 더 포함하는 것을 특징으로 한다.
본 발명의 확률 값 계산장치에 따르면, 변수노드가 제공하는 확률 값을 이용하여 검사노드에서 확률 값을 계산하는 것으로서 하드웨어의 구성이 간단하고, 빠른 속도로 확률 값을 정확하게 계산하여 변수 노드에 제공할 수 있다.
이하의 상세한 설명은 예시에 지나지 않으며, 본 발명의 실시 예를 도시한 것에 불과하다. 또한 본 발명의 원리와 개념은 가장 유용하고, 쉽게 설명할 목적으로 제공된다.
따라서, 본 발명의 기본 이해를 위한 필요 이상의 자세한 구조를 제공하고자 하지 않았음은 물론 통상의 지식을 가진 자가 본 발명의 실체에서 실시될 수 있는 여러 가지의 형태들을 도면을 통해 예시한다.
일반적으로 DVB-S2(Digital Video Broadcasting - Satellite 2)는 효율적인 코드를 위하여 도 1과 같이 패리티 검사 행렬 H(n-k)·n = [A(n-k)·k·B(n-k)·(n-k)]를 제시하고 있다.
여기서, H(n-k)·n은 패리티 검사 행렬이고, A(n-k)·k 및 B(n-k)·(n-k)는 각기 A 행렬 및 B 행렬이라고 지칭하고 있다.
상기한 패리티 검사행렬에서 A 행렬 및 B 행렬을 합한 열방향 노드를 변수(variable) 노드(n)라고 하고, 행방향 노드를 검사(check) 노드(n-k)라고 한다. 그리고 상기 변수노드(n)에서 A 행렬의 열방향 노드를 정보(information) 노드(k)라고 하며, B 행렬의 열방향 노드를 패리티(parity) 노드(n-k)라고 한다.
상기 A 행렬에서 '1'의 정보가 삽입된 위치는 방송신호의 비트 수 및 코드 레이트(code rate)에 따라 가변되는 것으로서 예를 들면, 방송신호의 비트 수가 16200이고, 코드 레이트가 1/4일 경우에 도 2에 도시된 바와 같은 패리티 비트의 위치정보가 제공된다.
상기 B 행렬은 하삼각 행렬로서 예를 들면, 도 3에 도시된 바와 같이 대각선 방향으로 연속하여 1이 나타나는 행렬이다.
도 4는 태너 그래프에 적용한 복호장치의 구성을 보인 도면이다. 도 4를 참조하면, 태너 그래프에 적용한 복호장치는 복수의 변수노드(400)와, 복수의 검사노드(410)로 이루어진다. 상기 복수의 변수노드(400)와 복수의 검사노드(410)는 '1'의 정보가 삽입된 위치에 따라 계산한 확률 값을 상호간에 전송할 수 있게 연결되 고, 상기 복수의 변수노드(400)들 각각에는 초기 값이 입력된다.
도 5는 상기한 도 4와 같은 구성의 복호장치가 저밀도 패리티 검사코드를 복호하는 과정을 설명하기 위한 신호흐름도이다. 도 5를 참조하면, 먼저 제어부(도면에 도시되지 않았음)가 채널을 통과한 신호를 입력한다(S500). 그리고 제어부는 카운트(Count)의 값을 '0'으로 초기화하고(S502), 상기 채널 통과신호를 이용하여 변수노드(400)의 초기 값을 설정한다(S504).
상기 변수노드(400)에 설정한 초기값은 검사노드(410)로 전달되어 검사노드(410)가 상기 변수노드(400)로부터 입력받은 초기 값으로 확률 값을 계산한다(S506).
상기 검사노드(410)에서의 확률 값 계산이 완료되면, 그 계산한 확률 값을 변수노드(400)가 전달받아 확률 값을 계산하고(S508), 검사노드(410)가 계산한 확률 값과 상기 초기 값을 가산한다(S510).
그리고 상기 제어부는 상기 확률 값과 상기 초기 값을 가산한 값이 '0' 또는 '1'인지의 여부를 판단하고(S512), 그 판단 결과로 에러가 발생하였는 지의 여부를 판단한다(S514).
상기 판단 결과 에러가 발생하였을 경우에 카운트(Count)의 값이 최대 값 인지의 여부를 판단하고(S516), 카운트(Count)의 값이 최대 값이 아닐 경우에 카운트(Count)의 값에 '1'을 가산하고(S518), 검사노드(410)로 상기 변수노드(400)가 상기 단계(S508)에서 계산한 확률 값을 검사노드(410)로 전달하여(S520) 검사노 드(410)가 다시 확률 값을 계산하고, 계산한 확률 값에 초기 값을 가산한 후 그 값이 '0' 또는 '1'인지의 여부로 에러가 발생하였는지의 여부를 판단하는 동작을 반복 수행한다.
그리고 상기 판단 결과 에러가 발생하지 않았거나 또는 에러가 발생하였어도 카운트(Count)의 값이 최대 값일 경우에 상기 변수노드(400)의 값을 출력하고(S522), 저밀도 패리티 검사코드의 복호를 종료한다.
이와 같이 저밀도 패리티 검사코드를 복호하는 복호장치에 있어서, 본 발명의 확률 값 계산장치는 상기 변수 노드(400)에서 제공하는 확률 값을 상기 검사노드(410)가 입력하여 확률 값을 계산한다.
도 5는 본 발명에 따라 검사노드(410)에서 확률 값을 계산하는 확률 값 계산장치의 바람직한 실시 예의 구성을 보인 블록도이다. 여기서, 부호 600은 최소 값 연산부(600)이다. 상기 최소 값 연산부(600)는 변수노드(400)로부터 입력되는 복수의 확률 값에서 가장 낮은 제 1 최소 값과, 상기 제 1 최소 값보다는 높으나 다른 확률 값보다는 낮은 제 2 최소 값을 연산한다.
상기 최소 값 연산부(600)는, 상기 변수노드(400)로부터 입력되는 확률 값을 저장하는 제 1 메모리(601)와, 상기 제 1 메모리(601)에 저장된 확률 값들 중에서 가장 낮은 제 1 최소 값이 저장되는 제 2 메모리(603)와, 상기 제 1 메모리(601)에 저장된 확률 값들 중에서 2번째로 낮은 제 2 최소 값이 저장되는 제 3 메모리(605)와, 상기 제 1 메모리(601)에 저장된 확률 값들 중에서 제 1 최소 값 및 제 2 최소 값을 검출하여 상기 제 2 메모리(603) 및 상기 제 3 메모리(605)에 각기 저장하는 최소 값 검출부(607)를 포함한다.
부호 610은 부호 판단부이다. 상기 부호 판단부(610)는 상기 최소 값 연산부(600)는, 상기 변수노드(400)로부터 입력되는 확률 값들의 전체 부호를 판단한다.
부호 620은 카운터이다. 상기 카운터(620)는 상기 변수노드(400)로부터 입력되는 확률 값들의 개수를 카운트한다.
부호 630은 확률 값 연산부이다. 상기 확률 값 연산부(630)는 상기 최소 값 연산부(600)가 연산한 제 1 최소 값 및 제 2 최소 값과, 상기 부호 판단부(610)가 판단한 부호와, 상기 카운터(620)의 카운트 값을 이용하여 확률 값을 연산한다.
상기 확률 값 연산부(630)는, 상기 최소 값 연산부(600)가 연산한 제 1 최소 값에 상기 카운터(620)의 카운트 값을 곱하는 제 1 곱셈기(631)와, 상기 제 1 곱셈기(631)의 출력신호에 상기 부호 판단부(610)가 판단한 부호를 곱셈하는 제 2 곱셈기(633)와, 상기 제 2 곱셈기(633)의 출력신호에 상기 최소 값 연산부(600)가 연산한 제 2 최소 값을 곱셈하는 제 3 곱셈기(635)를 포함하여 구성된다.
부호 640은 제어부이다. 상기 제어부(640)는 상기 카운터(620)의 카운트 값이 미리 설정된 소정의 값일 경우에 인에이블 신호(EN)를 발생하여 상기 확률 값 연산부(630)를 인에이블시킨다.
이러한 구성을 가지는 본 발명의 확률 값 계산장치는 변수노드(400)로부터 입력되는 확률 값이 최소 값 연산부(600)의 제 1 메모리(601)에 저장됨과 아울러 부호 판단부(610)로 입력되어 부호가 판단되고, 카운터(620)로 입력되어 변수노드(400)로부터 입력되는 확률 값의 개수가 카운트된다.
상기 제 1 메모리(601)에 확률 값이 저장되면, 최소 값 검출부(607)는 상기 제 1 메모리(601)에 저장된 확률 값과, 제 2 메모리(603)에 저장된 제 1 최소 값과, 제 3 메모리(605)에 저장된 제 2 최소 값을 상호간에 비교하여 가장 낮은 값을 상기 제 2 메모리(603)에 제 1 최소 값으로 저장하고, 2번째로 낮은 값을 상기 제 3 메모리(605)에 제 2 최소 값으로 저장하는 것을 반복 수행한다.
그리고 상기 부호 판단부(610)는 상기 변수노드(400)로부터 입력되는 확률 값의 부호를 판단한다. 예를 들면, 상기 변수노드(400)로부터 입력되는 확률 값의 부호가 마이너스일 경우에 상기 부호 판단부(610)는 판단한 부호를 토글시킨다. 즉, 상기 변수노드(400)로부터 입력되는 확률 값의 부호가 마이너스일 경우에 상기 부호 판단부(610)는 부호가 마이너스임을 판단하고, 상기 부호 판단부(610)가 마이너스 부호를 판단한 상태에서 상기 변수노드(400)로부터 입력되는 확률 값의 부호가 다시 마이너스일 경우에 상기 부호 판단부(610)는 부호가 플러스임을 판단한다.
상기 카운트(620)는 상기 변수노드(400)로부터 입력되는 확률 값의 개수를 카운트하고, 카운트한 값은 상기 제어부(640)로 입력된다.
이와 같은 상태에서 상기 변수노드(400)로부터 미리 설정된 소정 개수의 확률 값이 입력되어 최소 값 연산부(600)가 확률 값이 가장 낮은 제 1 최소 값과, 확률 값이 2번째로 낮은 제 2 최소 값을 검출하여 제 2 메모리(603) 및 제 3 메모 리(605)에 각기 저장하고, 부호 판단부(610)가 부호를 판단하며, 카운터(620)가 소정 개수를 카운트하면, 제어부(640)는 인에이블 신호(EN)를 발생하여 확률 값 연산부(630)를 인에이블시킨다.
그러면, 상기 확률 값 연산부(630)의 제 1 곱셈기(631)는 상기 제 2 메모리(603)에 저장되어 있는 제 1 최소 값에 상기 카운터(620)의 카운트 값을 곱셈하고, 제 2 곱셈기(633)가 제 1 곱셈기(631)의 출력신호에 부호 판단부(610)가 판단한 부호를 곱셈하며, 제 3 곱셈기(635)가 상기 제 2 곱셈기(633)의 출력신호에 상기 제 3 메모리(605)에 저장되어 있는 제 2 최소 값을 곱셈하여 확률 값을 계산하며, 계산한 확률 값은 변수 노드(400)로 출력하여 변수 노드(400)에서 확률값을 게산할 수 있도록 한다.
이상에서는 대표적인 실시 예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시 예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다.
그러므로 본 발명의 권리범위는 설명된 실시 예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
본 발명은 저밀도 패리티 검사코드를 복호하는 복호장치에 있어서, 변수노드가 계산한 확률 값을 검사노드가 입력하여 확률 값을 계산하는 것으로서 검사노드가 간단한 하드웨어의 구성으로 확률 값을 빠르고 정확하게 계산하여 변수노드에 제공할 수 있다.
도 1은 패리티 검사 행렬을 보인 도면,
도 2는 방송신호의 비트 수가 16200이고, 코드 레이트가 1/4일 경우에 패리티 비트의 위치정보를 보인 도면,
도 3은 패리티 검사행렬에서 B 매트릭스의 구성을 예로 들어 보인 도면,
도 4는 태너 그래프에 적용한 복호장치의 구성을 보인 도면,
도 5는 저밀도 패리티 검사코드의 복호과정을 설명하기 위한 신호흐름도, 및
도 6은 본 발명의 확률 값 계산장치의 바람직한 실시 예의 구성을 보인 블록도이다.

Claims (5)

  1. 변수노드로부터 입력되는 복수의 확률 값에서 가장 낮은 제 1 최소 값과, 확률 값이 2번째로 낮은 제 2 최소 값을 연산하는 최소 값 연산부;
    상기 변수노드로부터 입력되는 확률 값들의 전체 부호를 판단하는 부호 판단부;
    상기 변수노드로부터 입력되는 확률 값들의 개수를 카운트하는 카운터; 및
    상기 최소 값 연산부가 연산한 제 1 최소 값 및 제 2 최소 값과, 상기 부호 판단부가 판단한 부호와, 상기 카운터의 카운트 값을 이용하여 확률 값을 연산하는 확률 값 연산부를 포함하여 구성된 확률 값 계산장치.
  2. 제 1 항에 있어서, 상기 최소 값 연산부는;
    상기 변수노드로부터 입력되는 확률 값을 저장하는 제 1 메모리;
    상기 변수노드로부터 입력되는 확률 값들 중에서 값이 가장 낮은 제 1 최소 값이 저장되는 제 2 메모리;
    상기 변수노드로부터 입력되는 확률 값들 중에서 값이 2번째로 낮은 제 2 최소 값이 저장되는 제 3 메모리;
    상기 변수노드로부터 입력되는 확률 값들을 상호간에 비교하여 상기 제 1 최소 값 및 상기 제 2 최소 값을 추출하고, 추출한 제 1 최소 값 및 제 2 최소 값을 상기 제 2 메모리 및 제 3 메모리에 저장하는 최소 값 검출부를 포함하여 구성됨을 특징으로 하는 확률 값 계산장치.
  3. 제 1 항에 있어서, 상기 부호 판단부는;
    상기 변수노드로부터 입력되는 확률 값의 부호가 마이너스일 경우에 판단한 부호를 토글시켜 확률 값들의 전체 부호를 판단하는 것을 특징으로 하는 확률 값 계산장치.
  4. 제 1 항에 있어서, 상기 확률 값 연산부는;
    상기 최소 값 연산부가 연산한 제 1 최소 값에 상기 카운터의 카운트 값을 곱하는 제 1 곱셈기;
    상기 제 1 곱셈기의 출력신호에 상기 부호 판단부가 판단한 부호를 곱셈하는 제 2 곱셈기;
    상기 제 2 곱셈기의 출력신호에 상기 최소 값 연산부가 연산한 제 2 최소 값을 곱셈하는 제 3 곱셈기를 포함하여 구성됨을 특징으로 하는 확률 값 계산장치.
  5. 제 1 항에 있어서,
    상기 카운터의 카운트 값이 미리 설정된 소정의 값일 경우에 인에이블 신호를 발생하여 상기 확률 값 연산부를 인에이블시키는 제어부를 더 포함하는 것을 특징으로 하는 확률 값 계산장치.
KR1020080020020A 2008-03-04 2008-03-04 확률 값 계산장치 KR20090094984A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080020020A KR20090094984A (ko) 2008-03-04 2008-03-04 확률 값 계산장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080020020A KR20090094984A (ko) 2008-03-04 2008-03-04 확률 값 계산장치

Publications (1)

Publication Number Publication Date
KR20090094984A true KR20090094984A (ko) 2009-09-09

Family

ID=41295350

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080020020A KR20090094984A (ko) 2008-03-04 2008-03-04 확률 값 계산장치

Country Status (1)

Country Link
KR (1) KR20090094984A (ko)

Similar Documents

Publication Publication Date Title
US9608666B1 (en) Non-concatenated FEC codes for ultra-high speed optical transport networks
CN103888148B (zh) 一种动态阈值比特翻转的ldpc码硬判决译码方法
US10164656B2 (en) Bit flipping algorithm for providing soft information during hard decision hard decoding
US7934146B2 (en) Method, apparatus and computer program product providing for data block encoding and decoding
US8108760B2 (en) Decoding of linear codes with parity check matrix
US11784668B2 (en) Decoding fec codewords using ldpc codes define by a parity check matrix which is defined by rpc and qc constraints
Huang et al. Two reliability-based iterative majority-logic decoding algorithms for LDPC codes
US10050642B2 (en) Low power scheme for bit flipping low density parity check decoder
US8869003B2 (en) Method, apparatus, computer program product and device providing semi-parallel low density parity check decoding using a block structured parity check matrix
US10103751B2 (en) Non-concatenated FEC codes for ultra-high speed optical transport networks
CN104995844A (zh) 具有对于ldpc码可靠性输入的比特翻转解码
US8181081B1 (en) System and method for decoding correlated data
Liu et al. Multi-threshold bit flipping algorithm for decoding structured LDPC codes
EP2911304A1 (en) Sliding window decoding of LDPC convolutional codes (LDPC-CC)
Chen et al. Low-density parity-check convolutional codes applied to packet based communication systems
JP5523064B2 (ja) 復号装置及び方法
Lu et al. An efficient majority-logic based message-passing algorithm for non-binary LDPC decoding
KR20110114204A (ko) 저밀도 패리티 체크 부호화 방법 및 이를 이용하는 저밀도 패리티 체크 인코더
KR102045438B1 (ko) Ldpc 부호의 복호를 위한 방법 및 장치
KR20090094984A (ko) 확률 값 계산장치
Wang The ldpc code and rateless code for wireless sensor network
Muangkammuen et al. On the Performance of Rate‐Compatible LDPC Codes under All‐Integer Quantization Decoding
KR20080020819A (ko) 저밀도 패리티 검사 코드의 복호장치
US20240120949A1 (en) Decoding fec codewords using ldpc codes defined by a parity check matrix which is defined by rpc and qc constraints
JP2010028408A (ja) 情報処理装置、情報処理方法、およびプログラム

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination