KR20070085244A - Check matrix producing apparatus and communication apparatus - Google Patents

Check matrix producing apparatus and communication apparatus Download PDF

Info

Publication number
KR20070085244A
KR20070085244A KR1020077007540A KR20077007540A KR20070085244A KR 20070085244 A KR20070085244 A KR 20070085244A KR 1020077007540 A KR1020077007540 A KR 1020077007540A KR 20077007540 A KR20077007540 A KR 20077007540A KR 20070085244 A KR20070085244 A KR 20070085244A
Authority
KR
South Korea
Prior art keywords
matrix
random number
pseudo random
order
parity check
Prior art date
Application number
KR1020077007540A
Other languages
Korean (ko)
Inventor
와타루 마츠모토
Original Assignee
미쓰비시덴키 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 미쓰비시덴키 가부시키가이샤 filed Critical 미쓰비시덴키 가부시키가이샤
Priority to KR1020077007540A priority Critical patent/KR20070085244A/en
Publication of KR20070085244A publication Critical patent/KR20070085244A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/20Arrangements for detecting or preventing errors in the information received using signal quality detector
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/24Arrangements for supervision, monitoring or testing with provision for checking the normal operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Error Detection And Correction (AREA)

Abstract

A predetermined information length, a predetermined coding rate and a predetermined maximum order of the column are used to calculate parameters for a pseudo random number permutation matrix. The calculated parameters for the pseudo random number permutation matrix are used, with a pseudo random number sequence and a Latin square matrix, to produce the pseudo random number permutation matrix. A predetermined information length, a predetermined coding rate and a predetermined maximum order of the column are used to calculate parameters for possible order distribution combinations for optimizing the order distribution of production of a check matrix that can be constructed by use of the pseudo random number permutation matrix. The order distribution of the check matrix production is optimized with the calculated possible order distribution combinations used as forced conditions. The optimized order distribution of the check matrix production is used to arrange the produced pseudo random number permutation matrix to produce a check matrix to be used for low-density parity check codes.

Description

검사 행렬 생성 장치 및 통신 장치{CHECK MATRIX PRODUCING APPARATUS AND COMMUNICATION APPARATUS}CHECK MATRIX PRODUCING APPARATUS AND COMMUNICATION APPARATUS}

본 발명은, 오류 정정 부호로서 저밀도 패리티 검사(LDPC:Low-Density Parity-Check) 부호를 채용한 경우에서의 검사 행렬 생성 장치 및 이 검사 행렬 생성 장치를 탑재한 통신 장치에 관한 것이며, 특히, 확정적이고 특성이 안정한 LDPC 부호용의 검사 행렬을 탐색 가능한 검사 행렬 생성 장치 및 이 검사 행렬 생성 장치를 탑재한 통신 장치에 관한 것이다. TECHNICAL FIELD The present invention relates to a parity check matrix generator when a low density parity check (LDPC) code is adopted as the error correction code, and a communication device equipped with the parity check matrix generation device. The present invention relates to a test matrix generator capable of searching for a parity check matrix for an LDPC code that is stable and characteristic, and a communication device equipped with the check matrix generator.

이하, 종래의 LDPC 부호용의 검사 행렬 생성 방법에 대하여 설명한다. 종래의 LDPC 부호화/복호 시스템에 있어서, 송신측의 통신 장치는 부호화기와 변조기를 구비하는 구성으로 하고, 한편, 수신측의 장치는 복조기와 복호기를 구비하는 구성으로 한다. 여기서는, 종래의 LDPC 부호용의 검사 행렬 생성 방법을 설명하기 전에, LDPC 부호를 사용한 경우의 부호화 및 복호의 흐름에 대하여 설명한다. The conventional parity check matrix generation method for LDPC codes will be described below. In the conventional LDPC encoding / decoding system, the communication apparatus on the transmitting side is provided with an encoder and a modulator, while the apparatus on the receiving side is configured with a demodulator and a decoder. Here, the flow of coding and decoding when the LDPC code is used will be described before explaining the conventional parity check generation method for the LDPC code.

우선, 송신측의 부호화기에서는, 후술하는 종래 방법으로 검사 행렬 H를 생성한다. 그리고, 이하의 조건에 근거하여 생성 행렬 G를 구한다. First, the encoder on the transmitting side generates the parity check matrix H by a conventional method described later. Then, the generation matrix G is obtained based on the following conditions.

G:K×N 행렬(K는 정보 길이, N은 부호 길이) G: K × N matrix (K is information length, N is sign length)

GHT=O(T는 전치행렬)GH T = O (T is transpose)

그 후, 부호화기에서는, 정보 길이 K의 메시지(m1m2 … mk)를 수취하고, 상기 생성 행렬 G를 이용하여 부호 워드 C를 생성한다. The encoder then receives a message (m 1 m 2 ... M k ) of information length K, and generates code word C using the generation matrix G.

C =(m1 m2 …mK)G C = (m 1 m 2 … m K ) G

=(c1 c2 …cN) (단, H(c1 c2 …cN)T =0)= (c 1 c 2 … c N ), where H (c 1 c 2 … c N ) T = 0)

그 후, 부호화기에서는, 정보 길이 K의 메시지(m1m2 … mK)를 수취하고, 상기 생성 행렬 G를 이용하여 부호 워드 C를 생성한다. The encoder then receives a message (m 1 m 2 ... M K ) of information length K, and generates code word C using the generation matrix G.

그리고, 변조기에서는, 생성한 부호 워드 C에 대하여, BPSK(Binary Phase Shift Keying), QPSK(Quadrature Phase Shift Keying), 다치 QAM(Quadrature Amplitude Modulation) 등의 디지털 변조를 행하여 송신한다. The modulator performs digital modulation such as Binary Phase Shift Keying (BPSK), Quadrature Phase Shift Keying (QPSK), Quadrature Amplitude Modulation (QAM), and transmits the generated code word C.

한편, 수신측에서는, 복조기가, 통신로를 거쳐 수취한 변조 신호에 대하여, BPSK, QPSK, 다치 QAM 등의 디지털 복조를 행하고, 또한, 복호기가, LDPC 부호화된 복조 결과에 대하여, 「합-곱 알고리즘(sum-product algorithm)」에 의한 반복 복호를 실시하고, 추정 결과(원래의 m1 m2 … mk에 대응)를 출력한다. On the other hand, on the receiving side, the demodulator performs digital demodulation such as BPSK, QPSK, multi-valued QAM, etc. on the modulated signal received through the communication path, and the decoder performs a "sum-multiply algorithm" on the demodulation result obtained by LDPC encoding. (sum-product algorithm) "is repeated, and the estimation result (corresponding to the original m 1 m 2 ... m k ) is output.

다음에 종래의 LDPC 부호용의 검사 행렬 생성 방법을 구체적으로 설명한다. Next, a conventional check matrix generation method for LDPC codes will be described in detail.

도 1은 예컨대, 비특허문헌 1에 의해 제안된 종래의 LDPC 부호용의 검사 행렬을 도시하는 도면이다. 도 1에 나타내는 행렬은, 「1」과 「0」의 2값의 행렬 로, 「1」인 부분은 모두 검은 색으로 채워진다. 다른 공란 부분은 모두 「0」이다. 이 행렬은, 1행의 「1」의 수(이것을 행의 차수라고 표현함)가 4이고, 1열의 「1」의 수(이것을 열의 차수라고 표현함)가 3이며, 모든 열과 행의 차수가 균일하기 때문에, 이것을 일반적으로 「Regular-LDPC 부호」라고 부르고 있다. 또한, 비특허문헌 1에 의한 부호에서는, 예컨대, 도 1에 도시하는 바와 같이, 행렬을 3 블럭으로 나눠, 2 블럭째와 3 블럭째에 대하여 랜덤 치환을 행하고 있다. 1 is a diagram showing a parity check matrix for a conventional LDPC code proposed by Non-Patent Document 1, for example. The matrix shown in FIG. 1 is a two-valued matrix of "1" and "0", and all portions of "1" are filled with black. All other blank parts are "0". The matrix has a number of "1" s in one row (expressed as the order of the row) of 4, a number of "1" s in a single column (expressed as the order of the column) is 3, and the order of all columns and rows is uniform. For this reason, this is generally called "Regular-LDPC code." In addition, in the code | symbol by Nonpatent literature 1, as shown in FIG. 1, the matrix is divided into three blocks, and the random substitution is performed with respect to the 2nd block and the 3rd block.

그러나, 이 랜덤 치환에는, 소정의 루울이 없기 때문에, 보다 특성이 양호한 부호를 찾아내기 위해서는, 계산기에 의한 시간이 걸리는 탐색을 해야 했다. However, since there is no predetermined loop in this random substitution, in order to find out the code with more favorable characteristic, the time-consuming search by the calculator was required.

그래서, 예컨대, 계산기 탐색에 의하지 않더라도 확정적으로 행렬을 생성할 수 있어, 비교적 안정한 양호한 특성을 나타내는 LDPC 부호로서, 유클리드 기하 부호를 이용하는 방법이 비특허문헌 2에 의해 제안되었다. 이 방법에서는, 규칙적인 앙상블(ensemble)로 구성된 「Regular-LDPC 부호」에 대하여 설명되어 있다. Thus, for example, Non Patent Literature 2 has proposed a method of using a Euclidean geometry code as an LDPC code that can generate a matrix definitely without a calculator search and exhibits relatively stable good characteristics. In this method, the "Regular-LDPC code" composed of regular ensemble is described.

비특허문헌 2에 의하면, 유한 기하 부호의 일종인 유클리드 기하 부호 EG(2,26)을 이용하여 LDPC 부호의 검사 행렬을 생성하는 방법이 제안되어 있고, 오류율 10-4점에서, 섀논 한계(Shannon limit)로부터 1.45dB에 접근한 특성을 얻고 있다. According to Non-Patent Document 2, there is a method using a Euclid geometry code EG (2,2 6), a type of finite geometry codes to generate a check matrix of the LDPC code has been proposed, in the error rate of 10 -4 points, Shannon limit ( The characteristic approaching 1.45 dB is obtained from Shannon limit.

도 2는 예컨대, 유클리드 기하 부호 EG(2, 22)의 구성을 도시하는 도면이며, 행, 열의 각각의 차수가 4, 4인 「Regular-LDPC 부호」 구조를 하고 있다. Fig. 2 is a diagram showing the configuration of Euclidean geometry code EG (2, 2 2 ), for example, and has a structure of " Regular-LDPC code "

따라서, 유클리드 기하 부호 EG(m, 2s)의 경우, 그 특성은 아래와 같이 규정된다. 여기서, EG(m, 2s)은 GF(2s) 위의 m 차원 유클리드 기하 부호다. Therefore, in the case of the Euclidean geometry code EG (m, 2 s ), its characteristics are defined as follows. Where EG (m, 2 s ) is the m-dimensional Euclidean geometry code above GF (2 s ).

부호 길이 : N=22s-1Code Length: N = 2 2s -1

용장 비트 길이 : N-K=3s-1 Redundant bit length: NK = 3 s -1

정보 길이 : K=22s-3s Length of information: K = 2 2s -3 s

최소 거리 : dmin =2s+1Minimum distance: d min = 2 s +1

밀도: r=2s/(22s-1)Density: r = 2 s / (2 2s -1)

도 2를 보더라도 알 수 있듯이, 유클리드 기하 부호는, 각 행의 「1」의 배치가 행마다 순회 시프트한 구조로 되어 있고, 부호가 용이하고 또한 확정적으로 구성할 수 있는 특징이 있다.As can be seen from Fig. 2, the Euclidean geometry code has a structure in which the arrangement of " 1 " of each row is cyclically shifted for each row, and the code can be easily and deterministically constructed.

비특허문헌 2에 의한 검사 행렬 생성 방법에서는, 또한, 상기 유클리드 기하 부호에 근거하여 행과 열의 차수를 변경하여, 행, 열을 필요에 따라 확장하고 있다. 예컨대, EG(2, 22)의 열의 차수를 1/2로 분리하는 경우, 비특허문헌 2에서는, 1열 내에 4개인 차수를 하나 걸러 2개씩 분리한다. In the parity check matrix generating method according to Non-Patent Document 2, the order of rows and columns is further changed based on the Euclidean geometry code to expand rows and columns as necessary. For example, when dividing the order of the rows of EG (2, 2 2 ) by 1/2, non-patent document 2 separates every other order of four in one column, and separates each.

도 3은 유클리드 기하 부호의 열의 차수를 4로부터 2로 규칙적으로 분리한 예를 나타내는 도면이다. 3 is a diagram showing an example in which the order of the columns of the Euclidean geometry code is regularly separated from 4 to 2;

한편, 상기 「Regular-LDPC 부호」의 특성보다도 「Irregular-LDPC 부호」의 특성쪽이 양호한 것이, 비특허문헌 3에 의해 보고되었다. 그리고, 그것은 비특허문헌 4 및 비특허문헌 5에 의해 이론적으로 해석되었다. 또, 상기 「Irregular-LDPC 부호」는, 열과 행의 차수가 각각 또는 어느 한쪽이 균일하지 않은 LDPC 부호를 나타낸다. On the other hand, Non Patent Literature 3 has reported that the characteristic of "Irregular-LDPC code" is better than the characteristic of "Regular-LDPC code". And it interpreted theoretically by the nonpatent literature 4 and the nonpatent literature 5. In addition, said "Irregular-LDPC code" shows the LDPC code which the order of a column and a row is respectively or which is not uniform.

특히, 비특허문헌 5에서는, 반복 복호기에서의 입력과 출력의 대수 우도비(LLR)가 가우스 분포에 근사할 수 있다고 가정해서 LDPC 부호의 「합-곱 알고리즘」을 해석하여, 양호한 행과 열의 차수의 앙상블을 구하고 있다. In particular, in Non-Patent Document 5, assuming that the log-likelihood ratio (LLR) of the input and output in the iterative decoder can be approximated to the Gaussian distribution, the "sum-multiply algorithm" of the LDPC code is analyzed and the order of good rows and columns is analyzed. You are saving the ensemble.

[비특허문헌 1] R.G. Gallager. "Low-Density Parity Check Codes." IRE Trans. On IT pp21-28 January 1962. [Non-Patent Document 1] R.G. Gallager. "Low-Density Parity Check Codes." IRE Trans. On IT pp 21-28 January 1962.

[비특허문헌 2] Y. Kou, S. Lin, and M. P. C. Fossorier, "Low Density Parity Check Codes Based on Finite Geometries:A Rediscovery and New Results," IEEE Trans. Inform. Theory, vol.47, No.2, pp.2711-2736, Feb. 2001. [Non-Patent Document 2] Y. Kou, S. Lin, and M. P. C. Fossorier, "Low Density Parity Check Codes Based on Finite Geometries: A Rediscovery and New Results," IEEE Trans. Inform. Theory, vol. 47, No. 2, pp. 2711-2736, Feb. 2001.

[비특허문헌 3] M. G. Luby, M. Mitzenmacher, M. A. Shokrollahi, and D.A. Spielman, "Improved Low-Density Parity-Check Codes Using Irregular Graphs and Belief Propagation," Proceedings of 1998 IEEE International Symposium on Information Theory, pp.171, Cambridge, Mass., August 16-21, 1998. [Non-Patent Document 3] M. G. Luby, M. Mitzenmacher, M. A. Shokrollahi, and D.A. Spielman, "Improved Low-Density Parity-Check Codes Using Irregular Graphs and Belief Propagation," Proceedings of 1998 IEEE International Symposium on Information Theory, pp. 171, Cambridge, Mass., August 16-21, 1998.

[비특허문헌 4] T. J. Richardson and R. Urbanke, "The capacity of low-density parity-check codes under message-passing decoding," IEEE Trans. Inform. Theory, vol.47, No.2, pp.599-618, Feb. 2001. [Non-Patent Document 4] T. J. Richardson and R. Urbanke, "The capacity of low-density parity-check codes under message-passing decoding," IEEE Trans. Inform. Theory, vol. 47, No. 2, pp. 599-618, Feb. 2001.

[비특허문헌 5] S. -Y. Chung, T. J. Richardson, and R. Urbanke, "Analysis of Sum-Product Decoding of Low-Density Parity-Check Codes Using a Gaussian Approximation," IEEE Trans. Inform. Theory, vol.47, No.2, pp.657-670, Feb. 2001. [Non-Patent Document 5] S. -Y. Chung, T. J. Richardson, and R. Urbanke, "Analysis of Sum-Product Decoding of Low-Density Parity-Check Codes Using a Gaussian Approximation," IEEE Trans. Inform. Theory, vol. 47, No. 2, pp. 657-670, Feb. 2001.

종래의 LDPC 부호용의 검사 행렬 생성 방법은 이상과 같이 행하여지고 있기 때문에, 검사 행렬의 사이클의 최소값(내경이라고 부름)이 많은 경우 6 정도이며(도 2, 도 3의 경우는 6), 검사 행렬의 사이클이 큰 쪽이 부호 워드의 해밍 거리(hamming distance)가 넓어져, 합-곱 복호법에서의 특성이 좋다고 되어 있는 일반적인 해석 결과로부터 보면, 오류 정정 능력의 성능면에서는 불충분하다고 하는 문제가 있었다. Since the conventional method of generating a check matrix for an LDPC code is performed as described above, it is about 6 when the minimum value (called an inner diameter) of the cycle of the check matrix is large (6 in FIGS. 2 and 3). The larger the cycle of, the larger the hamming distance of the codeword, and the general analysis results show that the characteristics of the sum-product decoding method are good, resulting in insufficient performance of error correction capability. .

본 발명은 상기한 바와 같은 과제를 해결하기 위해 이루어진 것으로, 확정적이고 특성이 안정하며, 오류 정정 능력이 양호하고, 또한 다양한 앙상블, 부호 길이, 부호화율에 대응한 Irregular-LDPC 부호용의 검사 행렬을 단시간에 용이하게 생성할 수 있는 LDPC 부호용의 검사 행렬 생성 장치 및 이 검사 행렬 생성 장치를 탑재한 통신 장치를 얻는 것을 목적으로 한다. SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems. The present invention provides a check matrix for Irregular-LDPC codes that is deterministic, stable in characteristics, good in error correction, and corresponding to various ensembles, code lengths, and coding rates. An object of the present invention is to obtain a parity check matrix generator for LDPC codes that can be easily generated in a short time, and a communication device equipped with the parity check matrix generator.

여기서, 「확정적」이란 송수신 모두 공통의 알고리즘을 갖고, 한정된 제원으로 동일한 결과를 이끌어 내는 것으로, 본 발명의 경우, 부호화율이나 부호 길이 등의 한정된 제원으로, LDPC 부호용의 검사 행렬을 생성하는 것이 가능하다는 의미이다. Here, "deterministic" means that both the transmission and reception have a common algorithm and lead to the same result with a limited specification. In the present invention, generating a check matrix for an LDPC code with limited specifications such as a coding rate and a code length, etc. It means possible.

본 발명에 따른 검사 행렬 생성 장치는, 소정의 정보 길이, 부호화율 및 열의 최대 차수를 입력하는 정보 길이·부호화율·열 최대 차수 입력부와, 입력된 상기 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여 후술하는 의사 난수 치환 행렬을 위한 파라미터를 산출하는 의사 난수 치환 행렬용 파라미터 산출부와, 산출된 상기 의사 난수 치환 행렬을 위한 파라미터에 의해 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 상기 의사 난수 치환 행렬을 생성하는 의사 난수 치환 행렬 생성부와, 입력된 상기 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용해서, 상기 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출하는 차수 분포 최적화용 파라미터 산출부와, 산출된 상기 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법에 의해 검사 행렬 생성의 차수 분포를 최적화하는 차수 분포 최적화부와, 최적화된 상기 검사 행렬 생성의 차수 분포에 의해, 생성된 상기 의사 난수 치환 행렬을 배치하여 저밀도 패리티 검사 부호용의 검사 행렬을 생성하는 검사 행렬 생성부를 구비하는 것이다. An apparatus for generating a parity check matrix according to the present invention includes an information length, encoding rate, and column maximum order input unit for inputting a predetermined information length, a coding rate, and a maximum degree of a column, and an input maximum length of the predetermined information length, coding rate, and column. A pseudo random number substitution matrix parameter calculating unit for calculating a parameter for a pseudo random number substitution matrix described below using a pseudo random number sequence and a Latin square matrix using a pseudo random number sequence and a Latin square matrix by the calculated parameters for the pseudo random number substitution matrix. Optimization of order distribution of test matrix generation configurable using the pseudo random number substitution matrix by using a pseudo random number substitution matrix generation unit for generating a substitution matrix and the inputted predetermined information length, coding rate, and maximum order of columns A parameter for order distribution optimization that calculates a parameter of a combination of possible order distributions for The order distribution optimizer for optimizing the order distribution of the test matrix generation by the density power generation method, with a combination of the calculation unit and the calculated order distribution of the available order distribution, and the optimized order distribution of the test matrix generation And a parity check matrix generator for arranging the generated pseudo random number substitution matrix to generate a parity check matrix for the low density parity check code.

본 발명에 의해, 확정적이고 특성이 안정하며, 오류 정정 능력이 양호하고, 또한 다양한 앙상블, 부호 길이, 부호화율에 대응한 Irregular-LDPC 부호용의 검사 행렬을 단시간에 용이하게 생성할 수 있다고 하는 효과를 얻을 수 있다. Effect of the Invention According to the present invention, it is possible to easily generate a check matrix for Irregular-LDPC codes corresponding to various ensembles, code lengths, and code rates in a short time, which is deterministic, stable in characteristics, and has good error correction capability. Can be obtained.

도 1은 종래의 LDPC 부호용의 검사 행렬을 도시하는 도면,1 is a diagram showing a parity check matrix for a conventional LDPC code;

도 2는 유클리드 기하 부호 EG(2, 22)의 구성을 도시하는 도면,2 is a diagram showing the configuration of Euclidean geometric symbols EG (2, 2 2 ),

도 3은 유클리드 기하 부호의 열의 차수를 4로부터 2로 규칙적으로 분리한 예를 나타내는 도면,3 is a diagram showing an example in which the order of the columns of the Euclidean geometry code is regularly separated from 4 to 2,

도 4는 LDPC 부호화/복호 시스템의 구성을 나타내는 블럭도,4 is a block diagram showing the configuration of an LDPC encoding / decoding system;

도 5는 본 발명의 실시예 1에 따른 검사 행렬 생성 장치의 구성을 나타내는 블럭도,5 is a block diagram showing the structure of a parity check matrix generating apparatus according to Embodiment 1 of the present invention;

도 6은 본 발명의 실시예 1에 따른 검사 행렬 생성 장치의 처리의 흐름을 나타내는 흐름도,6 is a flowchart showing the flow of processing by the parity check matrix generating apparatus according to Embodiment 1 of the present invention;

도 7은 본 발명의 실시예 2에 따른 검사 행렬 생성 장치의 구성을 나타내는 블럭도,7 is a block diagram showing the structure of a parity check matrix generating apparatus according to Embodiment 2 of the present invention;

도 8은 본 발명의 실시예 2에 따른 검사 행렬 생성 장치의 처리의 흐름을 나타내는 흐름도,8 is a flowchart showing the flow of processing in the parity check matrix generating apparatus according to Embodiment 2 of the present invention;

도 9는 정보 1비트당 신호 전력 대 노이즈 전력비에 대한 비트 오류율 특성과 프레임 오류율 특성을 도시하는 도면,9 shows bit error rate characteristics and frame error rate characteristics for a signal power to noise power ratio per information bit;

도 10은 본 발명의 실시예 3에 따른 검사 행렬 생성 장치의 구성을 나타내는 블럭도,10 is a block diagram showing the structure of a parity check matrix generating apparatus according to Embodiment 3 of the present invention;

도 11은 본 발명의 실시예 3에 따른 검사 행렬 생성 장치의 처리의 흐름을 나타내는 흐름도,11 is a flowchart showing the flow of processing by the parity check matrix generating apparatus according to Embodiment 3 of the present invention;

도 12는 본 발명의 실시예 4에 따른 검사 행렬 생성 장치의 구성을 나타내는 블럭도,12 is a block diagram showing the structure of a parity check matrix generating apparatus according to Embodiment 4 of the present invention;

도 13은 본 발명의 실시예 4에 따른 검사 행렬 생성 장치의 처리의 흐름을 나타내는 흐름도,13 is a flowchart showing the flow of processing by the parity check matrix generating apparatus according to Embodiment 4 of the present invention;

도 14는 멀티 에지 타입의 앙상블의 예를 나타내는 도면,14 is a diagram illustrating an example of an ensemble of a multi-edge type;

도 15는 irregular LDPC 부호의 예를 나타내는 도면,15 is a diagram illustrating an example of an irregular LDPC code;

도 16은 도 15의 차수 분포에 따라 구성한 검사 행렬의 예를 나타내는 도면,16 is a diagram illustrating an example of a parity check matrix constructed according to the order distribution of FIG. 15;

도 17은 평가에 이용한 irregular LDPC 부호의 차수 분포의 예를 나타내는 도면,17 is a diagram showing an example of order distribution of an irregular LDPC code used for evaluation;

도 18은 irregular LDPC 부호의 프레임 오류율 특성을 도시하는 도면,18 is a diagram illustrating frame error rate characteristics of an irregular LDPC code;

도 19는 본 발명의 실시예 5에 따른 검사 행렬 생성 장치의 구성을 나타내는 블럭도,19 is a block diagram showing the structure of a parity check matrix generating apparatus according to a fifth embodiment of the present invention;

도 20은 본 발명의 실시예 6에 따른 통신 장치의 구성을 나타내는 블럭도이다. 20 is a block diagram showing the construction of a communication device according to a sixth embodiment of the present invention.

이하, 본 발명을 보다 상세히 설명하기 위해, 본 발명을 실시하기 위한 최선의 형태에 대하여, 첨부의 도면에 따라 설명한다. 또, 이 실시예에 의해 본 발명이 한정되는 것이 아니다. EMBODIMENT OF THE INVENTION Hereinafter, in order to demonstrate this invention in detail, the best form for implementing this invention is demonstrated according to attached drawing. In addition, this invention is not limited by this Example.

(실시예 1)(Example 1)

우선, 이 실시예 1의 LDPC 부호용의 검사 행렬 생성 방법을 설명하기 전에, 생성된 LDPC 부호용의 검사 행렬을 사용하는 부호화기 및 복호기의 위치 부여, 및 「Irregular-LDPC 부호」용의 종래의 검사 행렬 생성 방법에 대하여 설명한다. First, before describing the method of generating the parity check matrix for the LDPC code of the first embodiment, the positioning of the encoder and the decoder using the generated parity check matrix for the LDPC code, and the conventional check for the "Irregular-LDPC code" The matrix generation method will be described.

도 4는 LDPC 부호화/복호 시스템의 구성을 나타내는 블럭도이다. 도 4에 있어서, 송신측의 통신 장치는 부호화기(101)와 변조기(102)를 포함하는 구성으로 하고, 수신측의 통신 장치는 복조기(104)와 복호기(105)를 포함하는 구성으로 한다. 여기서, 생성된 LDPC 부호용의 검사 행렬을 사용하는 경우의 부호화 및 복호의 흐름에 대하여 설명한다. 4 is a block diagram showing the configuration of an LDPC encoding / decoding system. In FIG. 4, the communication apparatus on the transmission side includes an encoder 101 and a modulator 102, and the communication apparatus on the reception side includes a demodulator 104 and a decoder 105. In FIG. Here, the flow of encoding and decoding in the case of using the generated parity check matrix for the LDPC code will be described.

송신측의 통신 장치에서는, 후술하는 바와 같이, LDPC 부호용의 검사 행렬 생성 장치에 의해 생성된 검사 행렬 H를 사용한다. 그리고, 부호화기(101)에서는, 이하의 조건에 근거하여 생성 행렬 G를 구한다. In the communication apparatus on the transmission side, as described later, the parity check matrix H generated by the parity check matrix generation device for the LDPC code is used. The encoder 101 then obtains a generation matrix G based on the following conditions.

G : K×N 행렬(K는 정보 길이, N은 부호 길이) G: K × N matrix (K is information length, N is code length)

GHT =0(T는 전치행렬)GH T = 0 (T is transpose)

그 후, 부호화기(101)에서는, 정보 길이 K의 메시지(u1 u2 …uK)를 수취하고, 상기 생성 행렬 G를 이용하여 부호 워드 C를 생성한다. After that, in the encoder 101, the message of information length K (u 1). u 2 ... u K ) is generated and a sign word C is generated using the generation matrix G.

