KR101257776B1 - 상태-체크 코드를 이용한 부호화 방법 및 부호화 장치 - Google Patents

상태-체크 코드를 이용한 부호화 방법 및 부호화 장치 Download PDF

Info

Publication number
KR101257776B1
KR101257776B1 KR1020110101970A KR20110101970A KR101257776B1 KR 101257776 B1 KR101257776 B1 KR 101257776B1 KR 1020110101970 A KR1020110101970 A KR 1020110101970A KR 20110101970 A KR20110101970 A KR 20110101970A KR 101257776 B1 KR101257776 B1 KR 101257776B1
Authority
KR
South Korea
Prior art keywords
state
bits
bit
check
iteration
Prior art date
Application number
KR1020110101970A
Other languages
English (en)
Other versions
KR20130037523A (ko
Inventor
정규혁
Original Assignee
단국대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 단국대학교 산학협력단 filed Critical 단국대학교 산학협력단
Priority to KR1020110101970A priority Critical patent/KR101257776B1/ko
Publication of KR20130037523A publication Critical patent/KR20130037523A/ko
Application granted granted Critical
Publication of KR101257776B1 publication Critical patent/KR101257776B1/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/033Theoretical methods to calculate these checking 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • 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/6561Parallelized implementations

Abstract

개시된 기술은 데이터의 부호화(encoding) 방법에 관한 것으로서, 보다 상세하지만 제한됨 없이는, 상태 체크 코드(state-check codes)를 이용한 상태-체크 부호화 방법 및 상태-체크 부호화 장치에 관한 것이다. 실시예들 중에서 상태-체크 부호화 방법은, 정보 비트들 중 이전에 입력되지 않은 어느 하나의 비트를 입력 받는 단계; 상기 입력 받는 비트에 따라 현재 상태에서 다음 상태로 천이하는 단계; 상기 입력 받는 단계 및 상기 천이하는 단계를 복수 회 반복하는 단계; 마지막 반복에서 천이된 상태에 따라 상태-체크 비트들을 결정하는 단계; 및 상기 정보 비트들 및 상기 상태-체크 비트들을 결합하여 부호어를 생성하는 단계를 포함한다.

Description

상태-체크 코드를 이용한 부호화 방법 및 부호화 장치{METHOD AND APPARATUS FOR ENCOING USING STATE-CHECK CODE}
개시된 기술은 데이터의 부호화(encoding) 방법에 관한 것으로서, 보다 상세하지만 제한됨 없이는, 상태 체크 코드(state-check codes, SC 코드)를 이용한 상태-체크 부호화 방법 및 상태-체크 부호화 장치에 관한 것이다. 본 명세서에서 새로이 제안하는 상태-체크 코드는 부호화(encoding) 및 복호화(decoding) 연산 처리 속도를 빠르게 할 수 있고, 필요로 하는 저장 공간을 줄일 수 있으며, 오류 정정 성능을 향상시킬 수 있다는 장점이 있다. 본 명세서에 개시된 기술은 다양한 범위에 응용될 수 있지만, 특히 강화된 프로세서를 가진 통신 단말기에서 병렬 프로세스를 통한 연산속도 향상, 및 저장 공간을 효율적으로 사용하는 데 활용될 수 있다.
통신에 있어서 일반적으로 부호화(encoding)라 함은 송신 측에서 송신된 데이터가 통신 채널을 통하여 전송되는 과정에서 발생하는 신호의 일그러짐, 손실 등에 의한 오류에도 불구하고 수신 측에서 원래의 데이터를 복원할 수 있도록 하기 위해 송신 측에서 데이터를 처리 하는 과정을 의미한다. 원래의 데이터의 크기를 줄여서 전송과 저장 등을 용이하게 하는 소스 부호화(source coding)와 구분하여 이를 채널 부호화(channel coding)라 한다. 복호화(decoding)는 부호화되어 송신된 신호를 수신 측에서 원래의 데이터로 복원하는 과정이다. 부호화를 한다는 것은 통상 길이 K의 정보 시퀀스(정보 비트들)를 길이 N의 코드로 만드는 것이다. 신호 전송경로가 불안정한 무선 랜(LAN)이나 이동통신의 경우 코드의 길이 N을 정보시퀀스 길이 K 보다 상당히 크게 만든다. 즉, 부호화된 코드에는 전송되어야 할 데이터가 상당히 반복되어 있다. 양방향 통신에서, 정보 시퀀스를 포함하는 데이터를 전송함에 있어서 수신 측이 데이터를 복원하지 못하게 되면 송신 측은 데이터를 다시 전송한다. 이러한 데이터의 반복 전송은 전송속도를 떨어트리게 되므로, 이러한 반복 전송을 줄일 수 있는 채널 부호화 기술들이 연구되어 왔다.
채널 부호화는 블록부호(block codes)와 콘볼루션 부호(convolution codes)로 크게 나누어진다. 블록부호는 K비트의 입력 정보(data sequences)를 N비트의 출력부호(codes)로 만들어내는 것이다. 콘볼루션 부호는 코드화시킬 때 현재 입력되는 신호에 과거의 일부 신호를 함께 활용하는 방식이다. 콘볼루션 부호를 기반으로 병렬 부호화와 인터리빙(interleaving)을 통해 성능을 더욱 발전시킨 것이 터보코드(turbo codes)이다. 터보코드(turbo codes)는 통신 채널의 비트 오류 확률(probability)을 최소로 유지하는 사상에 기반을 둔 오류 정정 부호 (ECC: error correction code)의 하나이다. 터보코드는 1993년 Berrou 등이 제안한 것으로 비교적 간단한 구조를 가지면서도 매우 우수한 오류 정정 성능을 제공하므로 고성능의 오류 정정 부호 방식이 요구되는 통신 시스템에 적용되고 있다.
최근에는 저밀도 패리티 검사(LDPC : low-density parity-check) 코드가 통신 시스템에 적용되기 시작하였다. LDPC 코드는 길이 K의 정보시퀀스를 길이 N의 부호어로 만든다. 부호어 중 정보 시퀀스를 제외한 (N-K) 길이의 패리티 비트는 패리티 검사 행렬 (parity-check matrix) H를 사용하여 만들 수 있다. 패리티 검사 행렬 H는 크기가 (N-K) x N 이고, 1보다는 0이 많은 저밀도의 성질을 갖고 있다. LDPC 코드를 이용한 부호화 방법에서는 패리티 검사 행렬 H을 어떻게 만드는지가 가장 중요한 요소이다. 통상, 불규칙 LDPC 코드들은 규칙 LDPC 코드들보다 양호한 성능을 제공한다. 여기서 규칙적이라는 것은 LDPC 코드를 위하여 이용되는 패리티 검사 행렬 H의 모든 행들(rows)이 동일한 수의 1들을 가지고 H의 모든 열들(columns)이 동일한 수의 1들을 가진다는 것을 의미하며, 그렇지 않으면 LDPC 코드는 불규칙인 것으로 간주된다. 여기서 행 또는 열에서 1들의 수는 행 또는 열의 가중치라 칭한다. 블록 길이 104 이상의 불규칙 LDPC (low-density parity-check) 코드는 터보코드(turbo codes)보다 나은 성능을 보이는 것이 입증되었다.
그러나, 패리티 검사 행렬 H는 대략 1000×2000 이상의 크기를 갖기 때문에 부호화 및 복호화 과정에서 많은 연산이 요구되고, 구현이 매우 복잡하며, 많은 저장 공간을 요구하는 문제점이 있다. 다시 말해, 데이터 블록의 크기가 증가하면 LDPC의 오류정정 능력은 강해지지만, 프로세서가 처리해야 하는 연산량 및 요구하는 저장 공간 또한 증가한다는 문제점이 있다. 이러한 문제점을 해결하기 위한 기술로 대한민국 공개특허 제10-2007-0058438호(무선 통신 시스템에서 저밀도 패리티 체크 코드를 이용한 부호화, 복호화 방법 및 그 장치)가 있다.
개시된 기술이 이루고자 하는 기술적 과제는 저장공간을 줄이면서, 연산 속도 및 성능을 향상시킬 수 있는 부호화 방법 및 부호화 장치를 제공하는 데 있다. 또한, 병렬연산을 통하여 연산 처리속도를 높일 수 있으므로, 개시된 기술에서는 병렬 연산에 적합한 코드를 제공하고자 한다.
상기의 기술적 과제를 이루기 위하여 개시된 기술의 제1 측면은 정보 비트들 중 이전에 입력되지 않은 어느 하나의 비트를 입력 받는 단계; 상기 입력 받는 비트에 따라 현재 상태에서 다음 상태로 천이하는 단계; 상기 입력 받는 단계 및 상기 천이하는 단계를 복수 회 반복하는 단계; 마지막 반복에서 천이된 상태에 따라 상태-체크 비트들을 결정하는 단계; 및 상기 정보 비트들 및 상기 상태-체크 비트들을 결합하여 부호어를 생성하는 단계를 포함하는 상태-체크 부호화 방법을 제공한다.
상기의 기술적 과제를 이루기 위하여 개시된 기술의 제2 측면은 입력되는 정보 비트들에 따라 부호화 상태를 결정하는 상태 결정부; 상기 결정된 부호화 상태에 따라 상태-체크 비트들을 결정하되, 상기 결정된 부호화 상태가 미리 설정된 상태로 수렴하도록 하는 입력 비트들의 값을 상기 상태-체크 비트들로 결정하는 상태-체크 비트 결정부; 및 상기 정보 비트들 및 상기 상태-체크 비트들을 결합하여 부호어를 생성하는 부호어 생성부를 포함하는 상태-체크 부호화 장치를 제공한다.
개시된 기술의 실시 예들은 다음의 장점들을 포함하는 효과를 가질 수 있다. 다만, 개시된 기술의 실시 예들이 이를 전부 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
개시된 기술의 일 실시 예에 따른 상태-체크 코드(SC 코드)는 한 번의 연산 과정으로 종래의 패리티 비트보다 많은 비트 수를 가지는 상태-체크 비트(SC 비트)를 생성한다. 이러한 상태-체크 코드를 사용하여 부호화 또는 복호화 하는 경우, 종래의 코딩 방식(예컨대, LDPC 코드)보다 향상된 오류 정정 성능을 보이면서도 연산속도가 빠르다는 장점이 있다. 또한, 상태-체크 코드를 이용한 부호화 또는 복호화 방법은 필요로 하는 저장 공간이 종래에 비하여 작으며, 병렬 프로세싱이 용이하다는 장점이 있다.
도 1은 개시된 기술의 일 실시예에 따라, 부호화장치가 상태-체크 코드를 이용하여 부호화하는 방법을 설명하기 위한 순서도이다.
도 2는 개시된 기술의 일 실시예에 따라, 부호화 상태가 천이되는 과정 및 상태-체크 비트가 결정되는 과정을 설명하기 위한 도면이다.
도 3은 개시된 기술의 일 실시예에 따라 상태-체크 코드를 이용하여 상태-체크 부호화하는 장치를 설명하기 위한 블록도이다.
도 4는 개시된 기술의 일 실시예에 따른 상태 결정부를 설명하기 위한 도면이다.
도 5는 개시된 기술의 일 실시예에 따라, 부호화 상태 수가 4인 경우 상태 결정부를 설명하기 위한 도면이다.
도 6은 개시된 기술의 일 실시예에 따라, 상태-체크 코드를 이용하여 복호화 하는 방법을 설명하기 위한 도면이다.
개시된 기술에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 개시된 기술의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 개시된 기술의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
“제1”, “제2” 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않은 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 개시된 기술이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
LDPC 코드는 블록 길이가 104 이상인 경우에는 터보 코드보다 향상된 성능을 보이지만, 부호화 및 복호화 과정에서 많은 연산이 필요하고, 구현이 매우 복잡하며, 많은 저장 공간을 필요로 한다는 등 여러 가지 문제점을 가지고 있다. 개시된 기술에서는 종래의 LDPC 코드보다 향상된 오류 정정 성능을 보이면서도 연산속도가 빠르고, 병렬 프로세싱이 용이한 부호화 방식을 제안한다. 개시된 기술에서는, 기존의 패리티-체크 개념에 대응되는 상태-체크 개념을 새로이 도입하여 상태-체크 코드를 이용한 부호화를 수행한다. 이하, 개시된 기술에서 새로이 제안하는 상태-체크 코드를 도면을 참조하여 설명한다.
도 1은 개시된 기술의 일 실시예에 따라, 부호화장치가 상태-체크 코드를 이용하여 부호화하는 방법을 설명하기 위한 순서도이다. 개시된 기술에 따르면, 입력되는 비트들에 따라, 부호화 상태가 결정되고, 결정된 최종 부호화 상태에 따라, 상태-체크 비트들을 결정하여, 입력된 비트들과 상태-체크 비트들을 함께 전송함으로써 입력 비트들의 전송 오류를 정정할 수 있도록 한다. 입력 비트들에 대한 한 번의 연산 과정으로 한 비트의 패리티 비트를 생성하는 종래의 패리티 체크 방식과 달리, 개시된 기술에 따르면 입력 비트들에 대한 한 번의 연산 과정을 통하여 복수의 상태-체크 비트를 생성할 수 있다. 따라서, 상태-체크 코드를 이용하면, 종래에 비하여 오류 정정의 성능 및 효율성이 향상된다. 상태-체크 비트의 수(NSC)는 2 이상의 정수로서, 오류정정 성능, 부호화 속도, 연산 속도, 필요로 하는 저장 공간 등을 고려하여 적절한 수로 결정될 수 있다. 이하, NSC의 수가 2인 경우를 중심으로 설명하나, 이에 한정되는 것은 아니며 NSC는 3, 4 등의 정수가 될 수도 있다.
부호화장치는 정보 비트들 중 이전에 입력되지 않은 어느 하나의 비트를 입력 받는다(S110). 도 1에서 확인할 수 있듯이 S110 단계는 S120 단계와 함께 미리 설정된 횟수만큼 반복되는데, 매 반복마다 정보 비트들 중 새로운 비트가 입력된다. 일례로, 부호화장치는 정보 비트들을 각각 순차적으로 하나씩 입력 받을 수 있다. 다른 일례로, 부호화 장치는 모든 정보 비트들이 아닌, 부호화할 정보 비트들 중 미리 선택된 특정 비트들을, 순차적으로 하나씩 입력 받을 수도 있다.
부호화장치는 입력 받는 비트에 따라 현재 상태에서 다음 상태로 천이한다(S120). 부호화 상태가 가질 수 있는 상태 수는 Ns 이다. 현재 상태는 이전에 입력된 비트들을 기초로 Ns 개의 상태들 중 어느 하나의 상태로 결정된다. 현재 상태는, 첫 번째 반복에서는 Zero State로 초기화 되며, 그 이후의 반복에서는 이전 반복에서 천이된 상태가 현재 상태가 된다. 다음 상태는, 현재 상태에 상응하는 두 개의 상태들 중 현재 입력되는 비트에 따라 결정되는 어느 하나의 상태가 된다. 일 실시 예에 따라, Ns가 4인 경우 입력 비트들에 따라 부호화 상태가 천이되는 과정이 도 2에 예시되어 있다. 도 2의 실시 예에서는 현재 상태가 상태 0일 때(S=0), 다음 상태는 상태 0 또는 상태 2(S=0 or S=2)가 될 수 있는데, 입력 비트가 0인 경우 다음 상태는 상태 0, 입력 비트가 1인 경우 다음 상태는 상태 2가 된다. 즉, 현재 상태에 따라, 다음 상태가 될 수 있는 두 개의 상태가 있고, 부호화장치는 현재 상태에 상응하는 두 개의 상태들 중 입력 받는 비트에 따라 결정되는 하나의 상태로 천이한다.
현재 상태(k 번째 반복에서의 상태, Sk)와 다음 상태(k+1 번째 반복에서의 상태, Sk +1)가 수학식 1과 같이 표현될 때, 현재 상태와 다음 상태 간에는 실시예에 따라, 수학식 2 또는 수학식 3과 같은 관계가 성립될 수 있다.
Figure 112011078125177-pat00001
Sk의 값이 N개의 비트로 표현될 때, dN -1,k는 N개의 비트 중 최상위 비트를, d0,k는 N개의 비트 중 최하위 비트를 나타낸다. 마찬가지로, Sk +1의 값이 N개의 비트로 표현될 때, dN -1,k+ 1는 N개의 비트 중 최상위 비트를, d0 ,k+ 1는 N개의 비트 중 최하위 비트를 나타낸다.
Figure 112011078125177-pat00002
ik는 현재의 반복에서 입력 받은 정보 비트,
Figure 112011078125177-pat00003
는 배타적 논리합(exclusive OR, XOR) 연산을 의미하고, dk 는 d0 ,k 내지 dN -1,k중 선택되는 적어도 하나의 비트를 XOR 연산한 결과 값을 나타낸다. 일례로, dk 는 d0 ,k 내지 dN -1,k 비트들을 모두 XOR 연산한 결과일 수 있으며, 다른 일례로, dk 는 d0 ,k 내지 dN -1,k 비트들 중 d0 ,k, d2 ,k 등 홀수 번째 비트들을 XOR 연산한 결과일 수 있다.
Figure 112011078125177-pat00004
이때, a1 내지 aN -1은 0 또는 1의 값을 가지고, d0 ,k의 계수는 항상 1이다. a1 내지 aN -1 값은 구현 예에 따라, 모두 1의 값을 가질 수도 있으며, 일부(예컨대, 홀수 번째 값)는 0 나머지 (예컨대, 짝수 번째)는 1의 값을 가지도록 할 수도 있다.
보다 구체적으로, 상태 수(Ns)가 4, 상태-체크 비트의 수(NSC)가 2인 경우 중에서 도 2의 실시 예와 같이 상태가 천이되는 경우를 예를 들어 설명한다. k번째 반복에서의 현재 상태가 두 개의 비트 [d1 , kd0 ,k]로 표현되고, 그 다음 상태가 [d1,k+1d0,k+1]로 표현될 때, 각 상태를 나타내는 비트들 간의 관계는 수학식 4와 같이 나타낼 수 있다.
Figure 112011078125177-pat00005
이때, 현재 상태 값이 0[00]이라면, 다음 상태 값은 입력 비트가 0인 경우 0[00], 입력 비트가 1인 경우 2[10]가 된다. 현재 상태 값이 1[01]이라면, 다음 상태 값은 입력 비트가 0인 경우 2[10], 입력 비트가 1인 경우 0[00]이 된다. 현재 상태 값이 2[10]이라면, 다음 상태 값은 입력 비트가 0인 경우 3[11], 입력 비트가 1인 경우 1[01]이 된다. 마지막으로, 현재 상태 값이 3[11]이라면, 다음 상태 값은 입력 비트가 0인 경우 1[01], 입력 비트가 1인 경우 3[11]이 된다.
상태 수(Ns)가 4, 상태-체크 비트의 수(NSC)가 2인 경우 중에서, 다른 일 실시예에 따른 상태 천이 규칙은 수학식 5와 같이 나타낼 수 있다.
Figure 112011078125177-pat00006
입력 받는 단계(S110) 및 천이하는 단계(S120)는 미리 설정된 횟수만큼 복수 회 반복한다(S130). 미리 설정된 횟수는, 일례로, 부호화할 정보 비트들의 수와 같을 수 있다. 즉, 부호화할 정보 비트들이 모두 순차적으로 입력되는 경우에는, 정보 비트가 순차적으로 하나씩 입력되고(S110), 정보 비트가 하나씩 입력될 때마다, 상태 천이가 수행(S120)되며, 이러한 과정이 모든 정보 비트에 대하여 반복되므로 S110 단계 및 S120 단계는 정보 비트의 수만큼 반복된다. 다른 일례로, 미리 설정된 횟수는, 부호화할 정보 비트들의 수보다 작을 수 있다. 즉, 모든 정보 비트들이 아닌, 부호화할 정보 비트들 중 미리 선택된 특정 비트들이, 순차적으로 하나씩 입력되는 경우에는, 선택된 특정 비트들의 수만큼 S110 단계 및 S120 단계가 반복된다.
부호화장치는 정보 비트들의 입력에 따라, 마지막 반복에서 천이된 상태 값을 기초로 상태-체크 비트들을 결정한다(S140). 일 실시예에 따라, 부호화장치는 마지막 반복에서 천이된 상태가 미리 설정된 상태로 수렴하도록 하는 입력 비트들의 값을 상태-체크 비트들로 결정한다. 예컨대, 마지막 반복에서 천이된 상태가 Zero State(제 0상태, S=0)로 수렴하도록 하는 입력 비트들의 값이 상태-체크 비트가 된다. 보다 구체적으로, NS가 4이고, NSC가 2이며, 수학식 4와 같이 상태가 천이하는 도 2의 경우, 상태-체크 비트는 다음과 같이 결정된다. 마지막 반복에서 천이된 상태의 값이 상태 0인 경우, 상태 체크 비트는 [00], 마지막 반복에서 천이된 상태의 값이 상태 1인 경우, 상태 체크 비트는 [10], 마지막 반복에서 천이된 상태의 값이 상태 2인 경우, 상태 체크 비트는 [11], 마지막 반복에서 천이된 상태의 값이 상태 3인 경우, 상태 체크 비트는 [01]이 된다. 도 2를 참조하면, 상태-체크 비트가 마지막 반복 이후에 입력 비트로 들어간다고 가정했을 때, 마지막 반복에서의 상태가 결국 미리 설정된 상태인 zero state로 수렴하여 상태 천이가 종료하는 것을 확인할 수 있다. 도 2 및 위에서 설명한 예에서는 zero state로 수렴하는 경우를 설명하였으나, 수렴되는 상태는 이에 한정되는 것은 아니며 다른 상태로 수렴하는 것으로 결정하여도 무관하다. 한편, 상태 수가 NS인 경우, 상태-체크 비트들의 비트 수 NSC는 log2Ns이 된다.
상태-체크 비트들이 결정되면, 부호화장치는 정보 비트들 및 상태-체크 비트들을 결합하여 부호어를 생성한다(S150). 정보 비트들의 비트 수가 K이고, 상태-체크 비트들의 비트 수가 NSC이면, 부호어의 비트 수는 K+NSC가 되고, 상태-체크 코드의 부호 율은
Figure 112011078125177-pat00007
이 된다.
도 2는 개시된 기술의 일 실시예에 따라, 부호화 상태가 천이되는 과정 및 상태-체크 비트가 결정되는 과정을 설명하기 위한 도면이다. 도 2는 앞에서 언급한 바와 같이 NS가 4이고, NSC가 2이며, 수학식 4와 같이 상태가 천이되는 경우의 트렐리스(trellis) 다이어그램이다. 도 2에는 정보 비트가 입력됨에 따라 상태가 천이하는 반복적인 과정이 시간 흐름에 따라 펼쳐져 있다. 정보 비트의 입력에 따른 부호화 상태는 원형으로 표시되고, 각 상태 간을 연결하는 화살표 중 실선 화살표는 비트 0이 입력된 경우를, 점선 화살표는 비트 1이 입력된 경우를 나타낸다. 우선, 부호화 상태는 Zero State로 초기화된다. 이후, 정보 비트가 입력되면, 현재 상태 및 입력되는 비트의 값에 따라 다음 상태로 천이된다. T=t0에서, 현재 상태 값은 초기화 값인 상태 0이다. 이후, 0이 입력되는 경우 상태 0으로, 1이 입력되는 경우 상태 2로 천이한다. 1이 입력되었다고 가정하는 경우, T=t1에서의 현재 상태 값은 상태 2가 된다. 이후, 마찬가지로 0이 입력되는 경우 상태 3으로, 1이 입력되는 경우 상태 1로 천이된다. 만약 0이 입력되었다고 가정하면, T=t2에서의 현재 상태 값은 상태 3이 된다. 이와 같이 정보 비트들이 입력됨에 따라 상태 천이가 반복된다. 미리 설정된 횟수만큼 정보 비트들이 입력되면 마지막 반복에서의 부호화 상태에 따라 상태-체크 비트를 결정한다. 예를 들어, T=tK에서의 상태 값이 2인 경우, 상태-체크 비트는 [11]이 된다. 상태-체크 비트는 마지막 반복에서의 상태를 특정 상태, 즉, Zero State로 수렴하게 만드는 입력 비트의 값으로 결정된다. 도 2를 참조하면, 마지막 반복에서의 상태가 상태 2인 경우, 비트 1이 입력되면 상태 1이 되고, 상태 1에서 다시 비트 1이 입력되면 상태 0(zero state)가 되는 것을 확인할 수 있다. 이와 같이 마지막으로 정보 비트가 입력된 때의 부호화 상태에 따라 상태-체크 비트 값이 결정되므로, 수신 측에서는 반대로 상태-체크 비트를 이용하여 전송된 데이터의 오류가 있는지 여부를 판단할 수 있다.
도 3은 개시된 기술의 일 실시예에 따라 상태-체크 코드를 이용하여 상태-체크 부호화하는 장치를 설명하기 위한 블록도이다. 도 3의 상태-체크 부호화 장치(300)는 상태 결정부(310), 상태-체크 비트 결정부(320), 부호어 생성부(330)를 포함한다. 도 3의 실시 예에 따른 상태-체크 부호화 장치(300)는 도 1의 부호화 방법에 따라 상태-체크 부호화하는 장치를 포함하므로 도 1에서 설명된 내용은 본 실시 예에서도 적용될 수 있다. 상태 결정부(310)는 입력되는 정보 비트들에 따라 부호화 상태를 결정한다. 일 실시 예에 따라, 상태 결정부(310)는, 현재 상태 및 현재 입력되는 비트에 따라 현재 상태를 갱신하는 과정을 복수 회 반복하여, 마지막 반복에서 갱신된 현재 상태를 부호화 상태로 결정한다. 이 때, 갱신하는 과정을 반복하는 횟수는 일례로, 정보 비트들의 비트 수와 같을 수 있으며, 다른 일례로 정보 비트들의 수보다 작을 수 있다. 상태 결정부(310)에 대한 구체적인 설명은 도 4를 참조하여 후술한다. 상태-체크 비트 결정부(320)는 상태 결정부(310)에서 결정된 부호화 상태에 따라 상태-체크 비트들을 결정한다. 일 실시예에 따라, 상태-체크 비트 결정부(320)는, 결정된 부호화 상태가 미리 설정된 상태로 수렴하도록 하는 입력 비트들의 값을 상태-체크 비트들로 결정한다. 예컨대, 상태-체크 비트 결정부(320)는 결정된 부호화 상태가 제0 상태(Zero State)로 수렴하도록 하는 입력 비트들의 값을 상태-체크 비트들로 결정할 수 있다. 부호어 생성부(330)는 정보 비트들 및 상태-체크 비트들을 결합하여 부호어를 생성한다.
도 4는 개시된 기술의 일 실시예에 따른 상태 결정부를 설명하기 위한 도면이다. 일 실시예에 따라, 상태 결정부(310)는 레지스터(410) 및 연산부(420)를 포함하여 부호화 상태를 결정할 수 있다. 레지스터(410)는 부호화 상태를 나타내는 비트들을 저장한다. 연산부(420)는 상태 결정부(310)로 입력되는 비트(information bit, i) 및 부호화 상태를 나타내는 비트들(즉, 레지스터에 값이 저장된 비트들, do, d1,...)중 적어도 하나의 비트 간의 XOR(배타적 논리합) 연산을 수행한다. 일례로, 레지스터(410)에 저장된 모든 비트들과 입력 비트 간 XOR 연산할 수도 있으며, 다른 일례로 D0 레지스터에 저장된 비트와 입력 비트 간 XOR 연산할 수도 있다. 즉, 레지스터(410)의 각 저장공간 D0 내지 DN -1은 선택적으로 연산부(420)와 연결되어 저장된 비트 값을 연산부(420)에 제공한다. 이때, 일 실시 예에 따라, 레지스터(410)는 상태 결정부(310)에 정보 비트가 입력될 때마다 저장된 비트들이 한 비트씩 하위 비트 자리로 이동하고, 연산부(420)에서 수행되는 연산 결과가 최상위 비트 자리로 입력됨으로써 부호화 상태를 나타내는 비트들을 갱신하는 순환 시프트 레지스터(Recursive Shift Register)일 수 있다. 레지스터(410) 및 연산부(420)의 동작은 수학식 2 또는 수학식 3과 같이 표현될 수 있다.
도 5는 개시된 기술의 일 실시예에 따라, 부호화 상태 수가 4인 경우 상태 결정부를 설명하기 위한 도면이다. 부호화 상태 수 NS가 4 인 경우 상태-체크 비트 수 NSC 및 부호화 상태를 나타내는 비트 수는 2이므로 레지스터(410)는 두 개의 저장 공간 D1, D0를 가진다. 연산부(420)는 입력 비트(i) 및 부호화 상태를 나타내는 비트들, 즉, 레지스터 D1, D0에 값이 저장된 비트들(d1, d0)중 적어도 하나의 비트 간의 XOR(배타적 논리합) 연산을 수행한다. 일례로 도 5의 (a)는 입력 비트 i, 레지스터에 저장된 비트 값들인 d1, d0 세 비트의 XOR 연산을 수행한다. 이를 수학식으로 나타내면 수학식 4와 같다. 다른 일례로 도 5의 (b)는 입력 비트 i와 레지스터에 저장된 비트 값인 d0 간의 XOR 연산을 수행한다. 이를 수학식으로 나타내면 수학식 5와 같다.
도 6은 개시된 기술의 일 실시예에 따라, 상태-체크 코드를 이용하여 복호화 하는 방법을 설명하기 위한 도면이다. 개시된 기술에 따른 상태-체크 코드는 종래 LDPC 코드가 패리티 체크를 위해 tanh 규칙을 사용하였던 것과 달리, BCJR 알고리즘을 사용하여 복호화할 수 있다. 이하, 이해를 돕기 위하여 복호기가 도 2의 상태-체크 코드를 이용하여 수신 데이터를 복호화하는 과정을 예를 들어 설명한다.
복호기는 상태-체크 코드를 이용하여 부호화된 신호를 제공받는다. 부호화된 신호는, 도 2와 같은 상태 천이 및 상태-체크 비트 생성 규칙에 따라 생성된 상태-체크 비트들이 정보 비트들과 결합되어 생성된 신호이다. 이때, 부호화기는 일례로 도 5의 (a)와 같은 RSR(Recursive Shift Register)를 이용하여 구현되었을 수 있다. 도 2의 천이 규칙, 또는 도 5와 같은 구조는 송신 측과 수신 측이 공통적으로 알고 있는 정보이므로, 수신 측에서도 도 2와 같은 트렐리스를 도 6과 같이 동일하게 구성할 수 있다. 복호기는 도 6의 트렐리스를 기반으로 수신 신호에 BCJR 알고리즘을 적용하여 수신 신호를 복호화한다. BCJR 알고리즘에 따르면 수신 비트열을 기반으로 사후 확률을 계산하여 전송 비트의 연판정(soft decision)값을 얻을 수 있다. T=tk에서의 사후 확률은 T=tk에서의 사후 천이 확률들의 합으로 계산될 수 있다. T=tk에서의 사후 확률은 수학식 6과 같고, T=tk에서의 사후 천이 확률은 수학식 7과 같다.
Figure 112011078125177-pat00008
여기서, 사후 확률 P(dk=d)는 T=tk에서의 전송 비트 값이 d(d는 0또는 1)일 확률이다. σ(sk,d)는 T=tk에서의 사후 천이 확률이며, σ(sk=i,d)는 T=tk에서의 상태(sk)가 상태 i이고, T=tk에서의 전송 비트(dk)가 d일 확률을 의미한다. sk는 주어진 부호화 상태들(S) 중 어느 하나의 값을 가지며, 본 실시 예에서는 상태 0, 상태 1, 상태 2, 상태 3 중 어느 하나의 값을 가진다.
Figure 112011078125177-pat00009
여기서, α(sk=i)는 T=tk 이전의 수신 신호가 주어졌을 때, T=tk에서 상태 i에 머물러 있을 확률을 나타내며 순방향 상태 메트릭이라 한다. β(sk +1=j)은 T=tk +1 이후의 수신 신호가 주어졌을 때, T=tk에서 상태 j에 머물러 있을 확률을 나타내며 역방향 상태 메트릭이라 한다. γ(sk, sk +1)는 관점에 따라, γ(sk,d)라고 표현할 수도 있는데, γ(sk=i, sk +1=j) 또는 γ(sk=i,d)는 T=tk에서의 수신 신호가 주어졌을 때, T=tk에서 상태 i이고, 전송 비트가 d일 확률로 가지 메트릭이라 한다. 이때, 전송 비트 d는 sk=i로부터 sk=j로 천이되도록 하는 비트 값으로서, sk=i일때, 입력 비트가 d이면, sk +1=j가 되는 관계가 있다.
복호기는 도 6의 트렐리스 다이어그램에 기반하여, 트렐리스를 구성하는 각 가지들에 상응하는 가지 메트릭들을 산출한다. 가지 메트릭 γ(sk=i,d)은 사전 확률과 전송 비트가 d일 때 수신 신호의 확률밀도함수를 이용하여 산출된다. 예컨대, 도 6에서 가지 메트릭 γ(sk=i,d)는, dk=0일 확률과 dk=1일 확률이 모두 0.5이고, sk가 각 부호화 상태에 있을 확률이 모두 동일하다고 가정하면, 주어진 확률밀도함수에서의 수신신호에 상응하는 값으로 산출될 수 있다.
복호기는 최초 상태 값, 최종 상태 값 및 가지 메트릭 값을 기반으로 순방향 상태 메트릭 및 역방향 상태 메트릭을 산출한다. 순방향 상태 메트릭은 Forward Recursion에 의하여 α(s0)부터 α(sN)까지 순차적으로 계산된다. 도 6의 경우, 초기 상태 값이 상태 0(s0=0)이라는 것을 알고 있으므로, α(s0)은 s0=0인 경우 1, 나머지 s0=1, 2, 3인 경우는 0으로 초기화된다. α(sk=i)는 임의의 상태 값을 가지는 sk-1로부터 상태 값이 i인 sk로 향하는 모든 가지에 대하여, 각 가지에 해당하는 가지 메트릭과 해당하는 sk -1의 순방향 상태 메트릭의 곱들의 합으로 산출된다. 이를 수식으로 나타내면 수학식 8과 같다.
Figure 112011078125177-pat00010
일례로, 도 6에서 α(s3=1)는, α(s2=2)γ(s2=2,1)+α(s2=3)γ(s2=3,0)로 산출된다.
역방향 상태 메트릭은 Backward Recursion에 의하여 β(sN)부터 β(s0)까지 역순으로 반복적으로 계산된다. 도 6의 경우, 최종 상태 값이 상태 0(sN=0)이라는 것을 알고 있으므로, β(sN)은 sN=0인 경우 1, 나머지 sN=1, 2, 3인 경우는 0으로 초기화된다. β(sk=i)는 임의의 상태 값을 가지는 sk +1로부터 상태 값이 i인 sk로 향하는 모든 역방향 가지에 대하여, 각 가지에 해당하는 가지 메트릭과 해당하는 sk +1의 역방향 상태 메트릭의 곱들의 합으로 산출된다. 이를 수식으로 나타내면 수학식 9과 같다.
Figure 112011078125177-pat00011
가지 메트릭, 순방향 메트릭, 역방향 메트릭이 모두 산출되면, 각 시간에 대하여 수학식 7과 같이 사후 천이 확률을 산출한다. 수학식 6과 같이 각 시간에서 d에 대한 사후 천이 확률을 모두 더하면, 전송 비트가 d일 사후 확률을 구할 수 있다. 복호기는 사후 확률에 따라 각 전송 비트의 값을 결정한다. 도 6에서는 일 실시예에 따라, BCJR 알고리즘에 따라 상태-체크 부호를 복호화하는 방법을 설명하였으나 복호화 방법이 이에 한정되는 것은 아니다.
이러한 개시된 기술인 시스템 및 장치는 이해를 돕기 위하여 도면에 도시된 실시 예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 개시된 기술의 진정한 기술적 보호범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.

Claims (19)

  1. 정보 비트들 중 이전에 입력되지 않은 어느 하나의 비트를 입력 받는 단계;
    상기 입력 받는 비트에 따라 현재 상태에서 다음 상태로 천이하는 단계;
    상기 입력 받는 단계 및 상기 천이하는 단계를 복수 회 반복하는 단계;
    마지막 반복에서 천이된 상태에 따라 상태-체크 비트들을 결정하는 단계; 및
    상기 정보 비트들 및 상기 상태-체크 비트들을 결합하여 부호어를 생성하는 단계를 포함하되,
    상기 입력 받는 단계 및 상기 천이하는 단계를 반복하는 횟수는 상기 정보 비트들의 비트 수와 같거나 상기 정보 비트들의 비트 수 보다 작은 상태-체크 부호화 방법.
  2. 제1항에 있어서, 상기 결정하는 단계는,
    상기 마지막 반복에서 천이된 상태가 미리 설정된 상태로 수렴하도록 하는 입력 비트들의 값을 상기 상태-체크 비트들로 결정하는 상태-체크 부호화 방법.
  3. 제1항에 있어서, 상기 결정하는 단계는,
    상기 마지막 반복에서 천이된 상태가 제0 상태(Zero State)로 수렴하도록 하는 입력 비트들의 값을 상기 상태-체크 비트들로 결정하는 상태-체크 부호화 방법.
  4. 제1항에 있어서, 상기 천이하는 단계는,
    상기 현재 상태에 상응하는 두 개의 상태들 중 상기 입력 받는 비트에 따라 결정되는 하나의 상태로 천이하는 단계인 상태-체크 부호화 방법.
  5. 제1항에 있어서, 상기 천이하는 단계는,
    k번째 반복에서의 상기 현재 상태가 N 개의 비트 [dN -1,k…d0 ,k]로 표현될 때,
    dn ,k+1=dn +1,k (여기서, n=0,…,N-2)
    Figure 112011078125177-pat00012
    (여기서, ik는 현재의 반복에서 입력 받은 정보 비트,
    Figure 112011078125177-pat00013
    는 배타적 논리합(exclusive OR, XOR) 연산을 의미하고, dk 는 d0 ,k 내지 dN -1,k중 선택되는 적어도 하나의 비트를 XOR 연산한 결과 값을 나타냄)에 따라 결정된 N 개의 비트 [dN -1,k+1…d0 ,k+1]로 표현되는 상기 다음 상태로 천이하는 상태-체크 부호화 방법.
  6. 제1항에 있어서, 상기 천이하는 단계는,
    k번째 반복에서의 상기 현재 상태가 N 개의 비트 [dN -1,k…d0 ,k]로 표현될 때,
    dn ,k+1=dn +1,k (여기서, n=0,…,N-2)
    Figure 112011078125177-pat00014
    (여기서, ik는 현재의 반복에서 입력 받은 정보 비트,
    Figure 112011078125177-pat00015
    는 배타적 논리합(exclusive OR, XOR) 연산을 의미하고, a1 내지 aN-1은 0 또는 1의 값을 가짐)에 따라 결정된 N 개의 비트 [dN -1,k+1…d0 ,k+1]로 표현되는 상기 다음 상태로 천이하는 상태-체크 부호화 방법.
  7. 제1항에 있어서, 상기 천이하는 단계는,
    k번째 반복에서의 상기 현재 상태가 두 개의 비트 [d1 , kd0 ,k]로 표현될 때,
    d0 ,k+1=d1 ,k
    Figure 112011078125177-pat00016
    (여기서, ik는 현재의 반복에서 입력 받은 정보 비트,
    Figure 112011078125177-pat00017
    는 배타적 논리합(exclusive OR, XOR) 연산을 나타냄)에 따라 결정된 두 개의 비트 [d1,k+1d0,k+1]로 표현되는 상기 다음 상태로 천이하는 상태-체크 부호화 방법.
  8. 제1항에 있어서, 상기 천이하는 단계는,
    k번째 반복에서의 상기 현재 상태가 두 개의 비트 [d1 , kd0 ,k]로 표현될 때,
    d0 ,k+1=d1 ,k
    Figure 112011078125177-pat00018
    (여기서, ik는 현재의 반복에서 입력 받은 정보 비트,
    Figure 112011078125177-pat00019
    는 배타적 논리합(exclusive OR, XOR) 연산을 나타냄)에 따라 결정된 두 개의 비트 [d1 ,k+1d0 ,k+1]로 표현되는 상기 다음 상태로 천이하는 상태-체크 부호화 방법.
  9. 삭제
  10. 삭제
  11. 입력되는 정보 비트들에 따라 부호화 상태를 결정하는 상태 결정부;
    상기 결정된 부호화 상태에 따라 상태-체크 비트들을 결정하되, 상기 결정된 부호화 상태가 미리 설정된 상태로 수렴하도록 하는 입력 비트들의 값을 상기 상태-체크 비트들로 결정하는 상태-체크 비트 결정부; 및
    상기 정보 비트들 및 상기 상태-체크 비트들을 결합하여 부호어를 생성하는 부호어 생성부를 포함하되,
    상기 상태 결정부는, 현재 상태 및 현재 입력되는 비트에 따라 상기 현재 상태를 갱신하는 과정을 복수 회 반복하여, 마지막 반복에서 갱신된 상기 현재 상태를 상기 부호화 상태로 결정하는 상태-체크 부호화 장치.
  12. 제11항에 있어서, 상기 상태-체크 비트 결정부는,
    상기 결정된 부호화 상태가 제0 상태(Zero State)로 수렴하도록 하는 입력 비트들의 값을 상기 상태-체크 비트들로 결정하는 상태-체크 부호화 장치.
  13. 제11항에 있어서, 상기 상태 결정부는,
    상기 부호화 상태를 나타내는 비트들을 저장하는 레지스터; 및
    상기 입력되는 비트 및 상기 부호화 상태를 나타내는 비트들 중 적어도 하나의 비트 간의 XOR(배타적 논리합) 연산을 수행하는 연산부를 포함하되,
    상기 레지스터는 상기 상태 결정부에 비트가 입력될 때마다 저장된 비트들이 한 비트씩 하위 비트 자리로 이동하고, 상기 연산부에서 수행되는 연산 결과가 최 상위 비트 자리로 입력되어 상기 부호화 상태를 나타내는 비트들을 갱신하는 순환 시프트 레지스터(Recursive Shift Register)인 상태-체크 부호화 장치.
  14. 삭제
  15. 제11항에 있어서, 상기 상태 결정부는,
    k번째 반복에서의 상기 현재 상태를 나타내는 N 개의 비트 [dN-1,k…d0,k]를
    dn,k+1=dn+1,k (여기서, n=0,…,N-2)
    Figure 112012104747202-pat00020
    (여기서, ik는 현재의 반복에서 입력 받은 정보 비트,
    Figure 112012104747202-pat00021
    는 배타적 논리합(exclusive OR, XOR) 연산을 의미하고, dk 는 d0,k 내지 dN-1,k중 선택되는 적어도 하나의 비트를 XOR 연산한 결과 값을 나타냄)에 따라 결정된 N 개의 비트 [dN-1,k+1…d0,k+1]로 갱신하는 상태-체크 부호화 장치.
  16. 제11항에 있어서, 상기 상태 결정부는,
    k번째 반복에서의 상기 현재 상태를 나타내는 N 개의 비트 [dN-1,k…d0,k]를
    dn,k+1=dn+1,k (여기서, n=0,…,N-2)
    Figure 112012104747202-pat00022
    (여기서, ik는 현재의 반복에서 입력 받은 정보 비트,
    Figure 112012104747202-pat00023
    는 배타적 논리합(exclusive OR, XOR) 연산을 의미하고, a1 내지 aN-1은 0 또는 1의 값을 가짐)에 따라 결정된 N 개의 비트 [dN-1,k+1…d0,k+1]로 갱신하는 상태-체크 부호화 장치.
  17. 제11항에 있어서, 상기 상태 결정부는,
    k번째 반복에서의 상기 현재 상태를 나타내는 두 개의 비트 [d1,kd0,k]를
    d0,k+1=d1,k
    Figure 112012104747202-pat00024
    (여기서, ik는 현재의 반복에서 입력 받은 정보 비트,
    Figure 112012104747202-pat00025
    는 배타적 논리합(exclusive OR, XOR) 연산을 나타냄)에 따라 결정된 두 개의 비트 [d1,k+1d0,k+1]로 갱신하는 상태-체크 부호화 장치.
  18. 제11항에 있어서, 상기 상태 결정부는,
    k번째 반복에서의 상기 현재 상태를 나타내는 두 개의 비트 [d1,kd0,k]를
    d0,k+1=d1,k
    Figure 112012104747202-pat00026
    (여기서, ik는 현재의 반복에서 입력 받은 정보 비트,
    Figure 112012104747202-pat00027
    는 배타적 논리합(exclusive OR, XOR) 연산을 나타냄)에 따라 결정된 두 개의 비트 [d1,k+1d0,k+1]로 갱신하는 상태-체크 부호화 장치.
  19. 제11항에 있어서,
    상기 갱신하는 과정을 반복하는 횟수는 상기 정보 비트들의 비트 수 보다 작거나 같은 상태-체크 부호화 장치.
KR1020110101970A 2011-10-06 2011-10-06 상태-체크 코드를 이용한 부호화 방법 및 부호화 장치 KR101257776B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110101970A KR101257776B1 (ko) 2011-10-06 2011-10-06 상태-체크 코드를 이용한 부호화 방법 및 부호화 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110101970A KR101257776B1 (ko) 2011-10-06 2011-10-06 상태-체크 코드를 이용한 부호화 방법 및 부호화 장치

Publications (2)

Publication Number Publication Date
KR20130037523A KR20130037523A (ko) 2013-04-16
KR101257776B1 true KR101257776B1 (ko) 2013-04-24

Family

ID=48438493

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110101970A KR101257776B1 (ko) 2011-10-06 2011-10-06 상태-체크 코드를 이용한 부호화 방법 및 부호화 장치

Country Status (1)

Country Link
KR (1) KR101257776B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10145244A (ja) 1996-11-14 1998-05-29 Hitachi Ltd 符号化、復号化回路及びこれを用いた磁気記録再生装置
KR19980019693A (ko) * 1996-09-02 1998-06-25 김광호 디지탈 전송신호의 복원장치
KR100421226B1 (ko) * 1995-12-15 2004-07-19 프랑스 뗄레꽁(소시에떼 아노님) 음성 주파수 신호의 선형예측 분석 코딩 및 디코딩방법과 그 응용
JP2010074786A (ja) 2008-09-22 2010-04-02 Yokosuka Telecom Research Park:Kk 符号化復号化システム、符号化回路、復号化回路およびタグ通信装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100421226B1 (ko) * 1995-12-15 2004-07-19 프랑스 뗄레꽁(소시에떼 아노님) 음성 주파수 신호의 선형예측 분석 코딩 및 디코딩방법과 그 응용
KR19980019693A (ko) * 1996-09-02 1998-06-25 김광호 디지탈 전송신호의 복원장치
JPH10145244A (ja) 1996-11-14 1998-05-29 Hitachi Ltd 符号化、復号化回路及びこれを用いた磁気記録再生装置
JP2010074786A (ja) 2008-09-22 2010-04-02 Yokosuka Telecom Research Park:Kk 符号化復号化システム、符号化回路、復号化回路およびタグ通信装置

Also Published As

Publication number Publication date
KR20130037523A (ko) 2013-04-16

Similar Documents

Publication Publication Date Title
JP5354979B2 (ja) 低密度パリティ検査畳み込み符号(ldpc−cc)符号化器及びldpc−cc復号器
US10326478B2 (en) Apparatus and method for encoding and decoding data in twisted polar code
CN111628785B (zh) 使用硬选取硬译码模式下的译码器产生软信息的方法
US8918694B2 (en) Non-concatenated FEC codes for ultra-high speed optical transport networks
US8726137B2 (en) Encoding and decoding methods for expurgated convolutional codes and convolutional turbo codes
US11784668B2 (en) Decoding fec codewords using ldpc codes define by a parity check matrix which is defined by rpc and qc constraints
US20100146372A1 (en) Decoding of serial concatenated codes using erasure patterns
US11177834B2 (en) Communication method and apparatus using polar codes
JP2005033705A (ja) 復号装置および復号方法
Grinchenko et al. Improving performance of multithreshold decoder over binary erasure channel
Heloir et al. Stochastic chase decoder for reed-solomon codes
JP4202161B2 (ja) 符号化装置および復号装置
JP2009225325A (ja) 復号方法および復号装置、並びにプログラム
KR101257776B1 (ko) 상태-체크 코드를 이용한 부호화 방법 및 부호화 장치
Ullah et al. Performance improvement of multi-stage threshold decoding with difference register
KR101268061B1 (ko) 다상-누산 코드를 이용한 부호화 방법 및 복호화 방법
KR101267756B1 (ko) 가변 부호화율 불규칙 반복 다상 누산 부호화 및 복호화 방법과 이를 위한 장치
KR101218658B1 (ko) 불규칙 반복 다상 누산 코드를 이용한 부호화 방법 및 복호화 방법
CN115642924B (zh) 一种高效的qr-tpc译码方法及译码器
KR101268060B1 (ko) 결합 상태-체크 코드를 이용한 부호화 방법 및 복호화 방법
Zolotarev et al. Usage of divergence within concatenated multithreshold decoding convolutional codes
US20240120949A1 (en) Decoding fec codewords using ldpc codes defined by a parity check matrix which is defined by rpc and qc constraints
KR101267654B1 (ko) 가변 부호어 길이를 지원하는 불규칙 반복 다상 누산 부호화 및 복호화 방법과 이를 위한 장치
JP4862657B2 (ja) 復号方法および復号装置、並びにプログラム
Liu et al. Design of an Iteration-Reduced LDPC-CC Decoder Based on Compact Decoding Architecture

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: 20160325

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180411

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee