[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR20120090762A - 부호화 방법, 복호 방법, 부호화기 및 복호기 - Google Patents

부호화 방법, 복호 방법, 부호화기 및 복호기 Download PDF

Info

Publication number
KR20120090762A
KR20120090762A KR1020117016127A KR20117016127A KR20120090762A KR 20120090762 A KR20120090762 A KR 20120090762A KR 1020117016127 A KR1020117016127 A KR 1020117016127A KR 20117016127 A KR20117016127 A KR 20117016127A KR 20120090762 A KR20120090762 A KR 20120090762A
Authority
KR
South Korea
Prior art keywords
parity check
formula
time
ldpc
parity
Prior art date
Application number
KR1020117016127A
Other languages
English (en)
Other versions
KR101660554B1 (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 파나소닉 주식회사
Publication of KR20120090762A publication Critical patent/KR20120090762A/ko
Application granted granted Critical
Publication of KR101660554B1 publication Critical patent/KR101660554B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1154Low-density parity-check convolutional codes [LDPC-CC]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/157Polynomial evaluation, i.e. determination of a polynomial sum at a given value
    • 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/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

오류 정정 능력이 높은 시변 LDPC-CC의 부호화 방법 및 부호화기를 제공하는 것. 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용하여, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화 방법에 있어서, 상기 시변 주기 q가, 3보다 큰 소수(素數)이고, 정보 계열이 입력되면, 수학식(1)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용하여, 상기 정보 계열을 부호화한다.
[수학식 1]
Figure pct00140

식(1)에 있어서, 「%」는 modulo를 의미하고, 각 계수가, k=1, 2, …, n-1에 대해서, 하기를 만족시킨다.
「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=…=a#g,k,1%q=…=a#q-2,k,1%q=a#q-1,k,1%q=vp=k(vp=k : 고정값)」
「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=…=b#g,1%q=…=b#q-2,1%q=b#q-1,1%q=w(w : 고정값)」
「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=…=a#g,k,2%q=…=a#q-2,k,2%q=a#q-1,k,2%q=yp=k(yp=k : 고정값)」
「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=…=b#g,2%q=…=b#q-2,2%q=b#q-1,2%q=z(z : 고정값)」
「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=…=a#g,k,3%q=…=a#q-2,k,3%q=a#q-1,k,3%q=sp=k(sp=k : 고정값)」
또, 식(1)에 있어서, a#g,k,1, a#g,k,2, a#g,k,3은 1 이상의 자연수로 하고, a#g,k,1≠a#g,k,2, a#g,k,1≠a#g,k,3, a#g,k,2≠a#g,k,3이 성립하는 것으로 한다. 또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다.
또, 식(1)에 있어서, vp =k, yp =k는, 1 이상의 자연수로 한다.

Description

부호화 방법, 복호 방법, 부호화기 및 복호기{ENCODING METHOD, DECODING METHOD, CODER AND DECODER}
본 발명은, 복수의 부호화율에 대응할 수 있는 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low Density Parity Check-Convolutional Codes)를 이용하는 부호화 방법, 복호 방법, 부호화기 및 복호기에 관한 것이다.
최근, 실현 가능한 회로 규모로 높은 오류 정정 능력을 발휘하는 오류 정정 부호로서 저밀도 패리티 검사(LDPC : Low-Density Parity-Check) 부호에 주목이 집중되고 있다. LDPC 부호는, 오류 정정 능력이 높고, 또 실장이 용이하므로, IEEE802.11n의 고속 무선 LAN 시스템이나 디지털 방송 시스템 등의 오류 정정 부호화 방식에 채용되고 있다.
LDPC 부호는, 저밀도 패리티 검사 행렬 H로 정의되는 오류 정정 부호이다. 또, LDPC 부호는, 검사 행렬 H의 열수 N과 동일한 블록 길이를 가지는 블록 부호이다(비특허 문헌 1, 비특허 문헌 2, 비특허 문헌 3 참조). 예를 들면, 랜덤적인 LDPC 부호, QC-LDPC 부호(QC : Quasi-Cyclic)가 제안되어 있다.
그러나, 현재의 통신 시스템의 상당수는, 이더넷(ethernet)(등록상표)과 같이, 송신 정보를, 가변 길이의 패킷이나 프레임마다 모아서 전송한다고 하는 특징이 있다. 이러한 시스템에 블록 부호인 LDPC 부호를 적용할 경우, 예를 들면, 가변 길이의 이더넷(등록상표)의 프레임에 대해서 고정 길이의 LDPC 부호의 블록을 어떻게 대응시키는가 하는 과제가 발생한다. IEEE802.11n에서는, 송신 정보 계열에 패딩 처리나 펑처 처리를 실시함으로써, 송신 정보 계열의 길이와, LDPC 부호의 블록 길이의 조절을 행하고 있다. 그러나, 패딩이나 펑처에 의해, 부호화율이 변화하거나 용장(冗長)한 계열을 송신하거나 하는 것을 피하기는 곤란하다.
이러한 블록 부호의 LDPC 부호(이후, 이것을 LDPC-BC : Low-Density Parity-Check Block Code라고 표기함)에 대해서, 임의 길이의 정보 계열에 대한 부호화ㆍ복호화가 가능한 LDPC-CC(Low-Density Parity-Check Convolutional Codes)의 검토가 행해지고 있다(예를 들면, 비특허 문헌 8, 비특허 문헌 9 참조).
LDPC-CC는, 저밀도 패리티 검사 행렬에 의해 정의되는 컨볼루션 부호이다. 예를 들면, 부호화율 R=1/2(=b/c)인 LDPC-CC의 패리티 검사 행렬 HT[0, n]는, 도 1에 표시된다. 여기서, HT[0, n]의 요소 h1 (m)(t)는, 0 또는 1을 취한다. 또, h1 (m)(t) 이외의 요소는 전부 0이다. M은 LDPC-CC에 있어서의 메모리 길이, n은 LDPC-CC의 부호어의 길이를 나타낸다. 도 1에 표시되는 것처럼, LDPC-CC의 검사 행렬은 행렬의 대각항과 그 부근의 요소에만 1이 배치되어 있고, 행렬의 좌하(左下) 및 우상(右上)의 요소는 제로로서, 평행 사변형 형태의 행렬이라고 하는 특징이 있다.
여기서, h1 (0)(t)=1, h2 (0)(t)=1일 때, 검사 행렬 HT[0, n]T로 정의되는 LDPC-CC의 부호화기는 도 2에 표시된다. 도 2에 표시되는 바와 같이, LDPC-CC의 부호화기는, 비트 길이 c의 쉬프트 레지스터(shift register) 2×(M+1)개와 mod2 가산(배타적 논리합 연산)기로 구성된다. 이때문에, LDPC-CC의 부호화기에는, 생성 행렬의 곱셈을 행하는 회로, 또는, 후퇴(전방) 대입법에 기초한 연산을 행하는 LDPC-BC의 부호화기에 비해, 매우 간단한 회로로 실현할 수 있다고 하는 특징이 있다. 또, 도 2는 컨볼루션 부호의 부호화기이기 때문에, 정보 계열을 고정 길이 블록으로 단락지어 부호화할 필요는 없고, 임의 길이의 정보 계열을 부호화할 수 있다.
특허 문헌 1에는, 패리티 검사 다항식에 기초한 LDPC-CC의 생성 방법에 대해서 설명되어 있다. 특히, 특허 문헌 1에서는, 시변 주기 2, 시변 주기 3, 시변 주기 4, 및, 시변 주기가 3의 배수인 패리티 검사 다항식을 이용한 LDPC-CC의 생성 방법에 대해서 설명되어 있다.
(선행 기술 문헌)
(특허 문헌)
(특허 문헌 1) 일본 특허 공개 제 2009-246926 호 공보
(비특허 문헌)
(비특허 문헌 1) R. G. Gallager, "Low-density parity check codes," IRE Trans. Inform. Theory, IT-8, pp-21-28, 1962.
(비특허 문헌 2) D. J. C. Mackay, "Good error-correcting codes based on very sparse matrices," IEEE Trans. Inform. Theory, vol.45, no.2, pp399-431, March 1999.
(비특허 문헌 3) M. P. C. Fossorier, "Quasi-cyclic low-density parity-check codes from circulant permutation matrices," IEEE Trans. Inform. Theory, vol.50, no.8, pp.1788-1793, Nov. 2001.
(비특허 문헌 4) M. P. C. Fossorier, M. Mihaljevic, and H. Imai, "Reduced complexity iterative decoding of low density parity check codes based on belief propagation," IEEE Trans. Commun., vol.47., no.5, pp.673-680, May 1999.
(비특허 문헌 5) J. Chen, A. Dholakia, E. Eleftheriou, M. P. C. Fossorier, and X. -Yu Hu, "Reduced-complexity decoding of LDPC codes," IEEE Trans. Commun., vol.53., no.8, pp.1288-1299, Aug. 2005.
(비특허 문헌 6) J. Zhang, and M. P. C. Fossorier, "Shuffled iterative decoding," IEEE Trans. Commun., vol.53, no.2, pp.209-213, Feb. 2005.
(비특허 문헌 7) IEEE Standard for Local and Metropolitan Area Networks, IEEE P802.16e/D12, Oct. 2005.
(비특허 문헌 8) A. J. Feltstrom, and K. S. Zigangirov, "Time-varying periodic convolutional codes with low-density parity-check matrix," IEEE Trans. Inform. Theory, vol.45, no.6, pp.2181-2191, Sep. 1999.
(비특허 문헌 9) R. M. Tanner, D. Sridhara, A. Sridharan, T. E. Fuja, and D. J. Costello Jr., "LDPC block and convolutional codes based on circulant matrices," IEEE Trans. Inform. Theory, vol.50, no.12, pp.2966-2984, Dec. 2004.
(비특허 문헌 10) H. H. Ma, and J. K. Wolf, "On tail biting convolutional codes," IEEE Trans. Commun., vol.com-34, no.2, pp.104-111, Feb. 1986.
(비특허 문헌 11) C. Weib, C. Bettstetter, and S. Riedel, "Code construction and decoding of parallel concatenated tail-biting codes," IEEE Trans. Inform. Theory, vol.47, no.1, pp.366-386, Jan. 2001.
(비특허 문헌 12) M. B. S. Tavares, K. S. Zigangirov, and G. P. Fettweis, "Tail-biting LDPC convolutional codes," Proc. of IEEE ISIT 2007, pp.2341-2345, June 2007.
(비특허 문헌 13) G. Muller, and D. Burshtein, "Bounds on the maximum likelihood decoding error probability of low-density parity check codes," IEEE Trans. Inf. Theory, vol.47, no.7, pp.2696-2710, Nov. 2001.
(비특허 문헌 14) R. G. Gallager, "A simple derivation of the coding theorem and some applications," IEEE Trans. Inf. Theory, vol.IT-11, no.1, pp.3-18, Jan. 1965.
(비특허 문헌 15) A. J. Viterbi, "Error bounds for convolutional codes and an asymptotically optimum decoding algorithm," IEEE Trans. Inf. Theory, vol.IT-13, no.2, pp.260-269, April 1967.
(비특허 문헌 16) A. J. Viterbi, and J. K. Omura, "Principles of digital communication and coding," McGraw-Hill, New York 1979.
그렇지만, 특허 문헌 1에는, 시변 주기 2, 3, 4, 및 시변 주기가 3의 배수인 LDPC-CC에 대해서는, 상세하게 생성 방법이 기재되어 있지만, 시변 주기가 한정적이다.
본 발명의 목적은, 오류 정정 능력이 높은 시변 LDPC-CC의 부호화 방법, 복호 방법, 부호화기 및 복호기를 제공하는 것이다.
본 발명의 부호화 방법의 하나의 양상은, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용하여, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화 방법이며, 상기 시변 주기 q가, 3보다 큰 소수(素數)이며, 정보 계열이 입력되면, 수학식(116)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용하여, 상기 정보 계열을 부호화한다.
본 발명의 부호화 방법의 하나의 양상은, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용하여, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화 방법으로서, 상기 시변 주기 q가, 3보다 큰 소수이며, 정보 계열이 입력되면, 식(117)에서 표시되는 g번째(g=0, 1, …, q-1)의 0을 만족시키는 패리티 검사 다항식 중,
「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=…=a#g,k,1%q=…=a#q-2,k,1%q=a#q-1,k,1%q=vp =k (vp=k : 고정값)」,
「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=…=b#g,1%q=…=b#q-2, 1%q=b#q-1, 1%q=w (w : 고정값)」,
「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=…=a#g,k,2%q=…=a#q-2,k,2%q=a#q-1,k,2%q=yp=k(yp=k : 고정값)」,
「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=…=b#g,2%q=…=b#q-2,2%q=b#q-1, 2%q=z (z : 고정값)」,
및,
「a#0, k, 3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=…=a#g, k, 3%q=…=a#q-2, k, 3%q=a#q-1, k, 3%q=sp=k(sp=k : 고정값)」
를, k=1, 2, …, n-1에 대해서 만족시키는 패리티 검사 다항식을 이용해, 상기 정보 계열을 부호화한다.
본 발명의 부호화기의 하나의 양상은, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화기이며, 상기 시변 주기 q가, 3보다 큰 소수이며, 시점 i의 정보 비트 Xr[i](r=1, 2, …, n-1)가 입력되면, 식(116)에 표시되는 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식과 등가(等價)인 식을 식(118)로 하여, i%q=k일 경우에, 식(118)의 g에 k를 대입한 식을 이용하여, 시점 i의 패리티 비트 P[i]를 생성하는 생성 수단과, 상기 패리티 비트 P[i]를 출력하는 출력 수단을 구비한다.
본 발명의 복호 방법의 하나의 양상은, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용하여, 시변 주기 q(3보다 큰 소수)인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 상기 부호화 방법에 있어서, 식(116)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용해서 부호화된 부호화 정보 계열을 복호하는 복호 방법이며, 상기 부호화 정보 계열이 입력되면, g번째의 0을 만족시키는 상기 패리티 검사 다항식인 식(116)을 이용해서 생성되는 패리티 검사 행렬에 기초하여, 신뢰도 전파(BP : Belief Propagation)를 이용해서, 상기 부호화 정보 계열을 복호한다.
본 발명의 복호기의 하나의 양상은, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q(3보다 큰 소수)인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 상기 부호화 방법에 있어서, 식(116)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용해서 부호화된 부호화 정보 계열을 복호하는 복호기이며, 상기 부호화 정보 계열이 입력되면, g번째의 0을 만족시키는 상기 패리티 검사 다항식인 식(116)을 이용해 생성되는 패리티 검사 행렬에 기초하여, 신뢰도 전파(BP : Belief Propagation)를 이용해, 상기 부호화 정보 계열을 복호하는 복호 수단을 구비한다.
본 발명에 의하면, 높은 오류 정정 능력을 얻을 수 있기 때문에, 높은 데이터 품질을 확보할 수 있다.
도 1은 LDPC-CC의 검사 행렬을 나타내는 도면,
도 2는 LDPC-CC 부호화기의 구성을 나타내는 도면,
도 3은 시변 주기 m인 LDPC-CC의 검사 행렬의 구성 일례를 나타내는 도면,
도 4(a)는 시변 주기 3인 LDPC-CC의 패리티 검사 다항식 및 검사 행렬 H의 구성을 나타내는 도면,
도 4(b)는 도 4(a)의 「검사식#1」~「검사식#3」의 X(D)에 관한 각 항끼리의 신뢰도 전파의 관계를 나타내는 도면,
도 4(c)는 「검사식#1」~「검사식#6」의 X(D)에 관한 각 항끼리의 신뢰도 전파의 관계를 나타내는 도면,
도 5는 (7, 5) 컨볼루션 부호의 검사 행렬을 나타내는 도면,
도 6은 부호화율 2/3, 시변 주기 2인 LDPC-CC의 검사 행렬 H의 구성 일례를 나타내는 도면,
도 7은 부호화율 2/3, 시변 주기 m인 LDPC-CC의 검사 행렬의 구성 일례를 나타내는 도면,
도 8은 부호화율 (n-1)/n, 시변 주기 m인 LDPC-CC의 검사 행렬의 구성 일례를 나타내는 도면,
도 9는 LDPC-CC 부호화부의 구성 일례를 나타내는 도면,
도 10은 패리티 검사 행렬의 일례를 나타내는 블록도,
도 11은 시변 주기 6인 LDPC-CC의 트리의 일례를 나타내는 도면,
도 12는 시변 주기 6인 LDPC-CC의 트리의 일례를 나타내는 도면,
도 13은 부호화율 (n-1)/n, 시변 주기 m인 LDPC-CC의 검사 행렬의 구성 일례를 나타내는 도면,
도 14는 시변 주기 7인 LDPC-CC의 트리의 일례를 나타내는 도면,
도 15(a)는 부호화율 1/2인 부호화기의 회로예를 나타내는 도면,
도 15(b)는 부호화율 1/2인 부호화기의 회로예를 나타내는 도면,
도 15(c)는 부호화율 1/2인 부호화기의 회로예를 나타내는 도면,
도 16은 제로 터미네이션(zero termination)의 방법을 설명하기 위한 도면,
도 17은 제로 터미네이션을 행했을 때의 검사 행렬의 일례를 나타내는 도면,
도 18(a)는 테일 바이팅(tail biting)을 행했을 때의 검사 행렬의 일례를 나타내는 도면,
도 18(b)는 테일 바이팅을 행했을 때의 검사 행렬의 일례를 나타내는 도면,
도 19는 통신 시스템의 개략을 나타내는 도면,
도 20은 LDPC 부호에 의한 소실 정정 부호화를 이용한 통신 시스템의 개념도,
도 21은 통신 시스템의 전체 구성도,
도 22는 소실 정정 부호화(消失訂正符號化) 관련 처리부의 구성 일례를 나타내는 도면,
도 23은 소실 정정 부호화 관련 처리부의 구성의 일례를 나타내는 도면,
도 24는 소실 정정 복호화 관련 처리부의 구성의 일례를 나타내는 도면,
도 25는 소실 정정 부호화기의 구성의 일례를 나타내는 도면,
도 26은 통신 시스템의 전체 구성도,
도 27은 소실 정정 부호화 관련 처리부의 구성의 일례를 나타내는 도면,
도 28은 소실 정정 부호화 관련 처리부의 구성의 일례를 나타내는 도면,
도 29는 복수 부호화율에 대응하는 소실 정정 부호화부의 구성의 일례를 나타내는 도면,
도 30은 부호화기의 부호화의 개략을 설명하기 위한 도면,
도 31은 복수 부호화율에 대응하는 소실 정정 부호화부의 구성의 일례를 나타내는 도면,
도 32는 복수 부호화율에 대응하는 소실 정정 부호화부의 구성의 일례를 나타내는 도면,
도 33은 복수 부호화율에 대응하는 복호화기의 구성의 일례를 나타내는 도면,
도 34는 복수 부호화율에 대응하는 복호화기가 이용하는 패리티 검사 행렬의 구성의 일례를 나타내는 도면,
도 35는 소실 정정 부호를 행하는 경우와 소실 정정 부호화를 행하는 경우와 실시하지 않는 경우의 패킷 구성의 일례를 나타내는 도면,
도 36은 패리티 검사 다항식 #α 및 #β에 상당하는 체크 노드와 변수 노드의 관계를 설명하기 위한 도면,
도 37은 패리티 검사 행렬 H에 있어서, X1(D)에 관한 부분만을 추출해서 생성되는 서브행렬을 나타내는 도면,
도 38은 시변 주기 7인 LDPC-CC의 트리의 일례를 나타내는 도면,
도 39는 시변 주기 6인 LDPC-CC의 트리 시변 주기 h의 일례를 나타내는 도면,
도 40은 표 9의 #1, #2, #3의 정칙(正則) TV11-LDPC-CC의 BER 특성을 나타내는 도면,
도 41은 부호화율 (n-1)/n, 시변 주기 h의 g번째(g=0, 1, …, h-1)의 패리티 검사 다항식(83)에 대응하는 패리티 검사 행렬을 나타내는 도면,
도 42는 정보 패킷과 패리티 패킷이 따로 따로 구성될 경우의 배열 변경 패턴의 일례를 나타내는 도면,
도 43은 정보 패킷과 패리티 패킷의 구별 없이 구성될 경우의 배열 변경 패턴의 일례를 나타내는 도면,
도 44는 물리층보다 상위 층에 있어서의 부호화 방법(패킷 레벨로의 부호화 방법)의 상세한 것에 대해 설명하기 위한 도면,
도 45는 물리층보다 상위 층에 있어서의 다른 부호화 방법(패킷 레벨로의 부호화 방법)의 상세한 것에 대해서 설명하기 위한 도면,
도 46은 패리티군 및 서브 패리티 패킷의 구성예를 나타내는 도면,
도 47은 쇼트닝 방법[방법#1-2]를 설명하기 위한 도면,
도 48은 쇼트닝 방법[방법#1-2]에 있어서의 삽입 룰을 설명하기 위한 도면,
도 49는 기지 정보를 삽입하는 위치와 오류 정정 능력의 관계에 대해서 설명하기 위한 도면,
도 50은 패리티 검사 다항식과 시점의 대응 관계를 나타내는 도면,
도 51은 쇼트닝 방법[방법#2-2]를 설명하기 위한 도면,
도 52는 쇼트닝 방법[방법#2-4]를 설명하기 위한 도면,
도 53은 물리층에 있어서 부호화율을 가변으로 할 경우의 부호화에 관련된 부분의 구성 일례를 나타내는 블록도,
도 54는 물리층에 있어서 부호화율을 가변으로 할 경우의 부호화에 관련된 부분의 구성의 다른 일례를 나타내는 블록도,
도 55는 물리층에 있어서의 오류 정정 복호부의 구성의 일례를 나타내는 블록도,
도 56은 소실 정정 방법[방법#3-1]을 설명하기 위한 도면,
도 57은 소실 정정 방법[방법#3-3]을 설명하기 위한 도면,
도 58은 부호화율 (n-1)/n인 LDPC-CC에 있어서의 「Information-zero-termination」을 설명하기 위한 도면,
도 59는 실시형태 12에 따른 부호화 방법을 설명하기 위한 도면,
도 60은 부호화기/복호화기의 회로를 공통화하는 것이 가능한 부호화율 1/2, 2/3인 LDPC-CC의 패리티 검사 다항식을 모식적으로 나타낸 도면,
도 61은 실시형태 13에 따른 부호화기의 주요부 구성의 일례를 나타내는 블록도,
도 62는 제 1 정보 연산부의 내부 구성을 나타내는 도면,
도 63은 패리티 연산부의 내부 구성을 나타내는 도면,
도 64는 실시형태 13에 따른 부호화기의 다른 구성예를 나타내는 도면,
도 65는 실시형태 13에 따른 복호화기의 주요부 구성의 일례를 나타내는 블록도,
도 66은 부호화율 1/2인 경우에 있어서의 대수 우도비 설정부의 동작을 설명하기 위한 도면,
도 67은 부호화율 2/3인 경우에 있어서의 대수 우도비 설정부의 동작을 설명하기 위한 도면,
도 68은 실시형태 13에 따른 부호화기를 탑재하는 통신 장치의 구성의 일례를 나타내는 도면,
도 69는 송신 포맷의 일례를 나타내는 도면,
도 70은 실시형태 13에 따른 복호화기를 탑재하는 통신 장치의 구성의 일례를 나타내는 도면이다.
이하, 본 발명의 실시형태에 대해서, 도면을 참조하여 상세히 설명한다.
먼저, 실시형태의 구체적인 구성 및 동작을 설명하기 전에, 특허 문헌 1에 기재되어 있는 패리티 검사 다항식에 기초하는 LDPC-CC에 대해서 설명한다.
[패리티 검사 다항식에 기초하는 LDPC-CC]
먼저, 시변 주기 4인 LDPC-CC에 대해서 설명한다. 또한, 이하에서는, 부호화율 1/2인 경우를 예로 설명한다.
시변 주기를 4로 하는 LDPC-CC의 패리티 검사 다항식으로서 식(1-1)~(1-4)를 생각해 본다. 이때, X(D)는 데이터(정보)의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 여기서, 식(1-1)~(1-4)에서는, X(D), P(D) 각각에 4개의 항(項)이 존재하는 등의 패리티 검사 다항식으로 했는데, 이것은, 양호한 수신 품질을 얻는데 있어, 4개의 항으로 하면 매우 적합하기 때문이다.
Figure pct00001
식(1-1)에 있어서, a1, a2, a3, a4는 정수(단, a1≠a2≠a3≠a4이고, a1부터 a4의 전부가 다름)로 한다. 또한, 이후, 「X≠Y≠…≠Z」라고 표기할 경우, X, Y, …, Z는 서로, 모두 다른 것을 나타내는 것으로 한다. 또, b1, b2, b3, b4는 정수(단, b1≠b2≠b3≠b4)로 한다. 식(1-1)의 패리티 검사 다항식을 「검사식#1」이라고 부르고, 식(1-1)의 패리티 검사 다항식에 기초한 서브행렬을, 제 1 서브행렬 H1이라고 한다.
또, 식(1-2)에 있어서, A1, A2, A3, A4는 정수(단, A1≠A2≠A3≠A4)로 한다. 또, B1, B2, B3, B4는 정수(단, B1≠B2≠B3≠B4)로 한다. 식(1-2)의 패리티 검사 다항식을 「검사식#2」라고 부르고, 식(1-2)의 패리티 검사 다항식에 기초한 서브행렬을, 제 2 서브행렬 H2라고 한다.
또, 식(1-3)에 있어서, α1, α2, α3, α4는 정수(단, α1≠α2≠α3≠α4)로 한다. 또, β1, β2, β3, β4는 정수(단, β1≠β2≠β3≠β4)로 한다. 식(1-3)의 패리티 검사 다항식을 「검사식#3」이라고 부르고, 식(1-3)의 패리티 검사 다항식에 기초한 서브행렬을, 제 3 서브행렬 H3이라고 한다.
또, 식(1-4)에 있어서, E1, E2, E3, E4는 정수(단, E1≠E2≠E3≠E4)로 한다. 또, F1, F2, F3, F4는 정수(단, F1≠F2≠F3≠F4)로 한다. 식(1-4)의 패리티 검사 다항식을 「검사식#4」라고 부르고, 식(1-4)의 패리티 검사 다항식에 기초한 서브행렬을, 제 4 서브행렬 H4라고 한다.
그리고, 제 1 서브행렬 H1, 제 2 서브행렬 H2, 제 3 서브행렬 H3, 제 4 서브행렬 H4로부터, 도 3과 같이 검사 행렬을 생성한 시변 주기 4인 LDPC-CC에 대해서 생각해 본다.
이때, 식(1-1)~(1-4)에 있어서, X(D) 및 P(D)의 차수(次數)의 조합(a1, a2, a3, a4), (b1, b2, b3, b4), (A1, A2, A3, A4), (B1, B2, B3, B4), (α1, α2, α3, α4), (β1, β2, β3, β4), (E1, E2, E3, E4), (F1, F2, F3, F4)의 각 값을 4로 나눗셈한 나머지를 k라고 했을 때, 상기와 같이 나타낸 4개의 계수 세트(예를 들면, (a1, a2, a3, a4))에, 나머지 0, 1, 2, 3이 1개씩 포함되도록 하고 또, 상기 4개의 계수 세트 전부에서 성립하도록 한다.
예를 들면, 「검사식#1」의 X(D)의 각 차수(a1, a2, a3, a4)를 (a1, a2, a3, a4)=(8, 7, 6, 5)라고 하면, 각 차수(a1, a2, a3, a4)를 4로 나눗셈한 나머지 k는, (0, 3, 2, 1)이 되고, 4개의 계수 세트에, 나머지(k) 0, 1, 2, 3이 1개씩 포함되게 된다. 마찬가지로 「검사식#1」의 P(D)의 각 차수(b1, b2, b3, b4)를 (b1, b2, b3, b4)=(4, 3, 2, 1)이라고 하면, 각 차수(b1, b2, b3, b4)를 4로 나눗셈한 나머지 k는, (0, 3, 2, 1)이 되고, 4개의 계수 세트에, 나머지(k)로서 0, 1, 2, 3이 1개씩 포함되게 된다. 다른 검사식(「검사식#2」, 「검사식#3」, 「검사식#4」)의 X(D) 및 P(D) 각각의 4개의 계수 세트에 대해서도 상기 「나머지」에 관한 조건이 성립하는 것으로 한다.
이와 같이 함으로써, 식(1-1)~(1-4)로 구성되는 검사 행렬 H의 열(列) 가중치(weight)가 모든 열에 있어서 4가 되는, 레귤러 LDPC 부호를 형성할 수 있게 된다. 여기서, 레귤러 LDPC 부호란, 각 열 가중치가 일정한 검사 행렬에 의해 정의되는 LDPC 부호이고, 특성이 안정되어, 에러 플로어가 나오기 어렵다고 하는 특징이 있다. 특히, 열 가중치가 4일 때, 특성이 양호하기 때문에, 상기와 같이 하여 LDPC-CC를 생성함으로써, 수신 성능이 좋은 LDPC-CC를 얻을 수 있게 된다.
또한, 표 1은, 상기 「나머지」에 관한 조건이 성립하는, 시변 주기 4, 부호화율 1/2인 LDPC-CC의 예(LDPC-CC#1~#3)이다. 표 1에 있어서, 시변 주기 4인 LDPC-CC는, 「검사 다항식#1」, 「검사 다항식#2」, 「검사 다항식#3」, 「검사 다항식#4」의 4개의 패리티 검사 다항식에 의해 정의된다.
Figure pct00002
상기에서는, 부호화율 1/2일 때를 예로 설명했지만, 부호화율이 (n-1)/n일 때에 대해서도, 정보 X1(D), X2(D), …, Xn -1(D)에 있어서의 각각의 4개의 계수 세트에 있어서, 상기의 「나머지」에 관한 조건이 성립하면, 역시, 레귤러 LDPC 부호가 되어, 양호한 수신 품질을 얻을 수 있다.
또한, 시변 주기 2인 경우에 있어서도, 상기 「나머지」에 관한 조건을 적용하면, 특성이 양호한 부호를 탐색할 수 있는 것이 확인되었다. 이하, 특성이 양호한 시변 주기 2인 LDPC-CC에 대해 설명한다. 또한, 아래에서는, 부호화율 1/2인 경우를 예로 설명한다.
시변 주기를 2로 하는 LDPC-CC의 패리티 검사 다항식으로서, 식(2-1), (2-2)를 생각해 본다. 이때, X(D)는 데이터(정보)의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 여기서, 식(2-1), (2-2)에서는, X(D), P(D) 각각에 4개의 항이 존재하는 등의 패리티 검사 다항식으로 했지만, 이것은, 양호한 수신 품질을 얻는데 있어, 4개의 항으로 하면 매우 적합하기 때문이다.
Figure pct00003
식(2-1)에 있어서, a1, a2, a3, a4는 정수(단, a1≠a2≠a3≠a4)로 한다. 또, b1, b2, b3, b4는 정수(단, b1≠b2≠b3≠b4)로 한다. 식(2-1)의 패리티 검사 다항식을 「검사식#1」이라고 부르고, 식(2-1)의 패리티 검사 다항식에 기초한 서브행렬을, 제 1 서브행렬 H1이라고 한다.
또, 식(2-2)에 있어서, A1, A2, A3, A4는 정수(단, A1≠A2≠A3≠A4)로 한다. 또, B1, B2, B3, B4는 정수(단, B1≠B2≠B3≠B4)로 한다. 식(2-2)의 패리티 검사 다항식을 「검사식#2」라고 부르고, 식(2-2)의 패리티 검사 다항식에 기초한 서브행렬을, 제 2 서브행렬 H2라고 한다.
그리고, 제 1 서브행렬 H1 및 제 2 서브행렬 H2로부터 생성하는 시변 주기 2인 LDPC-CC에 대해서 생각해 본다.
이때, 식(2-1), (2-2)에 있어서, X(D) 및 P(D)의 차수의 조합(a1, a2, a3, a4), (b1, b2, b3, b4), (A1, A2, A3, A4), (B1, B2, B3, B4)의 각 값을 4로 나눗셈한 나머지를 k라고 했을 때, 상기와 같이 나타낸 4개의 계수 세트(예를 들면, (a1, a2, a3, a4))에, 나머지 0, 1, 2, 3이 1개씩 포함되도록 하고 또, 상기 4개의 계수 세트 전부에서 성립하도록 한다.
예를 들면, 「검사식#1」의 X(D)의 각 차수(a1, a2, a3, a4)를 (a1, a2, a3, a4)=(8, 7, 6, 5)라고 하면, 각 차수(a1, a2, a3, a4)를 4로 나눗셈한 나머지 k는, (0, 3, 2, 1)이 되고, 4개의 계수 세트에, 나머지(k) 0, 1, 2, 3이 1개씩 포함되게 된다. 마찬가지로 「검사식#1」의 P(D)의 각 차수(b1, b2, b3, b4)를 (b1, b2, b3, b4)=(4, 3, 2, 1)이라고 하면, 각 차수(b1, b2, b3, b4)를 4로 나눗셈한 나머지 k는, (0, 3, 2, 1)이 되고, 4개의 계수 세트에, 나머지(k)로서 0, 1, 2, 3이 1개씩 포함되게 된다. 「검사식#2」의 X(D) 및 P(D) 각각의 4개의 계수 세트에 대해서도 상기 「나머지」에 관한 조건이 성립하는 것으로 한다.
이와 같이 함으로써, 식(2-1), (2-2)로 구성되는 검사 행렬 H의 열 가중치가 모든 열에 있어서 4가 되는, 레귤러 LDPC 부호를 형성할 수 있게 된다. 여기서, 레귤러 LDPC 부호란, 각 열 가중치가 일정한 검사 행렬에 의해 정의되는 LDPC 부호이며, 특성이 안정되어, 에러 플로어가 나오기 어렵다고 하는 특징이 있다. 특히, 행 가중치가 8인 경우, 특성이 양호한 점에서, 상기와 같이 하여 LDPC-CC를 생성함으로써, 수신 성능을 더욱 향상시킬 수 있는 LDPC-CC를 얻을 수 있게 된다.
또한, 표 2에, 상기 「나머지」에 관한 조건이 성립되는, 시변 주기 2, 부호화율 1/2인 LDPC-CC의 예(LDPC-CC#1, #2)를 나타낸다. 표 2에 있어서, 시변 주기 2인 LDPC-CC는, 「검사 다항식#1」, 「검사 다항식#2」의 2개의 패리티 검사 다항식에 의해 정의된다.
Figure pct00004
상기에서는 (시변 주기 2인 LDPC-CC), 부호화율 1/2일 때를 예로 설명했지만, 부호화율이 (n-1)/n일 때에 대해서도, 정보 X1(D), X2(D), …, Xn -1(D)에 있어서의 각각의 4개의 계수 세트에 있어서, 상기의 「나머지」에 관한 조건이 성립하면, 역시, 레귤러 LDPC 부호가 되어, 양호한 수신 품질을 얻을 수 있다.
또, 시변 주기 3인 경우에 있어서도, 「나머지」에 관한 이하의 조건을 적용하면, 특성이 양호한 부호를 탐색할 수 있음이 확인되었다. 이하, 특성이 양호한 시변 주기 3인 LDPC-CC에 대해 설명한다. 또한, 아래에서는, 부호화율 1/2인 경우를 예로 설명한다.
시변 주기를 3으로 하는 LDPC-CC의 패리티 검사 다항식으로서 식(3-1)~(3-3)을 생각해 본다. 이때, X(D)는 데이터(정보)의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 여기서, 식(3-1)~(3-3)에서는, X(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식으로 한다.
Figure pct00005
식(3-1)에 있어서, a1, a2, a3는 정수(단, a1≠a2≠a3)로 한다. 또, b1, b2, b3는 정수(단, b1≠b2≠b3)로 한다. 식(3-1)의 패리티 검사 다항식을 「검사식#1」이라고 부르고, 식(3-1)의 패리티 검사 다항식에 기초한 서브행렬을, 제 1 서브행렬 H1이라고 한다.
또, 식(3-2)에 있어서, A1, A2, A3은 정수(단, A1≠A2≠A3)로 한다. 또, B1, B2, B3은 정수(단, B1≠B2≠B3)로 한다. 식(3-2)의 패리티 검사 다항식을 「검사식#2」라고 부르고, 식(3-2)의 패리티 검사 다항식에 기초한 서브행렬을, 제 2 서브행렬 H2라고 한다.
또, 식(3-3)에 있어서, α1, α2, α3은 정수(단, α1≠α2≠α3)로 한다. 또, β1, β2, β3은 정수(단, β1≠β2≠β3)로 한다. 식(3-3)의 패리티 검사 다항식을 「검사식#3」이라고 부르고, 식(3-3)의 패리티 검사 다항식에 기초한 서브행렬을, 제 3 서브행렬 H3이라고 한다.
그리고, 제 1 서브행렬 H1, 제 2 서브행렬 H2, 제 3 서브행렬 H3으로부터 생성하는 시변 주기 3인 LDPC-CC에 대해서 생각해 본다.
이때, 식(3-1)~(3-3)에 있어서, X(D) 및 P(D)의 차수의 조합 (a1, a2, a3), (b1, b2, b3), (A1, A2, A3), (B1, B2, B3), (α1, α2, α3), (β1, β2, β3)의 각 값을 3으로 나눗셈한 나머지를 k라고 했을 때, 상기와 같이 나타낸 3개의 계수 세트(예를 들면, (a1, a2, a3))에, 나머지 0, 1, 2가 1개씩 포함되도록 하고 또, 상기 3개의 계수 세트 전부에서 성립하도록 한다.
예를 들면, 「검사식#1」의 X(D)의 각 차수(a1, a2, a3)를 (a1, a2, a3)=(6, 5, 4)라고 하면, 각 차수(a1, a2, a3)를 3으로 나눗셈한 나머지 k는, (0, 2, 1)이 되고, 3개의 계수 세트에, 나머지(k) 0, 1, 2가 1개씩 포함되게 된다. 마찬가지로 「검사식#1」의 P(D)의 각 차수(b1, b2, b3)를 (b1, b2, b3)=(3, 2, 1)라고 하면, 각 차수(b1, b2, b3)를 4로 나눗셈한 나머지 k는, (0, 2, 1)이 되고, 3개의 계수 세트에, 나머지(k)로서 0, 1, 2가 1개씩 포함되게 된다. 「검사식#2」, 「검사식#3」의 X(D) 및 P(D) 각각의 3개의 계수 세트에 대해서도 상기의 「나머지」에 관한 조건이 성립하는 것으로 한다.
이와 같이 하여 LDPC-CC를 생성함으로써, 일부 예외를 제외하고, 행 가중치가 전부의 행에서 동일하고, 또, 열 가중치가 모든 행에서 동일한 레귤러 LDPC-CC부호를 생성할 수 있다. 또한, 예외란, 검사 행렬의 최초의 일부 및 마지막 일부에서는, 행 가중치, 열 가중치가, 다른 행 가중치, 열 가중치와 동일하게 되지 않는 것을 말한다. 더욱이, BP 복호를 행했을 경우, 「검사식#2」에 있어서의 신뢰도 및 「검사식#3」에 있어서의 신뢰도가, 적확하게 「검사식#1」에 대해서 전파(傳播)하고, 「검사식#1」에 있어서의 신뢰도 및 「검사식#3」에 있어서의 신뢰도가, 적확하게 「검사식#2」에 대해서 전파하고, 「검사식#1」에 있어서의 신뢰도 및 「검사식#2」에 있어서의 신뢰도가, 「검사식#3」에 대해서 적확하게 전파한다. 이 때문에, 보다 수신 품질이 양호한 LDPC-CC를 얻을 수 있다. 이것은, 열 단위로 생각했을 때, 「1」이 존재하는 위치가, 상술한 바와 같이, 신뢰도를 적확하게 전파하도록 배치되게 되기 때문이다.
이하, 도면을 이용하여, 상술한 신뢰도 전파에 대해서 설명한다. 도 4(a)는, 시변 주기 3인 LDPC-CC의 패리티 검사 다항식 및 검사 행렬 H의 구성을 나타내고 있다.
「검사식#1」은, 식(3-1)의 패리티 검사 다항식에 있어서, (a1, a2, a3)=(2, 1, 0), (b1, b2, b3)=(2, 1, 0)인 경우이고, 각 계수를 3으로 나눗셈한 나머지는, (a1%3, a2%3, a3%3)=(2, 1, 0), (b1%3, b2%3, b3%3)=(2, 1, 0)이다. 또한, 「Z%3」은, Z를 3으로 나눗셈한 나머지를 나타낸다.
「검사식#2」는, 식(3-2)의 패리티 검사 다항식에 있어서, (A1, A2, A3)=(5, 1, 0), (B1, B2, B3)=(5, 1, 0)인 경우이고, 각 계수를 3으로 나눗셈한 나머지는, (A1%3, A2%3, A3%3)=(2, 1, 0), (B1%3, B2%3, B3%3)=(2, 1, 0)이다.
「검사식#3」은, 식(3-3)의 패리티 검사 다항식에 있어서, (α1, α2, α3)=(4, 2, 0), (β1, β2, β3)=(4, 2, 0)인 경우이고, 각 계수를 3으로 나눗셈한 나머지는, (α1%3, α2%3, α3%3)=(1, 2, 0), (β1%3, β2%3, β3%3)=(1, 2, 0)이다.
따라서, 도 4(a)에 나타낸 시변 주기 3인 LDPC-CC의 예는, 상술한 「나머지」에 관한 조건, 즉,
(a1%3, a2%3, a3%3),
(b1%3, b2%3, b3%3),
(A1%3, A2%3, A3%3),
(B1%3, B2%3, B3%3),
(α1%3, α2%3, α3%3),
(β1%3, β2%3, β3%3)이,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다고 하는 조건을 만족시키고 있다.
다시, 도 4(a)로 돌아와, 신뢰도 전파에 대해서 설명한다. BP 복호에 있어서의 열 6506의 열 연산에 의해, 「검사식#1」의 영역 6201의 「1」은, 「검사 행렬#2」의 영역 6504의 「1」 및 「검사 행렬#3」의 영역 6505의 「1」로부터, 신뢰도가 전파된다. 상술한 바와 같이, 「검사식#1」의 영역 6201의 「1」은, 3으로 나눗셈한 나머지가 0이 되는 계수이다(a3%3=0(a3=0), 또는, b3%3=0(b3=0)). 또, 「검사 행렬#2」의 영역 6504의 「1」은, 3으로 나눗셈한 나머지가 1이 되는 계수이다(A2%3=1(A2=1), 또는, B2%3=1(B2=1)). 또, 「검사식#3」의 영역 6505의 「1」은, 3으로 나눗셈한 나머지가 2가 되는 계수이다(α2%3=2(α2=2), 또는, β2%3=2(β2=2)).
이와 같이, 「검사식#1」의 계수에 있어서 나머지가 0이 되는 영역 6201의 「1」은, BP 복호에 있어서의 열 6506의 열 연산에 있어서, 「검사식#2」의 계수에 있어서 나머지가 1이 되는 영역 6504의 「1」, 및, 「검사식#3」의 계수에 있어서 나머지가 2가 되는 영역 6505의 「1」로부터, 신뢰도가 전파된다.
마찬가지로, 「검사식#1」의 계수에 있어서 나머지가 1이 되는 영역 6202의 「1」은, BP 복호에 있어서의 열 6509의 열연산에 있어서, 「검사식#2」의 계수에 있어서 나머지가 2가 되는 영역 6507의 「1」, 및, 「검사식#3」의 계수에 있어서 나머지가 0이 되는 영역 6508의 「1」로부터, 신뢰도가 전파된다.
마찬가지로 「검사식#1」의 계수에 있어서 나머지가 2가 되는 영역 6203의 「1」은, BP 복호에 있어서의 열 6512의 열연산에 있어서, 「검사식#2」의 계수에 있어서 나머지가 0이 되는 영역 6510의 「1」, 및, 「검사식#3」의 계수에 있어서 나머지가 1이 되는 영역 6511의 「1」로부터, 신뢰도가 전파된다.
도 4(b)를 이용해, 신뢰도 전파에 대해서 보충 설명을 한다. 도 4(b)는, 도 4(a)의 「검사식#1」~「검사식#3」의 X(D)에 관한 각 항끼리의 신뢰도 전파의 관계를 나타내고 있다. 도 4(a)의 「검사식#1」~「검사식#3」은, 식(3-1)~(3-3)의 X(D)에 관한 항에 있어서, (a1, a2, a3)=(2, 1, 0), (A1, A2, A3)=(5, 1, 0), (α1, α2, α3)=(4, 2, 0)인 경우이다.
도 4(b)에 있어서, 사각으로 둘러싸인 항(a3, A3, α3)은, 3으로 나눗셈한 나머지가 0의 계수를 나타낸다. 또, 원으로 둘러싸인 항(a2, A2, α1)은, 3으로 나눗셈한 나머지가 1의 계수를 나타낸다. 또, 마름모꼴로 둘러싸인 항(a1, A1, α2)은, 3으로 나눗셈한 나머지가 2의 계수를 나타낸다.
도 4(b)로부터 알 수 있는 것처럼, 「검사식#1」의 a1은, 3으로 나눗셈한 나머지가 다른 「검사식#2」의 A3 및 「검사식#3」의 α1로부터 신뢰도가 전파된다. 「검사식#1」의 a2는, 3으로 나눗셈한 나머지가 다른 「검사식#2」의 A1 및 「검사식#3」의 α3으로부터 신뢰도가 전파된다. 「검사식#1」의 a3은, 3으로 나눗셈한 나머지가 다른 「검사식#2」의 A2 및 「검사식#3」의 α2로부터 신뢰도가 전파된다. 도 4(b)에는, 「검사식#1」~「검사식#3」의 X(D)에 관한 각 항끼리의 신뢰도 전파의 관계를 나타냈지만, P(D)에 관한 각 항끼리에 대해서도 동일하다고 할 수 있다.
이와 같이, 「검사식#1」에는, 「검사식#2」의 계수 가운데, 3으로 나눗셈한 나머지가 0, 1, 2가 되는 계수로부터, 신뢰도가 전파된다. 즉, 「검사식#1」에는, 「검사식#2」의 계수 가운데, 3으로 나눗셈한 나머지가 전부 다른 계수로부터, 신뢰도가 전파되는 것이 된다. 따라서, 상관이 낮은 신뢰도끼리가 전부 「검사식#1」에 전파하는 것이 된다.
마찬가지로, 「검사식#2」에는, 「검사식#1」의 계수 가운데, 3으로 나눗셈한 나머지가 0, 1, 2가 되는 계수로부터, 신뢰도가 전파된다. 즉, 「검사식#2」에는, 「검사식#1」의 계수 가운데, 3으로 나눗셈한 나머지가 모두 다른 계수로부터, 신뢰도가 전파되게 된다. 또, 「검사식#2」에는, 「검사식#3」의 계수 가운데, 3으로 나눗셈한 나머지가 0, 1, 2가 되는 계수로부터, 신뢰도가 전파된다. 즉, 「검사식#2」에는, 「검사식#3」의 계수 가운데, 3으로 나눗셈한 나머지가 모두 다른 계수로부터, 신뢰도가 전파되게 된다.
마찬가지로, 「검사식#3」에는, 「검사식#1」의 계수 가운데, 3으로 나눗셈한 나머지가 0, 1, 2가 되는 계수로부터, 신뢰도가 전파된다. 즉, 「검사식#3」에는, 「검사식#1」의 계수 가운데, 3으로 나눗셈한 나머지가 전부 다른 계수로부터, 신뢰도가 전파되게 된다. 또, 「검사식#3」에는, 「검사식#2」의 계수 가운데, 3으로 나눗셈한 나머지가 0, 1, 2가 되는 계수로부터, 신뢰도가 전파된다. 즉, 「검사식#3」에는, 「검사식#2」의 계수 가운데, 3으로 나눗셈한 나머지가 모두 다른 계수로부터, 신뢰도가 전파되게 된다.
이와 같이, 식(3-1)~(3-3)의 패리티 검사 다항식의 각 차수가, 상술한 「나머지」에 관한 조건을 만족시키도록 함으로써, 모든 열연산에 있어서, 신뢰도가 반드시 전파되게 된다. 이것에 의해, 전부의 검사식에 있어서, 효율적으로 신뢰도를 전파시킬 수가 있게 되어, 더욱 오류 정정 능력을 높일 수가 있다.
이상, 시변 주기 3인 LDPC-CC에 대해, 부호화율 1/2인 경우를 예로 설명했지만, 부호화율은 1/2에 한정되지 않는다. 부호화율 (n-1)/n(n은 2 이상의 정수)인 경우에는, 정보 X1(D), X2(D), …, Xn -1(D)에 있어서의, 각각의 3개의 계수 세트에 있어서, 상기의 「나머지」에 관한 조건이 성립하면, 역시, 레귤러 LDPC 부호가 되어, 양호한 수신 품질을 얻을 수 있다.
이하, 부호화율 (n-1)/n(n은 2 이상의 정수)인 경우에 대해서 설명한다.
시변 주기를 3으로 하는 LDPC-CC의 패리티 검사 다항식으로서 식(4-1)~(4-3)를 생각해 본다. 이때, X1(D), X2(D), …, Xn - 1(D)는 데이터(정보) X1, X2, …, Xn - 1의다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 여기서, 식(4-1)~(4-3)에서는, X1(D), X2(D), …, Xn -1(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식이라고 한다.
Figure pct00006
식(4-1)에 있어서, ai ,1, ai ,2, ai ,3(i=1, 2, …, n-1)은 정수(단, ai, 1≠ai, 2≠ai, 3)로 한다. 또, b1, b2, b3는 정수(단, b1≠b2≠b3)로 한다. 식(4-1)의 패리티 검사 다항식을 「검사식#1」이라고 부르고, 식(4-1)의 패리티 검사 다항식에 기초한 서브행렬을, 제 1 서브행렬 H1이라고 한다.
또, 식(4-2)에 있어서, Ai ,1, Ai ,2, Ai ,3(i=1, 2, …, n-1은 정수(단, Ai, 1≠Ai, 2≠Ai, 3)로 한다. 또, B1, B2, B3은 정수(단, B1≠B2≠B3)로 한다. 식(4-2)의 패리티 검사 다항식을 「검사식#2」라고 부르고, 식(4-2)의 패리티 검사 다항식에 기초한 서브행렬을, 제 2 서브행렬 H2라고 한다.
또, 식(4-3)에 있어서, αi,1, αi,2, αi,3(i=1, 2, …, n-1은 정수(단, αi,1≠αi,2≠αi,3)로 한다. 또, β1, β2, β3은 정수(단, β1≠β2≠β3)로 한다. 식(4-3)의 패리티 검사 다항식을 「검사식#3」이라고 부르고, 식(4-3)의 패리티 검사 다항식에 기초한 서브행렬을, 제 3 서브행렬 H3이라고 한다.
그리고, 제 1 서브행렬 H1, 제 2 서브행렬 H2, 제 3 서브행렬 H3으로부터 생성하는 시변 주기 3인 LDPC-CC에 대해서 생각해 본다.
이때, 식(4-1)~(4-3)에 있어서, X1(D), X2(D), …, Xn -1(D) 및 P(D)의 차수의 조합
(a1 ,1, a1 ,2, a1 ,3),
(a2 ,1, a2 ,2, a2 ,3), …,
(an -1,1, an -1,2, an -1,3),
(b1, b2, b3),
(A1,1, A1,2, A1,3),
(A2,1, A2,2, A2,3), …,
(An -1,1, An -1,2, An -1,3),
(B1, B2, B3),
1,1, α1,2, α1,3),
2,1, α2,2, α2,3), …,
n-1,1, αn-1,2, αn-1,3),
(β1, β2, β3)
의 각 값을 3으로 나눗셈한 나머지를 k라고 했을 경우, 상기와 같이 나타낸 3개의 계수 세트(예를 들면, (a1 ,1, a1 ,2, a1 ,3))에, 나머지 0, 1, 2가 1개씩 포함되도록 하고, 또, 상기의 3개의 계수 세트 전부에서 성립하도록 한다.
즉,
(a1 ,1%3, a1 ,2%3, a1 ,3%3),
(a2 ,1%3, a2 ,2%3, a2 ,3%3), …,
(an -1,1%3, an -1,2%3, an -1,3%3),
(b1%3, b2%3, b3%3),
(A1,1%3, A1,2%3, A1,3%3),
(A2,1%3, A2,2%3, A2,3%3), …,
(An -1,1%3, An -1,2%3, An -1,3%3),
(B1%3, B2%3, B3%3),
1,1%3, α1,2%3, α1,3%3),
2,1%3, α2,2%3, α2,3%3), …,
n-1,1%3, αn-1,2%3, αn-1,3%3),
(β1%3, β2%3, β3%3)이,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 되도록 한다.
이와 같이 하여 LDPC-CC를 생성함으로써, 레귤러 LDPC-CC부호를 생성할 수 있다. 더욱이, BP 복호를 행했을 때, 「검사식#2」에 있어서의 신뢰도 및 「검사식#3」에 있어서의 신뢰도가, 적확하게 「검사식#1」에 대해서 전파하고, 「검사식#1」에 있어서의 신뢰도 및 「검사식#3」에 있어서의 신뢰도가, 적확하게 「검사식#2」에 대해서 전파하고, 「검사식#1」에 있어서의 신뢰도 및 「검사식#2」에 있어서의 신뢰도가, 「검사식#3」에 대해서 적확하게 전파한다. 이 때문에, 부호화율 1/2인 경우와 마찬가지로, 보다 수신 품질이 양호한 LDPC-CC를 얻을 수 있다.
또한, 표 3에, 상기 「나머지」에 관한 조건이 성립되는, 시변 주기 3, 부호화율 1/2인 LDPC-CC의 예(LDPC-CC#1, #2, #3, #4, #5, #6)를 나타낸다. 표 3에 있어서, 시변 주기 3인 LDPC-CC는, 「검사(다항)식#1」, 「검사(다항)식#2」, 「검사(다항)식#3」의 3개의 패리티 검사 다항식에 의해 정의된다.
Figure pct00007
또, 표 4에, 시변 주기 3, 부호화율 1/2, 2/3, 3/4, 5/6인 LDPC-CC의 예를 나타내고, 표 5에, 시변 주기 3, 부호화율 1/2, 2/3, 3/4, 4/5인 LDPC-CC의 예를 나타낸다.
Figure pct00008
Figure pct00009
또, 시변 주기 3과 마찬가지로, 시변 주기가 3의 배수(예를 들면, 시변 주기가 6, 9, 12, …)인 LDPC-CC에 대해서, 「나머지」에 관한 이하의 조건을 적용하면, 특성이 양호한 부호를 탐색할 수 있는 것이 확인되었다. 이하, 특성이 양호한 시변 주기 3의 배수인 LDPC-CC에 대해 설명한다. 또한, 아래에서는, 부호화율 1/2, 시변 주기 6인 LDPC-CC의 경우를 예로 설명한다.
시변 주기를 6으로 하는 LDPC-CC의 패리티 검사 다항식으로서 식(5-1)~식(5-6)을 생각해 본다.
Figure pct00010
이때, X(D)는 데이터(정보)의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 시변 주기 6인 LDPC-CC에서는, 시점 i의 패리티 Pi 및 정보 Xi는, i%6=k라고 하면(k=0, 1, 2, 3, 4, 5), 식(5-(k+1))의 패리티 검사 다항식이 성립하게 된다. 예를 들면, i=1이라고 하면, i%6=1(k=1)이 되므로, 식(6)이 성립한다.
Figure pct00011
여기서, 식(5-1)~(5-6)에서는, X(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식으로 한다.
식(5-1)에 있어서, a1,1, a1,2, a1,3은 정수(단, a1,1≠a1,2≠a1,3)로 한다. 또, b1,1, b1,2, b1,3은 정수(단, b1,1≠b1,2≠b1,3)로 한다. 식(5-1)의 패리티 검사 다항식을 「검사식#1」이라고 부르고, 식(5-1)의 패리티 검사 다항식에 기초한 서브행렬을, 제 1 서브행렬 H1이라고 한다.
또, 식(5-2)에 있어서, a2,1, a2,2, a2,3은 정수(단, a2,1≠a2,2≠a2,3)로 한다. 또, b2,1, b2,2, b2,3은 정수(단, b2,1≠b2,2≠b2,3)로 한다. 식(5-2)의 패리티 검사 다항식을 「검사식#2」라고 부르고, 식(5-2)의 패리티 검사 다항식에 기초한 서브행렬을, 제 2 서브행렬 H2라고 한다.
또, 식(5-3)에 있어서, a3,1, a3,2, a3,3은 정수(단, a3,1≠a3,2≠a3,3)로 한다. 또, b3,1, b3,2, b3,3은 정수(단, b3,1≠b3,2≠b3,3)로 한다. 식(5-3)의 패리티 검사 다항식을 「검사식#3」이라고 부르고, 식(5-3)의 패리티 검사 다항식에 기초한 서브행렬을, 제 3 서브행렬 H3이라고 한다.
또, 식(5-4)에 있어서, a4,1, a4,2, a4,3은 정수(단, a4,1≠a4,2≠a4,3)로 한다. 또, b4,1, b4,2, b4,3은 정수(단, b4,1≠b4,2≠b4,3)로 한다. 식(5-4)의 패리티 검사 다항식을 「검사식#4」라고 부르고, 식(5-4)의 패리티 검사 다항식에 기초한 서브행렬을, 제 4 서브행렬 H4라고 한다.
또, 식(5-5)에 있어서, a5,1, a5,2, a5,3은 정수(단, a5,1≠a5,2≠a5,3)로 한다. 또, b5,1, b5,2, b5,3은 정수(단, b5,1≠b5,2≠b5,3)로 한다. 식(5-5)의 패리티 검사 다항식을 「검사식#5」라고 부르고, 식(5-5)의 패리티 검사 다항식에 기초한 서브행렬을, 제 5 서브행렬 H5라고 한다.
또, 식(5-6)에 있어서, a6,1, a6,2, a6,3은 정수(단, a6,1≠a6,2≠a6,3)로 한다. 또, b6,1, b6,2, b6,3은 정수(단, b6,1≠b6,2≠b6,3)로 한다. 식(5-6)의 패리티 검사 다항식을 「검사식#6」이라고 부르고, 식(5-6)의 패리티 검사 다항식에 기초한 서브행렬을, 제 6 서브행렬 H6이라고 한다.
그리고, 제 1 서브행렬 H1, 제 2 서브행렬 H2, 제 3 서브행렬 H3, 제 4 서브행렬 H4, 제 5 서브행렬 H5, 제 6 서브행렬 H6으로부터 생성하는 시변 주기 6인 LDPC-CC에 대해 생각해 본다.
이때, 식(5-1)~(5-6)에 있어서, X(D) 및 P(D)의 차수의 조합
(a1,1, a1,2, a1,3),
(b1,1, b1,2, b1,3),
(a2,1, a2,2, a2,3),
(b2,1, b2,2, b2,3),
(a3,1, a3,2, a3,3),
(b3,1, b3,2, b3,3),
(a4,1, a4,2, a4,3),
(b4,1, b4,2, b4,3),
(a5,1, a5,2, a5,3),
(b5,1, b5,2, b5,3),
(a6,1, a6,2, a6,3),
(b6,1, b6,2, b6,3)
의 각 값을 3으로 나눗셈했을 때의 나머지를 k라고 했을 경우, 상기와 같이 나타낸 3개의 계수 세트(예를 들면, (a1,1, a1,2, a1,3))에, 나머지 0, 1, 2가 1개씩 포함되도록 하고, 또, 상기의 3개의 계수 세트 전부에서 성립하도록 한다. 즉,
(a1,1%3, a1,2%3, a1,3%3),
(b1,1%3, b1,2%3, b1,3%3),
(a2,1%3, a2,2%3, a2,3%3),
(b2,1%3, b2,2%3, b2,3%3),
(a3,1%3, a3,2%3, a3,3%3),
(b3,1%3, b3,2%3, b3,3%3),
(a4,1%3, a4,2%3, a4,3%3),
(b4,1%3, b4,2%3, b4,3%3),
(a5,1%3, a5,2%3, a5,3%3),
(b5,1%3, b5,2%3, b5,3%3),
(a6,1%3, a6,2%3, a6,3%3),
(b6,1%3, b6,2%3, b6,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
이와 같이 하여 LDPC-CC를 생성함으로써, 「검사식#1」에 대해서, 태너 그래프(Tanner graph)를 그렸을 때, 엣지가 존재하는 경우, 적확하게 「검사식#2, 또는, 검사식#5」에 있어서의 신뢰도, 「검사식#3, 또는, 검사식#6」에 있어서의 신뢰도가 적확하게 전파한다.
또, 「검사식#2」에 대해서, 태너 그래프를 그렸을 때, 엣지가 존재하는 경우, 적확하게 「검사식#1, 또는, 검사식#4」에 있어서의 신뢰도, 「검사식#3, 또는, 검사식#6」에 있어서의 신뢰도가 적확하게 전파한다.
또, 「검사식#3」에 대해서, 태너 그래프를 그렸을 때, 엣지가 존재하는 경우, 적확하게 「검사식#1, 또는, 검사식#4」에 있어서의 신뢰도, 「검사식#2, 또는, 검사식#5」에 있어서의 신뢰도가 적확하게 전파한다. 「검사식#4」에 대해서, 태너 그래프를 그렸을 때, 엣지가 존재하는 경우, 적확하게 「검사식#2, 또는, 검사식#5」에 있어서의 신뢰도, 「검사식#3, 또는, 검사식#6」에 있어서의 신뢰도가 적확하게 전파한다.
또, 태너 그래프를 그렸을 때, 엣지가 존재하는 경우, 「검사식#5」에 대해서, 적확하게 「검사식#1, 또는, 검사식#4」에 있어서의 신뢰도, 「검사식#3, 또는, 검사식#6」에 있어서의 신뢰도가 적확하게 전파한다. 또, 「검사식#6」에 대해서, 태너 그래프를 그렸을 때, 엣지가 존재하는 경우, 적확하게 「검사식#1, 또는, 검사식#4」에 있어서의 신뢰도, 「검사식#2, 또는, 검사식#5」에 있어서의 신뢰도가 적확하게 전파한다.
이 때문에, 시변 주기가 3일 때와 마찬가지로, 보다 양호한 오류 정정 능력을 시변 주기 6인 LDPC-CC가 보지(保持)하게 된다.
이것에 대해, 도 4(c)를 이용해, 신뢰도 전파에 대해 설명한다. 도 4(c)는, 「검사식#1」~「검사식#6」의 X(D)에 관한 각 항끼리의 신뢰도 전파의 관계를 나타내고 있다. 도 4(c)에 있어서, 사각은, ax,y에 있어서(x=1, 2, 3, 4, 5, 6; y=1, 2, 3), 3으로 나눗셈한 나머지가 0의 계수를 나타낸다.
또, 원은, ax,y에 있어서(x=1, 2, 3, 4, 5, 6; y=1, 2, 3), 3으로 나눗셈한 나머지가 1의 계수를 나타낸다. 또, 마름모형은, ax,y에 있어서(x=1, 2, 3, 4, 5, 6; y=1, 2, 3), 3으로 나눗셈한 나머지가 2의 계수를 나타낸다.
도 4(c)로부터 알 수 있는 것처럼, 태너 그래프를 그렸을 때, 엣지가 존재했을 경우, 「검사식#1」의 a1,1은, 3으로 나눗셈한 나머지가 다른 「검사식#2 또는 #5」 및 「검사식#3 또는 #6」으로부터 신뢰도가 전파된다. 마찬가지로, 태너 그래프를 그렸을 때, 엣지가 존재했을 경우, 「검사식#1」의 a1,2는, 3으로 나눗셈한 나머지가 다른 「검사식#2 또는 #5」및 「검사식#3 또는 #6」으로부터 신뢰도가 전파된다.
마찬가지로, 태너 그래프를 그렸을 때, 엣지가 존재했을 경우, 「검사식#1」의 a1,3은, 3으로 나눗셈한 나머지가 다른 「검사식#2 또는 #5」 및 「검사식#3 또는 #6」으로부터 신뢰도가 전파된다. 도 4(c)에는, 「검사식#1」~「검사식#6」의 X(D)에 관한 각 항끼리의 신뢰도 전파의 관계를 나타냈지만, P(D)에 관한 각 항끼리에 대해서도 동일하다고 말할 수 있다.
이와 같이, 「검사식#1」의 태너 그래프에 있어서의 각 노드에는, 「검사식#1」 이외의 계수 노드로부터 신뢰도가 전파하게 된다. 따라서, 상관이 낮은 신뢰도끼리가 전부 「검사식#1」에 전파하게 되므로, 오류 정정 능력이 향상한다고 생각된다.
도 4(c)에서는, 「검사식#1」에 착목했지만, 「검사식#2」부터 「검사식#6」에 대해서도 동일하게 태너 그래프를 그릴 수 있으며, 「검사식#K」의 태너 그래프에 있어서의 각 노드에는, 「검사식#K」 이외의 계수 노드로부터 신뢰도가 전파하게 된다. 따라서, 상관이 낮은 신뢰도끼리가 전부 「검사식#K」에 전파하게 되므로, 오류 정정 능력이 향상한다고 생각된다.(K=2, 3, 4, 5, 6)
이와 같이, 식(5-1)~(5-6)의 패리티 검사 다항식의 각 차수가, 상술한 「나머지」에 관한 조건을 만족시키도록 함으로써, 모든 검사식에 있어서, 효율적으로 신뢰도를 전파시킬 수 있게 되어, 오류 정정 능력을 더욱 높일 수 있을 가능성이 높아진다.
이상, 시변 주기 6인 LDPC-CC에 대해, 부호화율 1/2인 경우를 예로 설명했지만, 부호화율은 1/2로 한정되지 않는다. 부호화율 (n-1)/n(n은 2 이상의 정수)인 경우에는, 정보 X1(D), X2(D), …, Xn -1(D)에 있어서의, 각각의 3개의 계수 세트에 있어서, 상기 「나머지」에 관한 조건이 성립하면, 역시, 양호한 수신 품질을 얻을 수 있을 가능성이 높아진다.
이하, 부호화율 (n-1)/n(n은 2 이상의 정수)인 경우에 대해 설명한다.
시변 주기를 6으로 하는 LDPC-CC의 패리티 검사 다항식으로서 식(7-1)~(7-6)를 생각해 본다.
Figure pct00012
이때, X1(D), X2(D), …, Xn - 1(D)는 데이터(정보) X1, X2, …, Xn -1의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 여기서, 식(7-1)~(7-6)에서는, X1(D), X2(D), …, Xn -1(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식으로 한다. 상기의 부호화율 1/2일 때, 또, 시변 주기 3일 때와 동일하게 생각하면, 식(7-1)~(7-6)의 패리티 검사 다항식으로 표시되는 시변 주기 6, 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에 있어서, 이하의 조건(<조건#1>)을 만족시키면, 보다 높은 오류 정정 능력을 얻을 수 있을 가능성이 높아진다.
단, 시변 주기 6, 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에 있어서, 시점 i의 패리티 비트를 Pi 및 정보 비트를 Xi ,1, Xi ,2, …, Xi ,n-1로 나타낸다. 이때, i%6=k라고 하면 (k=0, 1, 2, 3, 4, 5), 식(7-(k+1))의 패리티 검사 다항식이 성립한다. 예를 들면, i=8이라고 하면, i%6=2(k=2)가 되므로, 식(8)이 성립한다.
Figure pct00013
<조건#1>
식(7-1)~(7-6)에 있어서, X1(D), X2(D), …, Xn -1(D) 및 P(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(a#1,1,1%3, a#1,1,2%3, a#1,1,3%3),
(a#1,2,1%3, a#1,2,2%3, a#1,2,3%3), …,
(a#1,k,1%3, a#1,k,2%3, a#1,k,3%3), …,
(a#1,n-1,1%3, a#1,n-1,2%3, a#1,n-1,3%3),
(b#1,1%3, b#1,2%3, b#1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(k=1, 2, 3, …, n-1)
또,
(a#2,1,1%3, a#2,1,2%3, a#2,1,3%3),
(a#2,2,1%3, a#2,2,2%3, a#2,2,3%3), …,
(a#2,k,1%3, a#2,k,2%3, a#2,k,3%3), …,
(a#2,n-1,1%3, a#2,n-1,2%3, a#2,n-1,3%3),
(b#2,1%3, b#2,2%3, b#2,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(k=1, 2, 3, …, n-1)
또,
(a#3,1,1%3, a#3,1,2%3, a#3,1,3%3),
(a#3,2,1%3, a#3,2,2%3, a#3,2,3%3), …,
(a#3,k,1%3, a#3,k,2%3, a#3,k,3%3), …,
(a#3,n-1,1%3, a#3,n-1,2%3, a#3,n-1,3%3),
(b#3,1%3, b#3,2%3, b#3,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(k=1, 2, 3, …, n-1)
또,
(a#4,1,1%3, a#4,1,2%3, a#4,1,3%3),
(a#4,2,1%3, a#4,2,2%3, a#4,2,3%3), …,
(a#4,k,1%3, a#4,k,2%3, a#4,k,3%3), …,
(a#4,n-1,1%3, a#4,n-1,2%3, a#4,n-1,3%3),
(b#4,1%3, b#4,2%3, b#4,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(k=1, 2, 3, …, n-1)
또,
(a#5,1,1%3, a#5,1,2%3, a#5,1,3%3),
(a#5,2,1%3, a#5,2,2%3, a#5,2,3%3), …,
(a#5,k,1%3, a#5,k,2%3, a#5,k,3%3), …,
(a#5,n-1,1%3, a#5,n-1,2%3, a#5,n-1,3%3),
(b#5,1%3, b#5,2%3, b#5,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(k=1, 2, 3, …, n-1)
또,
(a#6,1,1%3, a#6,1,2%3, a#6,1,3%3),
(a#6,2,1%3, a#6,2,2%3, a#6,2,3%3), …,
(a#6,k,1%3, a#6,k,2%3, a#6,k,3%3), …,
(a#6,n-1,1%3, a#6,n-1,2%3, a#6,n-1,3%3),
(b#6,1%3, b#6,2%3, b#6,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(k=1, 2, 3, …, n-1)
상기 설명에서는, 시변 주기 6인 LDPC-CC에 있어서, 높은 오류 정정 능력을 가지는 부호에 대해서 설명했지만, 시변 주기 3, 6인 LDPC-CC의 설계 방법과 마찬가지로, 시변 주기 3g(g=1, 2, 3, 4, …)인 LDPC-CC(즉, 시변 주기가 3의 배수인 LDPC-CC)를 작성했을 경우, 높은 오류 정정 능력을 가지는 부호를 생성할 수 있다. 이하에서는, 그 부호의 구성 방법에 대해서 상세하게 설명한다.
시변 주기를 3g(g=1, 2, 3, 4, …), 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC의 패리티 검사 다항식으로서 식(9-1)~(9-3g)를 생각한다.
Figure pct00014
이때, X1(D), X2(D), …, Xn - 1(D)는 데이터(정보) X1, X2, …, Xn -1의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 여기서, 식(9-1)~(9-3g)에서는, X1(D), X2(D), …, Xn-1(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식으로 한다.
시변 주기 3인 LDPC-CC 및 시변 주기 6인 LDPC-CC와 동일하게 생각하면, 식(9-1)~(9-3g)의 패리티 검사 다항식으로 표시되는 시변 주기 3g, 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에 있어서, 이하의 조건(<조건#2>)을 만족시키면, 보다 높은 오류 정정 능력을 얻을 수 있을 가능성이 높아진다.
다만, 시변 주기 3g, 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에 있어서, 시점 i의 패리티 비트를 Pi 및 정보 비트를 Xi ,1, Xi ,2, …, Xi ,n-1이라고 나타낸다. 이때, i%3g=k라고 하면(k=0, 1, 2, …, 3g-1), 식(9-(k+1))의 패리티 검사 다항식이 성립한다. 예를 들면, i=2라고 하면, i%3g=2(k=2)가 되므로, 식(10)이 성립한다.
Figure pct00015
또, 식(9-1)~식(9-3g)에 있어서, a#k,p,1, a#k,p,2, a#k,p,3은 정수(단, a#k,p,1≠a#k,p,2≠a#k,p,3)로 한다(k=1, 2, 3, …, 3g; p=1, 2, 3, …, n-1). 또, b#k,1, b#k,2, b#k,3은 정수(단, b#k,1≠b#k,2≠b#k,3)로 한다. 식(9-k)의 패리티 검사 다항식(k=1, 2, 3, …, 3g)을 「검사식#k」라고 부르고, 식(9-k)의 패리티 검사 다항식에 기초한 서브행렬을, 제 k 서브행렬 Hk라고 한다. 그리고, 제 1 서브행렬 H1, 제 2 서브행렬 H2, 제 3 서브행렬 H3, …, 제 3g 서브행렬 H3g로부터 생성하는 시변 주기 3g인 LDPC-CC에 대해 생각해 본다.
<조건#2>
식(9-1)~(9-3g)에 있어서, X1(D), X2(D), …, Xn -1(D) 및 P(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(a#1,1,1%3, a#1,1,2%3, a#1,1,3%3),
(a#1,2,1%3, a#1,2,2%3, a#1,2,3%3), …,
(a#1,p,1%3, a#1,p,2%3, a#1,p,3%3), …,
(a#1,n-1,1%3, a#1,n-1,2%3, a#1,n-1,3%3),
(b#1,1%3, b#1,2%3, b#1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#2,1,1%3, a#2,1,2%3, a#2,1,3%3),
(a#2,2,1%3, a#2,2,2%3, a#2,2,3%3), …,
(a#2,p,1%3, a#2,p,2%3, a#2,p,3%3), …,
(a#2,n-1,1%3, a#2,n-1,2%3, a#2,n-1,3%3),
(b#2,1%3, b#2,2%3, b#2,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#3,1,1%3, a#3,1,2%3, a#3,1,3%3),
(a#3,2,1%3, a#3,2,2%3, a#3,2,3%3), …,
(a#3,p,1%3, a#3,p,2%3, a#3,p,3%3), …,
(a#3,n-1,1%3, a#3,n-1,2%3, a#3,n-1,3%3),
(b#3,1%3, b#3,2%3, b#3,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
또,
(a#k,1,1%3, a#k,1,2%3, a#k,1,3%3),
(a#k,2,1%3, a#k,2,2%3, a#k,2,3%3), …,
(a#k,p,1%3, a#k,p,2%3, a#k,p,3%3), …,
(a#k,n-1,1%3, a#k,n-1,2%3, a#k,n-1,3%3),
(b#k,1%3, b#k,2%3, b#k,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)(따라서, k=1, 2, 3, …, 3g)
또,
또,
(a#3g-2,1,1%3, a#3g-2,1,2%3, a#3g-2,1,3%3),
(a#3g-2,2,1%3, a#3g-2,2,2%3, a#3g-2,2,3%3), …,
(a#3g-2,p,1%3, a#3g-2,p,2%3, a#3g-2,p,3%3), …,
(a#3g-2,n-1,1%3, a#3g-2,n-1,2%3, a#3g-2,n-1,3%3),
(b#3g-2,1%3, b#3g-2,2%3, b#3g-2,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#3g-1,1,1%3, a#3g-1,1,2%3, a#3g-1,1,3%3),
(a#3g-1,2,1%3, a#3g-1,2,2%3, a#3g-1,2,3%3), …,
(a#3g-1,p,1%3, a#3g-1,p,2%3, a#3g-1,p,3%3), …,
(a#3g-1,n-1,1%3, a#3g-1,n-1,2%3, a#3g-1,n-1,3%3),
(b#3g-1,1%3, b#3g-1,2%3, b#3g-1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#3g,1,1%3, a#3g,1,2%3, a#3g,1,3%3),
(a#3g,2,1%3, a#3g,2,2%3, a#3g,2,3%3), …,
(a#3g,p,1%3, a#3g,p,2%3, a#3g,p,3%3), …,
(a#3g,n-1,1%3, a#3g,n-1,2%3, a#3g,n-1,3%3),
(b#3g,1%3, b#3g,2%3, b#3g,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
단, 부호화를 용이하게 행한다는 점을 고려하면, 식(9-1)~(9-3g)에 있어서,
(b#k,1%3, b#k,2%3, b#k,3%3)의 3개 중 "0"이 1개 존재하면 좋다(단, k=1, 2, …3g). 이때, D0=1이 존재하고, 또 b#k,1, b#k,2, b#k,3이 0 이상의 정수이면, 패리티 P를 순차적으로 구할 수 있다고 하는 특징을 가지기 때문이다.
또, 동일 시점의 패리티 비트와 데이터 비트에 관련성을 갖게 하여, 높은 정정 능력을 가지는 부호의 탐색을 용이하게 행하는 위해서는,
(a#k,1,1%3, a#k,1,2%3, a#k,1,3%3)의 3개 중 "0"이 1개 존재하고,
(a#k,2,1%3, a#k,2,2%3, a#k,2,3%3)의 3개 중 "0"이 1개 존재하고,
(a#k,p,1%3, a#k,p,2%3, a#k,p,3%3)의 3개 중 "0"이 1개 존재하고,
(a#k,n-1,1%3, a#k,n-1,2%3, a#k,n-1,3%3)의 3개 중 "0"이 1개 존재하면 좋다(단, k=1, 2, …3g).
다음에, 부호화를 용이하게 행한다는 점을 고려한 시변 주기 3g(g=2, 3, 4, 5, …)인 LDPC-CC에 대해 생각한다. 이때, 부호화율을 (n-1)/n(n은 2 이상의 정수)이라고 하면 LDPC-CC의 패리티 검사 다항식은 이하와 같이 나타낼 수 있다.
Figure pct00016
이때, X1(D), X2(D), …, Xn - 1(D)는 데이터(정보) X1, X2, …, Xn -1의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 여기서, 식(11-1)~(11-3g)에서는, X1(D), X2(D), …, Xn -1(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식으로 한다. 단, 시변 주기 3g, 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에 있어서, 시각 i의 패리티를 Pi 및 정보를 Xi ,1, Xi ,2, …, Xi ,n- 1으로 나타낸다. 이때, i%3g=k라고 하면 (k=0, 1, 2, …, 3g-1), 식(11-(k+1))의 패리티 검사 다항식이 성립한다. 예를 들면, i=2라고 하면, i%3g=2(k=2)가 되므로, 식(12)가 성립한다.
Figure pct00017
이때, <조건#3> 및 <조건#4>를 만족시키면, 보다 높은 오류 정정 능력을 가지는 부호를 작성할 수 있을 가능성이 높아진다.
<조건#3>
식(11-1)~(11-3g)에 있어서, X1(D), X2(D), …, Xn -1(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(a#1,1,1%3, a#1,1,2%3, a#1,1,3%3),
(a#1,2,1%3, a#1,2,2%3, a#1,2,3%3), …,
(a#1,p,1%3, a#1,p,2%3, a#1,p,3%3), …,
(a#1,n-1,1%3, a#1,n-1,2%3, a#1,n-1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#2,1,1%3, a#2,1,2%3, a#2,1,3%3),
(a#2,2,1%3, a#2,2,2%3, a#2,2,3%3), …,
(a#2,p,1%3, a#2,p,2%3, a#2,p,3%3), …,
(a#2,n-1,1%3, a#2,n-1,2%3, a#2,n-1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#3,1,1%3, a#3,1,2%3, a#3,1,3%3),
(a#3,2,1%3, a#3,2,2%3, a#3,2,3%3), …,
(a#3,p,1%3, a#3,p,2%3, a#3,p,3%3), …,
(a#3,n-1,1%3, a#3,n-1,2%3, a#3,n-1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
또,
(a#k,1,1%3, a#k,1,2%3, a#k,1,3%3),
(a#k,2,1%3, a#k,2,2%3, a#k,2,3%3), …,
(a#k,p,1%3, a#k,p,2%3, a#k,p,3%3), …,
(a#k,n-1,1%3, a#k,n-1,2%3, a#k,n-1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)(따라서, k=1, 2, 3, …, 3g)
또,
또,
(a#3g-2,1,1%3, a#3g-2,1,2%3, a#3g-2,1,3%3),
(a#3g-2,2,1%3, a#3g-2,2,2%3, a#3g-2,2,3%3), …,
(a#3g-2,p,1%3, a#3g-2,p,2%3, a#3g-2,p,3%3), …,
(a#3g-2,n-1,1%3, a#3g-2,n-1,2%3, a#3g-2,n-1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#3g-1,1,1%3, a#3g-1,1,2%3, a#3g-1,1,3%3),
(a#3g-1,2,1%3, a#3g-1,2,2%3, a#3g-1,2,3%3), …,
(a#3g-1,p,1%3, a#3g-1,p,2%3, a#3g-1,p,3%3), …,
(a#3g-1,n-1,1%3, a#3g-1,n-1,2%3, a#3g-1,n-1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#3g,1,1%3, a#3g,1,2%3, a#3g,1,3%3),
(a#3g,2,1%3, a#3g,2,2%3, a#3g,2,3%3), …,
(a#3g,p,1%3, a#3g,p,2%3, a#3g,p,3%3), …,
(a#3g,n-1,1%3, a#3g,n-1,2%3, a#3g,n-1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
추가로, 식(11-1)~(11-3g)에 있어서, P(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(b#1,1%3, b#1,2%3),
(b#2,1%3, b#2,2%3),
(b#3,1%3, b#3,2%3), …,
(b#k,1%3, b#k,2%3), …,
(b#3g-2,1%3, b#3g-2,2%3),
(b#3g-1,1%3, b#3g-1,2%3),
(b#3g,1%3, b#3g,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다(k=1, 2, 3, …, 3g).
식(11-1)~(11-3g)에 대한 <조건#3>은, 식(9-1)~(9-3g)에 대한 <조건#2>와 동일한 관계가 된다. 식(11-1)~(11-3g)에 대해서, <조건#3>에 추가해, 이하의 조건(<조건#4>)을 부가하면, 보다 높은 오류 정정 능력을 가지는 LDPC-CC를 작성할 수 있을 가능성이 높아진다.
<조건#4>
식(11-1)~(11-3g)의 P(D)의 차수에 있어서, 이하의 조건을 만족시킨다.
(b#1,1%3g, b#1,2%3g),
(b#2,1%3g, b#2,2%3g),
(b#3,1%3g, b#3,2%3g), …,
(b#k,1%3g, b#k,2%3g), …,
(b#3g-2,1%3g, b#3g-2,2%3g),
(b#3g-1,1%3g, b#3g-1,2%3g),
(b#3g,1%3g, b#3g,2%3g)의 6g개의 차수(2개의 차수가 1조를 구성하므로, 3g조를 구성하는 차수는 6g개 있음)의 값에는, 0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.
그런데, 검사 행렬에 있어서, "1"이 존재하는 위치에 규칙성을 가지면서도 랜덤성이 있으면 양호한 오류 정정 능력이 얻어질 가능성이 높다. 식(11-1)~(11-3g)의 패리티 검사 다항식을 가지는 시변 주기 3g(g=2, 3, 4, 5, …), 부호화율이(n-1)/n(n은 2 이상의 정수)인 LDPC-CC에서는, <조건#3>에 더해 <조건#4>의 조건을 붙여 부호를 작성하면, 검사 행렬에 있어서, "1"이 존재하는 위치에 규칙성을 가지면서도 랜덤성을 부여하는 것이 가능하게 되기 때문에, 양호한 오류 정정 능력이 얻어질 가능성이 높아진다.
다음에, 부호화를 용이하게 행할 수 있고, 또, 동일 시점의 패리티 비트와 데이터 비트에 관련성을 갖게 하는, 시변 주기 3g(g=2, 3, 4, 5, …)인 LDPC-CC에 대해서 생각해 본다. 이때, 부호화율을 (n-1)/n(n은 2 이상의 정수)이라고 하면 LDPC-CC의 패리티 검사 다항식은 이하와 같이 나타낼 수 있다.
Figure pct00018
이때, X1(D), X2(D), …, Xn - 1(D)는 데이터(정보) X1, X2, …, Xn -1의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 그리고, 식(13-1)~(13-3g)에서는, X1(D), X2(D), …, Xn -1(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식으로 하고, X1(D), X2(D), …, Xn -1(D), P(D)에는 D0의 항이 존재하게 된다.(k=1, 2, 3, …, 3g)
단, 시변 주기 3g, 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에 있어서, 시점 i의 패리티 비트를 Pi 및 정보 비트를 Xi ,1, Xi ,2, …, Xi ,n-1이라고 나타낸다. 이때, i%3g=k라고 하면(k=0, 1, 2, …, 3g-1), 식(13-(k+1))의 패리티 검사 다항식이 성립한다. 예를 들면, i=2라고 하면, i%3g=2(k=2)가 되므로, 식(14)가 성립한다.
Figure pct00019
이때, 이하의 조건(<조건#5> 및 <조건#6>)을 만족시키면, 더욱 높은 오류 정정 능력을 가지는 부호를 작성할 수 있을 가능성이 높아진다.
<조건#5>
식(13-1)~(13-3g)에 있어서, X1(D), X2(D), …, Xn -1(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(a#1,1,1%3, a#1,1,2%3),
(a#1,2,1%3, a#1,2,2%3), …,
(a#1,p,1%3, a#1,p,2%3), …,
(a#1,n-1,1%3, a#1,n-1,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#2,1,1%3, a#2,1,2%3),
(a#2,2,1%3, a#2,2,2%3), …,
(a#2,p,1%3, a#2,p,2%3), …,
(a#2,n-1,1%3, a#2,n-1,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#3,1,1%3, a#3,1,2%3),
(a#3,2,1%3, a#3,2,2%3), …,
(a#3,p,1%3, a#3,p,2%3), …,
(a#3,n-1,1%3, a#3,n-1,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
또,
(a#k,1,1%3, a#k,1,2%3),
(a#k,2,1%3, a#k,2,2%3), …,
(a#k,p,1%3, a#k,p,2%3), …,
(a#k,n-1,1%3, a#k,n-1,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)(따라서, k=1, 2, 3, …, 3g)
또,
또,
(a#3g-2,1,1%3, a#3g-2,1,2%3),
(a#3g-2,2,1%3, a#3g-2,2,2%3), …,
(a#3g-2,p,1%3, a#3g-2,p,2%3), …,
(a#3g-2,n-1,1%3, a#3g-2,n-1,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#3g-1,1,1%3, a#3g-1,1,2%3),
(a#3g-1,2,1%3, a#3g-1,2,2%3), …,
(a#3g-1,p,1%3, a#3g-1,p,2%3), …,
(a#3g-1,n-1,1%3, a#3g-1,n-1,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
또,
(a#3g,1,1%3, a#3g,1,2%3),
(a#3g,2,1%3, a#3g,2,2%3), …,
(a#3g,p,1%3, a#3g,p,2%3), …,
(a#3g,n-1,1%3, a#3g,n-1,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다.(p=1, 2, 3, …, n-1)
추가하여, 식(13-1)~(13-3g)에 있어서, P(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(b#1,1%3, b#1,2%3),
(b#2,1%3, b#2,2%3),
(b#3,1%3, b#3,2%3), …,
(b#k,1%3, b#k,2%3), …,
(b#3g-2,1%3, b#3g-2,2%3),
(b#3g-1,1%3, b#3g-1,2%3),
(b#3g,1%3, b#3g,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다(k=1, 2, 3, …, 3g).
식(13-1)~(13-3g)에 대한 <조건#5>는, 식(9-1)~(9-3g)에 대한 <조건#2>와 동일한 관계가 된다. 식(13-1)~(13-3g)에 대해서, <조건#5>에 더해 이하의 조건(<조건#6>)을 부가하면, 높은 오류 정정 능력을 가지는 LDPC-CC를 작성할 수 있을 가능성이 높아진다.
<조건#6>
식(13-1)~(13-3g)의 X1(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,1,1%3g, a#1,1,2%3g),
(a#2,1,1%3g, a#2,1,2%3g), …,
(a#p,1,1%3g, a#p,1,2%3g), …,
(a#3g,1,1%3g, a#3g,1,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또,
식(13-1)~(13-3g)의 X2(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,2,1%3g, a#1,2,2%3g),
(a#2,2,1%3g, a#2,2,2%3g), …,
(a#p,2,1%3g, a#p,2,2%3g), …,
(a#3g,2,1%3g, a#3g,2,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또,
식(13-1)~(13-3g)의 X3(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,3,1%3g, a#1,3,2%3g),
(a#2,3,1%3g, a#2,3,2%3g), …,
(a#p,3,1%3g, a#p,3,2%3g), …,
(a#3g,3,1%3g, a#3g,3,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또,
또,
식(13-1)~(13-3g)의 Xk(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,k,1%3g, a#1,k,2%3g),
(a#2,k,1%3g, a#2,k,2%3g), …,
(a#p,k,1%3g, a#p,k,2%3g), …,
(a#3g,k,1%3g, a#3g,k,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
(k=1, 2, 3, …, n-1)
또,
또,
식(13-1)~(13-3g)의 Xn -1(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,n-1,1%3g, a#1,n-1,2%3g),
(a#2,n-1,1%3g, a#2,n-1,2%3g), …,
(a#p,n-1,1%3g, a#p,n-1,2%3g), …,
(a#3g,n-1,1%3g, a#3g,n-1,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또,
식(13-1)~(13-3g)의 P(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(b#1,1%3g, b#1,2%3g),
(b#2,1%3g, b#2,2%3g),
(b#3,1%3g, b#3,2%3g), …,
(b#k,1%3g, b#k,2%3g), …,
(b#3g-2,1%3g, b#3g-2,2%3g),
(b#3g-1,1%3g, b#3g-1,2%3g),
(b#3g,1%3g, b#3g,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(k=1, 2, 3, …, 3g)
그런데, 검사 행렬에 있어서, "1"이 존재하는 위치에 규칙성을 가지면서도 랜덤성이 있으면 양호한 오류 정정 능력을 얻을 수 있을 가능성이 높다. 식(13-1)~(13-3g)의 패리티 검사 다항식을 가지는 시변 주기 3g(g=2, 3, 4, 5, …), 부호화율이 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에서는, <조건#5>에 더해 <조건#6>의 조건을 부가해 부호를 작성하면, 검사 행렬에 있어서, "1"이 존재하는 위치에 규칙성을 가지면서도 랜덤성을 부여하는 것이 가능해지기 때문에, 보다 양호한 오류 정정 능력을 얻을 수 있을 가능성이 높아진다.
또, <조건#6>을 대신해, <조건#6′>를 이용하는, 즉, <조건#5>에 더해 <조건#6′>를 부가해 부호를 작성해도, 보다 높은 오류 정정 능력을 가지는 LDPC-CC를 작성할 수 있을 가능성이 높아진다.
<조건#6′>
식(13-1)~(13-3g)의 X1(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,1,1%3g, a#1,1,2%3g),
(a#2,1,1%3g, a#2,1,2%3g), …,
(a#p,1,1%3g, a#p,1,2%3g), …,
(a#3g,1,1%3g, a#3g,1,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또는,
식(13-1)~(13-3g)의 X2(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,2,1%3g, a#1,2,2%3g),
(a#2,2,1%3g, a#2,2,2%3g), …,
(a#p,2,1%3g, a#p,2,2%3g), …,
(a#3g,2,1%3g, a#3g,2,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또는,
식(13-1)~(13-3g)의 X3(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,3,1%3g, a#1,3,2%3g),
(a#2,3,1%3g, a#2,3,2%3g), …,
(a#p,3,1%3g, a#p,3,2%3g), …,
(a#3g,3,1%3g, a#3g,3,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또는,
또는,
식(13-1)~(13-3g)의 Xk(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,k,1%3g, a#1,k,2%3g),
(a#2,k,1%3g, a#2,k,2%3g), …,
(a#p,k,1%3g, a#p,k,2%3g), …,
(a#3g,k,1%3g, a#3g,k,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
(k=1, 2, 3, …, n-1)
또는,
또는,
식(13-1)~(13-3g)의 Xn -1(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,n-1,1%3g, a#1,n-1,2%3g),
(a#2,n-1,1%3g, a#2,n-1,2%3g), …,
(a#p,n-1,1%3g, a#p,n-1,2%3g), …,
(a#3g,n-1,1%3g, a#3g,n-1,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또는,
식(13-1)~(13-3g)의 P(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(b#1,1%3g, b#1,2%3g),
(b#2,1%3g, b#2,2%3g),
(b#3,1%3g, b#3,2%3g), …,
(b#k,1%3g, b#k,2%3g), …,
(b#3g-2,1%3g, b#3g-2,2%3g),
(b#3g-1,1%3g, b#3g-1,2%3g),
(b#3g,1%3g, b#3g,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(k=1, 2, 3, …, 3g)
이상, 시변 주기 3g, 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에 대해서 설명했다. 이하, 시변 주기 3g, 부호화율 1/2(n=2)인 LDPC-CC의 패리티 검사 다항식의 차수의 조건에 대해서 설명한다.
시변 주기를 3g(g=1, 2, 3, 4, …), 부호화율 1/2(n=2)인 LDPC-CC의 패리티 검사 다항식으로서 식(15-1)~(15-3g)를 생각해 본다.
Figure pct00020
이때, X(D)는 데이터(정보) X의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 여기서, 식(15-1)~(15-3g)에서는, X(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식으로 한다.
시변 주기 3인 LDPC-CC 및 시변 주기 6인 LDPC-CC와 마찬가지로 생각하면, 식(15-1)~(15-3g)의 패리티 검사 다항식으로 표시되는 시변 주기 3g, 부호화율 1/2(n=2)인 LDPC-CC에 있어서, 이하의 조건(<조건#2-1>)을 만족시키면, 보다 높은 오류 정정 능력을 얻을 수 있을 가능성이 높아진다.
단, 시변 주기 3g, 부호화율 1/2(n=2)인 LDPC-CC에 있어서, 시점 i의 패리티 비트를 Pi 및 정보 비트를 Xi ,1로 나타낸다. 이때, i%3g=k이라고 하면 (k=0, 1, 2, …, 3g-1), 식(15-(k+1))의 패리티 검사 다항식이 성립한다. 예를 들면, i=2라고 하면, i%3g=2(k=2)가 되므로, 식(16)이 성립한다.
Figure pct00021
또, 식(15-1)~식(15-3g)에 있어서, a#k,1,1, a#k,1,2, a#k,1,3은 정수(단, a#k,1,1≠a#k,1,2≠a#k,1,3)로 한다(k=1, 2, 3, …, 3g). 또, b#k,1, b#k,2, b#k,3은 정수(단, b#k,1≠b#k,2≠b#k,3)로 한다. 식(15-k)의 패리티 검사 다항식(k=1, 2, 3, …, 3g)을 「검사식#k」라고 부르고, 식(15-k)의 패리티 검사 다항식에 기초한 서브행렬을, 제 k 서브행렬 Hk라고 한다. 그리고, 제 1 서브행렬 H1, 제 2 서브행렬 H2, 제 3 서브행렬 H3, …, 제 3g서브행렬 H3g로부터 생성하는 시변 주기 3g인 LDPC-CC에 대해서 생각해 본다.
<조건#2-1>
식(15-1)~(15-3g)에 있어서, X(D) 및 P(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(a#1,1,1%3, a#1,1,2%3, a#1,1,3%3),
(b#1,1%3, b#1,2%3, b#1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
(a#2,1,1%3, a#2,1,2%3, a#2,1,3%3),
(b#2,1%3, b#2,2%3, b#2,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
(a#3,1,1%3, a#3,1,2%3, a#3,1,3%3),
(b#3,1%3, b#3,2%3, b#3,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
또,
(a#k,1,1%3, a#k,1,2%3, a#k,1,3%3),
(b#k,1%3, b#k,2%3, b#k,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(따라서, k=1, 2, 3, …, 3g)
또,
또,
(a#3g-2,1,1%3, a#3g-2,1,2%3, a#3g-2,1,3%3),
(b#3g-2,1%3, b#3g-2,2%3, b#3g-2,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
(a#3g-1,1,1%3, a#3g-1,1,2%3, a#3g-1,1,3%3),
(b#3g-1,1%3, b#3g-1,2%3, b#3g-1,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
(a#3g,1,1%3, a#3g,1,2%3, a#3g,1,3%3),
(b#3g,1%3, b#3g,2%3, b#3g,3%3)은,
(0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
단, 부호화를 용이하게 행한다는 점을 고려하면, 식(15-1)~(15-3g)에 있어서,
(b#k,1%3, b#k,2%3, b#k,3%3)의 3개 중 "0"이 1개 존재하면 좋다(단, k=1, 2, …3g). 이때, D0=1이 존재하고 또, b#k,1, b#k,2, b#k,3이 0 이상의 정수이면, 패리티 P를 순차적으로 구할 수 있다고 하는 특징을 가지기 때문이다.
또, 동일 시점의 패리티 비트와 데이터 비트에 관련성을 갖게 하여, 높은 정정 능력을 가지는 부호의 탐색을 용이하게 행하기 위해서는,
(a#k,1,1%3, a#k,1,2%3, a#k,1,3%3)의 3개 중 "0"이 1개 존재하면 좋다(단, k=1, 2, …3g).
다음에, 부호화를 용이하게 행한다는 점을 고려한 시변 주기 3g(g=2, 3, 4, 5, …)인 LDPC-CC에 대해서 생각해 본다. 이때, 부호화율을 1/2(n=2)라고 하면 LDPC-CC의 패리티 검사 다항식은 이하와 같이 나타낼 수 있다.
Figure pct00022
이때, X(D)는 데이터(정보) X의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 여기서, 식(17-1)~(17-3g)에서는, X, P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식으로 한다. 단, 시변 주기 3g, 부호화율 1/2(n=2)인 LDPC-CC에 있어서, 시점 i의 패리티 비트를 Pi 및 정보 비트를 Xi, 1로 나타낸다. 이때, i%3g=k라고 하면(k=0, 1, 2, …, 3g-1), 식(17-(k+1))의 패리티 검사 다항식이 성립한다. 예를 들면, i=2라고 하면, i%3g=2(k=2)가 되므로, 식(18)이 성립한다.
Figure pct00023
이때, <조건#3-1> 및 <조건#4-1>을 만족시키면, 보다 높은 오류 정정 능력을 가지는 부호를 작성할 수 있을 가능성이 높아진다.
<조건#3-1>
식(17-1)~(17-3g)에 있어서, X(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(a#1,1,1%3, a#1,1,2%3, a#1,1,3%3)은, (0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
(a#2,1,1%3, a#2,1,2%3, a#2,1,3%3)은, (0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
(a#3,1,1%3, a#3,1,2%3, a#3,1,3%3)은, (0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
또,
(a#k,1,1%3, a#k,1,2%3, a#k,1,3%3)은, (0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.(따라서, k=1, 2, 3, …, 3g)
또,
또,
(a#3g-2,1,1%3, a#3g-2,1,2%3, a#3g-2,1,3%3)은, (0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
(a#3g-1,1,1%3, a#3g-1,1,2%3, a#3g-1,1,3%3)은, (0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
또,
(a#3g,1,1%3, a#3g,1,2%3, a#3g,1,3%3)은, (0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)의 어느 하나가 된다.
추가하여, 식(17-1)~(17-3g)에 있어서, P(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(b#1,1%3, b#1,2%3),
(b#2,1%3, b#2,2%3),
(b#3,1%3, b#3,2%3), …,
(b#k,1%3, b#k,2%3), …,
(b#3g-2,1%3, b#3g-2,2%3),
(b#3g-1,1%3, b#3g-1,2%3),
(b#3g,1%3, b#3g,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다(k=1, 2, 3, …, 3g).
식(17-1)~(17-3g)에 대한 <조건#3-1>은, 식(15-1)~(15-3g)에 대한 <조건#2-1>과 동일한 관계가 된다. 식(17-1)~(17-3g)에 대해서, <조건#3-1>에 더해 이하의 조건(<조건#4-1>)을 부가하면, 보다 높은 오류 정정 능력을 가지는 LDPC-CC를 작성할 수 있을 가능성이 높아진다.
<조건#4-1>
식(17-1)~(17-3g)의 P(D)의 차수에 있어서, 이하의 조건을 만족시킨다.
(b#1,1%3g, b#1,2%3g),
(b#2,1%3g, b#2,2%3g),
(b#3,1%3g, b#3,2%3g), …,
(b#k,1%3g, b#k,2%3g), …,
(b#3g-2,1%3g, b#3g-2,2%3g),
(b#3g-1,1%3g, b#3g-1,2%3g),
(b#3g,1%3g, b#3g,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.
그런데, 검사 행렬에 있어서, "1"이 존재하는 위치에 규칙성을 가지면서도 랜덤성이 있으면 양호한 오류 정정 능력을 얻을 수 있을 가능성이 높다. 식(17-1)~(17-3g)의 패리티 검사 다항식을 가지는 시변 주기 3g(g=2, 3, 4, 5, …), 부호화율 1/2(n=2)인 LDPC-CC에서는, <조건#3-1>에 더해 <조건#4-1>의 조건을 붙여 부호를 작성하면, 검사 행렬에 있어서, "1"이 존재하는 위치에 규칙성을 가지면서도 랜덤성을 부여하는 것이 가능하게 되기 때문에, 보다 양호한 오류 정정 능력이 얻어질 가능성이 높아진다.
다음에, 부호화를 용이하게 행할 수 있으면서 또, 동일 시점의 패리티 비트와 데이터 비트에 관련성을 갖게 하는, 시변 주기 3g(g=2, 3, 4, 5, …)인 LDPC-CC에 대해 생각해 본다. 이때, 부호화율을 1/2(n=2)라고 하면 LDPC-CC의 패리티 검사 다항식은 이하와 같이 나타낼 수 있다.
이때, X(D)는 데이터(정보) X의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 그리고, 식(19-1)~(19-3g)에서는, X(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식으로 하고, X(D), P(D)에는 D0의 항이 존재하게 된다.(k=1, 2, 3, …, 3g)
단, 시변 주기 3g, 부호화율 1/2(n=2)인 LDPC-CC에 있어서, 시점 i의 패리티 비트를 Pi 및 정보 비트를 Xi, 1로 나타낸다. 이때, i%3g=k라고 하면(k=0, 1, 2, …, 3g-1), 식(19-(k+1))의 패리티 검사 다항식이 성립한다. 예를 들면, i=2라고 하면, i%3g=2(k=2)가 되므로, 식(20)이 성립한다.
Figure pct00025
이때, 이하의 조건(<조건#5-1> 및 <조건#6-1>)을 만족시키면, 보다 높은 오류 정정 능력을 가지는 부호를 작성할 수 있을 가능성이 높아진다.
<조건#5-1>
식(19-1)~(19-3g)에 있어서, X(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(a#1,1,1%3, a#1,1,2%3)은, (1, 2), (2, 1)의 어느 하나가 된다.
또,
(a#2,1,1%3, a#2,1,2%3)은, (1, 2), (2, 1)의 어느 하나가 된다.
또,
(a#3,1,1%3, a#3,1,2%3)은, (1, 2), (2, 1)의 어느 하나가 된다.
또,
또,
(a#k,1,1%3, a#k,1,2%3)은, (1, 2), (2, 1)의 어느 하나가 된다.(따라서, k=1, 2, 3, …, 3g)
또,
또,
(a#3g-2,1,1%3, a#3g-2,1,2%3)은, (1, 2), (2, 1)의 어느 하나가 된다.
또,
(a#3g-1,1,1%3, a#3g-1,1,2%3)은, (1, 2), (2, 1)의 어느 하나가 된다.
또,
(a#3g,1,1%3, a#3g,1,2%3)은, (1, 2), (2, 1)의 어느 하나가 된다.
추가하여, 식(19-1)~(19-3g)에 있어서, P(D)의 차수의 조합이 이하의 조건을 만족시킨다.
(b#1,1%3, b#1,2%3),
(b#2,1%3, b#2,2%3),
(b#3,1%3, b#3,2%3), …,
(b#k,1%3, b#k,2%3), …,
(b#3g-2,1%3, b#3g-2,2%3),
(b#3g-1,1%3, b#3g-1,2%3),
(b#3g,1%3, b#3g,2%3)은,
(1, 2), (2, 1)의 어느 하나가 된다(k=1, 2, 3, …, 3g).
식(19-1)~(19-3g)에 대한 <조건#5-1>은, 식(15-1)~(15-3g)에 대한 <조건#2-1>과 동일한 관계가 된다. 식(19-1)~(19-3g)에 대해서, <조건#5-1>에 더해 이하의 조건 (<조건#6-1>)을 부가하면, 보다 높은 오류 정정 능력을 가지는 LDPC-CC를 작성할 수 있을 가능성이 높아진다.
<조건#6-1>
식(19-1)~(19-3g)의 X(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,1,1%3g, a#1,1,2%3g),
(a#2,1,1%3g, a#2,1,2%3g), …,
(a#p,1,1%3g, a#p,1,2%3g), …,
(a#3g,1,1%3g, a#3g,1,2%3g)의 6g개의 값에는,
0에서 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또,
식(19-1)~(19-3g)의 P(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(b#1,1%3g, b#1,2%3g),
(b#2,1%3g, b#2,2%3g),
(b#3,1%3g, b#3,2%3g), …,
(b#k,1%3g, b#k,2%3g), …,
(b#3g-2,1%3g, b#3g-2,2%3g),
(b#3g-1,1%3g, b#3g-1,2%3g),
(b#3g,1%3g, b#3g,2%3g)의 6g(3g×2)개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(k=1, 2, 3, …, 3g)
그런데, 검사 행렬에 있어서, "1"이 존재하는 위치에 규칙성을 가지면서도 랜덤성이 있으면, 양호한 오류 정정 능력을 얻을 수 있을 가능성이 높다. 식(19-1)~(19-3g)의 패리티 검사 다항식을 가지는 시변 주기 3g(g=2, 3, 4, 5, …), 부호화율 1/2인 LDPC-CC에서는, <조건#5-1>에 더해 <조건#6-1>의 조건을 부가하여 부호를 작성하면, 검사 행렬에 있어서, "1"이 존재하는 위치에 규칙성을 가지면서도 랜덤성을 부여하는 것이 가능해지기 때문에, 보다 양호한 오류 정정 능력을 얻을 수 있을 가능성이 높아진다.
또, <조건#6-1> 대신에, <조건#6′-1>을 이용하는, 즉, <조건#5-1>에 더해 <조건#6′-1>을 부가해 부호를 작성해도, 보다 높은 오류 정정 능력을 가지는 LDPC-CC를 작성할 수 있을 가능성이 높아진다.
<조건#6′-1>
식(19-1)~(19-3g)의 X(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(a#1,1,1%3g, a#1,1,2%3g),
(a#2,1,1%3g, a#2,1,2%3g), …,
(a#p,1,1%3g, a#p,1,2%3g), …,
(a#3g,1,1%3g, a#3g,1,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(p=1, 2, 3, …, 3g)
또는,
식(19-1)~(19-3g)의 P(D)의 차수에 있어서, 다음의 조건을 만족시킨다.
(b#1,1%3g, b#1,2%3g),
(b#2,1%3g, b#2,2%3g),
(b#3,1%3g, b#3,2%3g), …,
(b#k,1%3g, b#k,2%3g), …,
(b#3g-2,1%3g, b#3g-2,2%3g),
(b#3g-1,1%3g, b#3g-1,2%3g),
(b#3g,1%3g, b#3g,2%3g)의 6g개의 값에는,
0부터 3g-1의 정수(0, 1, 2, 3, 4, …, 3g-2, 3g-1) 중, 3의 배수(즉, 0, 3, 6, …, 3g-3) 이외의 값의 모든 값이 존재한다.(k=1, 2, 3, …, 3g)
일례로서 양호한 오류 정정 능력을 가지는, 부호화율 1/2, 시변 주기 6인 LDPC-CC를 표 6에 열거한다.
Figure pct00026
이상, 특성이 양호한 시변 주기 g인 LDPC-CC에 대해 설명했다. 또한, LDPC-CC는, 정보 벡터 n에 생성 행렬 G를 곱함으로써, 부호화 데이터(부호어)를 얻을 수 있다. 즉, 부호화 데이터(부호어) c는, c=n×G라고 나타낼 수 있다. 여기서, 생성 행렬 G는, 미리 설계된 검사 행렬 H에 대응하여 구해진 것이다. 구체적으로는, 생성 행렬 G는, G×HT=0을 만족시키는 행렬이다.
예를 들면, 부호화율 1/2, 생성 다항식 G=[1 G1(D)/G0(D)]인 컨볼루션 부호를 예로 생각해 본다. 이때, G1은 피드포워드(feed forward) 다항식, G0은 피드백 다항식을 나타낸다. 정보 계열(데이터)의 다항식 표현을 X(D), 패리티 계열의 다항식 표현을 P(D)라고 하면 패리티 검사 다항식은, 이하의 식(21)과 같이 표시될 수 있다.
Figure pct00027
여기서, D는, 지연 연산자이다.
도 5에, (7, 5)의 컨볼루션 부호에 관한 정보를 기재한다. (7, 5) 컨볼루션 부호의 생성 행렬은 G=[1(D2+1)/(D2+D+1)]라고 표시된다. 따라서, 패리티 검사 다항식은, 이하의 식(22)가 된다.
Figure pct00028
여기서, 시점 i에 있어서의 데이터를 Xi, 패리티 비트를 Pi라고 나타내고, 송신 계열 Wi=(Xi,Pi)라고 나타낸다. 그리고, 송신 벡터 w=(X1,P1, X2,P2, …, Xi,Pi , …)T라고 나타낸다. 그러면, 식(22)로부터, 검사 행렬 H는 도 5에 나타내는 것처럼 표시할 수 있다. 이때, 이하의 식(23)의 관계식이 성립한다.
Figure pct00029
따라서, 복호측에서는, 검사 행렬 H를 이용하여 비특허 문헌 4, 비특허 문헌 5 및 비특허 문헌 6에 표시되어 있는 등의 BP(Belief Propagation)(신뢰도 전파) 복호, BP 복호를 근사(近似)한 min-sum 복호, offset BP 복호, Normalized BP 복호, shuffled BP 복호 등의 신뢰도 전파를 이용한 복호를 행할 수 있다.
[컨볼루션 부호에 기초한 시불변(時不變)ㆍ시변(時變) LDPC-CC(부호화율 (n-1)/n)(n : 자연수)]
이하, 컨볼루션 부호에 기초한 시불변ㆍ시변 LDPC-CC의 개요를 설명한다.
부호화율 R=(n-1)/n의 정보 X1, X2, …, Xn -1의 다항식 표현을 X1(D), X2(D), …, Xn -1(D), 또, 패리티 P의 다항식 표현을 P(D)라고 하여, 식(24)과 같이 표시되는 패리티 검사 다항식을 생각해 본다.
Figure pct00030
식(24)에 있어서, 이때 ap ,p(p=1, 2, …, n-1; q=1, 2, …, rp)는, 예를 들면, 자연수이며, ap ,1≠ap ,2≠…≠ap , rp를 만족한다. 또, bq(q=1, 2, …, s)는, 자연수이며, b1≠b2≠…≠bs를 만족한다. 이때, 식(24)의 패리티 검사 다항식에 기초한 검사 행렬로 정의되는 부호를, 여기에서는, 시불변 LDPC-CC라고 부른다.
식(24)에 기초하는 다른 패리티 검사 다항식을 m개 준비한다(m은, 2 이상의 정수). 그 패리티 검사 다항식을 이하와 같이 나타낸다.
Figure pct00031
여기서, i=0, 1, …, m-1이다.
그리고, 시점 j에 있어서의 정보 X1, X2, …, Xn -1을 X1 ,j, X2 ,j, …, Xn -1,j라고 나타내고, 시점 j에 있어서의 패리티 P를 Pj라고 나타내며, uj=(X1 ,j, X2 ,j, …, Xn -1,j, Pj)T라고 한다. 이때, 시점 j의 정보 X1 ,j, X2 ,j, …, Xn -1,j 및 패리티 Pj는, 식(26)의 패리티 검사 다항식을 만족시킨다.
Figure pct00032
여기서, 「j mod m」은, j를 m으로 나눗셈한 나머지이다.
식(26)의 패리티 검사 다항식에 기초하는 검사 행렬로 정의되는 부호를, 여기에서는 시변 LDPC-CC라고 부른다. 이때, 식(24)의 패리티 검사 다항식으로 정의되는 시불변 LDPC-CC 및 식(26)의 패리티 검사 다항식으로 정의되는 시변 LDPC-CC는, 순차적으로 패리티 비트를 레지스터 및 배타적 논리합으로 간단하게 구할 수 있다고 하는 특징을 가진다.
예를 들면, 부호화율 2/3이고, 식(24)~식(26)에 기초하는 시변 주기 2인 LDPC-CC의 검사 행렬 H의 구성을, 도 6에 나타낸다. 식(26)에 기초한 시변 주기 2인 다른 2개의 검사 다항식에 대해서, 「검사식#1」, 「검사식#2」라고 명명한다. 도 6에 있어서, (Ha, 111)은 「검사식#1」에 상당하는 부분이고, (Hc, 111)은 「검사식#2」에 상당하는 부분이다. 이하, (Ha, 111) 및 (Hc, 111)을 서브행렬이라고 정의한다.
이와 같이, 본 제안의 시변 주기 2인 LDPC-CC의 검사 행렬 H를, 「검사식#1」의 패리티 검사 다항식을 나타내는 제 1 서브행렬과, 「검사식#2」의 패리티 검사 다항식을 나타내는 제 2 서브행렬에 의해 정의할 수 있다. 구체적으로는, 검사 행렬 H에 있어서, 제 1 서브행렬과 제 2 서브행렬이 행(行)방향으로 교대로 배치되도록 한다. 또한, 부호화율 2/3인 경우, 도 6에 나타내는 것처럼, 제 i 행과 제 i+1 행에서는, 서브행렬이 3열 오른쪽으로 쉬프트한 구성이 된다.
또, 시변 주기 2인 시변 LDPC-CC의 경우, 제 i 행의 서브행렬과 제 i+1 행의 서브행렬은, 다른 서브행렬이 된다. 즉, 서브행렬 (Ha, 11) 또는 (Hc, 11)의 어느 한 쪽이 제 1 서브행렬이 되고, 다른 쪽이 제 2 서브행렬이 된다. 송신 벡터 u를, u=(X1,0, X2 ,0, P0, X1 ,1, X2 ,1, P1, …, X1 ,k, X2 ,k, Pk, …ㆍ)T라고 하면, Hu=0이 성립한다(식(23) 참조)).
다음에, 부호화율 2/3일 때, 시변 주기를 m으로 하는 LDPC-CC를 생각한다. 시변 주기 2일 경우와 마찬가지로, 식(24)에서 표시되는 패리티 검사 다항식을 m개 준비한다. 그리고, 식(24)에서 표시되는 「검사식#1」을 준비한다. 마찬가지로, 식(24)에서 표시되는 「검사식#2」부터 「검사식#m」을 준비한다. 시점 mi+1의 데이터 X와 패리티 P를 각각 Xmi +1, Pmi +1이라고 나타내고, 시점 mi+2의 데이터 X와 패리티 P를, 각각 Xmi +2, Pmi +2라고 나타내고, …, 시점 mi+m의 데이터 X와 패리티 P를, 각각 Xmi +m, Pmi +m라고 나타낸다(i : 정수).
이때, 시점 mi+1의 패리티 Pmi +1을 「검사식#1」을 이용해 구하고, 시점 mi+2의 패리티 Pmi +2를 「검사식#2」를 이용해 구하고…, 시점 mi+m의 패리티 Pmi +m을 「검사식#m」를 이용해 구하는 LDPC-CC를 생각해 본다. 이러한 LDPC-CC 부호는,
ㆍ부호화기를 간단하게 구성할 수 있고 또, 패리티 비트를 순차적으로 구할 수 있다.
ㆍ종단 비트의 삭감, 종단시의 펑처링시의 수신 품질의 향상이 기대된다고 하는 이점을 가진다.
도 7에, 상술한 부호화율 2/3, 시변 주기 m인 LDPC-CC의 검사 행렬의 구성을 나타낸다. 도 7에 있어서, (H1, 111)은 「검사식#1」에 상당하는 부분이고, (H2, 111)은 「검사식#2」에 상당하는 부분이며, …, (Hm, 111)은 「검사식#m」에 상당하는 부분이다. 이하, (H1, 111)을 제 1 서브행렬이라고 정의하고, (H2, 111)를 제 2 서브행렬이라고 정의하고, …, (Hm, 111)을, 제 m 서브행렬이라고 정의한다.
이와 같이, 본 제안의 시변 주기 m인 LDPC-CC의 검사 행렬 H는, 「검사식#1」의 패리티 검사 다항식을 나타내는 제 1 서브행렬, 「검사식#2」의 패리티 검사 다항식을 나타내는 제 2 서브행렬, …, 및, 「검사식#m」의 패리티 검사 다항식을 나타내는 제 m 서브행렬로 정의할 수 있다. 구체적으로는, 검사 행렬 H에 있어서, 제 1 서브행렬부터 제 m 서브행렬까지가, 행(行)방향으로 주기적으로 배치되도록 했다(도 7 참조). 또한, 부호화율 2/3일 경우, 제 i 행과 제 i+1 행은, 서브행렬이 3열 오른쪽으로 쉬프트한 구성이 된다(도 7 참조).
송신 벡터 u를, u=(X1 ,0, X2 ,0, P0, X1 ,1, X2 ,1, P1, …, X1 ,k, X2 ,k, Pk, …ㆍ)T라고 하면, Hu=0이 성립한다(식(23) 참조)).
상술한 설명에서는, 부호화율 (n-1)/n인 컨볼루션 부호에 기초한 시불변ㆍ시변 LDPC-CC의 일례로서 부호화율 2/3인 경우를 예로 설명했지만, 동일하게 생각함으로써, 부호화율 (n-1)/n인 컨볼루션 부호에 기초한 시불변ㆍ시변 LDPC-CC의 패리티 검사 행렬을 작성할 수 있다.
즉, 부호화율 2/3일 경우, 도 7에 있어서, (H1, 111)은 「검사식#1」에 상당하는 부분(제 1 서브행렬)이고, (H2, 111)은 「검사식#2」에 상당하는 부분(제 2 서브행렬)이고, …, (Hm, 111)은 「검사식#m」에 상당하는 부분(제 m 서브행렬)인데 비해, 부호화율 (n-1)/n일 경우, 도 8에 나타내는 것처럼 된다. 즉, 「검사식#1」에 상당하는 부분(제 1 서브행렬)은, (H1, 11…1)로 표시되고, 「검사식#k」(k=2, 3, …, m)에 상당하는 부분(제 k 서브행렬)은, (Hk, 11…1)로 표시된다. 이때, 제 k 서브행렬에 있어서, Hk를 제외한 부분의 「1」의 개수는, n개가 된다. 그리고, 검사 행렬 H에 있어서, 제 i 행과 제 i+1 행은, 서브행렬이 n열 오른쪽으로 쉬프트한 구성이 된다(도 8 참조).
송신 벡터 u를, u=(X1 ,0, X2 ,0, …, Xn -1,0, P0, X1 ,1, X2 ,1, …, Xn -1,1, P1, …, X1,k, X2 ,k, …, Xn -1,k, Pk, …ㆍ)T라고 하면, Hu=0이 성립한다(식(23) 참조).
또한, 도 9에, 일례로서 부호화율 R=1/2인 경우의 LDPC-CC 부호화기의 구성예를 나타낸다. 도 9에 나타내는 것처럼, LDPC-CC 부호화기(100)는, 데이터 연산부(110), 패리티 연산부(120), 웨이트(weight) 제어부(130) 및 mod2 가산(배타적 논리합 연산)기(140)를 주로 구비한다.
데이터 연산부(110)는, 쉬프트 레지스터(111-1~111-M), 웨이트 곱셈기(112-0~112-M)를 구비한다.
패리티 연산부(120)는, 쉬프트 레지스터(121-1~121-M), 웨이트 곱셈기(122-0~122-M)를 구비한다.
쉬프트 레지스터(111-1~111-M) 및 (121-1~121-M)는, 각각 v1 ,t-i, v2 ,t-i(i=0, …, M)를 보지(保持)하는 레지스터이고, 다음 입력이 들어오는 타이밍에, 보지하고 있는 값을 오른쪽 옆의 쉬프트 레지스터에 출력하고, 왼쪽 옆의 쉬프트 레지스터로부터 출력되는 값을 새롭게 보지한다. 또한, 쉬프트 레지스터의 초기 상태는 모두 0이다.
웨이트 곱셈기(112-0~112-M, 122-0~122-M)는, 웨이트 제어부(130)로부터 출력되는 제어 신호에 따라, h1 (m), h2 (m)의 값을 0/1로 전환한다.
웨이트 제어부(130)는, 내부에 보지하는 검사 행렬에 기초하여, 그 타이밍에 있어서의 h1 (m), h2 (m)의 값을 출력하여, 웨이트 곱셈기(112-0~112-M, 122-0~122-M)에 공급한다.
mod2 가산기(140)는, 웨이트 곱셈기(112-0~112-M, 122-0~122-M)의 출력에 대해 mod2의 산출 결과를 전부 가산하여, v2 ,t를 산출한다.
이러한 구성을 취함으로써, LDPC-CC 부호화기(100)는, 검사 행렬에 따른 LDPC-CC의 부호화를 행할 수 있다.
또한, 웨이트 제어부(130)가 보지하는 검사 행렬의 각 행(行)의 줄이 행마다 다른 경우, LDPC-CC 부호화기(100)는, 시변(time varying) 컨볼루션 부호화기가 된다. 또, 부호화율 (q-1)/q인 LDPC-CC의 경우에는, 데이터 연산부(110)를 (q-1)개 설치하여, mod2 가산기(140)가, 각 웨이트 곱셈기의 출력을 mod2 가산(배타적 논리합 연산)을 행하는 구성으로 하면 좋다.
(실시형태 1)
본 실시형태에서는, 뛰어난 오류 정정 능력을 가지는, 시변 주기가 3보다 큰 패리티 검사 다항식에 기초하는 LDPC-CC의 부호 구성 방법에 대해서 설명한다.
[시변 주기 6]
먼저, 예로서 시변 주기 6인 LDPC-CC에 대해 설명한다.
부호화율 (n-1)/n (n은 2 이상의 정수), 시변 주기 6인 LDPC-CC의(0을 만족시키는) 패리티 검사 다항식으로서 식(27-0)~(27-5)를 생각한다.
Figure pct00033
이때, X1(D), X2(D), …, Xn - 1(D)는 데이터(정보) X1, X2, …, Xn -1의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 식(27-0)~(27-5)에 있어서, 예를 들면, 부호화율 1/2인 경우, X1(D)및 P(D)의 항만이 존재하고, X2(D), …, Xn -1(D)의 항은 존재하지 않는다. 마찬가지로, 부호화율 2/3인 경우, X1(D), X2(D), 및 P(D)의 항만이 존재하고, X3(D), …, Xn -1(D)의 항은 존재하지 않는다. 그 외의 부호화율에 대해서도 동일하게 생각하면 된다.
여기서, 식(27-0)~(27-5)에서는, X1(D), X2(D), …, Xn -1(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식이라고 한다.
또, 식(27-0)~(27-5)에서는, X1(D), X2(D), …, Xn -1(D), 및, P(D)에 대해서, 이하가 성립하는 것으로 한다.
식(27-q)에 있어서, a#q,p,1, a#q,p,2, a#q,p,3은 자연수로 하고, a#q,p,1≠a#q,p,2, a#q,p,1≠a#q,p,3, a#q,p,2≠a#q,p,3이 성립하는 것으로 한다. 또, b#q,1, b#q,2, b#q,3은 자연수로 하고, b#q,1≠b#q,2, b#q,1≠b#q,3, b#q,1≠b#q,3이 성립하는 것으로 한다(q=0, 1, 2, 3, 4, 5; p=1, 2, …, n-1).
그리고, 식(27-q)의 패리티 검사 다항식을 「검사식#q」라 부르고, 식(27-q)의 패리티 검사 다항식에 기초하는 서브행렬을, 제 q 서브행렬 Hq라 부른다. 그리고, 제 0 서브행렬 H0, 제 1 서브행렬 H1, 제 2 서브행렬 H2, 제 3 서브행렬 H3, 제 4 서브행렬 H4, 제 5 서브행렬 H5로부터 생성하는 시변 주기 6인 LDPC-CC에 대해서 생각한다.
시변 주기 6, 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에 있어서, 시점 i의 패리티 비트를 Pi 및 정보 비트를 Xi ,1, Xi ,2, …, Xi ,n-1로 나타낸다. 이때, i%6=k이라 하면(k=0, 1, 2, 3, 4, 5), 식(27-(k))의 패리티 검사 다항식이 성립한다. 예를 들면, i=8이라 하면, i%6=2(k=2)가 되므로, 식(28)이 성립한다.
Figure pct00034
또, 식(27-g)의 서브행렬(벡터)을 Hg라 하면 패리티 검사 행렬은, [패리티 검사 다항식에 기초하는 LDPC-CC]에서 설명한 방법으로 작성할 수 있다.
식(27-0)~(27-5)에 있어서, 패리티 비트와 정보 비트의 관계를 간단화하고 또, 패리티 비트가 순차적으로 구해지도록 하기 위해서, a#q,1,3=0, b#q,3=0(q=0, 1, 2, 3, 4, 5)로 한다. 따라서, 식(27-1)~(27-5)의(0을 만족시키는) 패리티 검사 다항식은, 식(29-0)~(29-5)와 같이 표시된다.
Figure pct00035
또, 제 0 서브행렬 H0, 제 1 서브행렬 H1, 제 2 서브행렬 H2, 제 3 서브행렬 H3, 제 4 서브행렬 H4, 제 5 서브행렬 H5를, 식(30-0)~(30-5)와 같이 나타낸다고 한다.
Figure pct00036
식(30-0)~(30-5)에 있어서, 연속된 n개의 「1」은, 식(29-0)~식(29-5)의 각 식에 있어서의 X1(D), X2(D), …, Xn -1(D) 및 P(D)의 항에 상당한다.
이때, 패리티 검사 행렬 H는, 도 10과 같이 나타낼 수 있다. 도 10에 나타내는 것처럼, 패리티 검사 행렬 H에 있어서, 제 i 행과 제 i+1 행은, 서브행렬이 n열 오른쪽으로 쉬프트한 구성이 된다(도 10 참조). 그리고, 송신 벡터 u를, u=(X1,0, X2 ,0, …, Xn -1,0, P0, X1 ,1, X2 ,1, …, Xn -1,1, P1, …, X1 ,k, X2 ,k, …, Xn -1,k, Pk, …ㆍ)T라 하면, Hu=0이 성립한다.
여기서, 높은 오류 정정 능력을 얻을 수 있는, 식(29-0)~(29-5)의 패리티 검사 다항식에 있어서의 조건을 제안한다.
X1(D), X2(D), …, Xn -1(D)에 관련하는 항에 대해서, 이하의 <조건#1-1> 및 <조건#1-2>가 중요하게 된다. 또한, 이하의 각 조건에 있어서 「%」는 modulo를 의미하고, 예를 들면, 「α%6」은, α을 6으로 나눗셈했을 때의 나머지를 나타낸다.
<조건#1-1>
「a#0,1,1%6=a#1,1,1%6=a#2,1,1%6=a#3,1,1%6=a#4,1,1%6=a#5,1,1%6=vp =1(vp =1 : 고정값)」
「a#0,2,1%6=a#1,2,1%6=a#2,2,1%6=a#3,2,1%6=a#4,2,1%6=a#5,2,1%6=vp =2(vp =2 : 고정값)」
「a#0,3,1%6=a#1,3,1%6=a#2,3,1%6=a#3,3,1%6=a#4,3,1%6=a#5,3,1%6=vp =3(vp =3 : 고정값)」
「a#0,4,1%6=a#1,4,1%6=a#2,4,1%6=a#3,4,1%6=a#4,4,1%6=a#5,4,1%6=vp =4(vp =4 : 고정값)」
「a#0,k,1%6=a#1,k,1%6=a#2,k,1%6=a#3,k,1%6=a#4,k,1%6=a#5,k,1%6=vp =k(vp = k1 : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,1%6=a#1,n-2,1%6=a#2,n-2,1%6=a#3,n-2,1%6=a#4,n-2,1%6=a#5,n-2,1%6=vp =n-2(vp =n-2 : 고정값)」
「a#0,n-1,1%6=a#1,n-1,1%6=a#2,n-1,1%6=a#3,n-1,1%6=a#4,n-1,1%6=a#5,n-1,1%6=vp =n-1(vp =n-1 : 고정값)」
및,
「b#0,1%6=b#1,1%6=b#2,1%6=b#3,1%6=b#4,1%6=b#5,1%6=w(w : 고정값)」
<조건#1-2>
「a#0,1,2%6=a#1,1,2%6=a#2,1,2%6=a#3,1,2%6=a#4,1,2%6=a#5,1,2%6=yp =1(yp =1 : 고정값)」
「a#0,2,2%6=a#1,2,2%6=a#2,2,2%6=a#3,2,2%6=a#4,2,2%6=a#5,2,2%6=yp =2(yp =2 : 고정값)」
「a#0,3,2%6=a#1,3,2%6=a#2,3,2%6=a#3,3,2%6=a#4,3,2%6=a#5,3,2%6=yp =3(yp =3 : 고정값)」
「a#0,4,2%6=a#1,4,2%6=a#2,4,2%6=a#3,4,2%6=a#4,4,2%6=a#5,4,2%6=yp =4(yp =4 : 고정값)」
「a#0,k,2%6=a#1,k,2%6=a#2,k,2%6=a#3,k,2%6=a#4,k,2%6=a#5,k,2%6=yp =k(yp =k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,2%6=a#1,n-2,2%6=a#2,n-2,2%6=a#3,n-2,2%6=a#4,n-2,2%6=a#5,n-2,2%6=yp =n-2(yp =n-2 : 고정값)」
「a#0,n-1,2%6=a#1,n-1,2%6=a#2,n-1,2%6=a#3,n-1,2%6=a#4,n-1,2%6=a#5,n-1,2%6=yp =n-1(yp =n-1 : 고정값)」
및,
「b#0,2%6=b#1,2%6=b#2,2%6=b#3,2%6=b#4,2%6=b#5,2%6=z(z : 고정값)」
<조건#1-1> 및 <조건#1-2>를 제약 조건으로 함으로써, 제약 조건을 만족시키는 LDPC-CC는, 정칙(Regular) LDPC 부호가 되므로, 높은 오류 정정 능력을 얻을 수 있다.
다음에, 다른 중요한 제약 조건에 대해서 설명한다.
<조건#2-1>
<조건#1-1>에 있어서, vp =1, vp =2, vp =3, vp =4, …, vp =k, …, vp =n-2,
vp=n-1, 및, w를, 「1」, 「4」, 「5」로 설정한다. 즉, vp =k(k=1, 2, …, n-1) 및 w를, 「1」, 및, 「시변 주기 6의 약수 이외의 자연수」로 설정한다.
<조건#2-2>
<조건#1-2>에 있어서, yp =1, yp =2, yp =3, yp =4, …, yp =k, …, yp =n-2, yp =n-1 및, z를 「1」, 「4」, 「5」로 설정한다. 즉, yp =k(k=1, 2, …, n-1) 및 z를, 「1」 및 「시변 주기 6의 약수 이외의 자연수」로 설정한다.
<조건#2-1> 및 <조건#2-2>의 제약 조건, 또는, <조건#2-1> 또는 <조건#2-2>의 제약 조건을 부가함으로써, 시변 주기 2, 3과 같은 시변 주기가 작은 경우와 비교해, 시변 주기를 크게 한 효과를 명확하게 얻을 수 있게 된다. 이 점에 대해서, 도면을 이용해, 자세하게 설명한다.
설명을 간단하게 하기 위해, 패리티 검사 다항식에 기초한 시변 주기 6, 부호화율 (n-1)/n인 LDPC-CC의 패리티 검사 다항식(29-0)~(29-5)에 있어서, X1(D)가 2개의 항을 가지는 경우를 생각해 본다. 그러면, 이 경우, 패리티 검사 다항식은, 식(31-0)~(31-5)와 같이 표시된다.
Figure pct00037
여기서, vp =k(k=1, 2, …, n-1) 및 w를, 「3」으로 설정했을 경우를 생각해 본다. 「3」은, 시변 주기 6의 약수이다.
도 11은, vp =1 및 w를 「3」으로 설정하고, a#0,1,1%6=a#1,1,1%6=a#2,1,1%6=a#3,1,1%6=a#4,1,1%6=a#5,1,1%6=3으로 했을 때의 정보 X1에만 착목했을 경우의, 체크 노드 및 변수 노드의 트리를 나타내고 있다.
식(31-q)의 패리티 검사 다항식을 「검사식#q」라고 부른다. 또한, 도 11에는, 트리가 「검사식#0」부터 그려져 있다. 도 11에 있어서, ○(동그라미) 및 ◎(이중 동그라미)는 변수 노드를 나타내고, □(네모)는 체크 노드를 나타내고 있다. 또한, ○(동그라미)는 X1(D)에 관련된 변수 노드를 나타내고, ◎(이중 동그라미)는 Da#q,1,1X1(D)에 관련된 변수 노드를 나타내고 있다. 또, #Y(Y=0, 1, 2, 3, 4, 5)라고 기재된 □(네모)는, 식(31-Y)의 패리티 검사 다항식에 상당하는 체크 노드임을 의미하고 있다.
도 11에서는, <조건#2-1>을 만족시키지 않는, 즉, vp =1, vp =2, vp =3, vp =4, …, vp=k, …, vp =n-2, vp =n-1(k=1, 2, …, n-1) 및 w가, 시변 주기 6의 약수 중, 1을 제외한 약수로 설정되어 있다(w=3).
이 경우, 도 11에 나타내는 것처럼, 체크 노드에 있어서, #Y는 0, 3으로 한정된 값밖에 되지 않는다. 즉, 시변 주기를 크게 해도, 특정 패리티 검사 다항식으로부터밖에 신뢰도가 전파되지 않기 때문에, 시변 주기를 크게 한 효과가 얻어지지 못함을 의미하고 있다.
다시 말하면, #Y가 한정된 값밖에 취하지 않게 되기 위한 조건은,
「vp =1, vp =2, vp =3, vp =4, …, vp =k, …, vp =n-2, vp =n-1(k=1, 2, …, n-1) 및 w를, 시변 주기 6의 약수 중, 1을 제외한 약수로 설정한다」가 된다.
이것에 비해서, 도 12는, 패리티 검사 다항식에 있어서, vp =k(k=1, 2, …, n-1) 및 w가 「1」로 설정된 경우의 트리이다. vp =k(k=1, 2, …, n-1) 및 w가 「1」로 설정되는 경우에는, <조건#2-1>의 조건이 만족된다.
도 12에 나타내는 것처럼, <조건#2-1>의 조건이 만족될 경우에는, 체크 노드에 있어서, #Y는, 0에서 5까지, 모든 값을 취한다. 즉, <조건#2-1>의 조건이 만족될 경우에는, 신뢰도가 모든 패리티 검사 다항식으로부터 전파되게 된다. 이 결과, 시변 주기를 크게 했을 경우에도, 신뢰도가 광범위로부터 전파되게 되어, 시변 주기를 크게 한 효과를 얻을 수 있게 된다. 즉, <조건#2-1>은, 시변 주기를 크게 한 효과를 얻기 위해, 중요한 조건임을 알 수 있다. 마찬가지로 <조건#2-2>는, 시변 주기를 크게 한 효과를 얻기 위한 중요한 조건이 된다.
[시변 주기 7]
이상의 설명을 고려하면, 시변 주기가 소수(素數)인 것이, 시변 주기를 크게 한 효과를 얻기 위한 중요한 조건이 된다. 이하에서는, 이 점에 대해서 상세히 설명한다.
먼저, 부호화율 (n-1)/n(n은 2 이상의 정수), 시변 주기 7인 LDPC-CC의(0을 만족시키는) 패리티 검사 다항식으로서 식(32-0)~(32-6)를 생각해 본다.
Figure pct00038
식(32-q)에 있어서, a#q,p,1, a#q,p,2는 1 이상의 자연수로 하고, a#q,p,1≠a#q,p,2가 성립하는 것으로 한다. 또, b#q,1, b#q,2는 1 이상의 자연수로 하고, b#q,1≠b#q,2가 성립하는 것으로 한다(q=0, 1, 2, 3, 4, 5, 6; p=1, 2, …, n-1).
시변 주기 7, 부호화율 (n-1)/n(n은 2 이상의 정수)인 LDPC-CC에 있어서, 시점 i의 패리티 비트를 Pi 및 정보 비트를 Xi ,1, Xi ,2, …, Xi ,n-1로 나타낸다. 이때, i%7=k이라 하면(k=0, 1, 2, 3, 4, 5, 6), 식(32-(k))의 패리티 검사 다항식이 성립한다.
예를 들면, i=8이라 하면, i%7=1(k=1)이 되므로, 식(33)이 성립한다.
Figure pct00039
또, 식(32-g)의 서브행렬(벡터)을 Hg라 하면 패리티 검사 행렬은, [패리티 검사 다항식에 기초하는 LDPC-CC]에서 설명한 방법으로 작성할 수 있다. 여기서, 제 0 서브행렬, 제 1 서브행렬, 제 2 서브행렬, 제 3 서브행렬, 제 4 서브행렬, 제 5 서브행렬, 제 6 서브행렬을, 식(34-0)~(34-6)과 같이 나타낸다.
Figure pct00040
식(34-0)~(34-6)에 있어서, 연속된 n개의 「1」은, 식(32-0)~(32-6)의 각 식에 있어서의 X1(D), X2(D), …, Xn -1(D) 및 P(D)항에 상당한다.
이때, 패리티 검사 행렬 H는, 도 13과 같이 나타낼 수 있다. 도 13에 나타내는 것처럼, 패리티 검사 행렬 H에 있어서, 제 i 행과 제 i+1 행은, 서브행렬이 n열 오른쪽으로 쉬프트한 구성이 된다(도 13 참조). 그리고, 송신 벡터 u를, u=(X1,0, X2 ,0, …, Xn -1,0, P0, X1 ,1, X2 ,1, …, Xn -1,1, P1, …, X1 ,k, X2 ,k, …, Xn -1,k, Pk, …)T로 하면, Hu=0이 성립한다.
여기서, 높은 오류 정정 능력을 얻기 위한, 식(32-0)~식(32-6)에 있어서의 패리티 검사 다항식의 조건은, 시변 주기 6과 마찬가지로 이하와 같이 된다. 또한, 이하의 각 조건에 있어서 「%」는 modulo를 의미하고, 예를 들면, 「α%7」은, α를 7로 나눗셈했을 때의 나머지를 나타낸다.
<조건#1-1′>
「a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=vp =1(vp =1 : 고정값)」
「a#0,2,1%7=a#1,2,1%7=a#2,2,1%7=a#3,2,1%7=a#4,2,1%7=a#5,2,1%7=a#6,2,1%7=vp =2(vp =2 : 고정값)」
「a#0,3,1%7=a#1,3,1%7=a#2,3,1%7=a#3,3,1%7=a#4,3,1%7=a#5,3,1%7==a#6,3,1%7vp =3(vp =3 : 고정값)」
「a#0,4,1%7=a#1,4,1%7=a#2,4,1%7=a#3,4,1%7=a#4,4,1%7=a#5,4,1%7=a#6,4,1%7=vp =4(vp =4 : 고정값)」
「a#0,k,1%7=a#1,k,1%7=a#2,k,1%7=a#3,k,1%7=a#4,k,1%7=a#5,k,1%7=a#6,k,1%7=vp =k(vp =k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,1%7=a#1,n-2,1%7=a#2,n-2,1%7=a#3,n-2,1%7=a#4,n-2,1%7=a#5,n-2,1%7=a#6,n-2,1%7=vp =n-2(vp=n-2 : 고정값)」
「a#0,n-1,1%7=a#1,n-1,1%7=a#2,n-1,1%7=a#3,n-1,1%7=a#4,n-1,1%7=a#5,n-1,1%7=a#6,n-1,1%7=vp =n-1(vp=n-1 : 고정값)」
및,
「b#0,1%7=b#1,1%7=b#2,1%7=b#3,1%7=b#4,1%7=b#5,1%7=b#6,1%7=w(w : 고정값)」
<조건#1-2′>
「a#0,1,2%7=a#1,1,2%7=a#2,1,2%7=a#3,1,2%7=a#4,1,2%7=a#5,1,2%7=a#6,1,2%7=yp =1(yp =1 : 고정값)」
「a#0,2,2%7=a#1,2,2%7=a#2,2,2%7=a#3,2,2%7=a#4,2,2%7=a#5,2,2%7=a#6,2,2%7=yp =2(yp =2 : 고정값)」
「a#0,3,2%7=a#1,3,2%7=a#2,3,2%7=a#3,3,2%7=a#4,3,2%7=a#5,3,2%7=a#6,3,2%7=yp =3(yp =3 : 고정값)」
「a#0,4,2%7=a#1,4,2%7=a#2,4,2%7=a#3,4,2%7=a#4,4,2%7=a#5,4,2%7=a#6,4,2%7=yp =4(yp =4 : 고정값)」
「a#0,k,2%7=a#1,k,2%7=a#2,k,2%7=a#3,k,2%7=a#4,k,2%7=a#5,k,2%7=a#6,k,2%7=yp =k(yp =k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,2%7=a#1,n-2,2%7=a#2,n-2,2%7=a#3,n-2,2%7=a#4,n-2,2%7=a#5,n-2,2%7=a#6,n-2,2%7=yp =n-2(yp=n-2 : 고정값)」
「a#0,n-1,2%7=a#1,n-1,2%7=a#2,n-1,2%7=a#3,n-1,2%7=a#4,n-1,2%7=a#5,n-1,2%7=a#6,n-1,2%7=yp =n-1(yp=n-1 : 고정값)」
및,
「b#0,2%7=b#1,2%7=b#2,2%7=b#3,2%7=b#4,2%7=b#5,2%7=b#6,2%7=z(z : 고정값)」
<조건#1-1′> 및 <조건#1-2′>를 제약 조건으로 함으로써, 제약 조건을 만족시키는 LDPC-CC는, 정칙(Regular) LDPC 부호가 되므로, 높은 오류 정정 능력을 얻을 수 있다.
그런데, 시변 주기 6의 경우에는, 높은 오류 정정 능력을 얻기 위해서는, 다시 <조건#2-1> 및 <조건#2-2>, 또는, <조건#2-1> 혹은 <조건#2-2>가 필요하였다. 이것에 비해, 시변 주기 7과 같이 시변 주기가 소수(素數)일 경우에는, 시변 주기 6의 경우에 필요했던 <조건#2-1> 및 <조건#2-2>, 또는 <조건#2-1> 또는 <조건#2-2>에 상당하는 조건이 불필요하게 된다.
즉,
<조건#1-1′>에 있어서, vp =1, vp =2, vp =3, vp =4, …, vp =k, …, vp =n-2, vp =n-1(k=1, 2, …, n-1) 및 w의 값은, 「0, 1, 2, 3, 4, 5, 6」의 어느 값이어도 좋다.
또,
<조건#1-2′>에 있어서, yp =1, yp =2, yp =3, yp =4, …, yp =k, …, yp =n-2, yp =n-1(k=1, 2, …, n-1) 및 z의 값은, 「0, 1, 2, 3, 4, 5, 6」의 어느 값이어도 좋다.
그 이유에 대해서, 이하에서 설명한다.
설명을 간단하게 하기 위해서, 패리티 검사 다항식에 기초하는 시변 주기 7, 부호화율 (n-1)/n인 LDPC-CC의 패리티 검사 다항식(32-0)~(32-6)에 있어서, X1(D)가 2개의 항을 가지는 경우를 생각해 본다. 그러면, 이 경우, 패리티 검사 다항식은, 식(35-0)~(35-6)과 같이 표시된다.
Figure pct00041
여기서, vp =k(k=1, 2, …, n-1) 및 w를, 「2」로 설정했을 경우를 생각해 본다.
도 14는, vp =1 및 w를 「2」로 설정하고, a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=2로 했을 때의 정보 X1에만 착목했을 경우의, 체크 노드 및 변수 노드의 트리를 나타내고 있다.
식(35-q)의 패리티 검사 다항식을 「검사식#q」라 부른다. 또한, 도 14에는, 트리가 「검사식#0」부터 그려져 있다. 도 14에 있어서, ○(동그라미) 및 ◎(이중 동그라미)는 변수 노드를 나타내고, □(네모)는 체크 노드를 나타내고 있다. 또한, ○(동그라미)는 X1(D)에 관련된 변수 노드를 나타내고, ◎(이중 동그라미)는 Da#q,1,1X1(D)에 관련된 변수 노드를 나타내고 있다. 또, #Y(Y=0, 1, 2, 3, 4, 5, 6)라고 기재된 □(네모)는, 식(35-Y)의 패리티 검사 다항식에 상당하는 체크 노드임을 의미하고 있다.
시변 주기 6의 경우, 예를 들면, 도 11에 나타낸 것처럼, #Y가 한정된 값만을 취하고, 체크 노드가 한정된 패리티 검사 다항식과 밖에 접속되지 않는 케이스가 존재한다. 이것에 비해, 시변 주기 7과 같이, 시변 주기가 7(소수(素數))인 경우, 도 14와 같이, #Y는 0에서 6까지의 모든 값을 취하고, 체크 노드는, 전부의 패리티 검사 다항식과 접속되게 된다. 그 때문에, 신뢰도가 전부의 패리티 검사 다항식으로부터 전파되게 된다. 이 결과, 시변 주기를 크게 했을 경우에도, 신뢰도가 광범위로부터 전파되게 되어, 시변 주기를 크게 한 효과를 얻을 수 있게 된다. 또한, 도 14는, a#q,1,1%7(q=0, 1, 2, 3, 4, 5, 6)을 「2」로 설정했을 경우의 트리를 나타냈지만, 「0」 이외의 값이면, 어느 값으로 설정해도, 체크 노드는, 전부의 패리티 검사 다항식과 접속되게 된다.
이와 같이, 시변 주기를 소수(素數)로 하면, 시변 주기가 소수가 아닌 경우에 비해, 높은 오류 정정 능력을 얻기 위한 파라미터 설정에 관한 제약 조건이, 크게 완화되는 것을 알 수 있다. 그리고, 제약 조건이 완화됨에 의해, 다시 다른 제약 조건을 더 부가하여, 보다 높은 오류 정정 능력을 얻을 수 있게 된다. 이하에서는, 그 부호 구성 방법에 대해 자세하게 설명한다.
[시변 주기 q(q는 3보다 큰 소수(素數)) : 식(36)]
먼저, 부호화율 (n-1)/n, 시변 주기 q(q는 3보다 큰 소수)의 g번째(g=0, 1, …, q-1)의 패리티 검사 다항식이 식(36)과 같이 나타나는 경우에 대해 생각한다.
Figure pct00042
식(36)에 있어서, a#g,p,1, a#g,p,2는 1 이상의 자연수로 하고, a#g,p,1≠a#g,p,2가 성립하는 것으로 한다. 또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다(g=0, 1, 2, …, q-2, q-1; p=1, 2, …, n-1).
상술한 설명과 마찬가지로, 이하에 기재하는 <조건#3-1> 및 <조건#3-2>는, LDPC-CC가 높은 오류 정정 능력을 얻는데 있어서 중요한 요건의 하나가 된다. 또한, 이하의 각 조건에 있어서 「%」는 modulo를 의미하고, 예를 들면, 「α%q」는, α를 q로 나눗셈했을 때의 나머지를 나타낸다.
<조건#3-1>
「a#0,1,1%q=a#1,1,1%q=a#2,1,1%q=a#3,1,1%q=…=a#g,1,1%q=…=a#q-2,1,1%q=a#q-1,1,1%q=vp=1(vp=1 : 고정값)」
「a#0,2,1%q=a#1,2,1%q=a#2,2,1%q=a#3,2,1%q=…=a#g,2,1%q=…=a#q-2,2,1%q=a#q-1,2,1%q=vp=2(vp=2 : 고정값)」
「a#0,3,1%q=a#1,3,1%q=a#2,3,1%q=a#3,3,1%q=…=a#g,3,1%q=…=a#q-2,3,1%q=a#q-1,3,1%q=vp=3(vp=3 : 고정값)」
「a#0,4,1%q=a#1,4,1%q=a#2,4,1%q=a#3,4,1%q=…=a#g,4,1%q=…=a#q-2,4,1%q=a#q-1,4,1%q=vp=4(vp=4 : 고정값)」
「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=…=a#g,k,1%q=…=a#q-2,k,1%q=a#q-1,k,1%q=vp=k(vp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,1%q=a#1,n-2,1%q=a#2,n-2,1%q=a#3,n-2,1%q=…=a#g,n-2,1%q=…=a#q-2,n-2,1%q=a#q-1,n-2,1%q=vp=n-2(vp=n-2 : 고정값)」
「a#0,n-1,1%q=a#1,n-1,1%q=a#2,n-1,1%q=a#3,n-1,1%q=…=a#g,n-11%q=…=a#q-2,n-1,1%q=a#q-1,n-1,1%q=vp=n-1(vp=n-1 : 고정값)」
및,
「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=…=b#g,1%q=…=b#q-2,1%q=b#q-1,1%q=w(w : 고정값)」
<조건#3-2>
「a#0,1,2%q=a#1,1,2%q=a#2,1,2%q=a#3,1,2%q=…=a#g,1,2%q=…=a#q-2,1,2%q=a#q-1,1,2%q=yp=1(yp=1 : 고정값)」
「a#0,2,2%q=a#1,2,2%q=a#2,2,2%q=a#3,2,2%q=…=a#g,2,2%q=…=a#q-2,2,2%q=a#q-1,2,2%q=yp=2(yp=2 : 고정값)」
「a#0,3,2%q=a#1,3,2%q=a#2,3,2%q=a#3,3,2%q=…=a#g,3,2%q=…=a#q-2,3,2%q=a#q-1,3,2%q=yp=3(yp=3 : 고정값)」
「a#0,4,2%q=a#1,4,2%q=a#2,4,2%q=a#3,4,2%q=…=a#g,4,2%q=…=a#q-2,4,2%q=a#q-1,4,2%q=yp=4(yp=4 : 고정값)」
「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=…=a#g,k,2%q=…=a#q-2,k,2%q=a#q-1,k,2%q=yp=k(yp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,2%q=a#1,n-2,2%q=a#2,n-2,2%q=a#3,n-2,2%q=…=a#g,n-2,2%q=…=a#q-2,n-2,2%q=a#q-1,n-2,2%q=yp=n-2(yp=n-2 : 고정값)」
「a#0,n-1,2%q=a#1,n-1,2%q=a#2,n-1,2%q=a#3,n-1,2%q=…=a#g,n-1,2%q=…=a#q-2,n-1,2%q=a#q-1,n-1,2%q=yp=n-1(yp=n-1 : 고정값)」
및,
「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=…=b#g,2%q=…=b#q-2,2%q=b#q-1,2%q=z(z : 고정값)」
추가하여, (vp =1, yp =1), (vp =2, yp =2), (vp =3, yp =3), …, (vp =k, yp =k), …, (vp =n-2, yp=n-2), (vp =n-1, yp =n-1), 및, (w, z)의 세트에 대해, <조건#4-1> 또는 <조건#4-2>가 성립하면, 높은 오류 정정 능력을 얻을 수 있다. 여기서, k=1, 2, …, n-1이다.
<조건#4-1>
(vp=i, yp =i) 및 (vp =j, yp =j)를 생각한다. 단, i=1, 2, …, n-1, j=1, 2, …, n-1, 및, i≠j라고 한다. 이때, (vp =i, yp =i)≠(vp =j, yp =j) 및 (vp =i, yp =i)≠(yp =j,vp =j)가 성립하는 i, j(i≠j)가 존재한다.
<조건#4-2>
(vp=i, yp =i) 및 (w, z)를 생각한다. 단, i=1, 2, …, n-1이라고 한다. 이때, (vp =i, yp =i)≠(w, z) 및 (vp =i, yp =i)≠(z, w)가 성립하는 i가 존재한다.
예로서 시변 주기가 7이고, 부호화율 1/2, 2/3인 LDPC-CC의 패리티 검사 다항식을 표 7에 나타낸다.
Figure pct00043
표 7에 있어서, 부호화율 1/2인 부호에서는,
「a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=vp =1=3」
「b#0,1%7=b#1,1%7=b#2,1%7=b#3,1%7=b#4,1%7=b#5,1%7=b#6,1%7=w=1」
#0,1,2%7=a#1,1,2%7=a#2,1,2%7=a#3,1,2%7=a#4,1,2%7=a#5,1,2%7=a#6,1,2%7=yp =1=6」
「b#0,2%7=b#1,2%7=b#2,2%7=b#3,2%7=b#4,2%7=b#5,2%7=b#6,2%7=z=5」가 성립한다.
이때, (vp=1, yp =1)=(3,6), (w,z)=(1,5)가 되므로, <조건#4-2>가 성립한다.
마찬가지로, 표 7에 있어서, 부호화율 2/3인 부호에서는,
「a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=vp =1=1」
「a#0,2,1%7=a#1,2,1%7=a#2,2,1%7=a#3,2,1%7=a#4,2,1%7=a#5,2,1%7=a#6,2,1%7=vp =2=2」
「b#0,1%7=b#1,1%7=b#2,1%7=b#3,1%7=b#4,1%7=b#5,1%7=b#6,1%7=w=5」
「a#0,1,2%7=a#1,1,2%7=a#2,1,2%7=a#3,1,2%7=a#4,1,2%7=a#5,1,2%7=a#6,1,2%7=yp =1=4」
「a#0,2,2%7=a#1,2,2%7=a#2,2,2%7=a#3,2,2%7=a#4,2,2%7=a#5,2,2%7=a#6,2,2%7=yp =2=3」
「b#0,2%7=b#1,2%7=b#2,2%7=b#3,2%7=b#4,2%7=b#5,2%7=b#6,2%7=z=6」이 성립한다.
이때, (vp =1, yp =1)=(1, 4), (vp =2, yp =2)=(2, 3), (w, z)=(5, 6)이 되므로, <조건#4-1> 및 <조건#4-2>가 성립한다.
또, 예로서 시변 주기 11일 때의 부호화율 4/5인 LDPC-CC의 패리티 검사 다항식을 표 8에 나타낸다.
Figure pct00044
또한, <조건#4-1, 조건#4-2>의 제약 조건을 한층 더 엄격하게 함으로써, 오류 정정 능력이 보다 높은 시변 주기 q(q는 3보다 큰 소수)인 LDPC-CC를 생성할 수 있을 가능성이 있다. 그 조건은, <조건#5-1> 및 <조건#5-2>, 또는, <조건#5-1> 또는 <조건#5-2>가 성립하는 것이다.
<조건#5-1>
(vp=i, yp =i) 및 (vp =j, yp =j)를 생각한다. 단, i=1, 2, …, n-1, j=1, 2, …, n-1, 및, i≠j라고 한다. 이때, (vp =i, yp =i)≠(vp =j, yp =j) 및 (vp =i, yp =i)≠(yp =j, vp=j)가 모든 i, j(i≠j)에서 성립한다.
<조건#5-2>
(vp=i, yp =i) 및 (w, z)를 생각한다. 단, i=1, 2, …, n-1이라고 한다. 이때, (vp =i, yp =i)≠(w, z) 및 (vp =i, yp =i)≠(z, w)가 모든 i에서 성립한다.
또, vp =i≠yp =i(i=1, 2, …, n-1), w≠z가 성립하는 경우, 태너 그래프에 있어서, 짧은 루프의 발생을 억제할 수 있다.
추가하여, 2n<q일 때, (vp =i, yp =i) 및 (z, w)를 모두 다른 값으로 했을 경우, 보다 오류 정정 능력이 높은 시변 주기 q(q는 3보다 큰 소수)인 LDPC-CC를 생성할 수 있을 가능성이 있다.
또, 2n≥q일 때, (vp =i, yp =i) 및 (z, w)를, 0, 1, 2, …, q-1 중 전부의 값이 존재하도록 설정하면, 보다 오류 정정 능력이 높은 시변 주기 q(q는 3보다 큰 소수)인 LDPC-CC를 생성할 수 있을 가능성이 있다.
이상의 설명에 있어서, 시변 주기 q(q는 3보다 큰 소수)인 LDPC-CC의 g번째 패리티 검사 다항식으로서 X1(D), X2(D), …, Xn -1(D) 및 P(D)에 있어서 항(項)수가 3인 식(36)을 다루었다. 또한, 식(36)에 있어서, X1(D), X2(D), …, Xn -1(D), P(D)의 어느 하나의 항수가 1, 2인 경우에 있어서도 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 1 또는 2로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 q인 경우, q개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되지만, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 한다. 또는, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 하지 않고 , q개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(q-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 1 또는 2로 해도 좋다. X2(D), …, Xn -1(D), P(D)에 대해서도 마찬가지이다. 이 경우에 있어서도, 상술한 조건을 만족시키는 것이, 높은 오류 정정 능력을 얻는데 있어 중요한 조건이 된다. 단, 삭감된 항에 관한 조건은 불필요하게 된다.
또, X1(D), X2(D), …, Xn -1(D), P(D)의 어느 하나의 항수가 4 이상이 될 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 4 이상으로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 q인 경우, q개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 한다. 또는, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 하지 않고 , q개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(q-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 4 이상으로 해도 좋다. X2(D), …, Xn -1(D), P(D)에 대해서도 마찬가지이다. 이때, 증가한 항에 대해서는 상기에서 설명한 조건이 제외된다.
그런데, 식(36)은, 부호화율 (n-1)/n, 시변 주기 q(q는 3보다 큰 소수)인 LDPC-CC의 g번째 패리티 검사 다항식이었다. 이 식에 있어서, 예를 들면, 부호화율 1/2인 경우, g번째의 패리티 검사 다항식은 식(37-1)과 같이 표시된다. 또, 부호화율 2/3인 경우, g번째의 패리티 검사 다항식은 식(37-2)과 같이 표시된다. 또, 부호화율 3/4인 경우, g번째의 패리티 검사 다항식은 식(37-3)과 같이 표시된다. 또, 부호화율 4/5인 경우, g번째의 패리티 검사 다항식은 식(37-4)과 같이 표시된다. 또, 부호화율 5/6인 경우, g번째의 패리티 검사 다항식은 식(37-5)과 같이 표시된다.
Figure pct00045
[시변 주기 q(q는 3보다 큰 소수) : 식(38)]
다음에, 부호화율 (n-1)/n, 시변 주기 q(q는 3보다 큰 소수)의 g번째(g=0, 1, …, q-1)의 패리티 검사 다항식이 식(38)과 같이 표시되는 경우에 대해서 생각해 본다.
Figure pct00046
식(38)에 있어서, a#g,p,1, a#g,p,2, a#g,p,3은 1 이상의 자연수로 하고, a#g,p,1≠a#g,p,2, a#g,p,1≠a#g,p,3, a#g,p,2≠a#g,p,3이 성립하는 것으로 한다.
또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다(g=0, 1, 2, …, q-2, q-1; p=1, 2, …, n-1).
상술에서의 설명과 마찬가지로, 이하에 기재하는 <조건#6-1>, <조건#6-2>, 및 <조건#6-3>은, LDPC-CC가 높은 오류 정정 능력을 얻는데 있어 중요한 요건의 하나가 된다. 또한, 이하의 각 조건에 있어서 「%」는 modulo를 의미하고, 예를 들면, 「α%q」는, α를 q로 나눗셈했을 때의 나머지를 나타낸다.
<조건#6-1>
「a#0,1,1%q=a#1,1,1%q=a#2,1,1%q=a#3,1,1%q=…=a#g,1,1%q=…=a#q-2,1,1%q=a#q-1,1,1%q=vp=1(vp=1 : 고정값)」
「a#0,2,1%q=a#1,2,1%q=a#2,2,1%q=a#3,2,1%q=…=a#g,2,1%q=…=a#q-2,2,1%q=a#q-1,2,1%q=vp=2(vp=2 : 고정값)」
「a#0,3,1%q=a#1,3,1%q=a#2,3,1%q=a#3,3,1%q=…=a#g,3,1%q=…=a#q-2,3,1%q=a#q-1,3,1%q=vp=3(vp=3 : 고정값)」
「a#0,4,1%q=a#1,4,1%q=a#2,4,1%q=a#3,4,1%q=…=a#g,4,1%q=…=a#q-2,4,1%q=a#q-1,4,1%q=vp=4(vp=4 : 고정값)」
「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=…=a#g,k,1%q=…=a#q-2,k,1%q=a#q-1,k,1%q=vp=k(vp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,1%q=a#1,n-2,1%q=a#2,n-2,1%q=a#3,n-2,1%q=…=a#g,n-2,1%q=…=a#q-2,n-2,1%q=a#q-1,n-2,1%q=vp=n-2(vp=n-2 : 고정값)」
「a#0,n-1,1%q=a#1,n-1,1%q=a#2,n-1,1%q=a#3,n-1,1%q=…=a#g,n-11%q=…=a#q-2,n-1,1%q=a#q-1,n-1,1%q=vp=n-1(vp=n-1 : 고정값)」
및,
「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=…=b#g,1%q=…=b#q-2,1%q=b#q-1,1%q=w(w : 고정값)」
<조건#6-2>
「a#0,1,2%q=a#1,1,2%q=a#2,1,2%q=a#3,1,2%q=…=a#g,1,2%q=…=a#q-2,1,2%q=a#q-1,1,2%q=yp=1(yp=1 : 고정값)」
「a#0,2,2%q=a#1,2,2%q=a#2,2,2%q=a#3,2,2%q=…=a#g,2,2%q=…=a#q-2,2,2%q=a#q-1,2,2%q=yp=2(yp=2 : 고정값)」
「a#0,3,2%q=a#1,3,2%q=a#2,3,2%q=a#3,3,2%q=…=a#g,3,2%q=…=a#q-2,3,2%q=a#q-1,3,2%q=yp=3(yp=3 : 고정값)」
「a#0,4,2%q=a#1,4,2%q=a#2,4,2%q=a#3,4,2%q=…=a#g,4,2%q=…=a#q-2,4,2%q=a#q-1,4,2%q=yp=4(yp=4 : 고정값)」
「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=…=a#g,k,2%q=…=a#q-2,k,2%q=a#q-1,k,2%q=yp=k(yp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,2%q=a#1,n-2,2%q=a#2,n-2,2%q=a#3,n-2,2%q=…=a#g,n-2,2%q=…=a#q-2,n-2,2%q=a#q-1,n-2,2%q=yp=n-2(yp=n-2 : 고정값)」
「a#0,n-1,2%q=a#1,n-1,2%q=a#2,n-1,2%q=a#3,n-1,2%q=…=a#g,n-1,2%q=…=a#q-2,n-1,2%q=a#q-1,n-1,2%q=yp=n-1(yp=n-1 : 고정값)」
및,
「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=…=b#g,2%q=…=b#q-2,2%q=b#q-1,2%q=z(z : 고정값)」
<조건#6-3>
「a#0,1,3%q=a#1,1,3%q=a#2,1,3%q=a#3,1,3%q=…=a#g,1,3%q=…=a#q-2,1,3%q=a#q-1,1,3%q=sp=1(sp=1 : 고정값)」
「a#0,2,3%q=a#1,2,3%q=a#2,2,3%q=a#3,2,3%q=…=a#g,2,3%q=…=a#q-2,2,3%q=a#q-1,2,3%q=sp=2(sp=2 : 고정값)」
「a#0,3,3%q=a#1,3,3%q=a#2,3,3%q=a#3,3,3%q=…=a#g,3,3%q=…=a#q-2,3,3%q=a#q-1,3,3%q=sp=3(sp=3 : 고정값)」
「a#0,4,3%q=a#1,4,3%q=a#2,4,3%q=a#3,4,3%q=…=a#g,4,3%q=…=a#q-2,4,3%q=a#q-1,4,3%q=sp=4(sp=4 : 고정값)」
「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=…=a#g,k,3%q=…=a#q-2,k,3%q=a#q-1,k,3%q=sp=k(sp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,3%q=a#1,n-2,3%q=a#2,n-2,3%q=a#3,n-2,3%q=…=a#g,n-2,3%q=…=a#q-2,n-2,3%q=a#q-1,n-2,3%q=sp=n-2(sp=n-2 : 고정값)」
「a#0,n-1,3%q=a#1,n-1,3%q=a#2,n-1,3%q=a#3,n-1,3%q=…=a#g,n-1,3%q=…=a#q-2,n-1,3%q=a#q-1,n-1,3%q=sp=n-1(sp=n-1 : 고정값)」
추가하여, (vp =1, yp =1, sp =1), (vp =2, yp =2, sp =2), (vp =3, yp =3, sp =3), …, (vp =k, yp=k, sp =k), …, (vp =n-2, yp =n-2, sp =n-2), (vp =n-1, yp =n-1, sp =n-1), 및, (w, z, 0)의 세트를 생각해 본다. 여기서, k=1, 2, …, n-1이다. 그러면, <조건#7-1> 또는 <조건#7-2>가 성립하면, 높은 오류 정정 능력을 얻을 수 있다.
<조건#7-1>
(vp =i, yp =i, sp =i) 및 (vp =j, yp =j, sp =j)를 생각한다. 단, i=1, 2, …, n-1, j=1, 2, …, n-1, 및, i≠j라고 한다. 이때, vp =i, yp =i, sp =i를 큰 순서로 배열한 세트를 (αp=i, βp=i, γp=i)라 한다. 단, αp=i≥βp=i, βp=i≥γp=i라고 한다. 또, vp =j, yp=j, sp =j를 큰 순서로 배열한 세트를 (αp=j, βp=j, γp=j)라 한다. 단, αp=j≥βp=j, βp=j≥γp=j라 한다. 이때, (αp=i, βp=i, γp=i)≠(αp=j, βp=j, γp=j)가 성립하는 i, j(i≠j)가 존재한다.
<조건#7-2>
(vp =i, yp =i, sp =i) 및 (w, z, 0)을 생각한다. 단, i=1, 2, …, n-1이라 한다. 이때, vp =i, yp =i, sp =i를 큰 순서로 배열한 세트를 (αp=i, βp=i, γp=i)라 한다. 단, αp=i≥βp=i, βp=i≥γp=i라 한다. 또, w, z, 0을 큰 순서로 배열한 세트를 (αp=i, βp=i, 0)이라 한다. 단, αp=i≥βp=i라 한다. 이때, (vp =i, yp =i, sp =i)≠(w, z, 0)가 성립하는 i가 존재한다.
또, <조건#7-1, 조건#7-2>의 제약 조건을 더욱 엄격하게 함으로써, 오류 정정 능력이 보다 높은 시변 주기 q(q는 3보다 큰 소수)인 LDPC-CC를 생성할 수 있을 가능성이 있다. 그 조건은, <조건#8-1> 및 <조건#8-2>, 또는, <조건#8-1> 또는 <조건#8-2>가 성립하는 것이다.
<조건#8-1>
(vp =i, yp =i, sp =i) 및 (vp =j, yp =j, sp =j)를 생각한다. 단, i=1, 2, …, n-1, j=1, 2, …, n-1, 및, i≠j라고 한다. 이때, vp =i, yp =i, sp =i를 큰 순서로 배열한 세트를 (αp=i, βp=i, γp=i)라 한다. 단, αp=i≥βp=i, βp=i≥γp=i라 한다. 또, vp =j, yp=j, sp =j를 큰 순서로 배열한 세트를 (αp=j, βp=j, γp=j)라 한다. 단, αp=j≥βp=j, βp=j≥γp=j라 한다. 이때, (αp=i, βp=i, γp=i)≠(αp=j, βp=j, γp=j)가 모든 i, j(i≠j)에서 성립한다.
<조건#8-2>
(vp =i, yp =i, sp =i) 및 (w, z, 0)을 생각한다. 단, i=1, 2, …, n-1이라고 한다. 이때, vp =i, yp =i, sp =i를 큰 순서로 배열한 세트를 (αp=i, βp=i, γp=i)라 한다. 단, αp=i≥βp=i, βp=i≥γp=i라 한다. 또, w, z, 0을 큰 순서로 배열한 세트를 (αp=i, βp=i, 0)이라 한다. 단, αp=i≥βp=i라 한다. 이때, (vp =i, yp =i, sp =i)≠(w, z, 0)가 모든 i에서 성립한다.
또, vp =i≠yp =i, vp =i≠sp =i, yp =i≠sp =i(i=1, 2, …, n-1), w≠z가 성립할 경우, 태너 그래프에 있어서, 짧은 루프의 발생을 억제할 수 있다.
이상의 설명에 있어서, 시변 주기 q(q는 3보다 큰 소수)인 LDPC-CC의 g번째의 패리티 검사 다항식으로서 X1(D), X2(D), …, Xn -1(D) 및 P(D)에 있어서 항수가 3인 식(38)을 취급했다. 또한, 식(38)에 있어서, X1(D), X2(D), …, Xn -1(D), P(D)의 어느 하나의 항수가 1, 2인 경우에 있어서도 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 1 또는 2로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 q인 경우, q개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되지만, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 한다. 또는, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 하지 않고 , q개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(q-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 1 또는 2로 해도 좋다. X2(D), …, Xn -1(D), P(D)에 대해서도 마찬가지이다. 이 경우에 있어서도, 위에서 설명한 조건을 만족시키는 것이, 높은 오류 정정 능력을 얻는데 있어 중요한 조건이 된다. 단, 삭감된 항에 관한 조건은 불필요하게 된다.
또, X1(D), X2(D), …, Xn -1(D), P(D)의 어느 하나의 항수가 4 이상이 되는 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 4 이상으로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 q인 경우, q개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 한다. 또는, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 하지 않고 , q개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(q-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 4 이상으로 해도 좋다. X2(D), …, Xn -1(D), P(D)에 대해서도 마찬가지이다. 이때, 증가한 항에 대해서는 상기에서 설명한 조건이 제외된다.
[시변 주기 h(h는 3보다 큰 소수 이외의 정수) : 식(39)]
다음에, 시변 주기 h가, 3보다 큰 소수 이외의 정수일 경우에 있어서의 부호 구성 방법에 대해 생각해 본다.
먼저, 부호화율 (n-1)/n, 시변 주기 h(h는 3보다 큰 소수 이외의 정수)의 g번째(g=0, 1, …, h-1)의 패리티 검사 다항식이 식(39)와 같이 표시되는 경우에 대해서 생각한다.
Figure pct00047
식(39)에 있어서, a#g,p,1, a#g,p,2는 1 이상의 자연수로 하고, a#g,p,1≠a#g,p,2가 성립하는 것으로 한다. 또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다(g=0, 1, 2, …, h-2, h-1; p=1, 2, …, n-1).
상기의 설명과 마찬가지로, 이하에 기재하는 <조건#9-1> 및 <조건#9-2>는, LDPC-CC가 높은 오류 정정 능력을 얻는데 있어 중요한 요건의 하나가 된다. 또한, 이하의 각 조건에 있어서 「%」는 modulo를 의미하고, 예를 들면, 「α%h」는, α을 h로 나눗셈했을 때의 나머지를 나타낸다.
<조건#9-1>
「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=…=a#g,1,1%h=…=a#h-2,1,1%h=a#h-1,1,1%h=vp=1(vp=1 : 고정값)」
「a#0,2,1%h=a#1,2,1%h=a#2,2,1%h=a#3,2,1%h=…=a#g,2,1%h=…=a#h-2,2,1%h=a#h-1,2,1%h=vp=2(vp=2 : 고정값)」
「a#0,3,1%h=a#1,3,1%h=a#2,3,1%h=a#3,3,1%h=…=a#g,3,1%h=…=a#h-2,3,1%h=a#h-1,3,1%h=vp=3(vp=3 : 고정값)」
「a#0,4,1%h=a#1,4,1%h=a#2,4,1%h=a#3,4,1%h=…=a#g,4,1%h=…=a#h-2,4,1%h=a#h-1,4,1%h=vp=4(vp=4 : 고정값)」
「a#0,k,1%h=a#1,k,1%h=a#2,k,1%h=a#3,k,1%h=…=a#g,k,1%h=…=a#h-2,k,1%h=a#h-1,k,1%h=vp=k(vp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,1%h=a#1,n-2,1%h=a#2,n-2,1%h=a#3,n-2,1%h=…=a#g,n-2,1%h=…=a#h-2,n-2,1%h=a#h-1,n-2,1%h=vp=n-2(vp=n-2 : 고정값)」
「a#0,n-1,1%h=a#1,n-1,1%h=a#2,n-1,1%h=a#3,n-1,1%h=…=a#g,n-11%h=…=a#h-2,n-1,1%h=a#h-1,n-1,1%h=vp=n-1(vp=n-1 : 고정값)」
및,
「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=…=b#g,1%h=…=b#h-2,1%h=b#h-1,1%h=w(w : 고정값)」
<조건#9-2>
「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=…=a#g,1,2%h=…=a#h-2,1,2%h=a#h-1,1,2%h=yp=1(yp=1 : 고정값)」
「a#0,2,2%h=a#1,2,2%h=a#2,2,2%h=a#3,2,2%h=…=a#g,2,2%h=…=a#h-2,2,2%h=a#h-1,2,2%h=yp=2(yp=2 : 고정값)」
「a#0,3,2%h=a#1,3,2%h=a#2,3,2%h=a#3,3,2%h=…=a#g,3,2%h=…=a#h-2,3,2%h=a#h-1,3,2%h=yp=3(yp=3 : 고정값)」
「a#0,4,2%h=a#1,4,2%h=a#2,4,2%h=a#3,4,2%h=…=a#g,4,2%h=…=a#h-2,4,2%h=a#h-1,4,2%h=yp=4(yp=4 : 고정값)」
「a#0,k,2%h=a#1,k,2%h=a#2,k,2%h=a#3,k,2%h=…=a#g,k,2%h=…=a#h-2,k,2%h=a#h-1,k,2%h=yp=k(yp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,2%h=a#1,n-2,2%h=a#2,n-2,2%h=a#3,n-2,2%h=…=a#g,n-2,2%h=…=a#h-2,n-2,2%h=a#h-1,n-2,2%h=yp=n-2(yp=n-2 : 고정값)」
「a#0,n-1,2%h=a#1,n-1,2%h=a#2,n-1,2%h=a#3,n-1,2%h=…=a#g,n-1,2%h=…=a#h-2,n-1,2%h=a#h-1,n-1,2%h=yp=n-1(yp=n-1 : 고정값)」
및,
「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=…=b#g,2%h=…=b#h-2,2%h=b#h-1,2%h=z(z : 고정값)」
추가하여, 상술에서 설명한 바와 같이, <조건#10-1> 또는 <조건#10-2>를 부가함으로써, 보다 높은 오류 정정 능력을 얻을 수 있다.
<조건#10-1>
<조건#9-1>에 있어서, vp =1, vp =2, vp =3, vp =4, …, vp =k, …, vp =n-2, vp =n-1(k=1, 2, …, n-1) 및 w를, 「1」, 및, 「시변 주기 h의 약수 이외의 자연수」로 설정한다.
<조건#10-2>
<조건#9-2>에 있어서, yp =1, yp =2, yp =3, yp =4, …, yp =k, …, yp =n-2, yp =n-1(k=1, 2, …, n-1) 및 z를, 「1」, 및, 「시변 주기 h의 약수 이외의 자연수」로 설정한다.
그리고, (vp =1, yp =1), (vp =2, yp =2), (vp =3, yp =3), …, (vp =k, yp =k), …, (vp =n-2, yp=n-2), (vp =n-1, yp =n-1), 및, (w, z)세트를 생각해 본다. 여기서, k=1, 2, …, n-1이다. 그러면, <조건#11-1> 또는 <조건#11-2>가 성립하면, 보다 높은 오류 정정 능력을 얻을 수 있다.
<조건#11-1>
(vp =i, yp =i) 및 (vp =j, yp =j)를 생각한다. 단, i=1, 2, …, n-1, j=1, 2, …, n-1, 및, i≠j라고 한다. 이때, (vp =i, yp =i)≠(vp =j, yp =j) 및 (vp =i, yp =i)≠(yp =j,vp =j)가 성립하는 i, j(i≠j)가 존재한다.
<조건#11-2>
(vp =i, yp =i) 및 (w, z)를 생각한다. 단, i=1, 2, …, n-1이라고 한다. 이때, (vp =i, yp =i)≠(w, z) 및 (vp =i, yp =i)≠(z, w)가 성립하는 i가 존재한다.
또, <조건#11-1, 조건#11-2>의 제약 조건을 더욱 엄격하게 함으로써, 오류 정정 능력이 보다 높은 시변 주기 h(h는 3보다 큰 소수가 아닌 정수)인 LDPC-CC를 생성할 수 있을 가능성이 있다. 그 조건은, <조건#12-1> 및 <조건#12-2>, 또는, <조건#12-1> 또는 <조건#12-2>가 성립하는 것이다.
<조건#12-1>
(vp =i, yp =i) 및 (vp =j, yp =j)를 생각한다. 단, i=1, 2, …, n-1, j=1, 2, …, n-1, 및, i≠j라고 한다. 이때, (vp =i, yp =i)≠(vp =j, yp =j) 및 (vp =i, yp =i)≠(yp =j,vp =j)가 전부의 i, j(i≠j)에서 성립한다.
<조건#12-2>
(vp =i, yp =i) 및 (w, z)를 생각한다. 단, i=1, 2, …, n-1이라고 한다. 이때, (vp =i, yp =i)≠(w, z) 및 (vp =i, yp =i)≠(z, w)가 전부의 i에서 성립한다.
또, vp =i≠yp =i(i=1, 2, …, n-1), w≠z가 성립할 경우, 태너 그래프에 있어서, 짧은 루프의 발생을 억제할 수 있다.
이상의 설명에 있어서, 시변 주기 h(h는 3보다 큰 소수 이외의 정수)인 LDPC-CC의 g번째의 패리티 검사 다항식으로서 X1(D), X2(D), …, Xn -1(D) 및 P(D)의 항수가 3인 식(39)를 취급했다. 또한, 식(39)에 있어서, X1(D), X2(D), …, Xn -1(D), P(D)의 어느 하나의 항수가 1, 2인 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 1 또는 2로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 h인 경우, h개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, h개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 한다. 또는, h개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 하지 않고 , h개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(h-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 1 또는 2로 해도 좋다. X2(D), …, Xn-1(D), P(D)에 있어서도 마찬가지이다. 이 경우에 있어서도, 상기에서 설명한 조건을 만족시키는 것이, 높은 오류 정정 능력을 얻는데 있어서 중요한 조건이 된다. 단, 삭감된 항에 관한 조건은 불필요하게 된다.
또, X1(D), X2(D), …, Xn -1(D), P(D)의 어느 하나의 항수가 4 이상이 되는 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 4 이상으로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 h인 경우, h개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, h개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 한다. 또는, h개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 하지 않고 , h개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(h-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 4 이상으로 해도 좋다. X2(D), …, Xn -1(D), P(D)에 대해서도 마찬가지이다. 이때, 증가한 항에 대해서는 상기에서 설명한 조건이 제외된다.
그런데, 식(39)는, 부호화율 (n-1)/n, 시변 주기 h(h는 3보다 큰 소수가 아닌 정수)인 LDPC-CC의(0을 만족시키는) g번째의 패리티 검사 다항식이었다. 이 식에 있어서, 예를 들면, 부호화율 1/2인 경우, g번째의 패리티 검사 다항식은 식(40-1)과 같이 표시된다. 또, 부호화율 2/3인 경우, g번째의 패리티 검사 다항식은 식(40-2)와 같이 표시된다. 또, 부호화율 3/4인 경우, g번째의 패리티 검사 다항식은 식(40-3)과 같이 표시된다. 또, 부호화율 4/5인 경우, g번째의 패리티 검사 다항식은 식(40-4)과 같이 표시된다. 또, 부호화율 5/6인 경우, g번째의 패리티 검사 다항식은 식(40-5)과 같이 표시된다.
Figure pct00048
[시변 주기 h(h는 3보다 큰 소수 이외의 정수) : 식(41)]
다음에, 시변 주기 h(h는 3보다 큰 소수 이외의 정수)인(0을 만족시키는) g번째(g=0, 1, …, h-1)의 패리티 검사 다항식이 식(41)과 같이 표시되는 경우에 대해 생각해 본다.
Figure pct00049
식(41)에 있어서, a#g,p,1, a#g,p,2, a#g,p,3은 1 이상의 자연수로 하고, a#g,p,1≠a#g,p,2, a#g,p,1≠a#g,p,3, a#g,p,2≠a#g,p,3이 성립하는 것으로 한다.
또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다(g=0, 1, 2, …, h-2, h-1; p=1, 2, …, n-1).
상기 설명과 마찬가지로, 이하에 기재하는 <조건#13-1>, <조건#13-2>, 및 <조건#13-3>은, LDPC-CC가 높은 오류 정정 능력을 얻는데 있어서 중요한 요건의 하나가 된다. 또한, 이하의 각 조건에 있어서 「%」는 modulo를 의미하고, 예를 들면, 「α%h」는, α를 q로 나눗셈했을 때의 나머지를 나타낸다.
<조건#13-1>
「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=…=a#g,1,1%h=…=a#h-2,1,1%h=a#h-1,1,1%h=vp=1(vp=1 : 고정값)」
「a#0,2,1%h=a#1,2,1%h=a#2,2,1%h=a#3,2,1%h=…=a#g,2,1%h=…=a#h-2,2,1%h=a#h-1,2,1%h=vp=2(vp=2 : 고정값)」
「a#0,3,1%h=a#1,3,1%h=a#2,3,1%h=a#3,3,1%h=…=a#g,3,1%h=…=a#h-2,3,1%h=a#h-1,3,1%h=vp=3(vp=3 : 고정값)」
「a#0,4,1%h=a#1,4,1%h=a#2,4,1%h=a#3,4,1%h=…=a#g,4,1%h=…=a#h-2,4,1%h=a#h-1,4,1%h=vp=4(vp=4 : 고정값)」
「a#0,k,1%h=a#1,k,1%h=a#2,k,1%h=a#3,k,1%h=…=a#g,k,1%h=…=a#h-2,k,1%h=a#h-1,k,1%h=vp=k(vp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,1%h=a#1,n-2,1%h=a#2,n-2,1%h=a#3,n-2,1%h=…=a#g,n-2,1%h=…=a#h-2,n-2,1%h=a#h-1,n-2,1%h=vp=n-2(vp=n-2 : 고정값)」
「a#0,n-1,1%h=a#1,n-1,1%h=a#2,n-1,1%h=a#3,n-1,1%h=…=a#g,n-11%h=…=a#h-2,n-1,1%h=a#h-1,n-1,1%h=vp=n-1(vp=n-1 : 고정값)」
및,
「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=…=b#g,1%h=…=b#h-2,1%h=b#h-1,1%h=w(w : 고정값)」
<조건#13-2>
「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=…=a#g,1,2%h=…=a#h-2,1,2%h=a#h-1,1,2%h=yp=1(yp=1 : 고정값)」
「a#0,2,2%h=a#1,2,2%h=a#2,2,2%h=a#3,2,2%h=…=a#g,2,2%h=…=a#h-2,2,2%h=a#h-1,2,2%h=yp=2(yp=2 : 고정값)」
「a#0,3,2%h=a#1,3,2%h=a#2,3,2%h=a#3,3,2%h=…=a#g,3,2%h=…=a#h-2,3,2%h=a#h-1,3,2%h=yp=3(yp=3 : 고정값)」
「a#0,4,2%h=a#1,4,2%h=a#2,4,2%h=a#3,4,2%h=…=a#g,4,2%h=…=a#h-2,4,2%h=a#h-1,4,2%h=yp=4(yp=4 : 고정값)」
「a#0,k,2%h=a#1,k,2%h=a#2,k,2%h=a#3,k,2%h=…=a#g,k,2%h=…=a#h-2,k,2%h=a#h-1,k,2%h=yp=k(yp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,2%h=a#1,n-2,2%h=a#2,n-2,2%h=a#3,n-2,2%h=…=a#g,n-2,2%h=…=a#h-2,n-2,2%h=a#h-1,n-2,2%h=yp=n-2(yp=n-2 : 고정값)」
「a#0,n-1,2%h=a#1,n-1,2%h=a#2,n-1,2%h=a#3,n-1,2%h=…=a#g,n-1,2%h=…=a#h-2,n-1,2%h=a#h-1, n-1,2%h=yp=n-1(yp=n-1 : 고정값)」
및,
「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=…=b#g,2%h=…=b#h-2,2%h=b#h-1,2%h=z(z : 고정값)」
<조건#13-3>
「a#0,1,3%h=a#1,1,3%h=a#2,1,3%h=a#3,1,3%h=…=a#g,1,3%h=…=a#h-2,1,3%h=a#h-1,1,3%h=sp=1(sp=1 : 고정값)」
「a#0,2,3%h=a#1,2,3%h=a#2,2,3%h=a#3,2,3%h=…=a#g,2,3%h=…=a#h-2,2,3%h=a#h-1,2,3%h=sp=2(sp=2 : 고정값)」
「a#0,3,3%h=a#1,3,3%h=a#2,3,3%h=a#3,3,3%h=…=a#g,3,3%h=…=a#h-2,3,3%h=a#h-1,3,3%h=sp=3(sp=3 : 고정값)」
「a#0,4,3%h=a#1,4,3%h=a#2,4,3%h=a#3,4,3%h=…=a#g,4,3%h=…=a#h-2,4,3%h=a#h-1,4,3%h=sp=4(sp=4 : 고정값)」
「a#0,k,3%h=a#1,k,3%h=a#2,k,3%h=a#3,k,3%h=…=a#g,k,3%h=…=a#h-2,k,3%h=a#h-1,k,3%h=sp=k(sp=k : 고정값)(따라서, k=1, 2, …, n-1이 된다.)」
「a#0,n-2,3%h=a#1,n-2,3%h=a#2,n-2,3%h=a#3,n-2,3%h=…=a#g,n-2,3%h=…=a#h-2,n-2,3%h=a#h-1,n-2,3%h=sp=n-2(sp=n-2 : 고정값)」
「a#0,n-1,3%h=a#1,n-1,3%h=a#2,n-1,3%h=a#3,n-1,3%h=…=a#g,n-1,3%h=…=a#h-2,n-1,3%h=a#h-1,n-1,3%h=sp=n-1(sp=n-1 : 고정값)」
추가하여, (vp =1, yp =1, sp =1), (vp =2, yp =2, sp =2), (vp =3, yp =3, sp =3), …, (vp =k, yp=k, sp =k), …, (vp =n-2, yp =n-2, sp =n-2), (vp =n-1, yp =n-1, sp =n-1), 및, (w, z, 0)의 세트를 생각해 본다. 여기서, k=1, 2, …, n-1이다. 그러면, <조건#14-1> 또는 <조건#14-2>가 성립하면, 높은 오류 정정 능력을 얻을 수 있다.
<조건#14-1>
(vp =i, yp =i, sp =i) 및 (vp =j, yp =j, sp =j)를 생각한다. 단, i=1, 2, …, n-1, j=1, 2, …, n-1, 및, i≠j라 한다. 이때, vp =i, yp =i, sp =i를 큰 순서로 배열한 세트를 (αp=i, βp=i, γp=i)라고 한다. 단, αp=i≥βp=i, βp=i≥γp=i라 한다. 또, vp =j, yp=j, sp =j를 큰 순서로 배열한 세트를 (αp=j, βp=j, γp=j)라고 한다. 단, αp=j≥βp=j, βp=j≥γp=j라고 한다. 이때, (αp=i, βp=i, γp=i)≠(αp=j, βp=j, γp=j)가 성립하는 i, j(i≠j)가 존재한다.
<조건#14-2>
(vp =i, yp =i, sp =i) 및 (w, z, 0)을 생각한다. 단, i=1, 2, …, n-1이라고 한다. vp =i, yp =i, sp =i를 큰 순서로 배열한 세트를 (αp=i, βp=i, γp=i)라고 한다. 단, αp=i≥βp=i, βp=i≥γp=i라 한다. 또, w, z, 0을 큰 순서로 배열한 세트를 (αp=i, βp=i, 0)이라 한다. 단, αp=i≥βp=i라고 한다. 이때, (vp =i, yp =i, sp =i)≠(w, z, 0)가 성립하는 i가 존재한다.
또, <조건#14-1, 조건#14-2>의 제약 조건을 더욱 엄격하게 함으로써, 오류 정정 능력이 보다 높은 시변 주기 h(h는 3보다 큰 소수가 아닌 정수)인 LDPC-CC를 생성할 수 있을 가능성이 있다. 그 조건은, <조건#15-1> 및 <조건#15-2>, 또는, <조건#15-1> 또는 <조건#15-2>가 성립하는 것이다.
<조건#15-1>
(vp =i, yp =i, sp =i) 및 (vp =j, yp =j, sp =j)를 생각한다. 단, i=1, 2, …, n-1, j=1, 2, …, n-1, 및, i≠j라고 한다. 이때, vp =i, yp =i, sp =i를 큰 순서로 배열한 세트를 (αp=i, βp=i, γp=i)라고 한다. 단, αp=i≥βp=i, βp=i≥γp=i라고 한다. 또, vp=j, yp =j, sp =j를 큰 순서로 배열한 세트를 (αp=j, βp=j, γp=j)라고 한다. 단, αp=j≥βp=j, βp=j≥γp=j라고 한다. 이때, (αp=i, βp=i, γp=i)≠(αp=j, βp=j, γp=j)가 전부의 i, j(i≠j)에서 성립한다.
<조건#15-2>
(vp =i, yp =i, sp =i) 및 (w, z, 0)을 생각한다. 단, i=1, 2, …, n-1이라고 한다. 이때, vp =i, yp =i, sp =i를 큰 순서로 배열한 세트를 (αp=i, βp=i, γp=i)라고 한다. 단, αp=i≥βp=i, βp=i≥γp=i로 한다. 또, w, z, 0을 큰 순서로 배열한 세트를 (αp=i, βp=i, 0)이라고 한다. 단, αp=i≥βp=i라고 한다. 이때, (vp =i, yp =i, sp =i)≠(w, z, 0)가 전부의 i에서 성립한다.
또, vp =i≠yp =i, vp =i≠sp =i, yp =i≠sp =i(i=1, 2, …, n-1), w≠z가 성립할 경우, 태너 그래프에 있어서, 짧은 루프의 발생을 억제할 수 있다.
이상의 설명에 있어서, 시변 주기 h(h는 3보다 큰 소수 이외의 정수)인 LDPC-CC의 g번째의 패리티 검사 다항식으로서 X1(D), X2(D), …, Xn -1(D) 및 P(D)에 대해 항수가 3인 식(41)을 취급했다. 또한, 식(41)에 있어서, X1(D), X2(D), …, Xn-1(D), P(D)의 어느 하나의 항수가 1, 2인 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 1 또는 2로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 h인 경우, h개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, h개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 한다. 또는, h개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 하지 않고 , h개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(h-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 1 또는 2로 해도 좋다. X2(D), …, Xn-1(D), P(D)에 있어서도 마찬가지이다. 이 경우에 있어서도, 상기에서 설명한 조건을 만족시키는 것이, 높은 오류 정정 능력을 얻는데 있어서 중요한 조건이 된다. 단, 삭감된 항에 관한 조건은 불필요하게 된다.
또, X1(D), X2(D), …, Xn -1(D), P(D)의 어느 하나의 항수가 4 이상이 되는 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 4 이상으로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 h인 경우, h개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, h개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 한다. 또는, h개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 하지 않고 , h개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(h-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 4 이상으로 해도 좋다. X2(D), …, Xn -1(D), P(D)에 대해서도 마찬가지이다. 이때, 증가한 항에 대해서는 상기에서 설명한 조건이 제외된다.
이상과 같이, 본 실시형태에서는, 시변 주기를 3보다 큰 패리티 검사 다항식에 기초하는 LDPC-CC, 특히, 시변 주기를 3보다 큰 소수로 하는 패리티 검사 다항식에 기초하는 LDPC-CC의 부호 구성 방법에 대해 설명했다. 본 실시형태에서 설명한 바와 같이 하여, 패리티 검사 다항식을 형성하고, 해당 패리티 검사 다항식에 기초하여 LDPC-CC의 부호화를 행함으로써, 보다 높은 오류 정정 능력을 얻을 수 있다.
(실시형태 2)
본 실시형태에서는, 실시형태 1에서 설명한 패리티 검사 다항식에 기초하는 LDPC-CC의 부호화 방법 및 부호화기의 구성에 대해서 자세하게 설명한다.
일례로서 먼저, 부호화율 1/2, 시변 주기 3인 LDPC-CC를 생각한다. 시변 주기 3인 패리티 검사 다항식을 이하에 부여한다.
Figure pct00050
이때, P(D)는 각각 다음 식과 같이 구해진다.
Figure pct00051
그리고, 식(43-0)~(43-2)를 각각 이하와 같이 나타낸다.
Figure pct00052
단,
Figure pct00053
는 배타적 논리합을 나타낸다.
이때, 식(44-0)에 상당하는 회로를 도 15(a)에 나타내고, 식(44-1)에 상당하는 회로를 도 15(b)에 나타내고, 식(44-2)에 상당하는 회로를 도 15(c)에 나타낸다.
그리고, 시점 i=3k일 때, 식(43-0), 즉, 식(44-0)에 상당하는 도 15(a)에 나타내는 회로에 의해, 시점 i의 패리티 비트를 구하게 된다. 시점 i=3k+1일 때, 식(43-1), 즉, 식(44-1)에 상당하는 도 15(b)에 나타내는 회로에 의해, 시점 i의 패리티 비트를 구하게 된다. 시점 i=3k+2일 때, 식(43-2), 즉, 식(44-2)에 상당하는 도 15(c)에 나타내는 회로에 의해, 시점 i의 패리티 비트를 구하게 된다. 따라서, 부호화기는, 도 9와 동일한 구성을 취할 수 있다.
시변 주기가 3 이외이고, 부호화율이 (n-1)/n인 경우도, 상술과 동일하게 하여, 부호화를 행할 수 있다. 예를 들면, 시변 주기 q, 부호화율 (n-1)/n인 LDPC-CC의 g번째(g=0, 1, …, q-1)의 패리티 검사 다항식은 식(36)으로 표시되기 때문에, P(D)는 이하와 같이 표시된다. 단, q는 소수에 한하지 않는다.
Figure pct00054
그리고, 식(45)를 식(44-0)~(44-2)와 동일하게 표현하면 이하와 같이 표시된다.
Figure pct00055
단,
Figure pct00056
는 배타적 논리합을 나타낸다.
여기서, Xr[i](r=1, 2, …, n-1)는, 시점 i의 정보 비트를 나타내고, P[i]는, 시점 i의 패리티 비트를 나타내고 있다.
따라서, 시점 i에 있어서, i%q=k일 때, 식(45), 식(46)에 있어서, 식(45), 식(46)의 g에 k를 대입한 식을 이용하여, 시점 i의 패리티 비트를 구할 수 있다.
그런데, 본원 발명에 있어서의 LDPC-CC는 컨볼루션 부호의 일종이 되기 때문에, 정보 비트의 복호에 있어서의 신뢰도를 확보하기 위해, 터미네이션 혹은 테일 바이팅(tail-biting)이 필요하게 된다. 본 실시형태에서는, 터미네이션을 행할 경우(「Information-zero-termination」 또는 간단하게 「제로 터미네이션(Zero-termination)」이라 부름)에 대해서 생각한다.
도 16은, 부호화율 (n-1)/n인 LDPC-CC에 있어서의 「Information-zero-termination」을 설명하기 위한 도면이다. 시점 i(i=0, 1, 2, 3, …, s)에 있어서의 정보 비트 X1, X2, …, Xn -1 및 패리티 비트 P를, X1 ,i, X2 ,i, …, Xn -1,i 및 패리티 비트 Pi라고 한다. 그리고, 도 16에 나타내는 것처럼, Xn -1,s가 송신하고 싶은 정보의 최종 비트라고 한다.
만약, 부호화기가 시점 s까지밖에 부호화를 행하지 않아, 부호화측의 송신 장치가, Ps까지밖에 복호측의 수신 장치에 전송하지 않았을 경우, 복호기에 있어서 정보 비트의 수신 품질이 크게 열화한다. 이 문제를 해결하기 위해, 최종 정보 비트 Xn -1,s 이후의 정보 비트(「가상의 정보 비트」라고 부름)를 「0」이라고 가정하고 부호화를 행하여, 패리티 비트(1603)를 생성한다.
구체적으로는, 도 16에 나타내는 것처럼, 부호화기는, X1 ,k, X2 ,k, …, Xn -1,k(k=t1, t2, …, tm)를 「0」으로서 부호화하고, Pt1, Pt2, …, Ptm을 얻는다. 그리고, 부호화측의 송신 장치는, 시점 s에 있어서의 X1 ,s, X2 ,s, …, Xn -1,s, Ps를 송신 후, Pt1, Pt2, …, Ptm을 송신한다. 복호기는, 시점 s 이후에서는, 가상의 정보 비트가 「0」임을 알고 있는 것을 이용하여, 복호를 행한다.
「Information-zero-termination」을 예로 하는 터미네이션에서는, 예를 들면, 도 9의 LDPC-CC 부호화기(100)에 있어서, 레지스터의 초기 상태는 「0」으로서 부호화를 행한다. 다른 해석으로서 시점 i=0부터 부호화할 경우, 예를 들면 식(46)에 있어서 z가 0보다 작은 경우, X1[z], X2[z], …, Xn -1[z], P[z]를 「0」으로서 부호화를 행하게 된다.
식(36)의 서브행렬(벡터)을 Hg라 하면, 제 g 서브행렬은 다음식과 같이 나타낼 수 있다.
Figure pct00057
여기서, n개 연속한 「1」은, 식(36)의 각 식에 있어서의 X1(D), X2(D), …, Xn-1(D) 및 P(D)의 항에 상당한다.
따라서, 터미네이션을 이용했을 때, 식(36)에서 나타나는 부호화율 (n-1)/n, 시변 주기 q인 LDPC-CC의 검사 행렬은, 도 17과 같이 표시된다. 도 17은, 도 5와 동일한 구성을 가진다. 또한, 후술하는 실시형태 3에 있어서, 테일 바이팅의 검사 행렬의 상세 구성에 대해서 설명한다.
도 17에 나타내는 것처럼, 패리티 검사 행렬 H에 있어서, 제 i 행과 제 i+1 행은, 서브행렬이 n열 오른쪽으로 쉬프트한 구성이 된다(도 17 참조). 단, 1열째보다 왼쪽의 요소(도 17의 예에서는, H′1)는, 검사 행렬에는 반영되지 않게 된다(도 5 및 도 17 참조). 그리고, 송신 벡터 u를, u=(X1 ,0, X2 ,0, …, Xn -1,0, P0, X1 ,1, X2,1, …, Xn -1,1, P1, …, X1 ,k, X2 ,k, …, Xn -1,k, Pk, …)T라 하면, Hu=0이 성립한다.
이상과 같이, 부호화기는, 시점 i의 정보 비트 Xr[i](r=1, 2, …, n-1)가 입력되면, 식(46)을 이용하여, 상기에 설명한 것처럼, 시점 i의 패리티 비트 P[i]를 생성하여, 패리티 비트[i]를 출력함으로써, 실시형태 1에서 설명한 LDPC-CC의 부호화를 행할 수 있다.
(실시형태 3)
본 실시형태에서는, 실시형태 1에서 설명한 패리티 검사 다항식에 기초하는 LDPC-CC에 있어서, 비특허 문헌 10, 11에 기재되어 있는 간단한 테일 바이팅을 행할 경우에, 보다 높은 오류 정정 능력을 얻기 위한 부호 구성 방법에 대해서 자세하게 설명한다.
실시형태 1에서는, 시변 주기 q(q는 3보다 큰 소수), 부호화율 (n-1)/n인 LDPC-CC의 g번째(g=0, 1, …, q-1)의 패리티 검사 다항식이, 식(36)으로 표시되는 경우에 대해 설명했다. 식(36)은, X1(D), X2(D), …, Xn -1(D) 및 P(D)에 있어서, 항수가 3이고, 실시형태 1에서는, 이 경우에, 높은 오류 정정 능력을 얻기 위한 부호 구성 방법(제약 조건)에 대해 상세하게 설명했다. 또, 실시형태 1에서는, X1(D), X2(D), …, Xn -1(D), P(D)의 어느 하나의 항수가 1, 2가 되는 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있음을 지적했다.
여기서, P(D)의 항을 1이라고 하면 피드포워드(feed forward)의 컨볼루션 부호(LDPC-CC)가 되므로, 비특허 문헌 10, 11에 기초하여, 간단하게 테일 바이팅을 행하는 것이 가능하게 된다. 본 실시형태에서는, 이 점에 대해서 자세하게 설명한다.
시변 주기 q, 부호화율 (n-1)/n인 LDPC-CC의 g번째(g=0, 1, …, q-1)의 패리티 검사 다항식(36)에 있어서, P(D)의 항이 1인 경우, g번째의 패리티 검사 다항식은 식(48)과 같이 표시된다.
Figure pct00058
또한, 본 실시형태에서는, 시변 주기 q는, 3 이상의 소수에 한하지 않는다. 다만, 실시형태 1에서 설명한 제약 조건에 대해서는 준수하는 것으로 한다. 단, P(D)에 있어서, 삭감된 항에 관한 조건에 대해서는 제외하는 것으로 한다.
식(48)로부터, P(D)는 이하와 같이 표시된다.
Figure pct00059
그리고, 식(49)를 식(44-0)~(44-2)와 동일하게 표현하면 이하와 같이 표시된다.
Figure pct00060
단,
Figure pct00061
는 배타적 논리합을 나타낸다.
따라서, 시점 i에 있어서, i%q=k 일 때, 식(49), 식(50)에 있어서, 식(49), 식(50)의 g에 k를 대입한 식을 이용하여, 시점 i의 패리티 비트를 구할 수 있다. 단, 테일 바이팅을 행할 경우의 동작의 상세한 것에 대해서는, 후술한다.
다음에, 식(49)에서 정의되는 시변 주기 q, 부호화율 (n-1)/n인 LDPC-CC에 대해, 테일 바이팅을 행했을 때의 검사 행렬의 구성, 및, 블록 사이즈에 대해 자세하게 설명한다.
비특허 문헌 12에는, 시변 LDPC-CC에 있어서, 테일 바이팅을 행할 때의 패리티 검사 행렬의 일반식이 기재되어 있다. 식(51)은, 비특허 문헌 12에 기재되는 테일 바이팅을 행할 때의 패리티 검사 행렬이다.
Figure pct00062
식(51)에 있어서, H는 패리티 검사 행렬이고, HT는 신드롬 포머이다. 또, HT i(t)(i=0, 1, …, Ms)는, c(c-b)의 서브행렬이며, Ms는 메모리 사이즈이다.
그러나, 비특허 문헌 12에는, 패리티 검사 행렬의 구체적인 부호에 대해 표시되어 있지 않고, 또, 높은 오류 정정 능력을 얻기 위한 부호 구성 방법(제약 조건)에 대해서는 기재되어 있지 않다.
이하에서는, 식(49)에서 정의되는 시변 주기 q, 부호화율 (n-1)/n인 LDPC-CC에 대해서, 테일 바이팅을 행했을 경우에 있어서도, 보다 높은 오류 정정 능력을 얻기 위한 부호 구성 방법(제약 조건)에 대해 자세하게 설명한다.
식(49)에서 정의되는 시변 주기 q, 부호화율 (n-1)/n인 LDPC-CC에 있어서, 보다 높은 오류 정정 능력을 얻기 위해서는, 복호시에 필요하게 되는 패리티 검사 행렬 H에 있어서, 이하의 조건이 중요하게 된다.
<조건#16>
ㆍ패리티 검사 행렬의 행수는, q의 배수이다.
ㆍ따라서, 패리티 검사 행렬의 열수는 n×q의 배수이다. 즉, 복호시에 필요한(예를 들면) 대수 우도비는 n×q의 배수 비트분이다.
다만, 상기 <조건#16>에 있어서, 필요한 시변 주기 q, 부호화율 (n-1)/n인 LDPC-CC의 패리티 검사 다항식은, 식(48)에 한하는 것은 아니고, 식(36), 식(38) 등의 패리티 검사 다항식이라도 좋다. 또, 식(38)에서는, X1(D), X2(D), …, Xn -1(D) 및 P(D)에 있어서, 각 항수가 3이지만, 이것에 한하는 것은 아니다. 또, 시변 주기 q는 2 이상이면 어느 값이어도 좋다.
여기서, <조건#16>에 대해서 논의한다.
시점 i에 있어서의 정보 비트 X1, X2, …, Xn -1, 및 패리티 비트 P를, X1 ,i, X2,i, …, Xn -1,i, Pi라고 나타낸다. 그러면, <조건#16>을 만족시키기 위해서는, i=1, 2, 3, …, q, …, q×(N-1)+1, q×(N-1)+2, q×(N-1)+3, …, q×N으로서 테일 바이팅을 행하게 된다.
또한, 이때, 송신 계열 u는, u=(X1 ,1, X2 ,1, …, Xn -1,1, P0, X1 ,2, X2 ,2, …, Xn -1,2, P2, …, X1 ,k, X2 ,k, …, Xn -1,k, Pk, …, X1 ,q×N, X2 ,q×N, …, Xn -1,q×N, Pq ×N)T가 되어, Hu=0이 성립한다. 이때의 패리티 검사 행렬의 구성에 대해, 도 18(a) 및 도 18(b)를 이용해 설명한다.
식(48)의 서브행렬(벡터)을 Hg라고 하면, 제 g 서브행렬은 다음 식과 같이 나타낼 수 있다.
Figure pct00063
여기서, n개 연속된 「1」은, 식(48)의 각 식에 있어서의 X1(D), X2(D), …, Xn-1(D) 및 P(D)의 항에 상당한다.
도 18(a)는, 상기에서 정의한 송신 계열 u에 대응하는 패리티 검사 행렬 중, 시점 q×N-1(1803), 시점 q×N(1804) 부근의 패리티 검사 행렬을 나타내고 있다. 도 18(a)에 나타내는 것처럼, 패리티 검사 행렬 H에 있어서, 제 i 행과 제 i+1 행은, 서브행렬이 n열 오른쪽으로 쉬프트한 구성이 된다(도 18(a) 참조).
도 18(a)에 있어서, 행 1801은 패리티 검사 행렬의 q×N행(최후의 행)을 나타내고 있다. <조건#16>을 만족시킬 경우, 행 1801은, q-1번째의 패리티 검사 다항식에 상당한다. 또, 행 1802는 패리티 검사 행렬의 q×N-1행을 나타내고 있다. <조건#16>을 만족시킬 경우, 행 1802는, q-2번째의 패리티 검사 다항식에 상당한다.
또, 열군(列群) 1804는 시점 q×N에 상당하는 열군을 나타내고 있다. 또한, 열군 1804에서는, 송신 계열이 X1 ,q×N, X2 ,q×N, …, Xn -1,q×N, Pq ×N의 순서로 배열되어 있다. 열군 1803은 시점 q×N-1에 상당하는 열군을 나타내고 있다. 또한, 열군 1803에서는, 송신 계열이 X1 ,q×N-1, X2 ,q×N-1, …, Xn -1,q×N-1, Pq ×N-1의 순서로 배열되어 있다.
다음에, 송신 계열의 순번을 재배열하여, u=(…, X1 ,q×N-1, X2 ,q×N-1, …, Xn -1,q×N-1, Pq ×N-1, X1 ,q×N, X2 ,q×N, …, Xn -1,q×N, Pq ×N, X1 ,0, X2 ,1, …, Xn -1,1, P1, X1 ,2, X2 ,2, …, Xn -1,2, P2, …)T라고 한다. 도 18(b)는, 송신 계열 u에 대응하는 패리티 검사 행렬 중, 시점 q×N-1(1803), 시점 q×N(1804), 시점 1(1807), 시점 2(1808) 부근의 패리티 검사 행렬을 나타내고 있다.
도 18(b)에 나타내는 것처럼, 패리티 검사 행렬 H에 있어서, 제 i 행과 제 i+1 행은, 서브행렬이 n열 오른쪽으로 쉬프트한 구성이 된다. 또, 도 18(a)와 같이, 시점 q×N-1(1803), 시점 q×N(1804) 부근의 패리티 검사 행렬을 나타냈을 경우, 열 1805는, q×N×n열째에 상당하는 열이 되고, 열 1806은, 1열째에 상당하는 열이 된다.
열군 1803은 시점 q×N-1에 상당하는 열군을 나타내고 있으며, 열군 1803은, X1,q×N-1, X2 ,q×N-1, …, Xn -1,q×N-1, Pq ×N-1의 순서로 배열되어 있다. 열군 1804는 시점 q×N에 상당하는 열군을 나타내고 있으며, 열군 1804는, X1 ,q×N, X2 ,q×N, …, Xn -1,q×N, Pq×N의 순서로 배열되어 있다. 열군 1807은 시점 1에 상당하는 열군을 나타내고 있으며, 열군 1807은, X1 ,1, X2 ,1, …, Xn -1,1, P1의 순서로 배열되어 있다. 열군 1808은 시점 2에 상당하는 열군을 나타내고 있으며, 열군 1808은, X1 ,2, X2 ,2, …, Xn -1,2, P2의 순서로 배열되어 있다.
도 18(a)와 같이, 시점 q×N-1(1803), 시점 q×N(1804) 부근의 패리티 검사 행렬을 나타냈을 경우, 행 1811은, q×N행째에 상당하는 행이 되고, 행 1812는, 1행째에 상당하는 행이 된다.
이때, 도 18(b)에서 나타낸 패리티 검사 행렬의 일부분, 즉, 열 경계 1813보다 왼쪽이면서 또 행 경계 1814보다 아래의 부분은, 테일 바이팅을 행했을 때의 특징적인 부분이 된다. 그리고, 이 특징적인 부분의 구성은, 식(51)과 같은 구성이 되는 것을 알 수 있다.
패리티 검사 행렬이 <조건#16>을 만족시키는 경우에, 패리티 검사 행렬을 도 18(a)에 나타낸 것처럼 표시하면, 패리티 검사 행렬은, 0번째의 0을 만족시키는 패리티 검사 다항식에 상당하는 행부터 시작되어, q-1번째의 0을 만족시키는 패리티 검사 다항식에 상당하는 행으로 끝난다. 이 점이, 보다 높은 오류 정정 능력을 얻는데 있어서 중요해진다.
실시형태 1에서 설명한 시변 LDPC-CC는, 태너 그래프에 있어서 길이가 짧은 사이클(cycle of length)의 수가 적어지는 등의 부호이다. 그리고, 실시형태 1에서는, 태너 그래프에 있어서 길이가 짧은 사이클의 수가 적어지는 등의 부호를 생성하기 위한 조건을 나타냈다. 여기서, 테일 바이팅을 행할 때에, 태너 그래프에 있어서 길이가 짧은 사이클의 수가 적어지기 위해서는, 패리티 검사 행렬의 행수가, q의 배수인 것(<조건#16>)이 중요하게 된다. 이 경우, 패리티 검사 행렬의 행수가, q의 배수인 경우에는, 시변 주기 q의 패리티 검사 다항식이 전부 이용되게 된다. 그 때문에, 패리티 검사 다항식을 실시형태 1에서 설명한 것처럼 태너 그래프에 있어서 길이가 짧은 사이클의 수가 적어지는 등의 부호로 함으로써, 테일 바이팅을 행할 때에도, 태너 그래프에 있어 길이가 짧은 사이클의 수를 적게 할 수 있다. 이와 같이, 테일 바이팅을 행할 때에도, 태너 그래프에 있어서 길이가 짧은 사이클의 수를 적게 하기 위해서는, <조건#16>이 중요한 요건이 된다.
단, 통신 시스템에 있어서 테일 바이팅을 행할 때, 통신 시스템에 있어서 요구되는 블록 길이(또는 정보 길이)에 대해서 <조건#16>을 만족시키도록 하기 위해, 궁리가 필요한 경우가 있다. 이 점에 대해, 예를 들어 설명한다.
도 19는, 통신 시스템의 생략 도면이다. 도 19의 통신 시스템은, 부호화측의 송신 장치(1910) 및, 복호측의 수신 장치(1920)를 가지고 있다.
부호화기(1911)는, 정보가 입력되면, 부호화를 행하여, 송신 계열을 생성하여, 출력한다. 그리고, 변조부(1912)는, 송신 계열이 입력되면, 매핑, 직교 변조, 주파수 변환, 및 증폭 등의 소정의 처리를 행하고, 송신 신호를 출력한다. 송신 신호는, 통신 매체(무선, 전력선, 광(光) 등)를 경유하여, 수신 장치(1920)의 수신부(1921)에 도달한다.
수신부(1921)는, 수신 신호가 입력되면, 증폭, 주파수 변환, 직교 복조, 채널 추정, 및 디매핑 등의 처리를 행하고, 베이스밴드 신호, 및 채널 추정 신호를 출력한다.
대수 우도비 생성부(1922)는, 베이스밴드 신호, 및 채널 추정 신호가 입력되면, 비트 단위의 대수 우도비를 생성하고, 대수 우도비 신호를 출력한다.
복호화기(1923)는, 대수 우도비 신호가 입력되면, 여기에서는, 특히, BP 복호를 이용한 반복 복호를 행하여, 추정 송신 계열, 또는(및), 추정 정보 계열을 출력한다.
예를 들면, 부호화율 1/2, 시변 주기 11인 LDPC-CC를 생각한다. 이때, 테일 바이팅을 행하는 것을 전제하여, 설정한 정보 길이를 16384라 한다. 그 정보 비트를 X1 ,1, X1 ,2, X1 ,3, …, X1 ,16384라고 한다. 그리고, 아무 궁리하지 않고 , 패리티 비트를 구한다고 하면, P1, P2, P3, …, P16384가 구해지게 된다.
그러나, 송신 계열 u=(X1 ,1, P1, X1 ,2, P2, …, X1 ,16384, P16384)에 대해서 패리티 검사 행렬을 작성하더라도, <조건#16>을 만족시키지 못한다. 따라서, 송신 계열로서 X1 ,16385, X1 ,16386, X1 ,16387, X1 ,16388, X1 ,16389를 추가하여, 부호화기(1911)가, P16385, P16386, P16387, P16388, P16389를 구하도록 하면 좋다.
이때, 부호화기(1911)에서는, 예를 들면, X1 ,16385=0, X1 ,16386=0, X1 ,16387=0, X1,16388=0, X1 ,16389=0이라고 설정하고, 부호화를 행하여, P16385, P16386, P16387, P16388, P16389를 구한다. 단, 부호화기(1911)와 복호화기(1923)에 있어서, X1 ,16385=0, X1,16386=0, X1 ,16387=0, X1 ,16388=0, X1 ,16389=0으로 설정했다고 하는 약속을 공유하고 있을 경우, X1 ,16385, X1 ,16386, X1 ,16387, X1 ,16388, X1 ,16389를 송신할 필요는 없다.
따라서, 부호화기(1911)는, 정보 계열 X=(X1 ,1, X1 ,2, X1 ,3, …, X1 ,16384, X1,16385, X1 ,16386, X1 ,16387, X1 ,16388, X1 ,16389)=(X1 ,1, X1 ,2, X1 ,3, …, X1 ,16384, 0, 0, 0, 0, 0)이 입력되면, 계열(X1 ,1, P1, X1 ,2, P2, …, X1 ,16384, P16384, X1 ,16385, P16385 , X1 ,16386, P16386, X1 ,16387, P16387, X1 ,16388, P16388, X1 ,16389, P16389)=(X1 ,1, P1, X1 ,2, P2, …, X1 ,16384, P16384, 0, P16385, 0, P16386, 0, P16387, 0, P16388, 0, P16389)을 얻는다.
그리고, 송신 장치(1910)는, 부호화기(1911)와 복호화기(1923)의 사이에서 기지(旣知)인 「0」을 삭감하고, 송신 계열로서(X1 ,1, P1, X1 ,2, P2, …, X1 ,16384, P16384, P16385, P16386, P16387, P16388, P16389)를 송신한다.
수신 장치(1920)에서는, 송신 계열마다의, 예를 들면, 대수 우도비를 LLR(X1,1), LLR(P1), LLR(X1 ,2), LLR(P2), …, LLR(X1 ,16384), LLR(P16384), LLR(P16385), LLR(P16386), LLR(P16387), LLR(P16388), LLR(P16389)를 얻게 된다.
그리고, 수신 장치(1920)는, 송신 장치(1910)로부터 송신되지 않았던 「0」의 값인 X1 ,16385, X1 ,16386, X1 ,16387, X1 ,16388, X1 ,16389의 대수 우도비 LLR(X1 ,16385)=LLR(0), LLR(X1,16386)=LLR(0), LLR(X1 ,16387)=LLR(0), LLR(X1 ,16388)=LLR(0), LLR(X1 ,16389)=LLR(0)를 생성한다. 수신 장치(1920)는, LLR(X1 ,1), LLR(P1), LLR(X1 ,2), LLR(P2), …, LLR(X1,16384), LLR(P16384), LLR(X1 ,16385)=LLR(0), LLR(P16385), LLR(X1 ,16386)=LLR(0), LLR(P16386), LLR(X1 ,16387)=LLR(0), LLR(P16387), LLR(X1 ,16388)=LLR(0), LLR(P16388), LLR(X1,16389)=LLR(0), LLR(P16389)를 얻게 되므로, 이 대수 우도비 및 부호화율 1/2, 시변 주기 11인 LDPC-CC의 16389×32778의 패리티 검사 행렬을 이용해 복호를 행함으로써, 추정 송신 계열, 또는(및), 추정 정보 계열을 얻는다. 복호 방법으로서는, 비특허 문헌 4, 비특허 문헌 5, 비특허 문헌 6에 나타나 있는 등의 BP(Belief Propagation)(신뢰도 전파) 복호, BP 복호를 근사(近似)한 min-sum 복호, offset BP 복호, Normalized BP 복호, shuffled BP 복호 등의 신뢰도 전파를 이용할 수 있다.
이 예에서 알 수 있는 것처럼, 부호화율 (n-1)/n, 시변 주기 q인 LDPC-CC에 있어서, 테일 바이팅을 행할 경우, 수신 장치(1920)에서는, <조건#16>을 만족시키는 등의 패리티 검사 행렬을 이용해 복호가 행해진다. 따라서, 복호화기(1923)는, 패리티 검사 행렬로서 (행)×(열)=(q×M)×(q×n×M)의 패리티 검사 행렬을 보유하고 있는 것이 된다(M은 자연수).
이것에 대응하는 부호화기(1911)에 있어서, 부호화에 필요한 정보 비트수는 q×(n-1)×M이 된다. 이 정보 비트를 이용하여, q×M비트의 패리티 비트를 구하게 된다.
이때, 부호화기(1911)에 입력되는 정보 비트의 수가, q×(n-1)×M비트보다 적을 경우는, 부호화기(1911)에 있어서, 정보 비트수가 q×(n-1)×M비트가 되도록 송수신 장치(부호화기(1911) 및 복호화기(1923))간에서 기지(旣知)인 비트(예를 들면 「0」(「1」도 좋음))가 삽입된다. 그리고, 부호화기(1911)는, q×M비트인 패리티 비트를 구하게 된다. 이때, 송신 장치(1910)는, 삽입한 기지 비트를 제외한 정보 비트 및 구한 패리티 비트를 송신한다. 또한, 기지의 비트를 송신하고, 항상, q×(n-1)×M비트의 정보 비트 및 q×M비트의 패리티 비트를 송신해도 좋지만, 이 경우에는, 기지 비트 송신분의 전송 속도의 저하를 초래하게 된다.
다음에, 식(48)의 패리티 검사 다항식에 의해 정의되는 부호화율 (n-1)/n, 시변 주기 q인 LDPC-CC에 있어서, 테일 바이팅을 행했을 때의 부호화 방법에 대해 설명한다. 식(48)의 패리티 검사 다항식에 의해 정의되는 부호화율 (n-1)/n, 시변 주기 q인 LDPC-CC는, 피드포워드 컨볼루션 부호의 일종이다. 따라서, 비특허 문헌 10, 비특허 문헌 11에 기재된 테일 바이팅을 행할 수 있다. 그래서, 이하에서는, 비특허 문헌 10, 비특허 문헌 11에 기재된 테일 바이팅을 행할 경우의 부호화 방법의 순서의 개요에 대해서 설명한다.
순서는 이하와 같다.
<순서 1>
예를 들면, 부호화기(1911)가, 도 9와 동일한 구성을 취하는 경우, 각 레지스터(부호 생략)의 초기값을 「0」이라고 한다. 즉, 식(50)에 있어서, 시점 i에 있어서(i=1, 2, …), (i-1)%q=k일 때, g=k로서 시점 i의 패리티 비트를 구한다. 그리고, 식(50)의 X1[z], X2[z], …, Xn -1[z], P[z]에 있어서, z가 1보다 작은 경우는, 이들을 「0」으로서 부호화를 행한다. 그리고, 부호화기(1911)는, 마지막 패리티 비트까지 구한다. 그리고, 이때의 부호화기(1911)의 각 레지스터 상태를 보지(保持)해 둔다.
<순서 2>
순서 1에 있어서, 부호화기(1911)에 보지된 각 레지스터 상태로부터(따라서, 식(50)의 X1[z], X2[z], …, Xn -1[z], P[z]에 있어서, z가 1보다 작은 경우에 대해서, <순서 1>로 얻어진 값이 이용되게 된다.), 재차, 시점 i=1부터 부호화를 행하여, 패리티 비트를 구한다.
이때 얻어진 패리티 비트 및 정보 비트가, 테일 바이팅을 행했을 때의 부호화 계열이 된다.
또한, 본 실시형태에서는, 식(48)에서 정의되는 시변 주기 q, 부호화율 (n-1)/n인 LDPC-CC를 예로 설명했다. 식(48)은, X1(D), X2(D), …, Xn -1(D)에 있어서 항수가 3이다. 그러나, 항수는 3에 한하지 않고, 식(48)에 있어서, X1(D), X2(D), …, Xn -1(D)의 어느 하나의 항수가 1, 2가 되는 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 1 또는 2로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 q인 경우, q개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 한다. 또는, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 하지 않고 , q개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(q-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 1 또는 2로 해도 좋다. X2(D), …, Xn -1(D)에 대해서도 마찬가지이다. 이 경우에 있어서도, 실시형태 1에서 설명한 조건을 만족시키는 것이, 높은 오류 정정 능력을 얻는데 있어서 중요한 조건이 된다. 단, 삭감된 항에 관한 조건은 불필요하게 된다.
또, X1(D), X2(D), …, Xn -1(D)의 어느 하나의 항수가 4 이상이 되는 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 4 이상으로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 q인 경우, q개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 한다. 또는, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 하지 않고 , q개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(q-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 4 이상으로 해도 좋다. X2(D), …, Xn -1(D)에 대해서도 마찬가지이다. 이때, 증가한 항에 대해서는 상기에서 설명한 조건이 제외된다.
또, 시변 주기 q, 부호화율 (n-1)/n인 LDPC-CC의 g번째(g=0, 1, …, q-1)의 패리티 검사 다항식을 식(53)과 같이 나타낸 부호에 대해서도, 본 실시형태에 있어서의 테일 바이팅을 실시할 수 있다.
Figure pct00064
단, 실시형태 1에서 설명한 제약 조건이 준수되고 있는 것으로 한다.
단, P(D)에 있어서, 삭감된 항에 관한 조건에 대해서는 제외하는 것으로 한다.
식(53)으로부터, P(D)는 이하와 같이 표시된다.
Figure pct00065
그리고, 식(54)를 식(44-0)~(44-2)와 동일하게 표현하면 이하와 같이 표시된다.
Figure pct00066
단,
Figure pct00067
는 배타적 논리합을 나타낸다.
또한, 식(53)의 X1(D), X2(D), …, Xn -1(D)의 어느 하나의 항수가 1, 2가 되는 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 1 또는 2로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 q인 경우, q개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 한다. 또는, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 1 또는 2로 하지 않고 , q개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(q-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 1 또는 2로 해도 좋다. X2(D), …, Xn -1(D)에 대해서도 마찬가지이다. 이 경우에 있어서도, 실시형태 1에서 설명한 조건을 만족시키는 것이, 높은 오류 정정 능력을 얻는데 있어서 중요한 조건이 된다. 단, 삭감된 항에 관한 조건은 불필요하게 된다.
또, X1(D), X2(D), …, Xn -1(D)의 어느 하나의 항수가 4 이상이 되는 경우에 있어서도, 높은 오류 정정 능력을 얻을 수 있을 가능성이 있다. 예를 들면, X1(D)의 항수를 4 이상으로 하는 방법으로서는, 다음과 같은 방법이 있다. 시변 주기 q인 경우, q개의 0을 만족시키는 패리티 검사 다항식이 존재하게 되는데, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 한다. 또는, q개의 0을 만족시키는 패리티 검사 다항식 전부에 있어서, X1(D)의 항수를 4 이상으로 하지 않고 , q개의 0을 만족시키는 패리티 검사 다항식 중, 어느 것인가(q-1개 이하)의 0을 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 항수를 4 이상으로 해도 좋다. X2(D), …, Xn -1(D)에 대해서도 마찬가지이다. 이때, 증가한 항에 대해서는 상기에서 설명한 조건이 제외된다. 또, 식(53)에서 정의된 LDPC-CC에 있어서도, 상술한 순서를 이용함으로써, 테일 바이팅을 행했을 때의 부호화 계열을 얻을 수 있다.
이상과 같이, 부호화기(1911) 및 복호화기(1923)가, 실시형태 1에서 설명한 LDPC-CC에 있어서 행수가 시변 주기 q의 배수의 패리티 검사 행렬을 이용함으로써, 간단한 테일 바이팅을 행할 때에 있어서도, 높은 오류 정정 능력을 얻을 수 있다.
(실시형태 4)
본 실시형태에서는, 재차, 패리티 검사 다항식에 기초하는, 부호화율 R=(n-1)/n인 시변 LDPC-CC에 대해 설명한다. X1, X2, …, Xn -1의 정보 비트 및 패리티 비트 P의 시점 j에 있어서의 비트를, 각각 X1 ,j, X2 ,j, …, Xn -1,j 및 Pj라고 나타낸다. 그리고, 시점 j에 있어서의 벡터 uj를 uj=(X1 ,j, X2 ,j, …, Xn -1,j, Pj)라고 나타낸다. 또, 부호화 계열을 u=(u0, u1, …, uj, …)T라고 나타낸다. D를 지연 연산자라고 하면, 정보 비트 X1, X2, …, Xn -1의 다항식은 X1(D), X2(D), …, Xn -1(D)로 표시되고, 패리티 비트 P의 다항식은 P(D)로 표시된다. 이때, 식(56)에서 표시되는 0을 만족시키는 패리티 검사 다항식을 생각한다.
Figure pct00068
식(56)에 있어서 ap ,q(p=1, 2, …, n-1; q=1, 2, …, rp) 및 bs(s=1, 2, …, ε)는 자연수로 한다. 또, y, z=1, 2, …, rp, y≠z의 (y, z)에 대해서, ap ,y≠ap,z를 만족시킨다. 또, y, z=1, 2, …, ε, y≠z의 (y, z)에 대해서, by≠bz를 만족시킨다. 여기서, ∀는, 전칭 기호(universal quantifier)이다.
부호화율 R=(n-1)/n, 시변 주기 m인 LDPC-CC를 작성하기 위해, 식(56)에 기초하는 패리티 검사 다항식을 준비한다. 이때 i번째 (i=0, 1, …, m-1)의 패리티 검사 다항식을 식(57)과 같이 나타낸다.
Figure pct00069
식(57)에 있어서, AX δ,i(D)(δ=1, 2, …, n-1) 및 Bi(D)의 D의 최대 차수를 각각 ΓXδ,i 및 ΓP, i라고 나타낸다. 그리고, ΓXδ,i 및 ΓP, i의 최대값을 Γi라고 한다. 그리고, Γi(i=0, 1, …, m-1)의 최대값을 Γ라고 한다. 부호화 계열 u를 고려하면, Γ를 이용함으로써, i번째의 패리티 검사 다항식에 상당하는 벡터 hi는 식(58)과 같이 표시된다.
Figure pct00070
식(58)에 있어서, hi ,v(v=0, 1, …, Γ)는 1×n의 벡터이며, 식(59)와 같이 표시된다.
Figure pct00071
왜냐하면, 식(57)의 패리티 검사 다항식은, αi,v, XwDvXw(D) 및 βi,vDvP(D)(w=1, 2, …, n-1, 또, αi,v, Xw, βi,v∈[0, 1])를 가지기 때문이다. 이 경우, 식(57)의 0을 만족시키는 패리티 검사 다항식은, D0X1(D), D0X2(D), …, D0Xn -1(D) 및 D0P(D)를 가지므로, 식(60)을 만족시킨다.
Figure pct00072
식(60)에 있어서, k에 대해서, Λ(k)=Λ(k+m)을 만족시킨다. 단, Λ(k)는 패리티 검사 행렬 k의 행째에 있어서의 hi에 상당한다.
식(58), 식(59) 및 식(60)을 이용함으로써, 부호화율 R=(n-1)/n, 시변 주기 m인 패리티 검사 다항식에 기초하는 LDPC-CC의 검사 행렬은, 식(61)과 같이 표시된다.
Figure pct00073
(실시형태 5)
본 실시형태에서는, 실시형태 1에서 설명한 시변 LDPC-CC를 소실 정정 방식에 적용하는 경우에 대해서 설명한다. 단, LDPC-CC의 시변 주기는, 시변 주기 2, 3, 4이어도 좋다.
예를 들면, LDPC 부호에 의한 소실 정정 부호화를 이용한 통신 시스템의 개념도를 도 20에 나타낸다. 도 20에 있어서, 부호화측의 통신 장치에서는, 송신하는 정보 패킷 1~4에 대해서 LDPC 부호화를 행하여, 패리티 패킷 a, b를 생성한다. 상위층 처리부는, 정보 패킷에 패리티 패킷을 부가한 부호화 패킷을 하위층(도 20의 예에서는 물리층(PHY : Physical Layer))에 출력하고, 하위층의 물리층 처리부는, 부호화 패킷을 통신로로 송신할 수 있는 형태로 변환하여 통신로에 출력한다. 도 20은, 통신로가 무선 통신로인 경우의 예이다.
복호화측의 통신 장치에서는, 하위층의 물리층 처리부에서 수신 처리를 행한다. 이때, 하위층에서 비트 에러가 발생했다고 가정한다. 이 비트 에러에 의해, 상위층에서, 해당하는 비트를 포함한 패킷이 정상적으로 복호되지 않고, 패킷 소실이 발생하는 경우가 있다. 도 20의 예에서는, 정보 패킷 3이 소실된 경우를 나타내고 있다. 상위층 처리부는, 수신한 패킷열에 대해서 LDPC 복호 처리를 실시함으로써, 소실한 정보 패킷 3을 복호한다. LDPC 복호로서는, 신뢰도 전파(BP : Belief Propagation)를 이용해 복호하는 Sum-product 복호, 또는, 가우스(Gauss) 소거법 등이 이용된다.
도 21은, 상기 통신 시스템의 전체 구성도이다. 도 21에 있어서, 통신 시스템은, 부호화측의 통신 장치(2110), 통신로(2120) 및 복호측의 통신 장치(2130)를 가진다.
부호화측의 통신 장치(2110)는, 소실 정정 부호화 관련 처리부(2112), 오류 정정 부호화부(2113) 및 송신 장치(2114)를 가진다.
복호측의 통신 장치(2130)는, 수신 장치(2131), 오류 정정 복호부(2132), 소실 정정 복호 관련 처리부(2133)를 가진다.
통신로(2120)는, 부호화측의 통신 장치(2110)의 송신 장치(2114)로부터 송신된 신호가, 복호측의 통신 장치(2130)의 수신 장치(2131)에서 수신될 때까지 통과하는 경로를 나타낸다. 통신로(2120)로서 이더넷(등록상표), 전력선, 메탈 케이블, 광 파이버, 무선, 광(가시광선, 적외선 등), 또는, 이들을 조합한 것을 사용할 수 있다.
오류 정정 부호화부(2113)에서는, 통신로(2120)에 의해 발생하는 오류를 정정하기 위해, 소실 정정 부호와는 별도로, 물리층(물리 레이어)에 있어서의 오류 정정 부호가 도입된다. 따라서, 오류 정정 복호부(2132)에서는, 물리층에서의 오류 정정 부호의 복호가 행해진다. 따라서, 소실 정정 부호/복호가 실시되는 레이어와 오류 정정 부호가 행해지는 레이어(즉, 물리 레이어)와는 다른 레이어(층)가 되고, 물리층의 오류 정정 복호에서는, 연판정 복호가 행해지고, 소실 정정의 복호에서는, 소실 비트를 복원하는 작업이 행해지게 된다.
도 22는, 소실 정정 부호화 관련 처리부(2112)의 내부 구성을 나타내는 도면이다. 도 22를 이용해, 소실 정정 부호화 관련 처리부(2112)에 있어서의 소실 정정 부호화 방법에 대해 설명한다.
패킷 생성부(2211)는, 정보(2241)가 입력되면, 정보 패킷(2243)을 생성하고, 정보 패킷(2243)을 재배열부(2215)에 출력한다. 이하에서는, 일례로서 정보 패킷(2243)이, 정보 패킷#1~#n으로 구성되는 경우에 대해서 설명한다.
재배열부(2215)는, 정보 패킷(2243)(여기에서는, 정보 패킷#1~#n)이 입력되면, 정보의 순서를 재배열하고, 재배열 후의 정보(2245)를 출력한다.
소실 정정 부호화기(패리티 패킷 생성부)(2216)는, 재배열 후의 정보(2245)가 입력되면, 정보(2245)에 대해서, 예를 들면, LDPC-CC(low-density parity-check convolutional code)의 부호화를 행하여, 패리티 비트를 생성한다. 소실 정정 부호화기(패리티 패킷 생성부)(2216)는, 생성한 패리티 부분만을 추출하고, 추출한 패리티 부분으로부터(패리티를 축적하여, 재배열을 행하여) 패리티 패킷(2247)을 생성해서 출력한다. 이때, 정보 패킷#1~#n에 대해서, 패리티 패킷#1~#m이 생성되는 경우, 패리티 패킷(2247)은, 패리티 패킷#1~#m으로 구성된다.
오류 검출 부호 부가부(2217)는, 정보 패킷(2243)(정보 패킷#1~#n), 및, 패리티 패킷(2247)(패리티 패킷#1~#m)이 입력된다. 오류 검출 부호 부가부(2217)는, 정보 패킷(2243)(정보 패킷#1~#n), 및, 패리티 패킷(2247)(패리티 패킷#1~#m)에 대해 오류 검출 부호, 예를 들면, CRC를 부가한다. 오류 검출 부호 부가부(2217)는, CRC 부가 후의 정보 패킷 및 패리티 패킷(2249)을 출력한다. 따라서, CRC 부가 후의 정보 패킷 및 패리티 패킷(2249)은, CRC 부가 후의 정보 패킷#1~#n, 및, CRC 부가 후의 패리티 패킷#1~#m으로 구성된다.
또, 도 23은, 소실 정정 부호화 관련 처리부(2112)의 다른 내부 구성을 나타내는 도면이다. 도 23에 나타내는 소실 정정 부호화 관련 처리부(2312)는, 도 22에 나타낸 소실 정정 부호화 관련 처리부(2112)와는 다른 소실 정정 부호화 방법을 행한다. 소실 정정 부호화부(2314)는, 정보 패킷과 패리티 패킷을 구별하지 않고 , 정보 비트 및 패리티 비트를 데이터로 간주하고, 패킷#1~#n+m을 구성한다. 단, 패킷을 구성할 때, 소실 정정 부호화부(2314)는, 정보 및 패리티를 내부의 메모리(도면 표시 생략)에 일시 축적하고, 그 후, 재배열을 행하여, 패킷을 구성한다. 그리고, 오류 검출 부호 부가부(2317)는, 이러한 패킷에 오류 검출 부호, 예를 들면, CRC를 부가하고, CRC 부가 후의 패킷 #1~#n+m을 출력한다.
도 24는, 소실 정정 복호 관련 처리부(2433)의 내부 구성을 나타내는 도면이다. 도 24를 이용하여, 소실 정정 복호 관련 처리부(2433)에 있어서의 소실 정정 복호 방법에 대해 설명한다.
오류 검출부(2435)는, 물리층에 있어서의 오류 정정 부호의 복호 후의 패킷(2451)이 입력되면, 예를 들면, CRC에 의해, 오류 검출을 행한다. 이때, 물리층에 있어서의 오류 정정 부호(ECC)의 복호 후의 패킷(2451)은, 복호 후의 정보 패킷#1~#n 및 복호 후의 패리티 패킷#1~#m으로 구성된다. 오류 검출의 결과, 예를 들면, 도 24에 나타내는 것처럼, 복호 후의 정보 패킷 및 복호 후의 패리티 패킷에 손실 패킷이 존재하는 경우, 오류 검출부(2435)는, 패킷 손실이 발생하지 않았던 정보 패킷 및 패리티 패킷에 패킷 번호를 붙여, 패킷(2453)으로서 출력한다.
소실 정정 복호기(2436)는, 패킷(2453)(패킷 손실이 발생하지 않았던 정보 패킷(패킷 번호 붙음) 및 패리티 패킷(패킷 번호 붙음))이 입력된다. 소실 정정 복호기(2436)는, 패킷(2453)에 대해서(재배열을 행하고, 그 후) 소실 정정 부호 복호를 행하여, 정보 패킷(2455)(정보 패킷#1~#n)을 복호한다. 또한, 도 23에 나타내는 소실 정정 부호화 관련 처리부(2312)에 의해 부호화된 경우에는, 소실 정정 복호기(2436)에는, 정보 패킷과 패리티 패킷이 구별되어 있지 않은 패킷이 입력되어, 소실 정정 복호를 하게 된다.
그런데, 전송 효율의 향상과 소실 정정 능력의 향상의 양립을 생각했을 경우, 통신 품질에 따라, 소실 정정 부호에 있어서의 부호화율을 변경할 수 있는 것이 희망된다. 도 25는, 통신 품질에 따라, 소실 정정 부호의 부호화율을 변경할 수 있는 소실 정정 부호화기(2560)의 구성예를 나타내고 있다.
제 1 소실 정정 부호화기(2561)는, 부호화율 1/2의 소실 정정 부호의 부호화기이다. 또, 제 2 소실 정정 부호화기(2562)는, 부호화율 2/3의 소실 정정 부호의 부호화기이다. 또, 제 3 소실 정정 부호화기(2563)는, 부호화율 3/4의 소실 정정 부호의 부호화기이다.
제 1 소실 정정 부호화기(2561)는, 정보(2571) 및 제어 신호(2572)가 입력되면, 제어 신호(2572)가 부호화율 1/2을 지정했을 경우에 부호화를 행하고, 소실 정정 부호화 후의 데이터(2573)를 선택부(2564)에 출력한다. 마찬가지로, 제 2 소실 정정 부호화기(2562)는, 정보(2571) 및 제어 신호(2572)가 입력되면, 제어 신호(2572)가 부호화율 2/3을 지정했을 경우에 부호화를 행하고, 소실 정정 부호화 후의 데이터(2574)를 선택부(2564)에 출력한다. 마찬가지로 제 3 소실 정정 부호화기(2563)는, 정보(2571) 및 제어 신호(2572)가 입력되면, 제어 신호(2572)가 부호화율 3/4를 지정했을 경우에 부호화를 행하고, 소실 정정 부호화 후의 데이터(2575)를 선택부(2564)에 출력한다.
선택부(2564)는, 소실 정정 부호화 후의 데이터(2573, 2574, 2575) 및 제어 신호(2572)가 입력되면, 제어 신호(2572)가 지정한 부호화율에 대응하는 소실 정정 부호화 후의 데이터(2576)를 출력한다.
이와 같이, 통신 상황에 따라 소실 정정 부호의 부호화율을 변경하여, 적절한 부호화율로 설정함으로써, 통신 상대의 수신 품질의 향상과 데이터(정보)의 전송 속도의 향상의 양립을 꾀할 수 있게 된다.
이 경우, 부호화기에 대해서는, 복수 부호화율을 저(低)회로규모로 실현하는 것과, 높은 소실 정정 능력을 얻는 것의 양립이 요구된다. 이하에서는, 이 양립을 실현하는 부호화 방법(부호화기), 및 복호 방법에 대해서 자세하게 설명한다.
이하에서 설명하는 부호ㆍ복호화 방법에서는, 실시형태 1~3에서 설명한 LDPC-CC를, 소실 정정을 위한 부호로서 이용한다. 이때, 소실 정정 능력의 점에 착목하면, 예를 들면, 부호화율 3/4보다 큰 LDPC-CC를 이용할 경우에는, 높은 소실 정정 능력을 얻을 수 있다. 한편, 부호화율 2/3보다 작은 LDPC-CC를 이용할 경우에는, 높은 소실 정정 능력을 얻는 것이 어렵다고 하는 과제가 있다. 이하에서는, 이 과제를 극복하고, 게다가, 저회로규모로 복수 부호화율을 실현할 수 있는 부호화 방법에 대해 설명한다.
도 26은, 통신 시스템의 전체 구성도이다. 도 26에 있어서, 통신 시스템은, 부호화측의 통신 장치(2600), 통신로(2607) 및 복호측의 통신 장치(2608)를 포함한다.
통신로(2607)는, 부호화측의 통신 장치(2600)의 송신 장치(2605)로부터 송신된 신호가, 복호측의 통신 장치(2608)의 수신 장치(2609)에서 수신될 때까지 통과하는 경로를 나타낸다.
수신 장치(2613)는, 수신 신호(2612)가 입력되면, 통신 장치(2608)로부터 피드백된 정보(피드백 정보)(2615), 및 수신 데이터(2614)를 얻는다.
소실 정정 부호화 관련 처리부(2603)는, 정보(2601), 제어 신호(2602) 및 통신 장치(2608)로부터 피드백된 정보(2615)가 입력된다. 소실 정정 부호화 관련 처리부(2603)는, 제어 신호(2602), 또는, 통신 장치(2608)로부터의 피드백 정보(2615)에 기초하여 소실 정정 부호의 부호화율을 결정해, 부호화를 행하고, 소실 정정 부호화 후의 패킷을 출력한다.
오류 정정 부호화부(2604)는, 소실 정정 부호화 후의 패킷, 제어 신호(2602) 및 통신 장치(2608)로부터의 피드백 정보(2615)가 입력된다. 오류 정정 부호화부(2604)는, 제어 신호(2602), 또는, 통신 장치(2608)로부터의 피드백 정보(2615)에 기초하여 물리층의 오류 정정 부호의 부호화율을 결정하여, 물리층에 있어서의 오류 정정 부호화를 행하고, 부호화 후의 데이터를 출력한다.
송신 장치(2605)는, 부호화 후의 데이터가 입력되면, 예를 들면, 직교 변조, 주파수 변환, 증폭 등의 처리를 행하여, 송신 신호를 출력한다. 단, 송신 신호에는, 데이터 이외에도, 제어 정보를 전송하기 위한 심볼, 기지 심볼 등 심볼이 포함되어 있는 것으로 한다. 또, 송신 신호에는, 설정한 물리층의 오류 정정 부호의 부호화율 및 소실 정정 부호의 부호화율 정보를 제어 정보가 포함되어 있는 것으로 한다.
수신 장치(2609)는, 수신 신호가 입력되면, 증폭, 주파수 변환, 직교 복조 등의 처리를 실시하여, 수신 대수 우도비를 출력함과 동시에, 송신 신호에 포함되는 기지 심볼로부터, 전파 환경, 수신 전계 강도 등의 통신로의 환경을 추정하고, 추정 신호를 출력한다. 또, 수신 장치(2609)는, 수신 신호에 포함되는 제어 정보를 위한 심볼을 복조함으로써, 송신 장치(2605)가 설정한 물리층의 오류 정정 부호의 부호화율, 소실 정정 부호의 부호화율의 정보를 얻어, 제어 신호로서 출력한다.
오류 정정 복호부(2610)는, 수신 대수 우도비, 제어 신호가 입력되면, 제어 신호에 포함되는 물리층의 오류 정정 부호의 부호화율을 이용해, 물리층에 있어서의 적절한 오류 정정 복호를 행한다. 그리고, 오류 정정 복호부(2610)는, 복호 후의 데이터를 출력함과 동시에, 물리층에 있어서 오류 정정을 행할 수 있었는지 없었는지의 정보(오류 정정 가부 정보(예를 들면 ACK/NACK))를 출력한다.
소실 정정 복호 관련 처리부(2611)는, 복호 후의 데이터, 제어 신호가 입력되면, 제어 신호에 포함되는 소실 정정 부호의 부호화율을 이용해, 소실 정정 복호를 행한다. 그리고, 소실 정정 복호 관련 처리부(2611)는, 소실 정정 복호 후의 데이터를 출력함과 동시에, 소실 정정에 있어서 오류 정정을 행할 수 있었는지 없었는지의 정보(소실 정정 가부 정보(예를 들면 ACK/NACK))를 출력한다.
송신 장치(2617)에는, 전파 환경, 수신 전계 강도 등의 통신로의 환경을 추정한 추정 정보(RSSI : Received Signal Strength Indicator 또는 CSI : Channel State Information), 물리층에 있어서의 오류 정정 가부 정보, 및 소실 정정에 있어서의 소실 정정 가부 정보에 기초한 피드백 정보와 송신 데이터가 입력된다. 송신 장치(2617)는, 부호화, 매핑, 직교 변조, 주파수 변환, 증폭 등의 처리를 실시하여, 송신 신호(2618)를 출력한다. 송신 신호(2618)는, 통신 장치(2600)에 전송된다.
도 27을 이용해, 소실 정정 부호화 관련 처리부(2603)에 있어서의 소실 정정 부호의 부호화율의 변경 방법에 대해 설명한다. 또한, 도 27에 있어서, 도 22와 동일하게 동작하는 것에 대해서는 동일한 부호를 붙였다. 도 27에 있어서, 도 22와 다른 점은, 제어 신호(2602) 및 피드백 정보(2615)가, 패킷 생성부(2211) 및 소실 정정 부호화기(패리티 패킷 생성부)(2216)에 입력되는 점이다. 그리고, 소실 정정 부호화 관련 처리부(2603)는, 제어 신호(2602) 및 피드백 정보(2615)에 기초하여, 패킷 사이즈나 소실 정정 부호의 부호화율을 변경한다.
또, 도 28은, 소실 정정 부호화 관련 처리부(2603)의 다른 내부 구성을 나타내는 도면이다. 도 28에 나타내는 소실 정정 부호화 관련 처리부(2603)는, 도 27에 나타낸 소실 정정 부호화 관련 처리부(2603)와는 다른 방법을 이용해, 소실 정정 부호의 부호화율을 변경한다. 또한, 도 28에 있어서, 도 23과 동일하게 동작하는 것에 대해서는 동일 부호를 붙였다. 도 28에 있어서, 도 23과 다른 점은, 제어 신호(2602) 및 피드백 정보(2615)가, 소실 정정 부호화기(2316) 및 오류 검출 부호 부가부(2317)에 입력되는 점이다. 그리고, 소실 정정 부호화 관련 처리부(2603)는, 제어 신호(2602) 및 피드백 정보(2615)에 기초하여, 패킷 사이즈나 소실 정정 부호의 부호화율을 변경한다.
도 29는, 본 실시형태에 따른 부호화부의 구성의 일례를 나타내고 있다. 도 29의 부호화기(2900)는, 복수의 부호화율에 대응 가능한 LDPC-CC 부호화부이다. 또한, 이하에서는, 도 29에 나타내는 부호화기(2900)가, 부호화율 4/5 및 부호화율 16/25을 서포트하는 경우에 대해 설명한다.
재배열부(2902)는, 정보 X가 입력되면, 정보 비트 X를 축적한다. 그리고, 재배열부(2902)는, 정보 비트 X가 4비트분 축적되면, 정보 비트 X를 재배열하여, 정보 비트 X1, X2, X3, X4를 4 계통으로 패러렐로 출력한다. 단, 이 구성은, 어디까지나 일례이다. 또한, 재배열부(2902)의 동작에 대해서, 후술한다.
LDPC-CC 부호화기(2907)는, 부호화율 4/5를 서포트한다. LDPC-CC 부호화기(2907)는, 정보 비트 X1, X2, X3, X4, 및 제어 신호(2916)가 입력된다. LDPC-CC 부호화기(2907)는, 예를 들면, 실시형태 1부터 실시형태 3에 나타낸 LDPC-CC 부호화를 행하여, 패리티 비트(P1)(2908)를 출력한다. 또한, 제어 신호(2916)가, 부호화율 4/5를 나타내는 경우, 정보 X1, X2, X3, X4, 및, 패리티(P1)가, 부호화기(2900)의 출력이 된다.
재배열부(2909)는, 정보 비트 X1, X2, X3, X4, 패리티 비트 P1, 및, 제어 신호(2916)가 입력된다. 그리고, 제어 신호(2916)가, 부호화율 4/5을 나타내고 있을 경우, 재배열부(2909)는, 동작하지 않는다. 한편, 제어 신호(2916)가, 부호화율 16/25을 나타내고 있을 경우, 재배열부(2909)는, 정보 비트 X1, X2, X3, X4, 및, 패리티 비트 P1를 축적한다. 그리고, 재배열부(2909)는, 축적한 정보 비트 X1, X2, X3, X4, 및, 패리티 비트 P1를 재배열 후의 데이터#1(2910), 재배열 후의 데이터#2(2911), 재배열 후의 데이터#3(2912), 재배열 후의 데이터#4(2913)를 출력한다. 또한, 재배열부(2909)에 있어서의 재배열 방법에 대해서는, 후술한다.
LDPC-CC 부호화기(2914)는, LDPC-CC 부호화기(2907)와 마찬가지로, 부호화율 4/5를 서포트한다. LDPC-CC 부호화기(2914)는, 재배열 후의 데이터#1(2910), 재배열 후의 데이터#2(2911), 재배열 후의 데이터#3(2912), 재배열 후의 데이터#4(2913), 및, 제어 신호(2916)가 입력된다. 그리고, 제어 신호(2916)가, 부호화율 16/25을 나타낼 경우, LDPC-CC 부호화기(2914)는, 부호화를 행하고, 패리티 비트(P2)(2915)를 출력한다. 또한, 제어 신호(2916)가, 부호화율 4/5를 나타낼 경우, 재배열 후의 데이터#1(2910), 재배열 후의 데이터#2(2911), 재배열 후의 데이터#3(2912), 재배열 후의 데이터#4(2913), 및, 패리티 비트(P2)(2915)가 부호화기(2900)의 출력이 된다.
도 30은, 부호화기(2900)의 부호화 방법의 개략을 설명하기 위한 도면이다. 재배열부(2902)에는, 정보 비트 X(1)로부터 정보 비트 X(4 N)가 입력되고, 재배열부(2902)는 정보 비트 X를 재배열한다. 그리고, 재배열부(2902)는, 재배열 후의 4개의 정보 비트를 패러렐로 출력한다. 따라서, [X1(1), X2(1), X3(1), X4(1)]를 최초로 출력하고, 그 후, [X1(2), X2(2), X3(2), X4(2)]를 출력한다. 그리고, 재배열부(2902)는, 최후로, [X1(N), X2(N), X3(N), X4(N)]를 출력한다.
부호화율 4/5인 LDPC-CC 부호화기(2907)는, [X1(1), X2(1), X3(1), X4(1)]에 대해서 부호화를 행하여, 패리티 비트 P1(1)를 출력한다. 이하 마찬가지로, LDPC-CC 부호화기(2907)는, 부호화를 행하여, 패리티 비트 P1(2), P1(3), …, P1(N)를 생성하여, 출력한다.
재배열부(2909)에는, [X1(1), X2(1), X3(1), X4(1), P1(1)], [X1(2), X2(2), X3(2), X4(2), P1(2)], …, [X1(N), X2(N), X3(N), X4(N), P1(N)]가 입력된다. 재배열부(2909)는, 정보 비트에 더해 패리티 비트도 포함하여 재배열을 행한다.
예를 들면, 도 30에 나타내는 예에서는, 재배열부(2909)는, 재배열 후의[X1(50), X2(31), X3(7), P1(40)], [X2(39), X4(67), P1(4), X1(20)], …, [P2(65), X4(21), P1(16), X2(87)]를 출력한다.
그리고, 부호화율 4/5인 LDPC-CC 부호화기(2914)는, 예를 들면, 도 30의 테두리(3000)로 표시되는 것처럼, [X1(50), X2(31), X3(7), P1(40)]에 대해 부호화를 행하여, 패리티 비트 P2(1)를 생성한다. 이하 동일하게 LDPC-CC 부호화기(2914)는, 패리티 비트 P2(1), P2(2), …, P2(M)를 생성하여, 출력한다.
그리고, 제어 신호(2916)가 부호화율 4/5를 나타낼 경우, 부호화기(2900)는, [X1(1), X2(1), X3(1), X4(1), P1(1)], [X1(2), X2(2), X3(2), X4(2), P1(2)], …, [X1(N), X2(N), X3(N), X4(N), P1(N)]를 이용하여 패킷을 생성한다.
또, 제어 신호(2916)가 부호화율 16/25를 나타낼 경우, 부호화기(2900)는, [X1(50), X2(31), X3(7), P1(40), P2(1)], [X2(39), X4(67), P1(4), X1(20), P2(2)], …, [P2(65), X4(21), P1(16), X2(87), P2(M)]를 이용하여 패킷을 생성한다.
이상과 같이, 본 실시형태에서는, 부호화기(2900)는, 예를 들면, 부호화율 4/5와 같이 부호화율이 높은 LDPC-CC 부호화기(2907), (2914)를 연접하면서 또, 각 LDPC-CC 부호화기(2907), (2914) 전(前)에 재배열부(2902), (2909)를 배치하는 구성을 취한다. 그리고, 부호화기(2900)는, 지정된 부호화율에 따라, 출력하는 데이터를 변경한다. 이것에 의해, 저회로규모로 복수 부호화율에 대응할 수 있으면서 또, 각 부호화율에서 높은 소실 정정 능력을 얻을 수 있다고 하는 효과를 얻을 수 있다.
도 29에서는, 부호화기(2900)에 있어서, 부호화율 4/5인 LDPC-CC 부호화기(2907, 2914)를 2개 연접한 구성에 대해 설명했지만, 이것에 한하는 것은 아니다. 예를 들면, 도 31과 같이, 부호화기(2900)에 있어서, 다른 부호화율의 LDPC-CC 부호화기(3102, 2914)를 연접한 구성이라도 좋다. 또한, 도 31에 있어서, 도 29와 동일하게 동작하는 것에 대해서는 동일 부호를 붙였다.
재배열부(3101)는, 정보 비트 X가 입력되면, 정보 비트 X를 축적한다. 그리고, 재배열부(3101)는, 정보 비트 X가 5비트분 축적되면, 정보 비트 X를 재배열하여, 정보 비트 X1, X2, X3, X4, X5를 5 계통으로 패러렐로 출력한다.
LDPC-CC 부호화기(3103)는, 부호화율 5/6를 서포트한다. LDPC-CC 부호화기(3103)는, 정보 비트 X1, X2, X3, X4, X5, 및 제어 신호(2916)가 입력되면, 정보 비트 X1, X2, X3, X4, X5에 대해서 부호화를 행하고, 패리티 비트(P1)(2908)를 출력한다. 또한, 제어 신호(2916)가, 부호화율 5/6을 나타낼 경우, 정보 비트 X1, X2, X3, X4, X5, 및, 패리티 비트(P1)(2908)가, 부호화기(2900)의 출력이 된다.
재배열부(3104)는, 정보 비트 X1, X2, X3, X4, X5, 패리티 비트(P1)(2908), 및 제어 신호(2916)가 입력된다. 제어 신호(2916)가 부호화율 2/3를 나타내는 경우, 재배열부(3104)는, 정보 비트 X1, X2, X3, X4, X5, 및, 패리티 비트(P1)(2908)를 축적한다. 그리고, 재배열부(3104)는, 축적한 정보 비트 X1, X2, X3, X4, X5, 및, 패리티 비트(P1)(2908)를 재배열하고, 재배열 후의 데이터를 4 계통으로 패러렐로 출력한다. 이때, 4 계통에는, 정보 비트 X1, X2, X3, X4, X5, 및, 패리티 비트(P1)가 포함되게 된다.
LDPC-CC 부호화기(2914)는, 부호화율 4/5를 서포트한다. LDPC-CC 부호화기(2914)는, 4 계통의 데이터 및 제어 신호(2916)가 입력된다. LDPC-CC 부호화기(2914)는, 제어 신호(2916)가, 부호화율 2/3를 나타낼 경우, 4 계통의 데이터에 대해서 부호화를 행하여, 패리티 비트(P2)를 출력한다. 따라서, LDPC-CC 부호화기(2914)는, 정보 비트 X1, X2, X3, X4, X5, 및, 패리티 비트 P1를 이용해 부호화를 행하게 된다.
또한, 부호화기(2900)에 있어서, 부호화율은 어느 부호화율로 설정해도 좋다. 또, 부호화율이 동일한 부호화기를 연접했을 경우, 동일 부호의 부호화기여도 좋고, 다른 부호의 부호화기여도 좋다.
또, 도 29 및 도 31에는, 2개의 부호화율에 대응하는 경우의 부호화기(2900)의 구성예를 나타냈지만, 3개 이상의 부호화율에 대응시키도록 해도 좋다. 도 32는, 3개 이상의 부호화율에 대응할 수 있는 부호화기(3200)의 구성의 일례를 나타내고 있다.
재배열부(3202)는, 정보 비트 X가 입력되면, 정보 비트 X를 축적한다. 그리고, 재배열부(3202)는, 축적 후의 정보 비트 X를 재배열하고, 재배열 후의 정보 비트 X를, 후단의 LDPC-CC 부호화기(3204)의 부호화 대상의 제 1 데이터(3203)로서 출력한다.
LDPC-CC 부호화기(3204)는, 부호화율 (n-1)/n을 서포트한다. LDPC-CC 부호화기(3204)는, 제 1 데이터(3203), 및 제어 신호(2916)가 입력되면, 제 1 데이터(3203) 및 제어 신호(2916)에 대해서 부호화를 행하여, 패리티 비트(P1)(3205)를 출력한다. 또한, 제어 신호(2916)가, 부호화율 (n-1)/n을 나타낼 경우, 제 1 데이터(3203) 및 패리티 비트(P1)(3205)가 부호화기(3200)의 출력이 된다.
재배열부(3206)는, 제 1 데이터(3203), 패리티 비트(P1)(3205), 및 제어 신호(2916)가 입력된다. 재배열부(3206)는, 제어 신호(2916)가, 부호화율 {(n-1)(m-1)}/(nm) 이하를 나타낼 경우, 제 1 데이터(3203), 및 비트 패리티(P1)(3205)를 축적한다. 그리고, 재배열부(3206)는, 축적 후의 제 1 데이터(3203), 및 패리티 비트(P1)(3205)를 재배열하고, 재배열 후의 제 1 데이터(3203), 및 패리티 비트(P1)(3205)를, 후단의 LDPC-CC 부호화기(3208)의 부호화 대상인 제 2 데이터(3207)로서 출력한다.
LDPC-CC 부호화기(3208)는, 부호화율 (m-1)/m을 서포트한다. LDPC-CC 부호화기(3208)는, 제 2 데이터(3207), 및 제어 신호(2916)가 입력된다. 그리고, LDPC-CC 부호화기(3208)는, 제어 신호(2916)가, 부호화율 {(n-1)(m-1)}/(nm) 이하를 나타낼 경우, 제 2 데이터(3207)에 대해서 부호화를 행하여, 패리티(P2)(3209)를 출력한다. 또한, 제어 신호(2916)가, 부호화율 {(n-1)(m-1)}/(nm)을 나타낼 경우, 제 2 데이터(3207) 및 패리티 비트(P2)(3209)가 부호화기(3200)의 출력이 된다.
재배열부(3210)는, 제 2 데이터(3207), 패리티 비트(P2)(3209), 및 제어 신호(2916)가 입력된다. 재배열부(3210)는, 제어 신호(2916)가, 부호화율 {(n-1)(m-1)(s-1)}/(nms) 이하를 나타낼 경우, 제 2 데이터(3209), 및 패리티 비트(P2)(3207)를 축적한다. 그리고, 재배열부(3210)는, 축적 후의 제 2 데이터(3209), 및 패리티 비트(P2)(3207)를 재배열하고, 재배열 후의 제 2 데이터(3209), 및 패리티(P2)(3207)를, 후단의 LDPC-CC 부호화기(3212)의 부호화 대상인 제 3 데이터(3211)로서 출력한다.
LDPC-CC 부호화기(3212)는, 부호화율 (s-1)/s을 서포트한다. LDPC-CC 부호화기(3212)는, 제 3 데이터(3211), 및 제어 신호(2916)가 입력된다. 그리고, LDPC-CC 부호화기(3212)는, 제어 신호(2916)가, 부호화율 {(n-1)(m-1)(s-1)}/(nms) 이하를 나타낼 경우, 제 3 데이터(3211)에 대해서 부호화를 행하여, 패리티 비트(P3)(3213)를 출력한다. 또한, 제어 신호(2916)가, 부호화율 {(n-1)(m-1)(s-1)}/ (nms)을 나타낼 경우, 제 3 데이터(3211) 및 패리티 비트(P3)(3213)가 부호화기(3200)의 출력이 된다.
또한, LDPC-CC 부호화기를 더욱 다단(多段)으로 연접함으로써, 보다 많은 부호화율을 실현할 수 있게 된다. 이것에 의해, 복수 부호화율을 저회로규모로 실현할 수 있음과 동시에, 각 부호화율에서 높은 소실 정정 능력을 얻을 수 있다고 하는 효과를 얻을 수 있다.
또한, 도 29, 도 31및 도 32에 있어서, 정보 비트 X에 대해서, 반드시 재배열(초단의 재배열)이 필요한 것은 아니다. 또, 재배열부는, 재배열 후의 정보 비트 X를 패러렐로 출력하는 구성으로 표시되어 있지만, 이것에 한한 것은 아니고, 시리얼 출력으로 해도 좋다.
도 33에, 도 32의 부호화기(3200)에 대응하는 복호화기(3310)의 구성의 일례를 나타낸다.
시점 i에 있어서의 송신 계열 ui를 ui=(X1 ,i, X2 ,i, …, Xn -1,i, P1 ,i, P2 ,i, P3 ,i, …)로 하면, 송신 계열 u는, u=(u0, u1, …, ui, …)T로 표시된다.
도 34에 있어서, 행렬 3300은, 복호화기(3310)가 이용하는 패리티 검사 행렬 H를 나타내고 있다. 또, 행렬 3301은 LDPC-CC 부호화기(3204)에 대응하는 서브행렬을 나타내고, 행렬 3302는 LDPC-CC 부호화기(3208)에 대응하는 서브행렬을 나타내고, 행렬 3303은 LDPC-CC 부호화기(3212)에 대응하는 서브행렬을 나타내고 있다. 이하 같이 패리티 검사 행렬 H에 있어서, 서브행렬이 계속되게 된다. 복호화기(3310)에서는, 가장 낮은 부호화율의 패리티 검사 행렬을 보유하도록 한다.
도 33에 나타내는 복호화기(3310)에 있어서, BP 복호기(3313)는, 서포트하는 부호화율 중, 가장 낮은 부호화율의 패리티 검사 행렬에 기초한 BP 복호기이다. BP 복호기(3313)는, 소실 데이터(3311), 및, 제어 신호(3312)가 입력한다. 여기서, 소실 데이터(3311)란, 「0」, 「1」이 이미 결정된 비트와 「0」, 「1」이 미결정(소실)된 비트로 구성되어 있다. BP 복호기(3313)는, 제어 신호(3312)가 지정하는 부호화율에 기초하여 BP 복호를 행함으로써 소실 정정하고, 소실 정정 후의 데이터(3314)를 출력한다.
이하, 복호화기(3310)의 동작에 대해서 설명한다.
예를 들면, 부호화율 (n-1)/n인 경우, 소실 데이터(3311)에는, P2, P3, …에 상당하는 데이터가 존재하지 않는다. 그러나, 이 경우에는, P2, P3, …에 상당하는 데이터를 「0」으로 하여, BP 복호기(3313)가 복호 동작함으로써, 소실 정정을 행할 수 있게 된다.
마찬가지로, 부호화율 {(n-1)(m-1))}/(nm)인 경우, 소실 데이터(3311)에는, P3, …에 상당하는 데이터가 존재하지 않는다. 그러나, 이 경우에는, P3, …에 상당하는 데이터를 「0」으로 하여, BP 복호기(3313)가 복호 동작함으로써, 소실 정정을 행할 수 있게 된다. 그 외의 부호화율의 경우에 대해서도, BP 복호기(3313)가 동일하게 동작하면 된다.
이상과 같이, 복호화기(3310)는, 서포트하는 부호화율 중, 가장 낮은 부호화율의 패리티 검사 행렬을 보유하고, 이 패리티 검사 행렬을 이용하여, 복수의 부호화율에 있어서의 BP 복호에 대응한다. 이것에 의해, 저회로규모로 복수 부호화율에 대응할 수 있고, 더욱, 각 부호화율에서 높은 소실 정정 능력을 얻을 수 있다고 하는 효과를 얻을 수 있다.
이하에서는, LDPC-CC를 이용해, 실제로 소실 정정 부호화를 행할 경우의 예를 설명한다. LDPC-CC는 컨볼루션 부호의 일종이 되기 때문에, 높은 소실 정정 능력을 얻기 위해서는, 터미네이션 혹은 테일 바이팅이 필요하다.
이하에서는, 일례로서 실시형태 2에서 설명한 제로 터미네이션(Zero-termination)을 이용하는 경우에 대해서 검토한다. 특히, 터미네이션 계열의 삽입 방법에 대해 설명한다.
정보 비트수를 16384비트라고 하고, 1 패킷을 구성하는 비트수를 512비트라고 한다. 여기서, 부호화율 4/5인 LDPC-CC를 이용해 부호화를 행하는 경우를 생각한다. 이때, 만약, 터미네이션을 행하지 않고, 정보 비트에 대해 부호화율 4/5인 부호화를 행하면, 정보 비트수가 16384비트이므로, 패리티 비트수는, 4096(16384/4) 비트가 된다. 따라서, 1 패킷이 512비트로 구성될 경우(다만, 512비트에는, 오류 검출 부호 등의 정보 이외의 비트가 포함되지 않는 것으로 함.), 40 패킷이 생성된다.
그러나, 이와 같이, 터미네이션을 행하지 않고 부호화를 행하면, 현저하게 소실 정정 능력이 저하되어 버린다. 이 과제를 해결하기 위해서는, 터미네이션 계열을 삽입할 필요가 있다.
그래서, 이하에서는, 패킷을 구성하는 비트수를 고려한 터미네이션 계열 삽입 방법을 제안한다.
구체적으로는, 제안하는 방법에서는, 정보 비트(터미네이션 계열을 포함하지 않음)수, 패리티 비트수, 및 터미네이션 계열의 비트수의 합이, 패킷을 구성하는 비트수의 정수배가 되도록, 터미네이션 계열을 삽입한다. 단, 패킷을 구성하는 비트에는, 오류 검출 부호등의 제어 정보가 포함되지 않고, 패킷을 구성하는 비트수는, 소실 정정 부호화에 관련하는 데이터의 비트수를 의미하고 있다.
따라서, 상술한 예에서는, 512×h비트(h비트는 자연수)의 터미네이션 계열을 부가하게 된다. 이와 같이 하면, 터미네이션 계열을 삽입하는 효과를 얻을 수 있으므로, 높은 소실 정정 능력을 얻을 수 있음과 동시에, 패킷이 효율 좋게 구성되게 된다.
이상으로부터, 부호화율 (n-1)/n인 LDPC-CC를 이용하여, 정보 비트수가(n-1)×c비트일 경우, c비트의 패리티 비트가 얻어진다. 그리고, 제로 터미네이션의 비트수d와, 1 패킷을 구성하는 비트수z의 관계에 대해서 생각한다. 단, 패킷을 구성하는 비트수z에는, 오류 검출 부호 등의 제어 정보가 포함되지 않고, 패킷을 구성하는 비트수z는, 소실 정정 부호화에 관련된 데이터의 비트수를 의미하고 있다.
이때, 제로 터미네이션의 비트수d를, 식(62)가 성립하도록 결정하면, 터미네이션 계열을 삽입하는 효과를 얻을 수 있어, 높은 소실 정정 능력을 얻을 수 있음과 동시에, 패킷이 효율 좋게 구성되게 된다.
Figure pct00074
단, A는 정수라고 한다.
단, (n-1)×c비트의 정보 비트 중에는, 패딩을 행한 더미 데이터(본래의 정보 비트가 아니라, 부호화를 행하기 쉽게 하기 위해 정보 비트에 더한 기지 비트(예를 들면 "0"))가 포함되어 있어도 좋다. 또한, 패딩에 대해서는 후술한다.
소실 정정 부호화를 행할 경우, 도 22로부터 알 수 있는 것처럼, 재배열부(2215)가 존재한다. 재배열부는, 일반적으로 RAM를 이용해 구성된다. 그 때문에, 재배열부(2215)에 있어서, 어떤 정보 비트의 사이즈(정보 사이즈)에 대해서도, 재배열이 대응가능한 하드웨어를 실현하기는 어렵다. 따라서, 재배열부를, 몇 종류의 정보 사이즈에 대해서 재배열 대응 가능하게 하는 것이, 하드웨어 규모의 증대를 억제하기 위해서는 중요해진다.
상술한 소실 정정 부호를 행하는 경우와 소실 정정 부호화를 행하는 경우와 실시하지 않는 경우의 양자를 간단하게 대응할 수 있다. 도 35는, 이러한 경우의 패킷 구성을 나타내고 있다.
소실 정정 부호화를 행하지 않는 경우, 정보 패킷만이 송신되게 된다.
소실 정정 부호화를 행하는 경우, 예를 들면, 이하의 어느 하나의 방법으로 패킷을 송신하는 경우를 생각한다.
<1> 정보 패킷과 패리티 패킷을 구별해서 패킷을 생성하여, 송신한다.
<2> 정보 패킷과 패리티 패킷으로 구별하지 않고 패킷을 생성하여, 송신한다.
이 경우, 하드웨어의 회로 규모의 증대를 억제하기 위해서는, 소실 정정 부호화를 행할 경우와, 행하지 않을 경우에 관계없이 패킷을 구성하는 비트수z를 동일하게 하는 것이 희망된다.
따라서, 소실 정정 부호화시에 이용되는 정보 비트의 수를 I라고 하면, 식(63)이 성립할 필요가 있다. 단, 정보 비트수에 따라서는, 패딩을 행할 필요가 있다.
Figure pct00075
단, α는 정수라고 한다. 또, z는, 패킷을 구성하는 비트수이고, 패킷을 구성하는 비트에는, 오류 검출 부호 등의 제어 정보가 포함되지 않으며, 패킷을 구성하는 비트수z는, 소실 정정 부호화에 관련된 데이터의 비트수를 의미한다.
상기의 경우, 소실 정정 부호화를 행하기 위해 필요하게 되는 정보의 비트수는 α×z비트가 된다. 그러나, 실제로는, 반드시 α×z비트의 정보가, 소실 정정 부호화용으로 모여지는 것은 아니고, α×z비트보다 적은 비트수밖에 정보가 모이지 않는 경우가 있다. 이 경우, 비트수가 α×z비트가 되도록, 더미 데이터를 삽입하는 방법을 취한다. 따라서, 소실 정정 부호화용 정보의 비트수가 α×z비트보다 적은 경우, 비트수가 α×z비트가 되도록 기지의 데이터(예를 들면 「0」)를 삽입한다. 그리고, 이와 같이 생성한 α×z비트의 정보에 대해, 소실 정정 부호화를 행한다.
그리고, 소실 정정 부호화를 행함으로써, 패리티 비트가 얻어진다. 그리고, 높은 소실 정정 능력을 얻기 위해서 제로 터미네이션을 행하는 것으로 한다. 이때, 소실 정정 부호화에 의해 얻어지는 패리티의 비트수를 C, 제로 터미네이션의 비트수를 D라고 하면, 식(64)가 성립하면 패킷이 효율 좋게 구성되게 된다.
Figure pct00076
단, β는 정수로 한다. 또, z는, 패킷을 구성하는 비트수이며, 패킷을 구성하는 비트에는, 오류 검출 부호 등의 제어 정보가 포함되지 않고, 패킷을 구성하는 비트수z는, 소실 정정 부호화에 관련한 데이터의 비트수를 의미한다.
여기서, 패킷을 구성하는 비트수z는, 바이트 단위로 구성하는 일이 많이 있다. 따라서, LDPC-CC의 부호화율이 (n-1)/n인 경우에, 식(65)가 성립한다고 하면, 소실 정정 부호화시, 항상 패딩 비트가 필요하게 되는 등의 상황을 피할 수 있다.
Figure pct00077
여기서, k는 0 이상의 정수
따라서, 복수 부호화율을 실현하는 소실 정정 부호화기를 구성할 때, 서포트하는 부호화율을 R=(n0-1)/n0, (n1-1)/n1, (n2-1)/n2, …, (ni-1)/ni, …, (nv-1)/nv로 하면(i=0, 1, 2, …, v-1, v; v는 1 이상의 정수), 식(66)이 성립한다고 하면, 소실 정정 부호화시, 항상 패딩 비트가 필요하게 되는 등의 상황을 피할 수 있다.
Figure pct00078
여기서, k는 0 이상의 정수
이 조건에 상당하는 조건을, 예를 들면, 도 32의 소실 정정 부호화기의 부호화율에 대해서 생각한 경우, 식(67-1)~(67-3)이 성립한다고 하면, 소실 정정 부호화시, 항상 패딩 비트가 필요하게 되는 등의 상황을 피할 수 있다.
Figure pct00079
여기서, k1, k2, k3은 0 이상의 정수
상기 설명에서는, LDPC-CC의 경우에 대해 설명했지만, 비특허 문헌 1, 비특허 문헌 2, 비특허 문헌 3, 비특허 문헌 7에 나타나 있는 QC-LDPC 부호, 랜덤적인 LDPC 부호 등의 LDPC 부호(LDPC 블록 부호)에 대해서도 마찬가지로 생각할 수 있다. 예를 들면, LDPC 블록 부호를 소실 정정 부호로서 이용하여, 복수 부호화율 R=b0/a0, b1/a1, b2/a2, …, bi/ai, …, bv -1/av -1, bv/av(i=0, 1, 2, …, v-1, v; v는 1 이상의 정수; ai는 1 이상의 정수, bi는 1 이상의 정수 ai≥bi)를 서포트하는 소실 정정 부호화기를 생각한다. 이때, 식(68)이 성립한다고 하면, 소실 정정 부호화시, 항상 패딩 비트가 필요하게 되는 등의 상황을 피할 수 있다.
Figure pct00080
여기서, ki는 0 이상의 정수
또, 정보 비트수, 패리티 비트수, 패킷을 구성하는 비트수의 관계에 대해서, 소실 정정 부호에 LDPC 블록 부호를 이용하는 경우를 생각한다. 이때, 소실 정정 부호화시에 이용되는 정보 비트의 수를 I라고 하면, 식(69)가 성립하면 좋은 것이 된다. 단, 정보 비트의 수에 따라서는, 패딩을 행할 필요가 있다.
Figure pct00081
단, α는 정수로 한다. 또, 패킷을 구성하는 비트수이며, 패킷을 구성하는 비트에는, 오류 검출 부호 등의 제어 정보가 포함되지 않고, 패킷을 구성하는 비트수z는, 소실 정정 부호화에 관련한 데이터의 비트수를 의미한다.
상기의 경우, 소실 정정 부호화를 행하기 위해 필요한 정보의 비트수는 α×z비트가 된다. 그러나, 실제로는, 반드시 α×z비트의 정보가, 소실 정정 부호화용으로 모여지는 것은 아니고, α×z비트보다 적은 비트수밖에 정보가 모이지 않는 경우가 있다. 이 경우, 비트수가 α×z비트가 되도록, 더미 데이터를 삽입하는 방법을 취한다. 따라서, 소실 정정 부호화용 정보의 비트수가 α×z비트보다 적은 경우, 비트수가 α×z비트가 되도록 기지 데이터(예를 들면 「0」)를 삽입한다. 그리고, 이와 같이 생성한 α×z비트의 정보에 대해, 소실 정정 부호화를 행한다.
그리고, 소실 정정 부호화를 행함으로써, 패리티 비트가 얻어진다. 이때, 소실 정정 부호화에 의해 얻어지는 패리티의 비트수를 C라고 하면, ) 식(70)이 성립하면 패킷이 효율 좋게 구성되도록 된다.
Figure pct00082
단, β는 정수로 한다.
또한, 테일 바이팅을 행하는 경우에는, 블록 길이가 정해지게 되므로, LDPC 블록 부호를 소실 정정 부호에 적용했을 때와 동일하게 취급할 수 있다.
(실시형태 6)
본 실시형태에서는, 실시형태 1에서 설명한 「시변 주기가 3보다 큰, 패리티 검사 다항식에 기초하는 LDPC-CC」에 관한 중요한 사항의 설명을 행한다.
1 : LDPC-CC LDPC-CC는, LDPC-BC와 마찬가지로 저밀도 패리티 검사 행렬에 의해 정의되는 부호이며, 무한 길이의 시변 패리티 검사 행렬로 정의할 수 있지만, 실제로는, 주기적 시변 패리티 검사 행렬로 생각할 수 있다.
패리티 검사 행렬을 H라 하고, 신드롬 포머를 HT라 하면, 부호화율 R=d/c(d<c)인 LDPC-CC의 HT는, 식(71)과 같이 나타낼 수 있다.
Figure pct00083
식(71)에 있어서, HT i(t)(i=0, 1, …, ms)는, c×(c-d) 주기 서브행렬이며, 주기를 Ts라고 하면 i, t에 대해서, HT i(t)=HT i(t+Ts)가 성립한다. 또, Ms는 메모리 사이즈가 된다.
식(71)에 의해 정의되는 LDPC-CC는 시변 컨볼루션 부호이며, 이 부호를 시변 LDPC-CC라고 부른다. 복호는, 패리티 검사 행렬 H를 이용하여 BP 복호가 행해진다. 부호화 계열 벡터 u라 하면, 이하의 관계식이 성립한다.
Figure pct00084
그리고, 식(72)의 관계식을 이용해 BP 복호를 행함으로써, 정보 계열이 얻어진다.
2 : 패리티 검사 다항식에 기초한 LDPC-CC
부호화율 R=1/2, 생성 행렬 G=[1 G1(D)/G0(D)]인 조직적 컨볼루션 부호를 생각한다. 이때, G1은 피드포워드 다항식, G0은 피드백 다항식을 나타내고 있다.
정보 계열의 다항식 표현을 X(D), 패리티 계열의 다항식 표현을 P(D)라 하면 0을 만족시키는 패리티 검사 다항식은 이하와 같이 표시된다.
Figure pct00085
여기에서는, 식(73)을 만족시키는 식(74)와 같이 부여한다.
Figure pct00086
식(74)에 있어서, ap, bq는 1 이상의 정수이고(p=1, 2, …, r; q=1, 2, …, s), X(D) 및 P(D)에는 D0의 항이 존재한다. 식(74)의 0을 만족시키는 패리티 검사 다항식에 기초하는 패리티 검사 행렬로 정의되는 부호가 시불변 LDPC-CC가 된다.
식(74)에 기초하는 다른 패리티 검사 다항식을 m개 준비한다(m은 2 이상의 정수). 그 0을 만족시키는 패리티 검사 다항식을 이하와 같이 나타낸다.
Figure pct00087
이때, i=0, 1, …, m-1이다.
그리고, 시점 j에 있어서의 데이터 및 패리티를 Xj, Pj로 나타내고, uj=(Xj, Pj)라고 한다. 그러면, 식(76)의 0을 만족시키는 패리티 검사 다항식이 성립하는 것으로 한다.
Figure pct00088
그러면, 식(76)으로부터 시점 j의 패리티 Pj를 구할 수 있다. 식(76)의 0을 만족시키는 패리티 검사 다항식에 기초하여 생성된 패리티 검사 행렬로 정의되는 부호가 시변 주기 m인 LDPC-CC(TV-m-LDPC-CC : Time-varying LDPC-CC with a time period of m)가 된다.
이때, 식(74)로 정의되는 시불변 LDPC-CC 및 식(76)으로 정의되는 TV-m-LDPC-CC는, P(D)에는 D0의 항이 존재하고, 또 bj는 1 이상의 정수이다. 그 때문에, 순차적으로 패리티를 레지스터 및 배타적 논리합으로 간단하게 구할 수 있다고 하는 특징을 가지게 된다.
복호부는, 시불변 LDPC-CC에서는 식(74)로부터 패리티 검사 행렬 H를 작성하고, TV-m-LDPC-CC에서는 식(76)으로부터 패리티 검사 행렬 H를 작성한다. 그리고, 복호부는, 부호화 계열 u=(u0, u1, …, uj, …)T에 대해서, 식(72)을 이용해 BP 복호를 행하여, 정보 계열을 얻는다.
다음에, 부호화율 (n-1)/n인 시불변 LDPC-CC 및 TV-m-LDPC-CC를 생각한다. 시점 j에 있어서의 정보 계열 X1, X2, …, Xn -1 및 패리티 P를 X2 ,j, …, Xn -1,j 및 Pj라고 나타내고, uj=(X1 ,j, X2 ,j, …, Xn -1,j, Pj)라고 한다. 그리고, 정보 계열 X1, X2, …, Xn -1의 다항식 표현을 X1(D), X2(D), …, Xn - 1(D)라고 하면, 0을 만족시키는 패리티 검사 다항식은 이하와 같이 표시된다.
Figure pct00089
식(77)에 있어서, ap ,i는 1 이상의 정수이고 (p=1, 2, …, n-1; i=1, 2, …, rp), ap ,y≠ap ,z를 만족시키고((y,z) | y, z=1, 2, …, rp, y≠z), 또 b≠bz를 만족시키킨다((y,z) | y, z=1, 2, …, ε, y≠z).
식(77)에 기초하는 다른 패리티 검사 다항식을 m개 준비한다(m은 2 이상의 정수). 그 0을 만족시키는 패리티 검사 다항식을 이하와 같이 나타낸다.
Figure pct00090
이때, i=0, 1, …, m-1이다.
그러면, 시점 j에 있어서의 정보 X1, X2, …, Xn -1 및 패리티 P의 X1 ,j, X2 ,j, …, Xn -1,j 및 Pj에 대해서, 식(79)가 성립하는 것으로 한다.
Figure pct00091
이때, 식(77) 및 식(79)에 기초하는 부호가 부호화율 (n-1)/n인 시불변 LDPC-CC 및 TV-m-LDPC-CC가 된다.
3 : 정칙 TV-m-LDPC-CC
먼저, 본 검토에서 다루는 정칙 TV-m-LDPC-CC에 대해서 설명한다.
구속 길이가 거의 동일할 때, TV3-LDPC-CC가 시변 주기 2인 LDPC-CC(TV2-LDPC-CC)보다 양호한 오류 정정 능력을 얻을 수 있음을 알고 있다. 또, TV3-LDPC-CC를, 정칙(regular) LDPC 부호로 함으로써, 양호한 오류 정정 능력을 얻을 수 있음을 알고 있다. 그래서, 본 검토에서는, 시변 주기 m(m>3)인 정칙 LDPC-CC의 작성을 시도한다.
부호화율 (n-1)/n인 TV-m-LDPC-CC의 #q번째 0을 만족시키는 패리티 검사 다항식을 이하와 같이 부여한다(q=0, 1, …, m-1).
Figure pct00092
식(80)에 있어서, a#q,p,i는 0 이상의 정수이고(p=1, 2, …, n-1; i=1, 2, …, rp), a#q,p,y≠a#q,p,z를 만족시키고((y,z) | y, z=1, 2, …, rp, y≠z), 또 b#q,y≠b#q,z를 만족시킨다((y,z) | y, z=1, 2, …, ε, y≠z).
그러면, 이하와 같은 성질을 가진다.
성질 1 : 패리티 검사 다항식 #α의 Da #α,p, iXp(D)의 항과 패리티 검사 다항식 #β의 Da #β,p, jXp(D)의 항(α, β=0, 1, …, m-1; p=1, 2, …, n-1; i,j=1, 2, …, rp)에 있어서, 또, 패리티 검사 다항식 #α의 Db #α, iP(D)의 항과 패리티 검사 다항식 #β의 Db #β, jP(D)의 항(α, β=0, 1, …, m-1(βα); i,j=1, 2, …, rp)에 있어서, 이하의 관계를 가진다.
<1> β=α일 때 :
{a#α,p,i mod m=a#β,p,j mod m}∩{i≠j}가 성립할 때, 도 36과 같이 패리티 검사 다항식 #α에 상당하는 체크 노드 및 패리티 검사 다항식 #β에 상당하는 체크 노드의 양자(兩者)와 엣지를 형성하는 변수 노드 $1이 존재한다.
{b#α,i mod m=b#β,j mod m}∩{i≠j}가 성립할 때, 도 36과 같이 패리티 검사 다항식 #α에 상당하는 체크 노드 및 패리티 검사 다항식 #β에 상당하는 체크 노드의 양자와 엣지를 형성하는 변수 노드 $1이 존재한다.
<2> β≠α일 때 :
β-α=L라고 한다.
1) a#α,p,i mod m<a#β,p,j mod m일 때
(a#β,p,j mod m)-(a#α,p,i mod m)=L일 때, 도 36과 같이 패리티 검사 다항식 #α에 상당하는 체크 노드 및 패리티 검사 다항식 #β에 상당하는 체크 노드의 양자와 엣지를 형성하는 변수 노드 $1이 존재한다.
2) a#α,p,i mod m>a#β,p,j mod m일 때
(a#β,p,j mod m)-(a#α,p,i mod m)=L+m일 때, 도 36과 같이 패리티 검사 다항식 #α에 상당하는 체크 노드 및 패리티 검사 다항식 #β에 상당하는 체크 노드의 양자와 엣지를 형성하는 변수 노드 $1이 존재한다.
3) b#α,i mod m<b#β,j mod m일 때
(b#β,j mod m)-(b#α,i mod m)=L일 때, 도 36과 같이 패리티 검사 다항식 #α에 상당하는 체크 노드와 패리티 검사 다항식 #β에 상당하는 체크 노드의 양자와 엣지를 형성하는 변수 노드 $1이 존재한다.
4)b#α,i mod m>b#β,j mod m일 때
(b#β,j mod m)-(b#α,i mod m)=L+m일 때, 도 36과 같이 패리티 검사 다항식 #α에 상당하는 체크 노드와 패리티 검사 다항식 #β에 상당하는 체크 노드의 양자와 엣지를 형성하는 변수 노드 $1이 존재한다.
그리고, TV-m-LDPC-CC의 사이클 길이 6(CL6 : cycle length of 6)에 대해서, 정리(定理) 1이 성립한다.
정리 1 : TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식에 있어서, 이하의 2개의 조건을 부여한다.
C#1.1 : a#q,p,i mod m=a#q,p,j mod m=a#q,p,k mod m을 만족하는 p 및 q가 존재한다. 단, i≠j, i≠k, j≠k라고 한다.
C#1.2 : b#q,i mod m=b#q,j mod m=b#q,k mod m을 만족하는 q가 존재한다. 단, i≠j, i≠k, j≠k라고 한다.
C#1.1 또는 C#1.2를 만족했을 때, 적어도 1개의 CL6이 존재한다.
증명 :
p=1, q=0에 있어서, a#0,1,i mod m=a#0,1,j mod m=a#0,1,k mod m일 때 적어도 1개의 CL6이 존재함을 증명할 수 있으면, X2(D), …, Xn -1(D), P(D)에 대해서도, X1(D)를 X2(D), …, Xn -1(D), P(D)에 대체시켜 생각함으로써, q=0일 때, C#1,1, C#1.2가 성립하면, 적어도 1개의 CL6이 존재함을 증명할 수 있다.
또, q=0일 때 상기 설명을 증명할 수 있으면, 동일하게 생각함으로써, 「q=1, …, m-1일 때도 C#1.1, C#1.2가 성립하면, 적어도 1개의 CL6이 존재한다」는 것을 증명할 수 있다.
따라서, p=1, q=0일 때, a#0,1,i mod m=a#0,1,j mod m=a#0,1,k mod m이 성립하면 적어도 1개의 CL6이 존재함을 증명한다.
식(80)의 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식에 대해서, q=0으로 했을 때의 X1(D)에 있어서, 2개 이하의 항이 존재할 경우, C#1.1을 만족시키는 일은 없다.
식(80)의 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식에 대해서, q=0으로 했을 때의 X1(D)에 있어서, 3개의 항이 존재하고 또, a#q,p,i mod m=a#q,p,j mod m=a#q,p,k mod m을 만족한다고 한다면, q=0의 0을 만족시키는 패리티 검사 다항식은, 식(81)과 같이 나타낼 수 있다.
Figure pct00093
여기서, a#0,1,1>a#0,1,2>a#0,1,3이라 하더라도 일반성은 상실되지 않고, γ, δ는 자연수가 된다. 이때, 식(81)에 있어서, q=0일 때, X1(D)에 관한 항, 즉, (Da #0,1,3+mγ+mδ+Da #0,1,3+mδ+Da #0,1,3)X1(D)에 착목한다. 이때, 패리티 검사 행렬 H에 있어서, X1(D)에 관한 부분만을 추출해서 생성되는 서브행렬은, 도 37과 같이 표시된다. 도 37에 있어서, h1 , X1, h2 , X1, …, hm -1, X1은, 각각 식(81)의 0을 만족시키는 패리티 검사 다항식에 있어서, q=1, 2, …, m-1일 때의 X1(D)에 관한 부분만을 추출해서 생성되는 벡터이다.
이때, 도 37과 같은 관계가 성립하는 것은, 성질 1의 <1>이 성립하기 때문이다. 따라서, γ, δ값과 상관없이, 식(81)의 패리티 검사 행렬의 X1(D)에 관한 부분만을 추출해서 생성되는 서브행렬만으로, 도 37에 나타내는 것처럼, △로 나타내는 "1"에 의해 형성되는 CL6이 반드시 발생한다.
X1(D)에 관련된 항이 4개 이상 존재할 경우, 4개 이상의 항 중에서 3개의 항을 선택하고, 선택된 3개의 항에 있어서, a#0,1,i mod m=a#0,1,j mod m=a#0,1,k mod m이 될 경우, 도 37에 나타내는 것처럼, CL6이 형성된다.
이상으로부터, q=0일 때, X1(D)에 대해서, a#0,1,i mod m=a#0,1,j mod m=a#0,1,k mod m이 될 경우, CL6이 존재하게 된다.
또, X2(D), …, Xn -1(D), P(D)에 대해서도, X1(D)에 대체시켜 생각함으로써, C#1.1 또는 C#1.2가 성립했을 경우, CL6이 적어도 1개 발생하게 된다.
또, 마찬가지로 생각함으로써, q=1, …, m-1일 때에 대해서도, C#1.1 또는 C#1.2를 만족했을 때, 적어도 1개의 CL6이 존재한다.
따라서, 식(80)의 0을 만족하는 패리티 검사 다항식에 있어서, C#1.1 또는 C#1.2가 성립했을 경우, CL6이 적어도 1개 발생한다.
(증명 끝)
이후에서 다루는 부호화율 (n-1)/n인 TV-m-LDPC-CC의 #q번째의 0을 만족시키는 패리티 검사 다항식을 식(74)에 기초하여 이하와 같이 부여한다(q=0, …, m-1).
Figure pct00094
여기서, 식(82)에 있어서, X1(D), X2(D), …, Xn -1(D), P(D)에는 각각 3개의 항이 존재하는 것으로 한다.
정리 1로부터, CL6의 발생을 억제하기 위해, 식(82)의 Xq(D)에 있어서, {a#q,p,1 mod m≠a#q,p,2 mod m}∩{a#q,p,1 mod m≠a#q,p,3 mod m}∩{a#q,p,2 mod m≠a#q,p,3 mod m}을 만족시킬 필요가 있다. 마찬가지로 식(82)의 P(D)에 있어서, {b#q,1 mod m≠b#q,2 mod m}∩{b#q,1 mod m≠b#q,3 mod m}∩{b#q,2 mod m≠b#q,3 mod m}을 만족시킬 필요가 있다. 또한, ∩는, 적집합(Intersection)이다.
그리고, 성질 1로부터, 정칙 LDPC 부호가 되기 위한 조건의 일례로서 이하의 조건을 생각한다.
C#2 : q에 있어서, (a#q,p,1 mod m, a#q,p,2 mod m, a#q,p,3 mod m)=(Np ,1, Np ,2, Np,3)∩(b#q,1 mod m, b#q,2 mod m, b#q,3 mod m)=(M1, M2, M3)이 성립한다. 단, {a#q,p,1 mod m≠a#q,p,2 mod m}∩{a#q,p,1 mod m≠a#q,p,3 mod m}∩{a#q,p,2 mod m≠a#q,p,3 mod m} 및 {b#q,1 mod m≠b#q,2 mod m}∩{b#q,1 mod m≠b#q,3 mod m}∩{b#q,2 mod m≠b#q,3 mod m}를 만족시킨다. 또한, q의 는, 전칭기호(universal quantifier)이고, q는, 모든 q를 의미한다.
이후의 논의에서는, C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC를 다룬다.
[정칙 TV-m-LDPC-CC의 부호 설계]
비특허 문헌 13에는, 2원 입력 대상 출력 통신로에 있어서, 일양(一樣) 랜덤의 정칙 LDPC 부호를 최우복호했을 때의 복호 오류율이 표시되어 있고, 일양 랜덤의 정칙 LDPC 부호에 의해 Gallager의 신뢰도 함수(비특허 문헌 14 참조)를 달성할 수 있는 것이 표시되어 있다. 단, BP 복호를 행했을 때에, 일양 랜덤의 정칙 LDPC 부호에 의해 Gallager의 신뢰도 함수를 달성할 수 있을지 어떨지는 불명확하다.
그런데, LDPC-CC는, 컨볼루션 부호의 클래스에 속해 있다. 컨볼루션 부호의 신뢰도 함수에 대해서는, 비특허 문헌 15 및 비특허 문헌 16에 표시되어 있고, 그 신뢰도는 구속 길이에 의존하고 있는 것이 표시되어 있다. LDPC-CC는 컨볼루션 부호이므로, 패리티 검사 행렬에 있어서, 컨볼루션 부호 특유의 구조를 가지지만, 시변 주기를 크게 하면, 패리티 검사 행렬의 「1」이 존재하는 위치가 일양 랜덤에 가까워진다. 단, LDPC-CC는 컨볼루션 부호이기 때문에, 패리티 검사 행렬은 컨볼루션 부호 특유의 구조를 가질 것, 및, 「1」이 존재하는 위치는 구속 길이에 의존하게 된다.
이러한 결과로부터, C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 부호 설계에 관해서 추론#1의 추론을 부여한다.
추론#1 :
BP 복호를 이용했을 때, C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, TV-m-LDPC-CC 시변 주기 m이 커지면, 패리티 검사 행렬에 있어서, 「1」이 존재하는 위치에 대해서, 일양 랜덤에 가까워져, 오류 정정 능력이 높은 부호가 얻어진다.
그리고, 추론#1을 실현하기 위한 방법에 대해 이하에서는 논의를 행한다.
[정칙 TV-m-LDPC-CC의 성질]
본 논의에서 다루는 부호화율 (n-1)/n인 C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 #q번째 0을 만족시키는 패리티 검사 다항식인 식(82)에 관한, 트리를 그렸을 때에 성립되는 성질을 설명한다.
성질 2 :
C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 시변 주기 m이 소수일 경우, X1(D), …, Xn -1(D)의 어느 하나의 항에 착목하여, C#3.1이 성립하는 경우를 생각한다.
C#3.1 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서,q에 대해서, Xp(D)에 있어서 a#q,p,i mod m≠a#q,p,j mod m이 성립한다(q=0, …, m-1). 단, i≠j이다.
C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, C#3.1을 만족시키는 Da #q,p, iXp(D), Da #q,p, jXp(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다.
이때, 성질 1로부터, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q에 대해서, #0부터 #m-1의 모든 패리티 검사 다항식에 상당하는 체크 노드가 존재한다.
마찬가지로, C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 시변 주기 m이 소수인 경우, P(D)항에 착목하여, C#3.2가 성립하는 경우를 생각한다.
C#3.2 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, q에 대해서, P(D)에 있어서 b#q,i mod m≠b#q,j mod m이 성립한다. 단, i≠j이다.
C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, C#3.2를 만족시키는 Db #q, iP(D), Db #q, jP(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다.
이때, 성질 1로부터, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q에 대해서, #0부터 #m-1의 모든 패리티 검사 다항식에 상당하는 체크 노드가 존재한다.
예 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, 시변 주기 m=7(소수)로 하고, q에 대해서, (b#q,1, b#q,2)=(2, 0)가 성립하는 것으로 한다. 따라서, C#3.2를 만족시킨다.
그리고, Db #q,1P(D), Db #q,2P(D)에 대응하는 변수 노드에만 한하여 트리를 그렸을 때, 식(82)의 0을 만족시키는 #0번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리는 도 38과 같이 표시된다. 도 38로부터 알 수 있는 것처럼, 시변 주기 m=7은, 성질 2를 만족시킨다.
성질 3 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 시변 주기 m이 소수가 아닌 경우, X1(D), …, Xn -1(D)의 어느 하나의 항에 착목하여, C#4.1이 성립하는 경우를 생각한다.
C#4.1 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, q에 대해서, Xp(D)에 있어서 a#q,p,i mod m≥a#q,p,j mod m일 때, |a#q,p,i mod m-a#q,p,j mod m|이 m의 1을 제외한 약수이다. 단, i≠j이다.
C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, C#4.1을 만족시키는 Da #q,p, iXp(D), Da #q,p, jXp(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다. 이때, 성질 1로부터, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q에 대해서, #0부터 #m-1의 모든 패리티 검사 다항식에 상당하는 체크 노드는 존재하지 않는다.
마찬가지로, C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 시변 주기 m이 소수가 아닌 경우, P(D)의 항에 착목하여, C#4.2가 성립하는 경우를 생각한다.
C#4.2 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, q에 대해서, P(D)에 있어서 b#q,i mod m≥b#q,j mod m일 때, |b#q,i mod m-b# qj mod m|이 m의 1을 제외한 약수이다. 단, i≠j이다.
C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, C#4.2를 만족시키는 Db #q, iP(D), Db #q, jP(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다. 이때, 성질 1로부터, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q에 대해서, #0부터 #m-1의 패리티 검사 다항식에 상당하는 체크 노드 전부가 존재하는 일은 없다.
예 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, 시변 주기 m=6(소수가 아님)으로 하고, q에 대해서, (b#q,1, b#q,2)=(3, 0)가 성립하는 것으로 한다. 따라서, C#4.2를 만족시킨다.
그리고, Db #q,1P(D), Db #q,2P(D)에 대응하는 변수 노드에만 한하여 트리를 그렸을 때, 식(82)의 0을 만족시키는 #0번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리는 도 39와 같이 표시된다. 도 39로부터 알 수 있는 것처럼, 시변 주기 m=6은, 성질 3을 만족시킨다.
다음에, C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 시변 주기 m이 특히 짝수일 때에 관한 성질을 설명한다.
성질 4 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 시변 주기 m이 짝수일 경우, X1(D), …, Xn -1(D)의 어느 하나의 항에 착목하여, C#5.1이 성립하는 경우를 생각한다.
C#5.1 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, q에 대해서, Xp(D)에 있어서 a#q,p,i mod m≥a#q,p,j mod m일 때, |a#q,p,i mod m-a#q,p,j mod m|이 짝수이다. 단, i≠j이다.
C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, C#5.1을 만족시키는 Da #q,p, iXp(D), Da #q,p, jXp(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다. 이때, 성질 1로부터, 식(82)의 0을 만족시키는 #q번째의 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q가 홀수일 때, 홀수 번째 패리티 검사 다항식에 상당하는 체크 노드밖에 존재하지 않는다. 또, q가 짝수일 때, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, 짝수 번째 패리티 검사 다항식에 상당하는 체크 노드밖에 존재하지 않는다.
마찬가지로, C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 시변 주기 m이 짝수인 경우, P(D)의 항에 착목하여, C#5.2가 성립하는 경우를 생각한다.
C#5.2 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, q에 대해서, P(D)에 있어서 b#q,i mod m≥b#q,j mod m일 때, |b#q,i mod m-b#q,j mod m|이 짝수이다. 단, i≠j이다.
C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, C#5.2를 만족시키는 Db #q, iP(D), Db #q, jP(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다. 이때, 성질 1로부터, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q가 홀수일 때, 홀수 번째 패리티 검사 다항식에 상당하는 체크 노드밖에 존재하지 않는다. 또, q가 짝수일 때, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, 짝수 번째 패리티 검사 다항식에 상당하는 체크 노드밖에 존재하지 않는다.
[정칙 TV-m-LDPC-CC의 설계 방법]
C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 높은 오류 정정 능력을 부여하기 위한 설계 지침을 생각한다. 여기서, C#6.1, C#6.2와 같은 경우를 생각한다.
C#6.1 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, Da #q,p, iXp(D), Da #q,p, jXp(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다(단, i≠j이다). 이때, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q에 대해서, #0부터 #m-1의 패리티 검사 다항식에 상당하는 체크 노드 전부가 존재하는 일은 없다.
C#6.2 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, Db #q, iP(D), Db #q, jP(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다(단, i≠j이다). 이때, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q에 대해서, #0부터 #m-1의 패리티 검사 다항식에 상당하는 체크 노드 전부가 존재하는 일은 없다.
C#6.1, C#6.2와 같은 경우, 「q에 대해서, #0부터 #m-1의 패리티 검사 다항식에 상당하는 체크 노드 전부가 존재하는 일은 없다.」로부터, 추론#1에 있어서의, 시변 주기를 크게 했을 때의 효과는 얻어지지 않는다. 따라서, 상기를 고려하여, 높은 오류 정정 능력을 부여하기 위하여 이하의 설계 지침을 부여한다.
[설계 지침] : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, X1(D), …, Xn -1(D)의 어느 하나의 항에 착목하여, C#7.1의 조건을 부여한다.
C#7.1 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, Da #q,p, iXp(D), Da #q,p, jXp(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다(단, i≠j이다). 이때, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q에 대해서, 트리에는 #0부터 #m-1의 모든 패리티 검사 다항식에 상당하는 체크 노드가 존재한다.
마찬가지로, C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, P(D)의 항에 착목하여, C#7.2의 조건을 부여한다.
C#7.2 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, Db #q, iP(D), Db #q, jP(D)에 대응하는 변수 노드에만 한하여 트리를 그리는 경우를 생각한다(단, i≠j이다). 이때, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, q에 대해서, 트리에는 #0부터 #m-1의 모든 패리티 검사 다항식에 상당하는 체크 노드가 존재한다.
그리고, 본 설계 지침에서는, C#7.1이 (i, j)에서 성립함과 동시에, p에서 성립하고, C#7.2가 (i, j)에서 성립하는 것으로 한다.
그러면, 추론#1을 만족시키는 것이 된다.
다음에, 설계 지침에 관한 정리(定理)에 대해 설명한다.
정리 2 : 설계 지침을 만족시키기 위해서는, a#q,p,i mod m≠a#q,p,j mod m및 b#q,i mod m≠b#q,j mod m을 만족시키지 않으면 안 된다. 단, i≠j이다.
증명 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식의 식(82)에 있어서, Da #q,p, iXp(D), Da #q,p, jXp(D)에 대응하는 변수 노드에만 한하여 트리를 그리면, 정리 2를 만족시켰을 경우, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, #0부터 #m-1의 모든 패리티 검사 다항식에 상당하는 체크 노드가 존재한다. 이것이, 모든 p에 대해서 성립한다.
마찬가지로, C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식의 식(82)에 있어서, Db #q, iP(D), Db #q, jP(D)에 대응하는 변수 노드에만 한하여 트리를 그리면, 정리 2를 만족시켰을 경우, 식(82)의 0을 만족시키는 #q번째 패리티 검사 다항식에 상당하는 체크 노드를 기점으로 하는 트리에는, #0부터 #m-1의 모든 패리티 검사 다항식에 상당하는 체크 노드가 존재한다. 따라서, 정리 2는 증명되었다.
(증명 끝)
정리 3 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC에 있어서, 시변 주기 m이 짝수일 경우, 설계 지침을 만족시키는 부호는 존재하지 않는다.
증명 : C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC의 0을 만족시키는 패리티 검사 다항식(82)에 있어서, p=1로 하여, 설계 지침을 만족시키는 일이 없음을 증명할 수 있으면, 정리 3은 증명된 것이 된다.
따라서, p=1로서 증명을 진행시킨다.
C#2의 조건을 만족하는 정칙 TV-m-LDPC-CC로는, (Np ,1, Np ,2, Np ,3)=("o", "o", "o")∪("o", "o", "e")∪("o", "e", "e")∪("e", "e", "e")가 전부의 경우를 나타낼 수 있다. 단, "o"은 홀수, "e"는 짝수를 나타내고 있다. 따라서, (Np ,1, Np ,2, Np,3)=("o", "o", "o")∪("o", "o", "e")∪("o", "e", "e")∪("e", "e", "e")에 있어서, C#7.1은 만족시키지 않는 것을 나타낸다. 또한, ∪는 합집합(union)이다.
(Np ,1, Np ,2, Np ,3)=("o", "o", "o")일 때, C#5.1에 있어서, i, j=1, 2, 3(i≠j)를 만족시키는 것처럼 (i, j)세트를 어느 값의 경우에도 C#5.1을 만족시킨다.
(Np ,1, Np ,2, Np ,3)=("o", "o", "e")일 때, C#5.1에 있어서, (i, j)=(1, 2)라 하면 C#5.1을 만족시킨다.
(Np ,1, Np ,2, Np ,3)=("o", "e", "e")일 때, C#5.1에 있어서, (i, j)=(2, 3)이라 하면 C#5.1을 만족시킨다.
(Np ,1, Np ,2, Np ,3)= ("e", "e", "e")일 때, C#5.1에 있어서, i, j=1, 2, 3(i≠j)를 만족시키는 것처럼 (i, j)세트를 어느 값일 경우에도 C#5.1을 만족시킨다.
따라서, (Np ,1, Np ,2, Np ,3)= ("o", "o", "o")∪("o", "o", "e")∪("o", "e", "e")∪("e", "e", "e")일 때, C#5.1을 만족시키는 (i, j)세트가 반드시 존재한다.
따라서, 성질 4로부터, 정리 3은 증명되었다.
(증명 끝)
따라서, 설계 지침을 만족시키기 위해서는, 시변 주기 m은 홀수가 아니면 안 된다. 또, 설계 지침을 만족시키기 위해서는, 성질 2 및 성질 3으로부터, 아래와 같이 조건이 유효하다.
ㆍ시변 주기 m이 소수(素數)일 것.
ㆍ시변 주기 m이 홀수이고 또, m의 약수의 수가 적은 것.
특히, 「시변 주기 m이 홀수이고 또, m의 약수의 수가 적은 것」라는 점을 고려하면, 오류 정정 능력이 높은 부호를 얻을 수 있을 가능성이 높은 조건의 예로서 이하가 생각된다.
(1) 시변 주기를 α×β로 한다.
단, α, β는, 1을 제외한 홀수이고 또 소수.
(2) 시변 주기를 αn으로 한다.
다만, α는, 1을 제외한 홀수이고 또, 소수이며, n은 2 이상의 정수.
(3) 시변 주기를 α×β×γ로 한다.
단, α, β, γ는, 1을 제외한 홀수이고 또, 소수.
단, z mod m의 연산(z는 0 이상의 정수)을 행했을 때에 취하는 값은 m개 있고, 따라서, m이 커지면 z mod m의 연산을 행했을 때에 취하는 값의 수는 증가한다. 따라서, m을 증대시키면, 상술한 설계 지침을 만족시키는 일이 용이해진다. 단, 시변 주기 m이 짝수라고 하면 높은 오류 정정 능력을 가지는 부호를 얻지 못한다는 것은 아니다.
4 : 부호 탐색예와 특성 평가
부호 탐색예 :
표 9에, 지금까지 검토해 온 시변 주기 2, 3인 패리티 검사 다항식에 기초하는 LDPC-CC의 예(표 9의 #1, #2)를 나타낸다. 또, 전술한 설계 지침을 만족시키는 시변 주기 11인 정칙 TV11-LDPC-CC의 예(표 9의 #3)를 표 9에 나타낸다. 단, 부호를 탐색할 때에 설정한 부호화율은 R=2/3으로 하고, 최대 구속 길이 Kmax는 600으로 한다.
Figure pct00095
BER 특성의 평가 :
도 40은, AWGN(Additive White Gaussian Noise) 환경에 있어서의 부호화율 R=2/3인 TV2-LDPC-CC(표 9의 #1), 정칙 TV3-LDPC-CC(표 9의 #2), 정칙 TV11-LDPC-CC(표 9의 #3)의 Eb/No(energy per bit-to-noise spectral density ratio)에 대한 BER의 관계(BER 특성)를 나타내는 도면이다. 단, 시뮬레이션에 있어서, 변조 방식은 BPSK(Binary Phase Shift Keying)로 하고, 복호 방법으로서 Normalized BP(1/v=0.75)에 기초하는 BP 복호를 이용하고 있으며, 반복 횟수 I=50으로 한다. 여기서, v는 정규화 계수이다.
도 40에 나타내는 것처럼, Eb/No=2.0 이상에 있어서, 정칙 TV11-LDPC-CC의 BER 특성은, TV2-LDPC-CC, TV3-LDPC-CC의 BER 특성보다 우수한 특성을 나타냄을 알 수 있다.
이상으로부터, 상기 설명에서 논의한 설계 지침에 기초한 시변 주기가 큰 TV-m-LDPC-CC는, TV2-LDPC-CC, TV3-LDPC-CC보다 뛰어난 오류 정정 능력을 얻는 것을 확인할 수 있으며, 상기 설명에서 논의한 설계 지침의 유효성을 확인할 수 있다.
(실시형태 7)
본 실시형태에서는, 실시형태 1에서 설명한 부호화율 (n-1)/n, 시변 주기 h(h는 4 이상의 정수)인 LDPC-CC를 소실 정정 방식에 적용하는 경우에 있어서, 패킷 레이어에서의 소실 정정 부호화 처리부에 있어서의 재배열 방법에 대해서 설명한다. 또한, 본 실시형태에 따른 소실 정정 부호화 처리부의 구성은, 도 22 또는 도 23 등에 나타내는 소실 정정 부호화 처리부와 공통되기 때문에, 도 22 또는 도 23을 원용해서 설명한다.
앞에서 나타낸 도 8은, 실시형태 1에서 설명한 부호화율 (n-1)/n, 시변 주기 m인 LDPC-CC를 이용했을 때의 패리티 검사 행렬의 일례를 나타내고 있다. 부호화율 (n-1)/n, 시변 주기 h의 g번째(g=0, 1, …, h-1)의 패리티 검사 다항식이 식((83)과 같이 표시된다.
Figure pct00096
식(83)에 있어서, a#g,p,1, a#g,p,2는 1 이상의 자연수로 하고, a#g,p,1≠a#g,p,2가 성립하는 것으로 한다. 또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다(g=0, 1, 2, …, h-2, h-1; p=1, 2,…, n-1).
도 8에 나타나 있는 패리티 검사 행렬을 참조하면, 부호화율 (n-1)/n, 시변 주기 h의 g번째(g=0, 1, …, h-1)의 패리티 검사 다항식(83)에 대응하는 패리티 검사 행렬은, 도 41과 같이 표시된다. 이때, 시점 k에 있어서의 정보 X1, X2, …, Xn-1 및 패리티 P를 X1 ,k, X2 ,k, …, Xn -1,k, Pk라고 나타낸다.
도 41에 있어서, 번호 5501이 붙은 부분은, 패리티 검사 행렬의 행의 일부이며, 식(83)의 0번째의 0을 만족시키는 패리티 검사 다항식에 상당하는 벡터이다. 마찬가지로, 번호 5502가 붙은 부분은, 패리티 검사 행렬의 행의 일부이며, 식(83)의 1번째의 0을 만족시키는 패리티 검사 다항식에 상당하는 벡터이다.
그리고, 번호 5503이 붙은 「11111」은, 식(83)의 0번째의 0을 만족시키는 패리티 검사 다항식의 X1(D), X2(D), X3(D), X4(D), P(D)의 항에 상당하는 것이다. 그리고, 시점 k에 있어서의 X1 ,k, X2 ,k, …, Xn -1,k, Pk와 대조했을 경우, 번호 5510의 「1」은 X1 ,k, 번호 5511의 「1」은 X2 ,k, 번호 5512의 「1」은 X3 ,k, 번호 5513의 「1」은 X4 ,k, 번호 5514의 「1」은 Pk에 대응하는 것이 된다(식(60) 참조).
마찬가지로, 번호 5504가 붙은 「11111」은, 식(83)의 1번째의 0을 만족시키는 패리티 검사 다항식의 X1(D), X2(D), X3(D), X4(D), P(D)의 항에 상당하는 것이다. 그리고, 시점 k+1에 있어서의 X1 ,k+1, X2 ,k+1, …, Xn -1,k+1, Pk +1과 대조했을 경우, 번호 5515의 「1」은 X1 ,k+1, 번호 5516의 「1」은 X2 ,k+1, 번호 5517의 「1」은 X3 ,k+1, 번호 5518의 「1」은 X4 ,k+1, 번호 5519의 「1」은 Pk +1에 대응하는 것이 된다(식(60) 참조).
다음에, 정보 패킷과 패리티 패킷이 따로 따로 구성될 경우(도 22 참조)에 있어서의 정보 패킷의 정보 비트의 재배열 방법에 대해서, 도 42를 이용해 설명한다.
도 42는, 정보 패킷과 패리티 패킷이 따로 따로 구성되는 경우의 재배열 패턴의 일례를 나타내는 도면이다.
패턴 $1은 소실 정정 능력이 낮은 패턴예를 나타내고, 패턴 $2는 소실 정정 능력이 높은 패턴예를 나타내고 있다. 도 42에 있어서, #Z는, Z번째의 패킷 데이터임을 나타내고 있다.
패턴 $1에서는, 시점 k의 X1 ,k, X2 ,k, X3 ,k, X4 ,k에 있어서, X1 ,k 및 X4 ,k가 동일한 패킷(패킷#1)의 데이터로 되어 있다. 마찬가지로, 시점 k+1에 있어서도, X3 ,k+1 및 X4 ,k+1이 동일한 패킷(패킷#2)의 데이터로 되어 있다. 이때, 예를 들면, 패킷#1을 소실(로스 : loss)했을 경우, BP 복호에 있어서의 행 연산에 의해 소실 비트(X1,k 및 X4,k)를 복원하는 것은 곤란하다. 마찬가지로, 패킷#2를 소실(로스 : loss)했을 경우, BP 복호에 있어서의 행 연산에 의해 소실 비트(X3 ,k+1 및 X4 ,k+1)를 복원하는 것은 곤란하다. 이상의 점에서, 패턴 $1은 소실 정정 능력이 낮은 패턴예라고 할 수 있다.
한편, 패턴 $2에서는, 모든 시점 k에 있어서, X1 ,k, X2 ,k, X3 ,k, X4 ,k에 있어서, X1,k, X2 ,k, X3 ,k, X4 ,k는, 다른 패킷 번호의 데이터로 구성되어 있는 것으로 한다. 이때, BP 복호에 있어서의 행 연산에 의해, 소실 비트를 복원할 수 있을 가능성이 높아지므로, 패턴 $2는 소실 정정 능력이 높은 패턴의 예라고 할 수 있다.
이와 같이, 정보 패킷과 패리티 패킷이 따로 따로 구성될 경우(도 22 참조), 재배열부(2215)는, 재배열 패턴을 상술과 같은 패턴 $2로 하면 되는 것이 된다. 즉, 재배열부(2215)는, 정보 패킷 2243(정보 패킷#1~#n)이 입력되면, 전부의 시점 k에 있어서, X1 ,k, X2 ,k, X3 ,k, X4 ,k가, 다른 패킷 번호의 데이터가 할당되도록, 정보의 차례를 재배열하게 하면 좋다.
다음에, 정보 패킷과 패리티 패킷이 구별 없이 구성될 경우(도 23 참조)에 있어서의 정보 패킷의 정보 비트의 재배열 방법에 대해, 도 43을 이용해 설명한다.
도 43은, 정보 패킷과 패리티 패킷의 구별 없이 구성될 경우의 재배열 패턴의 일례를 나타내는 도면이다.
패턴 $1에서는, 시점 k의 X1 ,k, X2 ,k, X3 ,k, X4 ,k, Pk에 있어서, X1 ,k 및 Pk가 동일한 패킷의 데이터로 되어 있다. 마찬가지로, 시점 k+1에 있어서도, X3 ,k+1 및 X4,k+1이 동일한 패킷의 데이터로 되어 있고, 시점 k+2에 있어서도, X2 ,k+2 및 Pk +2가 동일한 패킷의 데이터로 되어 있다.
이때, 예를 들면, 패킷#1을 로스했을 경우, BP 복호에 있어서의 행 연산에 의해 소실 비트(X1 ,k 및 Pk)를 복원하는 것은 곤란하다. 마찬가지로, 패킷#2를 로스했을 경우, BP 복호에 있어서의 행 연산에 의해 소실 비트(X3 ,k+1 및 X4 ,k+1)를 복원할 수는 없고, 또, 패킷#5를 로스했을 경우, BP 복호에 있어서의 행 연산에 의해 소실 비트(X2 ,k+2 및 Pk +2)를 복원하는 것은 곤란하다. 이상의 점에서, 패턴 $1은 소실 정정 능력이 낮은 패턴예라고 할 수 있다.
한편, 패턴 $2에서는, 모든 시점 k에 있어서, X1 ,k, X2 ,k, X3 ,k, X4 ,k, Pk에 있어서, X1 ,k, X2 ,k, X3 ,k, X4 ,k, Pk는, 다른 패킷 번호의 데이터로 구성되어 있는 것으로 한다. 이때, BP 복호에 있어서의 행 연산에 의해, 소실 비트를 복원할 수 있을 가능성이 높아지므로, 패턴 $2는 소실 정정 능력이 높은 패턴의 예라고 할 수 있다.
이와 같이, 정보 패킷과 패리티 패킷이 구별 없이 구성될 경우(도 23 참조), 소실 정정 부호화부(2314)는, 재배열 패턴을 상술과 같은 패턴 $2로 하면 좋다. 즉, 소실 정정 부호화부(2314)는, 모든 시점 k에 있어서, 정보 X1 ,k, X2 ,k, X3 ,k, X4 ,k 및 패리티 Pk가, 패킷 번호가 다른 패킷에 할당되도록, 정보 및 패리티를 재배열 하도록 하면 좋다.
이상과 같이, 본 실시형태에서는, 실시형태 1에서 설명한 부호화율 (n-1)/n, 시변 주기 h(h는 4 이상의 정수)인 LDPC-CC를 소실 정정 방식에 적용하는 경우에 있어서, 패킷 레이어에서의 소실 정정 부호화부에 있어서의 재배열 방법으로서 소실 정정 능력을 향상시키기 위한 구체적인 구성에 대해서 제안했다. 단, 시변 주기 h는, 4 이상에 한하는 것은 아니고, 시변 주기가 2, 3인 경우에 있어서도, 동일한 재배열을 행함으로써, 소실 정정 능력을 향상시킬 수 있다.
(실시형태 8)
본 실시형태에서는, 물리층보다 상위의 층에 있어서의 부호화 방법(패킷 레벨로의 부호화 방법)의 상세한 것에 대하여 설명한다.
도 44는, 물리층보다 상위의 층에 있어서의 부호화 방법의 일례를 나타내고 있다. 도 44에 있어서, 오류 정정 부호의 부호화율은 2/3로 하고, 1 패킷에 있어서의 제어 정보, 오류 검출 부호등의 용장(長)한 정보를 제외한 데이터 사이즈를 512비트로 한다.
도 44에 있어서, 물리층보다 상위의 층에 있어서의 부호화(패킷 레벨로의 부호화)를 행하는 부호화기에서는, 정보 패킷#1부터 #8에 대해서, 재배열 후에, 부호화가 행해져, 패리티 비트가 구해진다. 그리고, 부호화기는, 구해진 패리티 비트를 512비트 묶어, 1개의 패리티 패킷을 구성한다. 여기에서는, 부호화기가 서포트하는 부호화율이 2/3이므로, 패리티 패킷이 4개, 즉, 패리티 패킷#1부터 #4가 생성된다. 따라서, 다른 실시형태에서 설명한 정보 패킷은, 도 44의 정보 패킷#1부터 #8에 상당하고, 패리티 패킷은, 도 44의 패리티 패킷#1에서 #4에 상당한다.
또한, 패리티 패킷 사이즈의 간단한 설정 방법으로서는, 패리티 패킷의 사이즈와 정보 패킷의 사이즈를 동일 사이즈로 하는 방법이 있다.
단, 이들 사이즈가 동일하지 않아도 좋다.
도 45는, 도 44와는 다른 물리층보다 상위 층에 있어서의 부호화 방법의 일례를 나타내고 있다. 도 45에 있어서, 정보 패킷#1부터 #512는 원본(元)이 되는 정보 패킷이며, 1 패킷에 있어서의 제어 정보, 오류 검출 부호 등의 용장한 정보를 제외한 데이터 사이즈를 512비트로 한다. 그리고, 부호화기는, 정보 패킷#k(k=1, 2, …, 511, 512)를 8 분할하여, 서브 정보 패킷#k-1, #k-2, …, #k-8을 생성한다.
그리고, 부호화기는, 서브 정보 패킷 #1-n, #2-n, #3-n, …, #511-n, #512-n(n=1, 2, 3, 4, 5, 6, 7, 8)에 대해서 부호화를 실시하여, 패리티군#n을 형성한다. 그리고, 도 46과 같이, 패리티군#n을 m개로 분할하여, (서브) 패리티 패킷#n-1, #n-2, …, #n-m이 구성된다.
따라서, 실시형태 5에서 설명한 정보 패킷은, 도 45의 정보 패킷#1부터 #512에 상당하고, 패리티 패킷은, 도 37의 (서브) 패리티 패킷#n-1, #n-2, …, #n-m(n=1, 2, 3, 4, 5, 6, 7, 8)이 된다. 이때 정보 패킷의 1패킷은 512비트가 되고, 패리티 패킷의 1패킷은 반드시 512비트일 필요는 없다. 즉, 정보 패킷의 1 패킷과 패리티 패킷의 1 패킷이 반드시 동일 사이즈일 필요는 없다.
또한, 부호화기는, 정보 패킷을 분할함으로써 얻어진 서브 정보 패킷 자신을, 정보 패킷의 1패킷으로 간주해도 좋다.
다른 방법으로서 실시형태 5에서 설명한 정보 패킷을, 본 실시형태에서 설명한 서브 정보 패킷 #k-1, #k-2, …, #k-8(k=1, 2, …, 511, 512)로서 생각해도, 실시형태 5는 실시할 수 있다. 특히, 실시형태 5에서는, 터미네이션 계열의 삽입 방법, 패킷의 구성 방법에 대해서 설명했다. 여기서, 본 실시형태의 「서브 정보 패킷」, 「서브 패리티 패킷」을, 각각, 실시형태 5에서 설명하고 있는 「서브 정보 패킷」, 「패리티 패킷」이라고 생각해도, 실시형태 5는 실시할 수 있다. 단, 서브 정보 패킷을 구성하는 비트수와 서브 패리티 패킷을 구성하는 비트수가 동일하면 실시하기 쉽다.
실시형태 5에 있어서, 정보 패킷에는 정보 이외의 데이터(예를 들면, 오류 검출 부호)가 부가되게 된다. 또, 실시형태 5에 있어서, 패리티 패킷에는 패리티 비트 이외의 데이터가 부가되게 된다. 그러나, 이 정보 비트 및 패리티 비트 이외의 데이터를 포함하지 않고, 정보 패킷 중 정보 비트의 비트수에 관한 경우에 적용한 경우, 또, 패리티 패킷 중 패리티 비트의 비트수에 관한 경우에 적용했을 경우, 식(62)~식(70)에 나타내는 터미네이션에 관한 조건은, 중요한 조건이 된다.
(실시형태 9)
실시형태 1에서는, 특성이 양호한 LDPC-CC에 대해 설명했다. 본 실시형태에서는, 실시형태 1에서 설명한 LDPC-CC를 물리층에 적용할 경우에, 부호화율을 가변으로 하는 쇼트닝 방법에 대해서 설명한다. 쇼트닝이란, 제 1 부호화율의 부호로부터 제 2 부호화율(제 1 부호화율>제 2 부호화율)의 부호를 생성하는 것을 말한다.
이하에서는, 일례로서 실시형태 1에서 설명한 부호화율 1/2, 시변 주기 h(h는 4 이상의 정수)인 패리티 검사 다항식에 기초하는 LDPC-CC로부터 부호화율 1/3인 LDPC-CC를 생성하는 쇼트닝 방법에 대해서 설명한다.
부호화율 1/2, 시변 주기 h의 g번째(g=0, 1, …, h-1)의 패리티 검사 다항식이 식(84)과 같이 표시되는 경우에 대해서 생각한다.
Figure pct00097
식(84)에 있어서, a#g,1,1, a#g,1,2는 1 이상의 자연수로 하고, a#g,1,1≠a#g,1,2가 성립하는 것으로 한다. 또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다(g=0, 1, 2, …, h-2, h-1).
그리고, 식(84)은, 이하의 <조건#17>을 만족시키고 있는 것으로 한다.
<조건#17>
「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=…=a#g,1,1%h=…=a#h-2,1,1%h=a#h-1,1,1%h=vp=1(vp=1 : 고정값)」
「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=…=b#g,1%h=…=b#h-2,1%h=b#h-1,1%h=w(w : 고정값)」
「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=…=a#g,1,2%h=…=a#h-2,1,2%h=a#h-1,1,2%h=yp=1(yp=1 : 고정값)」
「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=…=b#g,2%h=…=b#h-2,2%h=b#h-1,2%h=z(z : 고정값)」
그리고, 실시형태 4와 같이 패리티 검사 행렬을 작성했을 경우, 시간 i에 있어서의 정보를 Xi라 하고, 패리티를 Pi라 하면, 부호어 w는, w=(X0, P0, X1, P1, …, Xi, Pi, …)T로 표시된다.
이때, 본 실시형태에 있어서의 쇼트닝 방법에서는, 이하와 같은 방법을 취한다.
[방법#1-1]
방법#1-1에서는, 정보 X에 규칙적으로 기지 정보(예를 들면, 제로)를 삽입한다(방법#1-1의 삽입 룰). 예를 들면, 정보 2hk(=2×h×k) 비트 중 hk(=h×k) 비트에는 기지 정보를 삽입하고(삽입 단계), 기지 정보를 포함한 2hk비트의 정보에 대해서는, 부호화율 1/2의 LDPC-CC를 이용해 부호화를 행한다. 이것에 의해, 2hk비트의 패리티가 생성된다(부호화 단계). 이때, 정보 2hk비트 중 hk비트의 기지 정보는, 송신하지 않는 비트로 한다(송신 단계). 이것에 의해, 부호화율 1/3을 실현할 수 있다.
또한, 기지 정보는, 제로에 한하지 않고, 1이라도, 또는, 미리 정한 1 이외의 값이라도 좋으며, 통신 상대의 통신 장치에 미리 통지하거나, 또는, 사양으로서 결정되어 있으면 좋다.
이하에는, 방법#1-1의 삽입 룰과의 차이를 주로 기재한다.
[방법#1-2]
방법#1-2에서는, 방법#1-1과 달리, 도 47에 나타내는 것처럼, 정보 및 패리티로 구성되는 2×h×2k비트를 1 주기로 하여, 각 주기에 있어서, 기지 정보를 동일한 위치에 삽입한다(방법#1-2의 삽입 룰).
도 48을 예로 이용하여, 기지 정보의 삽입 규칙(방법#1-2의 삽입 룰)에 대해서, 방법#1-1과의 차이에 대해서 설명한다.
도 48에는, 시변 주기가 4일 때, 정보 및 패리티로 구성되는 16비트를 1주기로 했을 경우의 예를 나타내고 있다. 이때, 방법 #1-2에서는, 최초의 1주기에 있어서, X0, X2, X4, X5에 기지 정보(예를 들면, 제로(1도 좋고, 미리 정한 값도 좋다))를 삽입한다.
또, 방법#1-2에서는, 다음의 1 주기에서는, X8, X10, X12, X13에 기지 정보(예를 들면, 제로(1도 좋고, 미리 정한 값도 좋다))를 삽입하고, …, i번째의 1 주기에서는, X8i, X8i+2, X8i+4, X8i+5에 기지 정보를 삽입한다. i번째 이후에 대해서도, 마찬가지로, 방법#1-2에서는, 각 주기에 있어서, 기지 정보가 삽입되는 위치를 동일하게 한다.
다음에, 방법#1-2에서는, [방법#1-1]과 마찬가지로, 예를 들면, 정보 2hk비트 중 hk비트에 기지 정보를 삽입하고, 기지 정보를 포함한 2hk비트의 정보에 대해 부호화율 1/2의 LDPC-CC를 이용해 부호화를 행한다. 이것에 의해, 2hk비트의 패리티가 생성된다. 이때, hk비트의 기지 정보를 송신하지 않는 비트로 하면, 부호화율 1/3을 실현할 수 있다.
이하, 기지 정보를 삽입하는 위치와 오류 정정 능력의 관계는, 예로서 도 49를 이용하여 설명한다.
도 49는, 검사 행렬 H의 일부와 부호어 w(X0, P0, X1, P1, X2, P2, …, X9, P9)의 대응 관계를 나타내고 있다. 도 49의 행 4001에서는, X2 및 X4에 대응하는 열에 요소 "1"이 배치되어 있다. 또, 도 49의 행 4002에서는, X2 및 X9에 대응하는 열에 요소 "1"이 배치되어 있다. 따라서, X2, X4, X9에 기지 정보를 삽입하면, 행 4001 및 행 4002에서는, 요소가 "1"이 되는 열에 대응하는 모든 정보가 기지(旣知)가 된다. 그 때문에, 행 4001및 행 4002에서는, 미지의 값은 패리티뿐이므로, BP 복호의 행 연산에 있어서, 신뢰성이 높은 대수 우도비의 갱신을 행할 수 있게 된다.
즉, 기지 정보를 삽입함으로써, 원래의 부호화율보다 작은 부호화율을 실현할 경우, 검사 행렬에 있어서의 각 행, 즉, 패리티 검사 다항식에 있어서, 패리티와 정보 중, 정보에 있어서, 전부 기지 정보인 행, 또는, 기지 정보의 수가 많은 행(예를 들면, 1비트 이외는 기지 정보)을 많게 하는 것이, 높은 오류 정정 능력을 얻는데 중요하게 된다.
시변 LDPC-CC의 경우에는, 패리티 검사 행렬 H에 있어서, 요소 "1"이 배치되는 패턴에 규칙성이 있다. 그 때문에, 패리티 검사 행렬 H에 기초하여, 각 주기에 있어서, 기지 정보를 규칙적으로 삽입함으로써, 미지의 값이 패리티뿐인 행, 또는, 패리티 및 정보가 미지일 경우에, 미지인 정보의 비트수가 적은 행을 많게 할 수 있다. 이 결과, 양호한 특성을 부여하는 부호화율 1/3의 LDPC-CC를 얻을 수 있다.
이하의 [방법#1-3]에 의하면, 실시형태 1에서 설명한 특성이 양호한 부호화율 1/2, 시변 주기 h(h는 4 이상의 정수)인 LDPC-CC로부터, 오류 정정 능력이 높은, 부호화율 1/3, 시변 주기 h인 LDPC-CC를 실현할 수가 있다.
[방법#1-3]
방법#1-3에서는, 정보 및 패리티로 구성되는 2×h×2k비트의 주기(패리티가 포함되어 있으므로)에 있어서, 정보 X2hi, X2hi +1, X2hi +2, …, X2hi +2h-1, …, X2h (i+k-1), X2h(i+k-1)+1, X2h (i+k-1)+2, …, X2h (i+k-1)+2h-1의 2×h×k비트 중, h×k개의 Xj에, 기지 정보(예를 들면, 제로)를 삽입한다.
단, j는, 2hi~2h(i+k-1)+2h-1의 어느 하나의 값을 취하고, h×k개의 다른 값이 존재한다. 또, 기지 정보는, 1도 좋고, 미리 정한 값도 좋다.
이때, h×k개의 Xj에 기지 정보를 삽입하는 경우에, 다른 h×k개의 j를 h로 나눗셈한 나머지 중, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차(差)는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =1+γ) mod h (단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp =1+γ) mod h (단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다. (vp =1, yp =1에 대해서는 <조건#7-1>, <조건#7-2>참조.) 이러한 γ가 적어도 1개 존재한다.
이와 같이 하여, 기지 정보를 삽입하는 위치에 조건을 마련함으로써, 패리티 검사 행렬 H의 각 행에 있어서, 즉, 패리티 검사 다항식에 있어서, 정보가 모두 기지 정보가 되는 행, 또는, 기지 정보의 수가 많은 행(예를 들면, 1비트 이외는 기지 정보)을 가능한 한 많게 할 수 있게 된다.
상기에서 설명한 시변 주기 h의 LDPC-CC는, <조건#17>을 만족시키고 있다. 이때, g번째(g=0, 1, …, h-1)의 패리티 검사 다항식은 식(84)와 같이 표시되므로, 패리티 검사 행렬 내의 식(84)의 패리티 검사 다항식에 대응하는 서브행렬(벡터)은, 도 50과 같이 표시된다.
도 50에 있어서, 번호 4101의 「1」은 Da #g,1,1X1(D)에 대응한다. 또, 번호 4102의 「1」은 Da #g,1,2X1(D)에 대응한다. 또, 번호 4103의 「1」은 X1(D)에 대응한다. 또, 번호 4104는 P(D)에 대응한다.
이때, 번호 4103의 「1」의 시점을 j라고 하여 Xj라고 나타내면, 번호 4101의 「1」은 Xj-a#g,1,1이라고 표시되고, 번호 4102의 「1」은 Xj-a#g,1,2라고 표시된다.
따라서, j를 기준 위치로서 생각하면, 번호 4101의 「1」은 vp =1의 배수의 위치에 있고, 번호4102의 「1」은 yp =1의 배수의 위치에 있다. 또, 이것은, g에 의존하지 않는다.
이것을 고려하면, 이하의 것을 말할 수 있다. 즉, 「기지 정보를 삽입하는 위치에 조건을 마련함으로써, 패리티 검사 행렬 H의 각 행에 있어서, 즉, 패리티 검사 다항식에 있어서, 정보가 전부 기지 정보가 되는 행, 또는, 기지 정보의 수가 많은 행(예를 들면, 1비트 이외는 기지 정보)을 가능한 한 많게」 하기 위해서는, [방법#1-3]은 중요한 요건의 하나가 된다.
예로서 시변 주기 h=4라 하고, vp =1=1, yp =1=2인 것으로 한다. 도 48에 있어서, 4×2×2×1비트(즉 k=1)를 1 주기로 하고, 정보 및 패리티 X8i , P8i , X8i +1, P8i +1, X8i+2, P8i +2, X8i +3, P8i +3, X8i +4, P8i +4, X8i +5, P8i +5, X8i +6, P8i +6, X8i +7, P8i +7 중, X8i , X8i +2, X8i +4, X8i +5에 기지 정보(예를 들면, 제로(1도 좋고, 미리 정한 값도 좋다))를 삽입하는 경우에 대해 생각한다.
이 경우, 기지 정보를 삽입한 Xj의 j로서는, 8i, 8i+2, 8i+4, 8i+5의 4개의 다른 값이 존재한다. 이때, 8i를 4로 나눗셈한 나머지는 0이 되고, 8i+2를 4로 나눗셈한 나머지는 2가 되고, 8i+4를 4로 나눗셈한 나머지는 0이 되고, 8i+5를 4로 나눗셈한 나머지는 1이 된다. 따라서, 나머지가 0이 되는 개수가 2개가 되고, 나머지가 vp =1=1이 되는 개수가 1개가 되고, 나머지가 yp =1=2가 되는 개수가 1개가 되어, 상기 [방법#1-3]의 삽입 룰이 만족된다(단, γ=0이 된다.). 따라서, 도 48에 나타내는 예는, 상기 [방법#1-3]의 삽입 룰을 만족시키는 일례라고 할 수 있다.
[방법#1-3]보다 엄격한 조건으로서 이하의 [방법#1-3′]을 부여할 수 있다.
[방법#1-3′]
방법#1-3′에서는, 정보 및 패리티로 구성되는 2×h×2k비트의 주기(패리티가 포함되어 있으므로)에 있어서, 정보 X2hi, X2hi +1, X2hi +2, …, X2hi +2h-1, …, X2h (i+k-1), X2h(i+k-1)+1, X2h (i+k-1)+2, …, X2h (i+k-1)+2h-1의 2×h×k비트 중, h×k개의 Xj에, 기지 정보(예를 들면, 제로)를 삽입한다. 단, j는, 2hi~2h(i+k-1)+2h-1의 어느 하나의 값을 취하고, h×k개의 다른 값이 존재한다. 또, 기지 정보는, 1도 좋고, 미리 정한 값도 좋다.
이때, h×k개의 Xj에 기지 정보를 삽입하는 경우에, 다른 h×k개의 j를 h로 나눗셈한 나머지 중, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp=1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다.(vp =1, yp =1에 대해서는 <조건#7-1>, <조건#7-2> 참조.) 이러한 γ가 적어도 1개 존재한다.
상기를 만족시키지 않는 γ로는, 「나머지가 (0+γ) mod h가 되는 개수」, 「나머지가 (vp =1+γ) mod h가 되는 개수」, 「나머지가 (yp =1+γ) mod h가 되는 개수」는 제로가 된다.
또, [방법#1-3]을 보다 효과적으로 실시하기 위해서는, 상술한 시변 주기 h의 <조건#17>의 패리티 검사 다항식에 기초하는 LDPC-CC에 있어서, 이하의 3개의 어느 하나의 조건을 만족시키면 좋다(방법#1-3′의 삽입 룰). 단, <조건#17>에 있어서, vp =1<yp =1이라고 한다.
yp =1-vp =1=vp =1-0 즉 yp =1=2×vp =1
vp =1-0=h-yp =1 즉 vp =1=h-yp =1
h-yp =1=yp =1-vp =1 즉 h=2×yp =1-vp =1
이 조건을 부가하면, 기지 정보를 삽입하는 위치에 조건을 마련함으로써, 패리티 검사 행렬 H의 각 행에 있어서, 즉, 패리티 검사 다항식에 있어서, 정보가 모두 기지 정보가 되는 행, 또는, 기지 정보의 수가 많은 행(예를 들면, 1비트 이외는 기지 정보)을 가능한 한 많게 할 수 있게 된다. 이것은, LDPC-CC는 특유의 패리티 검사 행렬의 구성을 가지기 때문이다.
다음에, 실시형태 1에서 설명한 부호화율 (n-1)/n(n은 2 이상의 정수), 시변 주기 h(h는 4 이상의 정수)인 LDPC-CC로부터 부호화율 (n-1)/n보다 작은 부호화율을 실현하는 쇼트닝 방법에 대해 설명한다.
부호화율 (n-1)/n, 시변 주기 h인 g번째(g=0, 1, …, h-1)의 패리티 검사 다항식이 식(85)과 같이 표시되는 경우에 대해 생각한다.
Figure pct00098
식(85)에 있어서, a#g,p,1, a#g,p,2는 1 이상의 자연수로 하고, a#g,p,1≠a#g,p,2가 성립하는 것으로 한다. 또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다(g=0, 1, 2, …, h-2, h-1; p=1, 2, …, n-1).
그리고, 식(85)에 있어서, 이하의 <조건#18-1>, <조건#18-2>를 만족시키고 있는 것으로 한다.
<조건#18-1>
「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=…=a#g,1,1%h=…=a#h-2,1,1%h=a#h-1,1,1%h=vp=1(vp=1 : 고정값)」
「a#0,2,1%h=a#1,2,1%h=a#2,2,1%h=a#3,2,1%h=…=a#g,2,1%h=…=a#h-2,2,1%h=a#h-1,2,1%h=vp=2(vp=2 : 고정값)」
「a#0,3,1%h=a#1,3,1%h=a#2,3,1%h=a#3,3,1%h=…=a#g,3,1%h=…=a#h-2,3,1%h=a#h-1,3,1%h=vp=3(vp=3 : 고정값)」
「a#0,4,1%h=a#1,4,1%h=a#2,4,1%h=a#3,4,1%h=…=a#g,4,1%h=…=a#h-2,4,1%h=a#h-1,4,1%h=vp=4(vp=4 : 고정값)」
「a#0,k,1%h=a#1,k,1%h=a#2,k,1%h=a#3,k,1%h=…=a#g,k,1%h=…=a#h-2,k,1%h=a#h-1,k,1%h=vp=k(vp=k : 고정값)
(따라서, k=1, 2,…, n-1이 된다)
「a#0,n-2,1%h=a#1,n-2,1%h=a#2,n-2,1%h=a#3,n-2,1%h=…=a#g,n-2,1%h=…=a#h-2,n-2,1%h=a#h-1,n-2,1%h=vp =n-2(vp =n-2 : 고정값)」
「a#0,n-1,1%h=a#1,n-1,1%h=a#2,n-1,1%h=a#3,n-1,1%h=…=a#g,n-1,1%h=…=a#h-2,n-1,1%h=a#h-1,n-1,1%h=vp =n-1(vp =n-1 : 고정값)」
및,
「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=…=b#g,1%h=…=b#h-2,1%h=b#h-1,1%h=w(w : 고정값)」
<조건#18-2>
「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=…=a#g,1,2%h=…=a#h-2,1,2%h=a#h-1,1,2%h=yp=1(yp=1 : 고정값)」
「a#0,2,2%h=a#1,2,2%h=a#2,2,2%h=a#3,2,2%h=…=a#g,2,2%h=…=a#h-2,2,2%h=a#h-1,2,2%h=yp=2(yp=2 : 고정값)」
「a#0,3,2%h=a#1,3,2%h=a#2,3,2%h=a#3,3,2%h=…=a#g,3,2%h=…=a#h-2,3,2%h=a#h-1,3,2%h=yp=3(yp=3 : 고정값)」
「a#0,4,2%h=a#1,4,2%h=a#2,4,2%h=a#3,4,2%h=…=a#g,4,2%h=…=a#h-2,4,2%h=a#h-1,4,2%h=yp=4(yp=4 : 고정값」
「a#0,k,2%h=a#1,k,2%h=a#2,k,2%h=a#3,k,2%h=…=a#g,k,2%h=…=a#h-2,k,2%h=a#h-1,k,2%h=yp=k(yp=k : 고정값)
(따라서, k=1, 2,…, n-1이 된다.)」
「a#0,n-2,2%h=a#1,n-2,2%h=a#2,n-2,2%h=a#3,n-2,2%h=…=a#g,n-2,2%h=…=a#h-2,n-2,2%h=a#h-1,n-2,2%h=yp =n-2(yp =n-2 : 고정값)」
「a#0,n-1,2%h=a#1,n-1,2%h=a#2,n-1,2%h=a#3,n-1,2%h=…=a#g,n-1,2%h=…=a#h-2,n-1,2%h=a#h-1,n-1,2%h=yp =n-1(yp =n-1 : 고정값)」
및,
「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=…=b#g,2%h=…=b#h-2,2%h=b#h-1,2%h=z(z : 고정값)」
상기에서 설명한 부호화율 (n-1)/n, 시변 주기 h인 LDPC-CC를 이용해 오류 정정 능력이 높은 부호화율 (n-1)/n보다 작은 부호화율을 실현하는 쇼트닝 방법은, 이하와 같다.
[방법#2-1]
방법#2-1에서는, 정보 X에 규칙적으로 기지 정보(예를 들면, 제로(1도 좋고, 미리 정한 값도 좋다))를 삽입한다(방법#2-1의 삽입 룰).
[방법#2-2]
방법#2-2에서는, 방법#2-1과 달리, 도 51에 나타내는 것처럼, 정보 및 패리티로 구성되는 h×n×k비트를 1주기로 하여, 각 주기에 있어서, 기지 정보를 동일한 위치에 삽입한다(방법#2-2의 삽입 룰). 각 주기에 있어서, 기지 정보를 동일한 위치에 삽입한다는 것은, 도 48을 이용해 상기 설명의 [방법#1-2]에서 설명한 대로이다.
[방법#2-3]
방법#2-3에서는, 정보 및 패리티로 구성되는 h×n×k비트의 주기에 있어서, 정보 X1 , hi, X2 , hi, …, Xn -1, hi, …, X1 ,h(i+k-1)+h-1, X2 ,h(i+k-1)+h-1, …, Xn -1,h(i+k-1)+h-1의 h×(n-1)×k비트로부터, Z비트 선택하고, 선택한 Z비트에 기지 정보(예를 들면, 제로(1도 좋고, 미리 정한 값도 좋다))를 삽입한다(방법#2-3의 삽입 룰).
이때, 방법#2-3은, 기지 정보를 삽입한 정보 X1 ,j(단, j는, hi~h(i+k-1)+h-1의 어느 하나의 값을 취함.)에 있어서, j 전부에 대해서, h로 나눗셈했을 때의 나머지를 구한다.
그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp=1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp=1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp=1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다. 이러한 γ가 적어도 1개 존재한다.
마찬가지로 방법#2-3에서는, 기지 정보를 삽입한 정보 X2 ,j(단, j는, hi~h(i+k-1)+h-1의 어느 하나의 값을 취한다.)에 있어서, j 전부에 대해서, h로 나눗셈했을 때의 나머지를 구한다.
그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =2+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp=2+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp=2+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =2+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다. 이러한 γ가 적어도 1개 존재한다.
또한, 방법#2-3에서는, 정보 Xf ,j(f=1, 2, 3, …, n-1)로 했을 경우에 있어서도, 동일하게 설명할 수 있다. 방법#2-3에서는, 기지 정보를 삽입한 Xf ,j(단, j는, hi~h(i+k-1)+h-1의 어느 하나의 값을 취함.)에 있어서, j 전부에 대해서, h로 나눗셈했을 때의 나머지를 구한다. 그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다. 이러한 γ가 적어도 1개 존재한다.
이와 같이 하여, 기지 정보를 삽입하는 위치에 조건을 마련함으로써, [방법#1-3]과 마찬가지로, 패리티 검사 행렬 H에 있어서, 「미지의 값이 패리티 및 적은 정보 비트로 하는 행」을 보다 많이 생성할 수 있게 된다. 이것에 의해, 상기에서 설명한 특성이 양호한 부호화율 (n-1)/n, 시변 주기 h인 LDPC-CC를 이용해 오류 정정 능력이 높은 부호화율 (n-1)/n보다 작은 부호화율을 실현할 수 있다.
[방법#2-3]에서는, 삽입되는 기지 정보의 수가 각 주기에서 동일한 경우에 대해 설명했지만, 삽입되는 기지 정보의 수가 각 주기에서 차이가 나도 좋다. 예를 들면, 도 52에 나타내는 것처럼, 최초의 주기에서는 N0개의 정보를 기지 정보로 하고, 다음의 주기에서는 N1개의 정보를 기지 정보로 하고, i번째의 주기에서는, Ni개의 정보를 기지 정보로 하도록 해도 좋다.
이와 같이, 삽입되는 기지 정보의 수가 각 주기에서 다른 경우에는, 주기라고 하는 개념은 의미가 없다. 방법#2-3의 삽입 룰을, 주기라고 하는 개념을 이용하지 않고 나타내면, [방법#2-4]와 같이 된다.
[방법#2-4]
정보 및 패리티로 구성되는 데이터 계열에 있어서, 정보 X1 ,0, X2 ,0, …, Xn -1,0, …, X1 ,v, X2 ,v, …, Xn -1,v의 비트 계열로부터 Z비트 선택하고, 선택한 Z비트에 기지 정보(예를 들면, 제로(1도 좋고, 미리 정한 값도 좋다))를 삽입한다(방법#2-4의 삽입 룰).
이때, 방법#2-4에서는, 기지 정보를 삽입한 X1 ,j(단, j는, 0~v의 어느 하나의 값을 취한다.)에 있어서, j 전부에 대해서, h로 나눗셈했을 때의 나머지를 구한다. 그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다. 이러한 γ가 적어도 1개 존재한다.
마찬가지로, 방법#2-4에서는, 기지 정보를 삽입한 X2 ,j(단, j는, 0~v의 어느 하나의 값을 취한다.)에 있어서, j 전부에 대해서, h로 나눗셈했을 때의 나머지를 구한다. 그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =2+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp=2+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp=2+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp=2+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다. 이러한 γ가 적어도 1개 존재한다.
즉, 방법#2-4에서는, 기지 정보를 삽입한 Xf ,j(단, j는, 0~v의 어느 하나의 값을 취한다.)에 있어서, j 전부에 대해서, h로 나눗셈했을 때의 나머지를 구한다. 그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다(f=1, 2, 3, …, n-1). 이러한 γ가 적어도 1개 존재한다.
이와 같이 하여, 기지 정보를 삽입하는 위치에 조건을 마련함으로써, 주기마다 삽입되는 기지 정보의 비트수가 다른 등의 경우(또는, 주기라고 하는 개념이 없는 경우)에 있어서도, [방법#2-3]과 마찬가지로, 검사 행렬 H에 있어서, 「미지의 값이 패리티 및 적은 정보 비트의 행」을 보다 많이 생성할 수 있게 된다. 이것에 의해, 상기에서 설명한 특성이 양호한 부호화율 (n-1)/n, 시변 주기 h인 LDPC-CC를 이용해 오류 정정 능력이 높은 부호화율 (n-1)/n보다 작은 부호화율을 실현할 수 있다.
또, [방법#2-3], [방법#2-4]를 보다 효과적으로 실시하기 위해서는, 상술한 시변 주기 h의 <조건#18-1>, <조건#18-2>의 패리티 검사 다항식에 기초하는 LDPC-CC에 있어서, 이하의 3개의 어느 하나의 조건을 만족시키면 좋다. 단, <조건#18-1>, <조건#18-2>에 있어서, vp =s<yp =s(s=1, 2, …, n-1)라고 한다.
yp =s-vp =s=vp =s-0 즉 yp =s=2×vp =s
vp =s-0=h-yp =s 즉 vp =s=h-yp =s
h-yp =s=yp =s-vp =s 즉 h=2×yp =s-vp =s
이 조건을 부가하면, 기지 정보를 삽입하는 위치에 조건을 마련함으로써, 패리티 검사 행렬 H의 각 행에 있어서, 즉, 패리티 검사 다항식에 있어서, 정보가 모두 기지 정보가 되는 행, 또는, 기지 정보의 수가 많은 행(예를 들면, 1비트 이외는 기지 정보)을 가능한 한 많게 할 수 있게 된다. 이것은, LDPC-CC는 특유의 패리티 검사 행렬의 구성을 가지기 때문이다.
이상, 통신 장치는, 통신 상대에게 있어서 기지인 정보를 삽입하여, 기지 정보를 포함한 정보에 대해서, 부호화율 1/2의 부호화를 행하여, 패리티 비트를 생성한다. 그리고, 통신 장치는, 기지 정보를 송신하지 않고, 기지 정보 이외의 정보와 구한 패리티 비트를 송신함으로써, 부호화율 1/3을 실현한다.
도 53은, 물리층에 있어서 부호화율을 가변으로 할 경우의 부호화에 관련된 부분(오류 정정 부호화부 44100 및 송신 장치 44200)의 구성의 일례를 나타내는 블록도이다.
기지 정보 삽입부(4403)는, 정보 4401 및 제어 신호 4402가 입력되면, 제어 신호 4402에 포함되는 부호화율의 정보에 따라, 기지 정보를 삽입한다. 구체적으로는, 제어 신호 4402에 포함되는 부호화율이, 부호화기(4405)가 서포트하는 부호화율보다 작아, 쇼트닝을 행할 필요가 있을 경우, 상기에서 설명한 쇼트닝 방법에 따라 기지 정보를 삽입하고, 기지 정보 삽입 후의 정보 4404를 출력한다. 또한, 제어 신호 4402에 포함되는 부호화율이, 부호화기 4405가 서포트하는 부호화율에 동일하여, 쇼트닝을 행할 필요가 없는 경우에는, 기지 정보를 삽입하지 않고, 정보 4401을 그대로 정보 4404로서 출력한다.
부호화기(4405)는, 정보 4404 및 제어 신호 4402가 입력되면, 정보 4404에 대해서 부호화를 행하여, 패리티 4406을 생성하고, 패리티 4406을 출력한다.
기지 정보 삭감부(4407)는, 정보 4404 및 제어 신호 4402가 입력되면, 제어 신호 4402에 포함되는 부호화율의 정보에 기초하여, 기지 정보 삽입부(4403)에 있어서, 기지 정보가 삽입되었을 경우에는, 정보 4404로부터 기지 정보를 삭제하고, 삭제 후의 정보 4408을 출력한다. 한편, 기지 정보 삽입부(4403)에 있어서, 기지 정보가 삽입되어 있지 않은 경우에는, 정보 4404를 그대로 정보 4408로서 출력한다.
변조부(4409)는, 패리티 4406, 정보 4408, 및, 제어 신호 4402가 입력되면, 제어 신호 4402에 포함되는 변조 방식의 정보에 기초하여, 패리티 4406 및 정보 4408을 변조하고 베이스밴드 신호 4410을 생성해 출력한다.
도 54는, 도 53과 다른, 물리층에 있어서 부호화율을 가변으로 할 경우의 부호화에 관련된 부분(오류 정정 부호화부 44100 및 송신 장치 44200)의 구성의 다른 일례를 나타내는 블록도이다. 도 54에 나타내는 것처럼, 기지 정보 삽입부(4403)에 입력되는 정보 4401이, 변조부(4409)에 입력되는 구성으로 함으로써, 도 53의 기지 정보 삭감부(4407)를 생략하더라도, 도 53과 마찬가지로 부호화율을 가변으로 할 수 있다.
도 55는, 물리층에 있어서의 오류 정정 복호부(46100)의 구성의 일례를 나타내는 블록도이다. 기지 정보의 대수 우도비 삽입부(4603)는, 수신한 데이터의 대수 우도비 신호 4601, 제어 신호 4602가 입력된다. 대수 우도비 삽입부(4603)는, 제어 신호 4602에 포함되는 부호화율 정보에 기초하여, 기지 정보의 대수 우도비를 삽입할 필요가 있을 경우에는, 높은 신뢰도를 가지는 기지 정보의 대수 우도비를 대수 우도비 신호 4601에 삽입한다. 그리고, 대수 우도비 삽입부(4603)는, 기지 정보의 대수 우도비 삽입 후의 대수 우도비 신호 4604를 출력한다. 제어 신호 4602에 포함되는 부호화율의 정보는, 예를 들면, 통신 상대로부터 전송된다.
복호화부(4605)는, 제어 신호 4602 및 기지 정보의 대수 우도비 삽입 후의 대수 우도비 신호 4604가 입력되면, 제어 신호 4602에 포함된 부호화율 등의 부호화 방법 정보에 기초하여, 복호를 행하고, 수신한 데이터를 복호하고, 복호 후의 데이터 4606을 출력한다.
기지 정보 삭감부(4607)는, 제어 신호 4602 및 복호 후의 데이터 4606이 입력되면, 제어 신호 4602에 포함된 부호화율 등의 부호화 방법의 정보에 기초하여, 기지 정보가 삽입되어 있는 경우는, 기지 정보를 삭제하고, 기지 정보 삭제 후의 정보 4608을 출력한다.
이상과 같이, 실시형태 1에서 설명한 시변 주기 h인 LDPC-CC로부터, 부호의 부호화율보다 작은 부호화율을 실현하는 쇼트닝 방법에 대해 설명했다. 본 실시형태에 의한 쇼트닝 방법을 이용함으로써, 실시형태 1에서 설명한 시변 주기 h인 LDPC-CC를 패킷 레이어로 이용했을 때, 전송 효율의 향상과 소실 정정 능력의 향상의 양립을 도모할 수 있다. 또, 물리층에 있어서 부호화율을 변경했을 경우에 있어서도, 양호한 오류 정정 능력을 얻을 수 있다.
또한, LDPC-CC와 같이 컨볼루션 부호에서는, 송신 정보 계열의 종단에 터미네이션 계열을 부가하여, 종단 처리(터미네이션)를 행하는 경우가 있다. 이때, 부호화부(4405)는, 기지 정보(예를 들면 전부 제로)가 입력되면, 터미네이션 계열은, 해당 기지 정보를 부호화함으로써 얻어진 패리티 계열만으로 구성된다. 따라서, 터미네이션 계열에 있어서는, 본원 발명에서 설명한 기지 정보의 삽입 룰에 따르지 않는 부분이 발생한다. 또, 터미네이션 이외의 부분에도, 전송 속도의 향상을 위해, 삽입 룰에 따르는 부분과 기지 정보를 삽입하지 않는 부분의 양자가 존재하고 있어도 좋다. 또한, 종단 처리(터미네이션)에 대해서는, 실시형태 11에서 설명한다.
(실시형태 10)
본 실시형태에서는, 실시형태 1에서 설명한 부호화율 (n-1)/n, 시변 주기 h(h는 4 이상의 정수)인 LDPC-CC를 이용해 오류 정정 능력이 높은 부호화율 (n-1)/n보다 작은 부호화율을 실현하는 소실 정정 방법에 대해서 설명한다. 단, 부호화율 (n-1)/n, 시변 주기 h(h는 4 이상의 정수)인 LDPC-CC의 설명은, 실시형태 9와 동일하다고 한다.
[방법#3-1]
방법#3-1에서는, 도 56에 나타내는 것처럼, 정보와 패리티로 구성되는 h×n×k비트(k는 자연수)를 주기로 하여, 각 주기에 있어서, 기지 정보 패킷에 포함되는 기지 정보를 동일한 위치에 삽입한다(방법#3-1의 삽입 룰). 각 주기에 있어서, 기지 정보 패킷에 포함되는 기지 정보를 동일 위치에 삽입한다는 것은, 실시형태 9의 방법#2-2 등에서 설명했던 것과 같다.
[방법#3-2]
방법#3-2에서는, 정보 및 패리티로 구성되는 h×n×k비트의 주기에 있어서, 정보 X1 , hi, X2 , hi, …, Xn -1, hi, …, X1 ,h(i+k-1)+h-1, X2 ,h(i+k-1)+h-1, …, Xn -1,h(i+k-1)+h-1의 h×(n-1)×k비트로부터 Z비트 선택하고, 선택한 Z비트에 기지 정보 패킷의 데이터(예를 들면, 제로(1도 좋고, 미리 정한 값도 좋음))를 삽입한다(방법#3-2의 삽입 룰).
이때, 방법#3-2에서는, 기지 정보 패킷의 데이터를 삽입한 X1 ,j(단, j는, hi~h(i+k-1)+h-1의 어느 하나의 값을 취한다.)에 있어서, j 전부에 대해, h로 나눗셈했을 때의 나머지를 구한다. 그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다. 이러한 γ가 적어도 1개 존재한다.
즉, 방법#3-2에서는, 기지 정보 패킷의 데이터를 삽입한 Xf ,j(단, j는, hi~h(i+k-1)+h-1의 어느 하나의 값을 취한다.)에 있어서, j 전부에 대해서, h로 나눗셈했을 때의 나머지를 구한다. 그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다(f=1, 2, 3, …, n-1). 이러한 γ가 적어도 1개 존재한다.
이와 같이 하여, 기지 정보를 삽입하는 위치에 조건을 마련함으로써, 패리티 검사 행렬 H에 있어서, 「미지의 값이 패리티 및 적은 정보 비트로 하는 행」을 보다 많이 생성할 수 있게 된다. 이것에 의해, 상기에서 설명한 특성이 양호한 부호화율 (n-1)/n, 시변 주기 h인 LDPC-CC를 이용해, 소실 정정 능력이 높으면서도 또, 저회로 규모로 소실 정정 부호의 부호화율을 바꿀 수 있는 시스템을 실현할 수 있다.
이상, 상위층에 있어서의 소실 정정 방법은, 소실 정정 부호의 부호화율을 가변으로 하는 소실 정정 방법에 대해 설명했다.
상위층에 있어 소실 정정 부호의 부호화율을 가변으로 하는 소실 정정 부호화 관련 처리부 및 소실 정정 복호 관련 처리부의 구성에 대해서는, 도 21의 소실 정정 부호화 관련 처리부(2112)의 전단에 있어서, 기지 정보 패킷을 삽입함으로써, 소실 정정 부호의 부호화율을 변경할 수 있다.
이것에 의해, 예를 들면, 통신 상황에 따라 부호화율을 가변으로 할 수 있게 되므로, 통신 상황이 양호한 경우에는 부호화율을 크게 하여 전송 효율을 향상시킬 수 있다. 또, 부호화율을 작게 할 경우에, [방법#3-2]와 같이, 검사 행렬에 따라, 기지 정보 패킷에 포함되는 기지 정보를 삽입함으로써, 소실 정정 능력의 향상을 꾀할 수 있다.
[방법#3-2]에서는, 삽입되는 기지 정보 패킷의 데이터의 수가 각 주기에서 동일한 경우에 대해서 설명했지만, 삽입되는 데이터의 수가 각 주기에서 달라도 좋다. 예를 들면, 도 57에 나타내는 것처럼, 최초의 주기에서는 N0개의 정보를 기지 정보 패킷의 데이터로 하고, 다음 주기에서는 N1개의 정보를 기지 정보 패킷의 데이터로 하고, i번째 주기에서는, Ni개의 정보를 기지 정보 패킷의 데이터로 하는 것도 좋다.
이와 같이, 삽입되는 기지 정보 패킷의 데이터수가 각 주기에서 다른 경우에는, 주기라고 하는 개념은 의미가 없다. 방법#3-2의 삽입 룰을, 주기라고 하는 개념을 이용하지 않고 나타내면, [방법#3-3]과 같이 된다.
[방법#3-3]
방법#3-3에서는, 정보 및 패리티로 구성되는 데이터 계열에 있어서, 정보 X1,0, X2 ,0, …, Xn -1,0, ……, X1 ,v, X2 ,v, …, Xn -1,v의 비트 계열로부터 Z비트 선택하고, 선택한 Z비트에 기지 정보(예를 들면, 제로(1도 좋고, 미리 정한 값도 좋음))를 삽입한다(방법#3-3의 삽입 룰).
이때, 방법#3-3에서는, 기지 정보를 삽입한 X1 ,j(단, j는, 0~v의 어느 하나의 값을 취한다.)에 있어서, j 전부에 대해서, h로 나눗셈했을 때의 나머지를 구한다. 그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다. 이러한 γ가 적어도 1개 존재한다.
즉, 방법#3-3에서는, 기지 정보를 삽입한 Xf ,j(단, j는, 0~v의 어느 하나의 값을 취한다.)에 있어서, j 전부에 대해서, h로 나눗셈했을 때의 나머지를 구한다. 그러면, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하, 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하로 한다(f=1, 2, 3, …, n-1). 이러한 γ가 적어도 1개 존재한다.
이상, 소실 정정 부호는, 실시형태 1에서 설명한 시변 주기 h인 LDPC-CC로부터, 부호의 부호화율보다 작은 부호화율을 실현하는 방법을 이용한 소실 정정 부호의 부호화율을 가변으로 하는 시스템에 대해 설명했다. 본 실시형태에 의한 부호화율 가변 방법을 이용함으로써, 전송 효율의 향상과 소실 정정 능력의 향상의 양립을 꾀할 수 있고, 소실 정정시에 부호화율을 변경했을 경우에 있어서도, 양호한 소실 정정 능력을 얻을 수 있다.
(실시형태 11)
본 발명에 관련된 LDPC-CC를 사용할 때, 정보 비트의 복호에 있어서의 신뢰도를 확보하기 위해, 터미네이션 혹은 테일 바이팅(tail-biting)이 필요하게 된다. 그래서, 본 실시형태에서는, 터미네이션을 행할 경우(「Information-zero-termination」 또는 간단하게 「제로 터미네이션(Zero-termination)」이라고 부름)의 방법에 대해서 이하에서는 자세하게 설명한다.
도 58은, 부호화율 (n-1)/n의 LDPC-CC에 있어서의 「Information-zero-termination」을 설명하기 위한 도면이다. 시점 i(i=0, 1, 2, 3, …, s)에 있어서의 정보 비트 X1, X2, …, Xn -1 및 패리티 비트 P를, X1 ,i, X2 ,i, …, Xn -1,i 및 패리티 비트 Pi라고 한다. 그리고, 도 58에 나타내는 것처럼, Xn -1,s가 송신하고 싶은 정보의 최종 비트(4901)라고 한다. 단, 복호기에 있어서, 수신 품질을 유지하기 위해서는, 부호화시에, 시점 s 이후의 정보에 대해서도 부호화하는 것이 필요하다.
이 때문에, 만약, 부호화기가 시점 s까지밖에 부호화를 행하지 않아, 부호화측의 송신 장치가, Ps까지밖에 복호측의 수신 장치에 전송하지 않았을 경우, 복호기에 있어서 정보 비트의 수신 품질이 크게 열화한다. 이 문제를 해결하기 위해, 최종 정보 비트 Xn -1,s 이후의 정보 비트(「가상의 정보 비트」라고 부름)를 「0」이라고 가정하고 부호화를 행하여, 패리티 비트(4903)를 생성한다.
구체적으로는, 도 58에 나타내는 것처럼, 부호화기는, X1 ,k, X2 ,k, …, Xn -1,k(k=t1, t2, …, tm)를 「0」으로서 부호화하여, Pt1, Pt2, …, Ptm을 얻는다. 그리고, 부호화측의 송신 장치는, 시점 s에 있어서의 X1 ,s, X2 ,s, …, Xn -1,s, Ps를 송신 후, Pt1, Pt2, …, Ptm을 송신한다. 복호기는, 시점 s 이후에서는, 가상의 정보 비트가 「0」임을 알고 있는 것을 이용해, 복호를 행한다. 또한, 전술에서는 가상의 정보 비트가 「0」인 경우를 예로 설명했지만, 이것에 한하지 않고, 가상의 정보 비트는, 송수신 장치에 있어서, 기지의 데이터이면, 동일하게 실시할 수 있다.
당연하지만, 본 발명의 모든 실시형태는, 터미네이션을 행하더라도 실시할 수 있다.
(실시형태 12)
본 실시형태에서는, 실시형태 1 및 실시형태 6에서 설명한 패리티 검사 다항식에 기초하는 LDPC-CC의 구체적인 생성 방법의 일례에 대해서 설명한다.
실시형태 6에서는, 실시형태 1에서 설명한 LDPC-CC의 시변 주기로서는, 하기의 조건이 유효함을 설명했다.
ㆍ시변 주기가 소수인 것.
ㆍ시변 주기가 홀수이고 또, 시변 주기의 값에 대한 약수의 수가 적은 것.
여기서, 시변 주기를 크게 하여, 부호를 생성하는 것을 생각한다. 이때, 제약 조건을 부여한 난수(亂數)를 이용해, 부호 생성을 행하는 것이 되는데, 시변 주기를 크게 하면, 난수를 이용해 설정하는 파라미터의 수가 많아져 버려, 높은 오류 정정 능력을 가지는 부호의 탐색이 곤란하게 된다고 하는 과제가 있다. 이 과제에 대해서, 본 실시형태에서는, 실시형태 1, 실시형태 6에서 설명한 패리티 검사 다항식에 기초하는 LDPC-CC를 이용한 다른 부호 생성 방법에 대해 설명한다.
일례로서 부호화율 1/2, 시변 주기 15인 패리티 검사 다항식에 기초하는 LDPC-CC의 설계 방법에 대해 설명한다.
부호화율 (n-1)/n(n은 2 이상의 정수), 시변 주기 15인 LDPC-CC의(0을 만족시키는) 패리티 검사 다항식으로서 식(86-0)~(86-14)를 생각한다.
Figure pct00099
이때, X1(D), X2(D), …, Xn -1(D)은 데이터(정보) X1, X2, …, Xn -1의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다. 식(86-0)~(86-14)에 있어서, 예를 들면, 부호화율 1/2인 경우, X1(D) 및 P(D)의 항만이 존재하고, X2(D), …, Xn -1(D)의 항은 존재하지 않는다. 마찬가지로, 부호화율 2/3인 경우, X1(D), X2(D), 및 P(D)의 항만이 존재하고, X3(D), …, Xn -1(D)의 항은 존재하지 않는다. 그 외의 부호화율에 대해서도 동일하게 생각하면 된다. 여기서, 식(86-0)~(86-14)에서는, X1(D), X2(D), …, Xn -1(D), P(D) 각각에 3개의 항이 존재하는 등의 패리티 검사 다항식이라고 한다.
또, 식(86-0)~(86-14)에서는, X1(D), X2(D), …, Xn -1(D), 및, P(D)에 대해서, 이하가 성립하는 것으로 한다.
식(86-q)에 있어서, a#q,p,1, a#q,p,2, a#q,p,3은 자연수로 하고, a#q,p,1≠a#q,p,2, a#q,p,1≠a#q,p,3, a#q,p,2≠a#q,p,3이 성립하는 것으로 한다. 또, b#q,1, b#q,2, b#q,3은 자연수로 하고, b#q,1≠b#q,2, b#q,1≠b#q,3, b#q,1≠b#q,3이 성립하는 것으로 한다(q=0, 1, 2, …, 13, 14; p=1, 2, …, n-1).
그리고, 식(86-q)의 패리티 검사 다항식을 「검사식#q」라 부르고, 식(86-q)의 패리티 검사 다항식에 기초하는 서브행렬을, 제 q 서브행렬 Hq라고 부른다. 그리고, 제 0 서브행렬 H0, 제 1 서브행렬 H1, 제 2 서브행렬 H2, …, 제 13 서브행렬 H13, 제 14 서브행렬 H14로부터 생성하는 시변 주기 15인 LDPC-CC에 대해 생각한다. 따라서, 부호의 구성 방법, 패리티 검사 행렬의 생성 방법, 부호화 방법, 복호화 방법에 대해서는, 실시형태 1, 실시형태 6에서 설명한 방법과 동일하다.
이하에서는, 상기에서 설명한 것처럼 부호화율 1/2인 경우에 대해 설명하므로, X1(D) 및 P(D)의 항만이 존재하게 된다.
실시형태 1, 실시형태 6에서는, 시변 주기를 15로 했을 때, X1(D)의 계수의 시변 주기 및 P(D)의 계수의 시변 주기는 모두 15이었다. 이것에 비해, 본 실시형태에서는, 일례로서 X1(D)의 계수의 시변 주기 3, P(D)의 계수의 시변 주기 5로 함으로써, LDPC-CC시변 주기를 15로 하는 부호 구성 방법을 제안한다. 즉, 본 실시형태에서는, X1(D)의 계수의 시변 주기를 α로 하고, P(D)의 계수의 시변 주기를 β(α≠β)로 함으로써, LDPC-CC의 시변 주기를 LCM(α, β)로 하는 부호를 구성한다. 단, LCM(X, Y)는 X와 Y의 최소 공배수(the least common multiple)라고 한다.
높은 오류 정정 능력을 얻기 위해, 실시형태 1, 실시형태 6과 동일하게 생각하여, X1(D)의 계수에 대해, 이하와 같은 조건을 부여한다. 또한, 이하의 각 조건에 있어서 「%」는 modulo를 의미하고, 예를 들면, 「α%15」는, α를 15로 나눗셈했을 때의 나머지를 나타낸다.
<조건#19-1>
「a#0,1,1%15=a#1,1,1%15=a#2,1,1%15=…=a#k,1,1%15=…=a#14,1,1%15=vp =1(vp =1 : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
「a#0,1,2%15=a#1,1,2%15=a#2,1,2%15=…=a#k,1,2%15=…=a#14,1,2%15=yp =1(yp =1 : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
「a#0,1,3%15=a#1,1,3%15=a#2,1,3%15=…=a#k,1,3%15=…=a#14,1,3%15=zp =1(zp =1 : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
또, X1(D)의 계수의 시변 주기가 3이 되므로, 이하의 조건이 성립한다.
<조건#19-2>
i%3=j%3(i, j=0, 1, …, 13, 14; i≠j)이 성립할 때, 이하의 3개의 식이 성립한다.
Figure pct00100
마찬가지로, P(D)의 계수에 대해서, 이하와 같은 조건을 부여한다.
<조건#20-1>
「b#0,1%15=b#1,1%15=b#2,1%15=…=b#k,1%15=…=b#14,1%15=d(d : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
「b#0,2%15=b#1,2%15=b#2,2%15=…=b#k,2%15=…=b#14,2%15=e(e : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
「b#0,3%15=b#1,3%15=b#2,3%15=…=b#k,3%15=…=b#14,3%15=f(f : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
또, P(D)의 계수의 시변 주기가 5가 되므로, 이하의 조건이 성립한다.
<조건#20-2>
i%5=j%5(i, j=0, 1, …, 13, 14; i≠j)가 성립할 때, 이하의 3개의 식이 성립한다.
Figure pct00101
이상과 같은 조건을 부여함으로써, 시변 주기를 크게 하면서 또, 난수를 이용해서 설정하는 파라미터의 수를 삭감할 수 있어, 부호 탐색이 용이하게 된다고 하는 효과를 얻을 수 있다. 또한, <조건#19-1> 및 <조건#20-1>은 반드시 필요한 조건은 아니다. 즉, <조건#19-2> 및 <조건#20-2>만을 조건으로서 부여하도록 해도 좋다. 또, <조건#19-1> 및 <조건#20-1> 대신에 <조건#19-1′> 및 <조건#20-1′>의 조건을 부여해도 좋다.
<조건#19-1′>
「a#0,1,1%3=a#1,1,1%3=a#2,1,1%3=…=a#k,1,1%3=…=a#14,1,1%3=vp =1(vp =1 : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
「a#0,1,2%3=a#1,1,2%3=a#2,1,2%3=…=a#k,1,2%3=…=a#14,1,2%3=yp =1(yp =1 : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
「a#0,1,3%3=a#1,1,3%3=a#2,1,3%3=…=a#k,1,3%3=…=a#14,1,3%3=zp =1(zp =1 : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
<조건#20-1′>
「b#0,1%5=b#1,1%5=b#2,1%5=…=b#k,1%5=…=b#14,1%5=d(d : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
「b#0,2%5=b#1,2%5=b#2,2%5=…=b#k,2%5=…=b#14,2%5=e(e : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
「b#0,3%5=b#1,3%5=b#2,3%5=…=b#k,3%5=…=b#14,3%5=f(f : 고정값)(따라서, k=0, 1, 2, …, 14가 된다.)」
상기의 예를 참고로 하여, X1(D)의 계수의 시변 주기를 α로 하고, P(D)의 계수의 시변 주기를 β로 함으로써, LDPC-CC의 시변 주기를 LCM(α, β)로 하는 부호 구성 방법에 대해 설명한다. 단, 시변 주기 LCM(α, β)=s라고 한다.
시변 주기 s, 부호화율 1/2인 패리티 검사 다항식에 기초하는 LDPC-CC의 i번째 (i=0, 1, 2, …, s-2, s-1)의 제로를 만족시키는 패리티 검사 다항식을 다음 식과 같이 나타낸다.
Figure pct00102
그러면, 상기 설명을 참고로 하면, 본 실시형태에 있어서의 부호 구성 방법에서는, 이하와 같은 조건이 중요해진다.
X1(D)의 계수에 대해서, 이하와 같은 조건을 부여한다.
<조건#21-1>
「a#0,1,1%s=a#1,1,1%s=a#2,1,1%s=…=a#k,1,1%s=…=a#s-1,1,1%s=vp =1(vp =1 : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
「a#0,1,2%s=a#1,1,2%s=a#2,1,2%s=…=a#k,1,2%s=…=a#s-1,1,2%s=yp =1(yp =1 : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
「a#0,1,3%s=a#1,1,3%s=a#2,1,3%s=…=a#k,1,3%s=…=a#s-1,1,3%s=zp =1(zp =1 : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
또, X1(D)의 계수의 시변 주기는 α가 되므로, 이하의 조건이 성립한다.
<조건#21-2>
i%α=j%α(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 3개의 식이 성립한다.
Figure pct00103
마찬가지로 P(D)의 계수에 대해서, 이하와 같은 조건을 부여한다.
<조건#22-1>
「b#0,1%s=b#1,1%s=b#2,1%s=…=b#k,1%s=…=b#s-1,1%s=d(d : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
「b#0,2%s=b#1,2%s=b#2,2%s=…=b#k,2%s=…=b#s-1,2%s=e(e : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
「b#0,3%s=b#1,3%s=b#2,3%s=…=b#k,3%s=…=b#s-1,3%s=f(f : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
또, P(D)의 계수 시변 주기는 β가 되므로, 이하의 조건이 성립한다.
<조건#22-2>
i%β=j%β(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 3개의 식이 성립한다.
Figure pct00104
이상과 같은 조건을 부여함으로써, 시변 주기를 크게 하면서 또, 난수를 이용해서 설정하는 파라미터의 수를 삭감할 수 있어, 부호 탐색이 용이하게 된다고 하는 효과를 얻을 수 있다. 또한, <조건#21-1> 및 <조건#22-1>은 반드시 필요한 조건은 아니다. 즉, <조건#21-2> 및 <조건#22-2>만을 조건으로서 부여하도록 해도 좋다. 또, <조건#21-1> 및 <조건#22-1> 대신에, <조건#21-1′> 및 <조건#22-1′>의 조건을 부여해도 좋다.
<조건#21-1′>
「a#0,1,1%α=a#1,1,1%α=a#2,1,1%α=…=a#k,1,1%α=…=a#s-1,1,1%α=vp =1(vp =1 : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
「a#0,1,2%α=a#1,1,2%α=a#2,1,2%α=…=a#k,1,2%α=…=a#s-1,1,2%α=yp =1(yp =1 : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
「a#0,1,3%α=a#1,1,3%α=a#2,1,3%α=…=a#k,1,3%α=…=a#s-1,1,3%α=zp =1(zp =1 : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
<조건#22-1′>
「b#0,1%β=b#1,1%β=b#2,1%β=…=b#k,1%β=…=b#s-1,1%β=d(d : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
「b#0,2%β=b#1,2%β=b#2,2%β=…=b#k,2%β=…=b#s-1,2%β=e(e : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
「b#0,3%β=b#1,3%β=b#2,3%β=…=b#k,3%β=…=b#s-1,3%β=f(f : 고정값)(따라서, k=0, 1, 2, …, s-1이 된다.)」
단, 시변 주기 s, 부호화율 1/2인 패리티 검사 다항식에 기초하는 LDPC-CC의 i번째 (i=0, 1, 2, …, s-2, s-1)의 제로를 만족시키는 패리티 검사 다항식을 식(89-i)에서 나타냈는데, 실제로 이용할 경우는, 다음 식에서 표시되는 제로를 만족시키는 패리티 검사 다항식이 된다.
Figure pct00105
또, 패리티 검사 다항식을 일반화하는 것을 생각한다. i번째 (i=0, 1, 2, …, s-2, s-1)의 제로를 만족시키는 패리티 검사 다항식을 다음식과 같이 나타낸다.
Figure pct00106
즉, 패리티 검사 다항식으로서 식(93-i)과 같이, X1(D), P(D)의 항의 수가 3개에 한하는 것은 아닌 경우를 생각한다. 그러면, 상기 설명을 참고로 하면, 본 실시형태에 있어서의 부호 구성 방법에서는, 이하와 같은 조건이 중요하게 된다.
<조건#23>
i%α=j%α(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00107
<조건#24>
i%β=j%β(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00108
이상과 같은 조건을 부여함으로써, 시변 주기를 크게 하면서 또, 난수를 이용해 설정하는 파라미터의 수를 삭감할 수가 있어, 부호 탐색이 용이해진다고 하는 효과를 얻을 수 있다. 이때, 시변 주기를 효율적으로 크게 하기 위해서는, α 와 β는 「서로 소」(coprime)이면 좋다. 여기서, 「α와 β가 서로 소」는, α와 β가 1(및 -1) 이외에 공통의 약수를 가지지 않는 관계가 되는 것을 말한다.
이때, 시변 주기는 α×β로 나타낼 수 있다. 단, α와 β가 서로 소의 관계가 아니더라도, 높은 오류 정정 능력을 얻을 수 있을 가능성은 있다. 또, 실시형태 6의 기재에 기초하면, α 및 β는 홀수이면 좋다. 단, α 및 β가 홀수가 아니더라도, 높은 오류 정정 능력을 얻을 수 있을 가능성은 있다.
다음에, 시변 주기 s, 부호화율 (n-1)/n인 패리티 검사 다항식에 기초하는 LDPC-CC에 있어서, X1(D)의 계수의 α1, X2(D)의 계수의 시변 주기 α2, …, Xk(D)의 계수의 시변 주기 αk(k=1, 2, …, n-2, n-1), …, Xn -1(D)의 계수의 시변 주기 αn-1, P(D)의 계수의 시변 주기 β로 하는 LDPC-CC의 부호 구성 방법에 대해 설명한다. 이때, 시변 주기 s=LCM(α1, α2, …αn-2, αn-1, β)이 된다. 즉, 시변 주기 s는, α1, α2, …, αn-2, αn-1, β의 최소 공배수가 된다.
시변 주기 s, 부호화율 (n-1)/n인 패리티 검사 다항식에 기초하는 LDPC-CC의 i번째(i=0, 1, 2, …, s-2, s-1)의 제로를 만족시키는 패리티 검사 다항식은, 다음식에서 표시되는 제로를 만족시키는 패리티 검사 다항식이 된다.
Figure pct00109
여기서, X1(D), X2(D), …, Xn - 1(D)는 정보 계열 X1, X2,…, Xn -1의 다항식 표현이고(n은 2 이상의 정수), P(D)는 패리티 계열의 다항식 표현이다.
즉, X1(D), X2(D), …, Xn -2(D), Xn -1(D), P(D)의 항의 수가 3개에 한하는 것은 아닌 경우를 생각한다. 그러면, 상술을 참고로 하면, 본 실시형태에 있어서의 부호 구성 방법에서는, 이하와 같은 조건이 중요해진다.
<조건#25>
i%αk=j%αk(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00110
단, k=1, 2, …, n-2, n-1라고 한다.
<조건#26>
i%β=j%β(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00111
즉, 본 실시형태에 따른 부호화 방법은, 시변 주기 s인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)의 부호화 방법이며, 식(96-i)에서 표시되는 제 i(i=0, 1, …, s-2, s-1) 패리티 검사 다항식을 공급하는 단계와, 상기 제 0부터 제 s-1 패리티 검사 다항식과 입력 데이터의 선형 연산에 의해 LDPC-CC 부호어를 취득하는 단계를 가지고, Xk(D)의 계수 AXk ,i의 시변 주기가 αkk는 1보다 큰 정수)이고(k=1, 2, …, n-2, n-1), P(D)의 계수 BXk,i의 시변 주기가 β(β는 1보다 큰 정수)이고, 상기 시변 주기 s는, α1, α2, …αn-2, αn-1, β의 최소 공배수이며, i%αk=j%αk(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 식(97)이 성립하고, i%β=j%β(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 식(98)이 성립하도록 했다(도 59 참조).
이상과 같은 조건을 부여함으로써, 시변 주기를 크게 하면서 또, 난수를 이용해 설정하는 파라미터의 수를 삭감할 수 있어, 부호 탐색이 용이하게 된다고 하는 효과를 얻을 수 있다.
이때, 시변 주기를 효율적으로 크게 하기 위해서는, α1, α2, …, αn-2, αn-1 및 β는 「서로 소」이면 시변 주기를 크게 할 수 있다. 이때, 시변 주기는 α1×α2×…×αn-2×αn-1×β로 나타낼 수 있다.
단, 서로 소의 관계가 아니더라도, 높은 오류 정정 능력을 얻을 수 있을 가능성은 있다. 또, 실시형태 6의 기재에 기초하면, α1, α2, …, αn-2, αn-1 및 β는 홀수이면 좋다. 단, 홀수가 아니더라도, 높은 오류 정정 능력을 얻을 수 있을 가능성은 있다.
(실시형태 13)
본 실시형태에서는, 실시형태 12에서 설명한 LDPC-CC에 있어서, 저회로 규모의 부호화기/복호화기를 구성할 수 있는 LDPC-CC를 제안한다.
처음에, 상기 특징을 가지는, 부호화율 1/2, 2/3의 부호 구성 방법에 대해 설명한다.
실시형태 12에서 설명한 것처럼, X1(D)의 시변 주기가 α1, P(D)의 시변 주기가 β, 시변 주기 s가 LCM(α1, β), 부호화율 1/2인 패리티 검사 다항식에 기초하는 LDPC-CC의 i번째(i=0, 1, 2, …, s-2, s-1)의 제로를 만족시키는 패리티 검사 다항식을 다음 식과 같이 나타낸다.
Figure pct00112
그러면, 실시형태 12를 참고로 하면, 이하와 같은 조건이 성립한다.
<조건#26-1>
i%α1=j%α1(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00113
<조건#27>
i%β=j%β(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00114
여기서, 상기의 부호화율 1/2인 LDPC-CC와 부호화기/복호화기의 회로를 공통화하는 것이 가능한 부호화율 2/3인 LDPC-CC를 생각한다.
부호화율 2/3, 시변 주기 z인 패리티 검사 다항식에 기초하는 i번째(i=0, 1, 2, …, z-2, z-1)의 제로를 만족시키는 패리티 검사 다항식을 다음식과 같이 나타낸다.
Figure pct00115
이때, 식(99-i)에 기초하는 부호화율 1/2의 패리티 검사 다항식에 기초하는 LDPC-CC와 부호화기/복호화기의 회로를 공통화가 가능한 부호화율 2/3인 LDPC-CC의 조건을 이하에 기재한다.
<조건#28>
식(102-i)의 제로를 만족시키는 패리티 검사 다항식에 있어서, X1(D)의 시변 주기가 α1임과 동시에, i%α1=j%α1(i=0, 1, …, s-2, s-1, j=0, 1, …, z-2, z-1;)이 성립할 때, 이하의 식이 성립한다.
Figure pct00116
<조건#29>
식(102-i)의 제로를 만족시키는 패리티 검사 다항식에 있어서, P(D)의 시변 주기가 β임과 동시에, i%β=j%β(i=0, 1, …, s-2, s-1, j=0, 1, …, z-2, z-1)이 성립할 때, 이하의 식이 성립한다.
Figure pct00117
그리고, 식(102-i)의 제로를 만족시키는 패리티 검사 다항식에 있어서, X2(D)의 시변 주기를 α2로 하면 되기 때문에, 이하의 조건이 성립한다.
<조건#30>
i%α2=j%α2(i, j=0, 1, …, z-2, z-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00118
이때, α2는 α1 또는 β여도 좋고, α2는 α1 및 β와 서로 소의 관계의 자연수이어도 좋다. 단, α2는 α1 및 β와 서로 소의 관계의 자연수이면 시변 주기를 효율적으로 크게 할 수 있다고 하는 특징을 가진다. 또, 실시형태 6의 기재에 기초하면, α1, α2 및 β는 홀수이면 좋다. 단, α1, α2 및 β가 홀수가 아니어도, 높은 오류 정정 능력을 얻을 수 있을 가능성은 있다.
그리고, 시변 주기 z는, LCM(α1, α2, β), 즉, α1, α2, β의 최소 공배수가 된다.
도 60은, 부호화기/복호화기의 회로를 공통화하는 것이 가능한 부호화율 1/2, 2/3인 LDPC-CC의 패리티 검사 다항식을 모식적으로 나타낸 도면이다.
상기 설명에서는, 부호화율 1/2인 LDPC-CC와 부호화기/복호화기의 회로를 공통화하는 것이 가능한 부호화율 2/3인 LDPC-CC에 대해 설명했다. 이하에서는, 일반화하여, 부호화율 (n-1)/n인 LDPC-CC와 부호화기/복호화기의 회로를 공통화하는 것이 가능한 부호화율 (m-1)/m인 LDPC-CC(n<m)의 부호 구성 방법에 대해서 설명한다.
X1(D)의 시변 주기가 α1, X2(D)의 시변 주기가 α2, …, Xn -1(D)의 시변 주기가 αn-1, P(D)의 시변 주기가 β, 시변 주기 s가 LCM(α1, α2, …, αn-1, β), 즉, α1, α2, …, αn-1, β의 최소 공배수이며, (n-1)/n인 패리티 검사 다항식에 기초하는 LDPC-CC의 i번째(i=0, 1, 2, …, s-2, s-1)의 제로를 만족시키는 패리티 검사 다항식을 다음식과 같이 나타낸다.
Figure pct00119
그러면, 실시형태 12를 참고로 하면, 이하와 같은 조건이 성립한다.
<조건#31>
i%αk=j%αk(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00120
단, k=1, 2, …, n-1이 된다.
<조건#32>
i%β=j%β(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00121
여기서, 상기의 부호화율 (n-1)/n인 LDPC-CC와 부호화기/복호화기의 회로를 공통화하는 것이 가능한 부호화율 (m-1)/m인 LDPC-CC를 생각한다. 부호화율 (m-1)/m, 시변 주기 z인 패리티 검사 다항식에 기초하는 i번째(i=0, 1, 2, …, z-2, z-1)의 제로를 만족시키는 패리티 검사 다항식을 다음 식과 같이 나타낸다.
Figure pct00122
이때, 식(106-i)에 표시되는 부호화율 (n-1)/n인 패리티 검사 다항식에 기초하는 LDPC-CC와 부호화기/복호화기의 회로의 공통화가 가능한 부호화율 (m-1)/m인 LDPC-CC의 조건을 이하에 기재한다.
<조건#33>
식(109-i)의 제로를 만족시키는 패리티 검사 다항식에 있어서, Xk(D)의 시변 주기가 αk(k=1, 2, …, n-1)임과 동시에, i%αk=j%αk(i=0, 1, …, s-2, s-1; j=0, 1, …, z-2, z-1)이 성립할 때, 이하의 식이 성립한다.
Figure pct00123
<조건#34>
식(109-i)의 제로를 만족시키는 패리티 검사 다항식에 있어서, P(D) 시변 주기가 β임과 동시에, i%β=j%β(i=0, 1, …, s-2, s-1; j=0, 1, …, z-2, z-1)이 성립할 때, 이하의 식이 성립한다.
Figure pct00124
그리고, 식(109-i)의 제로를 만족시키는 패리티 검사 다항식에 있어서, Xh(D)의 시변 주기가 αh(h=n, n+1, …, m-1)로 하면 되기 때문에, 이하의 조건이 성립한다.
<조건#35>
i%αh =j%αh(i, j=0, 1, …, z-2, z-1; i≠j)가 성립할 때, 이하의 식이 성립한다.
Figure pct00125
이때, αh는 자연수이면 좋다. α1, α2, …, αn-1, αn, …, αm-1, β가 모두 서로 소의 관계의 자연수이면 시변 주기를 효율적으로 크게 할 수 있다고 하는 특징을 가진다. 또, 실시형태 6의 기재에 기초하면, α1, α2, …, αn-1, αn, …, αm-1, β는 홀수이면 좋다. 단, 홀수가 아니어도, 높은 오류 정정 능력을 얻을 수 있을 가능성은 있다.
그리고, 시변 주기 z는, LCM(α1, α2, …, αn-1, αn, …, αm-1, β), 즉, α1, α2, …, αn-1, αn, …, αm-1, β의 최소 공배수가 된다.
다음에, 상기에서 설명한, 저회로 규모로 부호화기/복호화기를 구성할 수 있는 복수 부호화율에 대응하는 LDPC-CC의 구체적인 부호화기/복호화기의 구성 방법에 대해서 설명한다.
먼저, 본 발명에 따른, 부호화기/복호화기에 있어서, 회로의 공용화를 꾀하는 부호화율 중 가장 높은 부호화율을 (q-1)/q라고 한다. 예를 들면, 송수신 장치가 대응하는 부호화율을 1/2, 2/3, 3/4, 5/6라고 했을 때, 부호화율 1/2, 2/3, 3/4의 부호는, 부호화기/복호화기에 있어서 회로를 공통화하고, 부호화율 5/6은 부호화기/복호화기에 대해 회로를 공통화 대상으로 하지 않는 것으로 한다. 이때, 상기에서 설명한 가장 높은 부호화율 (q-1)/q는 3/4이 된다. 이하에서는, 복수의 부호화율 (r-1)/r(r은 2 이상 q 이하인 정수)에 대응할 수 있는 시변 주기z(z는 자연수)인 LDPC-CC를 작성하는 부호화기에 대해서 설명한다.
도 61은, 본 실시형태에 따른 부호화기의 주요부 구성의 일례를 나타내는 블록도이다. 또한, 도 61에 나타내는 부호화기(5800)는, 부호화율 1/2, 2/3, 3/4에 대응 가능한 부호화기이다. 도 61의 부호화기(5800)는, 정보 생성부(5801), 제 1 정보 연산부(5802-1), 제 2 정보 연산부(5802-2), 제 3 정보 연산부(5802-3), 패리티 연산부(5803), 가산부(5804), 부호화율 설정부(5805) 및 웨이트 제어부(5806)를 주로 구비한다.
정보 생성부(5801)는, 부호화율 설정부(5805)로부터 지정되는 부호화율에 따라, 시점 k의 정보 X1 ,k, 정보 X2 ,k, 정보 X3 ,k를 설정한다. 예를 들면, 부호화율 설정부(5805)가 부호화율을 1/2로 설정했을 경우, 정보 생성부(5801)는, 시점 k의 정보 X1 ,k에 입력 정보 데이터 Sj를 설정하고, 시점 k의 정보 X2 ,k 및 시점 k의 정보 X3,k에 0을 설정한다.
또, 부호화율 2/3일 경우, 정보 생성부(5801)는, 시점 k의 정보 X1 ,k에 입력 정보 데이터 Sj를 설정하고, 시점 k의 정보 X2 ,k에 입력 정보 데이터 Sj +1을 설정하고, 시점 k의 정보 X3 ,k에 0을 설정한다.
또, 부호화율 3/4일 경우, 정보 생성부(5801)는, 시점 k의 정보 X1 ,k에 입력 정보 데이터 Sj를 설정하고, 시점 k의 정보 X2 ,k에 입력 정보 데이터 Sj +1을 설정하고, 시점 k의 정보 X3 ,k에 입력 정보 데이터 Sj +2를 설정한다.
이와 같이 하여, 정보 생성부(5801)는, 부호화율 설정부(5805)에 의해 설정된 부호화율에 따라, 입력 정보 데이터를 시점 k의 정보 X1 ,k, 정보 X2 ,k, 정보 X3 ,k를 설정하고, 설정 후의 정보 X1 ,k를 제 1 정보 연산부(5802-1)에 출력하고, 설정 후의 정보 X2 ,k를 제 2 정보 연산부(5802-2)에 출력하고, 설정 후의 정보 X3 ,k를 제 3 정보 연산부(5802-3)에 출력한다.
제 1 정보 연산부(5802-1)는, 식(106-i)의 AX1 ,i(D)(식(110)이 성립하므로 식(109-i)에도 상당한다)에 따라, X1(D)를 산출한다. 마찬가지로, 제 2 정보 연산부(5802-2)는, 식(106-2)의 AX2 ,i(D)(식(110)이 성립하므로 식(109-i)에도 상당한다)에 따라, X2(D)를 산출한다. 마찬가지로, 제 3 정보 연산부(580-3)는, 식(109-i)의 CX3,i(D)에 따라, X3(D)를 산출한다.
이때, 상기에서 설명한 것처럼, 식(109-i)가 <조건#33>, <조건#34>를 만족하기 때문에, 부호화율이 전환되었다 하더라도, 제 1 정보 연산부(5802-1)의 구성을 변경할 필요가 없고, 또, 마찬가지로, 제 2 정보 연산부(5802-2)의 구성을 변경할 필요가 없다.
따라서, 복수의 부호화율에 대응하는 경우는, 부호화기의 회로가 공용 가능한 부호화율 중에서 가장 높은 부호화율의 부호화기의 구성을 기초로 하여, 상기와 같은 조작으로, 다른 부호화율에 대응할 수 있다. 즉, 부호화기의 주요한 부분인 제 1 정보 연산부(5802-1), 제 2 정보 연산부(5802-2)는, 부호화율에 상관없이 공통화할 수 있다고 하는 이점을, 상기 설명에서 설명한 LDPC-CC는 가지게 된다.
도 62에, 제 1 정보 연산부(5802-1)의 내부 구성을 나타낸다. 도 12의 제 1 정보 연산부(5802-1)는, 쉬프트 레지스터(5901-1~5901-M), 웨이트 곱셈기(5902-0~5902-M), 및, 가산부(5903)를 구비한다.
쉬프트 레지스터(5901-1~5901-M)는, 각각, X1 ,i-t(t=0, …, M-1)을 보지(保持)하는 레지스터이며, 다음의 입력이 들어오는 타이밍에, 보지하고 있는 값을 오른쪽 옆의 쉬프트 레지스터에 송출하고, 왼쪽 옆의 쉬프트 레지스터로부터 출력되어 온 값을 보지한다.
웨이트 곱셈기(5902-0~5902-M)는, 웨이트 제어부(5904)로부터 출력되는 제어 신호에 따라, h1 (t)의 값을 0 또는 1로 전환한다.
가산부(5903)는, 웨이트 곱셈기(5902-0~5902-M)의 출력에 대해서, 배타적 논리합 연산을 행하여, 연산 결과 Y1 ,k를 산출하고, 산출한 Y1 , ki를, 도 61의 가산부(5804)에 출력한다.
또한, 제 2 정보 연산부(5802-2) 및 제 3 정보 연산부(5802-3)의 내부 구성은, 제 1 정보 연산부(5802-1)와 동일하므로, 설명을 생략한다. 제 2 정보 연산부(5802-2)는, 제 1 정보 연산부(5802-1)과 동일하게 하여, 연산 결과 Y2 ,k를 산출하고, 산출한 Y2 ,k를 가산부(5804)에 출력한다. 제 3 정보 연산부(5802-3)는, 제 1 정보 연산부(5802-1)와 동일하게 하여, 연산 결과 Y3 ,k를 산출하고, 산출한 Y3 ,k를, 도 61의 가산부(5804)에 출력한다.
도 61의 패리티 연산부(5803)는, 식(106-i)의 Bi(D)(식(111)이 성립하므로 식(109-i)에도 상당한다)에 따라, P(D)를 산출한다.
도 63에, 도 61의 패리티 연산부(5803)의 내부 구성을 나타낸다. 도 63의 패리티 연산부(5803)는, 쉬프트 레지스터(6001-1~6001-M), 웨이트 곱셈기(6002-0~6002-M), 및, 가산부(6003)를 구비한다.
쉬프트 레지스터(6001-1~6001-M)는, 각각, Pi -t(t=0, …, M-1)를 보지하는 레지스터이며, 다음의 입력이 들어오는 타이밍에, 보지하고 있는 값을 오른쪽 옆의 쉬프트 레지스터에 송출하고, 왼쪽 옆의 쉬프트 레지스터로부터 출력되어 온 값을 보지한다.
웨이트 곱셈기(6002-0~6002-M)는, 웨이트 제어부(6004)로부터 출력되는 제어 신호에 따라, h2 (t)의 값을 0 또는 1로 전환한다.
가산부(6003)는, 웨이트 곱셈기(6002-0~6002-M)의 출력에 대해 배타적 논리합 연산을 행하여, 연산 결과 Zk를 산출하고, 산출한 Zk를, 도 61의 가산부(5804)에 출력한다.
다시 도 61로 돌아와서, 가산부(5804)는, 제 1 정보 연산부(5802-1), 제 2 정보 연산부(5802-2), 제 3 정보 연산부(5802-3), 및, 패리티 연산부(5803)로부터 출력되는 연산 결과 Y1 ,k, Y2 ,k, Y3 ,k, Zk의 배타적 논리합 연산을 행하여, 시각 k의 패리티 Pk를 얻어, 출력한다. 가산부(5804)는, 시각 k의 패리티 Pk를 패리티 연산부(5803)에도 출력한다.
부호화율 설정부(5805)는, 부호화기(5800)의 부호화율을 설정하고, 부호화율 정보를 정보 생성부(5801)에 출력한다.
웨이트 제어부(5806)는, 웨이트 제어부(5806) 내에 보지하는 식(106-i) 및 식(109-i)의 제로를 만족시키는 패리티 검사 다항식에 기초하는 시각 k에 있어서의 h1 (m)의 값을, 제 1 정보 연산부(5802-1), 제 2 정보 연산부(5802-2), 제 3 정보 연산부(5802-3) 및 패리티 연산부(5803)에 출력한다. 또, 웨이트 제어부(5806)는, 웨이트 제어부(5806) 내에 보지하는 식(106-i) 및 식(109-i)에 대응한 제로를 만족시키는 패리티 검사 다항식에 기초하여, 그 타이밍에 있어서의 h2 (m)의 값을 6002-0~6002-M에 출력한다.
또한, 도 64에 본 실시형태에 따른 부호화기의 다른 구성예를 나타낸다. 도 64의 부호화기에 있어서, 도 61의 부호화기와 공통되는 구성 부분에는, 도 61과 동일한 부호를 붙이고 있다. 도 64의 부호화기(5800)는, 부호화율 설정부(5805)가, 부호화율의 정보를 제 1 정보 연산부(5802-1), 제 2 정보 연산부(5802-2), 제 3 정보 연산부(5802-3), 및, 패리티 연산부(5803)에 출력하는 점에서, 도 61의 부호화기(5800)와 다르다.
제 2 정보 연산부(5802-2)는, 부호화율이 1/2일 경우에는, 연산 처리를 행하지 않고, 연산 결과 Y2 ,k로서 0을 가산부(5804)에 출력한다. 또, 제 3 정보 연산부(5802-3)는, 부호화율이 1/2 또는 2/3일 경우에는, 연산 처리를 행하지 않고, 연산 결과 Y3 ,k로서 0을 가산부(5804)에 출력한다.
또한, 도 61의 부호화기(5800)에서는, 정보 생성부(5801)가, 부호화율에 따라, 시점 i의 정보 X2 ,i, 정보 X3 ,i를 0으로 설정한 것에 비해, 도 64의 부호화기(5800)에서는, 제 2 정보 연산부(5802-2) 및 제 3 정보 연산부(5802-3)가, 부호화율에 따라, 연산 처리를 정지하고, 연산 결과 Y2 ,k, Y3 ,k로서 0을 출력하기 때문에, 얻어지는 연산 결과는 도 61의 부호화기(5800)와 동일하다.
이와 같이, 도 64의 부호화기(5800)에서는, 제 2 정보 연산부(5802-2) 및 제 3 정보 연산부(5802-3)가, 부호화율에 따라, 연산 처리를 정지하므로, 도 61의 부호화기(5800)에 비해 연산 처리를 저감할 수 있다
이상의 구체적인 예와 같이, 식(106-i) 및 식 (109-i)을 이용해서 설명한 부호화율 (n-1)/n인 LDPC-CC와 부호화기/복호화기의 회로를 공통화하는 것이 가능한 부호화율 (m-1)/m인 LDPC-CC(n<m)의 부호에서는, 부호화율이 큰 부호화율 (m-1)/m인 LDPC-CC의 부호화기를 준비하고, 부호화율 (n-1)/n일 때, Xk(D)(단, k=n, n+1, …, m-1)에 관련된 연산의 출력을 제로로 하고, 부호화율 (n-1)/n 일 때의 패리티를 구함으로써, 부호화기의 회로의 공통화가 가능하게 된다.
다음에, 실시형태 1에서 설명한 LDPC-CC의 복호화기의 회로의 공용화 방법에 대해서 자세하게 설명한다.
도 65는, 본 실시형태에 따른 복호화기의 주요부 구성을 나타내는 블록도이다. 또한, 도 65에 나타내는 복호화기(6100)는, 부호화율 1/2, 2/3, 3/4에 대응 가능한 복호화기이다. 도 65의 복호화기(6100)는, 대수 우도비 설정부(6101) 및 행렬 처리 연산부(6102)를 주로 구비한다.
대수 우도비 설정부(6101)는, 도시하지 않는 대수 우도비 연산부에 의해 산출되는 수신 대수 우도비 및 부호화율을 입력시켜, 부호화율에 따라, 수신 대수 우도비에 기지(旣知)의 대수 우도비를 삽입한다.
예를 들면, 부호화율이 1/2일 경우, 부호화기(5800)에서는, X2 ,k, X3 ,k로서 "0"을 송신하고 있는 것에 상당하므로, 대수 우도비 설정부(6101)는, 기지 비트 "0"에 대응하는 고정된 대수 우도비를 X2 ,k, X3 ,k의 대수 우도비로서 삽입하고, 삽입 후의 대수 우도비를 행렬 처리 연산부(6102)에 출력한다. 이하, 도 66을 이용해 설명한다.
도 66에 나타내는 것처럼, 부호화율 1/2일 경우, 대수 우도비 설정부(6101)는, 시점 k의 X1 ,k 및 Pk에 대응하는 수신 대수 우도비 LLRX1 ,k, LLRPk가 입력된다. 그리고, 대수 우도비 설정부(6101)는, X2 ,k, X3 ,k에 대응하는 수신 대수 우도비LLRX2,k, LLR3 ,k를 삽입한다. 도 66에 있어서, 점선의 동그라미로 둘러싸인 수신 대수 우도비는, 대수 우도비 설정부(6101)에 의해 삽입된 수신 대수 우도비 LLRX2 ,k, LLR3,k를 나타낸다. 대수 우도비 설정부(6101)는, 수신 대수 우도비 LLRX2 ,k, LLR3 ,k로서 고정값의 대수 우도비를 삽입한다.
또, 부호화율이 2/3일 경우, 부호화기(5800)는, X3 ,k로서 "0"을 송신하고 있는 것에 상당하므로, 대수 우도비 설정부(6101)는, 기지 비트 "0"에 대응하는 고정된 대수 우도비를 X3 ,k의 대수 우도비로서 삽입하고, 삽입 후의 대수 우도비를 행렬 처리 연산부(6102)에 출력한다. 이하, 도 67을 이용해 설명을 한다.
도 67에 나타내는 것처럼, 부호화율 2/3일 경우, 대수 우도비 설정부(6101)는, X1 ,k, X2 ,k 및 Pk에 대응하는 수신 대수 우도비 LLRX1 ,k, LLRX2 ,k, LLRPk를 입력시킨다. 그래서, 대수 우도비 설정부(6101)는, X3 ,k에 대응하는 수신 대수 우도비 LLR3 ,k를 삽입한다. 도 67에 있어서, 점선 동그라미로 둘러싸인 수신 대수 우도비는, 대수 우도비 설정부(6101)에 의해 삽입된 수신 대수 우도비 LLR3 ,k를 나타낸다. 대수 우도비 설정부(6101)는, 수신 대수 우도비 LLR3 ,k로서 고정값의 대수 우도비를 삽입한다.
도 15의 행렬 처리 연산부(6102)는, 기억부(6103), 행처리 연산부(6104) 및 열처리 연산부(6105)를 구비한다.
기억부(6103)는, 수신 대수 우도비, 행처리에 의해 얻어지는 외부값 αmn 및 열처리에 의해 얻어지는 사전값(事前値) βmn을 보지한다.
행처리 연산부(6104)는, 부호화기(5800)가 서포트하는 부호화율 중, 최대의 부호화율 3/4인 LDPC-CC의 패리티 검사 행렬 H의 행방향의 웨이트 패턴을 보지한다. 행처리 연산부(6104)는, 해당 행방향의 웨이트 패턴에 따라, 기억부(6103)로부터 필요한 사전값 βmn을 판독하여, 행처리 연산을 행한다.
행처리 연산에 있어서, 행처리 연산부(6104)는, 사전값 βmn을 이용해, 단일 패리티 검사 부호의 복호를 행하고, 외부값 αmn을 구한다.
제 m번째의 행처리에 대해 설명한다. 단, 2원 M×N 행렬 H={Hmn}을 복호 대상으로 하는 LDPC 부호의 검사 행렬이라고 한다. Hmn=1을 만족시키는 모든 조(m, n)에 대해서, 다음의 갱신식을 이용해 외부값 amn을 갱신한다.
Figure pct00126
여기서,Φ(x)는, Gallager의 f함수라고 불리며, 다음 식으로 정의된다.
Figure pct00127
열처리 연산부(6105)는, 부호화기(5800)가 서포트하는 부호화율 중, 최대의 부호화율 3/4인 LDPC-CC의 검사 행렬 H의 열방향의 웨이트 패턴을 보지한다. 열처리 연산부(6105)는, 해당 열방향의 웨이트 패턴에 따라, 기억부(321)로부터 필요한 외부값 αmn을 판독하여, 사전값 βmn을 구한다.
열처리 연산에 있어서, 열처리 연산부(6105)는, 입력 대수 우도비 λn과 외부값 αmn을 이용해 반복 복호에 의해, 사전값βmn을 구한다.
제 m번째의 열처리에 대해 설명한다.
Hmn=1을 만족시키는 모든 조(m, n)에 대해서, 다음의 갱신식을 이용해 bmn을 갱신한다. 단, 초기의 연산에서는, αmn=0으로 계산한다.
Figure pct00128
복호화기(6100)는, 상술한 행처리와 열처리를 소정의 횟수만큼 반복함으로써, 사후 대수 우도비를 얻는다.
이상과 같이, 본 실시형태에서는, 대응 가능한 부호화율 중, 가장 높은 부호화율을 (m-1)/m으로 하고, 부호화율 설정부(5805)가, 부호화율을 (n-1)/n으로 설정했을 때, 정보 생성부(5801)는, 정보 Xn ,k부터 정보 Xm -1,k까지의 정보를 제로로 설정한다.
예를 들면, 대응하는 부호화율이 1/2, 2/3, 3/4일 경우(m=4), 제 1 정보 연산부(5802-1)는, 시점 k의 정보 X1 ,k를 입력시켜, X1(D)항을 산출한다. 또, 제 2 정보 연산부(5802-2)는, 시점 k의 정보 X2 ,k를 입력시켜, X2(D)항을 산출한다. 또, 제 3 정보 연산부(5802-3)은, 시점 k의 정보 X3 ,k를 입력시켜, X3(D)항을 산출한다.
또, 패리티 연산부(5803)는, 시점 k-1의 패리티 Pk -1을 입력시켜, P(D)항을 산출한다. 또, 가산부(5804)는, 제 1 정보 연산부(5802-1), 제 2 정보 연산부(5802-2), 제 3 정보 연산부(5802-3)의 연산 결과 및 패리티 연산부(5803)의 연산 결과의 배타적 논리합을, 시각 k의 패리티 Pk로서 얻도록 했다.
이 구성에 의하면, 다른 부호화율에 대응한 LDPC-CC를 작성하는 경우에 있어서도, 본 설명에 있어서의 정보 연산부의 구성을 공통화할 수 있기 때문에, 저연산 규모로, 복수의 부호화율에 대응 가능한 LDPC-CC의 부호화기, 복호화기를 제공할 수 있다.
그리고, 부호화기/복호화기의 회로의 공용화를 가능하게 하는 부호화율 중에서, 최대의 부호화율에 따른 복호화기의 구성에, 대수 우도비 설정부(6101)를 추가함으로써, 복수의 부호화율에 대응해서 복호를 행할 수 있다. 또한, 대수 우도비 설정부(6101)는, 부호화율에 따라, 시점 k의 정보 Xn ,k부터 정보 Xm -1,k까지의 정보에 대응하는 대수 우도비를 기정값으로 설정한다.
또한, 이상의 설명에서는, 부호화기(5800)가 서포트하는 최대의 부호화율이 3/4일 경우에 대해 설명했지만, 서포트하는 최대의 부호화율은 이것에 한하지 않으며, 부호화율 (m-1)/m(m은 5 이상의 정수)을 서포트하는 경우에 있어서도 적용 가능하다(당연하지만, 최대 부호화율이 2/3라도 좋다.). 이 경우에는, 부호화기(5800)가, 제 1~제 (m-1) 정보 연산부를 구비하는 구성으로 하여, 가산부(5804)가, 제 1~제 (m-1) 정보 연산부의 연산 결과 및 패리티 연산부(5803)의 연산 결과의 배타적 논리합을, 시각 k의 패리티 Pk로서 얻도록 하면 좋다.
또, 송수신 장치(부호화기/복호화기)가 서포트하는 부호화율이, 모두, 상기에서 설명한 방법에 기초한 부호인 경우, 서포트하는 부호화율 중, 가장 높은 부호화율의 부호화기/복호화기를 가짐으로써, 복수의 부호화율의 부호화, 복호화에 대응할 수 있고, 이때, 연산 규모 삭감의 효과가 매우 크다.
또, 상술에서는, 복호 방식의 예로서 sum-product 복호를 예로 설명했지만, 복호 방법은 이것에 한하는 것은 아니고, 비특허 문헌 4~비특허 문헌 6에 표시되어 있는, 예를 들면, min-sum 복호, Normalized BP(Belief Propagation) 복호, Shuffled BP 복호, Offset BP 복호 등의, message-passing 알고리즘을 이용한 복호 방법(BP 복호)을 이용하면 동일하게 실시할 수 있다.
다음에, 통신 상황에 따라 적응적으로 부호화율을 전환하는 통신 장치에, 본 발명을 적용했을 경우의 형태에 대해서 설명한다. 또한, 이하에서는, 본 발명을 무선 통신 장치에 적용했을 경우를 예로 설명하는데, 이것에 한하지 않고, 전등선 통신(PLC : Power Line Communication) 장치, 가시광선 통신 장치, 또는, 광통신 장치에도 적용 가능하다.
도 68에, 적응적으로 부호화율을 전환하는 통신 장치(6200)의 구성을 나타낸다. 도 68의 통신 장치(6200)의 부호화율 결정부(6203)는, 통신 상대의 통신 장치로부터 송신되는 수신 신호(예를 들면, 통신 상대가 송신한 피드백 정보)가 입력되면, 수신 신호에 수신 처리 등을 행한다. 그리고, 부호화율 결정부(6203)는, 통신 상대의 통신 장치와의 사이의 통신 상황 정보, 예를 들면, 비트 에러율, 패킷 에러율, 프레임 에러율, 수신 전기장 강도 등의 정보를(예를 들면, 피드백 정보로부터) 얻어, 통신 상대의 통신 장치와의 사이의 통신 상황의 정보로부터 부호화율 및 변조 방식을 결정한다.
그리고, 부호화율 결정부(6203)는, 결정한 부호화율 및 변조 방식을, 제어 신호로서 부호화기(6201) 및 변조부(6202)에 출력한다. 단, 부호화율의 결정은, 반드시 통신 상대로부터의 피드백 정보에 기초할 필요는 없다.
부호화율 결정부(6203)는, 예를 들면, 도 69에 나타내는 등의 송신 포맷을 이용해, 제어 정보 심볼에 부호화율의 정보를 포함시킴으로써, 부호화기(6201)가 이용하는 부호화율을 통신 상대의 통신 장치에 통지한다. 단, 도 69에서는 도시하지 않지만, 통신 상대가, 복조나 채널 추정을 위해 필요한, 예를 들면, 기지 신호(프리앰블, 파일럿 심볼, 레퍼런스 심볼 등)를 포함하고 있는 것으로 한다.
이와 같이 하여, 부호화율 결정부(6203)는, 통신 상대의 통신 장치(6300)(도 70 참조)가 송신한 변조 신호를 수신하고, 그 통신 상황에 기초하여, 송신하는 변조 신호의 부호화율을 결정함으로써, 부호화율을 적응적으로 전환한다. 부호화기(6201)는, 제어 신호에 의해 지정된 부호화율에 기초하여, 상술한 절차로 LDPC-CC 부호화를 행한다. 변조부(6202)는, 제어 신호에 의해 지정된 변조 방식을 이용해, 부호화 후의 계열을 변조한다.
도 70에, 통신 장치(6200)와 통신을 행하는 통신 상대의 통신 장치의 구성예를 나타낸다. 도 70의 통신 장치(6300)의 제어 정보 생성부(6304)는, 베이스밴드 신호에 포함되는 제어 정보 심볼로부터 제어 정보를 추출한다. 제어 정보 심볼에는, 부호화율의 정보가 포함된다. 제어 정보 생성부(6304)는, 추출한 부호화율의 정보를 제어 신호로서 대수 우도비 생성부(6302) 및 복호화기(6303)에 출력한다.
수신부(6301)는, 통신 장치(6200)로부터 송신되는 변조 신호에 대응하는 수신 신호에 주파수 변환, 직교 복조 등의 처리를 실시함으로써 베이스밴드 신호를 얻어, 베이스밴드 신호를 대수 우도비 생성부(6302)에 출력한다. 또, 수신부(6301)는, 베이스밴드 신호에 포함되는 기지 신호를 이용해, 통신 장치(6200)와 통신 장치(6300) 사이의(예를 들면, 무선) 전송로에 있어서의 채널 변동을 추정하고, 추정한 채널 추정 신호를 대수 우도비 생성부(6302)에 출력한다.
또, 수신부(6301)는, 베이스밴드 신호에 포함되는 기지 신호를 이용해, 통신 장치(6200)와 통신 장치(6300) 사이의(예를 들면, 무선) 전송로에 있어서의 채널 변동을 추정하고, 전파로 상황의 판단을 가능하게 하는 피드백 정보(채널 변동 그 자체, 예를 들면, Channel State Information이 그 일례)를 생성하여, 출력한다. 이 피드백 정보는, 도시하지 않는 송신 장치를 통해, 제어 정보의 일부로서 통신 상대(통신 장치 6200)에게 송신된다. 대수 우도비 생성부(6302)는, 베이스밴드 신호를 이용해, 각 송신 계열의 대수 우도비를 구하고, 얻어진 대수 우도비를 복호화기(6303)에 출력한다.
복호화기(6303)는, 상술한 바와 같이, 제어 신호가 나타내는 부호화율 (s-1)/s에 따라, 시점 k의 정보 Xs ,k부터 정보 Xm -1,k까지의 정보에 대응하는 대수 우도비를 기정값으로 설정하고, 복호화기(6303)에 있어서 회로의 공용화를 실시한 부호화율 중, 최대의 부호화율에 따른 LDPC-CC의 패리티 검사 행렬을 이용해, BP 복호한다.
이와 같이 하여, 본 발명을 적용한 통신 장치(6200) 및 통신 상대의 통신 장치(6300)의 부호화율이 통신 상황에 따라 적응적으로 변경될 수 있다.
또한, 부호화율의 변경 방법은 이것에 한한 것은 아니고, 통신 상대인 통신 장치(6300)가 부호화율 결정부(6203)를 구비하고 희망하는 부호화율을 지정하도록 해도 좋다. 또, 통신 장치(6300)가 송신한 변조 신호로부터 통신 장치(6200)가 전송로의 변동을 추정하여, 부호화율을 결정해도 좋다. 이 경우, 상술한 피드백 정보는 불필요하게 된다.
본 발명의 부호화 방법의 하나의 형태는, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용하여, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화 방법이며, 상기 시변 주기 q가, 3보다 큰 소수(素數)이며, 정보 계열이 입력되면, 식(116)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용하여, 상기 정보 계열을 부호화한다.
Figure pct00129
식(116)에 있어서, 「%」는 modulo를 의미하고, 각 계수가, k=1, 2, …, n-1에 대해서, 하기를 만족시킨다.
「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=…=a#g,k,1%q=…=a#q-2,k,1%q=a#q-1,k,1%q=vp=k(vp=k : 고정값)」
「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=…=b#g,1%q=…=b#q-2,1%q=b#q-1,1%q=w(w : 고정값)」
「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=…=a#g,k,2%q=…=a#q-2,k,2%q=a#q-1,k,2%q=yp=k(yp=k : 고정값)」
「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=…=b#g,2%q=…=b#q-2,2%q=b#q-1,2%q=z(z : 고정값)」
「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=…=a#g,k,3%q=…=a#q-2,k,3%q=a#q-1,k,3%q=sp=k(sp=k : 고정값)」
또, 식(116)에 있어서, a#g,k,1,a#g,k,2,a#g,k,3은 1 이상의 자연수로하고, a#g,k,1≠a#g,k,2,a#g,k,1≠a#g,k,3,a#g,k,2≠a#g,k,3이 성립하는 것으로 한다. 또, b#g,1,b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다.
또, 식(116)에 있어서, vp =k,yp =k는, 1 이상의 자연수로 한다.
본 발명의 부호화 방법의 하나의 형태는, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화 방법이며, 상기 시변 주기 q가, 3보다 큰 소수이며, 정보 계열이 입력되면, 식(117)에서 나타나는 g번째(g=0, 1, …, q-1)의 0을 만족시키는 패리티 검사 다항식 중,
「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=…=a#g,k,1%q=… =a#q-2,k,1%q=a#q-1,k,1%q=vp=k(vp=k : 고정값)」,
「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=…=b#g,1%q=…=b#q-2,1%q=b#q-1,1%q=w(w : 고정값)」,
「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=…=a#g,k,2%q=…=a#q-2,k,2%q=a#q-1,k,2%q=yp=k(yp=k : 고정값)」,
「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=…=b#g,2%q=…=b#q-2,2%q=b#q-1,2%q=z(z : 고정값)」,
및,
「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=…=a#g,k,3%q=…=a#q-2,k,3%q=a#q-1,k,3%q=sp=k(sp=k : 고정값)」
를, k=1, 2, …, n-1에 대해서 만족시키는 패리티 검사 다항식을 이용하여, 상기 정보 계열을 부호화한다.
Figure pct00130
본 발명의 부호화기의 하나의 형태는, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용하여, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화기이며, 상기 시변 주기 q가, 3보다 큰 소수이며, 시점 i의 정보 비트 Xr[i](r=1, 2, …, n-1)가 입력되면, 식(116)에 표시되는 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식과 등가(等價)의 식을 식(118)로 하여, i%q=k일 경우에, 식(118)의 g에 k를 대입한 식을 이용하여, 시점 i의 패리티 비트 P[i]를 생성하는 생성 수단과, 상기 패리티 비트 P[i]를 출력하는 출력 수단을 구비한다.
Figure pct00131
본 발명의 복호 방법의 하나의 형태는, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q(3보다 큰 소수)인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 상기 부호화 방법에 있어서, 식(116)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용해서 부호화된 부호화 정보 계열을 복호하는 복호 방법이며, 상기 부호화 정보 계열이 입력되면, g번째의 0을 만족시키는 상기 패리티 검사 다항식인 식(116)을 이용해서 생성되는 패리티 검사 행렬에 기초하여, 신뢰도 전파(BP : Belief Propagation)를 이용해, 상기 부호화 정보 계열을 복호한다.
본 발명의 복호기의 하나의 형태는, 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q(3보다 큰 소수)인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 상기 부호화 방법에 있어서, 식(116)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용해서 부호화된 부호화 정보 계열을 복호하는 복호기이며, 상기 부호화 정보 계열이 입력되면, g번째의 0을 만족시키는 상기 패리티 검사 다항식인 식(116)을 이용해서 생성되는 패리티 검사 행렬에 기초하여, 신뢰도 전파(BP : Belief Propagation)를 이용해, 상기 부호화 정보 계열을 복호하는 복호 수단을 구비한다.
본 발명의 부호화 방법의 하나의 형태는, 시변 주기 s인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)의 부호화 방법이며, 식(98-i)에 표시되는 제 i(i=0, 1, …, s-2, s-1) 패리티 검사 다항식을 공급하는 단계와, 상기 제 0부터 제 s-1 패리티 검사 다항식과 입력 데이터의 선형 연산에 의해 LDPC-CC 부호어를 취득하는 단계를 가지고, Xk(D)의 계수 AXk ,i의 시변 주기가 αkk는 1보다 큰 정수)이고(k=1, 2, …, n-2, n-1), P(D)의 계수 BXk,i의 시변 주기가 β(β는 1보다 큰 정수)이고, 상기 시변 주기 s는, α1, α2, …, αn-2, αn-1, β의 최소 공배수이며, i%αk=j%αk(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 식(97)이 성립하고, i%β=j%β(i, j=0, 1, …, s-2, s-1; i≠j)가 성립할 때, 식(98)이 성립한다.
본 발명의 부호화 방법의 하나의 형태는, 상기 부호화 방법에 있어서, 상기 시변 주기 α1, α2, …, αn-1, 및 β가 서로 소의 관계이다.
본 발명의 부호화기의 하나의 형태는, 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)의 부호화기이며, 상기 부호화 방법에 의해 패리티 계열을 구하는 패리티 계산부를 구비한다.
본 발명의 복호 방법의 하나의 형태는, 시변 주기 s인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 상기 부호화 방법에 있어서, 식(98-i)을 i번째(i=0, 1, …, s-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용해서 부호화된 부호화 정보 계열을 복호하는 복호 방법이며, 상기 부호화 정보 계열이 입력되면, i번째의 0을 만족시키는 상기 패리티 검사 다항식인 식(98-i)을 이용해 생성되는 패리티 검사 행렬에 기초하여, 신뢰도 전파(BP : Belief Propagation)를 이용해, 상기 부호화 정보 계열을 복호한다.
본 발명의 복호기의 하나의 형태는, 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)를 신뢰도 전파(BP : Belief Propagation)를 이용해 복호하는 복호기이며, 상기 부호화기에서 이용한 패리티 검사 다항식에 대응하는 검사 행렬을 이용해서 행처리 연산을 행하는 행처리 연산부와, 상기 검사 행렬을 이용해서 열처리 연산을 행하는 열처리 연산부와, 상기 행처리 연산부 및 상기 열처리 연산부에서의 연산 결과를 이용해 부호어를 추정하는 판정부를 구비한다.
본 발명의 부호화 방법의 하나의 형태는, 식(119)에 표시되는 부호화율 1/2, 시변 주기 h의 g번째(g=0, 1, …, h-1)의 패리티 검사 다항식에 기초하여 정의된 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)로부터, 부호화율 1/3, 시변 주기 h인 저밀도 패리티 검사 컨볼루션 부호를 생성하는 부호화 방법이며, 상기 부호화율 1/2, 상기 시변 주기 h인 저밀도 패리티 검사 컨볼루션 부호를 이용한 부호화 출력인 정보 및 패리티 비트로 구성되어 데이터 계열에 있어서, 상기 정보의 비트 계열로부터 Z비트의 정보 Xj(시점 j는 시점 j1부터 시점 j2까지 포함되는 시점이고, j1및 j2는, 모두 짝수, 또는, 모두 홀수이며, Z=(j2-j1)/2이다)를 선택하는 단계와, 선택한 상기 Z비트의 정보 Xj에 기지 정보를 삽입하는 단계와, 상기 기지 정보를 포함한 상기 정보로부터 상기 패리티 비트를 구하는 단계를 가지고, 상기 선택하는 단계는, 상기 j1부터 상기 j2까지에 포함되는 모든 상기 j를 h로 나눗셈했을 때에 얻어지는 h종류의 나머지에 있어서, 각 나머지가 되는 개수에 기초하여, 상기 Z비트의 정보 Xj를 선택한다.
Figure pct00132
식(119)에 있어서, X(D)는 정보 X의 다항식 표현이며, P(D)는 패리티의 다항식 표현이다. 또, a#g,1,1, a#g,1,2는 1 이상의 자연수로 하고, a#g,1,1≠a#g,1,2가 성립하는 것으로 한다. 또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다(g=0, 1, 2, …, h-2, h-1).
또, 식(119)에 있어서, 이하의 <조건 #17>을 만족하고 있는 것으로 한다. 여기에서, 「c%d」는 「c를 d로 나눗셈한 나머지」를 나타낸다.
<조건#17>
「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=…=a#g,1,1%h=…=a#h-2,1,1%h=a#h-1,1,1%h=vp=1(vp=1 : 고정값)」
「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=…=b#g,1%h=…=b#h-2,1%h=b#h-1,1%h=w(w : 고정값)」
「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=…=a#g,1,2%h=…=a#h-2,1,2%h=a#h-1,1,2%h=yp=1(yp=1 : 고정값)」
「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=…=b#g,2%h=…=b#h-2,2%h=b#h-1,2%h=z(z : 고정값)」
본 발명의 부호화 방법의 하나의 형태는, 상기 시점 j1는 시점 2hi이고, 상기 시점 j2는 시점 2h(i+k-1)+2h-1이며, 상기 Z비트는, hk비트이며,
상기 선택하는 단계는, 정보 X2hi, X2hi +1, X2hi +2, …, X2hi +2h-1, …, X2h (i+k-1), X2h(i+k-1)+1, X2h (i+k-1)+2, …, X2h (i+k-1)+2h-1의 2×h×k비트로부터, 상기 Z비트의 정보 Xj를 선택하고, 상기 시점 j1부터 상기 시점 j2에 포함되는 모든 상기 시점 j를 h로 나눗셈했을 때의 나머지 중, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」 와 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하가 되고, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하가 되고, 「나머지가 (vp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =1+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하가 되는 조건을 만족시키는 γ가 적어도 1개 존재하도록, 상기 Z비트의 정보 Xj를 선택한다.
본 발명의 부호화 방법의 하나의 형태는, 상기 조건을 만족시키지 않는 γ로는, 「나머지가 (0+γ) mod h가 되는 개수」, 「나머지가 (vp =1+γ) mod h가 되는 개수」, 「나머지가 (yp =1+γ) mod h가 되는 개수」는 제로가 된다.
본 발명의 복호 방법의 하나의 형태는, 시변 주기 h인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 청구항 1에 기재한 부호화 방법에 있어서, 식(119)을 g번째(i=0, 1, …, h-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용해서 부호화된 부호화 정보 계열을 복호하는 복호 방법이며, 상기 부호화 정보 계열이 입력되면, g번째의 0을 만족시키는 상기 패리티 검사 다항식인 식(119)를 이용해서 생성되는 패리티 검사 행렬에 기초하여, 신뢰도 전파(BP : Belief Propagation)를 이용해, 상기 부호화 정보 계열을 복호한다.
본 발명의 부호화기의 하나의 형태는, 컨볼루션 부호로부터 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)를 작성하는 부호화기이며, 상기 부호화 방법에 의해 패리티를 구하는 계산부를 구비한다.
본 발명의 복호기의 하나의 형태는, 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)를 신뢰도 전파(BP : Belief Propagation)를 이용해 복호하는 복호기이며, 상기 부호화기에서 이용한 패리티 검사 다항식에 대응하는 검사 행렬을 이용해서 행처리 연산을 행하는 행처리 연산부와, 상기 검사 행렬을 이용해서 열처리 연산을 행하는 열처리 연산부와, 상기 행처리 연산부 및 상기 열처리 연산부에서의 연산 결과를 이용해 부호어를 추정하는 판정부를 구비한다.
본 발명의 부호화 방법의 하나의 형태는, 식(120-g)에 표시되는 부호화율 (n-1)/n, 시변 주기 h의 g번째(g=0, 1, …, h-1)의 패리티 검사 다항식에 기초하여 정의된 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)로부터, 부호화율 (n-1)/n보다 작은 부호화율인 시변 주기 h인 저밀도 패리티 검사 컨볼루션 부호를 생성하는 부호화 방법이며, 상기 부호화율 (n-1)/n, 상기 시변 주기 h인 저밀도 패리티 검사 컨볼루션 부호를 이용한 부호화 출력인 정보 및 패리티 비트로 구성되어 데이터 계열에 있어서, 상기 정보의 비트 계열로부터 Z비트의 정보 Xf ,j(f=1, 2, 3, …, n-1, j는 시각)을 선택하는 단계와, 선택한 상기 정보 Xf ,j에 기지 정보를 삽입하는 단계와, 상기 기지 정보를 포함한 상기 정보로부터 상기 패리티 비트를 구하는 단계를 가지고, 상기 선택하는 단계는, 시각 j 모두에 대해서, h로 나눗셈했을 때의 나머지, 및, 해당 나머지를 취하는 상기 시각 j의 개수에 기초하여, 상기 정보 Xf ,j를 선택한다.
Figure pct00133
식(120-g)에 있어서, Xp(D)는 정보 X의 다항식 표현이고, P(D)는 패리티의 다항식 표현이다(p=1, 2, …, n-1). 또, a#g,p,1, a#g,p,2는 1 이상의 자연수로 하고, a#g,p,1≠a#g,p,2,이 성립하는 것으로 한다. 또, b#g,1, b#g,2는 1 이상의 지연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다(g=0, 1, 2, …, h-2, h-1; p=1, 2, …, n-1).
또, 식(120-g)에 있어서, 이하의 <조건 #18-1>, <조건#18-2>을 만족시키고 있는 것으로 한다. 여기서, 「c%d」는 「c를 d로 나눗셈한 나머지」를 나타낸다.
<조건#18-1>
「a#0,k,1%h=a#1,k,1%h=a#2,k,1%h=a#3,k,1%h=…=a#g,k,1%h=…=a#h-2,k,1%h=a#h-1,k,1%h=vp=k(vp=k : 고정값)(k=1, 2, …, n-1)」
및,
「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=…=b#g,1%h=…=b#h-2,1%h=b#h-1,1%h=w(w : 고정값)」
<조건#18-2>
「a#0,k,2%h=a#1,k,2%h=a#2,k,2%h=a#3,k,2%h=…=a#g,k,2%h=…=a#h-2,k,2%h=a#h-1,k,2%h=yp=k(yp=k : 고정값)(k=1, 2, …, n-1)」
및,
「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=…=b#g,2%h=…=b#h-2,2%h=b#h-1,2%h=z(z : 고정값)」
본 발명의 부호화 방법의 하나의 형태는, 상기 부호화 방법에 있어서, 상기 시각 j는, hi~h(i+k-1)+h-1의 어느 하나의 값을 취하는 시각이며, 상기 선택하는 단계는, 정보 X1 , hi, X2 , hi, …, Xn -1, hi, …, X1 ,h(i+k-1)+h-1, X2 ,h(i+k-1)+h-1, …, Xn -1,h(i+k-1)+h-1의 h×(n-1)×k비트로부터, 상기 Z비트의 상기 정보 Xf ,j를 선택하고, 상기 시각 j 전부에 대해서, h로 나눗셈했을 때의 나머지 중, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp=f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하가 되고, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하가 되고, 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하가 되는(f=1, 2, 3, …, n-1) 등의 γ가 적어도 1개 존재하도록, 상기 정보 Xf ,j를 선택한다.
본 발명의 부호화 방법의 하나의 형태는, 상기 부호화 방법에 있어서, 상기 시각 j는, 0~v의 어느 하나의 값을 취하고, 상기 선택하는 단계는, 정보 X1 ,0, X2 ,0, …, Xn -1,0, …, X1 ,v, X2 ,v, …, Xn -1,v의 비트 계열로부터 상기 Z비트의 상기 정보 Xf ,j를 선택하고, 상기 시각 j 전부에 대해서, h로 나눗셈했을 때의 나머지 중, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하가 되고, 「나머지가 (0+γ) mod h가 되는 개수(단, 개수는 0이 아님.)」와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하가 되고, 「나머지가 (vp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수와 「나머지가 (yp =f+γ) mod h(단, 개수는 0이 아님.)」가 되는 개수의 차는 1 이하가 되는(f=1, 2, 3, …, n-1) 등의 γ가 적어도 1개 존재하도록, 상기 정보 Xf ,j를 선택한다.
본 발명의 복호 방법의 하나의 형태는, 시변 주기 h인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 상기 부호화 방법에 있어서, 식(120-g)을 g번째(i=0, 1, …, h-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용하여 부호화된 부호화 정보 계열을 복호하는 복호 방법이며, 상기 부호화 정보 계열이 입력되면, g번째의 0을 만족시키는 상기 패리티 검사 다항식인 식(120-g)을 이용해서 생성되는 패리티 검사 행렬에 기초하여, 신뢰도 전파(BP : Belief Propagation)를 이용하여, 상기 부호화 정보 계열을 복호한다.
본 발명의 부호화기의 하나의 형태는, 컨볼루션 부호로부터 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)를 작성하는 부호화기이며, 상기 부호화 방법에 의해 패리티를 구하는 계산부를 구비한다.
본 발명의 복호기의 하나의 형태는, 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)를 신뢰도 전파(BP : Belief Propagation)를 이용해 복호하는 복호기이며, 상기 부호화기에서 이용한 패리티 검사 다항식에 대응하는 검사 행렬을 이용해서 행처리 연산을 행하는 행처리 연산부와, 상기 검사 행렬을 이용해서 열처리 연산을 행하는 열처리 연산부와, 상기 행처리 연산부 및 상기 열처리 연산부에서의 연산 결과를 이용해서 부호어를 추정하는 판정부를 구비한다.
본 발명은 상기 전부의 실시형태에 한정되지 않고, 여러 가지로 변경해서 실시할 수 있다. 예를 들면, 상기 실시형태에서는, 주로, 부호화기를 실현하는 경우에 대해 설명하고 있지만, 이것에 한하는 것은 아니고, 통신 장치로 실현하는 경우에 있어서도 적용 가능하다.(LSI(Large Scale Integration)에 의해 구성하는 것도 가능하다.)
또, 이 부호화 방법 및 복호화 방법을 소프트웨어로서 행할 수도 있다. 예를 들면, 상기 부호화 방법 및 통신 방법을 실행하는 프로그램을 미리 ROM(Read Only Memory)에 저장시켜 놓고, 그 프로그램을 CPU(Central Processor Unit)에 의해 동작시키도록 해도 좋다.
또, 상기 부호화 방법을 실행하는 프로그램을 컴퓨터에서 판독 가능한 기억 매체에 저장하고, 기억 매체에 저장된 프로그램을 컴퓨터의 RAM(Random Access Memory)에 기록하여, 컴퓨터를 그 프로그램에 따라 동작시키도록 해도 좋다.
또, 본 발명은, 무선 통신에 한하지 않고, 전등선 통신(PLC : Power Line Communication), 가시광선 통신, 광통신에 있어서도 유용한 것은 말할 필요도 없다.
또, 본 명세서에 있어서, 「시변 주기」라고 기재하고 있지만, 이것은, 시변 LDPC-CC가 형성하는 주기가 된다.
2009년 11월 13 일에 출원한 일본 특허 출원 제 2009-260503 호, 2010년 7월 12 일에 출원한 일본 특허 출원 제 2010-157991 호, 2010년 7월 30 일에 출원한 일본 특허 출원 제 2010-172577 호, 및, 2010년 10월 14 일에 출원한 일본 특허 출원 제 2010-231807 호에 포함되는 명세서, 도면 및 요약서의 개시 내용은, 모두 본원에 원용된다.
(산업상이용가능성)
본 발명에 따른 부호화 방법 및 부호화기 등은, 오류 정정 능력이 높기 때문에, 높은 데이터 수신 품질을 확보할 수 있다.
100, 2907, 2914, 3204, 3103, 3208, 3212 : LDPC-CC 부호화기
110 : 데이터 연산부
120 : 패리티 연산부
130 : 웨이트 제어부
140 : mod 2 가산(배타적 논리합 연산)기
111-1~111-M, 121-1~121-M, 221-1~221-M, 231-1~231-M : 쉬프트 레지스터(shift register)
112-0~112-M, 122-0~122-M, 222-0~222-M, 232-0~232-M : 웨이트 곱셈기
1910, 2114, 2617, 2605 : 송신 장치
1911, 2900, 3200 : 부호화기
1912 : 변조부
1920, 2131, 2609, 2613 : 수신 장치
1921 : 수신부
1922 : 대수 우도비 생성부
1923, 3310 : 복호화기
2110, 2130, 2600, 2608 : 통신 장치
2112, 2312, 2603 : 소실 정정 부호화 관련 처리부
2113, 2604 : 오류 정정 부호화부
2120, 2607 : 통신로
2132, 2610 : 오류 정정 복호부
2133, 2433, 2611 : 소실 정정 복호 관련 처리부
2211 : 패킷 생성부
2215, 2902, 2909, 3101, 3104, 3202, 3206, 3210 : 재배열부
2216 : 소실 정정 부호화기(패리티 패킷 생성부)
2217, 2317 : 오류 검출 부호 부가부
2314 : 소실 정정 부호화부
2316, 2560 : 소실 정정 부호화기
2435 : 오류 검출부
2436 : 소실 정정 복호기
2561 : 제 1 소실 정정 부호화기
2562 : 제 2 소실 정정 부호화기
2563 : 제 3 소실 정정 부호화기
2564 : 선택부
3313 : BP 복호기
4403 : 기지 정보 삽입부
4405 : 부호화기
4407 : 기지 정보 삭감부
4409 : 변조부
4603 : 대수 우도비 삽입부
4605 : 복호화부
4607 : 기지 정보 삭감부
44100 : 오류 정정 부호화부
44200 : 송신 장치
46100 : 오류 정정 복호부
5800 : 부호화기
5801 : 정보 생성부
5802-1 : 제 1 정보 연산부
5802-2 : 제 2 정보 연산부
5802-3 : 제 3 정보 연산부
5803 : 패리티 연산부
5804, 5903, 6003 : 가산부
5805 : 부호화율 설정부
5806, 5904, 6004 : 웨이트 제어부
5901-1~5901-M, 6001-1~6001-M : 쉬프트 레지스터
5902-0~5902-M, 6002-0~6002-M : 웨이트 곱셈기
6100 : 복호화기
6101 : 대수 우도비 설정부
6102 : 행렬 처리 연산부
6103 : 기억부
6104 : 행처리 연산부
6105 : 열처리 연산부
6200, 6300 : 통신 장치
6201 : 부호화기
6202 : 변조부
6203 : 부호화율 결정부
6301 : 수신부
6302 : 대수 우도비 생성부
6303 : 복호화기
6304 : 제어 정보 생성부

Claims (15)

  1. 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화 방법으로서,
    상기 시변 주기 q가, 3보다 큰 소수이며,
    정보 계열이 입력되면,
    식(1)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용하여, 상기 정보 계열을 부호화하는
    부호화 방법.

    [수학식 1]
    Figure pct00134


    식(1)에 있어서, 「%」는 modulo를 의미하고, 각 계수가, k=1, 2, …, n-1에 대해서, 하기를 만족시킨다.
    「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=…=a#g,k,1%q=…=a#q-2,k,1%q=a#q-1,k,1%q=vp=k(vp=k : 고정값)」
    「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=…=b#g,1%q=…=b#q-2,1%q=b#q-1,1%q=w(w : 고정값)」
    「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=…=a#g,k,2%q=…=a#q-2,k,2%q=a#q-1,k,2%q=yp=k(yp=k : 고정값)」
    「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=…=b#g,2%q=…=b#q-2,2%q=b#q-1,2%q=z(z : 고정값)」
    「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=…=a#g,k,3%q=…=a#q-2,k,3%q=a#q-1,k,3%q=sp=k(sp=k : 고정값)」

    또, 식(1)에 있어서, a#g,k,1, a#g,k,2, a#g,k,3은 1 이상의 자연수로 하고, a#g,k,1≠a#g,k,2, a#g,k,1≠a#g,k,3, a#g,k,2≠a#g,k,3이 성립하는 것으로 한다. 또, b#g,1, b#g,2는 1 이상의 자연수로 하고, b#g,1≠b#g,2가 성립하는 것으로 한다.
    또, 식(1)에 있어서, vp =k, yp =k는, 1 이상의 자연수로 한다.
  2. 제 1 항에 있어서,
    a#g,k,3=0인 부호화 방법.
  3. 제 1 항에 있어서,
    식(2-1) 및 식(2-2)가 성립하는 i, j(i≠j)가 존재하고,
    또는,
    식(2-3) 및 식(2-4)가 성립하는 i가 존재하는
    부호화 방법.

    [수학식 2]
    Figure pct00135

    단, i=1, 2, …, n-1, j=1, 2, …, n-1 및 i≠j라고 한다.
  4. 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화 방법이며,
    상기 시변 주기 q가, 3보다 큰 소수이며,
    정보 계열이 입력되면,
    식(3)에 표시되는 g번째(g=0, 1, …, q-1)의 0을 만족시키는 패리티 검사 다항식 중,
    「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=…=a#g,k,1%q=…=a#q-2,k,1%q=a#q-1,k,1%q=vp=k(vp=k : 고정값)」,
    「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=…=b#g,1%q=…=b#q-2,1%q=b#q-1,1%q=w(w : 고정값)」,
    「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=…=a#g,k,2%q=…=a#q-2,k,2%q=a#q-1,k,2%q=yp=k(yp=k : 고정값)」,
    「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=…=b#g,2%q=…=b#q-2,2%q=b#q-1,2%q=z(z : 고정값)」,
    및,
    「a#0,k,3%q=a#1,k,3%q=a#2,k,3%q=a#3,k,3%q=…=a#g,k,3%q=…=a#q-2,k,3%q=a#q-1,k,3%q=sp=k(sp=k : 고정값)」
    을, k=1, 2, …, n-1에 대해서 만족시키는 패리티 검사 다항식을 이용해서, 상기 정보 계열을 부호화하는
    부호화 방법.

    [수학식 3]
    Figure pct00136

  5. 제 4 항에 있어서,
    a#g,k,3=0인 부호화 방법.
  6. 제 4 항에 있어서,
    식(4-1) 및 식(4-2)가 성립하는 i, j(i≠j)가 존재하고,
    또는,
    식(4-3) 및 식(4-4)가 성립하는 i가 존재하는
    부호화 방법.

    [수학식 4]
    Figure pct00137

    단, i=1, 2, …, n-1, j=1, 2, …, n-1 및 i≠j라고 한다.
  7. 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 부호화기로서,
    상기 시변 주기 q가, 3보다 큰 소수이며,
    시점 i의 정보 비트 Xr[i](r=1, 2, …, n-1)가 입력되면,
    식(1)에 표시되는 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식과 등가인 식을 식(5)로 하여, i%q=k일 경우에, 식(5)의 g에 k를 대입한 식을 이용해서, 시점 i의 패리티 비트 P[i]를 생성하는 생성 수단과,
    상기 패리티 비트 P[i]를 출력하는 출력 수단
    을 구비하는 부호화기.

    [수학식 5]
    Figure pct00138

    단,
    Figure pct00139
    는 배타적 논리합을 나타내며 또 g=0, 1, …, q-1이다.
  8. 제 7 항에 있어서,
    a#g,k,3=0인 부호화기.
  9. 제 7 항에 있어서,
    식(2-1) 및 식(2-2)가 성립하는 i, j(i≠j)가 존재하고,
    또는,
    식(2-3) 및 식(2-4)가 성립하는 i가 존재하는
    부호화기.
  10. 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q(3보다 큰 소수)인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 청구항 1에 기재된 부호화 방법에 있어서, 식(1)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용해서 부호화된 부호화 정보 계열을 복호하는 복호 방법으로서,
    상기 부호화 정보 계열이 입력되면,
    g번째의 0을 만족시키는 상기 패리티 검사 다항식인 식(1)을 이용해서 생성되는 패리티 검사 행렬에 기초하여, 신뢰도 전파(BP : Belief Propagation)를 이용해서, 상기 부호화 정보 계열을 복호하는
    복호 방법.
  11. 제 10 항에 있어서,
    a#g,k,3=0인 복호 방법.
  12. 제 10 항에 있어서,
    식(1-1) 및 식(1-2)가 성립하는 i, j(i≠j)가 존재하고,
    또는,
    식(1-3) 및 식(1-4)이 성립하는 i가 존재하는
    복호 방법.
  13. 부호화율 (n-1)/n(n은 2 이상의 정수)인 패리티 검사 다항식을 이용해, 시변 주기 q(3보다 큰 소수)인 저밀도 패리티 검사 컨볼루션 부호(LDPC-CC : Low-Density Parity-Check Convolutional Codes)화를 행하는 청구항 1에 기재된 부호화 방법에 있어서, 식(1)을 g번째(g=0, 1, …, q-1)의 0을 만족시키는 상기 패리티 검사 다항식으로서 이용하여 부호화된 부호화 정보 계열을 복호하는 복호기로서,
    상기 부호화 정보 계열이 입력되면,
    g번째의 0을 만족시키는 상기 패리티 검사 다항식인 식(1)을 이용해서 생성되는 패리티 검사 행렬에 기초하여, 신뢰도 전파(BP : Belief Propagation)를 이용해서, 상기 부호화 정보 계열을 복호하는 복호 수단을 구비하는
    복호기.
  14. 제 13 항에 있어서,
    a#g,k,3=0인 복호기.
  15. 제 13 항에 있어서,
    식(1-1) 및 식(1-2)가 성립하는 i, j(i≠j)가 존재하고,
    또는,
    식(1-3) 및 식(1-4)가 성립하는 i가 존재하는
    복호기.
KR1020117016127A 2009-11-13 2010-11-12 부호화 방법, 복호 방법, 부호화기 및 복호기 KR101660554B1 (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
JPJP-P-2009-260503 2009-11-13
JP2009260503 2009-11-13
JPJP-P-2010-157991 2010-07-12
JP2010157991 2010-07-12
JP2010172577 2010-07-30
JPJP-P-2010-172577 2010-07-30
JPJP-P-2010-231807 2010-10-14
JP2010231807 2010-10-14
PCT/JP2010/006668 WO2011058760A1 (ja) 2009-11-13 2010-11-12 符号化方法、復号方法、符号化器、及び、復号器

Related Child Applications (2)

Application Number Title Priority Date Filing Date
KR1020167024684A Division KR101742451B1 (ko) 2009-11-13 2010-11-12 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
KR1020157010522A Division KR101730277B1 (ko) 2009-11-13 2010-11-12 송신 장치 및 송신 방법

Publications (2)

Publication Number Publication Date
KR20120090762A true KR20120090762A (ko) 2012-08-17
KR101660554B1 KR101660554B1 (ko) 2016-09-27

Family

ID=43991426

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020167024684A KR101742451B1 (ko) 2009-11-13 2010-11-12 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
KR1020117016127A KR101660554B1 (ko) 2009-11-13 2010-11-12 부호화 방법, 복호 방법, 부호화기 및 복호기
KR1020157010522A KR101730277B1 (ko) 2009-11-13 2010-11-12 송신 장치 및 송신 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020167024684A KR101742451B1 (ko) 2009-11-13 2010-11-12 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020157010522A KR101730277B1 (ko) 2009-11-13 2010-11-12 송신 장치 및 송신 방법

Country Status (10)

Country Link
US (9) US8595588B2 (ko)
EP (2) EP3474454B1 (ko)
JP (5) JP5523452B2 (ko)
KR (3) KR101742451B1 (ko)
CN (4) CN102577135B (ko)
AU (2) AU2010318464B2 (ko)
MY (1) MY154330A (ko)
RU (2) RU2532702C2 (ko)
TW (6) TWI629873B (ko)
WO (1) WO2011058760A1 (ko)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010073570A1 (ja) 2008-12-26 2010-07-01 パナソニック株式会社 符号化方法、符号化器及び復号器
JP4898858B2 (ja) * 2009-03-02 2012-03-21 パナソニック株式会社 符号化器、復号化器及び符号化方法
US8504847B2 (en) * 2009-04-20 2013-08-06 Cleversafe, Inc. Securing data in a dispersed storage network using shared secret slices
CN102577135B (zh) * 2009-11-13 2014-12-03 松下电器(美国)知识产权公司 编码方法、解码方法、编码器以及解码器
JP5681287B2 (ja) * 2011-07-27 2015-03-04 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化方法、復号方法
EP3301815B1 (en) * 2011-07-27 2021-09-08 Sun Patent Trust Encoding and decoding of tail-biting rate (n-1)/n low-density parity check convolutional codes (ldpc-cc)
EP2790327B1 (en) * 2011-12-30 2016-08-24 Huawei Technologies Co., Ltd. Adaptive coding using time-varying periodic ldpc convolutional codes based on quasi-cyclic ldpc block codes
US8787506B2 (en) 2012-05-04 2014-07-22 Qualcomm Incorporated Decoders and methods for decoding convolutional coded data
US8861653B2 (en) * 2012-05-04 2014-10-14 Qualcomm Incorporated Devices and methods for obtaining and using a priori information in decoding convolutional coded data
EP2879296A4 (en) 2012-07-24 2015-08-05 Panasonic Ip Corp America ENCODING METHOD AND DECODING METHOD
EP2905904B1 (en) * 2012-10-05 2018-12-05 Sun Patent Trust Coding method, decoding method, coder, and decoder
US9083383B1 (en) * 2013-01-29 2015-07-14 Xilinx, Inc. Parity check matrix
US9203440B1 (en) 2013-01-29 2015-12-01 Xilinx, Inc. Matrix expansion
US9294133B1 (en) * 2013-01-29 2016-03-22 Marvell International Ltd. Method and apparatus for error correction
US10528410B2 (en) 2014-12-16 2020-01-07 Intel Corporation Apparatus, method and system to exchange error information in a unified protocol communication
FR3035286A1 (fr) * 2015-04-17 2016-10-21 Thales Sa Procedes de codage et decodage a protection differenciee
CN105337700B (zh) * 2015-11-19 2019-01-11 济南澳普通信技术有限公司 一种基于码率自适应qc-ldpc编码方式的电力线载波的可见光通信系统及其运行方法
RU2616180C1 (ru) * 2015-11-30 2017-04-12 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Владимирский государственный университет имени Александра Григорьевича и Николая Григорьевича Столетовых" (ВлГУ) Способ диагностики сверточных кодов
CN107919941B (zh) * 2016-10-10 2022-01-25 深圳市硅派科技有限公司 基于重叠复用的调制解调方法和装置
JP6885027B2 (ja) * 2016-11-18 2021-06-09 ソニーグループ株式会社 送信装置、及び、送信方法
JP6885030B2 (ja) * 2016-11-18 2021-06-09 ソニーグループ株式会社 送信装置、及び、送信方法
JP6885028B2 (ja) * 2016-11-18 2021-06-09 ソニーグループ株式会社 送信装置、及び、送信方法
US10484010B2 (en) 2016-12-20 2019-11-19 Samsung Electronics Co., Ltd. Apparatus and method for channel encoding/decoding in communication or broadcasting system
KR20180071917A (ko) * 2016-12-20 2018-06-28 삼성전자주식회사 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
JP6891518B2 (ja) * 2017-02-06 2021-06-18 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6880791B2 (ja) * 2017-02-06 2021-06-02 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6891519B2 (ja) * 2017-02-06 2021-06-18 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6852427B2 (ja) * 2017-02-06 2021-03-31 ソニー株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6880792B2 (ja) * 2017-02-06 2021-06-02 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6895053B2 (ja) * 2017-02-20 2021-06-30 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6897205B2 (ja) * 2017-02-20 2021-06-30 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6903979B2 (ja) * 2017-02-20 2021-07-14 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
RU178755U1 (ru) * 2017-07-04 2018-04-18 Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет" Устройство декодирования ldpc-кодов
US11070314B2 (en) * 2017-08-18 2021-07-20 Nokia Solutions And Networks Oy Use of LDPC base graphs for NR
US10630315B2 (en) 2017-09-29 2020-04-21 Intel Corporation Technologies for applying a redundancy encoding scheme to segmented network packets
CN107566091A (zh) * 2017-10-24 2018-01-09 重庆电子工程职业学院 一种顾及广义耦合暗信息的卷积码盲识别方法
CN110048803B (zh) * 2018-01-17 2021-11-12 中兴通讯股份有限公司 一种低密度奇偶校验码译码的方法、装置和设备
JP7077628B2 (ja) * 2018-01-18 2022-05-31 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP7135344B2 (ja) * 2018-01-18 2022-09-13 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
TWI685217B (zh) * 2018-07-23 2020-02-11 朱盈宇 可辨封包次序更正碼
CN109935200B (zh) 2018-07-27 2022-06-03 京东方科技集团股份有限公司 移位寄存器单元、栅极驱动电路、显示装置以及驱动方法
US11032023B1 (en) * 2019-05-21 2021-06-08 Tarana Wireless, Inc. Methods for creating check codes, and systems for wireless communication using check codes
CN110324048B (zh) * 2019-06-24 2020-12-08 华中科技大学 一种通信调制系统中ra-ldpc-cc的编码方法及编码器
TWI744960B (zh) * 2020-06-22 2021-11-01 旺宏電子股份有限公司 記憶體控制器及記憶體裝置
KR20220120859A (ko) 2021-02-24 2022-08-31 에스케이하이닉스 주식회사 메모리 시스템 내 에러 정정 코드를 사용하는 장치 및 방법
WO2023241687A1 (en) * 2022-06-17 2023-12-21 Mediatek Inc. Ldpc low coding rate designs for next-generation wlan

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060195754A1 (en) * 2005-02-26 2006-08-31 Ba-Zhong Shen AMP (accelerated message passing) decoder adapted for LDPC (low density parity check) codes

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05110539A (ja) 1991-10-17 1993-04-30 Fujitsu Ltd デイジタル伝送方式
JPH0879149A (ja) 1994-08-31 1996-03-22 Nec Corp 衛星通信用送受信装置
JP3571918B2 (ja) * 1997-06-04 2004-09-29 株式会社東芝 符号伝送方法、送信装置、受信装置および通信システム
US6073250A (en) * 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
KR100264061B1 (ko) * 1997-12-10 2000-08-16 김영환 바이패스 기능을 구비한 리드 솔로몬 엔코더의 제어장치 및방법
US6304991B1 (en) * 1998-12-04 2001-10-16 Qualcomm Incorporated Turbo code interleaver using linear congruential sequence
US6542961B1 (en) 1998-12-22 2003-04-01 Hitachi, Ltd. Disk storage system including a switch
KR100295760B1 (ko) * 1998-12-31 2001-09-06 윤종용 디지털시스템의길쌈부호처리장치및방법
JP3502559B2 (ja) 1999-02-05 2004-03-02 松下電器産業株式会社 消失訂正方法、及び消失訂正回路
JP3481542B2 (ja) 2000-03-09 2003-12-22 日本電信電話株式会社 無線通信システムにおける誤り訂正用送信回路ならびに受信回路
US7095729B2 (en) * 2000-12-22 2006-08-22 Intel Corporation Method for multimedia communication over packet channels
US6954448B2 (en) * 2001-02-01 2005-10-11 Ipr Licensing, Inc. Alternate channel for carrying selected message types
CN1781254B (zh) * 2003-02-26 2012-03-14 高通股份有限公司 使用多级置换来执行低密度奇偶校验码操作的方法和设备
US7213197B2 (en) * 2003-08-08 2007-05-01 Intel Corporation Adaptive bit loading with low density parity check forward error correction
US7221680B2 (en) 2003-09-02 2007-05-22 Qualcomm Incorporated Multiplexing and transmission of multiple data streams in a wireless multi-carrier communication system
DE10353974A1 (de) * 2003-11-19 2005-06-30 Siemens Ag Verfahren zur Übertragung von digitalen Informationspaketen in einem Datennetz
US7673213B2 (en) * 2004-02-19 2010-03-02 Trellisware Technologies, Inc. Method and apparatus for communications using improved turbo like codes
TWI305090B (en) * 2004-05-07 2009-01-01 Broadcom Corp Reduced latency concatenated reed solomon-convolutional coding for mimo wireless lan
KR20050118056A (ko) * 2004-05-12 2005-12-15 삼성전자주식회사 다양한 부호율을 갖는 Block LDPC 부호를 이용한이동 통신 시스템에서의 채널부호화 복호화 방법 및 장치
US10355825B2 (en) * 2004-07-21 2019-07-16 Qualcomm Incorporated Shared signaling channel for a communication system
WO2006075382A1 (ja) * 2005-01-14 2006-07-20 Fujitsu Limited 符号化方法、復号方法及びそれらの装置
US7436901B2 (en) * 2005-04-19 2008-10-14 Telefonaktiebolaget Lm Ericsson (Publ) Selection of channel coding and multidimensional interleaving schemes for improved performance
US8706048B2 (en) * 2006-07-14 2014-04-22 Broadcom Corporation Method and system for explicit feedback with sounding packet for wireless local area networks (WLAN)
WO2006124071A1 (en) * 2005-05-18 2006-11-23 The Governors Of The University Of Alberta Decoder for low-density parity-check convolutional codes
US8358714B2 (en) * 2005-06-16 2013-01-22 Qualcomm Incorporated Coding and modulation for multiple data streams in a communication system
CN100450187C (zh) * 2005-10-17 2009-01-07 华为技术有限公司 支持错误弹性的多媒体数据网络实时传送方法
US7889703B2 (en) 2005-11-14 2011-02-15 Mediatek Inc. Adaptive modulation and coding method
US20090125778A1 (en) * 2005-12-15 2009-05-14 Mitsubishi Electric Corporation Communication system, transmission-side communication device, and reception-side communication device
US8171371B2 (en) * 2005-12-20 2012-05-01 Mitsubishi Electric Corporation Inspection matrix generation method, encoding method, communication device, communication system, and encoder
US7617433B2 (en) * 2006-01-03 2009-11-10 Broadcom Corporation Implementation of LDPC (low density parity check) decoder by sweeping through sub-matrices
US20070195905A1 (en) * 2006-02-21 2007-08-23 Adc Telecommunications, Inc. Forward error correction in wideband digital RF transport systems
US7613256B2 (en) * 2006-04-04 2009-11-03 Qualcomm Incorporated Forward error correction in a distribution system
JP2008024613A (ja) 2006-06-23 2008-02-07 Showa Denko Kk 第1級アルコールの製造方法
JP4856605B2 (ja) * 2006-08-31 2012-01-18 パナソニック株式会社 符号化方法、符号化装置、及び送信装置
WO2008041309A1 (fr) 2006-09-29 2008-04-10 Fujitsu Limited Système de communication sans fil et émetteur et récepteur associés
US8583983B2 (en) * 2006-11-01 2013-11-12 Qualcomm Incorporated Turbo interleaver for high data rates
US7996747B2 (en) * 2006-11-03 2011-08-09 International Business Machines Corporation Forward error correction encoding for multiple link transmission compatible with 64B/66B scrambling
JP2008124613A (ja) * 2006-11-09 2008-05-29 Mitsubishi Electric Corp 無線通信システム、移動端末装置及び基地局装置
US8566676B2 (en) * 2007-01-05 2013-10-22 Qualcomm Incorporated FEC code and code rate selection based on packet size
US20080201335A1 (en) * 2007-02-20 2008-08-21 Nec Laboratories America, Inc. Method and Apparatus for Storing Data in a Peer to Peer Network
CN101094000B (zh) * 2007-06-20 2011-11-30 北京大学 一种基于peg算法的时不变ldpcc码的构造方法及其编译码器
JP5354985B2 (ja) 2007-07-30 2013-11-27 パナソニック株式会社 符号化装置及び復号化装置
JP5219699B2 (ja) * 2007-08-30 2013-06-26 パナソニック株式会社 符号化装置及び復号装置
JP4564080B2 (ja) 2008-01-07 2010-10-20 パナソニック株式会社 符号化方法、符号化器、復号器
JP5160904B2 (ja) 2007-09-28 2013-03-13 パナソニック株式会社 符号化方法、符号化器、復号器
EP3059869B1 (en) 2007-09-28 2018-09-26 Panasonic Corporation Encoding method, encoder, and decoder
JP5247355B2 (ja) 2007-10-31 2013-07-24 パナソニック株式会社 送信装置
CN101431396A (zh) * 2007-11-09 2009-05-13 松下电器产业株式会社 在拆分码字中分配填充比特的方法
JP5203717B2 (ja) 2007-12-19 2013-06-05 パナソニック株式会社 符号器、復号器、符号化方法、及び、復号方法
JP2009260503A (ja) 2008-04-14 2009-11-05 Sharp Corp 受光アンプ素子、光ピックアップ、およびそれを備える光ディスク記録再生装置
JP5402471B2 (ja) 2008-12-05 2014-01-29 ソニー株式会社 電源装置、電源ケーブル、および受信装置
JP2010172577A (ja) 2009-01-30 2010-08-12 Fujifilm Corp 内視鏡装置
CN102577135B (zh) 2009-11-13 2014-12-03 松下电器(美国)知识产权公司 编码方法、解码方法、编码器以及解码器

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060195754A1 (en) * 2005-02-26 2006-08-31 Ba-Zhong Shen AMP (accelerated message passing) decoder adapted for LDPC (low density parity check) codes

Also Published As

Publication number Publication date
TWI629873B (zh) 2018-07-11
US20230006696A1 (en) 2023-01-05
RU2643506C2 (ru) 2018-02-01
JP2017195640A (ja) 2017-10-26
MY154330A (en) 2015-05-29
CN104467872A (zh) 2015-03-25
TW201511478A (zh) 2015-03-16
US8738992B2 (en) 2014-05-27
JP2016012945A (ja) 2016-01-21
TW201838345A (zh) 2018-10-16
CN104506200A (zh) 2015-04-08
JP6609352B2 (ja) 2019-11-20
KR20150054002A (ko) 2015-05-19
US20180337692A1 (en) 2018-11-22
TW202044781A (zh) 2020-12-01
US20190334550A1 (en) 2019-10-31
KR101730277B1 (ko) 2017-04-25
US20200266833A1 (en) 2020-08-20
CN102577135A (zh) 2012-07-11
TWI467977B (zh) 2015-01-01
US10333551B2 (en) 2019-06-25
US20110283162A1 (en) 2011-11-17
EP3474454A1 (en) 2019-04-24
KR20160110540A (ko) 2016-09-21
TWI539757B (zh) 2016-06-21
EP2501047A1 (en) 2012-09-19
US10693497B2 (en) 2020-06-23
TWI766317B (zh) 2022-06-01
AU2015238854B2 (en) 2016-09-22
US20150121162A1 (en) 2015-04-30
US10075184B2 (en) 2018-09-11
CN104348491B (zh) 2018-12-07
CN102577135B (zh) 2014-12-03
US11463107B2 (en) 2022-10-04
EP2501047B1 (en) 2019-01-02
CN104348491A (zh) 2015-02-11
AU2015238854A1 (en) 2015-11-05
US20160233887A1 (en) 2016-08-11
TWI700898B (zh) 2020-08-01
US9032275B2 (en) 2015-05-12
US20140215293A1 (en) 2014-07-31
RU2012117558A (ru) 2013-12-20
EP3474454B1 (en) 2022-02-23
JP2018139456A (ja) 2018-09-06
US20140047304A1 (en) 2014-02-13
TW201134157A (en) 2011-10-01
WO2011058760A1 (ja) 2011-05-19
RU2532702C2 (ru) 2014-11-10
AU2010318464A1 (en) 2012-03-22
JP5523452B2 (ja) 2014-06-18
RU2014133507A (ru) 2016-03-10
AU2010318464B2 (en) 2015-07-09
KR101742451B1 (ko) 2017-05-31
JP6357572B2 (ja) 2018-07-11
KR101660554B1 (ko) 2016-09-27
US8595588B2 (en) 2013-11-26
CN104467872B (zh) 2018-02-02
JPWO2011058760A1 (ja) 2013-03-28
JP2014147110A (ja) 2014-08-14
EP2501047A4 (en) 2014-04-02
TW202232897A (zh) 2022-08-16
US9350387B2 (en) 2016-05-24
CN104506200B (zh) 2018-07-24
TW201631903A (zh) 2016-09-01

Similar Documents

Publication Publication Date Title
JP6609352B2 (ja) 送信装置、送信方法、受信装置及び受信方法
WO2010073570A1 (ja) 符号化方法、符号化器及び復号器
WO2010004722A1 (ja) 符号化器、復号化器及び符号化方法
KR20110133560A (ko) 부호화기, 복호화기 및 부호화 방법
JP5749843B2 (ja) 受信装置および受信方法

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190820

Year of fee payment: 4