C =(u1 u2 …uK)G C = (u 1 u 2 … u K ) G

=(c1 c2 …cN) (단, H(c1 c2 …cN)T =0)= (c 1 c 2 … c N ), where H (c 1 c 2 … c N ) T = 0)

그리고, 변조기(102)에서는, 생성한 부호 워드 C에 대하여, BPSK, QPSK, 다치 QAM 등의 디지털 변조를 행하여 송신한다. The modulator 102 then transmits the generated code word C by digital modulation such as BPSK, QPSK, and multivalued QAM.

그러나, 이 부호화기(101)의 경우, 생성 행렬 G를 검사 행렬 H로부터 가우스 소거법 등으로 생성해야 하고, 또한 검사 행렬 H가 저밀도인 데 비하여, 생성 행렬 G가 비교적 고밀도이고 2원의 생성 행렬 중의 "1"의 비율이 크기 때문에, 생성 행렬 G를 저장하는 메모리량도 많이 필요하다는 문제가 있다. However, in the case of the encoder 101, the generation matrix G must be generated from the test matrix H by the Gaussian elimination method or the like, and the test matrix H has a low density, whereas the generation matrix G is relatively high density, Since the ratio of 1 " is large, there is a problem that a large amount of memory for storing the generation matrix G is also required.

이 과제를 해결하기 위해서, 검사 행렬 H 중에 하삼각(下三角) 구조(또는 상삼각(上三角) 구조)의 행렬을 포함하는 구성으로 하는 수법이 하기문헌 등에서 제안되어 있다. In order to solve this problem, the method which sets it as the structure containing the matrix of a lower triangular structure (or an upper triangular structure) in the test matrix H is proposed by the following literature.

M.Rashidpour and S.H.Jamali, "Low-Density Parity-Check Codes with Simple Irregular Semi-Random Parity Check Matrix for Finite-Length Applications," pp439-443, in proc. IEEE PIMRC 2003. M.Rashidpour and S.H.Jamali, "Low-Density Parity-Check Codes with Simple Irregular Semi-Random Parity Check Matrix for Finite-Length Applications," pp 439-443, in proc. IEEE PIMRC 2003.

지금 T를 아래와 같은 M×M, M∈Z〉0의 하삼각 구조의 행렬로 한다. 여기서 Z〉0은 정의 정수 전체의 집합을 의미한다. Now let T be the matrix of lower triangles of M × M, MMZ > 0 as shown below. Where Z > 0 is the set of whole positive integers.

Figure 112007025417897-PCT00001
Figure 112007025417897-PCT00001

i행 j열의 요소 hi,j로 구성되는 2원 M×N, N∈Z〉0, 행렬 H=[hi,j]를 아래와 같이 나타낸다. The binary M × N, N∈Z > 0 , and matrix H = [h i, j ] composed of elements h i, j in row i, column j are shown below.

Figure 112007025417897-PCT00002
Figure 112007025417897-PCT00002

여기서 H는 M×N의 행렬로 한다. 또한 AM×A는 임의의 2원 M×K, K=N-M 행렬이다.Here, H is assumed to be a matrix of M × N. A M × A is an arbitrary binary M × K, K = NM matrix.

조직 부호 워드 벡터 C를 C=(u1, u2, …, uK, p1, p2, …, pM)으로 하면, 이 부호 워드 벡터 C는 H·CT=0를 만족시키고, 정보 메시지 u=(u1, u2, …, uK)가 인가된 경우, 부호화기(101)가 이하의 식에 의해 패리티 요소를 생성한다. If the organization code word vector C is C = (u 1 , u 2 , ..., u K , p 1 , p 2 , ..., p M ), this code word vector C satisfies H.C T = 0, When the information message u = (u 1 , u 2 ,..., U K ) is applied, the encoder 101 generates a parity element by the following equation.

Figure 112007025417897-PCT00003
Figure 112007025417897-PCT00003

이 수순에 의해, 생성 행렬 G를 이용하지 않더라도 부호화를 용이하게 실현할 수 있기 때문에, 본 발명에서는, 하삼각 구조의 행렬을 포함한 검사 행렬 H를 구성하는 것을 조건으로 한다. According to this procedure, since encoding can be easily realized without using the generation matrix G, the present invention is subject to the construction of the parity check matrix H including the matrix of the lower triangular structure.

한편, 수신측의 통신 장치에서는, 사전에 송신측의 통신 장치로부터 필요한 제원에 관한 정보를 수취하여 검사 행렬을 생성하며, 복조기(104)가, 통신로(103)를 거쳐 수취한 변조 신호에 대하여, BPSK, QPSK, 다치 QAM 등의 디지털 복조를 행하고, 또한, 복호기(105)가, LDPC 부호화된 복조 결과에 대하여, 생성된 검사 행렬을 이용하여 「합-곱 알고리즘」에 의한 반복 복호를 실시하고, 추정 결과(원래의 u1 u2 … uK에 대응)를 출력한다. On the other hand, the communication apparatus on the receiving side receives information on the required specifications from the communication apparatus on the transmitting side in advance and generates a test matrix, and the demodulator 104 receives a modulation signal received through the communication path 103. , BPSK, QPSK, multi-valued QAM, and the like, and the decoder 105 performs iterative decoding by the "sum-product algorithm" on the LDPC-coded demodulation result using the generated test matrix. Outputs an estimation result (corresponding to the original u 1 u 2 ... U K ).

다음에 상기 비특허문헌 5에 의해 이론적으로 해석된, 「Irregular-LDPC 부호」용의 종래의 검사 행렬 생성 방법에 대하여 상세히 설명한다. 여기서는, 합-곱(sum-product) 복호법의 복호 프로세스에 따라서, 복호기(105)에서의 입력과 출력의 대수 우도비(LLR)의 확률 밀도 함수를 반복 계산해 가는 것에 의해, 합-곱 복호법의 복호 특성을 해석하는 밀도 발전법이라는 수법 및 그 근사계산법인 가우스 근사법을 이용하여, 양호한 행과 열의 차수의 앙상블을 구하고 있다. Next, the conventional parity check matrix generation method for "Irregular-LDPC code" theoretically interpreted by the said nonpatent literature 5 is demonstrated in detail. Here, the sum-product decoding method is performed by iteratively calculating the probability density function of the logarithmic likelihood ratios (LLRs) of the inputs and outputs of the decoder 105 in accordance with the decoding process of the sum-product decoding method. The ensemble of the order of good rows and columns is obtained by using a method called density power generation method which analyzes the decoding characteristics of and a Gaussian approximation method which is an approximation method.

또, 상기 비특허문헌 5에 기술된 LDPC 부호용의 검사 행렬 생성 방법인 밀도 발전법 및 복호기(105)에서의 입력과 출력의 대수 우도비(LLR)가 가우스 분포에 근사할 수 있다고 해서 계산을 간이화한 가우스 근사법(Gaussian Approximation)에서는, 전제로서, 검사 행렬을 태너 그래프(Tanner graph)의 표현을 이용하여, 각 열을 배리어블 노드라고 정의하고, 각 행을 체크 노드라고 정의한다. 또한, 임의의 열과 임의의 행의 교점에 「1」이 있는 경우에, 배리어블 노드와 체크 노드는 「에지(edge)」에 의해 접속되어 있다고 한다. In addition, the calculation is simplified because the logarithmic likelihood ratio (LLR) of the input and output of the density generation method and the decoder 105, which is a check matrix generation method for the LDPC code described in Non-Patent Document 5, can approximate a Gaussian distribution. In the Gaussian Approximation, as a premise, each column is defined as a variable node, and each row is defined as a check node, using a representation of a test matrix as a Tanner graph. In addition, when there is "1" at the intersection of an arbitrary column and an arbitrary row, it is assumed that the variable node and the check node are connected by an "edge".

우선, 체크 노드로부터 배리어블 노드로의 LLR 메시지 전파를 해석한다. 0<s<∞와 0≤t<∞라는 조건에 있어서, 이하의 함수의 (1)식을 정의한다. 단, s=mu0는 u0의 평균값이며, u0는 분산값 σn 2의 가우스 노이즈를 포함하는 전송로를 경유하여 수신한 신호의 대수 우도비(LLR)의 앙상블 평균이며, t는 소정의 반복의 시점에서의 체크 노드의 LLR 출력값의 앙상블 평균이다. First, the LLR message propagation from the check node to the variable node is analyzed. On the condition that 0 <s <∞ and 0≤t <∞, the following function (1) is defined. However, s = m u0 is an average value of u0, u0 is an ensemble average of the logarithmic likelihood ratios (LLRs) of signals received via a transmission path including Gaussian noise having a variance value σ n 2 , and t is a predetermined repetition. The ensemble average of the LLR outputs of the check nodes at the time of.

Figure 112007025417897-PCT00004
Figure 112007025417897-PCT00004

또, λi와 pi는, 각각 차수 i의 배리어블 노드와 체크 노드에 속하는 에지의 비율을 나타낸다. 또한, d1는 최대 배리어블 노드의 차수이며, dr는 최대 체크 노드의 차수이다. 또한, 상기 λ(x) 및 ρ(x)은, 각각 배리어블 노드 및 체크 노드의 차수 배분(배리어블 노드와 체크 노드의 각 1행, 각 1열 내의 「1」의 수를 차수라고 표현함)의 생성 함수를 나타내고, 하기의 (2)식 및 (3)식과 같이 나타낼 수 있다.Λ i and p i represent the ratios of the edges belonging to the variable node of the order i and the check node, respectively. In addition, d 1 is the order of the maximum variable node, d r is the order of the maximum check node. In addition, [lambda] (x) and [rho] (x) are order distributions of the variable node and the check node, respectively (the number of &quot; 1 &quot; in each one row and each column of the barrier and check nodes is expressed as an order). The generation function of is shown, and can be represented as following formula (2) and (3).

Figure 112007025417897-PCT00005
Figure 112007025417897-PCT00005

또한, 상기 (1)식의 φ(x)은 하기의 (4)식과 같이 정의한다. In addition, ((x)) of said Formula (1) is defined like following formula (4).

Figure 112007025417897-PCT00006
Figure 112007025417897-PCT00006

여기서, R는 실수 전체의 집합을 나타내고, u는 배리어블 노드의 LLR 출력의 앙상블 평균을 나타낸다. Here, R represents the whole real number set, u represents the ensemble average of the LLR output of the variable node.

그리고, 상기 (1)식은, 등가적으로 하기의 (5)식과 나타낼 수 있다. In addition, said (1) Formula can be represented equivalently to following (5) Formula.

Figure 112007025417897-PCT00007
Figure 112007025417897-PCT00007

또, t1는 1번째의 반복 시점에서의 체크 노드의 LLR 출력값의 앙상블 평균이다. In addition, t 1 is an ensemble average of the LLR output values of the check nodes at the first iteration time point.

여기서, 오류가 0으로 될 수 있는 SNR의 한계(threshold)를 구하기 위한 조건은, 1→∞일 때에 t1(s)→∞(R+로 표현함)로 되는 것이며, 이 조건을 만족시키기 위해서는, 이하의 조건인 (6)식을 만족시킬 필요가 있다. Here, the condition for obtaining the threshold of the SNR that can be zero error is that t 1 (s) → ∞ (expressed as R + ) when 1 → ∞, in order to satisfy this condition, It is necessary to satisfy the following condition (6).

t < f(s,t), 모든 t∈R+ … (6)t <f (s, t), all t∈R+ … (6)

다음에 배리어블 노드로부터 체크 노드로의 LLR 메시지 전파를 해석한다. 0<s<∞와 0<r≤1라는 조건에 있어서, 이하의 함수의 (7)식을 정의한다. 또, r의 초기값 r0은 φ(s)이다. Next, the LLR message propagation from the variable node to the check node is analyzed. On the condition that 0 <s <∞ and 0 <r≤1, equation (7) of the following function is defined. In addition, the initial value r 0 of r is (phi) (s).

Figure 112007025417897-PCT00008
Figure 112007025417897-PCT00008

그리고, 상기 (7)식은, 등가적으로 하기의 (8)식으로 나타낼 수 있다. In addition, said Formula (7) can be equivalently represented by following formula (8).

Figure 112007025417897-PCT00009
Figure 112007025417897-PCT00009

여기서, 오류가 0으로 될 수 있는 SNR의 한계(threshold)를 구하기 위한 조건은, r1(s)→0으로 되는 것이며, 이 조건을 만족시키기 위해서는, 아래의 조건인 (9)식을 만족시킬 필요가 있다. Here, the condition for obtaining the threshold of the SNR that can cause the error to be 0 is r 1 (s) → 0. To satisfy this condition, the following condition (9) is satisfied. There is a need.

r>h(s,r), 모든 r∈(0,φ(s)) … (9)r> h (s, r), all r∈ (0, φ (s))... (9)

또한, 상기 비특허문헌 5에서는, 상기 식을 이용하여 이하의 수순으로 배리어블 노드와 체크 노드의 최적의 차수를 탐색하고 있다(밀도 발전법의 가우스 근사법). Moreover, in the said nonpatent literature 5, the optimum order of a variable node and a check node is searched using the said formula (Gaussian approximation method of a density generation method).

[단계 ST101] [ST101]

배리어블 노드의 차수 배분의 생성 함수 λ(x)와 가우스 노이즈 σn가 인가되고 있다고 가정하고, 체크 노드의 차수 배분의 생성 함수 ρ(x)를 변수로 하여, 부호화율이 최대로 되는 점을 탐색한다. 또, 이 탐색에서의 구속 조건은, ρ(1)=1로 정규화하는 것과, 상기 (6)식을 만족시키는 것이다. Assuming that the generation function λ (x) of the order allocation of the variable node and the Gaussian noise σ n are applied, and that the coding rate is maximized using the generation function ρ (x) of the order allocation of the check node as a variable, Search. The constraint condition in this search is to normalize ρ (1) = 1 and satisfy the above expression (6).

[단계 ST102][ST102]

체크 노드의 차수 배분의 생성 함수 ρ(x)와 가우스 노이즈 σn가 인가되고 있다고 가정하고(예컨대, ST101의 결과로부터 얻어지는 값), 배리어블 노드의 차수 배분의 생성 함수 λ(x)를 변수로 하여, 부호화율이 최대로 되는 점을 탐색한다. 또, 이 탐색에서의 구속 조건은, λ(1)=1로 정규화하는 것과, 상기 (9)식을 만족시키는 것이다. Assuming that the generation function ρ (x) of the order distribution of the check node and the Gaussian noise σ n are applied (for example, a value obtained from the result of ST101), the generation function λ (x) of the order distribution of the variable node is converted into a variable. The point where the coding rate is maximized is searched. The constraint condition in this search is to normalize λ (1) = 1 and satisfy the above expression (9).

[단계 ST103][ST103]

최대의 부호화율을 구하기 위해, 상기 단계 ST101과 상기 단계 ST102를 반복하여 실행하고, 배리어블 노드의 차수 배분의 생성 함수 λ(x)와 체크 노드의 차수 배분의 생성 함수 ρ(x)의 보다 양호한 앙상블을 선형 계획법(linear programming)으로 탐색한다. In order to obtain the maximum coding rate, the above steps ST101 and ST102 are executed repeatedly, and better than the generation function? (X) of the order distribution of the variable node and the generation function? (X) of the order distribution of the check node. Search for ensembles with linear programming.

[단계 ST104] [ST104]

가우스 노이즈 σn로부터 신호 전력을 1로 정규화하여, 오류가 0으로 될 수 있는 SNR의 한계(threshold)를 하기의 (10)식으로부터 구한다. The signal power is normalized to 1 from the Gaussian noise sigma n, and the threshold of the SNR at which the error can be zero is obtained from the following expression (10).

Figure 112007025417897-PCT00010
Figure 112007025417897-PCT00010

그러나, 상기 비특허문헌 5에서는, 부호화율의 최대값에 의해 얻어지는 검사 행렬이 유동적으로 되어, 설계시의 사양으로서 고정되는 부호화율이 변동한다는 문제가 있다. 또한, 상기 비특허문헌 5에서는, 배리어블 노드의 차수 배분의 생성 함수 λ(x)의 도출과, 체크 노드의 차수 배분의 생성 함수 ρ(x)의 도출을 소정 회수에 걸쳐 반복하여 행하고 있기 때문에, 탐색 처리에 어느 정도의 시간이 필요하다고 하는 과제나, 다양한 앙상블, 부호 길이, 부호화율에 용이하게 대응할 수가 없다고 하는 과제도 있다. However, in the said nonpatent literature 5, the test matrix obtained by the maximum value of a coding rate becomes fluid, and there exists a problem that the coding rate fixed as a specification at the time of design fluctuates. Further, in the non-patent document 5, the derivation of the generation function? (X) of the order allocation of the variable node and the derivation of the generation function ρ (x) of the order allocation of the check node are repeatedly performed for a predetermined number of times. Another problem is that a certain amount of time is required for search processing, and another problem is that it cannot easily cope with various ensembles, code lengths, and coding rates.

그래서, 이 실시예 1에 있어서는, 확정적이고 특성이 안정하며, 또한 다양한 앙상블, 부호 길이, 부호화율에 대응한 「Irregular-LDPC 부호」용의 검사 행렬을, 단시간에 용이하게 탐색하는 방법에 대하여 설명한다. In the first embodiment, therefore, a method for easily searching for the parity check matrix for the "Irregular-LDPC code" corresponding to the deterministic, stable, and various ensembles, code lengths, and code rates in a short time will be described. do.

도 5는 본 발명의 실시예 1에 따른 LDPC 부호용의 검사 행렬 생성 장치의 구성을 나타내는 블럭도이다. 이 검사 행렬 생성 장치는, 정보 길이·부호화율·열 최대 차수 입력부(11), 의사 난수 치환 행렬용 파라미터 산출부(12), 의사 난수 치환 행렬 생성부(13), 차수 분포 최적화용 파라미터 산출부(14), 차수 분포 최적화부(15) 및 검사 행렬 생성부(16)를 구비하고 있다. 이 검사 행렬 생성 장치는, 도 4에서의 송신측 및 수신측의 통신 장치 내에 탑재되며, 생성한 검사 행렬을 부호화기(101) 및 복호기(105)에 출력하더라도 좋고, 송신측 및 수신측의 통신 장치 밖에 설치되고, 생성한 검사 행렬을 송신측 및 수신측의 통신 장치 내의 메모리(도시하지 않음)에 저장하여 부호화기(101) 및 복호기(105)에 출력하더라도 좋다. Fig. 5 is a block diagram showing the structure of a parity check matrix generation device for LDPC codes according to the first embodiment of the present invention. The test matrix generator includes an information length, coding rate, and column maximum order input unit 11, a parameter calculator 12 for pseudo random number substitution matrix, a pseudo random number substitution matrix generator 13, and a parameter calculator for order distribution optimization. (14), the order distribution optimization unit 15 and the parity check matrix generating unit 16 are provided. This check matrix generating device is mounted in the communication device on the transmitting side and the receiving side in FIG. 4, and may output the generated check matrix to the encoder 101 and the decoder 105, and the communication device on the transmitting side and the receiving side. It may be provided outside, and the generated check matrix may be stored in a memory (not shown) in the communication device on the transmitting side and the receiving side and output to the encoder 101 and the decoder 105.

도 6은 본 발명의 실시예 1에 따른 검사 행렬 생성 장치의 처리의 흐름을 나타내는 흐름도이다. 단계 ST11에 있어서, 정보 길이·부호화율·열 최대 차수 입력부(11)는 소정의 정보 길이, 부호화율 및 열의 최대 차수를 입력한다. 단계 ST12에 있어서, 의사 난수 치환 행렬용 파라미터 산출부(12)는 상기 단계 ST11에서 입력된 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여 의사 난수 치환 행렬을 위한 파라미터를 산출한다. 6 is a flowchart showing the flow of processing by the parity check matrix generating apparatus according to the first embodiment of the present invention. In step ST11, the information length, coding rate, and column maximum order input unit 11 inputs a predetermined information length, coding rate, and maximum order of columns. In step ST12, the pseudo random number substitution matrix parameter calculating unit 12 calculates parameters for the pseudo random number substitution matrix by using the predetermined information length, coding rate, and maximum order of the columns input in step ST11.

단계 ST13에 있어서, 의사 난수 치환 행렬 생성부(13)는, 상기 단계 ST12에서 산출된 의사 난수 치환 행렬을 위한 파라미터에 의해 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 의사 난수 치환 행렬을 생성한다. 단계 ST14에 있어서, 차 수 분포 최적화용 파라미터 산출부(14)는 상기 단계 ST11에서 입력된 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출한다. In step ST13, the pseudo random number substitution matrix generation unit 13 generates a pseudo random number substitution matrix using a pseudo random number sequence and a Latin square matrix by the parameters for the pseudo random number substitution matrix calculated in step ST12. In step ST14, the parameter distribution optimization parameter calculation unit 14 generates a test matrix configurable using a pseudo random number substitution matrix by using the predetermined information length, coding rate, and maximum order of columns input in step ST11. Calculate the parameters of the combination of possible order distributions for the optimization of the order distribution.

