KR101112121B1 - 저밀도 패리티 검사 부호를 위한 복잡도와 대기시간을 줄인 동적 스케줄링 기법을 이용한 복호 방법 및 장치 - Google Patents
저밀도 패리티 검사 부호를 위한 복잡도와 대기시간을 줄인 동적 스케줄링 기법을 이용한 복호 방법 및 장치 Download PDFInfo
- Publication number
- KR101112121B1 KR101112121B1 KR1020090133678A KR20090133678A KR101112121B1 KR 101112121 B1 KR101112121 B1 KR 101112121B1 KR 1020090133678 A KR1020090133678 A KR 1020090133678A KR 20090133678 A KR20090133678 A KR 20090133678A KR 101112121 B1 KR101112121 B1 KR 101112121B1
- Authority
- KR
- South Korea
- Prior art keywords
- variable
- check
- node
- message
- value
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1131—Scheduling of bit node or check node processing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6502—Reduction 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 변수 노드에 대하여, 상기 제 1 체크 노드에서 상기 제 2 변수 노드로 전달되는 체크-변수 메시지를 업데이트하는 단계; 상기 제 2 변수 노드에 연결된 제 2 체크 노드에 대하여, 상기 제2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지를 업데이트하는 단계; 및 상기 업데이트된 변수-체크 메시지를 토대로, 상기 제 2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지의 정렬 기준 값을 산출하는 단계를 포함하는 것을 특징으로 한다.
저밀도 패리티 검사 부호, LDPC, 복호
Description
본 발명은 저밀도 패리티 검사 부호의 복호 방법 및 장치에 관한 것으로, 보다 상세하게는 저밀도 패리티 검사 부호를 위한 복잡도와 대기시간을 줄인 동적 스케줄링 기법을 이용한 복호 방법 및 장치에 관한 것이다.
차세대 이동 통신 시스템의 높은 데이터 전송률을 만족시키기 위해, 짧은 길이로 효과적인 성능을 갖는 부호화 방식과 빠른 수렴 속도의 복호화 방식에 대한 연구가 진행되고 있으며, 특히 저밀도 패리티 검사 부호(low density parity check codes: 이하, LDPC 부호라고 함)의 다양한 혹호 방식에 대한 연구가 활발히 이루어지고 있다.
LDPC 부호의 복호 방식은 기본적으로 체크 노드 또는 변수 노드가, 이와 이웃하는 소정 수의 이웃 노드로부터 메시지를 받아 업데이트 처리하고 갱신 처리된 메시지를 다시 해당 이웃 노드로 돌려보내는 과정의 반복을 통하여 오류를 정정해 나가면서 복호를 한다. 변수 노드 또는 체크 노드의 출력 메시지는 메시지가 보내질 선 즉, 에지(edge)에서 들어오는 메시지를 제외하고 그 노드로 들어오는 모든 메시지들의 함수이다.
이러한 메시지들의 업데이트 순서를 결정하는 것을 스케줄링(scheduling) 이라고 하며, 스케줄링 복호 방식은 고정된 순서에 따라 순차적으로 메시지들을 업데이트 하는 정적 스케줄링 복호 방식과, 동적으로 메시지들을 업데이트 하는 동적 스케줄링 복호 방식이 있다.
정적 스케줄링 복호 방식은 변수 노드 방향으로 업데이트하는지 체크 노드 방향으로 업데이트 하는지에 따라, SBP(Shuffled Belief Propagation)와 LBP (Layered Belief Propagation)로 구분된다. SBP와 LBP가 소개된 이후로 다양한 변형된 형태의 기법들이 연구되어 왔다.
최근 동적 스케줄링 기법을 사용한 더욱 효과적인 복호 방식이 소개되었다. RBP(Residual Belief Propagation)라 불리는 이 동적 스케줄링 복호 방식은 체크 노드에서 변수 노드로 전달되는 메시지의 업데이트 전후 값의 차이가 큰 순서대로 스케줄링 함으로써 복호 수렴 속도를 빠르게 하였다.
그러나 기존의 LDPC 부호를 위한 동적 스케줄링 복호 방식은 체크 노드에서 변수 노드로 전달되는 메시지의 업데이트 전후 값의 차이가 큰 순서대로 스케줄링을 수행하기 때문에, 복호 수렴 속도는 빨라졌지만, 체크 노드에서 변수 노드로 전달되는 메시지는 오직 하나의 체크 식에만 근거하기 때문에 신뢰도가 떨어지는 단점이 있다. 구체적으로 메시지를 잘못 판단할 가능성이 크기 때문에, 잘못 판단된 메시지가 먼저 업데이트 되어 새로운 에러가 발생하게 되는 문제점이 있다.
상기된 문제점을 고려하여 본 특허출원의 출원인은 특허출원 10-2008-0126676(2008.12.12)에서 소위 변수-체크 RBP(variable-to-check RBP, VCRBP) 방법과 노드-와이즈(node-wise) VCRBP(NVCRBP) 방법을 특허출원한 바 있다.
상기 VCRBP(variable-to-check RBP) 방법은 변수 노드에서 체크 노드로 전달되는 메시지의 업데이트 전후 값의 차이가 큰 순서대로 스케줄링 함으로써 작은 반복 횟수만으로 탁월한 성능 개선을 얻을 수 있다. 또한, RBP에서의 불필요한 연산 및 재정렬을 피함으로써 복잡도를 현저하게 줄일 수 있다.
이와 더불어 상기 NVCRBP(Node-wise VCRBP) 방법은 스케줄링 시에 메시지의 업데이트 전후의 값의 차이가 큰 엣지를 선택했던 VCRBP와 달리, 업데이트 전후의 메시지 값의 차가 큰 노드를 선택함으로써 VCRBP에 비해서도 복호 과정의 복잡도를 줄이고 성능은 유지할 수 있다.
그러나, 상기 NVCRBP를 포함한 모든 동적 스케줄링 복호 방식들은 정적 스케줄링 복호 방식에 비하여 업데이트 전후의 차이 값(레지듀얼 값)을 추가적으로 계산하고 정렬해야 함에 따른 복잡도와 대기시간의 증가가 불가피하다는 문제점이 있다.
따라서 본 발명이 이루고자 하는 기술적 과제는 LDPC 부호를 위한 보다 복잡도와 대기시간이 낮은 동적 스케줄링 기법을 이용한 복호 방법 및 장치를 제공하는 데 있다.
또한, 본 발명이 이루고자 하는 기술적 과제는 복잡도와 대기시간을 줄이면서 기존의 동적 스케줄링 기법에 근접한 성능을 내는 복호 방법 및 장치를 제공하는 데 있다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 태양에 따른, 패리티 검사 행렬로부터 복수의 체크 노드와 변수 노드를 정의하고 이를 토대로 복호를 수행하는 방법은, (a) 변수 노드에서 체크 노드로 전달되는 변수-체크 메시지들 중 기 설정된 경계 값보다 큰 정렬 기준값을 가지는 변수-체크 메시지들의 정렬 기준값들을 비교하여 가장 큰 정렬 기준값을 가지는 변수-체크 메시지를 선택하는 단계; (b) 상기 선택된 변수-체크 메시지에 해당하는 제 1 체크 노드에 연결된 제 2 변수 노드에 대하여, 상기 제 1 체크 노드에서 상기 제 2 변수 노드로 전달되는 체크-변수 메시지를 업데이트하는 단계; (c) 상기 제 2 변수 노드에 연결된 제 2 체크 노드에 대하여, 상기 제2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지를 업데이트하는 단계; 및 (d) 상기 (c) 단계에서 업데이트된 변수-체크 메시지를 토대로, 상기 제 2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지의 정렬 기준 값을 산출하는 단계를 포함하는 것을 특징으로 한다.
여기서, 상기 복호 방법은, 상기 선택된 변수-체크 메시지에 해당하는 제 1 변수 노드에서 상기 제 1 체크 노드로 전달되는 변수-체크 메시지들의 정렬 기준 값들을 기 설정된 값으로 초기화시키는 단계를 더 포함할 수 있다.
또한, 상기 (a) 내지 (d) 단계는 순차적으로 복수 회 반복 수행되며, 소정의 종료 조건을 만족하면 상기 반복 수행은 종료될 수 있다.
여기서, 상기 종료 조건은 전체 변수 노드들 중 미리 정해진 비율의 변수 노드들이 한 번씩 선택되는 조건일 수 있다.
또한, 상기 정렬 기준 값은 해당 변수-체크 메시지의 업데이트되기 전의 값과 업데이트된 후의 값의 차이일 수 있다.
또한, 상기 복호 방법은, 상기 (a) 단계 이전에, 체크 노드에서 변수 노드로 전달되는 모든 체크-변수 메시지들을 초기화하는 단계; 및 변수 노드에서 체크 노드로 전달되는 모든 변수-체크 메시지들을 초기화하는 단계를 더 포함할 수 있다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 다른 태양에 따른, 패리티 검사 행렬로부터 복수의 체크 노드와 변수 노드를 정의하고 이를 토대로 복호를 수행하는 방법은, 패리티 검사 행렬로부터 복수의 체크 노드와 변수 노드를 정의하고 이를 토대로 복호를 수행하는 방법에서, (a) 변수 노드에서 체크 노드로 전달되는 변수-체크 메시지들 중에서 정렬 기준값의 부호가 특정 부호인 변수-체크 메시지들 중 어느 하나의 변수-체크 메시지를 선택하는 단계; (b) 상기 선택된 변수-체크 메시지에 해당하는 제 1 체크 노드에 연결된 제 2 변수 노드에 대하여, 상기 제 1 체크 노드에서 상기 제 2 변수 노드로 전달되는 체크-변수 메시지를 업데이트하는 단계; (c) 상기 제 2 변수 노드에 연결된 제 2 체크 노드에 대하여, 상기 제2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지를 업데이트하는 단계; 및 (d) 상기 (c) 단계에서 업데이트된 변수-체크 메시지를 토대로, 상기 제 2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지의 정렬 기준 값을 산출하는 단계를 포함하는 것을 특징으로 한다.
여기서, 상기 정렬 기준값은 해당 변수-체크 메시지가 업데이트되기 전의 값과 상기 해당 변수-체크 메시지가 업데이트된 후의 값의 부호가 반전되면 음수로, 반전되지 않으면 양수로 정의될 수 있다.
여기서, 상기 정렬 기준값은 해당 변수-체크 메시지가 업데이트되기 전의 값의 부호와 상기 해당 변수-체크 메시지가 업데이트된 후의 값의 부호의 곱으로 정의될 수 있다.
또한, 상기 (a) 단계에서 상기 특정 부호는 음수일 수 있다.
또한, 상기 복호 방법은, 상기 선택된 변수-체크 메시지에 해당하는 제 1 변수 노드에서 상기 제 1 체크 노드로 전달되는 변수-체크 메시지들의 정렬 기준 값들을 기 설정된 값으로 초기화시키는 단계를 더 포함할 수 있다.
또한, 상기 (a) 내지 (d) 단계는 순차적으로 복수 회 반복 수행되며, 소정의 종료 조건을 만족하면 상기 반복 수행은 종료될 수 있다.
여기서, 상기 종료 조건은 전체 변수 노드들 중 미리 정해진 비율의 변수 노드들이 한 번씩 선택되는 조건일 수 있다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 태양에 따른, 패리티 검사 행렬로부터 복수의 체크 노드와 변수 노드를 정의하고 이를 토대로 복호를 수행하는 장치는, 변수 노드에서 체크 노드로 전달되는 변수-체크 메시지들 중 기 설정된 경계 값보다 큰 정렬 기준값을 가지는 변수-체크 메시지들의 정렬 기준값들을 비교하여 가장 큰 정렬 기준값을 가지는 변수-체크 메시지를 선택하는 처리부; 상기 선택된 변수-체크 메시지에 해당하는 제 1 체크 노드에 연결된 제 2 변수 노드에 대하여, 상기 제 1 체크 노드에서 상기 제 2 변수 노드로 전달되는 체크-변수 메시지를 업데이트하는 변수 노드 업데이트부; 상기 제 2 변수 노드에 연결된 제 2 체크 노드에 대하여, 상기 제2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지를 업데이트하는 체크 노드 업데이트부; 및 상기 업데이트된 변수-체크 메시지를 토대로, 상기 제 2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지의 정렬 기준 값을 산출하는 기준값 산출부를 포함하는 것을 특징으로 하는 복호 장치.
여기서, 상기 정렬 기준 값은 해당 변수-체크 메시지의 업데이트되기 전의 값과 업데이트된 후의 값의 차이일 수 있다.
또한, 상기 복호 장치는 체크 노드에서 변수 노드로 전달되는 모든 체크-변수 메시지들을 초기화하고, 변수 노드에서 체크 노드로 전달되는 모든 변수-체크 메시지들을 초기화하는 초기화부를 더 포함할 수 있다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 다른 태양에 따른, 패리티 검사 행렬로부터 복수의 체크 노드와 변수 노드를 정의하고 이를 토대로 복호를 수행하는 장치는, 변수 노드에서 체크 노드로 전달되는 변수-체크 메시지들 중에서 정렬 기준값의 부호가 특정 부호인 변수-체크 메시지들 중 어느 하나의 변수-체크 메시지를 선택하는 처리부; 상기 선택된 변수-체크 메시지에 해당하는 제 1 체크 노드에 연결된 제 2 변수 노드에 대하여, 상기 제 1 체크 노드에서 상기 제 2 변수 노드로 전달되는 체크-변수 메시지를 업데이트하는 변수 노드 업데이트부; 상기 제 2 변수 노드에 연결된 제 2 체크 노드에 대하여, 상기 제2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지를 업데이트하는 체크 노드 업데이트부; 및 상기 업데이트된 변수-체크 메시지를 토대로, 상기 제 2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지의 정렬 기준 값을 산출하는 기준값 산출부를 포함하는 것을 특징으로 한다.
여기서, 상기 정렬 기준값은 해당 변수-체크 메시지가 업데이트되기 전의 값과 상기 해당 변수-체크 메시지가 업데이트된 후의 값의 부호가 반전되면 음수로, 반전되지 않으면 양수로 정의될 수 있다.
여기서, 상기 정렬 기준값은 해당 변수-체크 메시지가 업데이트되기 전의 값의 부호와 상기 해당 변수-체크 메시지가 업데이트된 후의 값의 부호의 곱으로 정의될 수 있다.
또한, 상기 특정 부호는 음수일 수 있다.
상기된 본 발명에 의하면, LDPC 부호를 위한 보다 복잡도와 대기시간이 낮은 동적 스케줄링 기법을 이용한 복호 방법 및 장치를 제공하며, 또한, 복잡도와 대기시간을 줄이면서 기존의 동적 스케줄링 기법에 근접한 성능을 내는 복호 방법 및 장치를 제공한다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이하 설명 및 첨부된 도면들에서 실질적으로 동일한 구성요소들은 각각 동일한 부호들로 나타냄으로써 중복 설명을 생략하기로 한다. 또한 본 발명을 설명함에 있어 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대한 상세한 설명은 생략하기로 한다.
본 발명에 따른 복호 방법은 패리티 검사 행렬과 태너 그래프를 이용해서 수행되며, 패리티 검사 행렬은 태너 그래프로 표현될 수 있다. 행의 수만큼의 체크 노드들이 만들어지고, 열의 개수만큼의 변수 노드들이 만들어져 태너 그래프를 형성한다. 만일 행렬의 원소가 1이면 번째 변수 노드와 번째 체크 노드가 에지로 연결되어 서로 이웃하는 노드들이 된다.
LDPC 부호의 반복 복호는 변수 노드와 체크 노드 간의 반복적인 메시지 전달을 통하여 이루어진다. 변수 노드 와 체크 노드 가 이웃하는 노드라고 할 때, 메시지들은 다음과 같이 생성될 수 있다.
여기서, 는 변수 노드 에서 체크 노드 로 전송되는 메시지의 업데이트 함수이며, 이를 변수-체크 메시지라고 명명할 수 있다. 는 체크 노드 에서 변수 노드 로 전송되는 메시지의 업데이트 함수이며, 이를 체크-변수 메시지라고 명명할 수 있다.
이러한 특징을 갖는 LDPC 부호를 이용한 본 발명의 실시 예에 따른 복호 방법을 설명하기 전에, 먼저 일반적인 복호 방법에 대해 설명한다.
LDPC 부호의 일반적인 복호 방법은 번째 반복 과정에서 체크-변수 메시지는 번째 반복 과정에서 얻어진 변수-체크 메시지 값을 사용하여 업데이트 된다. 그런 다음, 모든 변수-체크 메시지들은 이전 단계에서 새롭게 얻어진 체크-변수 메시지를 사용하여 업데이트 된다. 이러한 과정은 정지 조건이 만족될 때까지 계속된다. 여기서 변수-체크 메시지는 위의 수학식 1로 나타낼 수 있으며, 체크-변 수 메시지는 수학식 2로 나타낼 수 있다.
특히, NVCRBP 복호 방식은 레지듀얼(residual)이라 불리는 정렬 기준 값을 가장 크게 갖는 메시지를 우선 업데이트하는 방식이다. 이때, 정렬 기준 값은 업데이트 전후의 변수-체크 메시지 값의 차이로부터 산출되며, 다음과 같이 나타낼 수 있다.
도 1은 NVCRBP 방법에 따른 복호 과정을 설명하기 위한 참고도이고, 도 2는 NVCRBP 방법에 따른 복호 알고리즘의 수도코드를 나타낸다. 도 1을 참조하면, NVCRBP 방법에 따른 복호 과정은 두 단계로 나타낼 수 있다. 도 1에서, 변수 노드와 체크 노드는 각각 원과 사각형으로 나타내었다.
첫 번째 단계(도 1의 (a))에서, 가장 큰 정렬 기준 값을 가지는 변수-체크 메시지에 해당하는 변수 노드를 선택한다. 예컨대, 변수 노드 가 선택되었다고 하자. 선택된 변수 노드 와 이웃 체크 노드 에 대응되는 의 값들 중 일부가 크게 변화하므로, 해당 체크 노드에 연결된 변수 노드들이 다른 값으로 결정될 확률이 높다. 그러므로 해당 변수 노드에 대한 변수-체크 메시지를 먼저 업데이트하면 다른 노드들을 바르게 결정하는데 도움이 되어 전체 복호 속도 를 향상시킬 수 있다. 따라서 가장 큰 값의 정렬 기준 값을 가지는 변수-체크 메시지를 포함하는 변수 노드를 먼저 선택하는 것이다.
이후, 선택된 변수 노드 에 대응되는 모든 에 해당하는 에지들을 다음 처리 대상에서 제외시킨다. 즉, 변수 노드 와 이웃 체크노드 들에 연결된 에지를 통하여 전송되는 변수-체크 메시지의 정렬 기준 값을 0으로 처리하여 (), 현재의 반복 복호 과정에서 더 이상 선택되지 않도록 한다. 이는 도 1의 (a)에서 점선으로 표시되었다. 그런 다음, 모든 에 대해 값들을 이용하여 값들을 계산하고 업데이트한다. 즉, 번째 체크 노드에 연결되어 있는 변수 노드들 중에서 상기에서 제외 처리된 에지에 연결된 번째 변수 노드()를 제외한 모든 변수 노드들()에 대하여 체크-변수 메시지 값을 산출한다.
다음 두 번째 단계(도 1의 (b))에서, 모든 에 대해서 값 및 를 계산한다. 구체적으로, 새롭게 얻어진 변수-체크 메시지들에 대한 값()을 토대로, 체크 노드들()에 연결된 변수 노드들 중에서 상기에서 제외 처리된 에지에 연결된 번째 변수 노드()를 제외한 변수 노드들()에 대한 체크-변수 메시지들의 업데이트 전후의 차이 값인 정렬 기준 값()을 산출한다.
이처럼 변수-체크 메시지들에 대한 업데이트 전후의 값들의 차이를 토대로 스케줄링이 이루어지는데 변수 노드들()에서 체크 노드들()로 전달되는 메시지가 업데이트되었기 때문에, 이러한 메시지들에 대응하는 에지들에 대한 정렬 기준 값들을 산출해주는 단계가 수행되는 것이다.
위의 단계들을 통하여, 모든 메시지(또는 에지)들은 한 번의 반복 복호 과정 내에서 한 번씩만 업데이트 된다.
상기된 NVCRBP 복호 방법은, 빠른 복호 수렴속도를 가지는 효과적인 복호 방법임에도 불구하고, 복잡도와 대기시간을 개선할 필요가 있다. 다시 말하면, 기존에 제안된 다른 동적 스케줄링 복호 방식들과 마찬가지로, NVCRBP 방식은 정적 스케줄링 복호 방식에 비하여 업데이트 전후의 차이 값(레지듀얼 값)을 추가적으로 계산하고 정렬해야함에 따른 복잡도와 대기시간의 증가가 불가피하다는 문제점이 있다.
따라서 본 발명의 실시예에서는 동적 스케줄링 복호 방식의 단점인 복잡도와 대기시간의 증가를 최소화시키는 복호 방법을 제공하고자 한다. 특히 복잡도와 대기시간은 증가는 최소화하면서 성능은 기존의 동적 스케줄링 복호 방식과 거의 근접하도록 한다.
도 3은 본 발명의 제 1 실시예에 따른 복호 방법의 흐름도이다. 본 발명의 제 1 실시 예에 따른 방법은 강제수렴 NVCRBP(forced-convergence NVCRBP, 이하 FC-NVCRBP) 방법이라고 명명하기로 한다.
먼저, 도 3에 도시된 바와 같이, 체크 노드에서 변수 노드로 전달되는 모든 체크-변수 메시지들의 값을 제 1 값(여기서는 "0")으로 초기화() 하고(S100), 변수 노드에서 체크 노드로 전달되는 모든 변수-체크 메시지들의 값을 제 2 값(여기서는 이며, 이는 채널 값을 나타낸다.)으로 초기화()한다(S110).
다음으로, 초기의 복호 과정에서는 이전에 수행된 복호 과정이 없으므로, 모든 정렬 기준값을 으로 초기화한다(S120). 단, 이때에는 해당 메시지에 대하여 업데이트 대상에서 제외시키지 않는다.
다음으로, 메시지의 업데이트를 위하여 변수-체크 메시지()를 선택하는데, 상기 초기화 다음에는 변수-체크 메시지()를 임의로 선택한다. 예를 들어 연결된 체크 노드의 수가 가장 많은 변수 노드에 해당하는 변수-체크 메시지 중 하나를 선택할 수 있다. 그러나 그 이후로는 후술할 S185단계를 통하여 기 설정된 경계 값(rth)보다 큰 정렬 기준값을 가지는 변수-체크 메시지들 중에서 가장 큰 정렬 기준값을 가지는 변수-체크 메시지를 선택한다(S130). 변수-체크 메시지()가 선택되면 그에 해당하는 변수 노드()가 선택된다.
다음으로, 상기 선택된 변수-체크 메시지에 해당하는 변수 노드()에서 그 에 연결된 체크 노드()로 전달되는 변수-체크 메시지의 정렬 기준값들을 기 설정된 값(여기서는 "0")으로 초기화한다. 즉, 모든 에 대하여 정렬 기준 값을 0으로 함으로써(), 처리 대상에서 제외시킨다(S140).
그리고 도 1의 (a)에서와 같이, 모든 에 대하여, 이전에 계산된(혹은 초기화된) 값들을 이용하여 값들을 계산하여 업데이트한다. 즉, 체크 노드()에 연결되어 있는 변수 노드들 중에서 번째 변수 노드()를 제외한 모든 변수 노드들()에 대하여, 체크-변수 메시지들의 값 들을 계산하여 업데이트한다(S150).
그런 다음, 도 1의 (b)에서와 같이, 모든 에 대하여, 이전 단계(S150)에서 계산된 값들을 이용하여 값들을 계산하여 업데이트한다. 즉, 변수 노드들()에 연결되어 있는 체크 노드들 중에서 체크 노드()를 제외한 체크 노드들()에 대한 변수-체크 메시지들의 값 들을 계산하여 업데이트한다(S160).
다음으로, 복호 과정을 종료하기 위한 소정의 종료 조건이 만족되었는지를 판단하여(S170), 종료 조건이 만족되지 않은 경우에는, 이전 단계(S160)에서 구해진 변수-체크 메시지들()의 값을 토대로 업데이트 전후의 차이 값인 정렬 기 준 값()을 산출한다(S180). 상기 정렬 기준값은 해당 변수-체크 메시지의 업데이트되기 전의 값과 업데이트된 후의 값의 차이로서, 다음과 같이 나타낼 수 있다.
그리고, 정렬 기준값이 이 기 설정된 경계 값()보다 큰(>) 변수-체크 메시지들의 정렬 기준값을 서로 비교하고(S185), 가장 큰 정렬 기준값을 가지는 변수-체크 메시지를 선택한다(S130). 즉, 상기 수학식 4를 토대로 변수 체크 메시지들의 정렬 기준값 을 구한 다음에, 모든 변수-체크 메시지들의 정렬 기준값 들 중에서 경계값()보다 큰 정렬 기준값들끼리만 비교하여 가장 큰 정렬 기준값을 가지는 변수-체크 메시지를 선택한다.
종료 조건(S170)에 따라서 상기 단계들(S130~S185)은 순차적으로 반복 수행된다. 즉, 종료 조건이 만족하면 복호 과정은 종료된다. 종료 조건은 일반적으로 상기 단계들(S130~S185)의 반복을 통해 모든 변수 노드가 선택되면 종료되는 조건 으로 할 수 있다. 또한, 반복 복호에서는 도 3에 도시된 복호 과정 전체가 미리 정해진 횟수만큼 반복된다.
상술한 본 발명의 제 1 실시예에 의하면, 기 설정된 경계값보다 큰 정렬 기준값을 가지는 변수-체크 메시지들의 정렬 기준값들끼리만 비교함으로써, 변수-체크 메시지의 정렬 기준값이 상기 경계값보다 작은 경우 그 변수-체크 메시지는 수렴된 것으로 보고 업데이트 및 비교 대상에서 제외시키게 된다. 따라서 불필요한 연산량과 비교 대상을 줄임으로써 복호 복잡도 뿐만 아니라 대기시간도 감소시킬 수 있다.
한편, 상술한 본 발명의 제 1 실시예에 따른 복호 방법에 의하면, 메시지의 업데이트 전후의 차이가 가장 큰 메시지(또는 에지)에 해당하는 변수 노드를 선택한다. 이로 인하여, 한 번에 하나의 노드가 선택되며, 한 번의 복호 과정이 끝나기 위해서는 모든 노드가 선택되어야 한다.
그런데 상기 경계값()은 실험적인 값이기 때문에 목표로 하는 성능을 얻기 위하여 얼마나 큰 경계값을 설정해야하는지 매번 예측하는 것은 쉽지 않다. 그러므로 복호에 사용할 메시지들을 선택함에 있어서 실제 사용할 메시지의 비율을 정하여 복잡도와 대기시간을 줄일 수 있는데 이러한 방법을 근사 FC-NVCRBP(Approximate FCNVCRBP, 이하 AFC-NVCRBP) 방법이라 명명하기로 한다.
근사 FC-NVCRBP 방법은, 종료 조건(S170)으로 상기된 일반적인 종료 조건을 사용하지 않고, 한 번의 복호 과정이 끝나기 위하여 모든 변수 노드가 한 번씩 선택되는 것이 아니라, 전체 변수 노드들 중 미리 정해진 비율의 변수 노드들이 한 번씩 선택되면 종료되는 조건으로 한다. 예컨대, 상기 비율을 50%로 하고, 종료 조건(S170)에서 상기 단계들(S130~S185)의 반복을 통해 전체 변수 노드들 중 50% 이상의 변수 노드가 한 번씩 선택되었는지 검사하여, 그러한 경우에 복호 과정을 종료한다. 근사 FC-NVCRBP 방법에 의하면, 강제수렴 NVCRBP 방법에 비해 복잡도와 대기 시간을 더욱 줄일 수 있다.
도 4는 본 발명의 제 2 실시 예에 따른 복호 방법의 흐름도이다. 본 발명의 제 2 실시 예에 따른 방법은, 부호기반 NVCRBP(sign-based NVCRBP, 이하 S-NVCRBP) 방법이라고 명명하기로 한다.
먼저, 도 4에 도시된 바와 같이, 체크 노드에서 변수 노드로 전달되는 모든 체크-변수 메시지들의 값을 제 1 값(여기서는 "0")으로 초기화() 하고(S200), 변수 노드에서 체크 노드로 전달되는 모든 변수-체크 메시지들의 값을 제 2 값(여기서는 이며, 이는 채널 값을 나타낸다.)으로 초기화()한다(S210).
다음으로, 초기의 복호 과정에서는 이전에 수행된 복호 과정이 없으므로, 모든 정렬 기준값을 으로 초기화한다(S220). 단, 이때에는 해당 메시지에 대하여 업데이트 대상에서 제외시키지 않는다.
다음으로, 메시지의 업데이트를 위하여 변수-체크 메시지()를 선택하는데, 상기 초기화 다음에는 변수-체크 메시지()를 임의로 선택한다. 예를 들어 연결된 체크 노드의 수가 가장 많은 변수 노드에 해당하는 변수-체크 메시지 중 하나를 선택할 수 있다. 그러나 그 이후로는 후술할 S280단계를 통하여 계산된 정렬 기준값 의 부호에 따라서 의 부호가 특정 부호인 변수-체크 메시지들 중 어느 하나의 변수-체크 메시지를 선택한다(S230). 변수-체크 메시지()가 선택되면 그에 해당하는 변수 노드()가 선택된다.
다음으로, 상기 선택된 변수-체크 메시지에 해당하는 변수 노드()에서 그에 연결된 체크 노드()로 전달되는 변수-체크 메시지의 정렬 기준값들을 기 설정된 값(여기서는 "0")으로 초기화한다. 즉, 모든 에 대하여 정렬 기준 값을 0으로 함으로써(), 처리 대상에서 제외시킨다(S240).
그리고 도 1의 (a)에서와 같이, 모든 에 대하여, 이전에 계산된(혹은 초기화된) 값들을 이용하여 값들을 계산하여 업데이트한다. 즉, 체크 노드()에 연결되어 있는 변수 노드들 중에서 번째 변수 노드()를 제외한 모든 변수 노드들()에 대하여, 체크-변수 메시지들의 값 들을 계산하여 업데이트한다(S250).
그런 다음, 도 1의 (b)에서와 같이, 모든 에 대하여, 이전 단계(S250)에서 계산된 값들을 이용하여 값들을 계산하여 업데이 트한다. 즉, 변수 노드들()에 연결되어 있는 체크 노드들 중에서 체크 노드()를 제외한 체크 노드들()에 대한 변수-체크 메시지들의 값 들을 계산하여 업데이트한다(S260).
다음으로, 복호 과정을 종료하기 위한 소정의 종료 조건이 만족되었는지를 판단하여(S270), 종료 조건이 만족되지 않은 경우에는, 이전 단계(S260)에서 구해진 변수-체크 메시지들()의 값을 토대로 정렬 기준 값()을 산출한다.(S280). 본 실시예에서 상기 정렬 기준값()은 해당 변수-체크 메시지의 업데이트되기 전의 값과 업데이트된 후의 값의 부호가 반전되었는지 여부를 나타내는 값이다. 예컨대, 정렬 기준값()은 해당 변수-체크 메시지의 업데이트 전후에 부호가 반전되면 음수(여기서는 "-1")로, 반전되지 않으면 양수로(여기서는 "1") 정의될 수 있다. 업데이트 전후에 그 부호가 반전되는 변수-체크 메시지는 업데이트 전후의 차이 값이 크다고 추정할 수 있으므로, 그에 해당하는 변수 노드에 대한 변수-체크 메시지를 먼저 업데이트할 수 있다.
정렬 기준값은 또한 다음과 같이 변수-체크 메시지의 업데이트되기 전의 값의 부호와 업데이트된 후의 값의 부호의 곱으로 정의될 수 있다.
여기서, 는 업데이트에 의하여 새로이 산출된 변수-체크 메시지의 값 을 나타내며 의 값이 양수이면 로 의 값이 음수이면 로 정의한다. 따라서 변수-체크 메시지의 값의 부호가 업데이트 전후로 반전되면 이고 그렇지 않은 경우 이 된다.
S280 단계 이후에, S230 단계에서는, 정렬 기준값 이 에 해당하는 변수-체크 메시지들 중 어느 하나의 변수-체크 메시지와 그에 해당하는 변수 노드를 선택한다. 여기서, 임의의 변수-체크 메시지를 선택하여 그에 해당하는 변수 노드를 선택할 수 있으나, 바람직하게는 연결된 체크 노드의 수가 가장 많은 변수 노드를 선택할 수 있다. 만약 을 만족하는 변수-체크 메시지가 없다면, 미리 정해진 기준에 따라서(예를 들어 연결된 체크 노드의 수가 가장 많은 변수 노드) 변수 노드를 선택한다.
상기된 제 1 실시예와 마찬가지로, 종료 조건(S270)에 따라서 상기 단계들(S230~S280)은 순차적으로 반복 수행된다. 즉, 종료 조건이 만족하면 복호 과정은 종료된다. 종료 조건은 일반적으로 상기 단계들(S230~S280)의 반복을 통해 모든 변수 노드가 선택되면 종료되는 조건으로 할 수 있다. 또한, 반복 복호에서는 도 4에 도시된 복호 과정 전체가 미리 정해진 횟수만큼 반복된다.
상술한 제 2 실시예에도 역시 상기된 근사 FC-NVCRBP 방법이 적용될 수 있다. 즉, 종료 조건(S270)으로 상기된 일반적인 종료 조건을 사용하지 않고, 한 번의 복호 과정이 끝나기 위하여 모든 변수 노드가 한 번씩 선택되는 것이 아니라, 전체 변수 노드들 중 미리 정해진 비율의 변수 노드들이 한 번씩 선택되면 종료되는 조건으로 할 수 있다. 이러한 방법을 AFC-S-NVCRBP 방법이라 명명하기로 한다.
상술한 본 발명의 제 2 실시예에 의하면, 정렬 기준값을 단순히 변수-체크 메시지의 업데이트되기 전의 값의 부호와 업데이트된 후의 값의 부호의 곱으로 정의하고 이러한 정렬 기준값의 부호에 따라서 변수-체크 메시지를 선택함으로써, 업데이트 전후의 차이 값 연산과 정렬 기준값의 비교 연산을 수행하지 않아도 되므로 복잡도와 대기 시간을 현저히 감소시킬 수 있다.
위에 기술된 바와 같은 본 발명의 실시예들에 따른 복호 방법들은 다음과 같은 구조로 이루어지는 복호 장치를 통하여 구현될 수 있다.
본 발명의 실시예에 따른 복호 장치는 패리티 검사 행렬과 태너 그래프를 이용해서 본 발명의 실시 예에 따른 복호 방법들을 토대로 입력되는 수신 신호에 대한 복호를 수행한다. 입력되는 수신 신호는 복호되기 위해 길이 의 부호어로 처리될 수 있다. 검사 행렬은 태너 그래프로 표현될 수 있다. 행의 수만큼의 체크 노드들이 만들어지고, 열의 개수만큼의 변수 노드들이 만들어져서 태너 그래프를 형성한다. 만일 행렬의 원소가 1이면 번째 변수 노드와 번째 체크 노드가 에지로 연결되어 서로 이웃하는 노드들이 된다.
도 5는 본 발명의 실시예에 따른 복호 장치의 블록도이다.
본 발명의 실시 예에 따른 복호 장치는 첨부한 도 5에 도시된 바와 같이, 모든 변수 노드에서 모든 체크 노드로 전달되는 변수-체크 메시지들을 초기화하고, 모든 체크 노드에서 모든 변수 노드로 전달되는 체크-변수 메시지들을 초기화 하는 초기화부(10), 변수 노드에서 체크 노드로 전달되는 변수-체크 메시지들의 업데이트를 수행하는 체크 노드 업데이트부(20), 체크 노드에서 변수 노드로 전달되는 체크-변수 메시지들의 업데이트를 수행하는 변수 노드 업데이트부(30), 스케줄링을 위한 정렬 기준 값 즉, 변수-체크 메시지의 업데이트되기 전의 값과 업데이트된 후의 값의 차이(혹은, 변수-체크 메시지의 업데이트되기 전의 값의 부호와 업데이트된 후의 값의 부호의 곱)을 산출하는 기준값 산출부(40), 산출된 정렬 기준 값들을 토대로 소정의 변수-체크 메시지와 그에 해당하는 변수 노드를 선택하고, 그에 따라 체크 노드 업데이트부(20), 변수 노드 업데이트부(30)를 동작시켜 복호를 수행하는 처리부(50)을 포함하며, 이외에도 체크 노드 업데이트부(20), 변수 노드 업데이트부(30)에 의한 업데이트 결과가 저장되는 메모리(60)를 더 포함할 수 있다.
처리부(50)는 위에 기술된 바와 같은 복호 방법들을 토대로 변수-체크 메시지들 중 기 설정된 경계 값보다 큰 정렬 기준값을 가지는 변수-체크 메시지들의 정렬 기준값들을 비교하여 가장 큰 정렬 기준값을 가지는 변수-체크 메시지를 선택하거나, 또는 정렬 기준값의 부호가 특정 부호인 변수-체크 메시지들 중 어느 하나의 변수-체크 메시지를 선택한다. 그리고 이를 토대로 변수 노드 업데이트부(30)와 체크 노드 업데이트부(20)를 동작시킨다.
상술한 본 발명의 실시예들에 따른 복호 방법을 적용하여 모의 실험한 결과 다음과 같은 결과를 얻을 수 있었다.
도 6은 본 발명의 제 1 실시 예에 따른 복호 방법 FC-NVCRBP와 제 2 실시 예 에 따른 복호 방법 S-NVCRBP 성능을 기존의 복호 방법들(BP, LBP, NRBP, NVCRBP)과 비교하여 나타낸 그래프이다. 특히 도 6은 IEEE 802.16e 표준의 부호길이 576, 부호율1/2인 부호를 사용하고 최대 반복횟수를 8번으로 고정한 경우, 각 방법들에 따른 FER(Frame Error Rate)을 나타낸 그래프이다. 도 6을 참조하면, 본 발명의 제 1 실시 예에 따른 복호 방법으로, FC-NVCRBP가 NRBP보다 절반 이하의 낮은 복잡도와 대기 시간으로 더 나은 성능을 보인다. 또한, 본 발명의 제 2 실시예에 따른 복호 방법으로, S-NVCRBP 역시 복잡도와 대기 시간을 현저하게 줄이면서 NVCRBP에 매우 근접한 성능을 보인다.
도 7은 신호대 잡음비(SNR)를 2.5dB로 고정하고 반복 복호 횟수를 최대 50회까지 증가시키면서, 본 발명의 제 1 실시예에 따른 복호 방법 FC-NVCRBP와 제 2 실시예에 따른 복호 방법 S-NVCRBP의 오류 정정 성능을 기존의 복호 방법들(BP, LBP, NRBP, NVCRBP)와 비교하여 나타낸 그래프이다. 도 7을 참조하면, 본 발명의 실시예에 따른 복호 방법들이 작은 반복 복호 횟수에서 뿐만 아니라 많은 반복 복호 후에도 NVCRBP에 비하여 낮은 복잡도와 대기시간으로 근접한 성능을 보임을 확인할 수 있다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인 터넷을 통한 전송)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
도 1은 NVCRBP 방법에 따른 복호 과정을 설명하기 위한 참고도이다.
도 2는 NVCRBP 방법에 따른 복호 알고리즘의 수도코드를 나타낸다.
도 3은 본 발명의 제 1 실시예에 따른 복호 방법의 흐름도이다.
도 4는 본 발명의 제 2 실시 예에 따른 복호 방법의 흐름도이다.
도 5는 본 발명의 실시예에 따른 복호 장치의 블록도이다.
도 6 및 도 7은 본 발명의 실시예들에 따른 복호 방법의 성능을 나타내는 그래프이다.
Claims (20)
- 패리티 검사 행렬로부터 복수의 체크 노드와 변수 노드를 정의하고 이를 토대로 복호를 수행하는 방법에서,(a) 변수 노드에서 체크 노드로 전달되는 변수-체크 메시지들 중 기 설정된 경계 값보다 큰 정렬 기준값을 가지는 변수-체크 메시지들의 정렬 기준값들을 비교하여 가장 큰 정렬 기준값을 가지는 변수-체크 메시지를 선택하는 단계;(b) 상기 선택된 변수-체크 메시지에 해당하는 제 1 체크 노드에 연결된 제 2 변수 노드에 대하여, 상기 제 1 체크 노드에서 상기 제 2 변수 노드로 전달되는 체크-변수 메시지를 업데이트하는 단계;(c) 상기 제 2 변수 노드에 연결된 제 2 체크 노드에 대하여, 상기 제2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지를 업데이트하는 단계; 및(d) 상기 (c) 단계에서 업데이트된 변수-체크 메시지를 토대로, 상기 제 2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지의 정렬 기준 값을 산출하는 단계를 포함하고,상기 (a) 내지 (d) 단계는 순차적으로 복수 회 반복 수행되며, 소정의 종료 조건을 만족하면 상기 반복 수행은 종료되고,상기 종료 조건은 전체 변수 노드들 중 미리 정해진 비율의 변수 노드들이 한 번씩 선택되는 조건인 것을 특징으로 하는 복호 방법.
- 제 1 항에 있어서,상기 선택된 변수-체크 메시지에 해당하는 제 1 변수 노드에서 상기 제 1 체크 노드로 전달되는 변수-체크 메시지들의 정렬 기준 값들을 기 설정된 값으로 초 기화시키는 단계를 더 포함하는 것을 특징으로 하는 복호 방법.
- 삭제
- 삭제
- 제 1 항에 있어서,상기 정렬 기준 값은 해당 변수-체크 메시지의 업데이트되기 전의 값과 업데이트된 후의 값의 차이인 것을 특징으로 하는 복호 방법.
- 제 1 항에 있어서,상기 (a) 단계 이전에,체크 노드에서 변수 노드로 전달되는 모든 체크-변수 메시지들을 초기화하는 단계; 및변수 노드에서 체크 노드로 전달되는 모든 변수-체크 메시지들을 초기화하는 단계를 더 포함하는 것을 특징으로 하는 복호 방법.
- 패리티 검사 행렬로부터 복수의 체크 노드와 변수 노드를 정의하고 이를 토대로 복호를 수행하는 방법에서,(a) 변수 노드에서 체크 노드로 전달되는 변수-체크 메시지들 중에서 정렬 기준값의 부호가 특정 부호인 변수-체크 메시지들 중 어느 하나의 변수-체크 메시지를 선택하는 단계;(b) 상기 선택된 변수-체크 메시지에 해당하는 제 1 체크 노드에 연결된 제 2 변수 노드에 대하여, 상기 제 1 체크 노드에서 상기 제 2 변수 노드로 전달되는 체크-변수 메시지를 업데이트하는 단계;(c) 상기 제 2 변수 노드에 연결된 제 2 체크 노드에 대하여, 상기 제2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지를 업데이트하는 단계; 및(d) 상기 (c) 단계에서 업데이트된 변수-체크 메시지를 토대로, 상기 제 2 변수 노드에서 상기 제 2 체크 노드로 전달되는 변수-체크 메시지의 정렬 기준 값을 산출하는 단계를 포함하고,상기 (a) 내지 (d) 단계는 순차적으로 복수 회 반복 수행되며, 소정의 종료 조건을 만족하면 상기 반복 수행은 종료되고,상기 종료 조건은 전체 변수 노드들 중 미리 정해진 비율의 변수 노드들이 한 번씩 선택되는 조건인 것을 특징으로 하는 복호 방법.
- 제 7 항에 있어서,상기 정렬 기준값은 해당 변수-체크 메시지가 업데이트되기 전의 값과 상기 해당 변수-체크 메시지가 업데이트된 후의 값의 부호가 반전되면 음수로, 반전되지 않으면 양수로 정의되는 것을 특징으로 하는 복호 방법.
- 제 8 항에 있어서,상기 정렬 기준값은 해당 변수-체크 메시지가 업데이트되기 전의 값의 부호와 상기 해당 변수-체크 메시지가 업데이트된 후의 값의 부호의 곱으로 정의되는 것을 특징으로 하는 복호 방법.
- 제 8 항에 있어서,상기 (a) 단계에서 상기 특정 부호는 음수인 것을 특징으로 하는 복호 방법.
- 제 7 항에 있어서,상기 선택된 변수-체크 메시지에 해당하는 제 1 변수 노드에서 상기 제 1 체크 노드로 전달되는 변수-체크 메시지들의 정렬 기준 값들을 기 설정된 값으로 초기화시키는 단계를 더 포함하는 것을 특징으로 하는 복호 방법.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090133678A KR101112121B1 (ko) | 2009-12-30 | 2009-12-30 | 저밀도 패리티 검사 부호를 위한 복잡도와 대기시간을 줄인 동적 스케줄링 기법을 이용한 복호 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090133678A KR101112121B1 (ko) | 2009-12-30 | 2009-12-30 | 저밀도 패리티 검사 부호를 위한 복잡도와 대기시간을 줄인 동적 스케줄링 기법을 이용한 복호 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110077189A KR20110077189A (ko) | 2011-07-07 |
KR101112121B1 true KR101112121B1 (ko) | 2012-03-14 |
Family
ID=44916796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090133678A KR101112121B1 (ko) | 2009-12-30 | 2009-12-30 | 저밀도 패리티 검사 부호를 위한 복잡도와 대기시간을 줄인 동적 스케줄링 기법을 이용한 복호 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101112121B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103973316B (zh) * | 2013-02-04 | 2017-08-08 | 爱思开海力士有限公司 | 具有使用定标常数的可变节点更新器的解码方法和解码系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060068168A (ko) * | 2004-12-16 | 2006-06-21 | 한국전자통신연구원 | 저 복잡도 ldpc복호 장치 및 그 방법 |
-
2009
- 2009-12-30 KR KR1020090133678A patent/KR101112121B1/ko not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060068168A (ko) * | 2004-12-16 | 2006-06-21 | 한국전자통신연구원 | 저 복잡도 ldpc복호 장치 및 그 방법 |
Non-Patent Citations (1)
Title |
---|
Jung-Hyun Kim et al. "Reduced complexity and latency variable to check residual belief propagation decoding algorithms for LDPC codes," IWSDA '09, pp. 76-69, 19-23 Oct. 2009. |
Also Published As
Publication number | Publication date |
---|---|
KR20110077189A (ko) | 2011-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101431162B1 (ko) | 주변 신뢰도에 따른 서열화를 이용한 메시지 전달 디코딩 방법 | |
KR100891782B1 (ko) | 고속 데이터 전송 시스템에서 순방향 오류 정정 장치 및방법 | |
CN102412847B (zh) | 用联合节点处理来解码低密度奇偶校验码的方法和设备 | |
KR100846869B1 (ko) | 저 복잡도 ldpc복호 장치 및 그 방법 | |
TWI411912B (zh) | 使用寫入驗證之代碼之錯誤底限減緩 | |
US8826109B2 (en) | LDPC decoder irregular decoding of regular codes | |
KR101718543B1 (ko) | 개선된 비트 반전 알고리즘 기반의 저밀도 패리티 검사 부호를 위한 복호 방법, 장치 및 이를 위한 기록 매체 | |
KR100804793B1 (ko) | 저밀도 패러티 검사 복호기에서의 검사 노드 갱신 방법 | |
US8650451B2 (en) | Stochastic stream decoding of binary LDPC codes | |
JP2009100222A (ja) | 低密度パリティ検査符号の復号装置およびその方法 | |
TW201126918A (en) | Improved turbo-equalization methods for iterative decoders | |
CN106803759A (zh) | 基于高斯构造的Polar码有效自适应译码方法 | |
JP4253332B2 (ja) | 復号装置、方法およびプログラム | |
CN110233628B (zh) | 极化码的自适应置信传播列表译码方法 | |
CN110784232B (zh) | 一种空间耦合ldpc码滑窗译码方法 | |
US10892783B2 (en) | Apparatus and method for decoding polar codes | |
KR20060032464A (ko) | 효율적인 저밀도 패리티 검사 코드 복호 방법 및 장치 | |
CN113328756B (zh) | 用于提升分层qc-ldpc译码器硬件处理性能的方法 | |
Hatami et al. | A threshold-based min-sum algorithm to lower the error floors of quantized LDPC decoders | |
CN111130567B (zh) | 添加噪声扰动和比特翻转的极化码置信传播列表译码方法 | |
KR20130012549A (ko) | Ldpc 부호화, 복호화 방법 및 그 방법을 이용하는 장치 | |
CN114421971A (zh) | 一种适用于多元ldpc码的动态多符号翻转译码方法 | |
CN107872231B (zh) | Ldpc译码方法与装置 | |
KR101112121B1 (ko) | 저밀도 패리티 검사 부호를 위한 복잡도와 대기시간을 줄인 동적 스케줄링 기법을 이용한 복호 방법 및 장치 | |
CN111130564A (zh) | 译码方法及装置 |
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 | ||
FPAY | Annual fee payment |
Payment date: 20150202 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20160125 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |