KR101512081B1 - 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치 - Google Patents

특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
KR101512081B1
KR101512081B1 KR20130014173A KR20130014173A KR101512081B1 KR 101512081 B1 KR101512081 B1 KR 101512081B1 KR 20130014173 A KR20130014173 A KR 20130014173A KR 20130014173 A KR20130014173 A KR 20130014173A KR 101512081 B1 KR101512081 B1 KR 101512081B1
Authority
KR
South Korea
Prior art keywords
column
row
message
component
matrix
Prior art date
Application number
KR20130014173A
Other languages
English (en)
Other versions
KR20140100861A (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 KR20130014173A priority Critical patent/KR101512081B1/ko
Priority to PCT/KR2014/000986 priority patent/WO2014123353A1/ko
Publication of KR20140100861A publication Critical patent/KR20140100861A/ko
Application granted granted Critical
Publication of KR101512081B1 publication Critical patent/KR101512081B1/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
    • 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
    • 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/611Specific encoding aspects, e.g. encoding by means of decoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치에 관한 것이다.
부호화 방법은 n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하고, n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하는 단계; 및 상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하여 전송하는 단계를 포함하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 방법으로 이루어진다.
또한, 복호화 방법은 전송 메시지를 수신하는 단계; 상기 수신한 전송 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성하는 단계; 상기 n 블록의 각 블록을 순서대로 행으로 배열하여 제2 행렬을 생성한 경우에는 상기 제2 행렬에서 행의 성분들의 합이 2 이상인 최초의 행을 제i 행 또는 제1 열의 성분이 '1'이고 동시에 그 행의 성분들의 합이 2 이상인 행을 제i 행이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 행의 제j+1 열의 성분이 '1'이고 제j 행의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 행의 제1 열부터 제i-1 열까지 성분은 '0'으로 하고 제i 행의 제i 열의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 행의 제j 열 성분을 '1'로 하고 제j 행의 제1 열부터 제j-1 열까지의 성분은 '0'으로 하여 제3 행렬을 생성하고, 상기 n 블록의 각 블록을 순서대로 열로 배열하여 제2 행렬을 생성한 경우에는 상기 제2 행렬에서 열의 성분들의 합이 2 이상인 최초의 열을 제i 열 또는 제1 행의 성분이 '1'이고 동시에 그 열의 성분들의 합이 2 이상인 열을 제i 열이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 열의 제j+1 행의 성분이 '1'이고 제j 열의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 열의 제1 행부터 제i-1 행까지 성분은 '0'으로 하고 제i 열의 제i 행의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 열의 제j 행 성분을 '1'로 하고 제j 열의 제1 행부터 제j-1 행까지의 성분은 '0'으로 하여 제3 행렬을 생성하는 단계; 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 열로 배열되는 경우에, 상기 제3 행렬에서 행(row) 복호화 메시지는 1≤j≤n에 대하여 제i 행의 성분의 합이 '2'이상인 마지막 행을 제j 행이라고 할 때, 1≤i≤j에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 행의 제j 열을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 행의 제k 열의 성분이 제j 행의 제j 열의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 열의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 열(column) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 열의 성분의 합이 '2' 미만이면 열(column)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 열의 성분의 합이 '2' 이상이면 열(column)복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성하고, 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 행으로 배열되는 경우에, 상기 제3 행렬에서 열(column) 복호화 메시지는 1≤i≤n에 대하여 제i 열의 성분의 합이 '2'이상인 마지막 열을 제j 열이라고 할 때, 1≤i≤j에 대하여 제i 열의 성분의 합이 '2'미만이면 열(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 열의 제j 행을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 열의 제k 행의 성분이 제j 열의 제j 행의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 행의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 열의 성분의 합이 '2'미만이면 열(column) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 행(row) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 행의 성분의 합이 '2' 미만이면 행(row)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성하는 행(row)과 열(column) 복호화 메시지 단계; 및 1≤i≤n에 대하여 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 동일한 경우에 복호화 메시지의 제i 번째 성분을 상기 동일한 값으로 선택하여 복호화하고 상기 행(row) 복호화 메시지와 열(column) 복호화 메시지를 비교하여 동일하지 않은 경우에는 메시지 입력 데이터의 길이 n과 동일한 길이의 복호화 메시지를 얻을 때까지 상기 부호화 방법 및 복호화 방법의 단계들을 반복 실행하며 이전 단계에서 이미 복호화된 메시지의 성분은 최종 복호화 메시지 성분으로 정하여 그대로 두고 이전단계에서 동일하지 않았던 성분들을 복호화하는 복호화 단계로 이루어진다.

Description

특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치 {METHOD AND DEVICE OF ENCODING/DECODING USING SPARSE MATRIX BASED ON SPECIFIC DENSITY}
본 발명은 특정밀도를 기반으로 하는 저밀도 행렬(sparse matrix)을 이용한 부호화/복호화 방법 및 장치에 관한 것으로서, 원본 메시지 데이터로부터 행렬을 생성하고, 생성한 행렬과 전송된 데이터의 밀도(density)를 이용하여 메시지를 쉽게 부호화하고 복호화 할 수 있는 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치에 관한 것이다.
일반적으로, 많은 통신 장치나 저장 장치, 기록 재생 장치에 있어서는 입력 정보 계열을 부호화한 부호 계열을 전송함으로써 디지털 전송 정보의 비트 오류율(Bit Error Rate, BER)의 저감이 도모되고 있다.
최근, 예를 들어 이동 통신이나 우주 통신 등의 통신 분야, 및 지상파 또는 위성 디지털 방송이라는 방송 분야의 연구가 활발하게 진행되고 있으며, 그에 수반하여 오류 정정 부호화 및 복호의 효율화를 목적으로 한 부호 이론에 관한 연구도 꾸준하게 행하여지고 있다.
부호 성능의 이론적 한계의 예로 섀넌(C.E.Shannon)의 통신로 부호화 정리에 의해 부여되는 섀넌 한계가 알려져 있다. 이에 부호 이론에 관한 연구의 목적 중 하나는 이 섀넌 한계에 가까운 성능을 나타내는 부호를 개발하는 것이다.
그러나 기존에 개발된 부호화(encoding) 또는 복호화(decoding) 방법보다 더욱 계산이 간단하고 효율적인 부호화 또는 복호화 기술이 요구된다.
이에 부호화 단계에서부터 계산 과정을 줄일 수 있으며 복호화 단계에서도 데이터의 복호 성능의 효율성을 개선한 코딩 방법의 필요성이 크게 대두되고 있다.
본 발명은 이와 같은 문제점을 해결하기 위한 것으로, 본 발명은 원본 메시지 데이터의 특징을 그대로 구현한 행렬을 생성하고, 상기 행렬을 사용하여 부호화함으로써, 부호화에 사용되는 계산을 감소시킬 수 있는 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 방법을 제공하는 데에 그 목적이 있다.
또한, 본 발명은 상기 부호화 방법에 의하여 부호화된 데이터를 행렬로 생성하고, 생성된 행렬에서 행(row) 또는 열(column)의 특정밀도(density)를 기반으로 하여 데이터를 복호화 함으로써, 복잡한 계산 과정이 생략되어 복호의 효율성을 개선시킬 수 있는 저밀도 행렬을 이용한 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 방법을 제공하는 데에 그 목적이 있다.
나아가, 본 발명은 상기 특정밀도를 기반으로 하는 저밀도 행렬을 부호화/복호화 방법을 실행하기 위한 저밀도 행렬을 이용한 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 장치를 제공하는 데에 그 목적이 있다.
본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 방법에 따르면, n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하고, n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하는 단계; 및 상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하여 전송하는 단계를 포함한다.
본 발명의 실시예들에 있어서, 상기 메시지 데이터의 n개 비트가 모두 '0'으로만 이루어진 경우에는 상기 제1 행렬을 생성하지 않고 모두 '0'으로 이루어진 길이가 n2인 상기 코드워드(codeword)를 생성한다.
본 발명의 다른 실시예들에 있어서, 상기 메시지 데이터의 n개 비트가 모두 '0'으로만 이루어진 경우에는 상기 제1 행렬을 생성하지 않고 n2이 아닌 다른 길이로 이루어진 코드워드(codeword)를 생성할 수 있다.
본 발명의 다른 실시예들에 있어서, 상기 메시지 데이터의 n개 비트가 모두 '0'으로만 이루어진 경우에는 상기 제1 행렬을 생성하지 않고 n2개가 아닌 다른 개수의 '0'으로 이루어진 코드워드(codeword)를 생성한다.
본 발명의 실시예들에 있어서, 상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하는 단계에서 상기 생성된 제1 행렬의 제1 행 내지 제n 행을 순서대로 연결하는 방식 또는 제1 열 내지 제n 열을 순서대로 연결하는 방식으로 n2의 길이의 상기 코드워드(codeword)를 생성할 수 있다.
본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 방법에 따르면, 전송 메시지를 수신하는 단계; 상기 수신된 전송 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성하는 단계; 상기 n 블록의 각 블록을 순서대로 행으로 배열하여 제2 행렬을 생성한 경우에는 상기 제2 행렬에서 행의 성분들의 합이 2 이상인 최초의 행을 제i 행 또는 제1 열의 성분이 '1'이고 동시에 그 행의 성분들의 합이 2 이상인 행을 제i 행이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 행의 제j+1 열의 성분이 '1'이고 제j 행의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 행의 제1 열부터 제i-1 열까지 성분은 '0'으로 하고 제i 행의 제i 열의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 행의 제j 열 성분을 '1'로 하고 제j 행의 제1 열부터 제j-1 열까지의 성분은 '0'으로 하여 제3 행렬을 생성하고, 상기 n 블록의 각 블록을 순서대로 열로 배열하여 제2 행렬을 생성한 경우에는 상기 제2 행렬에서 열의 성분들의 합이 2 이상인 최초의 열을 제i 열 또는 제1 행의 성분이 '1'이고 동시에 그 열의 성분들의 합이 2 이상인 열을 제i 열이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 열의 제j+1 행의 성분이 '1'이고 제j 열의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 열의 제1 행부터 제i-1 행까지 성분은 '0'으로 하고 제i 열의 제i 행의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 열의 제j 행 성분을 '1'로 하고 제j 열의 제1 행부터 제j-1 행까지의 성분은 '0'으로 하여 제3 행렬을 생성하는 단계; 상기 제3 행렬에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 열로 배열되는 경우의 행(row) 복호화 메시지는 1≤j≤n에 대하여 제i 행의 성분의 합이 '2'이상인 마지막 행을 제j 행이라고 할 때, 1≤i≤j에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 행의 제j 열을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 행의 제k 열의 성분이 제j 행의 제j 열의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 열의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 열(column) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 열의 성분의 합이 '2' 미만이면 열(column)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 열의 성분의 합이 '2' 이상이면 열(column)복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성하고, 상기 제3 행렬에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 행으로 배열되는 경우의 열(column) 복호화 메시지는 1≤i≤n에 대하여 제i 열의 성분의 합이 '2'이상인 마지막 열을 제j 열이라고 할 때, 1≤i≤j에 대하여 제i 열의 성분의 합이 '2'미만이면 열(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 열의 제j 행을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 열의 제k 행의 성분이 제j 열의 제j 행의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 행의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 열의 성분의 합이 '2'미만이면 열(column) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 행(row) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 행의 성분의 합이 '2' 미만이면 행(row)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성하는 행(row)과 열(column) 복호화 메시지 단계; 및 1≤i≤n에 대하여 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 동일한 경우에 복호화 메시지의 제i 번째 성분을 상기 동일한 값으로 선택하여 복호화하고 상기 행(row) 복호화 메시지와 열(column) 복호화 메시지를 비교하여 동일하지 않은 경우에는 메시지 입력 데이터의 길이 n과 동일한 길이의 복호화 메시지를 얻을 때까지 상기 유사한 부호화 과정과 복호화 과정을 반복 실행하며 이전 단계에서 이미 복호화된 메시지의 성분은 최종 복호화 메시지 성분으로 정하여 그대로 두고 이전단계에서 동일하지 않았던 성분들을 복호화하는 복호화 단계를 포함한다.
본 발명의 실시예들에 있어서, 상기 전송 메시지를 수신하는 단계 이후에 상기 수신한 전송 메시지의 길이를 측정하는 단계; 상기 측정한 전송 메시지의 길이를 비교하는 단계를 더 포함할 수 있다. 이 때, 상기 비교 결과, 상기 측정된 전송 메시지의 길이가 n2인 경우, 상기 전송된 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성한다.
본 발명의 실시예들에 있어서, 상기 측정된 전송 메시지의 길이가 n2이 아닌 경우, 상기 제2 행렬과 상기 제3 행렬 그리고 상기 행(row)과 열(column) 복호화 메시지 단계를 생략하여 상기 복호화 단계에서 상기 부호화 단계의 입력 메시지 길이인 n 개의 '0'으로 구성된 복호화 메시지 데이터를 생성하여 복호화한다.
본 발명의 실시예들에 있어서, 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 복호화 메시지를 얻는 복호화 단계에서 복호화 메시지의 제i 번째 성분은 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분의 동일한 값으로 하며, 최초의 상기 동일한 값을 최종 복호화 메시지로 결정한다. 따라서 최초로 복호화된 메시지를 우선적으로 기억하며 후속 복호화 메시지는 이전에 복호화되지 않았던 성분들이 복호화된다.
본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치는 제1 행렬 생성부, 코드워드 생성부 및 전송부를 포함한다. 제1 행렬 생성부는 n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성한다. 이와 달리, 제1 행렬 생성부는 n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성한다. 상기 코드워드 생성부 및 전송부는 상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하고 전송한다.
본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 장치는 전송 메시지를 수신하는 전송 메시지 수신부, 제2 행렬 생성부, 제3 행렬 생성부, 행(row)과 열(column) 복호화 메시지부 및 복호화부를 포함한다. 제2 행렬 생성부는 상기 수신된 전송 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성한다. 제3 행렬 생성부는 기 제2 행렬이 상기 n 블록의 각 블록을 순서대로 행으로 배열하여 제2 행렬을 생성한 경우에는 상기 제2 행렬에서 행의 성분들의 합이 2 이상인 최초의 행을 제i 행 또는 제1 열의 성분이 '1'이고 동시에 그 행의 성분들의 합이 2 이상인 행을 제i 행이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 행의 제j+1 열의 성분이 '1'이고 제j 행의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 행의 제1 열부터 제i-1 열까지 성분은 '0'으로 하고 제i 행의 제i 열의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 행의 제j 열 성분을 '1'로 하고 제j 행의 제1 열부터 제j-1 열까지의 성분은 '0'으로 하여 제3 행렬을 생성한다. 이와 달리, 제3 행렬 생성부는 상기 제2 행렬이 상기 n 블록의 각 블록을 순서대로 열로 배열하여 제2 행렬을 생성한 경우에는 상기 제2 행렬에서 열의 성분들의 합이 2 이상인 최초의 열을 제i 열 또는 제1 행의 성분이 '1'이고 동시에 그 열의 성분들의 합이 2 이상인 열을 제i 열이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 열의 제j+1 행의 성분이 '1'이고 제j 열의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 열의 제1 행부터 제i-1 행까지 성분은 '0'으로 하고 제i 열의 제i 행의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 열의 제j 행 성분을 '1'로 하고 제j 열의 제1 행부터 제j-1 행까지의 성분은 '0'으로 하여 제3 행렬을 생성한다. 행(row)과 열(column) 복호화 메시지부는 상기 제3 행렬에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 열로 배열되는 경우에, 행(row) 복호화 메시지는 1≤j≤n에 대하여 제i 행의 성분의 합이 '2'이상인 마지막 행을 제j 행이라고 할 때, 1≤i≤j에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 행의 제j 열을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 행의 제k 열의 성분이 제j 행의 제j 열의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 열의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 열(column) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 열의 성분의 합이 '2' 미만이면 열(column)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 열의 성분의 합이 '2' 이상이면 열(column)복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성한다. 이와 달리, 행(row)과 열(column) 복호화 메시지부는상기 제3 행렬에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 행으로 배열되는 경우에, 열(column) 복호화 메시지는 1≤i≤n에 대하여 제i 열의 성분의 합이 '2'이상인 마지막 열을 제j 열이라고 할 때, 1≤i≤j에 대하여 제i 열의 성분의 합이 '2'미만이면 열(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 열의 제j 행을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 열의 제k 행의 성분이 제j 열의 제j 행의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 행의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 열의 성분의 합이 '2'미만이면 열(column) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 행(row) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 행의 성분의 합이 '2' 미만이면 행(row)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성한다. 한편, 복호화부는 1≤i≤n에 대하여 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 동일한 경우에 복호화 메시지의 제i 번째 성분을 상기 동일한 값으로 선택하여 복호화하고 상기 행(row) 복호화 메시지와 열(column) 복호화 메시지를 비교하여 동일하지 않은 경우에는 메시지 입력 데이터의 길이 n과 동일한 길이의 복호화 메시지를 얻을 때까지 상기 유사한 부호화 과정과 복호화 과정을 반복 실행하며 이전 단계에서 이미 복호화된 메시지의 성분은 최종 복호화 메시지 성분으로 정하여 그대로 두고 이전단계에서 동일하지 않았던 성분들을 복호화한다.
본 발명의 실시예들에 있어서, 복호화 장치는 상기 전송 메시지 수신부에서 수신한 전송 메시지의 길이를 측정하는 전송 메시지 길이 측정부 및 상기 측정한 전송 메시지의 길이를 비교하는 전송 메시지 길이 비교부를 더 포함한다. 이 때, 상기 비교 결과 상기 전송 메시지의 길이가 n2인 경우, 상기 제2 행렬부는 상기 전송된 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성한다.
본 발명의 실시예들에 있어서, 상기 측정된 전송 메시지의 길이가 n2이 아닌 경우, 상기 제2 행렬 생성부와 상기 제3 행렬 생성부 및 상기 행(row)과 열(column) 복호화 메시지부를 건너뛰고, 상기 복호화부가 상기 부호화 장치의 입력 메시지 길이인 n 개의 '0'으로 구성된 복호화 메시지 데이터를 생성하여 복호화한다.
이상에서 설명한 바와 같은 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치에 따르면 다음과 같은 효과가 있다.
n개의 비트로 구성된 메시지 데이터를 n개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’이고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하거나, 또는 n개의 비트로 구성된 메시지 데이터를 n개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’이며, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’이고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이 ‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성함으로써 부호화와 복호화의 복잡도를 감소시키며 상기 제1 행렬에서 나타나는 규칙들은 부호화와 복호화의 계산 부담을 현저하게 감소시켜 부호화와 복호화의 효율성을 향상시키며, 특히 각 행과 각 열은 메시지 입력 데이터에 대한 정보를 포함하고 있기 때문에 더욱 간단하고 쉬운 복호화의 원천 기술을 제공하여 복호화의 성능을 개선시키고 이를 이용하여 다양한 응용을 제공할 수 있다.
제1 행렬에서 나타나는 규칙들을 활용함으로써, 종래 방식에서의 역행렬에 대한 계산 부담이 줄어들고 복호화의 기술과 성능의 효과에 가장 중요한 역할을 한다.
제1 행렬을 직접 생성할 수 있기 때문에 특히 부호화의 복잡도가 감소되며 복호화의 기술과 성능의 효과에 중요한 역할을 한다.
n개의 비트로 구성된 메시지 입력 데이터를 행 또는 열로 배열할 때, 상기 메시지 입력 데이터에서 최초로 '1'이 나타나는 열 또는 행을 제i 열 또는 제i 행이라고 할 때, 상기 제1 행렬은 n개의 비트로 구성된 메시지 데이터에서 1≤k≤n에 대하여 제k 열의 성분이 0이면 상기 제1 행렬의 제k 행 또는 제k 열의 성분의 합은 1이고 n개의 비트로 구성된 메시지 데이터에서 1≤k≤n에 대하여 제k 열의 성분이 1이면 상기 제1 행렬의 제k 행 또는 제k 열의 성분의 합은 2이다. 그러므로 상기 제1 행렬에서 각 행과 각 열의 합은 '1' 또는 '2'이다. 이를 이용하여 매우 간단하고 쉬운 복호화 방법을 제공하는데 그 목적이 있다.
부호화 단계에서 행렬의 행 또는 열의 순서대로 연접하여 생성된 코드워드를 수신하여 간단한 부호화와 복호화에서 복호기능을 향상시킨다.
전송된 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성하고 상기 제2 행렬로부터 행의 성분들의 합이 2이상인 최초의 행을 제i 행 또는 제1 열의 성분이 '1'이고 동시에 그 행의 성분들의 합이 2이상인 행을 제i 행이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 행의 제j+1 열의 성분이 '1'이고 제j 행의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 행의 제1 열부터 제i-1 열까지 성분은 '0'으로 하고 제i 행의 제i 열의 성분은 '1'로 한다. i+1≤j≤n에 대하여 제2 행렬의 제j 행의 제j 열 성분을 '1'로 하고 제j 행의 제1 열부터 제j-1 열까지의 성분은 '0'으로 하여 제3 행렬을 생성하거나 또는 상기 제2 행렬에서 열의 성분들의 합이 2이상인 최초의 열을 제i 열 또는 제1 행의 성분이 '1'이고 동시에 그 열의 성분들의 합이 2이상인 열을 제i 열이라고 할 때, i<j≤n에 대하여 제2 행렬의 제j 열의 제j+1 행의 성분이 '1'이고 제j 열의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 열의 제1 행부터 제i-1 행까지 성분은 '0'으로 하고 제i 열의 제i 행의 성분은 '1'로 한다. i+1≤j≤n에 대하여 제2 행렬의 제j 열의 제j 행 성분을 '1'로 하고 제j 열의 제1 행부터 제j-1 행까지의 성분은 '0'으로 하여 제3 행렬을 생성함으로써 복호화의 성능을 향상시킨다.
전송된 메시지의 길이를 측정하여 전송 메시지의 길이를 비교하여 상기 비교 결과, 상기 측정된 전송 메시지의 길이가 n2인 경우, 상기 전송된 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성하고 상기 제2 행렬에서 행의 성분들의 합이 2이상인 최초의 행을 제i 행 또는 제1 열의 성분이 '1'이고 동시에 그 행의 성분들의 합이 2이상인 행을 제i 행이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 행의 제j+1 열의 성분이 '1'이고 제j 행의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 행의 제1 열부터 제i-1 열까지 성분은 '0'으로 하고 제i 행의 제i 열의 성분은 '1'로 한다. i+1≤j≤n에 대하여 제2 행렬의 제j 행의 제j 열 성분을 '1'로 하고 제j 행의 제1 열부터 제j-1 열까지의 성분은 '0'으로 하여 제3 행렬을 생성하거나 또는 상기 제2 행렬에서 열의 성분들의 합이 2이상인 최초의 열을 제i 열 또는 제1 행의 성분이 '1'이고 동시에 그 열의 성분들의 합이 2이상인 열을 제i 열이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 열의 제j+1 행의 성분이 '1'이고 제j 열의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 열의 제1 행부터 제i-1 행까지 성분은 '0'으로 하고 제i 열의 제i 행의 성분은 '1'로 한다. i+1≤j≤n에 대하여 제2 행렬의 제j 열의 제j 행 성분을 '1'로 하고 제j 열의 제1 행부터 제j-1 행까지의 성분은 '0'으로 하여 제3 행렬을 생성하고 전송된 메시지의 길이를 측정하여 전송 메시지의 길이를 비교하여 상기 비교 결과, 상기 측정된 전송 메시지의 길이가 n2이 아닌 경우에는 제2 행렬과 제3 행렬을 생성하지 않고 직접 메시지를 복호화함으로써 복호화의 성능을 향상시킨다.
상기 제3 행렬에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 열로 배열되는 경우에, 행(row) 복호화 메시지는 1≤j≤n에 대하여 제i 행의 성분의 합이 '2'이상인 마지막 행을 제j 행이라고 할 때, 1≤i≤j에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'이다. 그리고 제j 행의 제j 열을 제외하고 j < k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 행의 제k 열의 성분이 제j 행의 제j 열의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 열의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제k 번째의 성분은 '1'로 결정한다. j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'이다. 그리고 열(column) 복호화 메시지는 상기 제3 행렬에서 1≤j≤n에 대하여 제i 열의 성분의 합이 '2' 미만이면 열(column)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 열의 성분의 합이 '2' 이상이면 열(column)복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성하거나 상기 제3 행렬에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 행으로 배열되는 경우에, 열(column) 복호화 메시지는 1≤j≤n에 대하여 제i 열의 성분의 합이 '2'이상인 마지막 열을 제j 열이라고 할 때, 1≤i≤j에 대하여 제i 열의 성분의 합이 '2'미만이면 열(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column)) 복호화 메시지의 제i 번째의 성분은 '1'이다. 그리고 제j 열의 제j 행을 제외하고 j < k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 열의 제k 행의 성분이 제j 열의 제j 행의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 행의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제k 번째의 성분은 '1'로 결정한다. j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 열의 성분의 합이 '2'미만이면 열(column) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'이다. 그리고 행(row) 복호화 메시지는 상기 제3 행렬에서 1≤j≤n에 대하여 제i 행의 성분의 합이 '2' 미만이면 행(row)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성함으로써 복호화의 복잡도를 매우 감소시키며 복호화의 성능을 매우 향상시킨다.
1≤i≤n에 대하여 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 동일한 경우에 복호화 메시지의 제i 번째 성분을 상기 동일한 값으로 선택하여 복호화하고 상기 행(row) 복호화 메시지와 열(column) 복호화 메시지를 비교하여 동일하지 않은 경우에는 메시지 입력 데이터의 길이 n과 동일한 길이의 복호화 메시지를 얻을 때까지 상기 유사한 부호화 과정과 복호화 과정을 반복 실행하며 이전 단계에서 이미 복호화된 메시지의 성분은 최종 복호화 메시지 성분으로 정하여 그대로 두고 이전단계에서 동일하지 않았던 성분들을 복호화함으로써 복호화의 복잡도를 감소시키고 복호화의 성능을 향상시킨다.
상기 제3 행렬에서 원본 메시지 데이터에 관한 정보가 포함된 행 또는 열의 특정 밀도를 이용하여 매우 간단하고 효율적인 복호화를 한다.
나아가, 본 발명은 상기 특정한 밀도를 기반으로 하는 저밀도 행렬의 부호화/복호화 방법을 실행하기 위한 특정한 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 장치를 제공하는 데에 그 목적이 있다.
[도 1]은 본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치를 설명하기 위한 블록도
[도 2]는 본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 방법을 설명하기 위한 순서도
[도 3]은 본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 장치를 설명하기 위한 블록도
[도 4]는 본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 방법을 설명하기 위한 순서도
첨부한 도면을 참조하여 본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치에 대하여 상세히 설명한다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나, 개략적인 구성을 이해하기 위하여 실제보다 축소하여 도시한 것이다.
또한, 제1 및 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 한편, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치를 설명하기 위한 블록도이고, 도 2는 본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 방법을 설명하기 위한 순서도이다.
도 1 및 도 2를 참조하면, 본 발명의 실시예들에 따른 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치(100)는 제1 행렬 생성부(110), 코드워드(codeword) 생성부(120) 및 전송부(130)를 포함한다.
본 발명의 실시예들에 있어서, 입력 데이터 n개 비트가 모두 '0'으로 이루어진 경우에는 제1 행렬 생성부(110)를 생략하여 코드워드(codeword) 생성부(120)에서 '0'으로 이루어진 길이가 n2인 코드워드를 생성한다.
본 발명의 다른 실시예들에 있어서, 입력 데이터가 n개 비트가 모두 '0'으로 이루어진 경우에는 제1 행렬 생성부(110)를 생략하여 코드워드(codeword) 생성부(120)에서 n개의 '0'으로 이루어진 코드워드를 생성한다.
본 발명의 다른 실시예들에 있어서, 입력 데이터 n개 비트가 모두 '0'으로 이루어진 경우에는 제1 행렬 생성부(110)를 생략하여 코드워드(codeword) 생성부(120)에서 '0' 또는 '1'로 이루어진 하나의 비트를 코드워드로 생성한다.
본 발명의 또 다른 실시예들에 있어서, 입력 데이터 n개 비트가 모두 '0'으로 이루어진 경우에는 제1 행렬 생성부(110)를 생략하여 코드워드(codeword) 생성부(120)에서 길이가 n2이 아닌 코드워드를 생성한다.
본 발명의 실시예들에 있어서, 제1 행렬 생성부(110)는 n개의 비트로 구성된 메시지 데이터를 n개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’이다. i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’이다. i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하한다.
이와 달리, 제1 행렬 생성부(110)는 n개의 비트로 구성된 메시지 데이터를 n개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’이다. i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’이다. i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이 ‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성한다.
예를 들어, 메시지 입력 데이터가 '0101010101'인 경우에 제1 행렬 생성부(110)에서 수학식 1과 같은 제1 행렬을 생성할 수 있다.
[수학식 1]
Figure 112014024297957-pat00009
이와 같이 종래의 방식에 따른 연산을 거치지 않고, 제1 행렬에서 나타나는 간단한 규칙들에 의하여 제1 행렬을 생성할 수도 있다.
코드워드 생성부(120)는 제1 행렬 생성부(110)가 생성한 n x n 크기의 제1 행렬의 제1 행 내지 제n 행 또는 제1 열 내지 제n 열을 하나의 라인에 순서대로 배열하는 방식으로 n2 길이의 코드워드를 생성한다(S120).
예를 들어, 코드워드 생성부(120)는 수학식 1과 같은 제1 행렬에 대해서 '0100000000100100000000100000000001010000000010000000000101000000001000000000010100000000100000000001‘의 코드워드를 생성할 수 있다.
한편, 메시지 데이터의 길이 n 에 대하여 메시지 데이터가 모두 '0'으로 이루어진 경우에는 제1 행렬 생성부(110)를 건너뛰어(생략하여) 코드워드 생성부(120)에서 '0'으로 이루어진 길이가 n2 인 코드워드를 생성하여 전송부(130)에 전달한다.
본 발명의 다른 실시예들에 있어서, 메시지 데이터의 길이 n 에 대하여 메시지 데이터가 모두 '0'으로 이루어진 경우에는 제1 행렬 생성부(110)를 생략하여 코드워드 생성부(120)에서 '0'으로 이루어진 길이가 n 인 코드워드를 생성하여 전송부(130)에 전달한다.
본 발명의 다른 실시예들에 있어서, 메시지 데이터의 길이 n에 대하여 메시지 데이터가 모두 '0'으로 이루어진 경우에는제1 행렬 생성부(110)를 생략하여 코드워드 생성부(120)에서 '0' 또는 '1'을 코드워드로 생성하여 전송부(130)에 전달한다.
본 발명의 다른 실시예들에 있어서, 메시지 데이터의 길이 n에 대하여 메시지 데이터가 모두 '0'으로 이루어진 경우에는 제1 행렬 생성부(110)를 생략하여 코드워드 생성부(120)에서 길이가 n2이 아닌 코드워드를 생성하여 전송부(130)에 전달한다.
전송부(130)는 코드워드 생성부(120)에서 생성된 코드워드를 외부로 전송한다(S130).
이와 같이, 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치(100)는 원본 메시지 데이터를 이용하여 제1 행렬을 생성하여 부호화의 계산 부담을 줄일 수 있다.
본 발명의 실시예들에 있어서, 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치(100)는 상기 제1 행렬에서 나타나는 ‘0’과 ‘1’의 특정한 배열(array)의 규칙들을 이용하여 규칙을 사용하여 제1 행렬을 생성할 수 있기 때문에 계산의 복잡도를 줄인 간단한 부호화를 할 수 있다.
또한, 특정밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치(100)는 제1 행렬 생성부(110)에서 생성된 제1 행렬에서 나타나는 '0'과 '1'의 특정한 배열(array)의 규칙들은 메시지 데이터에 관한 정보를 나타내기 때문에 부호화와 복호화의 계산 부담을 줄이고 부호화와 복호화가 매우 간단하기 때문에 부호화와 복호화의 성능을 향상시키며 효율적이다.
도 3은 본 발명의 실시예들에 따른 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 장치(200)를 설명하기 위한 블록도이고, 도 4는 본 발명의 실시예들에 따른 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 방법을 설명하기 위한 순서도이다.
도 3 및 도 4를 참조하면 본 발명의 실시예들에 따른 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 장치(200)는 전송 메시지 수신부(210), 전송 메시지 길이 측정부(220), 전송 메시지 길이 비교부(230), 제2 행렬 생성부(240), 제3 행렬 생성부(250), 행(row)과 열(column) 복호화 메시지부(260), 복호화부(270)를 포함한다.
특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 장치(200)는 부호화 장치(100)로부터 일정 정보를 전달 받아 복호화 과정을 수행할 수 있다. 이 때 본 복호화 장치(200)는 원본 메시지 길이에 대한 정보 또는 메시지 입력 데이터의 길이, 전송 메시지의 길이에 대한 정보를 사전에 부호화 장치(100)로부터 전달 받아 획득할 수 있다.
전송 메시지 수신부(210)는 외부로부터 전송된 전송 메시지를 수신한다. 이 때, 전송 메시지 수신부(210)는 특정 길이를 갖는 전송 메시지를 수신할 수 있다. 예를 들어, 전송 메시지 수신부(210)는 n2 , n 또는 1 의 길이를 갖는 전송 메시지를 수신할 수 있다. 이와 달리, 전송 메시지 수신부(210)는 n2 또는 n2 이 아닌 길이로 이루어진 전송 메시지를 수신할 수 있다.
전송 메시지 길이 측정부(220)는 전송 메시지 수신부(210)로부터 전달한 전송 메시지의 길이를 측정하고(S220), 상기 측정된 전송 메시지의 길이를 바탕으로 전송된 메시지는 제2 행렬 생성부(240), 제3 행렬 생성부(250), 행(row)과 열(column) 복호화 메시지부(260), 복호화부(270)로 전달된다.
전송 메시지 길이 비교부(230)에서 상기 측정한 전송 메시지의 길이를 비교한다. 이 때, 전송 메시지 길이 비교부(230)는 전송 메시지의 길이가 n2 인지 아닌지를 판단할 수 있다(S230). 또한, 전송 메시지 길이 비교부(230)는 전송 메시지의 길이가 특정 길이를 갖는 지를 판단할 수 있다.
한편 비교 결과, 전송 메시지의 길이가 n 개 이거나 1 개 이거나, 또는 n2 개가 아닌 경우에는 제2 행렬 생성부(240), 제3 행렬 생성부(250), 행(row)과 열(column) 복호화 메시지부(260)를 생략하고(건너뛰고), 복호화부(270)에서 메시지 데이터의 길이만큼의 '0'으로 이루어진 복호화 메시지를 생성한다(S270). 예를 들어, 최초 입력 데이터의 길이가 10이고 전송 메시지 수신부(210)에 수신된 전송 메시지의 길이가 10인 경우에, 제2 행렬 생성부(240), 제3 행렬 생성부(250), 행(row)과 열(column) 복호화 메시지부(260)를 생략하고 복호화부에서 '0000000000'을 복호화 메시지로 생성한다.
한편, 상기 전송 메시지 길이 비교부(230)에서 전송 메시지의 길이가 n2 인 경우에는 전송된 메시지는 제2 행렬 생성부(240)로 전달된다.
본 발명의 다른 실시예들에 있어서, 복호화 장치(200)가 전송 메시지의 길이에 대한 정보를 이미 알고 있는 경우에는 전송 메시지 길이 측정부(220)와 전송 메시지 길이 비교부(230)를 생략하여 바로 제2 행렬 생성부(240), 제3 행렬 생성부(250), 행(row)과 열(column) 복호화 메시지부(260), 복호화부(270)로 전달될 수 있다.
제2 행렬 생성부(240)는 상기 전송된 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성한다. 이 때, 제2 행렬 생성부(240)는 제2 행렬을 n2 길이의 전송 메시지를 n 블록으로 구분한 후, 제1 행 내지 제n 행으로 구성된 제2 행렬을 생성하거나, 제1 열 내지 제n 열로 구성된 제2 행렬을 생성한다(S240).
예를 들면, 입력 데이터 메시지의 길이가 10이고, 전송 메시지 수신부(210)에서 수신된 전송된 메시지가
'0100000000001000000010001000000001000000000010010000000100000000001000000000011000000000100000000001'이면 전송 메시지 길이 측정부(220)에서 전송된 메시지 길이가 100으로 측정되고, 전송 메시지 길이 비교부(230)에서 비교결과 전송된 메시지의 길이가 102 이므로 제2 행렬 생성부(240)로 전달되어 제2 행렬 생성부(240)에서는 수학식 2와 같은 제2 행렬을 생성한다.
[수학식 2]
Figure 112013011819514-pat00001
예를 들면 전송 메시지 수신부(210)에서 수신된 전송된 메시지가
'0010000000100000000001000000000001000000001010000000000100000000001000000010010000000001100000000001'이면 전송 메시지 길이 측정부(220)에서 전송된 메시지 길이가 100으로 측정되고, 전송 메시지 길이 비교부(230)에서 비교결과 전송된 메시지의 길이가 n2 이므로 제2 행렬 생성부(240)로 전달되어 제2 행렬 생성부(240)에서는 수학식 3과 같은 제2 행렬을 생성할 수도 있다.
[수학식 3]
Figure 112013011819514-pat00002
수학식 2와 수학식 3은 전송 메시지를 행의 순서대로 나열하여 제2 행렬을 생성하는 방법과 열의 순서대로 나열하여 제2 행렬을 생성하는 방법에 따른 차이에 불과하다고 할 것이다. 이 때, 제2 행렬을 생성하는 방법은 제1 행렬을 생성할 때의 행 또는 열로 배열하는 방식에 따라 결정될 수 있다.
제3 행렬 생성부(250)는 제2 행렬 생성부(240)에서 생성된 제2 행렬에서 행의 성분들의 합이 2이상인 최초의 행을 제i 행 또는 제1 열의 성분이 '1'이고 동시에 그 행의 성분들의 합이 2이상인 행을 제i 행이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 행의 제j+1 열의 성분이 '1'이고 제j 행의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 행의 제1 열부터 제i-1 열까지 성분은 '0'으로 하고 제i 행의 제i 열의 성분은 '1'로 한다. i+1≤j≤n에 대하여 제2 행렬의 제j 행의 제j 열 성분을 '1'로 하고 제j 행의 제1 열부터 제j-1 열까지의 성분은 '0'으로 하여 제3 행렬을 생성하거나 또는 상기 제2 행렬에서 열의 성분들의 합이 2이상인 최초의 열을 제i 열 또는 제1 행의 성분이 '1'이고 동시에 그 열의 성분들의 합이 2이상인 열을 제i 열이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 열의 제j+1 행의 성분이 '1'이고 제j 열의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 열의 제1 행부터 제i-1 행까지 성분은 '0'으로 하고 제i 열의 제i 행의 성분은 '1'로 한다. i+1≤j≤n에 대하여 제2 행렬의 제j 열의 제j 행 성분을 '1'로 하고 제j 열의 제1 행부터 제j-1 행까지의 성분은 '0'으로 하여 제3 행렬을 생성한다(S250).
예를 들면, 메시지 입력 데이터가 '0010100110'인 경우에 제2 행렬 생성부(240)에서 생성된 제2 행렬이 수학식 2과 같은 경우에 수학식 4과 같은 제3 행렬을 얻을 수 있으며, 제2 행렬 생성부(240)에서 생성된 제2 행렬이 수학식 3과 같은 경우에 수학식 5와 같은 제3 행렬을 얻을 수 있다.
[수학식 4]
Figure 112013011819514-pat00003
[수학식 5]
Figure 112013011819514-pat00004
행(row)과 열(column) 복호화 메시지부(260)에서는 부호화 단계에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 행으로 배열되는 경우에, 행(row) 복호화 메시지는 상기 제3 행렬에서 1≤j≤n에 대하여 제i 행의 성분의 합이 '2'이상인 마지막 행을 제j 행이라고 할 때, 1≤i≤j에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'이다. 그리고 제j 행의 제j 열을 제외하고 j < k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 행의 제k 열의 성분이 제j 행의 제j 열의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 열의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제k 번째의 성분은 '1'로 결정한다. j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'이다. 그리고 열(column) 복호화 메시지는 상기 제3 행렬에서 1≤j≤n에 대하여 제i 열의 성분의 합이 '2' 미만이면 열(column)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 열의 성분의 합이 '2' 이상이면 열(column)복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row)과 열(column) 복호화 메시지를 생성한다(S260).
예를 들면, 부호화 단계에서 상기 제3 행렬에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 열로 배열되는 경우에 제3 행렬인 수학식 4에서 행(row) 복호화 메시지는 제3 행렬의 제1 행의 성분의 합은 1이므로 복호화 메시지는 '0', 제2 행의 성분의 합은 '1'이므로 복호화 메시지는 '0', 제3 행의 성분의 합은 2이므로 복호화 메시지는 '1', 제4 행의 성분의 합은 1이므로 복호화 메시지는 '0', 제5 행의 성분의 합은 2이므로 복호화 메시지는 '1', 제6 행의 성분의 합은 1이므로 복호화 메시지는 '0', 제7 행의 성분의 합은 1이므로 복호화 메시지는 '0', 제8 행의 성분의 합은 2이므로 복호화 메시지는 '1'이고 제8 행이 행의 성분의 합이 2 이상인 마지막 행이므로 제8 행의 제8 열을 제외한 제 9열의 성분이 '1'이고 제9 열의 성분의 합이 '2'이므로 행(row) 복호화 메시지의 제9 번쩨 성분은 1로 결정하며, 제10 행의 성분의 합은 1이므로 복호화 메시지는 '0'이다. 따라서 행(row) 복호화 메시지는 '0010100110' 이다. 제3 행렬인 수학식 7에서 열(row) 복호화 메시지는 제3 행렬의 제1 열의 성분의 합은 0이므로 복호화 메시지는 '0', 제2 열의 성분의 합은 1이므로 복호화 메시지는 '0', 제3 열의 성분의 합은 2이므로 복호화 메시지는 '1', 제4 열의 성분의 합은 1이므로 복호화 메시지는 '0', 제5 열의 성분의 합은 2이므로 복호화 메시지는 '1', 제6 열의 성분의 합은 1이므로 복호화 메시지는 '0', 제7 열의 성분의 합은 1이므로 복호화 메시지는 '0', 제8 열의 성분의 합은 2이므로 복호화 메시지는 '1', 제9 열의 성분의 합은 2이므로 복호화 메시지는 '1', 제10 열의 성분의 합은 1이므로 복호화 메시지는 '0' 이므로 열(column) 복호화 메시지는 '0010100110' 이다.
행(row)과 열(column) 복호화 메시지부(260)에서는 부호화 단계에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 행으로 배열되는 경우에, 상기 제3 행렬에서 열(column) 복호화 메시지는 상기 제3 행렬에서 1≤j≤n에 대하여 제i 열의 성분의 합이 '2'이상인 마지막 열을 제j 열이라고 할 때, 1≤i≤j에 대하여 제i 열의 성분의 합이 '2'미만이면 열(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column)) 복호화 메시지의 제i 번째의 성분은 '1'이다. 그리고 제j 열의 제j 행을 제외하고 j < k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 열의 제k 행의 성분이 제j 열의 제j 행의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 행의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제k 번째의 성분은 '1'로 결정한다. j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 열의 성분의 합이 '2'미만이면 열(column) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'이다. 그리고 행(row) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 행의 성분의 합이 '2' 미만이면 행(row)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row)과 열(column) 복호화 메시지를 생성한다(S260).
예를 들면, 부호화 단계에서 입력 데이터가 제1 행렬 생성부(110)에서 제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 행으로 배열되는 경우에, 제3 행렬인 수학식 5에서 행(row) 복호화 메시지는 제3 행렬의 제1 행의 성분의 합은 0이므로 복호화 메시지는 '0', 제2 행의 성분의 합은 1이므로 복호화 메시지는 '0', 제3 행의 성분의 합은 2이므로 복호화 메시지는 '1', 제4 행의 성분의 합은 1이므로 복호화 메시지는 '0', 제5 행의 성분의 합은 2이므로 복호화 메시지는 '1', 제6 행의 성분의 합은 1이므로 복호화 메시지는 '0', 제7 행의 성분의 합은 1이므로 복호화 메시지는 '0', 제8 행의 성분의 합은 1이므로 복호화 메시지는 '0', 제9 행의 성분의 합은 2이므로 복호화 메시지는 '1', 제10 행의 성분의 합은 1이므로 복호화 메시지는 '0' 이다. 따라서 행(row) 복호화 메시지는 '0010100110' 이다. 제3 행렬인 수학식 5에서 열(row) 복호화 메시지는 제3 행렬의 제1 열의 성분의 합은 1이므로 복호화 메시지는 '0', 제2 열의 성분의 합은 1이므로 복호화 메시지는 '0', 제3 열의 성분의 합은 2이므로 복호화 메시지는 '1', 제4 열의 성분의 합은 1이므로 복호화 메시지는 '0', 제5 열의 성분의 합은 2이므로 복호화 메시지는 '1', 제6 열의 성분의 합은 1이므로 복호화 메시지는 '0', 제7 열의 성분의 합은 1이므로 복호화 메시지는 '0', 제8 열의 성분의 합은 2이므로 복호화 메시지는 '1'이고 제8 열이 성분의 합이 2 이상인 마지막 열이기 때문에 제8 열의 제8 행을 제외한 제9 열에서 '1'이 나타나고 제9 행의 합이 2 이상이다. 그러므로 열(row) 복호화 메시지의 제9 번째 성분은 '1'로 결정한다. 그리고 제10 열의 성분의 합은 1이므로 복호화 메시지는 '0' 이다, 따라서 열 (column) 복호화 메시지는 '0010100110' 이다.
복호화부(270)에서는 1≤i≤n에 대하여 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 동일한 경우에 복호화 메시지의 제i 번째 성분을 상기 동일한 값으로 선택하여 복호화하고 상기 행(row) 복호화 메시지와 열(column) 복호화 메시지를 비교하여 동일하지 않은 경우에는 메시지 입력 데이터의 길이 n과 동일한 길이의 복호화 메시지를 얻을 때까지 상기 유사한 부호화 과정과 복호화 과정을 반복 실행하며 이전 단계에서 이미 복호화된 메시지의 성분은 최종 복호화 메시지 성분으로 정하여 그대로 두고 이전단계에서 동일하지 않았던 성분들을 복호화한다(S270).
예를 들면, 행(row) 복호화 메시지가 '0010100110'이고 열 (column) 복호화 메시지가 '0010100110'이면, 행 복호화 메시지와 열 복호화 메시지가 동일하므로 복호화부(270)는 '0010100110'을 복호화 메시지로 한다.
복호화부(270)에서는 부호화와 복호화 과정을 반복하는 경우에 있어서 최종 복호화 메시지는 이전의 부호화와 복호화 과정에서 이미 복호화된 메시지를 최종 복호화 메시지로 결정한다.
100 : 부호화 장치 110 : 제1 행렬 생성부
120 : 코드워드 생성부 130 : 전송부
200 : 복호화 장치 210 : 전송 메시지 수신부
220 : 전송 메시지 길이 측정부 230 : 전송 메시지 길이 비교부
240 : 제2 행렬 생성부 250 : 제3 행렬 생성부
260 : 행과 열 복호화 메시지부 270 : 복호화부

Claims (18)

  1. 삭제
  2. 원본 메시지 데이터를 부호화하는 방법에 있어서,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하고,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하는 단계; 및
    상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하여 전송하는 단계를 포함하되,
    상기 메시지 데이터의 n개 비트가 모두 '0'으로만 이루어진 경우에는 상기 제1 행렬을 생성하지 않고 모두 '0'으로 이루어진 길이가 n2인 상기 코드워드(codeword)를 생성하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 방법.
  3. 원본 메시지 데이터를 부호화하는 방법에 있어서,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하고,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하는 단계; 및
    상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하여 전송하는 단계를 포함하되,
    상기 메시지 데이터의 n개 비트가 모두 '0'으로만 이루어진 경우에는 상기 제1 행렬을 생성하지 않고 n2이 아닌 다른 길이로 이루어진 코드워드(codeword)를 생성하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 방법.
  4. 원본 메시지 데이터를 부호화하는 방법에 있어서,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하고,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하는 단계; 및
    상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하여 전송하는 단계를 포함하되,
    상기 메시지 데이터의 n개 비트가 모두 '0'으로만 이루어진 경우에는 상기 제1 행렬을 생성하지 않고 n2개가 아닌 다른 개수의 '0'으로 이루어진 코드워드(codeword)를 생성하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 방법.
  5. 제2항 내지 제4항 중 어느 한 항에 있어서,
    상기 제1 행렬을 이용하여 상기 코드워드(codeword)를 생성하는 단계에서
    상기 생성된 제1 행렬의 제1 행 내지 제n 행을 순서대로 연결하는 방식 또는 상기 제1 행렬의 제1 열 내지 제n 열을 순서대로 연결하는 방식으로 n2의 길이의 상기 코드워드(codeword)를 생성하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 방법.
  6. 부호화 방법에 의하여 코드워드(codeword)로 생성되어 전송된 메시지를 복호화하기 위한 방법에 있어서,
    전송 메시지를 수신하는 단계;
    상기 수신한 전송 메시지의 길이를 측정하는 단계;
    상기 측정한 전송 메시지의 길이를 비교하는 단계;
    상기 비교 결과, 상기 측정된 전송 메시지의 길이가 n2인 경우, 상기 수신된 전송 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성하는 단계;
    상기 n 블록의 각 블록을 순서대로 행으로 배열하여 제2 행렬을 생성한 경우에는
    상기 제2 행렬에서 행의 성분들의 합이 2 이상인 최초의 행을 제i 행 또는 제1 열의 성분이 '1'이고 동시에 그 행의 성분들의 합이 2 이상인 행을 제i 행이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 행의 제j+1 열의 성분이 '1'이고 제j 행의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 행의 제1 열부터 제i-1 열까지 성분은 '0'으로 하고 제i 행의 제i 열의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 행의 제j 열 성분을 '1'로 하고 제j 행의 제1 열부터 제j-1 열까지의 성분은 '0'으로 하여 제3 행렬을 생성하고
    상기 n 블록의 각 블록을 순서대로 열로 배열하여 제2 행렬을 생성한 경우에는
    상기 제2 행렬에서 열의 성분들의 합이 2 이상인 최초의 열을 제i 열 또는 제1 행의 성분이 '1'이고 동시에 그 열의 성분들의 합이 2 이상인 열을 제i 열이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 열의 제j+1 행의 성분이 '1'이고 제j 열의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 열의 제1 행부터 제i-1 행까지 성분은 '0'으로 하고 제i 열의 제i 행의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 열의 제j 행 성분을 '1'로 하고 제j 열의 제1 행부터 제j-1 행까지의 성분은 '0'으로 하여 제3 행렬을 생성하는 단계;
    제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 열로 배열되는 경우에, 상기 제3 행렬에서 행(row) 복호화 메시지는 1≤j≤n에 대하여 제i 행의 성분의 합이 '2'이상인 마지막 행을 제j 행이라고 할 때, 1≤i≤j에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 행의 제j 열을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 행의 제k 열의 성분이 제j 행의 제j 열의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 열의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 열(column) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 열의 성분의 합이 '2' 미만이면 열(column)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 열의 성분의 합이 '2' 이상이면 열(column)복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성하고
    제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 행으로 배열되는 경우에, 상기 제3 행렬에서 열(column) 복호화 메시지는 1≤i≤n에 대하여 제i 열의 성분의 합이 '2'이상인 마지막 열을 제j 열이라고 할 때, 1≤i≤j에 대하여 제i 열의 성분의 합이 '2'미만이면 열(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 열의 제j 행을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 열의 제k 행의 성분이 제j 열의 제j 행의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 행의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 열의 성분의 합이 '2'미만이면 열(column) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 행(row) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 행의 성분의 합이 '2' 미만이면 행(row)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성하는 행(row)과 열(column) 복호화 메시지 단계; 및
    1≤i≤n에 대하여 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 동일한 경우에 복호화 메시지의 제i 번째 성분을 상기 동일한 값으로 선택하여 복호화하고 상기 행(row) 복호화 메시지와 열(column) 복호화 메시지를 비교하여 동일하지 않은 경우에는 메시지 입력 데이터의 길이 n과 동일한 길이의 복호화 메시지를 얻을 때까지 상기 단계들을 반복 실행하며 이전 단계에서 이미 복호화된 메시지의 성분은 최종 복호화 메시지 성분으로 정하여 그대로 두고 이전단계에서 동일하지 않았던 성분들을 복호화하는 복호화 단계를 포함하되,
    상기 측정된 전송 메시지의 길이가 n2이 아닌 경우, 상기 제2 행렬과 상기 제3 행렬 그리고 상기 행(row)과 열(column) 복호화 메시지 단계를 생략하여 상기 복호화 단계에서
    상기 부호화 단계의 입력 메시지 길이인 n 개의 '0'으로 구성된 복호화 메시지 데이터를 생성하여 복호화하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 방법.
  7. 삭제
  8. 삭제
  9. 제6항에 있어서,
    상기 행(row) 복호화 메시지의 제i 번째 성분과 상기 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 복호화 메시지를 얻는 상기 복호화 단계에서
    복호화 메시지의 제i 번째 성분은 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분의 동일한 값으로 하며, 최초의 상기 동일한 값을 최종 복호화 메시지로 결정하고, 최초로 복호화된 메시지를 우선적으로 기억하며 후속 복호화 메시지는 이전에 복호화되지 않았던 성분들이 복호화하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 방법.
  10. 삭제
  11. n 개의 비트로 이루어진 원본 메시지 데이터를 부호화하기 위한 장치에 있어서,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하고,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하는 제1 행렬 생성부;
    상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하는 코드워드 생성부; 및
    상기 생성한 코드워드를 전송하는 전송부를 포함하되,
    상기 메시지 데이터의 n개 비트가 모두 '0'으로만 이루어진 경우에는 상기 제1 행렬 생성부를 건너뛰고,
    상기 코드워드(codeword) 생성부가 모두 '0'으로 이루어진 길이가 n2인 코드워드를 생성하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치.
  12. n 개의 비트로 이루어진 원본 메시지 데이터를 부호화하기 위한 장치에 있어서,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하고,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하는 제1 행렬 생성부;
    상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하는 코드워드 생성부; 및
    상기 생성한 코드워드를 전송하는 전송부를 포함하되,
    상기 메시지 데이터의 n개 비트가 모두 '0'으로만 이루어진 경우에는 상기 제1 행렬 생성부를 건너뛰고,
    상기 코드워드(codeword) 생성부가
    n2이 아닌 다른 길이로 이루어진 코드워드(codeword)를 생성하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치.
  13. n 개의 비트로 이루어진 원본 메시지 데이터를 부호화하기 위한 장치에 있어서,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 열로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 열을 제i 열이라고 할 때, 1≤k≤i-1에 대하여 제k 행의 제k+1 열의 성분이 ‘1’이고, 제k 행의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 열 다음으로 제j 열에서 ‘1’이 나타날 때 제i 행의 제1 열과 제j 열의 성분은 ‘1’이고 제i 행의 나머지 성분은 ‘0’으로 하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 열의 성분이 ‘0’이면 제k 행의 제k 열의 성분은 ‘1’이고 제k 행의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 열의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 열 다음으로 제t 열에서 ‘1’이 나타날 때 제k 행의 제k 열과 제t 열의 성분이 ‘1’이고 제k 행의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하고,
    n 개의 비트로 구성된 원본 메시지 데이터를 n 개의 행으로 배열할 때, 상기 메시지 데이터에서 최초로 ‘1’이 나타나는 행을 제i 행이라고 할 때, 1≤k≤i-1에 대하여 제k 열의 제k+1 행의 성분이 ‘1’이고, 제k 열의 나머지 성분은 ‘0’으로 하고, i < j 를 만족하는 j에 대하여 상기 메시지 데이터의 제i 행 다음으로 제j 행에서 ‘1’이 나타날 때 제i 열의 제1 행과 제j 행의 성분은 ‘1’이고 제i 열의 나머지 성분은 ‘0’하고, i+1≤k≤n에 대하여 상기 메시지 데이터의 제k 행의 성분이‘0’이면 제k 열의 제k 행의 성분은 ‘1’이고 제k 열의 나머지 성분은 ‘0’이고 상기 메시지 데이터의 제k 행의 성분이 ‘1’이면 k < t 를 만족하는 t에 대하여 상기 메시지 데이터의 제k 행 다음으로 제t 행에서 ‘1’이 나타날 때 제k 열의 제k 행과 제t 행의 성분이 ‘1’이고 제k 열의 나머지 성분은 ‘0’으로 구성하여 이루어진 n x n 크기의 제1 행렬을 생성하는 제1 행렬 생성부;
    상기 제1 행렬을 이용하여 코드워드(codeword)를 생성하는 코드워드 생성부; 및
    상기 생성한 코드워드를 전송하는 전송부를 포함하되,
    상기 메시지 데이터의 n개 비트가 모두 '0'으로만 이루어진 경우에는상기 제1 행렬 생성부를 건너뛰고,
    상기 코드워드(codeword) 생성부가
    n2개가 아닌 다른 개수의 '0'으로 이루어진 코드워드(codeword)를 생성하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치.
  14. 제11항 내지 제13항 중 어느 한 항에 있어서,
    상기 제1 행렬부에서 생성된 제1 행렬을 이용하여 상기 코드워드(codeword)를 생성하는 상기 코드워드(codeword) 생성부는
    상기 생성된 제1 행렬의 제1 행 내지 제n 행을 순서대로 연결하는 방식 또는 상기 제1 행렬의 제1 열 내지 제n 열을 순서대로 연결하는 방식으로 n2의 길이의 상기 코드워드(codeword)를 생성하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화 장치.
  15. 부호화 장치를 통하여 코드워드(codeword)로 생성되어 전송된 메시지를 복호화하기 위한 장치에 있어서,
    전송 메시지를 수신하는 전송 메시지 수신부;
    상기 전송 메시지 수신부에서 수신한 전송 메시지의 길이를 측정하는 전송 메시지 길이 측정부;
    상기 측정한 전송 메시지의 길이를 비교하는 전송 메시지 길이 비교부;
    상기 비교 결과 상기 전송 메시지의 길이가 n2인 경우, 상기 수신된 전송 메시지를 n 블록으로 구분하고, 상기 n 블록의 각 블록을 순서대로 행 또는 열로 배열하여 n x n 크기의 제2 행렬을 생성하는 제2 행렬 생성부;
    상기 제2 행렬이 상기 n 블록의 각 블록을 순서대로 행으로 배열하여 제2 행렬을 생성한 경우에는
    상기 제2 행렬에서 행의 성분들의 합이 2 이상인 최초의 행을 제i 행 또는 제1 열의 성분이 '1'이고 동시에 그 행의 성분들의 합이 2 이상인 행을 제i 행이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 행의 제j+1 열의 성분이 '1'이고 제j 행의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 행의 제1 열부터 제i-1 열까지 성분은 '0'으로 하고 제i 행의 제i 열의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 행의 제j 열 성분을 '1'로 하고 제j 행의 제1 열부터 제j-1 열까지의 성분은 '0'으로 하여 제3 행렬을 생성하고
    상기 제2 행렬이 상기 n 블록의 각 블록을 순서대로 열로 배열하여 제2 행렬을 생성한 경우에는
    상기 제2 행렬에서 열의 성분들의 합이 2 이상인 최초의 열을 제i 열 또는 제1 행의 성분이 '1'이고 동시에 그 열의 성분들의 합이 2 이상인 열을 제i 열이라고 할 때, 1≤j<i에 대하여 제2 행렬의 제j 열의 제j+1 행의 성분이 '1'이고 제j 열의 나머지 성분은 '0'으로 하며, 제2 행렬의 제i 열의 제1 행부터 제i-1 행까지 성분은 '0'으로 하고 제i 열의 제i 행의 성분은 '1'로 하며, i+1≤j≤n에 대하여 제2 행렬의 제j 열의 제j 행 성분을 '1'로 하고 제j 열의 제1 행부터 제j-1 행까지의 성분은 '0'으로 하여 제3 행렬을 생성하는 제3 행렬 생성부;
    제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 열로 배열되는 경우에, 상기 제3 행렬에서 행(row) 복호화 메시지는 1≤j≤n에 대하여 제i 행의 성분의 합이 '2'이상인 마지막 행을 제j 행이라고 할 때, 1≤i≤j에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 행의 제j 열을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 행의 제k 열의 성분이 제j 행의 제j 열의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 열의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 행의 성분의 합이 '2'미만이면 행(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 열(column) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 열의 성분의 합이 '2' 미만이면 열(column)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 열의 성분의 합이 '2' 이상이면 열(column)복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성하고
    제1 행렬을 생성할 때 n개의 비트로 구성된 메시지 데이터가 n개의 행으로 배열되는 경우에, 상기 제3 행렬에서 열(column) 복호화 메시지는 1≤i≤n에 대하여 제i 열의 성분의 합이 '2'이상인 마지막 열을 제j 열이라고 할 때, 1≤i≤j에 대하여 제i 열의 성분의 합이 '2'미만이면 열(row) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 제j 열의 제j 행을 제외하고 j<k를 만족하는 k에 대하여 상기 제3 행렬에서 제j 열의 제k 행의 성분이 제j 열의 제j 행의 성분을 제외한 최초의 '1'이고 상기 제3 행렬의 제k 행의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제k 번째의 성분은 '1'로 하며, j<i<k와 k<i≤n을 만족하는 i에 대하여 제i 열의 성분의 합이 '2'미만이면 열(column) 복호화 메시지의 제i 번째의 성분은 '0'이고 제i 열의 성분의 합이 '2' 이상이면 열(column) 복호화 메시지의 제i 번째의 성분은 '1'로 하고, 행(row) 복호화 메시지는 상기 제3 행렬에서 1≤i≤n에 대하여 제i 행의 성분의 합이 '2' 미만이면 행(row)복호화 메시지의 제i 번째의 성분은 '0'이고 상기 제3 행렬에서 제i 행의 성분의 합이 '2' 이상이면 행(row) 복호화 메시지의 제i 번째의 성분은 '1'로 하여 행(row) 복호화 메시지와 열(column) 복호화 메시지를 생성하는 행(row)과 열(column) 복호화 메시지부; 및
    1≤i≤n에 대하여 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 동일한 경우에 복호화 메시지의 제i 번째 성분을 상기 동일한 값으로 선택하여 복호화하고 상기 행(row) 복호화 메시지와 열(column) 복호화 메시지를 비교하여 동일하지 않은 경우에는 메시지 입력 데이터의 길이 n과 동일한 길이의 복호화 메시지를 얻을 때까지 상기 단계들을 반복 실행하며 이전 단계에서 이미 복호화된 메시지의 성분은 최종 복호화 메시지 성분으로 정하여 그대로 두고 이전단계에서 동일하지 않았던 성분들을 복호화하는 복호화부를 포함하되,
    상기 측정된 전송 메시지의 길이가 n2이 아닌 경우, 상기 제2 행렬 생성부와 상기 제3 행렬 생성부 및 상기 행(row)과 열(column) 복호화 메시지부를 건너뛰고,
    상기 복호화부가 상기 부호화 장치의 입력 메시지 길이인 n 개의 '0'으로 구성된 복호화 메시지 데이터를 생성하여 복호화하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 장치.
  16. 삭제
  17. 삭제
  18. 제15항에 있어서,
    상기 복호화부에서
    상기 행(row)과 열(column) 복호화 메시지부에서 생성된 행(row) 복호화 메시지의 제i 번째 성분과 상기 행(row)과 열(column) 복호화 메시지부에서 생성된 열(column) 복호화 메시지의 제i 번째 성분을 비교하여 복호화 메시지를 얻고 복호화 메시지의 제i 번째 성분은 상기 행(row) 복호화 메시지의 제i 번째 성분과 열(column) 복호화 메시지의 제i 번째 성분의 동일한 값으로 하며, 최초의 상기 동일한 값을 최종 복호화 메시지로 결정하고, 최초로 복호화된 메시지를 우선적으로 기억하며 후속 복호화 메시지는 이전에 복호화되지 않았던 성분들이 복호화하는 것을 특징으로 하는 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 복호화 장치.
KR20130014173A 2013-02-07 2013-02-07 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치 KR101512081B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR20130014173A KR101512081B1 (ko) 2013-02-07 2013-02-07 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치
PCT/KR2014/000986 WO2014123353A1 (ko) 2013-02-07 2014-02-05 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130014173A KR101512081B1 (ko) 2013-02-07 2013-02-07 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20140100861A KR20140100861A (ko) 2014-08-18
KR101512081B1 true KR101512081B1 (ko) 2015-04-14

Family

ID=51299903

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130014173A KR101512081B1 (ko) 2013-02-07 2013-02-07 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치

Country Status (2)

Country Link
KR (1) KR101512081B1 (ko)
WO (1) WO2014123353A1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050052602A (ko) * 2003-11-28 2005-06-03 삼성전자주식회사 저밀도 패리티 검사를 이용한 패리티 정보 생성 방법
KR20070063851A (ko) * 2005-12-15 2007-06-20 삼성전자주식회사 패리티 검사 행렬, 패리티 검사 행렬 생성 방법, 인코딩방법 및 에러 정정 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100906474B1 (ko) * 2003-01-29 2009-07-08 삼성전자주식회사 저밀도 부가정보 발생용 매트릭스를 이용한 에러 정정방법 및그 장치
KR101073907B1 (ko) * 2004-07-27 2011-10-17 엘지전자 주식회사 Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050052602A (ko) * 2003-11-28 2005-06-03 삼성전자주식회사 저밀도 패리티 검사를 이용한 패리티 정보 생성 방법
KR20070063851A (ko) * 2005-12-15 2007-06-20 삼성전자주식회사 패리티 검사 행렬, 패리티 검사 행렬 생성 방법, 인코딩방법 및 에러 정정 장치

Also Published As

Publication number Publication date
WO2014123353A1 (ko) 2014-08-14
KR20140100861A (ko) 2014-08-18

Similar Documents

Publication Publication Date Title
JP6584036B2 (ja) 署名対応Polarエンコーダ及びデコーダ
KR102601215B1 (ko) 폴라 코딩 장치
Oggier et al. On the existence of generalized rank weights
US8438448B2 (en) Decoding method and device for low density generator matrix codes
US7231575B2 (en) Apparatus for iterative hard-decision forward error correction decoding
JP2021505096A (ja) 低複雑度組織符号化器を用いた送信データの誤り訂正方法及びシステム
KR101874537B1 (ko) 극 부호의 병렬 복호화 방법 및 장치
EP2309650B1 (en) A systematic encoder with arbitrary parity positions
WO2018149354A1 (zh) 极化码的编码方法、装置及设备、存储介质
CN105933107A (zh) 一种基于ldpc变码技术的纠错加密方法
US8621333B2 (en) Encoding device, controller and system including the same
KR100874484B1 (ko) 준순환 저밀도 패리티 검사 부호화 방법 및 장치
US20170288697A1 (en) Ldpc shuffle decoder with initialization circuit comprising ordered set memory
KR101512078B1 (ko) 특정밀도를 기반으로 하는 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치
CN104811211B (zh) Turbo码交织器的构造方法及装置
KR101512081B1 (ko) 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치
CN113794479B (zh) 极化调节卷积码的生成方法及相关设备
KR101425506B1 (ko) 보완적인 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치
CN115811381A (zh) 网络通信方法、网络通信装置、电子设备及存储介质
CN111525980B (zh) 译码方法及装置
KR101391859B1 (ko) 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치
WO2018149304A1 (zh) 数据处理方法和装置、数据处理设备及存储介质
KR101391853B1 (ko) 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치
CN111600613B (zh) 一种校验方法、装置、译码器、接收机及计算机存储介质
CN116366074B (zh) 基于二元扩域及提高满度比的lt码混合编解码方法及系统

Legal Events

Date Code Title Description
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
LAPS Lapse due to unpaid annual fee