단계 ST15에 있어서, 차수 분포 최적화부(15)는, 상기 단계 ST14에서 산출된 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법에 의해 검사 행렬 생성의 차수 분포를 최적화한다. 단계 ST16에 있어서, 검사 행렬 생성부(16)는 상기 단계 ST15에서 최적화된 검사 행렬 생성의 차수 분포에 의해, 상기 단계 ST13에서 생성된 의사 난수 치환 행렬을 배치하여 LDPC 부호용의 검사 행렬을 생성한다. In step ST15, the order distribution optimization unit 15 optimizes the order distribution of the test matrix generation by the density power generation method by using the combination of the possible order distributions calculated in the above step ST14 as constraint conditions. In step ST16, the parity check matrix generation unit 16 generates the parity check matrix for the LDPC code by arranging the pseudo random number substitution matrix generated in step ST13 by the order distribution of the parity check matrix generation optimized in step ST15. .

다음에 도 6의 흐름도에서의 단계 ST11~ST16의 상세 처리에 대하여 설명한다. Next, the detailed processing of steps ST11 to ST16 in the flowchart of FIG. 6 will be described.

단계 ST11에 있어서, 정보 길이·부호화율·열 최대 차수 입력부(11)는 소정의 정보 길이, 부호화율, 열의 최대 차수로서, 시스템에서 사전에 설정되어 있는 정보 길이 K=144, 부호화율 rate=0.5, 열의 최대 차수 d=4를 입력한다. In step ST11, the information length, encoding rate, and column maximum order input unit 11 is a predetermined information length, coding rate, and maximum order of columns, and the information length K = 144 preset in the system and coding rate = 0.5 , Enter the maximum order d = 4 for the column.

단계 ST12에 있어서, 의사 난수 치환 행렬용 파라미터 산출부(12)는 상기 단계 ST11에서 입력된 정보 길이 K=576, 부호화율 rate=0.5, 열의 최대 차수 d=4를 이용하여, p2×p2(p+1은 소수)의 의사 난수 치환 행렬 SP를 위한 파라미터 p를 아래와 같이 산출한다. In step ST12, the parameter calculation unit 12 for the pseudorandom number substitution matrix uses p 2 x p 2 by using the information length K = 576, coding rate = 0.5, and maximum order d = 4 of the column input in step ST11. The parameter p for the pseudo random number substitution matrix SP of (p + 1 is prime) is calculated as follows.

의사 난수 치환 행렬 SP의 행 방향의 개수=d=4Number of row directions of pseudo random number substitution matrix SP = d = 4

검사 행렬 H의 열수 N(=부호 길이 N)=K/rateNumber of columns N (= code length N) of the test matrix H = K / rate

=144/0.5=288= 144 / 0.5 = 288

검사 행렬 H의 행수 M=N×(1-rate)The number of rows in the check matrix H M = N × (1-rate)

=288×0.5=144= 288 × 0.5 = 144

의사 난수 치환 행렬 SP의 사이즈 p2=M/d=144/4=36Size of the pseudorandom substitution matrix SP p 2 = M / d = 144/4 = 36

따라서 p=6Thus p = 6

단계 ST13에 있어서, 의사 난수 치환 행렬 생성부(13)는, 상기 단계 ST12에서 산출된 의사 난수 치환 행렬 SP를 위한 파라미터 p에 의해, 이하에 나타내는 단계 ST13-1~ST13-6의 수순에 도시하는 바와 같이, 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 p2×p2(p+1은 소수)의 의사 난수 치환 행렬 SP를 생성한다. In step ST13, the pseudo random number substitution matrix generation part 13 shows in the procedure of steps ST13-1 to ST13-6 shown below by the parameter p for the pseudo random number substitution matrix SP computed in said step ST12. As shown, a pseudo random number substitution matrix SP of p 2 × p 2 (p + 1 is prime) is generated using a pseudo random number sequence and a Latin square matrix.

LDPC 부호를 이용한 부호화/복호에 있어서는, 일반적으로, 태너 그래프에서의 2부 그래프 상에서 「사이클 4」 및 「사이클 6」과 같은 검사 행렬이 작은 사이클의 개수가 적을수록 양호한 특성을 얻을 수 있다. 따라서, LDPC 부호로서는, 「사이클 4」나 「사이클 6」과 같은 작은 사이클의 발생을 억제하는 구조가 바람직하고, 의사 난수 치환 행렬 생성부(13)는 검사 행렬이 작은 사이클의 발생을 억제하는 의사 난수 치환 행렬 SP를 생성한다. In the encoding / decoding using the LDPC code, generally, the smaller the number of cycles with smaller check matrices such as "cycle 4" and "cycle 6" on the two-part graph in the Tanner graph, the better characteristics can be obtained. Therefore, as the LDPC code, a structure that suppresses the generation of small cycles such as "cycle 4" or "cycle 6" is preferable, and the pseudo random number substitution matrix generation unit 13 is a pseudo that suppresses the generation of small cycles by the check matrix. Generate a random substitution matrix SP.

[단계 ST13-1][Step ST13-1]

이하의 식으로 정의되는 의사 난수 계열 C(i)을 생성한다. Pseudo random number series C (i) defined by the following equation is generated.

C(1)=1, C(i+1)=G0×C(i)modP, i=1,2, …, P-2 C (1) = 1, C (i + 1) = G 0 × C (i) mod P, i = 1, 2,... , P-2

여기서 P는 P=p+1로 되는 소수이며, C0는 GF(P)의 원시원(原始元)이다. 또, GF(P)의 요소인 G0의 연속하는 누승의 값(예컨대, G0 1, G0 2, …,G0 P-1=1)가 GF(P)의 영이 아닌 모든 요소를 나타내는 경우, G0을 원시원라고 부른다. 이 계열 C(i)은 요소간의 차분이 비균일이며 중복하는 요소가 없는 의사 난수 계열로 된다. Where P is a prime number where P = p + 1, and C 0 is the source of GF (P). In addition, successive powers of G 0 that are elements of GF (P) (eg, G 0 1 , G 0 2 ,..., G 0 P-1 = 1) represent all elements that are not zero of GF (P). In this case, G 0 is called the primitive source. This series C (i) is a pseudorandom series with nonuniform differences between elements and no overlapping elements.

예로서 P=7, G0=3의 경우를 이하에 나타낸다. As an example it is shown below for the case of P = 7, G 0 = 3 .

Figure 112007025417897-PCT00011
Figure 112007025417897-PCT00011

[단계 ST13-2][ST13-2]

의사 난수 계열 C(i)에 대한 아래 식에 나타내는 치환 패턴 LBj(i)를 생성한다. The substitution pattern LB j (i) shown in the following formula for the pseudo random number series C (i) is generated.

Figure 112007025417897-PCT00012
Figure 112007025417897-PCT00012

이 조작에 의해, LBj(i)를 i행 j열의 행렬로 표현한 경우, 각 행 내의 각 요소 및 각 열 내의 각 요소가 모두 다른 라틴 스퀘어를 구성할 수 있다. By this operation, when LB j (i) is expressed by a matrix of i rows and j columns, each element in each row and each element in each column can form a different Latin square.

예를 이하에 나타낸다. An example is shown below.

Figure 112007025417897-PCT00013
Figure 112007025417897-PCT00013

[단계 ST13-3][ST13-3]

하기 식에 의해 의사 난수 계열 및 그 치환 패턴을 요소로 갖는 라틴 스퀘어 행렬 Lj(q,l)를 생성한다. A Latin square matrix L j (q, l) having a pseudorandom number series and its substitution pattern as an element is generated by the following equation.

Figure 112007025417897-PCT00014
Figure 112007025417897-PCT00014

이 조작에 의해, Lj(q,l)를 사용하여 L1(q,l),L2(q,l),…,Lp(q,l)의 p개의 다른 라틴 스퀘어 행렬을 생성할 수 있다. By this operation, L j (q, l) L 1 (q, l) using, L 2 (q, l) , ... We can generate p different Latin square matrices of, L p (q, l).

예를 이하에 나타낸다. An example is shown below.

Figure 112007025417897-PCT00015
Figure 112007025417897-PCT00015

이 예를 보더라도 알 수 있듯이, q=1에 대하여 Lj(q=1,l)의 각 요소를 하기와 같이 나열해 보면, 각 행 내의 각 요소 및 각 열 내의 각 요소가 다른 라틴 스퀘어 행렬로 되어 있는 것을 알 수 있다. As you can see from this example, if you list each element of L j (q = 1, l) for q = 1 as follows, each element in each row and each element in each column is a different Latin square matrix. It can be seen that.

Figure 112007025417897-PCT00016
Figure 112007025417897-PCT00016

마찬가지로 q=2,…, p에 대하여, Lj(q,l)의 각 요소를 나열한 j행 l열의 행렬을 보더라도 라틴 스퀘어가 된다. Similarly q = 2,... With respect to, p, it is a Latin square even if we look at the matrix of the j row l column which arranges each element of L j (q, l).

[단계 ST13-4][ST13-4]

하기 식에 의해 라틴 스퀘어 행렬 Lj(q,l)과 파라미터 p을 이용하여 기본 치환 행렬 패턴 BPj(q,l)를 생성한다. A basic substitution matrix pattern BP j (q, l) is generated using the Latin square matrix L j (q, l) and the parameter p by the following equation.

Figure 112007025417897-PCT00017
Figure 112007025417897-PCT00017

이 조작에 의해 p2×p2의 열 차수 1, 행 차수 1의 의사 난수 치환 행렬을 생성하기 위한 기본 치환 행렬 패턴을 생성할 수 있다. By this operation, a basic substitution matrix pattern for generating a pseudo-random substitution matrix of column order 1 and row order 1 of p 2 × p 2 can be generated.

BPj(q,l)는 Lj(q,l)의 임의의 j에 대하여 q행 i열의 행렬을 생성한 경우, 각 행을 한개 증가시킬 때마다 p만큼 그 행 내의 각 요소에 가산한 것이다. BP j (q, l) is a q-row i-column matrix for any j of L j (q, l), which is added to each element within that row by p for each increment of each row. .

예를 이하에 나타낸다. An example is shown below.

Figure 112007025417897-PCT00018
Figure 112007025417897-PCT00018

전 단계(3)의 의논으로부터 임의의 q에 관한 BPj(q,l)의 각 요소를 나열한 j행 l열의 행렬도 라틴 스퀘어가 된다. 또한, 이 조작에 의해, 임의의 j에 대한 BPj(q,l)로부터 생성하는 q행 l열의 행렬의 동일열의 요소간의 거리는 넓어진다. From the discussion in the previous step (3), the matrix of j rows and l columns that lists each element of BP j (q, l) for any q is also Latin square. Moreover, by this operation, the distance between elements of the same column of the matrix of q rows l columns generated from BP j (q, l) for arbitrary j is widened.

[단계 ST13-5][ST13-5]

하기 식에 의해 기본 치환 행렬 패턴 BPj(q,l)의 개시점을 s개 시프트한 복수의 기본 치환 계열 SPj ,s(i)을 생성한다. A plurality of basic substitution series SP j , s (i) obtained by shifting the starting point of the basic substitution matrix pattern BP j (q, l) by s by the following equation is generated.

Figure 112007025417897-PCT00019
Figure 112007025417897-PCT00019

이 조작에 의해 p2×p2의 열 차수 1, 행 차수 1의 의사 치환 행렬을 생성하기 위한 기본 치환 계열을 생성할 수 있다. By this operation, a basic substitution sequence for generating a pseudo substitution matrix of column order 1 and row order 1 of p 2 × p 2 can be generated.

이 계열의 근접하는 요소간의 거리는 넓어지고 있다. 인접하는 요소간의 거리를 확대함으로써 실시예 1에서 설명한 T의 하삼각 행렬과의 사이에서 발생하는 짧은 사이클, 즉 사이클 4나 사이클 6의 발생을 억제할 수 있다. The distance between adjacent elements of this series is widening. By enlarging the distance between adjacent elements, it is possible to suppress the occurrence of short cycles, that is, cycles 4 and 6, occurring between the lower triangular matrix of T described in the first embodiment.

예를 이하에 나타낸다. An example is shown below.

Figure 112007025417897-PCT00020
Figure 112007025417897-PCT00020

[단계 ST13-6][ST13-6]

복수의 기본 치환 계열 SPj ,s(i)로부터 하기 식에 의해 정의되는 2원 p2×p2의 복수의 의사 난수 치환 행렬 SPj ,s=(hm ,n)를 생성한다. From a plurality of basic substitution series SP j , s (i), a plurality of binary p 2 xp 2 pseudo random random substitution matrices SP j , s = (h m , n ) defined by the following equation are generated.

Figure 112007025417897-PCT00021
Figure 112007025417897-PCT00021

이 조작에 의해, p2×p2의 열 차수 1, 행 차수 1의 복수의 의사 난수 치환 행렬을 생성할 수 있다. 이 SPj ,s에서 s의 값이 같고, j의 값이 다른 복수의 SPj ,s의 조합으로 구성되는 행렬에는, 각 행의 "1"이 있는 열 번호의 일치하는 것이 2개 이상인 경우가 없기 때문에 사이클 4는 존재하지 않고, 최소 사이클수는 6으로 된다. 또한, 복수의 SPj ,s에 있어서 s의 값이 다른 경우에도, 사이클 4로 되지 않는 조합이 존재하고 있어, 이 조합은 탐색 등으로 구할 수 있다. By this operation, a plurality of pseudo random number substitution matrices of column order 1 and row order 1 of p 2 × p 2 can be generated. The SP j, equal to the value of s in s, is a matrix that is the value of j consists of a combination of a plurality of different SP j, s, a case that two or more that match the number of columns with a "1" on each row Since there is no cycle 4, the minimum number of cycles is six. In addition, even when the value of s in a plurality of SP j , s is different, there is a combination which does not become cycle 4, and this combination can be obtained by searching or the like.

예를 이하에 나타낸다. An example is shown below.

Figure 112007025417897-PCT00022
Figure 112007025417897-PCT00022

단계 ST14에 있어서, 차수 분포 최적화용 파라미터 산출부(14)는 상기 단계 ST11에서 입력된 소정의 정보 길이 K, 부호화율 rate 및 열의 최대 차수 d를 이용하여, 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출한다. 여기서는, 열의 최대 차수 d와 하삼각 행렬을 포함하는 검사 행렬이 가지는 제약 조건을 기초로, 취할 수 있는 차수 분포의 조합을 산출한다. In step ST14, the order distribution optimization parameter calculating unit 14 uses a pseudo random number substitution matrix, using a predetermined information length K, a coding rate, and a maximum order d of columns input in the step ST11. Calculate the parameters of a combination of possible order distributions for optimization of order distributions of matrix generation. Here, the combination of order distribution which can be taken is computed based on the constraint of the largest order d of a column, and the test matrix containing a lower triangular matrix.

목표로 하는 열의 최대 차수 d와 정보 길이 K와 부호화율 rate로부터 하기 식에 나타내는 것 같은 검사 행렬 H의 제약 조건을 구한다. From the maximum order d of the target column, the information length K, and the code rate, the constraints of the parity check matrix H as shown in the following equation are obtained.

Figure 112007025417897-PCT00023
Figure 112007025417897-PCT00023

여기서, sp는 임의의 spj ,s를 의미한다. 또한, 대각선상에 배치하고 있는 \의 연속은 H의 최상위행으로부터 최하위행까지를 통해서 T와 같이 계단 형상으로 1을 배치하고 있는 것을 의미한다. Here, sp means any sp j , s . In addition, the continuation of 배치 arrange | positioned on a diagonal line means that 1 is arrange | positioned like step T through T from the top row to the bottom row of H.

여기서 정해지는 제약 조건은 의사 난수 치환 행렬 SP의 사이즈와 그 최대 배치수와 배치 개소이다. Constraints determined here are the size of the pseudo random number substitution matrix SP, its maximum number of arrangements, and its location.

예로서, 정보 길이 K=144, 부호화율 rate=0.5, 열의 최대 차수 d=4의 경우를 이하에 나타낸다. As an example, the case of information length K = 144, coding rate = 0.5, and the maximum order d = 4 of a column is shown below.

의사 난수 치환 행렬 SP의 행 방향의 개수=d=4Number of row directions of pseudo random number substitution matrix SP = d = 4

검사 행렬 H의 열수 N(=부호 길이 N)=K/rateNumber of columns N (= code length N) of the test matrix H = K / rate

=144/0.5=288 = 144 / 0.5 = 288

검사 행렬 H의 행수 M=N×(1-rate)The number of rows in the check matrix H M = N × (1-rate)

=288×0.5=144= 288 × 0.5 = 144

의사 난수 치환 행렬의 사이즈 p2=M/d=144/4=36Size of the pseudorandom substitution matrix p 2 = M / d = 144/4 = 36

따라서 p=6 Thus p = 6

정보 길이 부분의 의사 난수 치환 행렬 SP의 최대수Maximum number of pseudorandom substitution matrices SP of information length part

=N×rate/p2=288×0.5/36=4= N × rate / p 2 = 288 × 0.5 / 36 = 4

이들 결과로부터, 검사 행렬 H에 대하여, 좌단으로부터 4×4개의 의사 난수 치환 행렬 SP과 검사 행렬 H의 우측의 좌/하삼각 부분에 3+2+1개의 의사 난수 치환 행렬 SP이 배치 가능해진다. From these results, 3 + 2 + 1 pseudo random number substitution matrix SP can be arrange | positioned with respect to the test matrix H from the left end at 4 * 4 pseudo random number substitution matrix SP and the left / low triangle of the right side of the test matrix H.

이 최대 차수와 하삼각 행렬을 포함하는 검사 행렬이 가지는 제약 조건하에서, 취할 수 있는 차수 분포의 조합을 산출한다. 차수 분포란, 예컨대, 열 차수 4의 열수의 검사 행렬 전체의 열수에 대한 비율을 나타내고 있고, 그 비율에 따라 열 차수 4가 되도록 의사 난수 치환 행렬(열 가중치 1, 행 가중치 1)을 열 방향으로 4개 조합하여 작성한다. 또한, 행 차수에 대해서도 마찬가지로 실행한다. 예컨대, 상기 예에서는 열 가중치 4가 검사 행렬 H 전체의 열수에 대하여 의사 난수 치환 행렬을 사용하여 취할 수 있는 비율은 0~4/8이며, 열 가중치 3의 취할 수 있는 비율은 0~5/8로 된다. 이들 열 차수 및 행 차수와 취할 수 있는 비율의 조합을, 다음 단계 ST15에서 실행하는 차수 분포의 최적화를 위한 파라미터로서 출력한다. Under the constraints of the test matrix including the maximum order and the lower triangular matrix, a combination of possible order distributions is calculated. The order distribution indicates, for example, the ratio of the total number of columns of the column order 4 to the number of columns of the test matrix, and the pseudo random number substitution matrix (column weight 1, row weight 1) in the column direction so as to be the column order 4 according to the ratio. Four combinations should be written. Similarly, the row order is executed. For example, in the above example, the ratio of column weight 4 to the number of columns of the entire test matrix H using the pseudo random number substitution matrix is 0 to 4/8, and the ratio of column weight 3 to 0 to 5/8. It becomes The combination of these column orders and row orders and the ratios that can be taken is output as a parameter for optimization of the order distribution executed in the next step ST15.

단계 ST15에 있어서, 차수 분포 최적화부(15)는, 상기 단계 ST14에서 산출된 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 이하에 도시하는 바와 같이, 밀도 발전법에 의해 검사 행렬 생성의 차수 분포를 최적화한다. 여기서는, 상기 단계 ST14에서 구한 차수 분포의 조합 중 최적의 차수 분포를 산출한다. 여기서, 차수 분포란, 예컨대, 열 차수 4인 열수가 전체의 검사 행렬의 몇 퍼센트인지를 나타내고 있고, 그 비율에 따라 열 차수 4가 되도록 의사 난수 치환 행렬(열 가중치 1, 행 가중치 1)을 열 방향으로 4개 조합하여 작성한다. 이에 따라 다음 단계 ST16에 있어서 검사 행렬을 생성할 수 있다. In step ST15, the order distribution optimization unit 15 sets the order distribution of the test matrix generation by the density power generation method as shown below, with the combination of the possible order distributions calculated in step ST14 as the constraint condition. To optimize. Here, the optimum order distribution is calculated among the combinations of the order distributions obtained in step ST14. Here, the degree distribution indicates, for example, what percentage of the entire test matrix is the column number of column order 4, and the pseudo random number substitution matrix (column weight 1, row weight 1) is columned so as to be column order 4 according to the ratio. Four combinations in the direction are written. Accordingly, the parity check matrix can be generated in the next step ST16.

이 단계 ST15에 있어서, 상기 단계 ST14에서 구한 검사 행렬 H에서의 의사 난수 치환 행렬 SP의 사이즈와 그 최대 배치수와 배치 개소의 제약 조건 아래, 검사 행렬 H 내의 의사 난수 치환 행렬 SP의 개소에서 임의의 의사 난수 치환 행렬 SP를 배치하거나, 또는 그 개소는 p2×p2의 O 행렬을 배치한다고 하는 조건으로 조 합을 선택할 수 있도록 한다. In step ST15, the arbitrary random number substitution matrix SP in the parity check matrix H obtained in the step ST14, and the maximum random number and the location constraints are restricted at the position of the pseudo random number substitution matrix SP in the parity check matrix H. Arrangement of the pseudo random number substitution matrix SP, or its location allows the selection of the combination to be made under the condition of arranging an O matrix of p 2 × p 2 .

다음에, 밀도 발전법의 가우스 근사법에서의 최적화를 이용하여, 요구된 부호화율에 근거하는 「Irregular-LDPC 부호」의 앙상블(차수 배분)을 구한다. Next, using an optimization in the Gaussian approximation of the density generation method, an ensemble (order allocation) of "Irregular-LDPC code" based on the required coding rate is obtained.

열의 차수 배분의 생성 함수 λ(x)와 행의 차수 배분의 생성 함수 ρ(x)를 동시에 변수로서 취급하고, 가우스 노이즈 σn가 최대가 되도록, 선형 계획법으로 최적의 생성 함수 λ(x)와 생성 함수 ρ(x)를 탐색한다(하기의 (11)식을 참조). 이 탐색에서의 구속 조건은, 후술하는 (12)식을 만족시키는 것이다. The generation function λ (x) of the column order distribution and the generation function ρ (x) of the order distribution of the rows are treated simultaneously as variables, and the optimal generation function λ (x) and the linear programming method are applied so that the Gaussian noise σ n is maximized. Search for the generation function ρ (x) (see equation (11) below). The constraint condition in this search satisfies the following expression (12).

이 때, 열의 차수 배분의 생성 함수 λ(x)와 행의 차수 배분의 생성 함수 ρ(x)의 변수의 취할 수 있는 값은, 상기 검사 행렬 H의 제약 조건으로 산출되는 값만으로 한다. At this time, the possible values of the variables of the generation function λ (x) of the order distribution of the columns and the generation function ρ (x) of the order allocation of the rows are only values calculated by the constraints of the test matrix H.

Figure 112007025417897-PCT00024
Figure 112007025417897-PCT00024

Figure 112007025417897-PCT00025
Figure 112007025417897-PCT00025

r>h(s,r), 모든 r∈(0,φ(s)) r> h (s, r), all r∈ (0, φ (s))

또, 상기 s는, 송신 신호로서 {-1, 1}의 2값 신호가 출력되고, 가우스 통신 로를 통해 수신한 신호의 대수 우도비(LLR)의 평균값이며, s=2/σn 2에 의해 산출할 수 있다. Further, s is a mean value of the logarithmic likelihood ratios (LLR) of signals received through a Gaussian communication path, and a two-value signal of {-1, 1} is output as a transmission signal, and s = 2 / σ n 2 . It can calculate by

이와 같이, 소정의 조건을 만족시키는 생성 함수 λ(x)와 생성 함수 ρ(x)를 1회의 선형 계획법으로 구하고 있기 때문에, 비특허문헌 5와 같이, 생성 함수 λ(x)의 도출과 생성 함수 ρ(x)의 산출을 반복 실행하여, 쌍방의 최적값을 구하는 방법보다도, 쉽고 단시간에, 확정적이고 또한 특성이 안정한 앙상블을 생성할 수 있다. As described above, since the generation function λ (x) and the generation function ρ (x) satisfying the predetermined conditions are obtained by one linear programming method, the derivation and generation function of the generation function λ (x) is obtained as in Non-Patent Document 5. It is possible to generate an ensemble that is decisive and stable in a shorter time and easier than the method of repeatedly calculating the optimum value of both by calculating ρ (x).

단계 ST16에 있어서, 검사 행렬 생성부(16)는, 상기 단계 ST15에서 최적화된 검사 행렬 생성의 차수 분포에 의해, 상기 단계 ST13에서 생성된 의사 난수 치환 행렬 SP를 하기에 도시하는 바와 같이 배치하여 LDPC 부호용의 검사 행렬을 생성한다. 즉, 여기서는, 상기 단계 ST15에서 구한 차수 분포에 근거하여, 검사 행렬 H에서의 의사 난수 치환 행렬 SP의 배치를 결정한다. In step ST16, the parity check matrix generator 16 arranges the pseudo random number substitution matrix SP generated in step ST13 as shown below by LDPC by the order distribution of the parity check matrix generation optimized in step ST15. Create a check matrix for the sign. That is, here, the arrangement of the pseudo random number substitution matrix SP in the parity check matrix H is determined based on the order distribution obtained in step ST15.

Figure 112007025417897-PCT00026
Figure 112007025417897-PCT00026

SP의 배치 및 파라미터를 정하는 때는, 사이클 4,6 등의 짧은 사이클의 발생이 없는 조합을 SPj ,s의 j 및 s를 조정하여 탐색하는 것에 의해 결정한다. SPj ,s은 j 및 s를 변경함으로써 다른 의사 난수 치환 행렬로 되고, 그 조합에 의한 사이클 4나 6 발생은 원래 일어나기 어려운 구조로 되어 있기 때문에, 탐색으로부터 조합의 도출은 비교적 용이한 점을 특징으로 들 수 있다. In determining the arrangement and parameters of the SP , the combination without occurrence of short cycles such as cycles 4 and 6 is determined by searching for by adjusting j and s of SP j , s . SP j , s is a different pseudo-random substitution matrix by changing j and s, and cycle 4 or 6 generation due to the combination is inherently difficult to occur. It can be mentioned as.

이상과 같이, 이 실시예 1에 따르면, 확정적이고 특성이 안정하며, 오류 정정 능력이 양호하고, 또한 다양한 앙상블, 부호 길이, 부호화율에 대응한 Irregular-LDPC 부호용의 검사 행렬을 단시간에 용이하게 생성할 수 있다고 하는 효과를 얻을 수 있다. As described above, according to the first embodiment, a check matrix for Irregular-LDPC codes corresponding to deterministic, stable characteristics, good error correction capability, and various ensembles, code lengths, and code rates can be easily obtained in a short time. The effect that it can produce is obtained.

(실시예 2)(Example 2)

다음에 실시예 1을 확장하여, 복수의 부호화율에 있어서 호환성이 있는(정보 길이가 변하지 않고 부호화율만 변화함) RC(Rate comapatible)-LDPC 부호의 검사 행렬 생성 방법에 대하여 설명한다. Next, the first embodiment will be expanded and a method of generating a parity check matrix of a rate comapatible (RCPC) -LDPC code compatible with a plurality of coding rates (the information length does not change and only the code rate changes) will be described.

도 7은 본 발명의 실시예 2에 따른 LDPC 부호용의 검사 행렬 생성 장치의 구성을 나타내는 블럭도이다. 이 검사 행렬 생성 장치는, 정보 길이·부호화율·열 최대 차수 입력부(21), 의사 난수 치환 행렬용 파라미터 산출부(22), 의사 난수 치환 행렬 생성부(23), 차수 분포 최적화용 파라미터 산출부(24), 차수 분포 최적화부(25) 및 검사 행렬 생성부(26)를 구비하고 있다. 이 검사 행렬 생성 장치는, 도 4에서의 송신측 및 수신측의 통신 장치 내에 탑재되며, 생성한 검사 행렬을 부호화기(101) 및 복호기(105)에 출력하더라도 좋고, 송신측 및 수신측의 통신 장치 밖에 설치되며, 생성한 검사 행렬을 송신측 및 수신측의 통신 장치 내의 메모리(도시하지 않음)에 저장하여 부호화기(101) 및 복호기(105)에 출력하더라도 좋다. Fig. 7 is a block diagram showing the structure of a parity check matrix generation device for LDPC codes according to the second embodiment of the present invention. The parity check matrix generating apparatus includes an information length, coding rate, and column maximum order input unit 21, a parameter calculation unit 22 for pseudorandom number substitution matrix, a pseudo random number substitution matrix generator 23, and a parameter distribution optimizer for order distribution optimization. (24), the order distribution optimization unit 25 and the parity check matrix generating unit 26 are provided. This check matrix generating device is mounted in the communication device on the transmitting side and the receiving side in FIG. 4, and may output the generated check matrix to the encoder 101 and the decoder 105, and the communication device on the transmitting side and the receiving side. It may be provided outside, and the generated check matrix may be stored in a memory (not shown) in the communication device on the transmitting side and the receiving side and output to the encoder 101 and the decoder 105.

도 8은 본 발명의 실시예 2에 따른 검사 행렬 생성 장치의 처리의 흐름을 나 타내는 흐름도이다. 단계 ST21에 있어서, 정보 길이·부호화율·열 최대 차수 입력부(21)는 소정의 정보 길이, 복수의 부호화율 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수를 입력한다. 단계 ST22에 있어서, 의사 난수 치환 행렬용 파라미터 산출부(22)는 상기 단계 ST21에서 입력된 소정의 정보 길이, 복수의 부호화율 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수를 이용하여 의사 난수 치환 행렬을 위한 파라미터를 산출한다. 8 is a flowchart showing the flow of processing by the parity check matrix generating apparatus according to the second embodiment of the present invention. In step ST21, the information length, coding rate, and column maximum order input unit 21 inputs a maximum order of columns of a predetermined information length, a plurality of coding rates, and a maximum coding rate excluding uncoding. In step ST22, the pseudo random number substitution matrix parameter calculating unit 22 substitutes pseudorandom number numbers using the maximum order of columns of a predetermined information length, a plurality of coding rates, and a maximum coding rate excluding unsigned, input in step ST21. Compute the parameters for the matrix.

단계 ST23에 있어서, 의사 난수 치환 행렬 생성부(23)는, 상기 단계 ST22에서 산출된 의사 난수 치환 행렬을 위한 파라미터에 의해 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 의사 난수 치환 행렬을 생성한다. 단계 ST24에 있어서, 차수 분포 최적화용 파라미터 산출부(24)는 상기 단계 ST21에서 입력된 소정의 정보 길이, 복수의 부호화율 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수를 이용하여, 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출한다. In step ST23, the pseudo random number substitution matrix generation unit 23 generates a pseudo random number substitution matrix using a pseudo random number sequence and a Latin square matrix by the parameters for the pseudo random number substitution matrix calculated in step ST22. In step ST24, the order distribution optimization parameter calculating unit 24 uses pseudo-random number substitution by using the maximum order of the columns of the maximum information rate excluding a predetermined information length, a plurality of code rates, and no coding input in the step ST21. The matrix is used to calculate the parameters of a combination of possible order distributions for optimization of the order distribution of the configurable test matrix generation.

단계 ST25에 있어서, 차수 분포 최적화부(25)는, 상기 단계 ST24에서 산출된 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법에 의해 복수의 부호화율에 대한 검사 행렬 생성의 차수 분포를 최적화한다. 단계 ST26에 있어서, 검사 행렬 생성부(26)는 상기 단계 ST25에서 최적화된 복수의 부호화율에 대한 검사 행렬 생성의 차수 분포에 의해, 상기 단계 ST23에서 생성된 의사 난수 치환 행렬을 배치하여 LDPC 부호용의 검사 행렬을 생성한다. In step ST25, the order distribution optimization unit 25 sets the order distribution of the test matrix generation for the plurality of coding rates by the density generation method, with the combination of the possible order distributions calculated in step ST24 as constraint conditions. Optimize. In step ST26, the parity check matrix generator 26 arranges the pseudo random number substitution matrix generated in step ST23 for the LDPC code by order distribution of the parity check matrix generation for the plurality of coding rates optimized in step ST25. Create a check matrix of.

다음에 도 8의 흐름도에서의 단계 ST21~ST26의 상세 처리에 대하여 설명한 다. Next, detailed processing of steps ST21 to ST26 in the flowchart of FIG. 8 will be described.

단계 ST21에 있어서, 정보 길이·부호화율·열 최대 차수 입력부(21)는 소정의 정보 길이 K, 복수의 부호화율 R(l) 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수 d를 입력한다. 여기서, 복수의 부호화율 R(l)에 있어서, l=1, 2, … , 0<R(1)<R(2)< … <1로 한다. 이 단계 ST21에서는, 실시예 1의 단계 ST11과 비교하여, 복수의 부호화율 R(l) 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수 d를 입력하는 점이 다르다. In step ST21, the information length, coding rate, and column maximum order input unit 21 inputs a predetermined information length K, a plurality of code rates R (l), and a maximum order d of columns of maximum coding rate excluding uncoding. Here, in a plurality of coding rates R (l), l = 1, 2,... , 0 <R (1) <R (2) <.. Let it be <1. This step ST21 differs from the step ST11 of the first embodiment in that a plurality of code rates R (l) and a maximum order d of columns of the maximum code rate excluding unsigned are input.

입력된 부호화율 R(l) 중에서, 가장 큰 부호화율 R(max-1)을 위한 검사 행렬 HR(max-1)의 행수를 b로 하고, 열수=부호 길이를 N으로 한다. 여기서, R(max)=1은 무부호화를 의미하고, 이 설명에서는 이용하지 않는 것으로 한다. Among the input code rates R (l), the number of rows of the parity check matrix H R (max-1) for the largest code rate R (max-1) is b, and the number of columns = code length is N. Here, R (max) = 1 means unsigned, and shall not be used in this description.

단계 ST22에 있어서, 의사 난수 치환 행렬용 파라미터 산출부(22)는, 상기 단계 ST21에서 입력된 소정의 정보 길이 K, 복수의 부호화율 R(l) 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수 d를 이용하여, 이하에 도시하는 바와 같이, 의사 난수 치환 행렬을 위한 파라미터를 산출한다. In step ST22, the parameter calculation unit 22 for the pseudorandom number substitution matrix is the maximum order of the predetermined information length K, the plurality of code rates R (l), and the maximum code rate column except for the unsigned inputted in step ST21. Using d, the parameters for the pseudo random number substitution matrix are calculated as shown below.

검사 행렬 H의 열수 N(=부호 길이 N)=K/R(l)Number of columns N (= code length N) of test matrix H = K / R (l)

검사 행렬 H의 행수 M=N-KThe number of rows in the check matrix H M = N-K

다음에 부호화율 R(max-1)의 열의 최대 차수 d(시스템에 의해 사전에 설정되어 있는 값)로부터 의사 난수 치환 행렬의 사이즈 p2를 이하에 의해 구한다. Next, the size p 2 of the pseudo random number substitution matrix is obtained from the maximum order d (value previously set by the system) of the columns of the coding rate R (max-1) as follows.

p2=M/dp 2 = M / d

예컨대, K=864, R(max-1)=R(3)=2/3, d=3이라고 하면,For example, if K = 864, R (max-1) = R (3) = 2/3, d = 3,

N=K/R(3)=864/(2/3)=1296 N = K / R (3) = 864 / (2/3) = 1296

M=N-K=1296-864=432M = N-K = 1296-864 = 432

p2=M/d=432/3=144p 2 = M / d = 432/3 = 144

따라서, p=12로 된다. Therefore, p = 12.

단계 ST23에 있어서, 의사 난수 치환 행렬 생성부(23)는, 실시예 1의 의사 난수 치환 행렬 생성부(13)가 실행하는 단계 ST13의 처리와 같은 처리를 한다. 즉, 의사 난수 치환 행렬 생성부(23)는 단계 ST13-1~단계 ST13-6의 처리를 한다. In step ST23, the pseudo random number substitution matrix generator 23 performs the same processing as that in step ST13 that the pseudo random number substitution matrix generator 13 of the first embodiment executes. That is, the pseudo random number substitution matrix generation part 23 performs the process of step ST13-1-step ST13-6.

단계 ST24에 있어서, 차수 분포 최적화용 파라미터 산출부(24)는 상기 단계 ST21에서 입력된 소정의 정보 길이 K, 복수의 부호화율 R(l) 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수 d를 이용하여, 이하에 도시하는 바와 같이, 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출한다. In step ST24, the parameter distribution optimization parameter calculation unit 24 determines a predetermined information length K, a plurality of code rates R (l) input in the step ST21, and a maximum order d of columns of the maximum code rate excluding unsigned. Using this, as shown below, a parameter of the combination of possible order distributions for the optimization of the order distribution of the configurable check matrix generation using the pseudo random number substitution matrix is calculated.

예컨대, 상기 단계 ST21에서, 정보 길이 K=864, 복수의 부호화율 R(1)=1/3, R(2)=1/2, R(3)=2/3, 무부호화를 제외한 최대 부호화율 R(3)의 열의 최대 차수 d=3를 입력했다고 한다. 여기서, 복수의 부호화율 R(1) 중, 가장 높은 부호화율 R(3)=2/3에 대응한 검사 행렬의 행수와 열수를 M3과 N3으로 한다. 또한, 단계 ST22에서, M3=M, N3=N으로 하여, p=12가 도출되어 있다. 부호화율 R(2)=1/2로부터 그 검사 행렬의 행수와 열수를 M2와 N2로 하고, 정보 길이 K는 변하지 않는다고 하면, For example, in step ST21, information length K = 864, a plurality of coding rates R (1) = 1/3, R (2) = 1/2, R (3) = 2/3, maximum coding excluding uncoding It is assumed that the maximum order d = 3 of the row of the rate R (3) is entered. Here, among the plurality of code rates R (1), the number of rows and columns of the parity check matrix corresponding to the highest code rate R (3) = 2/3 is set to M 3 and N 3 . Further, in step ST22, and the M 3 = M, N 3 = N, there are p = 12 is obtained. Assuming that the number of rows and columns of the check matrix is M 2 and N 2 from the code rate R (2) = 1/2 , and the information length K is not changed,

열수 N2=K/R(2)=864/(1/2)=1728, Hydrothermal N 2 = K / R (2) = 864 / (1/2) = 1728,

행수 M2=N2×(1-R(2))=1728×(1/2)=864Number of rows M 2 = N 2 × (1-R (2)) = 1728 × (1/2) = 864

로 된다. 마찬가지로, 부호화율 R(1)=1/3로부터 그 검사 행렬의 행수와 열수를 M1과 N1로 하고, 정보 길이 K는 변하지 않는다고 하면, It becomes Similarly, assuming that the number of rows and columns of the parity check matrix is M 1 and N 1 from the code rate R (1) = 1/3, and the information length K does not change,

열수 N1=K/R(1)=864/(1/3)=2592, Hydrothermal number N 1 = K / R (1) = 864 / (1/3) = 2592,

행수 M1=N1×(1-R(1))=2592×(2/3)Number of rows M 1 = N 1 × (1-R (1)) = 2592 × (2/3)

=1728= 1728

로 된다. 행수 M1=1728에 대하여, p2×p2=144×144의 의사 난수 치환 행렬 SP는 행 방향으로 12개 배치 가능하고, K=864로부터, 열 방향의 정보 길이 부분에는, 의사 난수 치환 행렬 SP는 12개 배치 가능해진다. 이들 결과로부터, R(1)의 부호화율을 실행하기 위한 검사 행렬 H에 대하여 좌단으로부터 12×6개의 p2×p2=144×144의 의사 난수 치환 행렬 SP와, 검사 행렬 H의 우측의 좌/하삼각 부분에 11+10+ …+1개의 의사 난수 치환 행렬 SP가 배치 가능해진다. 이 검사 행렬은 다음 단계 ST25에서 설명하는 방법으로 R(2), R(3)도 구성할 수 있다. It becomes With respect to the number of rows M 1 = 1728, 12 pseudo random number substitution matrices SP of p 2 × p 2 = 144 × 144 can be arranged in the row direction, and from K = 864, a pseudo random number substitution matrix is provided in the information length part of the column direction. 12 SPs can be arranged. From these results, 12 x 6 p 2 x p 2 = 144 x 144 pseudo random number substitution matrix SP from the left end with respect to the test matrix H for executing the coding rate of R (1), and the left side of the right side of the test matrix H. 11 + 10 + in the lower triangular part; +1 pseudo-random substitution matrix SP can be arranged. This parity check matrix can also constitute R (2) and R (3) in the manner described in the next step ST25.

단계 ST25에 있어서, 차수 분포 최적화부(25)는, 상기 단계 ST24에서 산출된 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 하기에 도시하는 바와 같이 밀도 발전법에 의해 복수의 부호화율에 대한 검사 행렬 생성의 차수 분포를 최적화 한다. In step ST25, the degree distribution optimization unit 25 checks a plurality of coding rates by the density generation method as shown below, using the combination of the order distributions calculated in step ST24 as constraint conditions. Optimize the order distribution of matrix generation.

· F2={0, 1}를 2원의 유한체로 한다. 부호 워드 C⊂F2 N로 하고, H=(hij)을 C에 대응하는 M×N의 패리티 검사 행렬로 한다. 부호 워드 C는 패리티 검사 행렬 Hx=0의 패리티 검사식에 의해 정의되는 M개의 2원 패리티 체크 비트를 만족하는 길이 N비트의 계열 x로 이루어진다. 행렬 H가 풀 랭크라고 가정하면, 정보 비트수는 K=N-M으로 되고, 부호화율은 R=K/N으로 된다. Let F 2 = {0, 1} as a binary finite body. Let the code word C⊂F 2 N be set, and let H = (h ij ) be the parity check matrix of M × N corresponding to C. The code word C consists of a sequence x of length N bits satisfying M binary parity check bits defined by the parity check equation of the parity check matrix Hx = 0. Assuming that matrix H is full rank, the number of information bits is K = NM and the coding rate is R = K / N.

또한, HR(j)를 부호화율이 가변인 LDPC 부호 CR (l)의 패리티 검사 행렬로 한다. 여기서, R(l)는 부호화율이며, R(l), l=1,2,…, max 0<R(1)<R(2)<…<R(max)=1이다(R(max)=1은 무부호화를 의미함). 또한, HR(max-1)을 CR (max-1)를 위한 N×N의 패리티 검사 행렬로 한다. 그리고 HR(max-2)을 HR(max-1)과 M×l의 0 행렬과 t×(N+t)의 추가의 패리티 검사 행렬 AR(max-2)로 이루어지는 이하의 식으로 정의되는 (M+t)×(N+t)의 패리티 검사 행렬로 한다. In addition, let H R (j ) be the parity check matrix of the LDPC code C R (l) having a variable coding rate. Where R (l) is the coding rate, where R (l), l = 1, 2,... , max 0 <R (1) <R (2) <… <R (max) = 1 (R (max) = 1 means no sign). In addition, let H R (max-1) be an N × N parity check matrix for C R (max-1) . H R (max-2) is represented by the following equation consisting of H R (max-1) , an M matrix of M × l and an additional parity check matrix A R (max-2) of t × (N + t). A parity check matrix of (M + t) × (N + t) is defined.

Figure 112007025417897-PCT00027
Figure 112007025417897-PCT00027

(H R(max-1)H R(max-2)은 모두 풀 랭크)( H R (max-1) and H R (max-2) are both full rank)

Figure 112007025417897-PCT00028
Figure 112007025417897-PCT00028

이것을 그림으로 표현하면 아래와 같이 된다. If this is expressed as a picture, it becomes as follows.

Figure 112007025417897-PCT00029
Figure 112007025417897-PCT00029

이것을 일반화하면 아래와 같이 된다. If you generalize this,

Figure 112007025417897-PCT00030
Figure 112007025417897-PCT00030

(H R(l)은 모두 풀 랭크)( H R (l) is full rank)

Figure 112007025417897-PCT00031
Figure 112007025417897-PCT00031

여기서, tiH R(i)H R(i+1)의 열수 및 행수의 차를 나타낸다. Where t i is the number of columns of H R (i) and H R (i + 1) And the number of rows.

H R(i)의 설계를 위해 밀도 발전법의 가우스 근사법에 의해 모든 H R(i),l=1,2, … , max-1의 차수 배분을 동시에 최적화한다. 최적화 문제를 이하에 나타낸다. By a Gaussian approximation of the density Development Act for the design of H R (i) all H R (i), l = 1,2, ... , optimize the order distribution of max-1 simultaneously. The optimization problem is shown below.

여기서는,

Figure 112007025417897-PCT00032
를 최소화하도록 하는 H R(i)의 차수 배분을 구한다. Here,
Figure 112007025417897-PCT00032
Find the order distribution of H R (i) to minimize.

여기서, GAPR (l) 가우스 근사법으로 추정하는 H R(i)의 반복 임계값의 SNR와 섀논 한계의 차를 dB로 표현한 것이며, 이하의 식으로 표현한다. Here, the difference between the SNR of the repetition threshold of H R (i) estimated by the GAP R (l) Gaussian approximation and the Shannon limit is expressed in dB, and is expressed by the following equation.

Figure 112007025417897-PCT00033
Figure 112007025417897-PCT00033

여기서

Figure 112007025417897-PCT00034
,
Figure 112007025417897-PCT00035
,
Figure 112007025417897-PCT00036
및 E는 각각 부호화율 R(l)의 때의 SNR의 섀논 한계, 가우스 통신로의 노이즈의 분산값, 및 가우스 통신로를 통해 수신한 신호의 대수 우도비(LLR)의 평균값 및 신호의 에너지이다. here
Figure 112007025417897-PCT00034
,
Figure 112007025417897-PCT00035
,
Figure 112007025417897-PCT00036
And E are the Shannon limit of the SNR at the code rate R (l), the variance of the noise of the Gaussian channel, and the mean value of the logarithmic likelihood ratio (LLR) of the signal received via the Gaussian channel and the energy of the signal, respectively. .

이 각각의 부호화율에 대하여 (18)식의 조건 아래, GAPR (l) 및 (14)식을 이용하여For each of these coding rates, under the condition of equation (18), using the GAP R (l) and (14) equations,

Figure 112007025417897-PCT00037
Figure 112007025417897-PCT00037

를 구한다. Obtain

상기 단계 ST24에서 이용한 R(l)=1-M1/N1=1/3, R(2)=1-M2/N2=1/2, R(3)=1-M3/N3=2/3에 대하여, 설명에 사용한 변수와의 대응을 나타내면 아래와 같이 된다. R (l) = 1-M 1 / N 1 = 1/3, R (2) = 1-M 2 / N 2 = 1/2, R (3) = 1-M 3 / N used in step ST24 above For 3 = 2/3, the correspondence with the variables used in the explanation is as follows.

M3=M, N3=N, M2=M3+t, N2=N3+t,M 3 = M, N 3 = N, M 2 = M 3 + t, N 2 = N 3 + t,

M1=M2+t, N1=N2+tM 1 = M 2 + t, N 1 = N 2 + t

단계 ST26에 있어서, 검사 행렬 생성부(26)는 상기 단계 ST25에서 최적화된 복수의 부호화율에 대한 검사 행렬 생성의 차수 분포에 의해, 상기 단계 ST23에서 생성된 의사 난수 치환 행렬을 배치하여 이하에 나타낸 바와 같은 LDPC 부호용의 검사 행렬을 생성한다. In step ST26, the parity check matrix generator 26 arranges the pseudo random number substitution matrix generated in step ST23 according to the order distribution of the parity check matrix generation for the plurality of coding rates optimized in step ST25, and shows the following. A check matrix for the LDPC code as described above is generated.

예컨대, R(1)=1-M1/N1=1/3, R(2)=1-M2/N2=1/2, R(3)=1-M3/N3=2/3에 대하여, 상기 단계 ST25에서 구한 차수 분포에 따라, 하기와 같은 검사 행렬을 생성한다. For example, R (1) = 1-M 1 / N 1 = 1/3, R (2) = 1-M 2 / N 2 = 1/2, R (3) = 1-M 3 / N 3 = 2 For / 3, the following check matrix is generated according to the order distribution obtained in step ST25.

Figure 112007025417897-PCT00038
Figure 112007025417897-PCT00038

다음에 상기에서 설명한 LDPC 부호의 특성을 비교한다. Next, the characteristics of the LDPC code described above are compared.

도 9는 이 실시예 2에 따른 검사 행렬 생성 장치로 생성된 검사 행렬을 사용한 LDPC 부호의 정보 1비트당 신호 전력 대 노이즈 전력비(Eb/No)에 대한 비트 오류율(BER) 특성과 프레임 오류율(FER) 특성을 도시하는 도면이다. 여기서는, 정보 길이 1536비트, 통신로 AWGN, 최대 반복수 200회로 하고 있다. 또, 복호법은 「합-곱 알고리즘」이다. 이 특성은, 하기에 나타내는 파라미터 M1~M3, N1~N3을 이용하여 이 실시예 2의 수순에 따라 생성한 RC-LDPC 부호의 검사 행렬을 사용한 것이다. 이 검사 행렬에 있어서, R(1)=1-M1/N1=1/3, R(2)=1-M2/N2=1/2, R(3)=1-M3/N3=2/3이다. FIG. 9 shows the bit error rate (BER) characteristic and the frame error rate (FER) of signal power to noise power ratio (Eb / No) per bit information of the LDPC code using the test matrix generated by the test matrix generator according to the second embodiment. ) Is a diagram showing characteristics. Here, the information length is 1536 bits, the communication path AWGN, and the maximum number of repetitions is 200 times. The decoding method is a "sum-product algorithm". This characteristic uses the parity check matrix of the RC-LDPC code generated according to the procedure of the second embodiment using the parameters M 1 to M 3 and N 1 to N 3 shown below . In this test matrix, R (1) = 1-M 1 / N 1 = 1/3, R (2) = 1-M 2 / N 2 = 1/2, R (3) = 1-M 3 / N 3 = 2/3.

한편, R(1)=1/3, R(2)=1/2, R(3)=2/3에서의 섀논 한계의 SNR는, 각각 -0.4954(dB), 0.1870(dB), 1.0595(dB)이며, 각각의 차는 BER=10-4점에서, 대략 1.8(dB), 1.7(dB), 1.45(dB)로 되고, 정보 길이 1536비트로 그다지 길지 않음에도 불구하고 섀논 한계에 접근하는 RC-LDPC 부호를 실현할 수 있다. On the other hand, the SNRs of the Shannon limits at R (1) = 1/3, R (2) = 1/2, and R (3) = 2/3 are -0.4954 (dB), 0.1870 (dB) and 1.0595 ( dB), and each difference is approximately 1.8 (dB), 1.7 (dB), 1.45 (dB) at BER = 10 -4 points, and RC- approaching the Shannon limit despite being not very long with an information length of 1536 bits. LDPC code can be realized.

이상과 같이, 이 실시예 2에 따르면, 실시예 1과 동일한 효과를 얻을 수 있고, 또한, 실시예 1에서는 부호화율마다 개별적으로 검사 행렬을 생성해야 하지만, 이 실시예 2에서는 복수의 부호화율에 대하여 최종적으로 한 종류의 검사 행렬을 준비하는 것만으로 좋고, 검사 행렬을 용이하게 생성할 수 있다고 하는 효과를 얻을 수 있다. As described above, according to the second embodiment, the same effects as those of the first embodiment can be obtained. In addition, in the first embodiment, a check matrix must be generated for each coding rate. Finally, only one kind of check matrix is prepared, and the effect that the check matrix can be easily generated can be obtained.

(실시예 3)(Example 3)

도 10은 본 발명의 실시예 3에 따른 LDPC 부호용의 검사 행렬 생성 장치의 구성을 나타내는 블럭도이다. 이 검사 행렬 생성 장치는, 정보 길이·부호화율·열 최대 차수 입력부(31), 의사 난수 치환 행렬용 파라미터 산출부(32), 의사 난수 치환 행렬 생성부(33), 차수 분포 최적화용 파라미터 산출부(34), 차수 분포 최적화부(35) 및 검사 행렬 생성부(36)를 구비하고 있다. 이 검사 행렬 생성 장치는, 도 4에서의 송신측 및 수신측의 통신 장치 내에 탑재되고, 생성한 검사 행렬을 부호화기(101) 및 복호기(105)에 출력하더라도 좋고, 송신측 및 수신측의 통신 장치 밖에 설치되며, 생성한 검사 행렬을 송신측 및 수신측의 통신 장치 내의 메모리(도시하지 않음)에 저장하여 부호화기(101) 및 복호기(105)에 출력하더라도 좋다. Fig. 10 is a block diagram showing the structure of a parity check matrix generating apparatus for LDPC codes according to the third embodiment of the present invention. The test matrix generator includes an information length, coding rate, and column maximum order input unit 31, a parameter calculator 32 for pseudo-random number substitution matrix, a pseudo random number substitution matrix generator 33, and a parameter calculator for order distribution optimization. 34, an order distribution optimizer 35, and a parity check matrix generator 36 are provided. This check matrix generating device may be mounted in the communication device on the transmitting side and the receiving side in FIG. 4, and may output the generated check matrix to the encoder 101 and the decoder 105, and the communication device on the transmitting side and the receiving side. It may be provided outside, and the generated check matrix may be stored in a memory (not shown) in the communication device on the transmitting side and the receiving side and output to the encoder 101 and the decoder 105.

도 11은 본 발명의 실시예 3에 따른 검사 행렬 생성 장치의 처리의 흐름을 나타내는 흐름도이다. 단계 ST31에 있어서, 정보 길이·부호화율·열 최대 차수 입력부(31)는 소정의 정보 길이, 부호화율 및 열의 최대 차수를 입력한다. 단계 ST32에 있어서, 의사 난수 치환 행렬용 파라미터 산출부(32)는 상기 단계 ST31에서 입력된 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 후술하는 제 1 및 제 2 의사 난수 치환 행렬을 위한 파라미터를 산출한다. Fig. 11 is a flowchart showing the flow of processing by the parity check matrix generating apparatus according to the third embodiment of the present invention. In step ST31, the information length, coding rate, and column maximum order input unit 31 inputs a predetermined information length, coding rate, and maximum order of columns. In step ST32, the pseudo random number substitution matrix parameter calculating unit 32 uses the predetermined information length, coding rate, and maximum order of columns input in step ST31 to generate the first and second pseudorandom substitution matrices described later. Calculate the parameter.

단계 ST33에 있어서, 의사 난수 치환 행렬 생성부(33)는, 상기 단계 ST32에서 산출된 제 1 및 제 2 의사 난수 치환 행렬을 위한 파라미터에 의해 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 제 1 의사 난수 치환 행렬을 생성하고, 또한, 제 1 의사 난수 치환 행렬을 또한 행 방향으로 압축하여 제 2 의사 난수 치환 행렬을 생성한다. 단계 ST34에 있어서, 차수 분포 최적화용 파라미터 산출부(34)는 상기 단계 ST31에서 입력된 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용해서, 제 1 및 제 2 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출한다. In step ST33, the pseudo random number substitution matrix generation unit 33 uses a pseudo random number sequence and a Latin square matrix as a parameter for the first and second pseudo random number substitution matrices calculated in step ST32, to form a first pseudo random number. A substitution matrix is generated, and further, the first pseudo random number substitution matrix is further compressed in a row direction to generate a second pseudo random number substitution matrix. In step ST34, the parameter distribution optimization parameter calculation unit 34 is configured by using the first and second pseudorandom number substitution matrices using the predetermined information length, coding rate, and maximum order of columns input in step ST31. Calculate the parameters of the combination of possible order distributions for optimization of the order distribution of possible test matrix generations.

단계 ST35에 있어서, 차수 분포 최적화부(35)는, 상기 단계 ST34에서 산출된 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법에 의해 검사 행렬 생성의 차수 분포를 최적화한다. 단계 ST36에 있어서, 검사 행렬 생성부(36)는 상기 단계 ST35에서 최적화된 검사 행렬 생성의 차수 분포에 의해, 상기 단계 ST33에서 생성된 제 1 및 제 2 의사 난수 치환 행렬을 배치하여 LDPC 부호용의 검사 행렬을 생성한다. In step ST35, the order distribution optimization unit 35 optimizes the order distribution of the test matrix generation by the density power generation method by using the combination of the possible order distributions calculated in the above step ST34 as constraint conditions. In step ST36, the parity check matrix generation unit 36 arranges the first and second pseudo random number substitution matrices generated in step ST33 according to the order distribution of the parity check matrix generation optimized in step ST35 for LDPC code. Create a check matrix.

다음에 도 11의 흐름도에서의 단계 ST31~ST36의 상세 처리에 대하여 설명한다. Next, detailed processing of steps ST31 to ST36 in the flowchart of FIG. 11 will be described.

단계 ST31에 있어서, 정보 길이·부호화율·열 최대 차수 입력부(31)는 소정의 정보 길이, 부호화율 및 열의 최대 차수로서, 시스템에서 사전에 설정되어 있는 정보 길이 K=120, 부호화율 rate=0.5, 열의 최대 차수 d=16를 입력한다. In step ST31, the information length, encoding rate, and column maximum order input unit 31 is a predetermined information length, a coding rate, and a maximum order of columns, and the information length K = 120 and coding rate rate = 0.5 previously set in the system. , Enter the maximum order of columns d = 16.

단계 ST32에 있어서, 의사 난수 치환 행렬용 파라미터 산출부(32)는, 상기 단계 ST31에서 입력된 소정의 정보 길이 K=120, 부호화율 rate=0.5 및 열의 최대 차수 d=16을 이용하여, 이하에 도시하는 바와 같이, 검사 행렬 H의 행수 M, 열수(=부호화율) N, 제 1 및 제 2 의사 난수 치환 행렬을 위한 공통의 파라미터(p·b×p·b의 의사 난수 치환 행렬의 p와 b)를 산출한다. In step ST32, the parameter calculation unit 32 for the pseudorandom number substitution matrix uses the predetermined information length K = 120, the coding rate rate = 0.5, and the maximum order d = 16 of the column input in step ST31, as follows. As shown, the number of rows M of the test matrix H, the number of columns (= code rate) N, and the common parameters for the first and second pseudo-random number substitution matrices (p of the pseudo random number substitution matrix of p · b × p · b and calculate b).

후술하는 제 1 의사 난수 BPShop_I, BPShop_II, BPShop_III, BPShop_IV의 행 방향의 최대 개수는 4이기 때문에(단계 ST33-7에서 설명), 남는 열 차수 d-4=12를 하기 단계 ST34에서 설명하는 제 2 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw에서 cw=3에 의해 실현한다. cw=3의 경우, 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw의 사용 개수=남는 열 차수 12/cw=4로 되어 cIcw, cIIcw, cIIIcw, cIVcw의 4개의 조합을 열 방향으로 나열하여 이용한다. To below the first pseudo-random number BPS _I hop, hop _II BPS, BPS _III hop, because the maximum number of the row direction of the BPS hop _IV is 4 (as explained in step ST33-7), the column degree d-4 = 12, which remains By the second pseudorandom number substitution matrix cI cw , cII cw , cIII cw , cIV cw described in step ST34, cw = 3 is realized. For cw = 3, the number of pseudorandom substitution matrices cI cw , cII cw , cIII cw , cIV cw = remaining number of orders 12 / cw = 4, four combinations of cI cw , cII cw , cIII cw , cIV cw Use in the column direction.

부호 길이=검사 행렬 II의 열수 N=k/rate=120/(1/3)=360, Sign length = column of check matrix II N = k / rate = 120 / (1/3) = 360,

검사 행렬 H의 행수 M=N*(1-rate)=360*(2/3)=240, The number of rows in the check matrix H M = N * (1-rate) = 360 * (2/3) = 240,

의사 난수 치환 행렬의 사이즈 p·b=M/(의사 난수 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV의 사용 개수+의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw의 사용 개수)=240/8=30.에 의해 예컨대, p=0, b=5로 된다. Pseudo-random number substituted size p · b = M / (pseudo-random number permutation matrix of the matrix BPS hop _I, BPS hop _II, BPS hop _III, using the number of BPS hop _IV + pseudo-random number permutation matrix cI cw, cII cw, cIII cw, cIV The number of cw used) = 240/8 = 30. For example, p = 0 and b = 5.

단계 ST33에 있어서, 의사 난수 치환 행렬 생성부(33)는, 이하의 단계 ST33-1~ST33-8에 도시하는 바와 같이, 상기 단계 ST32에서 산출된 제 1 및 제 2 의사 난 수 치환 행렬을 위한 파라미터에 의해 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 제 1 의사 난수 치환 행렬을 생성하고, 또한, 제 1 의사 난수 치환 행렬을 또한 행 방향으로 압축하여 제 2 의사 난수 치환 행렬을 생성한다. In step ST33, the pseudo random number substitution matrix generation unit 33 performs the first and second pseudo random number substitution matrices calculated in step ST32 as shown in steps ST33-1 to ST33-8 below. A first pseudo random number substitution matrix is generated using a pseudo random number sequence and a Latin square matrix by parameters, and the first pseudo random number substitution matrix is further compressed in a row direction to generate a second pseudo random number substitution matrix.

즉, 상기 단계 ST32에서 구한 p와 b로부터 제 1 의사 난수 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV 및 제 2 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw를 생성한다. That is, substituted first pseudo-random number from the p and b obtained in step ST32 matrix BPS hop _I, BPS hop _II, BPS hop _III, BPS hop _IV and second pseudo-random number permutation matrix cI cw, cII cw, cIII cw, cIV cw Create

[단계 ST33-1][Step ST33-1]

이하의 식으로 정의되는 의사 난수 계열 Cinit(i)를 생성한다. 이 인덱스의 init는 Cinit(1)의 값, 즉 초기값을 나타낸다. Produces a pseudorandom sequence C init (i) defined by the following equation: The init at this index represents the value of C init (1), the initial value.

Figure 112007025417897-PCT00039
Figure 112007025417897-PCT00039

여기서, P는 P>p로 되는 소수이며, G0은 GF(P)의 원시원이다. 또, GF(P)의 요소인 G0의 연속하는 누승의 값(예컨대 G0 1, G0 2, ..., G0 P -1=1)이 GF(P)의 영이 아닌 모든 요소를 나타내는 경우, C0을 원시원이라고 부른다. 이 계열 Cinit(i)은 요소간의 차분이 비균일이며 중복하는 요소가 없는 의사 난수 계열로 된다. Here, P is a prime number where P> p, and G 0 is a source of GF (P). In addition, successive powers of G 0 , which are elements of GF (P) (eg, G 0 1 , G 0 2 , ..., G 0 P -1 = 1) are used for all elements that are not zero of GF (P). If present, C 0 is called the source. This series C init (i) is a pseudorandom series with non-uniform differences between elements and no overlapping elements.

예로서 P=7, G0=3,init=3의 경우, For example, for P = 7, G 0 = 3, init = 3,

Figure 112007025417897-PCT00040
Figure 112007025417897-PCT00040

다음에 Cinit(i)의 요소로부터 p보다 큰 수를 추출한다. Next, extract the number greater than p from the elements of C init (i).

예컨대, p=5의 경우For example, for p = 5

Figure 112007025417897-PCT00041
Figure 112007025417897-PCT00041

[단계 ST33-2][ST33-2]

하기 식에 의해 의사 난수 계열 및 그 치환 패턴을 요소로 갖는 라틴 스퀘어 행렬 Li(q,l)을 생성한다. A Latin square matrix L i (q, l) having a pseudorandom number sequence and its substitution pattern as an element is generated by the following equation.

Figure 112007025417897-PCT00042
Figure 112007025417897-PCT00042

이 조작에 의해, L(q,l)를 사용하여 라틴 스퀘어 행렬을 생성할 수 있다. By this operation, a Latin square matrix can be generated using L (q, l).

p=6인 경우의 예를 이하에 나타낸다. An example in the case of p = 6 is shown below.

Figure 112007025417897-PCT00043
Figure 112007025417897-PCT00043

예컨대, p=5의 경우는 아래와 같이 된다. For example, in the case of p = 5, it becomes as follows.

Figure 112007025417897-PCT00044
Figure 112007025417897-PCT00044

[단계 ST33-3][ST33-3]

하기 식에 의해 기본 치환 행렬 패턴 BP(q,l)을 생성한다. A basic substitution matrix pattern BP (q, l) is generated by the following equation.

Figure 112007025417897-PCT00045
Figure 112007025417897-PCT00045

p=6인 경우의 예를 이하에 나타낸다. An example in the case of p = 6 is shown below.

Figure 112007025417897-PCT00046
Figure 112007025417897-PCT00046

[단계 ST33-4][ST33-4]

하기 식에 의해 기본 치환 행렬 패턴 BP(q,l)의 행 단위의 일정 간격의 치환한 행렬 BPhop(q,i)를 생성한다. 또, hop에는, 행 단위의 치환을 할 때의 간격을 설정한다. The matrix BP hop (q, i) substituted at regular intervals in row units of the basic substitution matrix pattern BP (q, l) is generated by the following equation. In addition, the hop is set to the interval at which line-by-line substitution is performed.

i) b와 hop가 서로소인 경우, i) if b and hop are mutually

Figure 112007025417897-PCT00047
Figure 112007025417897-PCT00047

ii) b와 hop가 서로소가 아닌 경우, ii) if b and hop are not mutually

Figure 112007025417897-PCT00048
Figure 112007025417897-PCT00048

b=5, hop=2인 경우의 예를 이하에 나타낸다. An example in the case of b = 5 and hop = 2 is shown below.

Figure 112007025417897-PCT00049
Figure 112007025417897-PCT00049

[단계 ST33-5][Step ST33-5]

하기 식에 의해 기본 치환 행렬 패턴 BPhop(q,i)로부터 기본 치환 계열 BPShop(i)를 생성한다. A basic substitution series BPS hop (i) is generated from the basic substitution matrix pattern BP hop (q, i) by the following equation.

Figure 112007025417897-PCT00050
Figure 112007025417897-PCT00050

이 조작에 의해, p·b×p·b의 열 차수 1, 행 차수 1의 행렬을 생성하기 위한 기본 치환 행렬의 "1"의 위치의 행에 대한 열의 위치 벡터를 생성할 수 있다. By this operation, it is possible to generate a column position vector with respect to the row at the position "1" of the basic substitution matrix for generating a matrix of column order 1 and row order 1 of p · b × p · b.

예를 이하에 나타낸다. An example is shown below.

Figure 112007025417897-PCT00051
Figure 112007025417897-PCT00051

[단계 ST33-6][Step ST33-6]

기본 치환 계열 BPShop(i)로부터 하기 식에 의해 정의되는 2원 p·b×p·b 행렬 BPShop=(hm ,n)를 생성한다. From the basic substitution series BPS hop (i), the binary p * b * p * b matrix BPS hop = (h m , n ) defined by the following formula is generated.

Figure 112007025417897-PCT00052
Figure 112007025417897-PCT00052

이 조작에 의해, p·b×p·b의 열 차수 1, 행 차수 1의 행렬을 생성하기 위한 기본 치환 행렬을 생성할 수 있다. 여기까지의 조작에 의해, 인접하는 요소간의 거리가 넓고 또한 요소간의 거리가 비균일한 의사 난수 치환 행렬을 생성할 수 있다. By this operation, a basic substitution matrix for generating a matrix of column order 1 and row order 1 of p · b × p · b can be generated. By the operation so far, a pseudo random number substitution matrix having a large distance between adjacent elements and a nonuniform distance between elements can be generated.

인접하는 요소간의 거리를 확대한 것으로 실시예 1에서 설명한 T의 하삼각 행렬과의 사이에서 발생하는 짧은 사이클을 억제할 수 있다. 또한, 요소간의 거리를 비균일로 하는 것으로, 상기 p·b×p·b의 기본 치환 행렬 내에서도 짧은 사이클의 발생을 억제할 수 있다. 또한, 사이클 4의 발생을 피하기 위해서 생성한 p·b×p·b의 기본 치환 행렬을 확인하여, 사이클 4가 존재하고 있었던 경우에는, p, b, G0, init, hop를 변동시켜, 사이클 4가 존재하지 않는 조합을 탐색하여 재생한다. 단, 본 실시예의 수순에서는 사이클 4가 존재하는 것은 드물며, 재생성을 필요로 하는 경우는 거의 없다. By enlarging the distance between adjacent elements, it is possible to suppress a short cycle occurring between the lower triangular matrix of T described in the first embodiment. Moreover, by making the distance between elements non-uniform, generation | occurrence | production of a short cycle can be suppressed also in the said basic substitution matrix of p * b * p * b. Also, in order to avoid the occurrence of cycle 4, the basic substitution matrix of generated p · b × p · b is confirmed, and if cycle 4 exists, p, b, G 0 , init, hop are changed to cycle Play by searching for a combination where 4 does not exist. However, in the procedure of this embodiment, cycle 4 is rarely present, and regeneration is rarely required.

예를 이하에 나타낸다. An example is shown below.

Figure 112007025417897-PCT00053
Figure 112007025417897-PCT00053

[단계 ST33-7][Step ST33-7]

기본 치환 행렬 BPShop로부터 4종의 기본 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV를 생성한다.From a base substitution matrix BPS hop generates four kinds of base substitution matrix hop _I BPS, BPS _II hop, hop _III BPS, BPS hop _IV of.

i)

Figure 112007025417897-PCT00054
i)
Figure 112007025417897-PCT00054

그 외의 BPShop_I의 요소는 모두 0이다.All other elements of BPS hop _I are zero.

ii)

Figure 112007025417897-PCT00055
ii)
Figure 112007025417897-PCT00055

iii)

Figure 112007025417897-PCT00056
iii)
Figure 112007025417897-PCT00056

iv)

Figure 112007025417897-PCT00057
iv)
Figure 112007025417897-PCT00057

이 ii), jii), iv)는 BPShop_I를 바탕으로 행과 열의 치환을 한 것이며, 모두 p·b×p·b의 열 차수 1, 행 차수 1의 행렬이다. 이들 행렬의 조합에 의하여 열 차수 1×행 차수 1로부터 열 차수 4×행 차수 4까지의 행렬을 생성할 수 있다. Ii), jii), and iv) are rows and columns replaced based on BPS hop _I, and are all matrices of column order 1 and row order 1 of p · b × p · b. By the combination of these matrices, a matrix of column order 1 × row order 1 to column order 4 × row order 4 can be generated.

이 행과 열의 치환에 의해 다른 의사 난수 치환 행렬을 4종류 생성할 수 있다. By replacing these rows and columns, four different pseudo-random substitution matrices can be generated.

[단계 ST33-8] [Step ST33-8]

다음에 열 차수 1보다 큰 기본 치환 행렬을 생성한다. Next, create a basic substitution matrix larger than column order 1.

단계 ST33-7에서 구한 기본 치환 행렬 BPShop_I를 이용하여 열 차수 cw, 행 차수 1의 (p·b)×(p·b/cw) 의사 난수 치환 행렬 cIcw를 이하의 수순에 의해 생성한다. 이 때, 열이 1/cw로 압축되어, 즉 행 방향으로 압축된다. Using the basic substitution matrix BPS hop _I obtained in step ST33-7, a column order cw and a (p · b) × (p · b / cw) pseudo random number substitution matrix cI cw of row order 1 are generated by the following procedure. . At this time, the column is compressed to 1 / cw, that is, compressed in the row direction.

Figure 112007025417897-PCT00058
Figure 112007025417897-PCT00058

여기서, I는 (p·b/cw)×(p·b/cw)의 단위 행렬이다. Here, I is the unit matrix of (p · b / cw) × (p · b / cw).

동일한 수순에 의해 기본 치환 행렬 BPShop_II, BPShop_III, BPShop_IV을 이용하여 열 차수 cw, 행 차수 1의 기본 치환 행렬 cIIcw, cIIIcw, cIVcw를 생성한다. 단, 이 cIcw, cIIcw, cIIIcw, cIVcw의 조합은 열 방향으로 2개 이상 나열된 경우, 사이클 4가 발생하는 것을 알고 있기 때문에 행 방향으로만 1열로 나열되는 것으로 한다. By the same procedure, the basic substitution matrices cII cw , cIII cw and cIV cw of column order cw and row order 1 are generated using the basic substitution matrices BPS hop _II, BPS hop _III and BPS hop _IV. However, when two or more combinations of cI cw , cII cw , cIII cw , and cIV cw are listed in the column direction, it is assumed that cycle 4 occurs, so that they are listed in one column only in the row direction.

단계 ST34에 있어서, 차수 분포 최적화용 파라미터 산출부(34)는 상기 단계 ST31에서 입력된 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 아래와 같이 해서, 제 1 및 제 2 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출한다. In step ST34, the order distribution optimization parameter calculating unit 34 uses the predetermined information length, coding rate, and maximum order of columns input in step ST31, as follows, to form the first and second pseudo-random number substitution matrices as follows. Calculate the parameters of the combination of possible order distributions for the optimization of the order distributions of the configurable check matrix generation using

이들 BPShop_I, BPShop_II, BPShop_III, BPShop_IV와 cIcw, cIIcw, cIIIcw, cIVcw의 조합과 우 상삼각 0의 삼각 행렬을 이용하여, 실현 가능한 조합을 구한다. The BPS hop _I, using the triangular matrix of the BPS _II hop, hop _III BPS, BPS hop _IV cw and cI, cII cw, cIII cw, cIV cw combinations and right upper triangular zero obtains a feasible combination.

예컨대, 하기 검사 행렬 H에 대하여 좌단으로부터 4×4개의 의사 난수 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV와 4×1개(cw=3의 경우)의 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw와 H의 우측의 좌/하삼각 부분에 7+6+ … 1개의 의사 난수 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV가 배치 가능해진다. For example, to the pseudo-random number permutation matrix of 4 × 4 of the pseudo-random number permutation matrix BPS hop _I, BPS hop _II, BPS hop _III, (the case of cw = 3) BPS hop _IV and 4 × 1 gae from the left end with respect to the check matrix H 7 + 6 + to the left / low triangles on the right side of cI cw , cII cw , cIII cw , cIV cw and H. The one pseudo-random number permutation matrix hop _I BPS, BPS _II hop, hop _III BPS, BPS hop _IV possible arrangement.

Figure 112007025417897-PCT00059
Figure 112007025417897-PCT00059

단계 ST35에 있어서, 차수 분포 최적화부(35)는, 실시예 1의 단계 ST15와 마찬가지로 하여, 상기 단계 ST34에서 산출된 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법에 의해 검사 행렬 생성의 차수 분포를 최적화한다. In step ST35, the order distribution optimization unit 35 generates test matrix by the density power generation method in the same manner as in step ST15 of the first embodiment, with the combination of the possible order distributions calculated in step ST34 as the constraint condition. Optimize the order distribution of.

단계 ST36에 있어서, 검사 행렬 생성부(36)는 상기 단계 ST35에서 최적화된 검사 행렬 생성의 차수 분포에 의해, 상기 단계 ST33에서 생성된 제 1 및 제 2 의사 난수 치환 행렬을 배치하여 LDPC 부호용의 검사 행렬을 생성한다. In step ST36, the parity check matrix generation unit 36 arranges the first and second pseudo random number substitution matrices generated in step ST33 according to the order distribution of the parity check matrix generation optimized in step ST35 for LDPC code. Create a check matrix.

즉, 단계 ST35에서 구한 최적의 차수 분포의 조합을 이용하여, 제 1 의사 난수 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV 및 제 2 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw을 이용하여 검사 행렬 H를 생성한다. 각 의사 난수 치환 행렬의 배치에 관해서는 탐색 등에 의해 사이클수를 확인하여 양호한 배치를 구한다. That is, by using the optimum combination of the degree distribution of the obtained in step ST35, the first pseudo-random number permutation matrix BPS hop _I, BPS hop _II, BPS hop _III, BPS hop _IV and second pseudo-random number permutation matrix cI cw, cII cw, The test matrix H is generated using cIII cw and cIV cw . As to the arrangement of each pseudo random number substitution matrix, the number of cycles is checked by searching or the like to obtain a good arrangement.

이상과 같이, 이 실시예 3에 따르면, 실시예 1과 동일한 효과를 얻을 수 있다. As described above, according to the third embodiment, the same effects as those of the first embodiment can be obtained.

(실시예 4)(Example 4)

도 12는 본 발명의 실시예 4에 따른 LDPC 부호용의 검사 행렬 생성 장치의 구성을 나타내는 블럭도이다. 이 검사 행렬 생성 장치는, 정보 길이·부호화율·열 최대 차수 입력부(41), 의사 난수 치환 행렬용 파라미터 산출부(42), 의사 난수 치환 행렬 생성부(43), 차수 분포 최적화용 파라미터 산출부(44), 차수 분포 최적화부(45) 및 검사 행렬 생성부(46)를 구비하고 있다. 이 검사 행렬 생성 장치는, 도 4에서의 송신측 및 수신측의 통신 장치 내에 탑재되며, 생성한 검사 행렬을 부호화기(101) 및 복호기(105)에 출력하더라도 좋고, 송신측 및 수신측의 통신 장치 밖에 설치되며, 생성한 검사 행렬을 송신측 및 수신측의 통신 장치 내의 메모리(도시하지 않음)에 저장하여 부호화기(101) 및 복호기(105)에 출력하더라도 좋다. Fig. 12 is a block diagram showing the structure of a parity check matrix generating apparatus for LDPC codes according to Embodiment 4 of the present invention. The apparatus for generating a parity check matrix includes an information length, coding rate, and column maximum order input section 41, a parameter calculation section 42 for pseudo random number substitution matrix, a pseudo random number substitution matrix generation section 43, and a parameter calculation section for order distribution optimization (44), the order distribution optimizer 45 and the parity check matrix generator 46 are provided. This check matrix generating device is mounted in the communication device on the transmitting side and the receiving side in FIG. 4, and may output the generated check matrix to the encoder 101 and the decoder 105, and the communication device on the transmitting side and the receiving side. It may be provided outside, and the generated check matrix may be stored in a memory (not shown) in the communication device on the transmitting side and the receiving side and output to the encoder 101 and the decoder 105.

도 13은 본 발명의 실시예 4에 따른 검사 행렬 생성 장치의 처리의 흐름을 나타내는 흐름도이다. Fig. 13 is a flowchart showing the flow of processing in the parity check matrix generating apparatus according to the fourth embodiment of the present invention.

실시예 3에서는, BPShop_I, BPShop_II, BPShop_III, BPShop_IV를 사용하여, 예컨대, 열 차수 4×행 차수 4의 행렬을 생성하고 있지만, 실시예 4에서는, 후술하는 ELHP(cw',rw')를 사용하여 직접 열 차수 cw'×행 차수 rw'의 행렬을 생성한다. Example 3, BPS hop _I, BPS hop _II, BPS hop _III, BPS hop using _IV, e.g., column degree 4 × in the exemplary produce a matrix of row-order 4, but Example 4, ELHP (cw below ', rw') is used to generate a matrix of direct column order cw '× row order rw'.

단계 ST41에 있어서, 정보 길이·부호화율·열 최대 차수 입력부(31)는 소정의 정보 길이, 부호화율 및 열의 최대 차수를 입력한다. 단계 ST42에 있어서, 의사 난수 치환 행렬용 파라미터 산출부(42)는 상기 단계 ST41에서 입력된 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 후술하는 제 3 의사 난수 치환 행렬을 위한 파라미터 및 실시예 2와 같은 제 2 의사 난수 치환 행렬을 위한 파라미터를 산출한다. In step ST41, the information length, coding rate, and column maximum order input unit 31 inputs a predetermined information length, coding rate, and maximum order of columns. In step ST42, the parameter calculation unit 42 for the pseudo random number substitution matrix uses the parameters of the third pseudo random number substitution matrix described later by using the predetermined information length, coding rate, and maximum order of the columns input in step ST41; The parameters for the second pseudo random number substitution matrix as in Example 2 are calculated.

단계 ST43에 있어서, 의사 난수 치환 행렬 생성부(43)는, 상기 단계 ST42에서 산출된 제 3 의사 난수 치환 행렬을 위한 파라미터 및 제 2 의사 난수 치환 행렬을 위한 파라미터에 의해, 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 제 1 의사 난수 치환 행렬을 생성하고, 생성한 제 1 의사 난수 치환 행렬의 행과 열을 또한 치환하고 확장하여 제 3 의사 난수 치환 행렬을 생성하고, 또한, 생성한 제 1 의사 난수 치환 행렬을 또한 행 방향으로 압축하여 제 2 의사 난수 치환 행렬을 생 성한다. 단계 ST44에 있어서, 차수 분포 최적화용 파라미터 산출부(44)는 상기 단계 ST41에서 입력된 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출한다. In step ST43, the pseudo random number substitution matrix generation unit 43 uses a pseudo random number sequence and a Latin square by the parameters for the third pseudo random number substitution matrix and the parameter for the second pseudo random number substitution matrix calculated in step ST42. A first pseudo random number substitution matrix is generated using the matrix, and the third pseudo random number substitution matrix is further generated by further substituting and extending the rows and columns of the generated first pseudo random number substitution matrix, and further generating the first pseudo random number substitution matrix. The substitution matrix is also compressed in the row direction to produce a second pseudo-random substitution matrix. In step ST44, the parameter distribution optimization parameter calculation unit 44 can take the optimization of the order distribution of the generation of the test matrix by using the predetermined information length, coding rate and the maximum order of the columns input in the step ST41. Calculate the parameters of the combination of order distributions.

단계 ST45에 있어서, 차수 분포 최적화부(45)는, 상기 단계 ST44에서 산출된 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법 또는 멀티 에지 타입의 밀도 발전법에 의해 검사 행렬 생성의 차수 분포를 최적화한다. 단계 ST46에 있어서, 검사 행렬 생성부(46)는 상기 단계 ST45에서 최적화된 검사 행렬 생성의 차수 분포에 의해, 상기 단계 ST43에서 생성된 제 3 및 제 2 의사 난수 치환 행렬을 배치하여 LDPC 부호용의 검사 행렬을 생성한다. In step ST45, the order distribution optimization unit 45 sets the order distribution of the inspection matrix generation by the density power generation method or the multi-edge type density power generation method, with the combination of the possible order distributions calculated in step ST44 as a constraint condition. To optimize. In step ST46, the parity check matrix generation unit 46 arranges the third and second pseudo random number substitution matrices generated in step ST43 according to the order distribution of the parity check matrix generation optimized in step ST45 for LDPC code. Create a check matrix.

다음에 도 13의 흐름도에서의 단계 ST41~ST46의 상세 처리에 대하여 설명한다. Next, detailed processing of steps ST41 to ST46 in the flowchart of FIG. 13 will be described.

단계 ST41에 있어서, 정보 길이·부호화율·열 최대 차수 입력부(41)는 소정의 정보 길이, 부호화율 및 열의 최대 차수로서, 시스템에서 사전에 설정되어 있는 정보 길이 K=120, 부호화율 rate=0.5, 열의 최대 차수 d=16를 입력한다. In step ST41, the information length, coding rate, and column maximum order input unit 41 is a predetermined information length, coding rate, and maximum order of columns, and the information length K = 120 and coding rate rate = 0.5 are set in advance in the system. , Enter the maximum order of columns d = 16.

단계 ST42에 있어서, 의사 난수 치환 행렬용 파라미터 산출부(42)는, 상기 단계 ST41에서 입력된 소정의 정보 길이 K=120, 부호화율 rate=0.5 및 열의 최대 차수 d=16을 이용하여, 이하에 도시하는 바와 같이, 검사 행렬 H의 행수 M, 열수(=부호화율) N, 제 3 의사 난수 치환 행렬을 위한 파라미터 및 제 2 의사 난수 치환 행렬을 위한 파라미터를 산출한다. In step ST42, the pseudo random number substitution matrix parameter calculating unit 42 uses the predetermined information length K = 120, the coding rate rate = 0.5 and the maximum order d = 16 of the column input in step ST41, as follows. As shown, the number of rows M of the test matrix H, the number of columns (= coding rate) N, the parameters for the third pseudo random number substitution matrix and the parameters for the second pseudo random number substitution matrix are calculated.

즉, 여기서는, 단계 ST41에서 입력된 데이터를 이용하여, 검사 행렬 H의 행수 M을 열수(=부호 길이) N, p'·b' ×p'·b'의 열 가중치 cw', 행 가중치 rw'로 되는 제 3 의사 난수 치환 행렬 ELHP( cw' ,rw')의 p'와 b'를 산출하고, (p·b)×(p·b/cw)의 제 2 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw의 p,b,cw를 산출한다. That is, here, using the data input in step ST41, the number of rows M of the parity check matrix H is the number of columns (= code length) N, the column weight cw 'of p' · b '× p' · b ', and the row weight rw' P 'and b' of the third pseudo-random substitution matrix ELHP ( cw ' , rw') are calculated, and the second pseudo-random substitution matrix cI cw , cII of (p · b) × (p · b / cw) is calculated. cw , cIII cw , cIV cw , p, b, cw.

예컨대, 아래와 같이, 제 3 의사 난수 치환 행렬을 위한 파라미터 및 제 2 의사 난수 치환 행렬을 위한 파라미터를 산출한다. For example, the parameters for the third pseudo random number substitution matrix and the parameters for the second pseudo random number substitution matrix are calculated as follows.

실시예 3의 단계 ST32의 계산과 같은 계산을 한 후, 의사 난수 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV의 부분을, 하기의 단계 ST43-1∼ST43-9에서 설명하는 의사 난수 치환 행렬 ELHP( cw' ,rw')로 치환한다. After the calculations, such as calculations carried out in step ST32 Example 3, pseudo-random numbers is described in the substitution matrix hop _I BPS, BPS _II hop, hop _III BPS, BPS hop _IV step of ST43-1~ST43-9 to the part of The pseudo random number substitution matrix ELHP ( cw ' , rw') is substituted.

의사 난수 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV의 행 방향의 최대 개수는 4이기 때문에(실시예 3의 단계 ST33-7에서 설명), 남는 열 차수 d-4=12를, 이하의 단계 ST44에서 설명하는 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw에서 cw=3에 의해 실현된다. cw=3의 경우, 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw의 사용 개수=남는 열 차수 12/cw=4로 되어 cIcw, cIIcw, cIIIcw, cIVcw의 4개의 조합을 열 방향으로 나열하여 이용한다. The maximum number of pseudo-random number permutation matrix in the row direction hop _I BPS, BPS _II hop, hop _III BPS, BPS hop _IV 4 is because (prepared as described in step ST33-7 of Example 3), the remaining column degree d-4 = 12 a is realized by cw = 3 in the pseudo-random number permutation matrix cw cI, cII cw, cIII cw, cIV cw that is described in the following step ST44. For cw = 3, the number of pseudorandom substitution matrices cI cw , cII cw , cIII cw , cIV cw = remaining number of orders 12 / cw = 4, four combinations of cI cw , cII cw , cIII cw , cIV cw Use in the column direction.

부호 길이=검사 행렬 H의 열수 N=k/rate=120/(1/3)=360, Sign length = column of check matrix H N = k / rate = 120 / (1/3) = 360,

검사 행렬 H의 행수 M=N×(1-rate)=360×(2/3)=240, The number of rows in the check matrix H M = N × (1-rate) = 360 × (2/3) = 240,

의사 난수 치환 행렬의 사이즈 p·b=M/(의사 난수 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV의 사용 개수+의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw의 사용 개수)=240/8=30. 따라서 예컨대, 제 1 및 제 2 의사 난수 치환 행렬을 생성하기 위한 파라미터는, p=6, b=5로 된다. Pseudo-random number substituted size p · b = M / (pseudo-random number permutation matrix of the matrix BPS hop _I, BPS hop _II, BPS hop _III, using the number of BPS hop _IV + pseudo-random number permutation matrix cI cw, cII cw, cIII cw, cIV number of uses of cw ) = 240/8 = 30. Therefore, for example, the parameters for generating the first and second pseudorandom substitution matrices are p = 6 and b = 5.

여기까지는 실시예 3에서 구한 p와 b의 값이며, 이하와 같은 검사 행렬 H를 상정하고 있다. Until now, it is the value of p and b calculated | required in Example 3, and the following test matrix H is assumed.

Figure 112007025417897-PCT00060
Figure 112007025417897-PCT00060

이 검사 행렬 H의 의사 난수 치환 행렬 BPShop_I, BPShop_II, BPShop_III, BPShop_IV로 구성되는 예컨대, 열 차수 4×행 차수 4에서A substituted pseudo-random number of the check matrix H, the matrix BPS _I hop, hop _II BPS, BPS hop _III, for example consisting of BPS hop _IV, column order in the row order of 4 × 4

Figure 112007025417897-PCT00061
Figure 112007025417897-PCT00061

의 4·p·b×4·p·b 부분 행렬을 이하의 검사 행렬 H와 같은 열 차수 cw'=4, 행 차수 rw'=4의 의사 난수 치환 행렬 p'·b'×p'·b'=4·p·b×4·p·b의 ELHP(cw'=4,rw'=4)로 치환하는 구조로 한다. The 4 · p · b × 4 · p · b sub-matrix of P is the pseudorandom substitution matrix p '· b' × p '· b with column order cw' = 4 and row order rw '= 4 It is set as the structure substituted by ELHP (cw '= 4, rw' = 4) of '= 4 * p * b * 4 * p *.

Figure 112007025417897-PCT00062
Figure 112007025417897-PCT00062

따라서, 예컨대, p=6, b=5로부터 p'·b'=4·p·b=4·30=120으로 된다. 따라서, 예컨대, 제 3 의사 난수 치환 행렬을 생성하기 위한 파라미터는, p'=12, b'=10으로 된다. Therefore, for example, p'6'b '= 4'p'b'4'30'120' from p = 6 and b = 5. Therefore, for example, the parameters for generating the third pseudo random number substitution matrix are p '= 12 and b' = 10.

단계 ST43에 있어서, 의사 난수 치환 행렬 생성부(43)는, 상기 단계 ST42에서 산출된 제 3 의사 난수 치환 행렬을 위한 파라미터 및 제 2 의사 난수 치환 행렬을 위한 파라미터에 의해, 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 제 1 의사 난수 치환 행렬(제 2 의사 난수 치환 행렬을 위한 파라미터와 공통의 파라미터에 의해 생성됨)을 생성하고, 생성한 제 1 의사 난수 치환 행렬의 행과 열을 더 치환 확장하여 제 3 의사 난수 치환 행렬을 생성한다. In step ST43, the pseudo random number substitution matrix generation unit 43 uses a pseudo random number sequence and a Latin square by the parameters for the third pseudo random number substitution matrix and the parameter for the second pseudo random number substitution matrix calculated in step ST42. The first pseudo random number substitution matrix (generated by parameters common to the parameters for the second pseudo random number substitution matrix) is generated using the matrix, and the rows and columns of the generated first pseudo random number substitution matrix are further substituted and expanded to generate the first pseudo random number substitution matrix. Create a pseudo-random substitution matrix.

즉, 여기서는, 단계 ST42에서 구한 p'와 b'로부터, 하기의 단계 ST43-1∼ST43-9에 의해, 제 3 의사 난수 치환 행렬 ELHP( cw' ,rw')를 작성한다. In other words, here, from p 'and b' obtained in step ST42, the third pseudo-random substitution matrix ELHP ( cw ' , rw') is created by the following steps ST43-1 to ST43-9.

또한, 이 단계 ST43에 있어서, 제 1 의사 난수 치환 행렬을 또한 행 방향으로 압축하여 제 2 의사 난수 치환 행렬을 생성하는 방법은, 실시예 3의 단계 ST33-1~ST33-8까지의 처리와 동일하다. In this step ST43, the method for generating the second pseudo random number substitution matrix by further compressing the first pseudo random number substitution matrix in the row direction is the same as the processing from steps ST33-1 to ST33-8 of the third embodiment. Do.

[단계 ST43-1][ST43-1]

이하의 식으로 정의되는 기본 란수 계열 Cinit(i)를 생성한다. 이 인덱스의 init는 Cinit(1)의 값, 즉 초기값을 나타낸다. Produces the base column number C init (i), defined by The init of this index represents the value of C init (1), that is, the initial value.

Figure 112007025417897-PCT00063
Figure 112007025417897-PCT00063

여기서 P는 P>p'로 되는 소수이며, G0은 GF(P)의 원시원이다. 또, GF(P)의 요소인 G0의 연속하는 누승의 값(예컨대, G0 1, G0 2, ..., G0 P -1=1)이 GF(P)의 영이 아닌 모든 요소를 나타내는 경우, G0을 원시원라고 부른다. 이 계열 Cinit(i)은 요소간의 차분이 비균일이며 중복하는 요소가 없는 의사 난수 계열로 된다. 다음에 Cinit(i)의 요소로부터 p'보다 큰 수를 추출한다. Where P is a prime number where P> p 'and G 0 is the source of GF (P). In addition, all elements of successive powers of G 0 which are elements of GF (P) (for example, G 0 1 , G 0 2 , ..., G 0 P -1 = 1) are all elements that are not zero of GF (P). In the case of, G 0 is called a primitive source. This series C init (i) is a pseudorandom series with non-uniform differences between elements and no overlapping elements. Next, extract a number greater than p 'from the elements of C init (i).

예로서 P=7, G0=3, init=3, p'=6의 경우, For example, for P = 7, G 0 = 3, init = 3, p '= 6,

Figure 112007025417897-PCT00064
Figure 112007025417897-PCT00064

[단계 ST43-2][ST43-2]

하기 식에 의해 의사 난수 계열 및 그 치환 패턴을 요소로 갖는 행렬을 생성한다. The matrix which has a pseudorandom number series and its substitution pattern as an element is produced by the following formula.

Figure 112007025417897-PCT00065
Figure 112007025417897-PCT00065

p'=6인 경우의 예를 이하에 나타낸다.  An example in the case of p '= 6 is shown below.

Figure 112007025417897-PCT00066
Figure 112007025417897-PCT00066

[단계 ST43-3][ST43-3]

하기 식에 의해 열 차수 cw', 행 차수 rw'의 기본 치환 행렬 패턴 LHP( cw' ,rw') (j,i)를 생성한다. The basic substitution matrix pattern LHP ( cw ' , rw') (j, i) of column order cw 'and row order rw' is generated by the following equation.

Figure 112007025417897-PCT00067
Figure 112007025417897-PCT00067

p'=6인 경우의 예를 이하에 나타낸다. An example in the case of p '= 6 is shown below.

Figure 112007025417897-PCT00068
Figure 112007025417897-PCT00068

[단계 ST43-4][ST43-4]

상기 단계 ST43-3까지에서, p'×p'의 기본 치환 행렬 패턴을 생성했다. 다음에 이것을 행 및 열에 관해서 b'배 하는 수순을 설명한다. In step ST43-3, a basic substitution matrix pattern of p'xp 'was generated. Next, the procedure for multiplying this by the row and column will be explained.

단계 ST43-1과 같은 수순으로 기본 란수 계열

Figure 112007025417897-PCT00069
을 생성한다. 이
Figure 112007025417897-PCT00070
은 Cinit(i)에 대하여 p'를 b'로 바꿔 생성한 기본 란수 계열이다. Base Ransu series in the same procedure as in step ST43-1
Figure 112007025417897-PCT00069
Create this
Figure 112007025417897-PCT00070
Is the default column number generated by replacing p 'with b' for C init (i).

예로서 P=7, C0=3, init=3, b'=6인 경우, For example, if P = 7, C 0 = 3, init = 3, b '= 6,

Figure 112007025417897-PCT00071
Figure 112007025417897-PCT00071

[단계 ST43-5][Step ST43-5]

하기 식에 의해 의사 난수 계열 및 그 치환 패턴을 요소로 갖는 라틴 스퀘어 행렬 Lj(q,l)을 생성한다. The following formula produces a Latin square matrix L j (q, l) having a pseudorandom number series and its substitution pattern as an element.

Figure 112007025417897-PCT00072
Figure 112007025417897-PCT00072

이 조작에 의해, Lh(q,l)를 사용하여 라틴 스퀘어를 생성할 수 있다. By this operation, Latin square can be generated using L h (q, l).

p'=6인 경우의 예를 이하에 나타낸다. An example in the case of p '= 6 is shown below.

Figure 112007025417897-PCT00073
Figure 112007025417897-PCT00073

[단계 ST43-6][Step ST43-6]

하기 식에 의해, 열 차수 cw', 행 차수 rw'의 기본 치환 행렬 패턴 LHP(cw',rw')(j,i)를 b'배로 확장하기 위한 행렬 Lb'P( cw' ,rw')(j,i)를 생성한다. The matrix L b ' P ( cw' , rw ' ) for extending the basic substitution matrix pattern LHP (cw', rw ') (j, i) of column order cw' and row order rw 'by b ' ) produces (j, i)

Figure 112007025417897-PCT00074
Figure 112007025417897-PCT00074

p'=6인 경우의 예를 이하에 나타낸다. An example in the case of p '= 6 is shown below.

Figure 112007025417897-PCT00075
Figure 112007025417897-PCT00075

[단계 ST43-7][Step ST43-7]

하기 식에 의해, 열 방향으로 확장하는 기본 치환 행렬 패턴 eLHP(cw',rw')(i,j)를 생성한다. By the following formula, the basic substitution matrix pattern eLHP (cw ', rw') (i, j) which extends in a column direction is produced.

Figure 112007025417897-PCT00076
Figure 112007025417897-PCT00076

이하에 p'=6, b'=6, cw'=3, rw'=3인 경우의 예를 나타낸다. An example in the case where p '= 6, b' = 6, cw '= 3 and rw' = 3 is shown below.

Figure 112007025417897-PCT00077
Figure 112007025417897-PCT00077

[단계 ST43-8][ST43-8]

하기 식에 의해, 행 방향으로 확장하는 기본 치환 행렬 패턴 ELHP(cw',rw')(i,j)를 생성한다. By the following formula, a basic substitution matrix pattern ELHP (cw ', rw') (i, j) extending in the row direction is generated.

Figure 112007025417897-PCT00078
Figure 112007025417897-PCT00078

이하에 p'=6, b'=6, cw'=3, rw'=3인 경우의 예를 나타낸다. An example in the case where p '= 6, b' = 6, cw '= 3 and rw' = 3 is shown below.

Figure 112007025417897-PCT00079
Figure 112007025417897-PCT00079

[단계 ST43-9][ST43-9]

기본 치환 패턴 ELHP( cw' ,rw')(i,j)로부터, 하기 식에 의해 정의되는 2원 p'·b'×p'·b' 행렬 ELHP( cw' ,rw')=(hm ,n)를 생성한다. From the basic substitution pattern ELHP ( cw ' , rw') (i, j), the binary p '· b' × p '· b' matrix ELHP ( cw ' , rw') defined by the following equation = (h m , n )

Figure 112007025417897-PCT00080
Figure 112007025417897-PCT00080

이 조작에 의해, p'·b'×p'·b'의 열 차수 cw', 행 차수 rw'의 행렬을 생성하기 위한 기본 치환 행렬을 생성할 수 있다. 여기까지의 조작에 의해 열 차수 cw', 행 차수 rw'의 의사 치환 행렬을 생성할 수 있다. 이 의사 난수 치환 행렬의 열 차수 cw', 행 차수 rw'는 모두 4 이하이고 사이클 4가 존재하지 않는 경우가 많기 때문에, 열 차수 cw', 행 차수 rw'은 최대값을 4로 한다. By this operation, a basic substitution matrix for generating a matrix of column order cw 'and row order rw' of p'b'xp'b 'can be generated. By the above operations, a pseudo substitution matrix of column order cw 'and row order rw' can be generated. Since the column order cw 'and the row order rw' of the pseudo random number substitution matrix are all four or less and cycle 4 often does not exist, the column order cw 'and the row order rw' have a maximum value of four.

단계 ST44에 있어서, 차수 분포 최적화용 파라미터 산출부(44)는 상기 단계 ST41에서 입력된 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 하기에 도시하는 바와 같이, 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출한다. In step ST44, the order distribution optimization parameter calculator 44 uses the predetermined information length, coding rate, and maximum order of columns input in step ST41, as shown below, to order distribution of the test matrix generation. Calculate the parameters of the combination of possible order distributions for the optimization of.

이들 ELHP( cw' ,rw')(i,j)와 cIcw, cIIcw, cIIIcw, cIVcw의 조합과 우/상삼각 0의 삼각 행렬을 이용하여, 실현 가능한 조합을 구한다. By using these ELHP (cw ', rw') of the triangular matrix (i, j) and cw cI, cII cw, cIII cw, cIV cw in combination with right / upper triangular zero obtains a feasible combination.

예컨대, 하기 검사 행렬 H에 대하여 좌단으로부터 1개의 의사 난수 치환 행렬 ELHP( cw' ,rw')와 4×1개(cw=3인 경우)의 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw가 배치 가능해진다. For example, one pseudo-random substitution matrix ELHP ( cw ' , rw') and 4x1 ( if cw = 3) pseudorandom substitution matrixes cI cw , cII cw , cIII cw , cIV cw becomes deployable.

Figure 112007025417897-PCT00081
Figure 112007025417897-PCT00081

이 취할 수 있는 차수 분포의 조합이 차수 분포의 최적화의 구속 조건으로 된다. The combination of order distributions that can be taken is a constraint of the optimization of the order distribution.

단계 ST45에 있어서, 차수 분포 최적화부(45)는, 상기 단계 ST44에서 산출된 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 하기에 도시하는 바와 같이, 밀도 발전법 또는 멀티 에지 타입의 밀도 발전법에 의해, 검사 행렬 생성의 차수 분포를 최적화한다. In step ST45, the order distribution optimization unit 45 sets the density generation method or the multi-edge type density power generation method as shown below, with the combination of possible order distributions calculated in step ST44 as constraint conditions. By optimizing the order distribution of the parity check matrix generation.

즉, 여기서는, 상기 단계 ST44에서 산출된 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 구속 조건 아래, 실시예 1의 단계 ST15와 동일한 차수 분포의 최적화에 의해 가장 좋은 차수 분포를 구하더라도 좋 고, 또는, 이하에 설명하는 멀티 에지 타입의 밀도 발전법이라도 좋다. That is, here, the best order distribution is obtained by optimization of the same order distribution as in step ST15 of the first embodiment, under the constraint of the combination of order distributions that can be taken for the optimization of the order distribution of the generation of the test matrix calculated in step ST44. May be obtained, or the density generation method of the multi-edge type described below may be used.

상기 실시예 1에서 설명한 밀도 발전법은, irregular LDPC 부호 앙상블(차수의 분포를 나타내는 것)이 행 차수의 비율, 열 차수의 비율로 표현되는 것에 비하여, 멀티 에지 타입의 앙상블은 「에지(에지 타입)의 조합」(차수 타입)의 비율로 표현된다. 또, 멀티 에지 타입의 앙상블의 구조에서는, 어떤 비트를 펑쳐링할지까지 규정한 앙상블을 생각할 수 있어, 통신로 타입별의 고려가 가능하다.("Multi-Edge Type LDPC Codes DRAFT", T.Richardson, R.Urbanke, web 상)In the density generation method described in the first embodiment, an irregular LDPC code ensemble (indicating an order distribution) is expressed as a ratio of a row order and a ratio of a column order. In combination "(order type). In addition, in the structure of the multi-edge type ensemble, an ensemble that defines which bits to puncture can be considered, and consideration can be made for each communication channel type ("Multi-Edge Type LDPC Codes DRAFT", T. Richard Hardson). , On R. Urbanke, web)

도 14는 멀티 에지 타입의 앙상블의 예를 나타내는 도면이다. 통신로 타입(도 14의 예의 경우는 BEC(Binary Erasure Channel))의 통신로(b=(1 0))이거나, 분산값 σn 2의 가우스 분포에 따르는 노이즈가 부가된 통신로, 이른바 가법성 백색 가우스 잡음(AWGN)의 통신로(b=(0 1))를 b로 하고, 차수 타입 d의 배리어블 노드의 부호 길이 N에 대한 비율을 νb,d, 체크 노드의 부호 길이 N에 대한 비율을 μd라고 하면, 도 14는 도 15에 나타내는 표와 같이 표현된다. 14 is a diagram illustrating an example of an ensemble of a multi-edge type. The communication path (b = (1 0)) of the communication path type (BEC (Binary Erasure Channel in the case of the example of FIG. 14)) or a communication path to which noise is applied according to a Gaussian distribution of variance value σ n 2 , so-called additiveness A communication path (b = (0 1)) of white Gaussian noise (AWGN) is b, and a ratio of the code length N of the variable node of order type d to ν b, d and the code length N of the check node Assuming that the ratio is μ d , FIG. 14 is expressed as in the table shown in FIG. 15.

도 15는 irregular LDPC 부호의 차수 분포의 예를 나타내는 도면이다. 15 is a diagram illustrating an example of order distribution of an irregular LDPC code.

이하에 구체적인 검사 행렬의 예를 나타낸다. 예컨대, 도 15의 표의 Variable(배리어블 노드: 행렬의 각 열이 각각 배리어블 노드가 된다) b=(1 0)의 νb,d의 합계는 1이다. 도 15의 표의 Variable의 1번 상의 비율은 νb,d=0.5이며, d=(2 0 0 0)이지만, 이것은 도 15의 차수 분포에 따라 구성한 도 16에 나타내는 검사 행렬의 15열째로부터 24열째를 나타내고 있다. 도 15의 표의 Variable의 3번째 에는, νb,d=0.2, b=(1 0), d=(0 3 3 0)가 표시되어 있고, 도 16의 검사 행렬의 11열째로부터 14열째를 나타내고 있다. 이 부분은 소실 확률 1의 통신로를 의미하고 있고, 현실적으로는 이 부분의 부호 비트는 펑춰링되어 송신되지 않는다. 수신측에서는, 이 부분의 계산은 0과 1의 확률이 1/2이라는 값으로 계산된다. 수신값의 LLR(대수 우도비)로서는 0으로 된다. An example of the concrete test matrix is shown below. For example, the sum of v b, d of Variable (variable node: each column of the matrix becomes a barrier node) in the table of FIG. 15 is 1. The ratio of the first phase of the variable in the table of FIG. 15 is ν b, d = 0.5 and d = (2 0 0 0), but this is the 15th to 24th column of the test matrix shown in FIG. 16 constructed according to the degree distribution of FIG. Indicates. Ν b, d = 0.2, b = (1 0), d = (0 3 3 0) are displayed in the third variable in the table of FIG. 15, and the 11th to 14th columns of the test matrix of FIG. have. This part means a communication path with a loss probability of 1, and in reality, the sign bit of this part is punctured and not transmitted. On the receiving side, the calculation of this part is calculated such that the probability of 0 and 1 is 1/2. The LLR (log likelihood ratio) of the received value is zero.

도 15의 표의 Constraint는 체크 노드(행렬의 각 행이 각각 체크 노드)의 비율을 나타내고 있다. 도 15의 표의 Constraint의 1번 상의 비율은 μd=0.4이며, d=(4 1 0 0)이지만, 이것은 도 16의 검사 행렬의 5행째로부터 12행째를 나타내고 있다. Constraint in the table of FIG. 15 represents the ratio of check nodes (each row of the matrix is a check node respectively). The ratio of the first phase of the Constraint in the table of FIG. 15 is μ d = 0.4 and d = (4 1 0 0), but this represents the fifth to twelfth rows of the parity check matrix of FIG. 16.

또, 타입 i의 에지 중, 차수 타입 d의 노드에 접속하고 있는 에지의 비율은,In addition, among the edges of type i, the ratio of edges connected to nodes of order type d is

Figure 112007025417897-PCT00082
Figure 112007025417897-PCT00082

로 구해진다. (Standard Irregular LDPC의 λ, ρ에 대응하는 것)Obtained by (Corresponding to λ and ρ of Standard Irregular LDPC)

또, 1은 ALL1을 나타낸다. 1 represents ALL1.

다음에 멀티 에지 타입의 밀도 발전법에 대하여 설명한다. 멀티 에지 타입의 밀도 발전법에서는, 배리어블 노드로부터 체크 노드로의 메시지를 함께 정리하지 않고, 에지의 타입마다 확률 밀도 함수를 나눠 계산을 진행시킨다("Multi-edge Type LDPC Codes DRAFT", T.Richardson, R.Urbanke, web 상). Next, the density generation method of the multi-edge type is demonstrated. In the multi-edge-type density generation method, the probability density function is divided for each type of edge without the message from the variable node to the check node together ("Multi-edge Type LDPC Codes DRAFT", T. Richard Hardson). , R. Urbanke, on web).

행 처리(체크 노드로부터의 메시지)Row processing (messages from check nodes)

이제 에지 타입의 모든 집합을 I로 한다. 지금 i∈I에 대하여 에지 타입 i의 차수를 di, 에지 타입 i를 통해서 체크 노드로 송신되는 확률 밀도 함수를 Pvi, 에지 타입 i를 통해서 체크 노드로부터 송신되는 확률 밀도 함수를 Pui로 한다. Now let I set all the sets of edge types. Now, for i∈I, the order of edge type i is d i , the probability density function transmitted to the check node via edge type i is P vi , and the probability density function transmitted from the check node via edge type i is P ui . .

차수 타입마다 확률 밀도 함수를 계산하여, 에지 타입 i에 대한 에지의 비율을 곱해, 더하게 함으로써 에지 타입마다의 확률 밀도 함수를 계산한다. A probability density function for each edge type is calculated by calculating the probability density function for each order type, multiplying the ratio of the edges to the edge type i, and adding.

Figure 112007025417897-PCT00083
Figure 112007025417897-PCT00083

…(Al)… (Al)

∀j∈I\i ∀j∈I\i

또한, 반복 복호에서의 반복 수를 l로 하고, 에지 타입 i에 대하여 반복 l회째의 체크 노드의 앙상블 평균을

Figure 112007025417897-PCT00084
로 하면, 이하를 만족시키는 것이 합-곱 복호에서의 반복 복호에서 점근적으로 오류가 한없이 0에 가까워지는 필요 조건이다. In addition, the number of repetitions in the iterative decoding is set to l, and the ensemble average of the check nodes at the iterative l th time with respect to the edge type i is calculated.
Figure 112007025417897-PCT00084
In this case, satisfying the following is a necessary condition that the error gradually approaches zero in repetitive decoding in sum-product decoding.

모든 에지 타입 i에 대하여 For all edge types i

Figure 112007025417897-PCT00085
Figure 112007025417897-PCT00085

열 처리(배리어블 노드로부터의 메시지)Thermal processing (messages from barrier nodes)

통신로 타입 b1, b2에 대한 차수를 db1, db2, … 초기값을 Pu0b1, Pu0b2, …로 한다.The order for the channel types b1, b2 is d b1 , d b2,. The initial values are P u0b1 , P u0b2 ,... Shall be.

차수 타입마다 확률 밀도 함수를 계산하고, 에지 타입 i에 대한 에지의 비율을 곱해, 더하게 함으로써 에지 타입마다의 확률 밀도 함수를 계산한다. Calculate the probability density function for each edge type by calculating the probability density function for each order type, multiplying the ratio of the edge to edge type i, and adding.

Figure 112007025417897-PCT00086
Figure 112007025417897-PCT00086

또한, 반복 복호에서의 반복 수를 l로 하고, 에지 타입 i에 대하여 반복 l회째의 배리어블 노드의 앙상블 평균을

Figure 112007025417897-PCT00087
로 하면, 이하를 만족시키는 것이 합-곱 복호에서의 반복 복호에서 점근적으로 오류가 한없이 0에 가까워지는 필요 조건이다. In addition, the number of repetitions in the iterative decoding is set to l, and the ensemble average of the iterable lth variable nodes for the edge type i is calculated.
Figure 112007025417897-PCT00087
In this case, satisfying the following is a necessary condition that the error gradually approaches zero in repetitive decoding in sum-product decoding.

모든 에지 타입 i에 대하여For all edge types i

Figure 112007025417897-PCT00088
Figure 112007025417897-PCT00088

또한, 이하를 만족시키는 것이 합-곱 복호에서의 반복 복호에서 점근적으로 오류가 한없이 0에 가까워지는 필요 충분 조건이다. Furthermore, satisfying the following is a necessary and sufficient condition that the error gradually approaches zero in the iterative decoding in sum-product decoding.

식 (A2) 또는 식 (A4) 중 어느 하나를 만족하는 것. ··(A5) Satisfying either formula (A2) or formula (A4). (A5)

다음에, 멀티 에지 타입의 밀도 발전법에서의 최적화를 이용하여, 구해진 부호화율에 근거하는 「Irregular-LDPC 부호」의 앙상블(차수 배분)을 구한다. Next, using an optimization in the multi-edge type density generation method, an ensemble (order allocation) of "Irregular-LDPC code" based on the obtained coding rate is obtained.

통신로 타입 b, 차수 타입 d의 배리어블 노드의 부호 길이 N에 대한 비율을 νb,d, 체크 노드의 부호 길이 N에 대한 비율을 μd로 하여 각각 동시에 변수로서 취급하고, AWGN 통신로(통신로 타입 AWGN의 b1:=b=(01)) 가우스 노이즈 σn(하기 식)이 최대가 되도록, 선형 계획법으로 최적의 νb,d와 μd를 탐색한다. 이 때, 이 실시예에서는 통신로 타입은 AWGN의 b1:=b=(0 1)와 BEC의 b2:=b=(1 0)만으로 한다. Treat the ratio of the code length N of the variable node of the communication path type b and the order type d as ν b, d and the ratio of the code length N of the check node as μ d at the same time as the variable, respectively. In order to maximize the b1: = b = (01) Gaussian noise σ n (following equation) of the channel type AWGN, the optimal ν b, d and μ d are searched by linear programming. At this time, in this embodiment, the communication path type is set only to b1: = b = (0 1) of AWGN and b2: = b = (1 0) of BEC.

Figure 112007025417897-PCT00089
Figure 112007025417897-PCT00089

이 탐색에서의 구속 조건은, 조건식 (A5)을 만족시키는 것이다. Constraints in this search satisfy the conditional expression (A5).

이 때, 통신로 타입 b, 차수 타입 d, νb,dd의 변수의 취할 수 있는 값은 실시예 1 내지 실시예 4에서 설명한 생성 방법에 의한 검사 행렬 H의 제약 조건으로 도출되는 값만으로 한다. At this time, the possible values of the variables of the communication path type b, the order type d, ν b, d , μ d are values derived from the constraints of the test matrix H by the generation method described in the first to fourth embodiments. Only do it.

단계 ST46에 있어서, 검사 행렬 생성부(46)는 상기 단계 ST45에서 최적화된 검사 행렬 생성의 차수 분포에 의해, 하기에 도시하는 바와 같이, 상기 단계 ST43에서 생성된 제 3 및 제 2 의사 난수 치환 행렬을 배치하여 LDPC 부호용의 검사 행렬을 생성한다. In step ST46, the parity check matrix generation section 46 generates the third and second pseudo-random number substitution matrices generated in step ST43 by the order distribution of the parity check matrix generation optimized in step ST45, as shown below. Is arranged to generate a parity check matrix for the LDPC code.

여기서는, 단계 ST43에서 구한 최적의 차수 분포의 조합을 이용하여, 제 3 의사 난수 치환 행렬 ELHP( cw' ,rw') 및 제 2 의사 난수 치환 행렬 cIcw, cIIcw, cIIIcw, cIVcw을 이용하여 검사 행렬 H를 생성한다. 각 의사 난수 치환 행렬의 배치에 관해서는 탐색 등에 의해 사이클 수를 확인하여 양호한 배치를 구한다. Here, the third pseudo-random substitution matrix ELHP ( cw ' , rw') and the second pseudo-random substitution matrix cI cw , cII cw , cIII cw , and cIV cw are used using the combination of the optimal order distribution obtained in step ST43. To generate the parity check matrix H. As to the arrangement of each pseudo random number substitution matrix, the number of cycles is checked by searching or the like to obtain a good arrangement.

실시예 3과 실시예 4의 구성법에 의한 LDPC 부호의 성능 평가 결과를 나타낸다. The performance evaluation result of the LDPC code by the construction method of Example 3 and Example 4 is shown.

도 17은 평가에 이용한 irregular LDPC 부호의 차수 분포의 예를 나타내는 도면이다. It is a figure which shows the example of order distribution of the irregular LDPC code used for evaluation.

도 18은 irregular LDPC 부호의 프레임 오류율 특성을 도시하는 도면이다. 18 is a diagram illustrating frame error rate characteristics of an irregular LDPC code.

이 도 18은, 도 17에 나타내는 이 차수 분포를 이용하여, 실시예 3을 이용하여 p=16, b=9, P=17, G0=3, init=9, hop=2의 파라미터를 이용하여 구성한 정보 길이 576비트, 부호화율 0.5의 LDPC 부호(도면 중의 ldpc576)와, 실시예 4를 이용하여 ELHP(cw,rw)의 파라미터로서 p=48, b=30, P=71, G0=7, init=13, cw=4, rw=4, cIcw, cIIcw, cIIIcw, cIVcw의 파라미터로서 p=30, b=12, P=31, G0=3, init=9, hop=1을 이용하여 구성한 정보 길이 1440비트, 부호화율 0.5의 LDPC 부호(도면 중의 ldpc1440)와, 실시예 4를 이용하여 ELHP( cw ,rw)의 파라미터로서 p=132, b=24, P=137, G0=3, init=13, cw=4, rw=4, cIcw, cIIcw, cIIIcw, cIVcw의 파라미터로서 p=33, b=34, P=53, G0=3, init=9, hop=2을 이용하여 구성한 정보 길이 3168비트, 부호화율 0.5의 LDPC 부호(도면 중의 ldpc3168)와, 실시예 4를 이용하여 ELHP( cw ,rw)의 파라미터로서 p=204, b=24, P=211, G0=3, init=13, cw=4, rw=4, cIcw, cIIcw, cIIIcw, cIVcw의 파라미터로서 p=51, b=24, P=53, G0=3, init=9, hop=2을 이용하여 구성한 정보 길이 4896비트, 부호화율 0.5의 LDPC 부호(도면 중의 ldpc4896)의 FER(프레임 오류율) 시뮬레이션 결과를 나타내고 있다. Fig. 18 uses parameters of p = 16, b = 9, P = 17, G 0 = 3, init = 9 and hop = 2 using Example 3 using this order distribution shown in Fig. 17. P = 48, b = 30, P = 71, G 0 = as a parameter of ELHP (cw, rw) by using the information length 576 bits, the LDPC code (ldpc576 in the figure) of code rate 0.5, and the fourth embodiment. 7, init = 13, cw = 4, rw = 4, cI cw , cII cw , cIII cw , cIV cw as parameters of p = 30, b = 12, P = 31, G 0 = 3, init = 9, hop P = 132, b = 24, P = 137 as a parameter of the LDPC code (ldpc1440 in the drawing) of the information length 1440 bits and code rate 0.5 constructed using = 1 and ELHP ( cw , rw) using Example 4 As parameters for G 0 = 3, init = 13, cw = 4, rw = 4, cI cw , cII cw , cIII cw , cIV cw , p = 33, b = 34, P = 53, G 0 = 3, init LDPC code (ldpc3168 in the drawing) having an information length of 3168 bits and a code rate of 0.5 configured using hop = 2 and p = 204, b = 24 as a parameter of ELHP ( cw , rw) using Example 4 , P = 211, G 0 = 3, init = 13, cw = 4, rw = 4, cI cw , cII cw , cIII cw , cIV cw as parameters of p = 51, b = 24, P = 53, G 0 = 3, init = 9, The FER (frame error rate) simulation result of the LDPC code (ldpc4896 in the figure) of information length 4896 bits and code rate 0.5 which were formed using hop = 2 is shown.

또, 도 18 중에는 비교를 위해 제 3 세대 통신(3 GPP)에 이용되고 있는 터보 부호의 동일 부호 길이, 부호화율인 것을 비교로 나타내고 있다(turbo576, turbo1440, turbo3168, turbo4896). 도 18을 보더라도 알 수 있듯이 종래 10000비트 이하의 짧은 부호 길이에서는 터보 부호가 우위라고 되어 왔지만, 본 발명에 의해 정보 길이 576비트에서 거의 동등 성능을 나타내고, 그것보다 긴 정보 길이에서는 항상 제안의 LDPC 부호의 성능이 우위로 되어 있어, 매우 높은 성능을 나타내는 부호 구성법인 것을 확인할 수 있다. In Fig. 18, the same code lengths and coding rates of turbo codes used in third-generation communication (3GPP) are compared for comparison (turbo576, turbo1440, turbo3168, turbo4896). As can be seen from FIG. 18, the turbo code has been superior in the short code length of 10000 bits or less. However, according to the present invention, almost equivalent performance is achieved at the information length of 576 bits. Has the superior performance, and it can be confirmed that it is a code construction method showing very high performance.

종래 방식의 LDPC 부호에서는, 10000 비트 이상의 부호 길이에서 좋은 성능을 나타내고 있지만, 반대로 부호 길이 10000 비트 이하에서는 터보 부호가 우위라고 말하고 있다. 그러나, 도 18에서는, 정보 길이 4896비트(부호화율 0.5이기 때문에 부호 길이 9792비트)이고, 터보 부호보다 좋은 성능을 나타내고 있다. 또한, 부호 길이가 길어짐에 따라서 터보 부호보다 성능이 좋아지는 경향도 나타내고 있다. 종래의 LDPC 부호에서는 이 10000 비트 정도의 부호 길이에서 터보 부호와 동등 성능을 나타내고 있지만, 본 발명에서는, 부호 길이 1000비트 정도(도 18에서는 정보 길이 576비트, 부호화율 0.5이기 때문에 부호 길이 1152비트)에서 터보 부호와 동등 성능을 나타내고 있다. In the conventional LDPC code, a good performance is achieved at a code length of 10000 bits or more, but on the contrary, a turbo code is said to be superior at a code length of 10000 bits or less. However, in Fig. 18, the information length is 4896 bits (code length 9792 bits because the coding rate is 0.5), which shows better performance than turbo codes. Further, as the code length becomes longer, the performance tends to be better than that of the turbo code. In the conventional LDPC code, the performance is equivalent to that of a turbo code at a code length of about 10000 bits, but in the present invention, the code length is about 1000 bits (in Fig. 18, an information length of 576 bits and a code rate of 0.5 is 1152 bits). Shows the same performance as the turbo code.

이상과 같이, 이 실시예 4에 따르면, 실시예 1과 동일한 효과를 얻을 수 있고, 또한, 멀티 에지 타입의 밀도 발전법을 사용함으로써, 오류 정정 능력이 양호한 LDPC 부호의 검사 행렬을 생성할 수 있다고 하는 효과를 더 얻을 수 있다. As described above, according to the fourth embodiment, the same effects as those of the first embodiment can be obtained, and by using the multi-edge type density generation method, an LDPC code with a good error correction capability can be generated. You can get more effect.

(실시예 5)(Example 5)

도 19는 본 발명의 실시예 5에 따른 LDPC 부호용의 검사 행렬 생성 장치의 구성을 나타내는 블럭도이다. 이 실시예 5의 검사 행렬 생성 장치는, 의사 난수 치환 행렬 생성부(13), 검사 행렬 생성부(16), 의사 난수 치환 행렬용 파라미터 저장부(17) 및 차수 분포 저장부(18)를 구비하고 있다. 이 검사 행렬 생성 장치는, 도 4에서의 송신측 및 수신측의 통신 장치 내에 탑재되며, 생성한 검사 행렬을 부호화기(101) 및 복호기(105)에 출력하더라도 좋고, 송신측 및 수신측의 통신 장치 밖에 설치되고, 생성한 검사 행렬을 송신측 및 수신측의 통신 장치 내의 메모리(도시하지 않음)에 저장하여 부호화기(101) 및 복호기(105)에 출력하더라도 좋다. Fig. 19 is a block diagram showing the structure of a parity check matrix generation device for LDPC codes according to the fifth embodiment of the present invention. The parity check matrix generating apparatus of the fifth embodiment includes a pseudo random number substitution matrix generator 13, a parity check matrix generation unit 16, a parameter random storage unit 17 for the pseudo random number substitution matrix, and an order distribution storage unit 18. Doing. This check matrix generating device is mounted in the communication device on the transmitting side and the receiving side in FIG. 4, and may output the generated check matrix to the encoder 101 and the decoder 105, and the communication device on the transmitting side and the receiving side. It may be provided outside, and the generated check matrix may be stored in a memory (not shown) in the communication device on the transmitting side and the receiving side and output to the encoder 101 and the decoder 105.

도 19에서, 의사 난수 치환 행렬용 파라미터 저장부(17)는, 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여 산출된 의사 난수 치환 행렬을 위한 파라미터를 저장하고 있다. 이 의사 난수 치환 행렬을 위한 파라미터는, 외부에서 실시예 1과 마찬가지로 하여 생성된다. 의사 난수 치환 행렬 생성부(13)는, 의사 난수 치환 행렬용 파라미터 저장부(17)에 저장되어 있는 의사 난수 치환 행렬을 위한 파라미터에 의해, 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 의사 난수 치환 행렬을 생성한다. In Fig. 19, the pseudo random number substitution matrix storage unit 17 stores parameters for a pseudo random number substitution matrix calculated using a predetermined information length, coding rate, and maximum order of columns. The parameter for this pseudo random number substitution matrix is generated externally in the same manner as in Example 1. The pseudo random number substitution matrix generator 13 uses a pseudo random number substitution matrix and a pseudo random number substitution matrix by using a pseudo random number sequence and a Latin square matrix by the parameters for the pseudo random number substitution matrix stored in the pseudo random number substitution matrix parameter storage unit 17. Create

또한, 차수 분포 저장부(18)는, 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용해서 산출된 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법에 의해 최적화된 검사 행렬 생성의 차수 분포를 저장하고 있다. 이 검사 행렬 생성의 차수 분포는, 외부에서 실시예 1과 마찬가지로 하여 최적화되어 있다. 검사 행렬 생성부(16)는, 차수 분포 저장부(18)에 저장되어 있는 최적화된 검사 행렬 생성의 차수 분포에 의해, 생성된 의사 난수 치환 행렬을 배치하여 저밀도 패리티 검사 부호용의 검사 행렬을 생성한다. In addition, the order distribution storage unit 18 can take an order for optimizing the order distribution of the test matrix generation configurable using a pseudo random number substitution matrix calculated using a predetermined information length, coding rate, and maximum order of columns. With the combination of distributions as constraint conditions, the order distribution of the generation of the test matrix optimized by the density generation method is stored. The order distribution of the parity check matrix generation is optimized in the same manner as in Example 1 from the outside. The parity check matrix generation unit 16 generates the parity check matrix for the low density parity check code by arranging the generated pseudo random number substitution matrix by the order distribution of the optimized parity check matrix generation stored in the order distribution storage unit 18. do.

이 실시예 5에서는, 실시예 1의 의사 난수 치환 행렬 생성부(13) 및 검사 행렬 생성부(16) 및 의사 난수 치환 행렬용 파라미터 저장부(17) 및 차수 분포 저장부(18)에 의해 구성하고 있지만, 실시예 2의 의사 난수 치환 행렬 생성부(23) 및 검사 행렬 생성부(26) 및 의사 난수 치환 행렬용 파라미터 저장부(27) 및 차수 분포 저장부(28)(도시하지 않음)에 의해 구성하더라도 좋고, 실시예 3의 의사 난수 치환 행렬 생성부(33) 및 검사 행렬 생성부(36) 및 의사 난수 치환 행렬용 파라미터 저장부(37) 및 차수 분포 저장부(38)(도시하지 않음)에 의해 구성하더라도 좋고, 실시예 4의 의사 난수 치환 행렬 생성부(43) 및 검사 행렬 생성부(46) 및 의사 난수 치환 행렬용 파라미터 저장부(47) 및 차수 분포 저장부(48)(도시하지 않음)에 의해 구성하더라도 좋다. In the fifth embodiment, the pseudo random number substitution matrix generation unit 13 and the parity check matrix generation unit 16 of the first embodiment are constituted by the parameter storage unit 17 and the order distribution storage unit 18 for the pseudo random number substitution matrix. However, the pseudo random number substitution matrix generator 23 and the parity check matrix generator 26, the parameter storage unit 27 for the pseudo random number substitution matrix, and the order distribution storage unit 28 (not shown) of Embodiment 2 are used. The pseudo random number substitution matrix generation unit 33 and the parity check matrix generation unit 36, the parameter storage unit 37 for the pseudo random number substitution matrix 37, and the order distribution storage unit 38 (not shown) of the third embodiment may be employed. The pseudo random number substitution matrix generation unit 43 and the parity check matrix generation unit 46, the parameter random storage unit 47 and the order distribution storage unit 48 (shown in FIG. May be configured).

이상과 같이, 이 실시예 5에 따르면, 실시예 1과 동일한 효과를 얻을 수 있다. As described above, according to the fifth embodiment, the same effects as in the first embodiment can be obtained.

(실시예 6) (Example 6)

도 20은 본 발명의 실시예 6에 따른 통신 장치의 구성을 나타내는 블럭도이다. 송신측의 통신 장치(201)는, 실시예 1 내지 실시예 5 중 어느 하나의 검사 행렬 생성 장치(100)와, 부호화기(101)와 변조기(102)를 구비하고 있다. 또한, 수신측의 통신 장치(202)는, 실시예 1 내지 실시예 5 중 어느 하나의 검사 행렬 생성 장치(100)와, 복조기(104)와 복호기(105)를 구비하고 있다. 20 is a block diagram showing the construction of a communication device according to a sixth embodiment of the present invention. The communication device 201 on the transmitting side includes the parity check matrix generating device 100 of any one of the first to fifth embodiments, the encoder 101 and the modulator 102. The communication device 202 on the receiving side includes the parity check matrix generating device 100 of any one of the first to fifth embodiments, the demodulator 104 and the decoder 105.

송신측의 통신 장치(201)에 있어서, 검사 행렬 생성 장치(100)는 실시예 1 내지 실시예 5 중 어느 하나의 방법에 의해 검사 행렬 H를 생성하고, 부호화기(101)는, 생성된 검사 행렬 H를 사용하여 생성 행렬 G를 구하고, 그리고, 메시 지(u1 u2 … uK)를 수취하며, 구한 생성 행렬 G를 이용하여 부호 워드 C를 생성한다. 변조기(102)는, 생성한 부호 워드 C에 대하여, BPSK, QPSK, 다치 QAM 등의 디지털 변조를 행하여 송신한다. In the communication device 201 on the transmission side, the parity check matrix generating apparatus 100 generates the parity check matrix H by any of the first to fifth embodiments, and the encoder 101 generates the generated parity check matrix. A generation matrix G is obtained using H, and a message (u 1 u 2 ... u K ) is received, and a sign word C is generated using the obtained generation matrix G. The modulator 102 performs digital modulation such as BPSK, QPSK, multi-valued QAM, and transmits the generated code word C.

수신측의 통신 장치(202)에 있어서, 검사 행렬 생성 장치(100)는 실시예 1 내지 실시예 5 중 어느 하나의 방법에 의해 검사 행렬 H를 생성하고, 복조기(104)는, 통신로(103)를 거쳐 수취한 변조 신호에 대하여, BPSK, QPSK, 다치 QAM 등의 디지털 복조를 행하고, 복호기(105)가, LDPC 부호화된 복조 결과에 대하여, 생성된 검사 행렬을 이용하여 「합-곱 알고리즘」에 의한 반복 복호를 실시하고, 추정 결과(원래의 u1 u2 … uK에 대응)를 출력한다. In the communication device 202 on the receiving side, the parity check matrix generating device 100 generates the parity check matrix H by the method of any one of the first to fifth embodiments, and the demodulator 104 communicates with the communication path 103. Digital demodulation such as BPSK, QPSK, multi-valued QAM, etc., and the decoder 105 performs a "sum-multiply algorithm" using the generated parity check matrix with respect to the LDPC-coded demodulation result. Iterative decoding is performed, and the estimation result (corresponding to the original u 1 u 2 ... U K ) is output.

이상과 같이, 이 실시예 6에 따르면, 실시예 1 내지 실시예 5 중 어느 하나의 검사 행렬 생성 장치(100)를 사용함으로써, 확정적이고 특성이 안정하며, 오류 정정 능력이 양호하고, 또한 다양한 앙상블, 부호 길이, 부호화율에 대응한 Irregular-LDPC 부호용의 검사 행렬을 사용할 수 있다고 하는 효과를 얻을 수 있다. As described above, according to the sixth embodiment, by using the parity check matrix generating apparatus 100 of any one of the first to fifth embodiments, it is deterministic, stable in characteristics, good in error correction capability, and various ensemble. The effect of using a check matrix for Irregular-LDPC codes corresponding to the code length and the code rate can be obtained.

이상과 같이, 본 발명에 따른 검사 행렬 생성 장치 및 검사 행렬 생성 방법은, 예컨대, 확정적이고 특성이 안정하며, 오류 정정 능력이 양호하고, 또한 다양한 앙상블, 부호 길이, 부호화율에 대응한 LDPC 부호용의 검사 행렬을 단시간에 용 이하게 생성하는 것에 적합하다. As described above, the parity check matrix generating apparatus and the parity check matrix generating method according to the present invention are, for example, for LDPC codes corresponding to deterministic and stable characteristics, good error correction capability, and corresponding to various ensembles, code lengths, and coding rates. It is suitable to easily generate the test matrix of.

Claims (10)

소정의 정보 길이, 부호화율 및 열의 최대 차수를 입력하는 정보 길이·부호화율·열 최대 차수 입력부와, An information length, encoding rate, and column maximum order input unit for inputting a predetermined information length, coding rate, and maximum order of columns; 입력된 상기 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여 후술하는 의사 난수 치환 행렬을 위한 파라미터를 산출하는 의사 난수 치환 행렬용 파라미터 산출부와, A parameter calculating unit for a pseudo random number substitution matrix for calculating a parameter for a pseudo random number substitution matrix described later using the inputted information length, coding rate, and maximum order of columns; 산출된 상기 의사 난수 치환 행렬을 위한 파라미터에 의해 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 상기 의사 난수 치환 행렬을 생성하는 의사 난수 치환 행렬 생성부와,A pseudo random number substitution matrix generator for generating the pseudo random number substitution matrix using a pseudo random number series and a Latin square matrix by the calculated parameters for the pseudo random number substitution matrix; 입력된 상기 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용해서, 상기 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출하는 차수 분포 최적화용 파라미터 산출부와, Calculating parameters of a combination of possible order distributions for optimization of order distributions of configurable check matrix generation using the pseudo random number substitution matrix, using the inputted information length, coding rate and maximum order of columns. A parameter calculator for order distribution optimization; 산출된 상기 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법에 의해 검사 행렬 생성의 차수 분포를 최적화하는 차수 분포 최적화부와, An order distribution optimization unit for optimizing the order distribution of the generation of the test matrix by the density generation method, using the calculated combination of the order distributions that can be taken; 최적화된 상기 검사 행렬 생성의 차수 분포에 의해, 생성된 상기 의사 난수 치환 행렬을 배치하여 저밀도 패리티 검사 부호용의 검사 행렬을 생성하는 검사 행렬 생성부A parity check matrix generator for generating the parity check matrix for the low-density parity check code by arranging the pseudo random number substitution matrix generated by the optimized distribution of the parity check generation 를 구비한 검사 행렬 생성 장치. An apparatus for generating a parity check matrix. 제 1 항에 있어서,The method of claim 1, 상기 정보 길이·부호화율·열 최대 차수 입력부는 소정의 정보 길이, 복수의 부호화율 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수를 입력하고, The information length, encoding rate, column maximum order input unit inputs a maximum order of a predetermined information length, a plurality of coding rates, and a column of the maximum coding rate excluding uncoding, 상기 의사 난수 치환 행렬용 파라미터 산출부는, 입력된 상기 소정의 정보 길이, 복수의 부호화율 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수를 이용하여 상기 의사 난수 치환 행렬을 위한 파라미터를 산출하며, The parameter calculation unit for the pseudo random number substitution matrix calculates a parameter for the pseudo random number substitution matrix by using the inputted maximum length of the predetermined information length, a plurality of coding rates, and a maximum coding rate except for uncoding, 상기 차수 분포 최적화용 파라미터 산출부는 입력된 상기 소정의 정보 길이, 복수의 부호화율 및 무부호화를 제외한 최대 부호화율의 열의 최대 차수를 이용해서, 상기 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출하는 The order distribution optimization parameter calculating unit generates a check matrix that is configurable using the pseudo random number substitution matrix by using the maximum order of input columns of the predetermined information length, a plurality of coding rates, and a maximum coding rate excluding uncoding. To calculate the parameters of a combination of possible order distributions for optimization of the order distribution 것을 특징으로 하는 검사 행렬 생성 장치. An apparatus for generating a check matrix, characterized in that. 제 1 항에 있어서,The method of claim 1, 상기 의사 난수 치환 행렬용 파라미터 산출부는, 입력된 상기 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 후술하는 제 1 및 제 2 의사 난수 치환 행렬을 위한 파라미터를 산출하고, The parameter calculation unit for the pseudo random number substitution matrix calculates parameters for the first and second pseudo random number substitution matrices described later using the inputted information length, coding rate, and maximum order of columns. 상기 의사 난수 치환 행렬 생성부는, 산출된 상기 제 1 및 제 2 의사 난수 치환 행렬을 위한 파라미터에 의해 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 상기 제 1 의사 난수 치환 행렬을 생성하고, 또한, 상기 제 1 의사 난수 치환 행렬을 또한 행 방향으로 압축하여 상기 제 2 의사 난수 치환 행렬을 생성하며, The pseudo random number substitution matrix generator generates the first pseudo random number substitution matrix using a pseudo random number sequence and a Latin square matrix by the calculated parameters for the first and second pseudo random number substitution matrices. Further compressing one pseudo-random substitution matrix in a row direction to produce the second pseudo-random substitution matrix, 상기 차수 분포 최적화용 파라미터 산출부는, 입력된 상기 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 상기 제 1 및 제 2 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출하고, The order distribution optimization parameter calculating unit optimizes the order distribution of the generation of the test matrix configurable using the first and second pseudorandom number substitution matrices using the inputted information length, coding rate, and maximum order of columns. Calculate a parameter of the combination of possible order distributions for 상기 검사 행렬 생성부는, 최적화된 상기 검사 행렬 생성의 차수 분포에 의해, 생성된 상기 제 1 및 제 2 의사 난수 치환 행렬을 배치하여 저밀도 패리티 검사 부호용의 검사 행렬을 생성하는 The parity check matrix generation unit generates the parity check matrix for the low density parity check code by arranging the generated first and second pseudo random number substitution matrices by the optimized order distribution of the parity check matrix generation. 것을 특징으로 하는 검사 행렬 생성 장치. An apparatus for generating a check matrix, characterized in that. 제 1 항에 있어서,The method of claim 1, 상기 의사 난수 치환 행렬용 파라미터 산출부는, 입력된 상기 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 후술하는 제 3 의사 난수 치환 행렬을 위한 파라미터 및 후술하는 제 2 의사 난수 치환 행렬을 위한 파라미터를 산출하고, The parameter calculation unit for the pseudo random number substitution matrix may include a parameter for a third pseudo random number substitution matrix to be described later and a second pseudo random number substitution matrix to be described later using the inputted information length, coding rate, and maximum order of columns. Calculate the parameters, 상기 의사 난수 치환 행렬 생성부는, 산출된 상기 제 3 의사 난수 치환 행렬을 위한 파라미터 및 상기 제 2 의사 난수 치환 행렬을 위한 파라미터에 의해, 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 생성한 제 1 의사 난수 치환 행렬을 또한 행과 열의 치환을 행하여 확장해서 상기 제 3 의사 난수 치환 행렬을 생성하고, 또한, 상기 제 1 의사 난수 치환 행렬을 또한 행 방향으로 압축하여 상기 제 2 의사 난수 치환 행렬을 생성하며, The pseudo random number substitution matrix generator is configured to generate a first pseudo random number using a pseudo random number sequence and a Latin square matrix based on the calculated parameters for the third pseudo random number substitution matrix and the parameters for the second pseudo random number substitution matrix. A substitution matrix is further extended by substituting rows and columns to generate the third pseudo-random substitution matrix, and further compressing the first pseudo-random substitution matrix in a row direction to generate the second pseudo random substitution matrix, 상기 차수 분포 최적화용 파라미터 산출부는, 입력된 상기 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여, 상기 제 3 및 제 2 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합의 파라미터를 산출하고, The order distribution optimization parameter calculating unit optimizes an order distribution of a check matrix generation that is configurable using the third and second pseudo-random substitution matrices using the inputted predetermined information length, coding rate, and maximum order of columns. Calculate a parameter of the combination of possible order distributions for 상기 차수 분포 최적화부는, 산출된 상기 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법 또는 멀티 에지 타입의 밀도 발전법에 의해 검사 행렬 생성의 차수 분포를 최적화하며, The order distribution optimization unit optimizes the order distribution of the generation of the test matrix by the density power generation method or the multi-edge type density power generation method, using the calculated combinations of the possible order distributions as constraint conditions. 상기 검사 행렬 생성부는, 최적화된 상기 검사 행렬 생성의 차수 분포에 의해, 생성된 상기 제 3 및 제 2 의사 난수 치환 행렬을 배치하여 저밀도 패리티 검사 부호용의 검사 행렬을 생성하는 The parity check matrix generation unit generates the parity check matrix for the low-density parity check code by arranging the third and second pseudo-random substitution matrices generated by the optimized distribution of the parity check generation. 것을 특징으로 하는 검사 행렬 생성 장치. An apparatus for generating a check matrix, characterized in that. 제 1 항에 있어서,The method of claim 1, 상기 검사 행렬 생성부에 의해 상기 의사 난수 치환 행렬을 배치하는 것에 의해 생성되는 검사 행렬의 사이클은 6 이상인 것을 특징으로 하는 검사 행렬 생성 장치. And a cycle of the parity check matrix generated by arranging the pseudo random number substitution matrix by the parity check matrix generator is 6 or more. 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용하여 산출된 의사 난수 치환 행렬을 위한 파라미터를 입력하고, 의사 난수 계열과 라틴 스퀘어 행렬을 사용하여 상기 의사 난수 치환 행렬을 생성하는 의사 난수 치환 행렬 생성부와, Generate a pseudo random number substitution matrix for inputting a parameter for a pseudo random number substitution matrix calculated using a predetermined information length, coding rate, and column maximum order, and generating the pseudo random number substitution matrix using a pseudo random number series and a Latin square matrix. Wealth, 상기 소정의 정보 길이, 부호화율 및 열의 최대 차수를 이용해서 산출된 상기 의사 난수 치환 행렬을 사용하여 구성 가능한 검사 행렬 생성의 차수 분포의 최적화를 위한 취할 수 있는 차수 분포의 조합을 구속 조건으로 하여, 밀도 발전법에 의해 최적화된 상기 검사 행렬 생성의 차수 분포를 입력하여, 생성된 상기 의사 난수 치환 행렬을 배치하여 저밀도 패리티 검사 부호용의 검사 행렬을 생성하는 검사 행렬 생성부A constraint condition is a combination of acceptable order distributions for optimizing the order distribution of a test matrix generation configurable using the pseudo random number substitution matrix calculated using the predetermined information length, coding rate, and maximum order of columns. A parity check matrix generator for inputting the order distribution of the parity check generation optimized by the density generation method and arranging the generated pseudo random number substitution matrix to generate a parity check matrix for a low density parity check code 를 구비한 검사 행렬 생성 장치. An apparatus for generating a parity check matrix. 청구항 1에 기재된 검사 행렬 생성 장치와, A test matrix generating device according to claim 1, 상기 검사 행렬 생성 장치에 의해 생성된 검사 행렬을 사용해서 생성 행렬을 구하여 부호 워드를 생성하는 부호화기An encoder for generating a sign word by obtaining a generation matrix by using the check matrix generated by the check matrix generator 를 구비한 통신 장치. Communication device having a. 청구항 1에 기재된 검사 행렬 생성 장치와, A test matrix generating device according to claim 1, 상기 검사 행렬 생성 장치에 의해 생성된 검사 행렬을 사용해서 합-곱 알고리즘(sum-product algorithm)에 의한 반복 복호를 실시하여 추정 결과를 산출하는 복호기A decoder that performs iterative decoding by a sum-product algorithm using the test matrix generated by the test matrix generator to calculate an estimation result. 를 구비한 통신 장치. Communication device having a. 청구항 6에 기재된 검사 행렬 생성 장치와, A test matrix generating device according to claim 6, 상기 검사 행렬 생성 장치에 의해 생성된 검사 행렬을 사용해서 생성 행렬을 구하여 부호 워드를 생성하는 부호화기An encoder for generating a sign word by obtaining a generation matrix by using the check matrix generated by the check matrix generator 를 구비한 통신 장치. Communication device having a. 청구항 6에 기재된 검사 행렬 생성 장치와, A test matrix generating device according to claim 6, 상기 검사 행렬 생성 장치에 의해 생성된 검사 행렬을 사용해서 합-곱 알고리즘에 의한 반복 복호를 실시하여 추정 결과를 산출하는 복호기A decoder that performs iterative decoding by a sum-product algorithm using the check matrix generated by the check matrix generator to calculate an estimation result. 를 구비한 통신 장치. Communication device having a.
KR1020077007540A 2007-04-02 2004-10-08 Check matrix producing apparatus and communication apparatus KR20070085244A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020077007540A KR20070085244A (en) 2007-04-02 2004-10-08 Check matrix producing apparatus and communication apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020077007540A KR20070085244A (en) 2007-04-02 2004-10-08 Check matrix producing apparatus and communication apparatus

Publications (1)

Publication Number Publication Date
KR20070085244A true KR20070085244A (en) 2007-08-27

Family

ID=38613184

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077007540A KR20070085244A (en) 2007-04-02 2004-10-08 Check matrix producing apparatus and communication apparatus

Country Status (1)

Country Link
KR (1) KR20070085244A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101110201B1 (en) * 2007-10-31 2012-02-15 연세대학교 산학협력단 Method and apparatus for paraller structured latin square interleaving in communication system
US8861719B2 (en) 2012-04-02 2014-10-14 Samsung Electronics Co., Ltd. Method of generating a random permutation, random permutation generating device, and encryption/decryption device having the same

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101110201B1 (en) * 2007-10-31 2012-02-15 연세대학교 산학협력단 Method and apparatus for paraller structured latin square interleaving in communication system
US8201030B2 (en) 2007-10-31 2012-06-12 Samsung Electronics Co., Ltd. Method and apparatus for parallel structured Latin square interleaving in communication system
US8861719B2 (en) 2012-04-02 2014-10-14 Samsung Electronics Co., Ltd. Method of generating a random permutation, random permutation generating device, and encryption/decryption device having the same

Similar Documents

Publication Publication Date Title
Pishro-Nik et al. Results on punctured low-density parity-check codes and improved iterative decoding techniques
US7516388B2 (en) LDPC code inspection matrix generation method
JP4163023B2 (en) Parity check matrix generation method and parity check matrix generation apparatus
US7222284B2 (en) Low-density parity-check codes for multiple code rates
JP4598085B2 (en) Check matrix generation method
US7395494B2 (en) Apparatus for encoding and decoding of low-density parity-check codes, and method thereof
US8185797B2 (en) Basic matrix, coder/encoder and generation method of the low density parity check codes
KR101021465B1 (en) Apparatus and method for receiving signal in a communication system using a low density parity check code
US8176380B2 (en) Algebraic construction of LDPC (low density parity check) codes with corresponding parity check matrix having CSI (cyclic shifted identity) sub-matrices
US7089479B2 (en) LDPC code inspection matrix generation method and inspection matrix generation device
EP1526647B1 (en) Generation of a check matrix for irregular low-density parity-check (LDPC) codes
JP4772689B2 (en) Check matrix generation method and communication method
US7406648B2 (en) Methods for coding and decoding LDPC codes, and method for forming LDPC parity check matrix
Malema Low-density parity-check codes: construction and implementation.
KR20070085244A (en) Check matrix producing apparatus and communication apparatus
KR100632268B1 (en) LDPC code encoding and decoding method, and LDPC parity check matrix formation method.
Yao et al. LDGM Codes Based Near-optimal Coding for Adaptive Steganography
Vatta et al. Low complexity bounds on a class of irregular LDPC belief-propagation decoding thresholds
Lulu Construction Of Ldpc Codes Using Randomly Permutated Copies Of Parity Check Matrix
Ortega Sánchez-Colomer Low density parity check codes
CN114189251A (en) QC-LDPC code with girth of 10 constructed based on West-ton sequence
Greferath et al. Performance Analaysis of Low-Density Parity-Check Codes Derived from Finite Inversive Spaces
Dolecek Chapter Overview

Legal Events

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