ES2881854T3 - Aparato de recepción que comprende un multiplexor para códigos LDPC de 64K de tasa 2/3 y 256QAM - Google Patents

Aparato de recepción que comprende un multiplexor para códigos LDPC de 64K de tasa 2/3 y 256QAM Download PDF

Info

Publication number
ES2881854T3
ES2881854T3 ES15163589T ES15163589T ES2881854T3 ES 2881854 T3 ES2881854 T3 ES 2881854T3 ES 15163589 T ES15163589 T ES 15163589T ES 15163589 T ES15163589 T ES 15163589T ES 2881854 T3 ES2881854 T3 ES 2881854T3
Authority
ES
Spain
Prior art keywords
bit
code
bits
column
ldpc
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
ES15163589T
Other languages
English (en)
Inventor
Takashi Yokokawa
Makiko Yamamoto
Satoshi Okada
Ryoji Ikegaya
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Saturn Licensing LLC
Original Assignee
Saturn Licensing LLC
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 Saturn Licensing LLC filed Critical Saturn Licensing LLC
Application granted granted Critical
Publication of ES2881854T3 publication Critical patent/ES2881854T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/3405Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power
    • H04L27/3416Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power in which the information is carried by both the individual signal points and the subset to which the individual points belong, e.g. using coset coding, lattice coding, or related schemes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/033Theoretical methods to calculate these checking codes
    • H03M13/036Heuristic code construction methods, i.e. code construction or code search based on using trial-and-error
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • H03M13/1165QC-LDPC codes as defined for the digital video broadcasting [DVB] specifications, e.g. DVB-Satellite [DVB-S2]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/356Unequal error protection [UEP]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/6552DVB-T2
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/3488Multiresolution systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/36Modulator circuits; Transmitter circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Error Detection And Correction (AREA)
  • Dc Digital Transmission (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

Un aparato de recepción (12) que comprende una sección de sustitución inversa (1001) para asignar bits de símbolo de símbolos recibidos correspondientes a puntos de señal en un plano I-Q de una constelación de 256 QAM a bits de código de una palabra de código de Comprobación de Paridad de Baja Densidad, LDPC, de longitud de código N = 64.800 bits y una tasa de codificación de 2/3, representando la palabra de código LDPC una señal de televisión, y una sección de decodificación LDPC (1021) para decodificar los bits de código de la palabra de código LDPC asignada por la sección de sustitución inversa (1001) en base a una matriz de comprobación de paridad del código LDPC, en donde, la sección de sustitución inversa asigna los mb bits de símbolo yj de b símbolos sucesivos a los m bits con b = 2 y m = 8, a los mb bits de código bi para llevar a cabo una inversión de una demultiplexión llevada a cabo en un transmisor asignando el bit y7 al bit b0, el bit y2 al bit b1, el bit y9 al bit b2, el bit y0 al bit b3, el bit y4 al bit b4, el bit y6 al bit b5, el bit y13 al bit b6, el bit y3 al bit b7, el bit y14 al bit b8, el bit y10 al bit b9, el bit y15 al bit b10, el bit y5 al bit b11, el bit y8 al bit b12, el bit y12 al bit b13, el bit y11 al bit b14, el bit y1 al bit b15, y el bit de orden i a partir del bit más significativo de los mb bits de código se representa como un bit bi y el bit de orden j a partir del bit más significativo de los mb bits de símbolo de dos símbolos sucesivos se representa como un bit yj, en donde la matriz de comprobación de paridad del código LDPC es una matriz MxN, donde M es una longitud de paridad, e incluye una matriz de información MxK donde K = N-M y una matriz de paridad MxM, teniendo la matriz de paridad MxM una estructura de escalera en la que elementos que tienen un valor 1 se disponen en una escalera con una ponderación de fila de la primera fila que es 1 y una ponderación de fila de todas las filas restantes que es 2, y la matriz de información se representa por una tabla de valores iniciales de matriz de comprobación de paridad, que muestra en su fila de orden i, 1 <= i <= 120, las posiciones de elementos del valor de 1 en la columna de orden (1+360 (i-1)) de la matriz de información, y en donde en base a cada columna de orden (1+360 (i-1)), 1 <= i <= 120, las columnas (2+360 (i-1)) a 360i de la matriz de información se determinan desplazando cíclicamente hacia abajo la columna precedente respectiva en M/ 360; la tabla de valores iniciales de matriz de comprobación de paridad que está formada como: 317 2255 2324 2723 3538 3576 6194 6700 9101 10057 12739 17407 21039, 1958 2007 3294 4394 12762 14505 14593 14692 16522 17737 19245 21272 21379, 127 860 5001 5633 8644 9282 12690 14644 17553 19511 19681 20954 21002, 14 2822 5781 6297 8063 9469 9551 11407 11837 12985 15710 20236 20393, 3106 4659 4926 6495 6872 7343 8720 15785 16434 16727 19884 21325, 6 3220 8568 10896 12486 13663 16398 16599 19475 19781 20625 20961 21335, 4257 10449 12406 14561 16049 16522 17214 18029 18033 18802 19062 19526 20748, 412 433 558 2614 2978 4157 6584 9320 11683 11819 13024 14486 16860, 777 5906 7403 8550 8717 8770 11436 12846 13629 14755 15688 16392 16419, 93 5045 6037 7248 8633 9771 10260 10809 11326 12072 17516 19344 19938, 2120 2648 3155 3852 6888 12258 14821 15359 16378 16437 17791 20614 21025, 85 2434 5816 7151 8050 9422 10884 12728 15353 17733 18140 18729 20920, 856 1690 12787, 32 7357 9151, 4210 16615 18152, 11494 14036 17470, 2474 10291 10323, 1778 6973 10739, 4347 9570 18748, 2189 11942 20666, 3868 7526 17706, 8780 14796 18268, 160 16232 17399, 1285 2003 18922, 4658 17331 20361, 2765 4862 5875, 521 8759, 3484 7305 15829, 024 17730 17879, 31 12346 15024, 179 6365 11352, 2490 3143 5098, 2643 3101 21259, 4315 4724 13130, 94 17365 18322, 983 8597 9627, 837 15102 20876, 448 20418 21478, 3848 12029 15228, 8 5652 13146, 6389 11318 14417, 8800 18137 18434, 5824 5927 15314, 6056 13168 15179, 3284 13138 18919, y 13115 17259 17332.

Description

DESCRIPCIÓN
Aparato de recepción que comprende un multiplexor para códigos LDPC de 64K de tasa 2/3 y 256QAM
Campo técnico
Esta invención se refiere a un aparato de procesamiento de datos y a un método de procesamiento de datos, así como a un aparato de codificación y un método de codificación, y particularmente a un aparato de procesamiento de datos y a un método de procesamiento de datos codificación, así como a un aparato de codificación y un método de codificación que pueden mejorar, por ejemplo, la tolerancia a errores.
Antecedentes de la técnica
El código LDPC (Comprobación de Paridad de Baja Densidad) tiene una capacidad de corrección de errores alta y, en los últimos años, comienza a ser adoptado ampliamente en sistemas de transmisión que incluyen sistemas de difusión digital por satélite tales como, por ejemplo, el sistema DVB (Difusión Digital de Vídeo)-S.2 usado en Europa (véase, por ejemplo, el Documento No de Patente 1). Además, se investiga adoptar el código LDPC también en difusión digital terrestre de próxima generación.
Se está encontrando por investigaciones recientes que un rendimiento próximo al límite de Shannon se proporciona por el código LDPC a medida que la longitud de código se aumenta de manera similar a un turbo código, etc. Además, dado que el código LDPC tiene una propiedad de que la distancia mínima aumenta en proporción a la longitud de código, tiene una característica de que tiene una característica de probabilidad de error de bloque superior. También es ventajoso que un denominado fenómeno de suelo de error que se observa en una decodificación característica del turbo código, etc. ocurre poco.
En lo siguiente, se describe de manera particular tal código LDPC como se ha descrito anteriormente. Se ha de señalar que el código LDPC es un código lineal, y aunque no es necesariamente un código bidimensional, la siguiente descripción se da bajo la suposición de que es un código bidimensional.
El código LDPC tiene la característica más significante en que una matriz de comprobación de paridad que define el código LDPC es una matriz dispersa. Aquí, la matriz dispersa es una matriz en la que el número de aquellos elementos cuyo valor es “1 ” es muy pequeño (matriz en la que casi todos los elementos son 0).
La FIG. 1 muestra un ejemplo de una matriz de comprobación de paridad H de un código LDPC.
En la matriz de comprobación de paridad H de la FIG. 1, la ponderación de cada columna (ponderación de columna) (número de “1”) (ponderación) es “3” y la ponderación de cada fila (ponderación de fila) es “6”.
En la codificación por códigos LDPC (codificación LDPC), por ejemplo, una matriz de generador G se produce en base a una matriz de comprobación de paridad H y esta matriz de generador G se multiplica por bits de información bidimensional para producir una palabra de código (código LDPC).
En particular, un aparato de codificación que lleva a cabo codificación LDPC calcula primero una matriz de generador G que satisface una expresión GHT = 0 junto con una matriz traspuesta HT de una matriz de comprobación de paridad H. Aquí, si la matriz de generador G es una matriz K x N, entonces el aparato de codificación multiplica la matriz de generador G por una cadena de bits (vector u) de K bits de información para producir una palabra de código c (= uG) de N bits. La palabra de código (código LDPC) producida por el aparato de codificación se recibe por el lado de recepción a través de un camino de comunicación predeterminado.
La decodificación del código LDPC se puede llevar a cabo usando un algoritmo propuesto como decodificación probabilística (Decodificación Probabilística) por el Gallager, es decir, un algoritmo de paso de mensaje mediante propagación de creencias en un denominado gráfico de Tanner que incluye un nodo variable (también llamado nodo de mensaje) y un nodo de comprobación. En la siguiente descripción, cada uno del nodo variable y el nodo de comprobación se conoce adecuadamente simplemente como nodo.
La FIG. 2 ilustra un procedimiento de decodificación de un código LDPC.
Se ha de señalar que, en la siguiente descripción, un valor de número real donde la probabilidad “0” en el valor del bit de código de orden n de un código LDPC (una palabra código) recibido por el lado de recepción se representa en una relación de verosimilitud logarítmica se conoce adecuadamente como el valor de recepción uo i. Además, un mensaje emitido desde un nodo de comprobación se representa por uj y un mensaje emitido desde un nodo variable se representa por v i.
Primero, en la decodificación de un código LDPC, como se ve en la FIG. 2, se recibe un código LDPC y un mensaje (mensaje de nodo de comprobación) uj se inicializa a “0” y además una variable k que supone un número entero como un contador de procesos repetidos se inicializa a “0” en el paso S11, después de lo cual el procesamiento avanza al paso S12. En el paso S12, la operación matemática representada por una expresión (1) (operación matemática de nodo variable) se lleva a cabo en base al valor de recepción uo i obtenido por la recepción del código LDPC para determinar un mensaje (mensaje de nodo variable) v¡. Además, la operación matemática representada por una expresión (2) (operación matemática de nodo de comprobación) se lleva a cabo en base al mensaje v¡ para determinar el mensaje uj.
[Expresión 1]
Figure imgf000003_0001
Aquí, dv y dc en la expresión (1) y la expresión (2) son parámetros que se pueden seleccionar arbitrariamente y representan el número de “1” en una dirección vertical (columna) y una dirección horizontal (fila) de la matriz de comprobación de paridad H. Por ejemplo, en el caso de un código (3, 6), dv = 3 y dc = 6.
Se ha de señalar que, en la operación matemática de nodo variable de la expresión (1) y la operación matemática de nodo de comprobación de la expresión (2), el intervalo de la operación matemática es 1 a dv - 1 o 1 a dc - 1 debido a que un mensaje introducido desde un borde (línea que interconecta un nodo variable y un nodo de comprobación) desde el cual se ha de emitir un mensaje no se hace un objeto de la operación matemática. Mientras tanto, la operación matemática de nodo de comprobación de la expresión (2) se lleva a cabo produciendo por adelantado una tabla de una función R(v1, v2) representada por una expresión (3) definida por una salida con respecto a dos entradas v1 y v2 y usando la tabla sucesivamente (recursivamente) como se representa por una expresión (4).
[Expresión 3]
x = 2tanhM{tanh(vi/2)tanh(v2/ 2)}= tf(v i,v2)
(3)
[Expresión 4]
■■■ (4)
En el paso S12, la variable k se aumenta en “1 ” además, y el procesamiento avanza al paso S13. En el paso S13, se decide si la variable k es mayor o no que un número de tiempo de decodificación repetido predeterminado C. Si se decide en el paso S13 que la variable k no es mayor que C, entonces el procesamiento vuelve al paso S12, y se repite a partir de entonces un procesamiento similar.
Por otra parte, si se decide en el paso S13 que la variable k es mayor que C, entonces el procesamiento avanza al paso S14, en el que se determina y emite un mensaje v¡ como resultado de la decodificación a ser emitido finalmente llevando a cabo una operación matemática representada por una expresión (5), terminando por ello el proceso de codificación del código LDPC.
[Expresión 5]
Figure imgf000003_0002
Aquí, la operación matemática de la expresión (5) se lleva a cabo, diferente de la operación matemática de nodo variable de la expresión (1), usando mensajes uj de todos los bordes que conectan con el nodo variable.
La FIG. 3 ilustra un ejemplo de la matriz de comprobación de paridad H de un código LDPC (3, 6) (tasa de codificación: 1/2, longitud de código: 12).
En la matriz de comprobación de paridad H de la FIG. 3, la ponderación de una columna es 3 y la ponderación de una fila es 6 de manera similar que en la FIG. 1.
La FIG. 4 muestra un gráfico de Tanner de la matriz de comprobación de paridad H de la FIG. 3.
Aquí, en la FIG. 4, un nodo de comprobación se representa por
Figure imgf000004_0001
y un nodo variable se representa por “-“. Un nodo de comprobación y un nodo variable corresponden a una fila y a una columna de la matriz de comprobación de paridad H, respectivamente. Una conexión entre un nodo de comprobación y un nodo variable es un borde y corresponde a “1” de un elemento de la matriz de comprobación de paridad.
En particular, donde el elemento en la fila de orden j de la columna de orden i de la matriz de comprobación de paridad es 1, el nodo variable de orden i (nodo de “=“) desde arriba y el nodo de comprobación de orden j (nodo de “+”) desde arriba se conectan por un borde. El borde representa que un bit de código que corresponde al nodo variable tiene una condición de restricción que corresponde al nodo de comprobación.
En el algoritmo suma producto (Algoritmo Suma Producto) que es un método de decodificación para códigos LDPC, la operación matemática de nodo variable y la cooperación matemática de nodo de comprobación se llevan a cabo repetitivamente.
La FIG. 5 ilustra la operación matemática de nodo variable llevada a cabo con respecto a un nodo variable.
Con respecto al nodo variable, un mensaje vi que corresponde a un borde a ser calculado se determina por la operación matemática de nodo variable de la expresión (1) que usa los mensajes u1 y u2 desde los bordes restantes que conectan al nodo variable y el valor de recepción uoi. También un mensaje que corresponde a cualquier otro borde se determina de manera similar.
La FIG. 6 ilustra la operación matemática de nodo de comprobación llevada a cabo en un nodo de comprobación. Aquí, la operación matemática de nodo de comprobación de la expresión (2) se puede llevar a cabo reescribiendo la expresión (2) a una expresión (6) usando la relación de una expresión a x b = exp{ln(|a|) ln(|b|} x sign(a) x sign(b). Se ha de señalar que sign(x) es 1 donde x > 0 pero es -1 donde x < 0.
[Expresión 6]
Figure imgf000004_0002
■■■ (6)
Además, si, donde x > 0, una función j(x ) se define como una expresión j(x ) = ln(tanh(x/2)), entonces dado que se satisface una expresión j -1(x) = 2tanh-1(e-x), la expresión (6) se puede transformar en una expresión (7).
[Expresión 7]
Figure imgf000004_0003
■■■ (7)
En el nodo de comprobación, la operación matemática de nodo de comprobación de la expresión (2) se lleva a cabo según la expresión (7).
En particular, en el nodo de comprobación, el mensaje uj que corresponde al borde a ser calculado se determina por la operación matemática de nodo de comprobación de la expresión (7) usando los mensajes v1, v2, v3, v4 y v5 de los bordes restantes que conectan al nodo de comprobación. También un mensaje que corresponde a cualquier otro borde se determina de una manera similar.
Se ha de señalar que la función j(x ) de la expresión (7) se puede representar también como j(x) = ln((ex 1) / (ex -1)), y donde x > 0, j(x ) = j -1(x). Cuando las funciones j(x ) y j -1(x) se incorporan en hardware, mientras que algunas veces se incorporan usando una LUT (Tabla de Búsqueda), tales LUT llegan a ser la misma LUT.
Documento No de Patente 1: DVB-S.2: ETSI EN 302307 V1.1.2 (06-2006)
En un documento publicado por la Organización DVD: “tm3980r1.dvb-t2.v0.5.6.pdf”, Difusión Digital de Vídeo, c/0 EBU-17A Ancienne route-CH-1218 Grand Saconnex, Ginebra, Suiza, 17 de marzo de 2008, se describe un sistema de difusión digital de vídeo.
En un documento titulado “Parity and Column Twist Bit Interleaver for DVB-T2 LDPC codes”, de Takashi Yokokawa et al, publicado en Actas del 5a Simposio Internacional sobre Turbocódigos y temas relacionados, IEEE, Piscataway, NJ, EE.UU., 1 de septiembre de 2008, páginas 123-127, se describe una disposición para proporcionar intercalado de paridad y de torsión de columna para códigos LDPC.
En un documento publicado por la Organización DVB titulado “T2_0195 CfT Response Rai-reply.pdf”, DVB, Difusión Digital de Vídeo, c/0 EBU-17A Ancienne route-CH-1218 Grand Saconnex, Ginebra, Suiza, 4 de junio de 2007, se describe un sistema de difusión digital de video.
En un documento publicado por la Organización DVB titulado "Bitlnt.SamsungM&I012.pdf", DVB, D Difusión Digital de Vídeo, c/0 EBU-17A Ancienne route-CH-1218 Grand Saconnex, Ginebra, Suiza, 15 de septiembre de 2007, se describe un sistema de difusión digital de video.
En un documento publicado por la Organización DVB titulado “Digital Video Broadcasting (DVB)", Second generation framing structure, channel coding and modulation systems for Broadcasting, Interactive Services, News Gathering and other broadband satellite applications European Broadcasting Union Union Europeenne de Radio-Television EBUOER; ETSI EN 302307”, IEEE, Lis, Sophia Antipolis Cedex, Francia, val. BC, N° V1.1.2, 1 de junio de 2006, se describe un sistema de difusión digital de video.
En un documento titulado “Bit-reliability Mapping in LDPC-coded Modulation systems”, por Li Y et al, publicado en IEEE Communications Letters, IEEE Service Center, Piscataway, NJ, EE.UU., val. 9, n° 1, 1 de enero de 2005, páginas 1-03, se describe una disposición para mapeado de fiabilidad de bits en Sistemas de Modulación codificados LDPC.
Descripción de la invención
Problema técnico
El código LDPC está adoptado en DVB-S.2 que es un estándar para difusión digital por satélite y DVB-T.2 que es un estándar de difusión digital terrestre de próxima generación. Además, se planea adoptar el código LDPC en DVB-C.2 que es un estándar para difusión digital de CATV (Televisión por Cable) de próxima generación.
En difusión digital en cumplimiento con un estándar de DVB tal como DVB-S.2, un código LDPC se convierte (simboliza) en símbolos de modulación ortogonal (modulación digital) tal como QPSK (Modulación por Desplazamiento de Fase en Cuadratura), y los símbolos se mapean a puntos de señal y se transmiten.
En la simbolización de un código LDPC, la sustitución de bits de código del código LDPC se lleva a cabo en una unidad de dos o más bits, y los bits de código después de tal sustitución se determinan como bits de un símbolo. Aunque se han propuesto diversos métodos como método para la sustitución de bits de código para la simbolización de un código LDPC, se demanda la propuesta de un método que mejore aún más la tolerancia a los diversos errores en comparación con los métodos ya propuestos.
Además, también con respecto al código LDPC en sí mismo, se demanda una propuesta de un código LDPC que mejore la tolerancia a errores en comparación con los códigos LDPC prescritos en los estándares DVB tales como el estándar DVB-S.2.
La presente invención se ha hecho teniendo en consideración tal situación como se ha descrito anteriormente y hace posible mejorar la tolerancia a errores.
Solución técnica
La invención se define por las reivindicaciones adjuntas.
Efecto ventajoso
Según la presente invención, se puede mejorar la tolerancia a errores.
Breve descripción de los dibujos
La FIG. 1 es una vista que ilustra una matriz de comprobación de paridad H de un código LDPC.
La FIG. 2 es un diagrama de flujo que ilustra un procedimiento de decodificación de un código LDPC.
La FIG. 3 es una vista que ilustra un ejemplo de una matriz de error de paridad de un código LDPC.
La FIG. 4 es una vista que
Figure imgf000006_0001
muestra un gráfico de Tanner de una matriz de comprobación de paridad.
La FIG. 5 es una vista que
Figure imgf000006_0002
muestra un nodo variable.
La FIG. 6 es una vista que
Figure imgf000006_0003
muestra un nodo de comprobación.
La FIG. 7 es una vista que muestra un ejemplo de una configuración de una realización de un sistema de transmisión al cual se aplica la presente invención.
La FIG. 8 es un diagrama de bloques que muestra un ejemplo de una configuración de un aparato de transmisión 11.
La FIG. 9 es una vista que ilustra una matriz de comprobación de paridad.
La FIG. 10 es una vista que ilustra una matriz de paridad.
La FIG. 11 es una vista que ilustra una matriz de comprobación de paridad de un código LDPC y ponderaciones de columnas prescritas en el estándar DVB-S.2.
La FIG. 12 es una vista que ilustra una disposición de punto de señal de 16QAM.
La FIG. 13 es una vista que ilustra una disposición de punto de señal de 64QAM.
La FIG. 14 es una vista que ilustra una disposición de punto de señal de 64QAM.
La FIG. 15 es una vista que ilustra una disposición de punto de señal de 64QAM.
La FIG. 16 es una vista que ilustra un procesamiento de un demultiplexor 25.
La FIG. 17 es una vista que ilustra un procesamiento del demultiplexor 25
La FIG. 18 es una vista que muestra un gráfico de Tanner con respecto a decodificación de un código LDPC.
La FIG. 19 es una vista que muestra una matriz de paridad Ht que tiene una estructura de escalera y un gráfico de Tanner que corresponde a la matriz de paridad Ht.
La FIG. 20 es una vista que muestra la matriz de paridad Ht de una matriz de comprobación de paridad H que corresponde al código LDPC después de intercalado de paridad.
La FIG. 21 es una vista que ilustra una matriz de comprobación de paridad de conversión.
La FIG. 22 es una vista que ilustra un procesamiento de un intercalador de torsión de columna 24. La FIG. 23 es una vista que ilustra números de columna de una memoria 31 necesarios para el intercalado de torsión de columna y direcciones de posiciones de inicio de escritura.
La FIG. 24 es una vista que ilustra números de columna de la memoria 31 necesarios para el intercalado de torsión de columna y direcciones de posiciones de inicio de escritura.
La FIG. 25 es un diagrama de flujo que ilustra un proceso de transmisión.
La FIG. 26 es una vista que muestra un modelo de un camino de comunicación adoptado en una simulación.
La FIG. 27 es una vista que ilustra una relación entre una tasa de error obtenida mediante la simulación y una frecuencia Doppler fd de una fluctuación.
La FIG. 28 es una vista que ilustra una relación entre una tasa de error obtenida mediante la simulación y una frecuencia Doppler fd de una fluctuación.
La FIG. 29 es un diagrama de bloques que muestra un ejemplo de una configuración de una sección de codificación LDPC 21.
La FIG. 30 es un diagrama de flujo que ilustra un proceso de sección de codificación LDPC.
La FIG. 31 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 2/3 y una longitud de código de 16.200.
La FIG. 32 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 2/3 y una longitud de código de 64.800.
La FIG. 33 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 2/3 y la longitud del código de 64.800.
La FIG. 34 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 2/3 y la longitud de código de 64.800.
La FIG. 35 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 3/4 y una longitud de código de 16.200.
La FIG. 36 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 3/4 y una longitud de código de 64.800.
La FIG. 37 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 3/4 y la longitud de código de 64.800.
La FIG. 38 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 3/4 y la longitud de código de 64.800.
La FIG. 39 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 3/4 y la longitud de código de 64.800.
La FIG. 40 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 4/5 y una longitud de código de 16.200.
La FIG. 41 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 4/5 y una longitud de código de 64.800.
La FIG. 42 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 4/5 y la longitud de código de 64.800.
La FIG. 43 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 4/5 y la longitud del código de 64.800.
La FIG. 44 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 4/5 y la longitud de código de 64.800.
La FIG. 45 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 5/6 y una longitud de código de 16.200.
La FIG. 46 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 5/6 y una longitud de código de 64.800.
La FIG. 47 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 5/6 y la longitud del código de 64.800.
La FIG. 48 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 5/6 y la longitud de código de 64.800.
La FIG. 49 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 5/6 y la longitud de código de 64.800.
La FIG. 50 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 8/9 y una longitud de código de 16.200.
La FIG. 51 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 8/9 y la longitud de código de 64.800.
La FIG. 52 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 8/9 y la longitud de código de 64.800.
La FIG. 53 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 8/9 y la longitud de código de 64.800.
La FIG. 54 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 8/9 y la longitud de código de 64.800.
La FIG. 55 es una vista que ilustra una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 9/10 y una longitud de código de 64.800.
La FIG. 56 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 9/10 y la longitud de código de 64.800.
La FIG. 57 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 9/10 y la longitud de código de 64.800.
La FIG. 58 es una vista que ilustra la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 9/10 y la longitud de código de 64.800.
La FIG. 59 es una vista que ilustra un método de determinación de una matriz de comprobación de paridad H de una tabla inicial de matriz de comprobación de paridad.
La FIG. 60 es una vista que ilustra un proceso de sustitución según los métodos existentes.
La FIG. 61 es una vista que ilustra un proceso de sustitución según los métodos existentes.
La FIG. 62 es una vista que ilustra grupos de bits de código y grupos de bits de símbolos donde un código LDPC que tiene una longitud de código de 64.800 y una tasa de codificación de 2/3 se modula por 256QAM y el múltiplo b es 2.
La FIG. 63 es una vista que ilustra una regla de asignación donde un código LDPC que tiene una longitud de código de 64.800 y una tasa de codificación de 2/3 se modula por 256QAM y el múltiplo b es 2.
La FIG. 64 es una vista que ilustra una sustitución de bits de código según la regla de asignación donde un código LDPC que tiene una longitud de código de 64.800 y una tasa de codificación de 2/3 se modula por 256QAM y el múltiplo b es 2.
La FIG. 65 es una vista que ilustra las BER donde un proceso de sustitución de un nuevo método de sustitución y donde se lleva a cabo un proceso de sustitución de un método existente.
La FIG. 66 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad para un código LDPC cuya Eb/ N0 como valor de umbral de rendimiento es mejor que el de un código estándar.
La FIG.67 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad para un código LDPC cuya Eb/ N0 como valor de umbral de rendimiento es mejor que el del código estándar.
La FIG.68 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad para un código LDPC cuya Eb/ N0 como valor de umbral de rendimiento es mejor que el del código estándar.
La FIG. 69 es una vista que ilustra relaciones de la Es/ N0 y de la BER con respecto al código estándar y un código propuesto.
La FIG.70 es un diagrama de bloques que muestra un ejemplo de una configuración de un aparato de recepción 12.
La FIG. 71 es un diagrama de flujo que ilustra un proceso de recepción.
La FIG.72 es una vista que ilustra un ejemplo de una matriz de comprobación de paridad de un código LDPC.
La FIG. 73 es una vista que ilustra una matriz (matriz de comprobación de paridad de conversión) obtenida aplicando sustitución de filas y sustitución de columnas a una matriz de comprobación de paridad.
La FIG. 74 es una vista que ilustra una matriz de comprobación de paridad de conversión dividida en una unidad de 5 x 5 bits.
La FIG. 75 es un diagrama de bloques que muestra un ejemplo de una configuración de un aparato de decodificación en el que se lleva a cabo colectivamente una operación matemática de nodo para P nodos.
La FIG. 76 es un diagrama de bloques que muestra un ejemplo de una configuración de una sección de decodificación LDPC 56.
La FIG. 77 es un diagrama de bloques que muestra un ejemplo de una configuración de una realización de un ordenador al que se aplica la presente invención.
La FIG. 78 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 2/3 y una longitud de código de 16.200.
La FIG. 79 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 2/3 y una longitud de código de 64.800.
La FIG. 80 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 2/3 y la longitud de código de 64.800.
La FIG. 81 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 2/3 y la longitud de código de 64.800.
La FIG. 82 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 3/4 y una longitud de código de 16.200.
La FIG. 83 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 3/4 y una longitud de código de 64.800.
La FIG. 84 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 3/4 y la longitud de código de 64.800.
La FIG. 85 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 3/4 y la longitud de código de 64.800.
La FIG. 86 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 3/4 y la longitud de código de 64.800.
La FIG. 87 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 4/5 y una longitud de código de 16.200.
La FIG. 88 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 4/5 y una longitud de código de 64.800.
La FIG. 89 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 4/5 y la longitud de código de 64.800.
La FIG. 90 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 4/5 y la longitud de código de 64.800.
La FIG. 91 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 4/5 y la longitud de código de 64.800.
La FIG. 92 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 5/6 y una longitud de código de 16.200.
La FIG. 93 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 5/6 y una longitud de código de 64.800.
La FIG. 94 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 5/6 y la longitud de código de 64.800.
La FIG. 95 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 5/6 y la longitud de código de 64.800.
La FIG. 96 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 5/6 y la longitud de código de 64.800.
La FIG. 97 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 8/9 y una longitud de código de 16.200.
La FIG. 98 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 8/9 y la longitud de código de 64.800.
La FIG. 99 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 8/9 y la longitud de código de 64.800.
La FIG. 100 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 8/9 y la longitud de código de 64.800.
La FIG. 101 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 8/9 y la longitud de código de 64.800.
La FIG. 102 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 9/10 y una longitud de código de 64.800.
La FIG. 103 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 9/10 y la longitud de código de 64.800.
La FIG. 104 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 9/10 y la longitud de código de 64.800.
La FIG. 105 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 9/10 y la longitud de código de 64.800.
La FIG. 106 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 1/4 y una longitud de código de 64.800.
La FIG. 107 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 1/4 y la longitud de código de 64.800.
La FIG. 108 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 1/3 y una longitud de código de 64.800.
La FIG. 109 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 1/3 y la longitud de código de 64.800.
La FIG. 110 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 2/5 y una longitud de código de 64.800.
La FIG. 111 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 2/5 y la longitud de código de 64.800.
La FIG. 112 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 1/2 y una longitud de código de 64.800.
La FIG. 113 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 1/2 y la longitud de código de 64.800.
La FIG. 114 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 1/2 y la longitud de código de 64.800.
La FIG. 115 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 3/5 y una longitud de código de 64.800.
La FIG. 116 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 3/5 y la longitud de código de 64.800.
La FIG. 117 es una vista que ilustra el ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 3/5 y la longitud de código de 64.800.
La FIG. 118 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 1/4 y una longitud de código de 16.200.
La FIG. 119 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 1/3 y una longitud de código de 16.200.
La FIG. 120 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 2/5 y una longitud de código de 16.200.
La FIG. 121 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 1/2 y una longitud de código de 16.200.
La FIG. 122 es una vista que ilustra un ejemplo de una tabla de valores iniciales de matriz de comprobación de paridad de una tasa de codificación de 3/5 y una longitud de código de 16.200.
La FIG. 123 es una vista que ilustra otro ejemplo de la tabla de valores iniciales de matriz de comprobación de paridad de la tasa de codificación de 3/5 y la longitud de código de 16.200.
La FIG. 124 es una vista que ilustra un método de determinación de una matriz de comprobación de paridad H a partir de una tabla inicial de matriz de comprobación de paridad.
La FIG. 125 es una vista que ilustra un ejemplo de sustitución de bits de código.
La FIG. 126 es una vista que ilustra otro ejemplo de sustitución de bits de código.
La FIG. 127 es una vista que ilustra un ejemplo adicional de sustitución de bits de código.
La FIG. 128 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 129 es una vista que ilustra un resultado de simulación de la BER.
La FIG. 130 es una vista que ilustra otro resultado de simulación de la BER.
La FIG. 131 es una vista que ilustra un resultado de simulación adicional de la BER.
La FIG. 132 es una vista que ilustra aún un resultado de simulación de la BER.
La FIG. 133 es una vista que ilustra un ejemplo de sustitución de bits de código.
La FIG. 134 es una vista que ilustra otro ejemplo de sustitución de bits de código.
La FIG. 135 es una vista que ilustra un ejemplo adicional de sustitución de bits de código.
La FIG. 136 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 137 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 138 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 139 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 140 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 141 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 142 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 143 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 144 es una vista que ilustra un ejemplo aún adicional de sustitución de bits de código.
La FIG. 145 es una vista que ilustra un procesamiento de un multiplexor 54 que compone un desintercalador 53. La FIG. 146 es una vista que ilustra un procesamiento de un desintercalador de torsión de columna 55.
La FIG. 147 es un diagrama de bloques que muestra otro ejemplo de una configuración del aparato de recepción 12. La FIG. 148 es un diagrama de bloques que muestra un primer ejemplo de una configuración de un sistema de recepción que se puede aplicar al aparato de recepción 12.
La FIG. 149 es un diagrama de bloques que muestra un segundo ejemplo de la configuración del sistema de recepción que se puede aplicar al aparato de recepción 12.
La FIG. 150 es un diagrama de bloques que muestra un tercer ejemplo de la configuración del sistema de recepción que se puede aplicar al aparato de recepción 12.
La FIG. 151 es una vista que ilustra grupos de bits de código y grupos de bits de símbolo donde un código propuesto que tiene una longitud de código de 64.800 y una tasa de codificación de 2/3 se modula por 256QAM y el múltiplo b es 2.
La FIG. 152 es una vista que ilustra una regla de asignación donde el código propuesto que tiene una longitud de código de 64.800 y una tasa de codificación de 2/3 se modula por 256QAM y el múltiplo b es 2.
La FIG. 153 es una vista que ilustra una sustitución de bits de código según la regla de asignación donde el código propuesto que tiene una longitud de código de 64.800 y una tasa de codificación de 2/3 se modula por 256QAM y el múltiplo b es 2.
La FIG. 154 es una vista que ilustra la BER donde se lleva a cabo un proceso de sustitución de un método adecuado para el código propuesto y donde se lleva a cabo un método de sustitución de un método existente para un código estándar.
La FIG. 155 es una vista que ilustra la BER en un caso en donde se lleva a cabo un proceso de sustitución del método adecuado para el código propuesto y en otro caso en donde se lleva a cabo un proceso de sustitución de un método existente.
Explicación de los símbolos de referencia
11 Aparato de transmisión, 12 Aparato de recepción, 21 Sección de codificación LDPC, 22 Intercalador de bits, 23 Intercalador de paridad, 24 Intercalador de torsión de columna, 25 Demultiplexor, 26 Sección de correspondencia, 27 Sección de modulación ortogonal, 31 Memoria, 32 Sección de sustitución, 51 Sección de demodulación ortogonal, 52 Sección de descorrespondencia, 53 Desintercalador, 54 Multiplexor, 55 Desintercalador de torsión de columna, 56 Sección de decodificación LDPC, 300 Memoria de almacenamiento de datos de borde, 301 Selector, 302 Sección de cálculo de nodo de comprobación, 303 Circuito de desplazamiento cíclico, 304 Memoria de almacenamiento de datos de borde, 305 Selector, 306 Memoria de datos de recepción, 307 Sección de cálculo de nodo variable, 308 Circuito de desplazamiento cíclico, 309 Sección de cálculo de palabra decodificada, 310 Sección de reordenación de datos de recepción, 311 Sección de reordenación de datos decodificados, 601 Bloque de procesamiento de codificación, 602 Bloque de almacenamiento, 611 Parte de ajuste de tasa de codificación, 612 Parte de lectura de tabla de valores iniciales, 613 Parte de producción de matriz de comprobación de paridad, 614 Parte de lectura de bit de información, 615 Parte de operación matemática de paridad de codificación, 616 Parte de control, 701 Bus, 702 CPU, 703 ROM, 704, RAM, 705 Disco duro, 706 Sección de salida, 707 Sección de entrada, 708 Sección de comunicación, 709 Unidad, 710 Interfaz de entrada/salida, 711 Medio de grabación extraíble, 1001 Sección de sustitución inversa, 1002 Memoria, 1011 Desintercalador de paridad, 1021 Sección de decodificación LDPC, 1101 Sección de adquisición, 1101 Sección de procesamiento de decodificación de línea de transmisión, 1103 Sección de procesamiento de decodificación de fuente de información, 1111 Sección de salida, 1121 Sección de grabación. Mejor modo para llevar a cabo la invención
La FIG. 7 muestra un ejemplo de una configuración de una realización de un sistema de transmisión al cual se aplica la presente invención (el término sistema significa un agregado lógico de una pluralidad de aparatos con independencia de si el aparato de componente individual se incluye o no en el mismo alojamiento).
Con referencia a la FIG. 7, el sistema de transmisión incluye un aparato de transmisión 11 y un aparato de recepción 12.
El aparato de transmisión 11 lleva a cabo, por ejemplo, la transmisión (difusión) (transferencia) de un programa de difusión de televisión. Es decir, el aparato de transmisión 11, por ejemplo, codifica datos de objeto que son un objeto de transmisión tal como datos de imagen, datos de sonido, etc. como un programa de difusión de televisión en un código LDPC y transmite los datos resultantes a través, por ejemplo, de un camino de comunicación 13 tal como un canal por satélite, ondas terrestres y red de CATV.
El aparato de recepción 12 es, por ejemplo, un sintonizador, un receptor de televisión o un STB (Decodificador) para recibir un programa de difusión de televisión o PC (Ordenador Personal) para recibir IPTV (Televisión de Protocolo de Internet), y recibe códigos LDPC transmitidos al mismo desde el aparato de transmisión 11 a través de un camino de comunicación 13, decodifica los códigos LDPC a datos de objeto y emite los datos de objeto.
Aquí, se ha sabido que los códigos LDPC utilizados en el sistema de transmisión de la FIG. 7 presentan una capacidad muy alta en un camino de comunicación AWGN (Ruido Blanco Gaussiano Aditivo).
No obstante, en el camino de comunicación 13, tal como ondas terrestres, ocurren algunas veces errores de ráfaga o borrado. Por ejemplo, en un sistema OFDM (Multiplexación por División de Frecuencia Ortogonal), en un entorno multitrayecto en donde la D/U (Relación Deseado a Indeseado) es 0 dB (potencia de Indeseado = eco es igual a la potencia de Deseado = camino principal), la potencia de un símbolo particular llega a ser en cero (borrado) en respuesta a un retardo de un eco (caminos distintos del camino principal).
Además, también en una fluctuación (camino de comunicación en el que se añade un eco cuyo retardo es cero y al que se aplica una frecuencia Doppler (doppler)), donde la D/U es 0 dB, ocurre un caso en donde la potencia de un símbolo OFDM entero en un punto específico de tiempo se reduce a cero (borrado) por la frecuencia Doppler.
Además, a partir de una situación de líneas de cableado en el lado del aparato de recepción 12 desde una sección de recepción (no mostrada) tal como una antena o similar para recibir una señal del aparato de transmisión 11 al aparato de recepción 12 o de la inestabilidad de la fuente de alimentación al aparato de recepción 12, aparecen algunas veces errores de ráfaga.
Mientras tanto, en la decodificación de códigos LDPC, dado que la operación matemática de nodo variable de la expresión (1) en donde la adición de (valores de recepción uoi de) bits de código de un código LDPC como se ve en la FIG. 5 descrita anteriormente se lleva a cabo en una columna de la matriz de comprobación de paridad H y por lo tanto un nodo variable que corresponde a un bit de código del código LDPC, si ocurre un error con el bit de código usado para la operación matemática de nodo variable, entonces cae la precisión de un mensaje a ser determinado. Entonces, dado que, en la decodificación del código LDPC, el mensaje determinado en el nodo variable que se conecta al nodo de comprobación se usa para llevar a cabo la operación matemática de nodo de comprobación de la expresión (7) en el nodo de comprobación, si el número de nodos de comprobación donde (bits de código del código LDPC que corresponde a) una pluralidad de nodos variables conectados a los mismos presentan un error (incluyendo borrado) al mismo tiempo llega a ser grande, entonces se deteriora el rendimiento de la decodificación. Por ejemplo, si dos o más de los nodos variables conectados al nodo de comprobación sufren de borrado al mismo tiempo, el nodo de comprobación devuelve un mensaje de que la probabilidad de que el valor pueda ser 0 y la probabilidad de que el valor pueda ser 1 son iguales entre sí para todos los nodos variables. En este caso, aquellos nodos de comprobación a los que el mensaje de las probabilidades iguales no contribuye a un ciclo de procesamiento de decodificación (un conjunto de operación matemática de nodo variable y de operación matemática de nodo de comprobación), y como resultado, se requiere un número aumentado de veces de repetición del procesamiento de decodificación. Por consiguiente, se deteriora el rendimiento de la decodificación. Además, aumenta el consumo de potencia de un aparato de recepción 12 que lleva a cabo la decodificación del código LDPC. Por consiguiente, el sistema de transmisión mostrado en la Fig. 7 está configurado de manera que la tolerancia a errores de ráfaga o borrado se mejora mientras que se mantiene el rendimiento en un camino de comunicación AWGN.
La FIG. 8 muestra un ejemplo de una configuración del aparato de transmisión 11 de la FIG. 7.
Con referencia a la FIG. 8, el aparato de transmisión 11 incluye una sección de codificación LDPC 21, un intercalador de bits 22, una sección de correspondencia 26 y una sección de modulación ortogonal 27.
A la sección de codificación LDPC 21, se suministran datos de objeto.
La sección de codificación LDPC 21 lleva a cabo codificación LDPC de los datos de objeto suministrados a la misma según una matriz de comprobación de paridad en la que una matriz de paridad que es una parte que corresponde a los bits de paridad de un código LDPC tiene una estructura de escalera y emite un código LDPC en donde los datos de objeto son bits de información.
En particular, la sección de codificación LDPC 21 lleva a cabo codificación LDPC de codificación de los datos de objeto en un código LDPC prescrito, por ejemplo, en los estándares DVB-S.2 o DVB-T.2 y emite un código LDPC obtenido como resultado de la codificación LDPC.
Aquí, en el estándar DVB-T.2, se programa para adoptar los códigos LDPC prescritos en el estándar DVB-S.2. El código LDPC prescrito en el estándar DVB-S.2 es un código IRA (Acumulación de Repetición Irregular), y la matriz de paridad en la matriz de comprobación de paridad del código LDPC tiene una estructura de escalera. La matriz de paridad y la estructura de escalera se describen en lo sucesivo. Además, el código IRA se describe, por ejemplo, en “Irregular Repeat-Accumulate Codes”, H. Jin., A. Khandekar, y R. J. McEliece, en las Actas del 2° Simposio Internacional sobre Turbo códigos y Temas Relacionados, páginas 1-8, septiembre de 2000.
El código LDPC emitido desde la sección de codificación LDPC 21 se suministra al intercalador de bits 22.
El intercalador de bits 22 es un aparato de procesamiento de datos para intercalar datos e incluye un intercalador de paridad 23, un intercalador de torsión de columna 24 y un demultiplexor (DEMUX) 25.
El intercalador de paridad 23 lleva a cabo el intercalado de paridad de intercalado de bits de paridad del código LDPC desde la sección de codificación LDPC 21 a posiciones de otros bits de paridad y suministra el código LDPC después del intercalado de paridad al intercalador de torsión de columna 24.
El intercalador de torsión de columna 24 lleva a cabo intercalado de torsión de columna para el código LDPC desde el intercalador de paridad 23 y suministra el código LDPC después del intercalado de torsión de columna al demultiplexor 25.
En particular, el código LDPC se transmite después de que se mapean dos o más bits de código del mismo a puntos de señal que representan un símbolo de modulación ortogonal por la sección de correspondencia 26 descrita en lo sucesivo.
El intercalador de torsión de columna 24 lleva a cabo, por ejemplo, tal intercalado de torsión de columna como se describe en lo sucesivo como un proceso de reordenación de reordenación de bits de código del código LDPC desde el intercalador de paridad 23 de manera que una pluralidad de bits de código del código LDPC que corresponde al valor 1 incluido en una fila arbitraria de la matriz de comprobación de paridad usada en la sección de codificación LDPC 21 no se incluyen en un símbolo.
El demultiplexor 25 lleva a cabo un proceso de sustitución de las posiciones de dos o más bits de código del código LDPC (que ha de ser un símbolo) desde el intercalador de torsión de columna 24 para obtener un código LDPC cuya tolerancia a AWGN se refuerza. Entonces, el demultiplexor 25 suministra dos o más bits de código de un código LDPC obtenido por el proceso de sustitución como un símbolo a la sección de correspondencia 26.
La sección de correspondencia 26 mapea el símbolo desde el demultiplexor 25 a puntos de señal determinados por un método de modulación de modulación ortogonal (modulación de múltiples valores) llevada a cabo por la sección de modulación ortogonal 27.
En particular, la sección de correspondencia 26 mapea el código LDPC desde el demultiplexor 25 a un punto de señal determinado por el sistema de modulación, en un plano IQ (constelación IQ) definido por un eje I representativo de una componente I que está en fase con una portadora y un eje Q representativo de una componente Q que es ortogonal a la onda portadora.
Aquí, como el método de modulación de modulación ortogonal llevada a cabo por la sección de modulación ortogonal 27, están disponibles métodos de modulación que incluyen, por ejemplo, un método de modulación definido en los estándares DVB-T, es decir, por ejemplo, QPSK (Modulación por Desplazamiento de Fase en Cuadratura), 16QAM (Modulación de Amplitud en Cuadratura), 64QAM, 256QAM, 1024Qa M,4096QAM, etc. Qué método de modulación se debería usar para modulación ortogonal a ser llevada a cabo por la sección de modulación ortogonal 27 se ajusta por adelantado, por ejemplo, según una operación del aparato de transmisión 11 por un operador. Se ha de señalar que la sección de modulación ortogonal 27 puede llevar a cabo alguna otra modulación ortogonal tal como, por ejemplo, 4PAM (Modulación de Amplitud de Pulsos).
El símbolo mapeado a un punto de señal por la sección de correspondencia 26 se suministra a la sección de modulación ortogonal 27.
La sección de modulación ortogonal 27 lleva a cabo modulación ortogonal de una portadora según (el símbolo mapeado a) el punto de señal de la sección de correspondencia 26 y transmite una señal de modulación obtenida mediante la modulación ortogonal a través del camino de comunicación 13 (FIG. 7).
Ahora, la FIG. 9 ilustra una matriz de comprobación de paridad H usada en codificación LDPC por la sección de codificación LDPC 21 de la FIG. 8.
La matriz de comprobación de paridad H tiene una estructura LDGM (Matriz de Generación de Baja Densidad) y se puede representar mediante una expresión H = [Ha |Ht] a partir de una matriz de información Ha de una parte que corresponde a bits de información y un matriz de paridad HT que corresponde a bits de paridad de entre bits de código del código LDPC (matriz en la que los elementos de la matriz de información Ha son elementos en el lado izquierdo y los elementos de la matriz de paridad Ht son elementos en el lado derecho).
Aquí, el número de bits de los bits de información y el número de bits de los bits de paridad de entre los bits de código de un código LDPC (una palabra de código) se conocen como longitud de información K y longitud de paridad M, y el número de bits de los bits de código de un código LDPC se conoce como longitud de código N (= K M).
La longitud de información K y la longitud de paridad M con respecto a un código LDPC de una cierta longitud de código N dependen de la tasa de codificación. Mientras tanto, la matriz de comprobación de paridad H es una matriz cuyas filas x columnas son M x N. Entonces, la matriz de información Ha es una matriz M x K y la matriz de paridad Ht es una matriz M x M.
La FIG. 10 ilustra la matriz de paridad Ht de la matriz de comprobación de paridad H de un código LDPC prescrito en el estándar DVB-S.2 (y DVB-T.2).
La matriz de paridad Ht de la matriz de comprobación de paridad H del código LDPC prescrito en el estándar DVB-S.2 tiene una estructura de escalera en donde los elementos del valor 1 se disponen como una escalera como se ve en la FIG. 10. La ponderación de fila de la matriz de paridad Ht es 1 con respecto a la primera fila, pero es 2 con respecto a todas las filas restantes. Mientras tanto, la ponderación de columna es 1 con respecto a la última fila, pero es 2 con respecto a todas las columnas restantes.
Como se ha descrito anteriormente, el código LDPC de la matriz de comprobación de paridad H en donde la matriz de paridad HT tiene una estructura de escalera se puede producir fácilmente usando la matriz de comprobación de paridad H.
En particular, un código LDPC (una palabra de código) se representa por un vector de fila c y un vector de columna obtenido trasponiendo el vector de fila se representa por cT. Además, una parte de los bits de información de dentro del vector de fila c que es un código LDPC se representa por un vector de fila A y una parte de bits de paridad se representa por un vector de fila T.
Aquí, en este caso, el vector de fila c se puede presentar por una expresión c = [A|T] a partir del vector de fila A como bits de información y el vector de fila T como bits de paridad (vector de fila en donde los elementos del vector de fila A son elementos en el lado izquierdo y los elementos del vector de fila T son elementos en el lado derecho).
Es necesario para la matriz de comprobación de paridad H y el vector de fila c = [A|T] como el código LDPC satisfacer una expresión HcT = 0, y donde la matriz de paridad Ht de la matriz de comprobación de paridad H = [Ha |Ht] tiene tal estructura de escalera como se muestra en la FIG. 10, el vector de fila T como bits de paridad que forma el vector de fila c = [A|T] que satisface la expresión HcT = 0 se puede determinar secuencialmente ajustando sucesivamente los elementos en las filas comenzando con los elementos en la primera fila del vector de columna HcT en la expresión HcT = 0 a cero.
La FIG. 11 ilustra la matriz de comprobación de paridad H de un código LDPC y ponderaciones de columna definidas en el estándar DVB-S.2 (y DVB-T.2).
En particular, A de la FIG. 11 ilustra la matriz de comprobación de paridad H de un código LDPC definido en el estándar DVB-S.2.
Con respecto a las columnas KX de la primera columna de la matriz de comprobación de paridad H, la ponderación de columna es X; con respecto a columnas K3 sucesivas, la ponderación es 3; con respecto a columnas M-1 sucesivas, la ponderación de columna es 2; y con respecto a la última columna, la ponderación de columna es 1. Aquí, KX K3 M-1 1 es igual a la longitud de código N.
En el estándar DVB-S.2, los números de columna KX, K3 y M (longitud de paridad) así como la ponderación de columna X están prescritos de tal manera como se ve en B de la FIG. 11.
En particular, B de la FIG. 11 ilustra los números de columna KX, K3 y M, así como la ponderación de columna X con respecto a diferentes tasas de codificación de los códigos LDPC prescritos en el estándar DVB-S.2.
En el estándar DVB-S.2, están prescritos los códigos LDPC de las longitudes de código N de 64.800 bits y 16.200 bits.
Y como se ve en B de la FIG. 11, para el código LDPC cuya longitud de código N es 64.800 bits, están prescritas 11 tasas de codificación (tasas nominales) 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, 8/9 y 9/10, y para el código LDPC cuya longitud de código N es 16.200 bits, están prescritas 10 tasas de codificación 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6 y 8/9.
Con respecto a los códigos LDPC, se sabe que los bits de código que corresponden a una columna de la matriz de comprobación de paridad H que tiene una ponderación de columna más alta presenta una tasa de error inferior. La matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 e ilustrada en la FIG.11 tiene una tendencia de que una columna más cercana al lado de la cabecera (lado izquierdo) tenga una ponderación de columna más alta. Por consiguiente, el código LDPC que corresponde a la matriz de comprobación de paridad H tiene una tendencia de que un bit de código más cercano a la cabecera es mayor en tolerancia a un error (tiene una tolerancia más alta a un error) y un bit de código más cercano a la cola es menor en tolerancia a un error.
La FIG. 12 ilustra una disposición de (puntos de señal que corresponden a) 16 símbolos en el plano IQ donde se lleva a cabo 16 QAM por la sección de modulación ortogonal 27 de la FIG. 8.
En particular, A de la FIG. 12 ilustra símbolos de 16QAM.
En 16QAM, un símbolo representa 4 bits, y existen 16 (= 24) símbolos. Entonces, los 16 símbolos se disponen de manera que forman una forma cuadrada de 4 x 4 símbolos en la dirección I x la dirección Q centrada en el origen del plano IQ.
Ahora, si el bit de orden i+1 a partir del bit más significativo de la cadena de bits representada por un símbolo se representa como el bit yi, entonces 4 bits representados por un símbolo de 16QAM se pueden representar como los bits y0 , y1, y2 e y3 en orden comenzando con el bit más significativo. Donde el método de modulación es 16QAM, 4 bits de código del código LDPC se ajustan (simbolizan) como un símbolo (valor de símbolo) de los 4 bits y0 a y3. B de la FIG. 12 indica los límites de bit con respecto a los 4 bits (en lo sucesivo, bit se conoce también como bit de símbolo) y0 a y3 representados por el símbolo del 16QAM.
Aquí, un límite de bit con respecto a un bit de símbolo yi (en la FIG. 12, i = 0, 1, 2, 3) significa un límite entre un símbolo cuyo bit yi es 0 y otro símbolo cuyo bit yi es 1.
Como se ve en B de la FIG. 12, en cuanto al bit de símbolo más significativo y0 de entre los 4 bits de símbolo y0 a y3 representados por el símbolo de 16QAM, solamente una ubicación del eje Q en el plano IQ hace un límite de bit, y en cuanto al segundo bit de símbolo y1 (segundo a partir del bit más significativo), solamente una ubicación del eje I en el plano IQ hace un límite de bit.
Además, en cuanto al tercer bit de símbolo y3, cada una de dos ubicaciones entre la primera y la segunda columnas y entre la tercera y cuarta columnas de la izquierda de los 4 x 4 símbolos hace un límite.
Además, en cuanto al cuarto bit de símbolo y3 , cada una de dos ubicaciones entre la primera y la segunda filas y entre la tercera y cuarta filas de los 4 x 4 símbolos hace un límite.
El bit de símbolo y1 representado por un símbolo es menos probable que llegue a ser erróneo y llega a ser menor en probabilidad de error en la medida que el número de símbolos separados lejos de un límite de bit aumenta, pero es más probable que llegue a ser erróneo y llegue a ser más alto en probabilidad de error en la medida que aumenta el número de símbolos colocados más cerca de un límite de bit.
Si un bit que es menos probable que llegue a ser erróneo (es tolerante a un error) se conoce como “bit fuerte” pero un bit que es más probable que llegue a ser erróneo (es menos tolerante a un error) se conoce como “bit débil”, entonces en cuanto a los 4 bits de símbolo y0 a y3 representados por símbolos de 16QAM, el bit de símbolo más significativo y0 y el segundo bit de símbolo y1 son bits fuertes y el tercer bit de símbolo y2 y el cuarto bit y3 son bits débiles.
Las FIG. 13 a 15 ilustran disposiciones de (puntos de señal que corresponden a) 64 símbolos en el plano IQ donde se lleva a cabo 64QAM por la sección de modulación ortogonal 27 de la FIG. 8.
En 64QAM, un símbolo representa 6 bits, y existen 64 (= 26 ) símbolos. Entonces, los 64 símbolos se disponen de manera que hacen un cuadrado de 8 x 8 símbolos en la dirección I x la dirección Q centrado en el origen del plano IQ.
Los bits de símbolo representados por un símbolo de 64QAM se pueden representar como los bits y0 , y1, y2 , y3 , y4 e y5 en orden comenzando con el bit más significativo. Donde el método de modulación es 64QAM, 6 bits de código del código LDPC se ajustan (simbolizan) como a un símbolo (valor de símbolo) de los 6 bits y0 a y5.
Aquí, la FIG. 13 indica los límites de bit con respecto al bit de símbolo más significativo y0 y al segundo bit de símbolo y1 de entre los bits de símbolo y0 a y5 de símbolos de 64QAM; la FIG. 14 indica los límites de bit con respecto al tercer bit de símbolo y2 y el cuarto bit de símbolo y3 ; y la FIG. 15 indica los límites de bit con respecto al quinto bit de símbolo y4 y el sexto bit de símbolo y5.
Como se ve en la FIG. 13, el número de límites de bits con respecto a cada uno del bit de símbolo más significativo y0 y el segundo bit de símbolo y1 es uno. Mientras tanto, como se ve en la FIG. 14, el número de límites de bits con respecto a cada uno del tercer bit de símbolo y2 y el cuarto bit de símbolo y3 es dos, y como se ve en la FIG. 15, el número de límites de bit con respecto a cada uno del quinto bit de símbolo y4 y el sexto bit de símbolo y5 es cuatro. Por consiguiente, entre los bits de símbolo y0 a y5 de símbolos de 64QAM, el bit de símbolo más significativo y0 y el segundo bit de símbolo y1 son los bits más fuertes, y el tercer bit de símbolo y2 y el cuarto bit de símbolo y3 son los segundos bits más fuertes. Entonces, el quinto bit de símbolo y4 y el sexto bit de símbolo y5 son los bits más débiles. A partir de la FIG. 12 y además a partir de las FIG. 13 a 15, se puede ver que, en cuanto a los bits de símbolo de símbolos de modulación ortogonal, hay una tendencia a que un bit de orden alto es un bit fuerte y un bit de orden bajo es un bit débil.
Aquí, como se ha descrito anteriormente con referencia a la FIG. 11, un código LDPC emitido desde la sección de codificación LDPC 21 (FIG. 8) incluye bits de código que son tolerantes a errores y bits de código que son menos tolerantes a errores.
Mientras tanto, como se ha descrito anteriormente con referencia a las FIG. 12 a 15, los bits de símbolo de símbolos de modulación ortogonal llevada a cabo por la sección de modulación ortogonal 27 incluyen bits fuertes y bits débiles.
Por consiguiente, si un bit de código del código LDPC que es bajo en tolerancia a un error se asigna a un bit de símbolo débil de un símbolo de modulación ortogonal, entonces la tolerancia a un error cae como un todo.
Por lo tanto, se ha propuesto un intercalador que intercala bits de código de un código LDPC de manera que los bits de código del código LDPC que son bajos en tolerancia a un error se asignan a bits fuertes (bits de símbolo) de un símbolo de modulación ortogonal.
El demultiplexor 25 de la FIG. 8 lleva a cabo el procesamiento del intercalador.
La FIG. 16 es una vista que ilustra el procesamiento del demultiplexor 25 de la FIG. 8.
En particular, A de la FIG. 16 muestra un ejemplo de una configuración funcional del demultiplexor 25.
El demultiplexor 25 incluye una memoria 31 y una sección de sustitución 32.
A la memoria 31, se suministra un código LDPC desde la sección de codificación LDPC 21.
La memoria 31 tiene una capacidad de almacenamiento para almacenar mb bits en la dirección (horizontal) de una fila y almacenar N/(mb) bits en la dirección (vertical) de una columna. La memoria 31 escribe los bits de código del código LDPC suministrado a la misma en la dirección de columna y lee los bits de código en la dirección de fila y entonces suministra los bits de código leídos a la sección de sustitución 32.
Aquí, N (= longitud de información K longitud de paridad M) representa la longitud de código del código LDPC como se ha descrito anteriormente.
Además, m representa el número de bits de los bits de código de un código LDPC para ser un símbolo, y b es un número entero positivo predeterminado y es un múltiplo a ser usado para multiplicar m por el número entero. El multiplexor 25 convierte (simboliza) los bits de código del código LDPC en símbolos como se ha descrito anteriormente, y el múltiplo b representa el número de símbolos obtenidos de una forma mediante simbolización de tiempo única por el multiplexor 25.
A de la FIG. 16 muestra un ejemplo de una configuración del demultiplexor 25 donde el sistema de modulación es 64QAM, y, por consiguiente, el número de bits m de los bits de código del código LDPC para ser un símbolo es 6 bits.
Además, en A de la FIG. 16, el múltiplo b es 1, y, por consiguiente, la memoria 31 tiene una capacidad de almacenamiento de N/ (6 x 1) x (6 x 1) bits en la dirección de columna x la dirección de fila.
Aquí, una región de almacenamiento de la memoria 31 que se extiende en la dirección de columna e incluye un bit en la dirección de fila se conoce en lo sucesivo adecuadamente como columna. En A de la FIG. 16, la memoria 31 incluye seis (= 6 x 1) columnas.
El demultiplexor 25 lleva a cabo la escritura de los bits de código del código LDPC en una dirección hacia abajo desde por encima de una columna que forma la memoria 31 (en una dirección de columna) comenzando con una columna del lado izquierdo hacia una columna del lado derecho.
Entonces, si la escritura de los bits de código termina con el bit de más abajo en la columna de más a la derecha, entonces los bits de código se leen y suministran a la sección de sustitución 32 en una unidad de 6 bits (mb bits) en la dirección de fila comenzando con la primera fila de todas las columnas que forman la memoria 31.
La sección de sustitución 32 lleva a cabo un proceso de sustitución de sustitución de la posición de los bits de código de 6 bits de la memoria 31 y emite los 6 bits obtenidos por la sustitución como 6 bits de símbolo y0 , y1, y2, y3 , y4 e y5 representativos de un símbolo de 64QAM.
En particular, mientras que mb bits de código (aquí, 6 bits) se leen en la dirección de fila de la memoria 31, si el bit de orden i (i = 0, 1, ..., mb-1) a partir del bit más significativo de entre los mb bits de código leídos de la memoria 31 se representa por el bit bi, entonces los 6 bits de código leídos en la dirección de fila de la memoria 31 se pueden representar como los bits b0 , b1, b2 , b3 , b4 y b5 en orden comenzando con el bit más significativo.
Una relación de la ponderación de columna descrita anteriormente con referencia a la FIG. 11, conduce a que el bit de código colocado en la dirección del bit b0 sea un bit de código alto en tolerancia a un error mientras que el bit de código en la dirección del bit b5 es un bit de código bajo en tolerancia a un error.
La sección de sustitución 32 lleva a cabo un proceso de sustitución de sustitución de la posición de los 6 bits de código b0 a b5 de la memoria 31 de manera que un bit de código que es bajo en tolerancia a un error de entre los 6 bits de código b0 a b5 de la memoria 31 se puede asignar a un bit que es alto en tolerancia de entre los bits de símbolo y0 a y5 de un símbolo de 64QAM.
Aquí, para un método de sustitución para sustituir los 6 bits de código b0 a b5 de la memoria 31 para ser asignados a los 6 bits de símbolo y0 a y5 representativos de un símbolo de 64QAM, se han propuesto varios sistemas.
B de la FIG. 16 ilustra un primer método de sustitución; C de la FIG. 16 ilustra un segundo método de sustitución; y D de la FIG. 16 ilustra un tercer método de sustitución.
En B de la FIG. 16 a D de la FIG. 16 (de manera similar también en la FIG. 17 descrita en lo sucesivo), un segmento de línea que interconecta los bits bi e yj significa que el bit de código bi está asignado al bit de símbolo yj del símbolo (se sustituye en la posición del bit de símbolo yj ).
Como el primer método de sustitución, se propone adoptar uno de tres tipos de métodos de sustitución en B de la FIG. 16 y como el segundo método de sustitución, se propone adoptar uno de dos tipos de métodos de sustitución en C de la FIG. 16.
Como el tercer método de sustitución, se propone seleccionar y usar seis tipos de métodos de sustitución en D de la FIG. 16 en orden.
La FIG.17 ilustra un ejemplo de una configuración del demultiplexor 25 en un caso en donde el método de modulación es 64QAM (por consiguiente, el número de bits m de los bits de código de un código LDPC mapeado a un símbolo es 6 de manera similar a como en la FIG. 16) y el múltiplo b es 2, y un cuarto método de sustitución. Donde el múltiplo b es 2, la memoria 31 tiene una capacidad de almacenamiento de N/ (6 x 2) x (6 x 2) bits en la dirección de columna x la dirección de fila e incluye 12 (= 6 x 2) columnas.
A de la FIG. 17 ilustra un orden de escritura de un código LDPC en la memoria 31.
El demultiplexor 25 lleva a cabo la escritura de los bits de código del código LDPC en una dirección hacia abajo desde por encima de una columna que forma la memoria 31 (en la dirección de la columna) comenzando con una columna del lado izquierdo hacia una columna del lado derecho como se ha descrito anteriormente con referencia a la FIG. 16.
Entonces, si la escritura de los bits de código termina con el bit de más abajo en la columna de más a la derecha, entonces los bits de código se leen y suministran a la sección de sustitución 32 en una unidad de 12 bits (mb bits) en la dirección de fila comenzando con la primera fila de todas las columnas que forman la memoria 31.
La sección de sustitución 32 lleva a cabo un proceso de sustitución de sustitución de la posición de 12 bits de código de la memoria 31 según el cuarto método de sustitución y emite los 12 bits obtenidos mediante la sustitución como 12 bits representativos de dos símbolos (b símbolos) de 64QAM, en particular, como 6 bits de símbolo y0 , y1, y2 , y3, y4 e y5 representativos de un símbolo de 64QAM y 6 bits de símbolo y0 , y1, y2, y3, y4 e y5 representativos de un siguiente símbolo.
Aquí, la B de la FIG. 17 ilustra el cuarto método de sustitución del proceso de sustitución por la sección de sustitución 32 de A de la FIG. 17.
Se ha de señalar que donde el múltiplo b es 2 (de manera similar también donde el múltiplo b es igual o más alto que 3), en el proceso de sustitución, mb bits de código se asignan a mb bits de símbolo de b símbolos sucesivos. En la siguiente descripción que incluye una descripción dada con referencia a la FIG. 17, el bit de orden i 1 a partir del bit más significativo de entre los mb bits de símbolo de los b símbolos sucesivos se representa como el bit (bit de símbolo) yi por la conveniencia de la descripción.
Además, qué método de sustitución es óptimo, es decir, qué método de sustitución proporciona la tasa de error mejorada en un camino de comunicación AWGN, difiere dependiendo de la tasa de codificación, la longitud de código y el método de modulación del código LDPC, etc.
Ahora, se describe con referencia a las FIG. 18 a 20 un intercalado de paridad mediante el intercalador de paridad 23 de la FIG. 8.
La FIG. 18 muestra (parte de) un gráfico de Tanner de la matriz de comprobación de paridad del código LDPC. Si una pluralidad de (bits de código que corresponden a) nodos variables que se conectan a un nodo de comprobación tal como dos nodos variables sufren de un error tal como borrado al mismo tiempo como se muestra en la FIG. 18, entonces el nodo de comprobación devuelve un mensaje de una probabilidad igual que representa que la probabilidad de que el valor pueda ser 0 y la probabilidad de que el valor pueda ser 1 son iguales una a otra para todos los nodos variables que se conectan al nodo de comprobación. Por lo tanto, si una pluralidad de nodos variables que se conectan al mismo nodo de comprobación se colocan en un estado de borrado o similar al mismo tiempo, entonces se deteriora el rendimiento en la decodificación.
De paso, un código LDPC emitido desde la sección de codificación LDPC 21 de la FIG. 8 y prescrito en el estándar DVB-S.2 es un código IRA, y la matriz de paridad Ht de la matriz de comprobación de paridad H tiene una estructura de escalera como se muestra en la FIG. 10.
La FIG. 19 ilustra una matriz de paridad Ht que tiene una estructura de escalera y un gráfico de Tanner que corresponde a la matriz de paridad Ht .
En particular, A de la FIG. 19 ilustra una matriz de paridad Ht que tiene una estructura de escalera y B de la FIG. 19 muestra un gráfico de Tanner que corresponde a la matriz de paridad Ht de A de la FIG. 19.
Donde la matriz de paridad Ht tiene una estructura de escalera, en el gráfico de Tanner de la matriz de paridad Ht, nodos variables del código LDPC que corresponden a una columna de un elemento de la matriz de paridad Ht que tiene el valor de 1 y cuyo mensaje se determina usando bits de código adyacentes (bits de paridad) se conectan al mismo nodo de comprobación.
Por consiguiente, si los bits de paridad adyacentes descritos anteriormente se colocan en un estado de error por errores de ráfaga, borrado o similares, entonces dado que un nodo de comprobación que se conecta a una pluralidad de nodos variables que corresponden a la pluralidad de bits de paridad que han llegado a ser un error (nodos variables cuyo mensaje ha de ser determinado usando bits de paridad) devuelve un mensaje de una probabilidad igual que representa que la probabilidad de que el valor pueda ser 0 y la probabilidad de que el valor sea 1 pueden ser iguales una a la otra para los nodos variables que se conectan con el nodo de comprobación, se deteriora el rendimiento de la decodificación. Entonces, donde la longitud de ráfaga (número de bits que se hacen un error por una ráfaga) es grande, el rendimiento de la decodificación se deteriora aún más.
Por lo tanto, con el fin de evitar el deterioro en el rendimiento de decodificación descrito anteriormente, el intercalador de paridad 23 (FIG. 8) lleva a cabo el intercalado de intercalar bits de paridad del código LDPC desde la sección de codificación LDPC 21 a posiciones de otros bits de paridad.
La FIG. 20 ilustra una matriz de paridad Ht de una matriz de comprobación de paridad H que corresponde al código LDPC después del intercalado de paridad llevado a cabo por el intercalador de paridad 23 de la FIG. 8.
Aquí, la matriz de información Ha de la matriz de comprobación de paridad H que corresponde al código LDPC prescrito en el estándar DVB-S.2 y emitido desde la sección de codificación LDPC 21 tiene una estructura cíclica. La estructura cíclica significa una estructura en donde una cierta columna coincide con otra columna en un estado operado cíclicamente (rotación) e incluye, por ejemplo, una estructura en donde, para cada P columnas, las posiciones del valor 1 en las filas de las P columnas coinciden con las posiciones a las que la primera de las P columnas se desplaza cíclicamente en la dirección de columna en un valor que aumenta en proporción a un valor q obtenido dividiendo la longitud de paridad M. En lo que sigue, el número de P columnas en una estructura cíclica se conoce en lo sucesivo adecuadamente como un número de columna unidad de la estructura cíclica.
Como código LDPC prescrito en el estándar DVB-S.2 y emitido desde la sección de codificación LDPC 21, están disponibles dos códigos LDPC incluyendo aquéllos cuya longitud de código N es 64.800 bits y 16.200 bits como se ha descrito anteriormente con referencia a la FIG. 11.
Ahora, si se pone atención al código LDPC cuya longitud de código N es 64.800 bits de los dos códigos LDPC diferentes cuya longitud de código N es 64.800 bits y 16.200 bits, entonces están disponibles once tasas de codificación diferentes como la tasa de codificación del código LDPC cuya longitud de código N es 64.800 bits como se ha descrito anteriormente con referencia a la FIG. 11.
Con respecto a los códigos LDPC cuya longitud de código N es 64.800 bits y que tienen las once tasas de codificación diferentes, está prescrito en el estándar DVB-S.2 que el número de columnas P de la estructura cíclica se prescribe a 360 que es uno de los divisores de la longitud de paridad M excepto 1 y M.
Además, con respecto a los códigos LDPC cuya longitud de código N es 64.800 bits y que tienen las once tasas de codificación diferentes, la longitud de paridad M tiene un valor distinto de números primos y representado por una expresión M = q x P = q x 360 usando el valor q que es diferente dependiendo de la tasa de codificación. Por consiguiente, también el valor q es uno de los divisores de la longitud de paridad M excepto 1 y M de manera similar al número de columnas P de la estructura cíclica y se obtiene dividiendo la longitud de paridad M por el número de columnas P de la estructura cíclica (el producto de P y q que son divisores de la longitud de paridad M es la longitud de paridad M).
Donde la longitud de información se representa por K y un número entero mayor que 0 pero menor que P se representa por x mientras que un número entero mayor que 0 pero menor que q se representa por y, el intercalador de paridad 23 intercala, como intercalado de paridad, el bit de código de orden K+qx+y+1 de entre los bits de paridad que son los bits de orden K+1 a K+M (K M = N) del código LDPC desde la sección de codificación LDPC 21 a la posición del bit de código de orden K+Py+x+1.
Según tal intercalado de paridad, dado que los (bits de paridad que corresponden a) nodos variables que se conectan al mismo nodo de comprobación están separados por una distancia que corresponde al número de columnas P de la estructura cíclica, aquí, por 360 bits, donde la longitud de ráfaga es menor que 360 bits, se puede evitar tal situación de que una pluralidad de nodos variables que se conectan al mismo nodo de comprobación se representen erróneos al mismo tiempo. Como resultado, se puede mejorar la tolerancia a un error de ráfaga.
Se ha de señalar que el código LDPC después del intercalado de paridad por el cual el bit de código de orden K+qx+y+1 se intercala a la posición del bit de código de orden K+Py+x+1 coincide con el código LDPC de una matriz de comprobación de paridad (en lo sucesivo conocida también como matriz de comprobación de paridad de conversión) obtenida mediante una sustitución de columnas de sustitución de la columna de orden K+qx+y+1 de la matriz de comprobación de paridad H original a la columna de orden K+Py+x+1.
Además, en la matriz de paridad de la matriz de comprobación de paridad de conversión, una estructura seudocíclica cuya unidad es P columnas (en la FIG. 20, 360 columnas) aparece como se ve en la FIG. 20.
Aquí, la estructura seudocíclica significa una estructura que tiene una parte que tiene una estructura cíclica excepto parte de la misma. En una columna de comprobación de paridad de conversión obtenida aplicando una sustitución de columnas que corresponde al intercalado de paridad para la matriz de comprobación de paridad del código LDPC prescrito en el estándar DVB-S.2, una parte de 360 filas x 360 columnas (matriz de desplazamiento descrita en lo sucesivo) en una parte de la esquina derecha le falta un elemento de 1 (que tiene el valor de 0). Por lo tanto, la matriz de comprobación de paridad de conversión no tiene una estructura cíclica (completa) sino que tiene una estructura seudocíclica.
Se ha de señalar que la matriz de comprobación de paridad de conversión de la FIG. 20 es una matriz a la que también una sustitución de filas (sustitución de filas) para configurar la matriz de comprobación de paridad de conversión de una matriz de configuración descrita en lo sucesivo se aplica a la matriz de comprobación de paridad H original además de la sustitución de columnas que corresponde al intercalado de paridad.
Ahora, el intercalado de torsión de columna como un proceso de reordenación por el intercalador de torsión de columna 24 de FIG. 8 se describe con referencia a FIG. 21 a 24.
En el aparato de transmisión 11 de la FIG. 8, dos o más de los bits de código del código LDPC se transmiten como un símbolo como se ha descrito anteriormente con el fin de mejorar la eficiencia de utilización de frecuencias. En particular, por ejemplo, donde dos bits de los bits de código se usan para formar un símbolo, por ejemplo, se usa QPSK como el método de modulación, pero donde se usan 4 bits de los bits de código para formar un símbolo, por ejemplo, se usa 16QAM como el método de modulación.
Donde dos o más unos de los bits de código se transmiten como un símbolo de esta manera, si ocurre un borrado o similar con cierto símbolo, la totalidad de los bits de código (asignados a los bits de símbolo) del símbolo llegan a ser un error (borrado).
Por consiguiente, con el fin de disminuir la probabilidad de que una pluralidad de (bits de código que corresponden a) nodos variables que se conectan al mismo nodo de comprobación puedan sufrir de borrado al mismo tiempo para mejorar el rendimiento en la decodificación, es necesario evitar que los nodos variables que corresponden a los bits de código de un símbolo se conecten al mismo nodo de comprobación.
Mientras tanto, en la matriz de comprobación de paridad H de un código LDPC prescrito en el estándar DVB-S.2 y emitido desde la sección de codificación LDPC 21, la matriz de información Ha tiene una estructura cíclica y la matriz de paridad Ht tiene una estructura de escalera como se ha descrito anteriormente. Entonces, en una matriz de comprobación de paridad de conversión que es una matriz de comprobación de paridad del código LDPC después de un intercalado de paridad, una estructura cíclica (con precisión, una estructura seudocíclica como se ha descrito anteriormente) aparece también en la matriz de paridad como se describe en la FIG. 20.
La FIG. 21 muestra una matriz de comprobación de paridad de conversión.
En particular, A de la FIG. 21 ilustra una matriz de comprobación de paridad de conversión de una matriz de comprobación de paridad H que tiene una longitud de código N de 64.800 bits y una tasa de codificación (r) de 3/4. En A de la FIG. 21, la posición de un elemento que tiene el valor de 1 en la matriz de comprobación de paridad de conversión se indica por un punto ().
En B de la FIG. 21, un proceso llevado a cabo por el demultiplexor 25 (FIG. 8) para el código LDPC de la matriz de comprobación de paridad de conversión de A de la FIG. 21, es decir, el código LDPC después del intercalado de paridad.
En B de la FIG. 21, los bits de código del código LDPC después del intercalado de paridad se escriben en la dirección de columna en cuatro columnas que forman la memoria 31 del demultiplexor 25 usando 16QAM como el método de modulación.
Los bits de código escritos en la dirección de columna en las cuatro columnas que forman la memoria 31 se leen en la dirección de fila en una unidad de 4 bits que hacen un símbolo.
En este caso, los 4 bits de código B0 , B1 , B2 y B3 que hacen un símbolo algunas veces hacen bits de código que corresponden a 1 e incluidos en una fila arbitraria de la matriz de comprobación de paridad después de la conversión de A de la FIG. 21, y en este caso, los nodos variables que corresponden a los bits de código B0 , B1, B2 y B3 se conectan al mismo nodo de comprobación.
Por consiguiente, donde los 4 bits de código B0, B1, B2 y B3 de un símbolo llegan a ser los bits de código que corresponden a 1 e incluidos en una fila arbitraria de la matriz de comprobación de paridad de conversión, si el borrado ocurre con el símbolo, entonces el mismo nodo de comprobación al cual están conectados los nodos variables que corresponden a los bits de código B0, B1, B2 y B3 no puede determinar un mensaje adecuado. Como resultado, se deteriora el rendimiento en la decodificación.
También con respecto a las tasas de decodificación distintas de la tasa de codificación de 3/4, una pluralidad de bits de código que corresponden a una pluralidad de nodos variables que se conectan al mismo nodo de comprobación algunas veces hacen un símbolo de 16QAM de manera similar.
Por lo tanto, el intercalador de torsión de columna 24 lleva a cabo un intercalado de torsión de columna en donde los bits de código del código LDPC después del intercalado de paridad desde el intercalador de paridad 23 se intercalan de manera que una pluralidad de bits de código que corresponden a 1 e incluidos en una fila arbitraria de la matriz de comprobación de paridad de conversión no se incluyen en un símbolo.
La FIG. 22 es una vista que ilustra el intercalado de torsión de columna.
En particular, la FIG. 22 ilustra la memoria 31 (FIG. 16 y 17) del demultiplexor 25.
La memoria 31 tiene una capacidad de almacenamiento para almacenar mb bits en la dirección de columna (vertical) y almacena N/ (mb) bits en la dirección de fila (horizontal) e incluye mb columnas como se ha descrito en FIG. 16. Entonces, el intercalador de torsión de columna 24 escribe los bits de código del código LDPC en la dirección de columna en la memoria 31 y controla la posición de inicio de escritura cuando los bits de código se leen en la dirección de fila para llevar a cabo el intercalado de torsión de columna.
En particular, el intercalador de torsión de columna 24 cambia adecuadamente la posición de inicio de escritura en la que la escritura de bits de código ha de ser iniciada para cada una de una pluralidad de columnas de modo que una pluralidad de bits de código leídos en la dirección de fila y usados para hacer un símbolo puedan no llegar a ser bits de código que corresponden a 1 e incluidos en una fila arbitraria de la matriz de comprobación de paridad de conversión (reordena los bits de código del código LDPC de manera que una pluralidad de bits de código que corresponden a 1 e incluidos en una fila arbitraria de la matriz de comprobación de paridad pueda no ser incluida en el mismo símbolo).
Aquí, la FIG. 22 muestra un ejemplo de una configuración de la memoria 31 donde el método de modulación es 16QAM y además el múltiplo b descrito anteriormente con referencia a la FIG. 16 es 1. Por consiguiente, el número de bits m de los bits de código de un código LDPC a ser un símbolo es 4 bits, y la memoria 31 está formada de 4 (= mb) columnas.
El intercalador de torsión de columna 24 (en lugar del demultiplexor 25 mostrado en la FIG. 16) lleva a cabo la escritura de los bits de código del código LDPC en una dirección hacia abajo (dirección de columna) desde arriba en las cuatro columnas que forman la memoria 31 comenzando con una columna del lado izquierdo hacia una columna del lado derecho.
Entonces, cuando la escritura de los bits de código termina en la columna de más a la derecha, el intercalador de torsión de columna 24 lee los bits de código en una unidad de 4 bits (mb bits) en la dirección de fila comenzando con la primera fila de todas las columnas que forman la memoria 31 y emite los bits de código como un código LDPC después del intercalado de torsión de columna a la sección de sustitución 32 (FIG. 16 y 17) del demultiplexor 25. No obstante, si la dirección de la posición (la más alta) de cabecera de cada columna se representa por 0 y las direcciones de las posiciones en la dirección de columna se representan por números enteros de un orden ascendente, entonces el intercalador de torsión de columna 24 fija, para la columna de más a la izquierda, la posición de inicio de escritura a la posición cuya dirección es 0; fija, para la segunda columna (desde la izquierda), la posición de inicio de escritura a la posición cuya dirección es 2; fija, para la tercera columna, la posición de inicio de escritura a la posición cuya dirección es 4; y fija, para la cuarta columna, la posición de inicio de escritura a la posición cuya dirección es 7.
Se ha de señalar que, con respecto a las columnas para las cuales la posición de inicio de escritura es cualquier otra posición distinta de la posición cuya dirección es 0, después de que los bits de código se escriben hacia abajo a la posición más baja, la posición de escritura vuelve a la parte superior (posición cuya dirección es 0) y se lleva a cabo una escritura hacia abajo a una posición inmediatamente anterior a la posición de inicio de escritura. A partir de entonces, se lleva a cabo una escritura en la siguiente columna (derecha).
Llevando a cabo tal intercalado de torsión de columna como se ha descrito anteriormente, se puede evitar tal situación de que una pluralidad de bits de código que corresponden a una pluralidad de nodos variables que se conectan al mismo nodo de comprobación se hagan un símbolo de 16QAM (incluido en el mismo símbolo) con respecto a los códigos LDPC de todas las tasas de codificación cuya longitud de código N es 64.800 como se ha prescrito en el estándar DVB-S.2, y como resultado, se puede mejorar el rendimiento en la decodificación en un camino de comunicación que proporciona borrado.
La FIG. 23 ilustra el número de columnas de la memoria 31 necesario para el intercalado de torsión de columna y la dirección de la posición de inicio de escritura para cada método de modulación con respecto a los códigos LDPC de las once tasas de codificación diferentes que tienen la longitud de código N de 64.800 como se ha prescrito en el estándar DVB-S.2.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta QPSK como el método de modulación, el número de bits m de un símbolo es 2 bits, según la FIG. 23, la memoria 31 tiene dos columnas para almacenar 2 x 1 (= mb) bits en la dirección de fila y almacena 64.800/ (2 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las dos columnas de la memoria 31 se fija a la posición cuya dirección es 0, y la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 2.
Se ha de señalar que el múltiplo b es 1, por ejemplo, donde se adopta uno del primer al tercer métodos de sustitución de la FIG. 16 como el método de sustitución del proceso de sustitución del demultiplexor 25 (FIG. 8) o en un caso similar.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta QPSK como el método de modulación, el número de bits m de un símbolo es 2 bits, según la FIG. 23, la memoria 31 tiene cuatro columnas para almacenar 2 x 2 bits en la dirección de fila y almacena 64.800/ (2 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las cuatro columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 4, y la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 7.
Se ha de señalar que el múltiplo b es 2, por ejemplo, donde se adopta el cuarto método de sustitución de la FIG. 17 como el método de sustitución del proceso de sustitución del demultiplexor 25 (FIG. 8).
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 16QAM como el método de modulación, el número de bits m de un símbolo es 4 bits, según la FIG. 23, la memoria 31 tiene cuatro columnas para almacenar 4 x 1 bits en la dirección de fila y almacena 64.800/ (4 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las cuatro columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 4, y la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 7.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta 16QAM como el método de modulación, el número de bits m de un símbolo es 4 bits, según la FIG. 23, la memoria 31 tiene ocho columnas para almacenar 4 x 2 bits en la dirección de fila y almacena 64.800/ (4 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las ocho columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 7, y la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 7.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 64QAM como el método de modulación, el número de bits m de un símbolo es 6 bits, según la FIG. 23, la memoria 31 tiene seis columnas para almacenar 6 x 1 bits en la dirección de fila y almacena 64.800/ (6 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las seis columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 9, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 10, y la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 13.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta 64QAM como el método de modulación, el número de bits m de un símbolo es 6 bits, según la FIG. 23, la memoria 31 tiene doce columnas para almacenar 6 x 2 bits en la dirección de fila y almacena 64.800/ (6 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las doce columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura de la undécima columna se fija a la posición cuya dirección es 8, y la posición de inicio de escritura para la duodécima columna se fija a la posición cuya dirección es 9.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 256QAM como el método de modulación, el número de bits m de un símbolo es 8 bits, según la FIG. 23, la memoria 31 tiene ocho columnas para almacenar 8 x 1 bits en la dirección de fila y almacena 64.800/ (8 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las ocho columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 7, y la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 7.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta 256QAM como el método de modulación, el número de bits m de un símbolo es 8 bits, según la FIG. 23, la memoria 31 tiene dieciséis columnas para almacenar 8 x 2 bits en la dirección de fila y almacena 64.800/ (8 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las dieciséis columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 15, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 16, la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 20, la posición de inicio de escritura para la undécima columna se fija a la posición cuya dirección es 22, la posición de inicio de escritura para la duodécima columna se fija a la posición cuya dirección es 22, la posición de inicio de escritura para la decimotercera columna se fija a la posición cuya dirección es 27, la posición de inicio de escritura para la decimocuarta columna se fija a la posición cuya dirección es 27, la posición de inicio de escritura para la decimoquinta columna se fija a la posición cuya dirección es 28, y la posición de inicio de escritura para la decimosexta columna se fija a la posición cuya dirección es 32.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 1024QAM como el método de modulación, el número de bits m de un símbolo es 10 bits, según la FIG. 23, la memoria 31 tiene diez columnas para almacenar 10 x 1 bits en la dirección de fila y almacena 64.800/ (10 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las diez columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 6, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 8, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 11, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 13, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 15, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 17, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 18, y la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 20.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta 1024QAM como el método de modulación, el número de bits m de un símbolo es 10 bits, según la FIG. 23, la memoria 31 tiene veinte columnas para almacenar 10 x 2 bits en la dirección de fila y almacena 64.800/ (10 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las veinte columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 1, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 6, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 6, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 9, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 13, la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 14, la posición de inicio de escritura para la undécima columna se fija a la posición cuya dirección es 14, la posición de inicio de escritura para la duodécima columna se fija a la posición cuya dirección es 16, la posición de inicio de escritura para la decimotercera columna se fija a la posición cuya dirección es 21, la posición de inicio de escritura para la decimocuarta columna se fija a la posición cuya dirección es 21, la posición de inicio de escritura para la decimoquinta columna se fija a la posición cuya dirección es 23, la posición de inicio de escritura para la decimosexta columna se fija a la posición cuya dirección es 25, la posición de inicio de escritura para la decimoséptima columna se fija a la posición cuya dirección es 25, la posición de inicio de escritura para la decimoctava columna se fija a la posición cuya dirección es 26, la posición de inicio de escritura para la decimonovena columna se fija a la posición cuya dirección es 28, y la posición de inicio de escritura para la vigésima columna se fija a la posición cuya dirección es 30.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 4096QAM como el método de modulación, el número de bits m de un símbolo es 12 bits, según la FIG. 23, la memoria 31 tiene doce columnas para almacenar 12 x 1 bits en la dirección de fila y almacena 64.800/ (12 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las doce columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura para la undécima columna se fija a la posición cuya dirección es 8, y la posición de inicio de escritura para la duodécima columna se fija a la posición cuya dirección es 9.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta 4096QAM como el método de modulación, el número de bits m de un símbolo es 12 bits, según la FIG. 23, la memoria 31 tiene veinticuatro columnas para almacenar 12 x 2 bits en la dirección de fila y almacena 64.800/ (12 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las veinticuatro columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 8, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 8, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 8, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 8, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 10, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 10, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 10, la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 12, la posición de inicio de escritura para la undécima columna se fija a la posición cuya dirección es 13, la posición de inicio de escritura para la duodécima columna se fija a la posición cuya dirección es 16, la posición de inicio de escritura para la decimotercera columna se fija a la posición cuya dirección es 17, la posición de inicio de escritura para la decimocuarta columna se fija a la posición cuya dirección es 19, la posición de inicio de escritura para la decimoquinta columna se fija a la posición cuya dirección es 21, la posición de inicio de escritura para la decimosexta columna se fija a la posición cuya dirección es 22, la posición de inicio de escritura para la decimoséptima columna se fija a la posición cuya dirección es 23, la posición de inicio de escritura para la decimoctava columna se fija a la posición cuya dirección es 26, la posición de inicio de escritura para la decimonovena columna se fija a la posición cuya dirección es 37, la posición de inicio de escritura para la vigésima columna se fija a la posición cuya dirección es 39, la posición de inicio de escritura para la vigesimoprimera columna se fija a la posición cuya dirección es 40, la posición de inicio de escritura para la vigesimosegunda columna se fija a la posición cuya dirección es 41, la posición de inicio de escritura para la vigesimotercera columna se fija a la posición cuya dirección es 41, y la posición de inicio de escritura para la vigesimocuarta columna se fija a la posición cuya dirección es 41.
La FIG. 24 indica el número de columnas de la memoria 31 necesario para intercalado de torsión de columna y la dirección de la posición de inicio de escritura para cada método de modulación con respecto a los códigos LDPC de las 10 tasas de codificación diferentes que tienen la longitud de código N de 16.200 como se ha prescrito en el estándar DVB-S.2.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta QPSK como el método de modulación, el número de bits m de un símbolo es 2 bits, según la FIG. 24, la memoria 31 tiene dos columnas para almacenar 2 x 1 bits en la dirección de fila y almacena 16.200/ (2 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las dos columnas de la memoria 31 se fija a la posición cuya dirección es 0, y la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta QPSK como el método de modulación, el número de bits m de un símbolo es 2 bits, según la FIG. 24, la memoria 31 tiene cuatro columnas para almacenar 2 x 2 bits en la dirección de fila y almacena 16.200/ (2 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las cuatro columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 3, y la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 3.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 16QAM como el método de modulación, el número de bits m de un símbolo es 4 bits, según la FIG. 24, la memoria 31 tiene cuatro columnas para almacenar 4 x 1 bits en la dirección de fila y almacena 16.200/ (4 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las cuatro columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 3, y la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 3.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta 16QAM como el método de modulación, el número de bits m de un símbolo es 4 bits, según la FIG. 24, la memoria 31 tiene ocho columnas para almacenar 4 x 2 bits en la dirección de fila y almacena 16.200/ (4 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las ocho columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 1, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 20, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 20, y la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 21.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 64QAM como el método de modulación, el número de bits m de un símbolo es 6 bits, según la FIG. 24, la memoria 31 tiene seis columnas para almacenar 6 x 1 bits en la dirección de fila y almacena 16.200/ (6 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las seis columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 7, y la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 7.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta 64QAM como el método de modulación, el número de bits m de un símbolo es 6 bits, según la FIG. 24, la memoria 31 tiene doce columnas para almacenar 6 x 2 bits en la dirección de fila y almacena 16.200/ (6 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las doce columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 6, la posición de inicio de escritura para la undécima columna se fija a la posición cuya dirección es 7, y la posición de inicio de escritura para la duodécima columna se fija a la posición cuya dirección es 7.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 256QAM como el método de modulación, el número de bits m de un símbolo es 8 bits, según la FIG. 24, la memoria 31 tiene ocho columnas para almacenar 8 x 1 bits en la dirección de fila y almacena 16.200/ (8 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las ocho columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 1, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 20, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 20, y la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 21.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 1024QAM como el método de modulación, el número de bits m de un símbolo es 10 bits, según la FIG. 24, la memoria 31 tiene diez columnas para almacenar 10 x 1 bits en la dirección de fila y almacena 16.200/ (10 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las diez columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 1, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 4, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 5, y la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 7.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta 1024QAM como el método de modulación, el número de bits m de un símbolo es 10 bits, según la FIG. 24, la memoria 31 tiene veinte columnas para almacenar 10 x 2 bits en la dirección de fila y almacena 16.200/ (10 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las veinte columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la undécima columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la duodécima columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la decimotercera columna se fija a la posición cuya dirección es 5, la posición de inicio de escritura para la decimocuarta columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura para la decimoquinta columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura para la decimosexta columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura para la decimoséptima columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura para la decimoctava columna se fija a la posición cuya dirección es 8, la posición de inicio de escritura para la decimonovena columna se fija a la posición cuya dirección es 8, y la posición de inicio de escritura para la vigésima columna se fija a la posición cuya dirección es 10.
Donde el múltiplo b es 1 y, además, dado que, por ejemplo, se adopta 4096QAM como el método de modulación, el número de bits m de un símbolo es 12 bits, según la FIG. 24, la memoria 31 tiene doce columnas para almacenar 12 x 1 bits en la dirección de fila y almacena 16.200/ (12 x 1) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las doce columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 6, la posición de inicio de escritura para la undécima columna se fija a la posición cuya dirección es 7, y la posición de inicio de escritura para la duodécima columna se fija a la posición cuya dirección es 7.
Donde el múltiplo b es 2 y, además, dado que, por ejemplo, se adopta 4096QAM como el método de modulación, el número de bits m de un símbolo es 12 bits, según la FIG. 24, la memoria 31 tiene veinticuatro columnas para almacenar 12 x 2 bits en la dirección de fila y almacena 16.200/ (12 x 2) bits en la dirección de columna.
Entonces, la posición de inicio de escritura para la primera de las veinticuatro columnas de la memoria 31 se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la segunda columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la tercera columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la cuarta columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la quinta columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la sexta columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la séptima columna se fija a la posición cuya dirección es 0, la posición de inicio de escritura para la octava columna se fija a la posición cuya dirección es 1, la posición de inicio de escritura para la novena columna se fija a la posición cuya dirección es 1, la posición de inicio de escritura para la décima columna se fija a la posición cuya dirección es 1, la posición de inicio de escritura para la undécima columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la duodécima columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la decimotercera columna se fija a la posición cuya dirección es 2, la posición de inicio de escritura para la decimocuarta columna se fija a la posición cuya dirección es 3, la posición de inicio de escritura para la decimoquinta columna se fija a la posición cuya dirección es 7, la posición de inicio de escritura para la decimosexta columna se fija a la posición cuya dirección es 9, la posición de inicio de escritura para la decimoséptima columna se fija a la posición cuya dirección es 9, la posición de inicio de escritura para la decimoctava columna se fija a la posición cuya dirección es 9, la posición de inicio de escritura para la decimonovena columna se fija a la posición cuya dirección es 10, la posición de inicio de escritura para la vigésima columna se fija a la posición cuya dirección es 10, la posición de inicio de escritura para la vigesimoprimera columna se fija a la posición cuya dirección es 10, la posición de inicio de escritura para la vigesimosegunda columna se fija a la posición cuya dirección es 10, la posición de inicio de escritura para la vigesimotercera columna se fija a la posición cuya dirección es 10, y la posición de inicio de escritura para la vigesimocuarta columna se fija a la posición cuya dirección es 11.
Ahora, un proceso de transmisión llevado a cabo por el aparato de transmisión 11 de la FIG. 8 se describe con referencia a un diagrama de flujo de la FIG. 25.
La sección de codificación LDPC 21 espera a que se suministren datos de objeto a la misma y, en el paso S101, codifica los datos de objeto en códigos LDPC y suministra los códigos LDCP al intercalador de bits 22. A partir de entonces, el procesamiento avanza al paso S102.
En el paso S102, el intercalador de bits 22 lleva a cabo un intercalado de bits para los códigos LDPC de la sección de codificación LDPC 21 y suministra a la sección de correspondencia 26 un símbolo en el que se simbolizan los códigos LDPC después del intercalado. A partir de entonces, el procesamiento avanza al paso S103.
En particular, en el paso S102, el intercalador de paridad 23 en el intercalador de bits 22 lleva a cabo un intercalado de paridad para los códigos LDPC de la sección de codificación LDPC 21 y suministra los códigos LDPC después del intercalado de paridad al de intercalador de torsión de columna 24.
El intercalador de torsión de columna 24 lleva a cabo un intercalado de torsión de columna para el código LDPC del intercalador de paridad 23 y suministra un resultado del intercalado de torsión de columna al demultiplexor 25. El demultiplexor 25 lleva a cabo un proceso de sustitución de sustitución de los bits de código del código LDPC después del intercalado de torsión de columna por el intercalador de torsión de columna 24 y convirtiendo los bits de código después de la sustitución en bits de símbolo (bits representativos de símbolos) de los símbolos.
Aquí, el proceso de sustitución por el demultiplexor 25 se puede llevar a cabo según el primer al cuarto métodos de sustitución descritos anteriormente con referencia a las FIG. 16 y 17 y además se puede llevar a cabo según una regla de asignación. La regla de asignación es una regla para asignar bits de código de un código LDPC a bits de símbolo representativos de símbolos, y se describen a continuación los detalles de la regla de asignación.
Los símbolos obtenidos por el proceso de sustitución por el demultiplexor 25 se suministran desde el demultiplexor 25 a la sección de correspondencia 26.
En el paso S103, la sección de correspondencia 26 mapea el símbolo desde el demultiplexor 25 a puntos de señal definidos por el método de modulación de modulación ortogonal llevada a cabo por la sección de modulación ortogonal 27 y suministra el símbolo mapeado a la sección de modulación ortogonal 27. Entonces, el procesamiento avanza hasta el paso S104.
En el paso S104, la sección de modulación ortogonal 27 lleva a cabo una modulación ortogonal de una portadora según los puntos de señal de la sección de correspondencia 26. Entonces, el procesamiento avanza al paso S105, en el que se transmite la señal de modulación obtenida como resultado de la modulación ortogonal, después de que se termine el procesamiento.
Se ha de señalar que el proceso de transmisión de la FIG. 25 se lleva a cabo por un conducto repetitivamente. Llevando a cabo el intercalado de paridad y el intercalado de torsión de columna como se ha descrito anteriormente, se puede mejorar la tolerancia a borrado o a errores de ráfaga donde se transmite como un símbolo una pluralidad de bits de código de unos códigos LDPC.
Aquí, mientras que, en la FIG. 8, el intercalador de paridad 23 que es un bloque para llevar a cabo un intercalado de paridad y el intercalador de torsión de columna 24 que es un bloque para llevar a cabo un intercalado de torsión de columna se configuran por separado uno de otro por la conveniencia de la descripción, el intercalador de paridad 23 y el intercalador de torsión de columna 24 se pueden configurar de otro modo integralmente uno con otro.
En particular, tanto el intercalado de paridad como el intercalado de torsión de columna se pueden llevar a cabo escribiendo y leyendo bits de código en y desde una memoria y se pueden representar mediante una matriz para convertir direcciones (direcciones de escritura) en las que la escritura de bits de código ha de ser llevada a cabo en direcciones (direcciones de lectura) a partir de las cuales ha de ser llevada a cabo la lectura de los bits de código. Por consiguiente, si se determina por adelantado una matriz obtenida multiplicando una matriz representativa del intercalado de paridad y una matriz representativa del intercalado de torsión de columna, entonces si se usa la matriz para convertir los bits de código, se puede obtener entonces un resultado cuando se lleva a cabo un intercalado de paridad y entonces los códigos LDPC después del intercalado de paridad se intercalan con torsión de columna.
Además, en adición al intercalador de paridad 23 y al intercalador de torsión de columna 24, también se puede configurar integralmente el demultiplexor 25.
En particular, también el proceso de sustitución llevado a cabo por el demultiplexor 25 se puede representar por una matriz para convertir una dirección de escritura de la memoria 31 para almacenar un código LDPC en una dirección de lectura.
Por consiguiente, si se determina por adelantado una matriz obtenida mediante multiplicación de una matriz representativa del intercalado de paridad, otra matriz representativa del intercalado de torsión de columna y una matriz adicional representativa del proceso de sustitución, entonces el intercalado de paridad, el intercalado de torsión de columna y el proceso de sustitución se pueden llevar a cabo colectivamente por la matriz determinada. Se ha de señalar que es posible llevar a cabo solamente uno o ninguno del intercalado de paridad y del intercalado de torsión de columna.
Ahora, una simulación llevada a cabo con respecto al aparato de transmisión 11 de la FIG. 8 para medir la tasa de error (tasa de error de bits) se describe con referencia a las FIG. 26 a 28.
La simulación se llevó a cabo adoptando un camino de comunicación que tiene una fluctuación cuya D/U es 0 dB. La FIG. 26 muestra un modelo del camino de comunicación adoptado en la simulación.
En particular, A de la FIG. 26 muestra un modelo de la fluctuación adoptada en la simulación.
Mientras tanto, B de la FIG. 26 muestra un modelo de un camino de comunicación que tiene la fluctuación representada por el modelo de A de la FIG. 26.
Se ha de señalar que, en B de la FIG. 26, H representa el modelo de la fluctuación de A de la FIG. 26. Además, en B de la FIG. 26, N representa ICI (Interferencia entre Portadoras), y en la simulación, un valor esperado E[N2 ] de la potencia fue aproximado mediante AWGN.
Las FIG. 27 y 28 ilustran relaciones entre la tasa de error obtenida por la simulación y la frecuencia Doppler fd de la fluctuación.
Se ha de señalar que la FIG. 27 ilustra una relación entre la tasa de error y la frecuencia Doppler fd donde el método de modulación es 16QAM y la tasa de codificación (r) es (3/4) y además el método de sustitución es el primer método de sustitución. Mientras tanto, la FIG. 28 ilustra la relación entre la tasa de error y la frecuencia Doppler fd donde el método de modulación es 64QAM y la tasa de codificación (r) es (5/6) y además el método de sustitución es el primer método de sustitución.
Además, en las FIG. 27 y 28, una curva de línea gruesa indica la relación entre la tasa de error y la frecuencia Doppler fd donde se llevaron a cabo todos del intercalado de paridad, intercalado de torsión de columna y proceso de sustitución, y una curva de línea delgada indica la relación entre la tasa de error y la frecuencia Doppler fd donde solamente se llevó a cabo el proceso de sustitución de entre el intercalado de paridad, el intercalado de torsión de columna y el proceso de sustitución.
En ambas de las FIG. 27 y 28, se puede reconocer que la tasa de error mejora (disminuye) donde se llevan a cabo todos del intercalado de paridad, intercalado de torsión de columna y proceso de sustitución, en lugar de donde solamente se lleva a cabo el proceso de sustitución.
Ahora, se describe además la sección de codificación LDPC 21 de la FIG. 8.
Como se ha descrito con referencia a la FIG. 11, en el estándar DVB-S.2, se prescribe la codificación LDPC de las dos longitudes de código N diferentes de 64.800 bits y 16.200 bits.
Y para el código LDPC cuya longitud de código N es 64.800 bits, se prescriben las 11 tasas de codificación 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, 8/9 y 9/10, y para el código l DpC cuya longitud de código N es 16.200 bits, se prescriben las 10 tasas de codificación 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6 y 8/9 (B de la FIG. 11).
La sección de codificación LDPC 21 lleva a cabo la codificación (codificación de corrección de error) en códigos LDPC de las diferentes tasas de codificación cuya longitud de código N es 64.800 bits o 16.200 bits según una matriz de comprobación de paridad H preparada para cada longitud de código N y para cada tasa de codificación. La FIG. 29 muestra un ejemplo de una configuración de la sección de codificación LDPC 21 de la FIG. 8.
La sección de codificación LDPC 21 incluye un bloque de procesamiento de codificación 601 y un bloque de almacenamiento 602.
El bloque de procesamiento de codificación 601 incluye una parte de ajuste de tasa de codificación 611, una parte de lectura de tabla de valores iniciales 612, una parte de producción de matriz de comprobación de paridad 613, una parte de lectura de bits de información 614, una parte de operación matemática de paridad de codificación 615, y una parte de control 616, y lleva a cabo la codificación LDPC de datos de objeto suministrados a la sección de codificación LDPC 21 y suministra un código LDPC obtenido como resultado de la codificación LDPC al intercalador de bits 22 (FIG. 8).
En particular, la parte de ajuste de tasa de codificación 611 fija una longitud de código N y una tasa de codificación para códigos LDPC, por ejemplo, en respuesta a una operación de un operador.
La parte de lectura de tabla de valores iniciales 612 lee una tabla de valores iniciales de matriz de comprobación de paridad descrita en lo sucesivo, que corresponde a la longitud de código N y la tasa de codificación fijada por la parte de ajuste de tasa de codificación 611 del bloque de almacenamiento 602.
La parte de producción de matriz de comprobación de paridad 613 coloca, en base a la tabla de valores iniciales de matriz de comprobación de paridad leída por la parte de lectura de tabla de valores iniciales 612, elementos del valor 1 de una matriz de información Ha que corresponde a una longitud de información K (= longitud de código N -longitud de paridad M) que corresponde a la longitud de código N y la tasa de codificación fijada por la parte de ajuste de tasa de codificación 611 en un periodo de 360 columnas (número de columnas unidad P de la estructura cíclica) en la dirección de columna para producir una matriz de comprobación de paridad H, y almacena la matriz de comprobación de paridad H en el bloque de almacenamiento 602.
La parte de lectura de bits de información 614 lee (extrae) bits de información para la longitud de información K a partir de los datos de objeto suministrados a la sección de codificación LDPC 21.
La parte de operación matemática de paridad de codificación 615 lee la matriz de comprobación de paridad H producida por la parte de producción de matriz de comprobación de paridad 613 del bloque de almacenamiento 602 y calcula los bits de paridad que corresponden a los bits de información leídos por la parte de lectura de bits de información 614 según una expresión predeterminada para producir una palabra de código (código LDPC).
La parte de control 616 controla los bloques que componen el bloque de procesamiento de codificación 601.
En el bloque de almacenamiento 602, se almacena una pluralidad de tablas de valores iniciales de matriz de comprobación de paridad, etc., que corresponden individualmente con las múltiples tasas de codificación ilustradas en la FIG. 11 con respecto a las individuales de las dos longitudes de código N de 64.800 bits y 16.200 bits. Además, el bloque de almacenamiento 602 almacena temporalmente los datos necesarios para procesamiento del bloque de procesamiento de codificación 601.
La FIG. 30 es un diagrama de flujo que ilustra un proceso de recepción llevado a cabo por el aparato de recepción 12 de la FIG. 29.
En el paso S201, la parte de ajuste de tasa de codificación 611 determina (fija) una longitud de código N y una tasa de codificación r usada para llevar a cabo la codificación LDPC.
En el paso S202, la parte de lectura de tabla de valores iniciales 612 lee desde el bloque de almacenamiento 602 una tabla de valores iniciales de matriz de comprobación de paridad predeterminada que corresponde a la longitud de código N y la tasa de codificación r determinada por la parte de ajuste de tasa de codificación 611.
En el paso S203, la parte de producción de matriz de comprobación de paridad 613 determina (produce) una matriz de comprobación de paridad H para un código LDPC que tiene la longitud de código N y la tasa de codificación r determinada por la parte de ajuste de tasa de codificación 611 usando la tabla de valores iniciales de matriz de comprobación de paridad leída desde el bloque de almacenamiento 602 por la parte de lectura de tabla de valores iniciales 612, y suministra la matriz de comprobación de paridad H al bloque de almacenamiento 602 para ser almacenada.
En el paso S204, la parte de lectura de bits de información 614 lee los bits de información de la longitud de información K (= N x r) que corresponde a la longitud de código N y la tasa de codificación r determinada por la parte de ajuste de tasa de codificación 611 de entre los datos de objeto suministrados a la sección de codificación LDPC 21 y lee la matriz de comprobación de paridad H determinada por la parte de producción de matriz de comprobación de paridad 613 del bloque de almacenamiento 602, y suministra los bits de información y la matriz de comprobación de paridad H a la parte de operación matemática de paridad de codificación 615.
En el paso S205, la parte de operación matemática de paridad de codificación 615 opera sucesivamente de forma matemática un bit de paridad de una palabra de código c que satisface una expresión (8).
HcT = 0 ... (8)
En la expresión (8), c indica un vector de fila como la palabra de código (código LDPC) y cT indica la inversión del vector de fila c.
Aquí, como se ha descrito anteriormente, donde, desde dentro del vector de fila c como un código LDPC (una palabra de código), una parte que corresponde a los bits de información se representa por un vector de fila A y una parte que corresponde a los bits de paridad se representa por un vector de fila T, el vector de fila c se puede representar mediante una expresión c = [A|T] del vector de fila A como los bits de información y el vector de fila T como los bits de paridad.
Es necesario que la matriz de comprobación de paridad H y el vector de fila c = [A|T] como código LDPC satisfagan la expresión HcT = 0, y donde la matriz de paridad Ht de la matriz de comprobación de paridad H = [Ha | Ht] tenga una estructura de escalera mostrada en la FIG. 10, el vector de fila T como bits de paridad que configura el vector de fila c = [A|T] que satisface la expresión HcT = 0 se puede determinar secuencialmente fijando los elementos de cada fila a cero en orden comenzando con los elementos en la primera fila del vector de columna HcT en la expresión HcT = 0.
Si la parte de operación matemática de paridad de codificación 615 determina un bit de paridad T para un bit de información A, entonces emite una palabra de código c = [A|T] representada por el bit de información A y el bit de paridad T como resultado de la codificación LDPC del bit de información A.
Se ha de señalar que la palabra de código c tiene 64.800 bits o 16.200 bits.
A partir de entonces, en el paso S206, la parte de control 616 decide si se debería terminar o no la codificación LDPC. Si se decide en el paso S206 que no se debería terminar la codificación LDPC, es decir, por ejemplo, si quedan allí datos de objeto que han de ser codificados LDPC, entonces el procesamiento vuelve al paso S201, y a partir de entonces, se repiten los procesos en los pasos S201 a S206.
Por otra parte, si se decide en el paso S206 que se debería terminar la codificación LDPC, es decir, por ejemplo, si no quedan allí datos de objeto que han de ser codificados LDPC, la sección de codificación LDPC 21 termina el procesamiento.
Como se ha descrito anteriormente, se preparan las tablas de valores iniciales de matriz de comprobación de paridad que corresponden a las longitudes de código N y las tasa de codificación r, y la sección de codificación LDPC 21 lleva a cabo la codificación LDPC para una longitud de código N predeterminada y una tasa de codificación r predeterminada usando una matriz de comprobación de paridad H producida a partir de una tabla de valores iniciales de matriz de comprobación de paridad que corresponde a la longitud de código N predeterminada y la tasa de codificación r predeterminada.
Cada tabla de valores iniciales de matriz de comprobación de paridad es una tabla que representa la posición de elementos del valor 1 de la matriz de información HA que corresponde a la longitud de información K que corresponde a la longitud de código N y la tasa de codificación r del código LDPC de la matriz de comprobación de paridad H (código LDPC definido por la matriz de comprobación de paridad H) para cada 360 filas (número de columnas unidad P de la estructura periódica), y se produce por adelantado para una matriz de comprobación de paridad H para cada longitud de código N y cada tasa de codificación r.
Las FIG. 31 a 58 ilustran algunas de las tablas de valores iniciales de matriz de comprobación de paridad prescritas en el estándar DVB-S.2.
En particular, la FIG. 31 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 2/3.
Las FIG. 32 a 34 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 2/3.
Se ha de señalar que la FIG. 33 es una vista que continúa desde la FIG. 32 y la FIG. 34 es una vista que continúa desde la FIG. 33.
La FIG. 35 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 3/4.
Las FIG. 36 a 39 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 3/4.
Se ha de señalar que la FIG. 37 es una vista que continúa desde la FIG. 36 y la FIG. 38 es una vista que continúa desde la FIG. 37. Además, la FIG. 39 es una vista que continúa desde la FIG. 38.
La FIG. 40 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 4/5.
Las FIG. 41 a 44 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 4/5.
Se ha de señalar que la FIG. 42 es una vista que continúa desde la FIG. 41 y la FIG. 43 es una vista que continúa desde la FIG. 42. Además, la FIG. 44 es una vista que continúa desde la FIG. 43.
La FIG. 45 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 5/6.
Las FIG. 46 a 49 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 5/6.
Se ha de señalar que la FIG. 47 es una vista que continúa desde la FIG. 46 y la FIG. 48 es una vista que continúa desde la FIG. 47. Además, la FIG. 49 es una vista que continúa desde la FIG. 48.
La FIG. 50 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 8/9.
Las FIG. 51 a 54 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 8/9.
Se ha de señalar que la FIG. 52 es una vista que continúa desde la FIG. 51 y la FIG. 53 es una vista que continúa desde la FIG. 52. Además, la FIG. 54 es una vista que continúa desde la FIG. 53.
Las FIG. 55 a 58 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 9/10.
Se ha de señalar que la FIG. 56 es una vista que continúa desde la FIG. 55 y la FIG. 57 es una vista que continúa desde la FIG. 56. Además, la FIG. 58 es una vista que continúa desde la FIG. 57.
La parte de producción de matriz de comprobación de paridad 613 (FIG. 29) determina una matriz de comprobación de paridad H de la siguiente manera usando las tablas de valores iniciales de matriz de comprobación de paridad. En particular, la FIG. 59 ilustra un método para determinar una matriz de comprobación de paridad H a partir de una tabla de valores iniciales de matriz de comprobación de paridad.
Se ha de señalar que la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 59 indica la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 2/3 mostrada en la FIG. 31.
Como se ha descrito anteriormente, la tabla de valores iniciales de matriz de comprobación de paridad es una tabla que representa la posición de elementos del valor 1 de una matriz de información HA (FIG. 9) que corresponde a la longitud de información K que corresponde a la longitud de código N y a la tasa de codificación r del código LDPC para cada 360 columnas (para cada número de columnas unidad P de la estructura cíclica), y en la primera fila de la tabla de valores iniciales de matriz de comprobación de paridad, un número de números de fila de elementos del valor 1 en la columna de orden 1 360x (i-1) de la matriz de comprobación de paridad H (números de fila donde el número de fila de la primera fila de la matriz de comprobación de paridad H es 0) igual al número de ponderaciones de columna que tiene la columna de orden 1 360x (i-1).
Aquí, dado que la matriz de paridad Ht (FIG. 9) de la matriz de comprobación de paridad H que corresponde a la longitud de paridad M, se determina como se ilustra en la FIG. 19, según la tabla de valores iniciales de matriz de comprobación de paridad, se determina la matriz de información Ha (FIG. 9) de la matriz de comprobación de paridad H que corresponde a la longitud de información K.
El número de fila k+1 de la tabla de valores iniciales de matriz de comprobación de paridad difiere dependiendo de la longitud de información K.
La longitud de información K y el número de fila k+1 de la tabla de valores iniciales de matriz de comprobación de paridad satisfacen una relación dada por una expresión (9).
K = (k 1) x 360 ... (9)
Aquí, 360 en la expresión (9) es el número de columnas unidad P de la estructura cíclica descrita con referencia a la FIG. 20.
En la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 59, se enumeran 13 valores numéricos en la primera a tercera filas, y se enumeran tres valores numéricos en la cuarta fila a la de orden k+1 (en la FIG. 59, 30a).
Por consiguiente, el número de ponderaciones de columna en la matriz de comprobación de paridad H determinado a partir de la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 59 es 13 en la primera fila a la de orden 1 360x (3-1 )-1, pero es 3 en las filas de orden 1 360x (3-1) a la de orden K.
La primera fila de la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 59 incluye 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481, 3369, 3451,4620 y 2622, y esto indica que, en la primera columna de la matriz de comprobación de paridad H, los elementos en filas de los números de fila de 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481,3369, 3451,4620 y 2622 tienen el valor 1 (y además los otros elementos tienen el valor 0). Mientras tanto, la segunda fila de la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 59 incluye 1, 122, 1516, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971,4358 y 3108, y esto indica que, en la columna de orden 361 (= orden 1+360x (2-1)) de la matriz de comprobación de paridad H, los elementos en las filas de los números de fila de 1, 122, 1546, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971,4358 y 3108 tienen el valor 1.
Como se ha dado anteriormente, la tabla de valores iniciales de matriz de comprobación de paridad representa la posición de elementos del valor 1 de la matriz de información Ha de la matriz de comprobación de paridad H para cada 360 columnas.
Cada una de las columnas de la matriz de comprobación de paridad H distinta de la columna de orden 1+360x (i-1), es decir, cada una de las columnas desde la columna de orden 2+360x (i-1) hasta la de orden 360xi, incluye elementos del valor de 1 obtenidos desplazando cíclicamente los elementos del valor de 1 de la columna de orden 1+360x (i-1) que dependen de la tabla de valores iniciales de matriz de comprobación de paridad periódicamente en la dirección hacia abajo (en dirección hacia abajo de la columna) según la longitud de paridad M .
En particular, por ejemplo, la columna de orden 2+360x (i-1) es una columna obtenida desplazando cíclicamente la columna de orden 1+360x (i-1) en la dirección hacia abajo por M/360 (= q), y la siguiente de orden 3+360x (i-1) es una columna obtenida desplazando cíclicamente la columna de orden 1+360x (i-1) en la dirección hacia abajo por 2 x M/360 (= 2 x q) y luego desplazando cíclicamente la columna desplazada cíclicamente (columna de orden 2+360x (i-1)) en la dirección hacia abajo por M/360 (= q).
Ahora, si se supone que el valor numérico en la columna de orden j (orden j desde la izquierda) en la fila de orden i (fila de orden i desde arriba) de la tabla de valores iniciales de matriz de comprobación de paridad se representa por bi,j y el número de fila del elemento de orden j del valor 1 en la columna de orden w de la matriz de comprobación de paridad H se representa por Hw - j, entonces el número de filas Hw -j del elemento del valor 1 en la columna de orden w que es una columna distinta de la columna de orden 1+360x (i-1) de la matriz de comprobación de paridad H se puede determinar según la siguiente expresión.
Hw -j = mod {hi,j + mod ((w-1), P) x q, M} .(10 )
Aquí, mod (x, y) significa un resto cuando x se divide por y.
Mientras tanto, P es un número de columnas unidad de la estructura cíclica descrita anteriormente y es, por ejemplo, en el estándar DVB-S.2, como se ha descrito anteriormente, 360. Además, q es un valor M/360 obtenido dividiendo la longitud de paridad M por el número de columnas unidad P (= 360) de la estructura cíclica.
La parte de producción de matriz de comprobación de paridad 613 (FIG. 29) especifica el número de filas de los elementos del valor 1 en la columna de orden 1 360x (i-1) de la matriz de comprobación de paridad H a partir de la tabla de valores iniciales de matriz de comprobación de paridad.
Además, la parte de producción de matriz de comprobación de paridad 613 (FIG. 29) determina el número de fila Hw -j del elemento del valor 1 en la columna de orden w que es una columna distinta de la columna de orden 1 360x (i-1) de la matriz de comprobación de paridad H según la expresión (10) y produce una matriz de comprobación de paridad H en la que los elementos de los números de filas obtenidos por lo precedente tienen el valor 1.
De paso, se sabe que el código LDPC que tiene una tasa de codificación de 2/3 prescrita en el estándar DVB-S.2 es inferior (más alto) en el suelo de error del mismo en comparación con los códigos LDPC de las otras tasas de codificación.
Aquí, ocurre un fenómeno (fenómeno de suelo de error) que, como la S/N (Es/Nü ) llega a ser más alto, la caída de la tasa de error (BER) llega a ser más apagada y la tasa de error detiene su caída, y la tasa de error cuando se detiene la caída es un suelo de error.
Si el suelo de error llega a ser más alto, entonces generalmente la tolerancia a errores en el camino de comunicación 13 (FIG. 7) cae y, por lo tanto, es deseable adoptar una contramedida para mejorar la tolerancia a errores.
Como contramedida para mejorar la tolerancia a errores, por ejemplo, está disponible un proceso de sustitución que se lleva a cabo por el demultiplexor 25 (FIG. 8).
En el proceso de sustitución, como método de sustitución para sustituir los bits de código de un código LDPC, por ejemplo, están disponibles el primer al cuarto métodos de sustitución descritos anteriormente. No obstante, se demanda proponer un método que tenga una tolerancia a errores mejorada aún más en comparación con los métodos ya propuestos que incluyen el primero al cuarto métodos de sustitución.
De esta manera, el demultiplexor 25 (FIG. 8) está configurado de manera que puede llevar a cabo un proceso de sustitución según una regla de asignación como se ha descrito anteriormente con referencia a la FIG. 25.
En lo que sigue, antes de que se describa un proceso de sustitución según una regla de asignación, se describe un proceso de sustitución mediante métodos de sustitución (en lo sucesivo referidos como métodos existentes) ya propuestos.
Un proceso de sustitución donde se supone que el proceso de sustitución se lleva a cabo según los métodos existentes por el demultiplexor 25 se describe con referencia a las FIG. 60 y 61.
La FIG. 60 muestra un ejemplo del proceso de sustitución de un método existente donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación de 3/5.
En particular, A de la FIG. 60 ilustra un ejemplo del método de sustitución de un método existente donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación de 3/5 y además el método de modulación es 16QAM y el múltiplo b es 2.
Donde el método de modulación es 16QAM, 4 (= m) bits de entre los bits de código se asignan como un símbolo a algunos de los 16 puntos de señal prescritos por 16QAM.
Además, donde la longitud de código N es de 64.800 bits y el múltiplo b es 2, la memoria 31 (FIG. 16 y 17) del demultiplexor 25 tiene ocho columnas para almacenar 4 x 2 (= mb) bits en la dirección de fila y almacena 64.800/ (4 x 2) bits en la dirección de columna.
En el demultiplexor 25, cuando los bits de código del código LDPC se escriben en la dirección de columna de la memoria 31 y termina la escritura de los 64.800 bits de código (una palabra de código), los bits de código escritos en la memoria 31 se leen en una unidad de 4 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32 (FIG. 16 y 17).
La sección de sustitución 32 sustituye los 4 x 2 (= mb) bits de código bü, b1, b2, b3 , b4, b5, b6 y b7 leídos de la memoria 31 de manera que, como se ve en A de la FIG. 60, los 4 x 2 (= mb) bits de código b0 a b7 se asignan a los 4 x 2 (= mb) bits de símbolo y0 , y1, y2 , y3 , y4, ys, y6 e y7 de dos (= b) símbolos sucesivos.
En particular, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y7,
el bit de código b1 al bit de símbolo y1,
el bit de código b2 al bit de símbolo y4,
el bit de código b3 al bit de símbolo y2 ,
el bit de código b4 al bit de símbolo y5,
el bit de código b5 al bit de símbolo y3,
el bit de código b6 al bit de símbolo y6 , y
el bit de código b7 al bit de símbolo y0.
En particular, B de la FIG. 60 ilustra un ejemplo del método de sustitución de un método existente donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación es 3/5 y además el método de modulación es 64QAM y el múltiplo b es 2.
Donde el método de modulación es 64QAM, 6 (= m) bits de entre los bits de código se mapean como un símbolo a algunos de los 64 puntos de señal prescritos por 64QAM.
Además, donde la longitud de código N es de 64.800 bits y el múltiplo b es 2, la memoria 31 (FIG. 16 y 17) del demultiplexor 25 tiene 12 columnas para almacenar 6 x 2 (= mb) bits en la dirección de fila y almacena 64.800/ (6 x
2) bits en la dirección de columna.
En el demultiplexor 25, cuando los bits de código del código LDPC se escriben en la dirección de columna de la memoria 31 y termina la escritura de los 64.800 bits de código (una palabra de código), los bits de código escritos en la memoria 31 se leen en una unidad de 6 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32 (FIG. 16 y 17).
La sección de sustitución 32 sustituye, por ejemplo, los 6 x 2 (= mb) bits de código bü, b1, b2 , b3, b4, b5, b6, b7, bs, b9, b10 y bu leídos de la memoria 31 de manera que, como se ve en B de la FIG. 60, los 6 x 2 (= mb) bits de código b0 a bu, se asignan a 6 x 2 (= mb) bits de símbolo y0, y1, y2, y3, y4, y5, y6, y7, ys, y9, sucesivos.
En particular, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo yn,
el bit de código b1 al bit de símbolo y7,
el bit de código b2 al bit de símbolo y3,
el bit de código b3 al bit de símbolo y10,
el bit de código b4 al bit de símbolo y6,
el bit de código b5 al bit de símbolo y2,
el bit de código b6 al bit de símbolo y9,
el bit de código b7 al bit de símbolo y5,
el bit de código bs al bit de símbolo y1,
el bit de código b9 al bit de símbolo ys,
el bit de código b10 al bit de símbolo y4, y
el bit de código bu al bit de símbolo y0.
En particular, C de la FIG. 60 ilustra un ejemplo del método de sustitución de un método existente donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación es 3/5 y además el método de modulación es 256QAM y el múltiplo b es 2.
Donde el método de modulación es 256QAM, 8 (= m) bits de entre los bits de código se mapean como un símbolo a algunos de los 256 puntos de señal prescritos por 256QAM.
Además, donde la longitud de código N es de 64.800 bits y el múltiplo b es 2, la memoria 31 (FIG. 16 y 17) del demultiplexor 25 tiene 16 columnas para almacenar 8 x 2 (= mb) bits en la dirección de fila y almacena 64.800/ (8 x
2) bits en la dirección de columna.
En el demultiplexor 25, cuando los bits de código del código LDPC se escriben en la dirección de columna de la memoria 31 y termina la escritura de los 64.800 bits de código (una palabra de código), los bits de código escritos en la memoria 31 se leen en una unidad de 8 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32 (FIG. 16 y 17).
La sección de sustitución 32 sustituye, por ejemplo, los 8 x 2 (= mb) bits de código b0, b1, b2 , b3, b4, b5, b6, b7, b8, b9, b10, bu, b12, b13, b14 y b15 leídos de la memoria 31 de manera que, como se ve en C de la FIG. 60, los 8 x 2 (= mb) bits de código b0 a b15, se asignan a 8 x 2 (= mb) bits de símbolo y0 , y1, y2 , y3, y4, y5, y6, y7, y8, y9, y10, yn, y12, y13, yu e y15 de dos (= b) símbolos sucesivos.
En particular, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y15,
el bit de código b1 al bit de símbolo y1,
el bit de código b2 al bit de símbolo y13,
el bit de código b
Figure imgf000035_0001
al bit de símbolo y3,
el bit de código b
Figure imgf000035_0002
al bit de símbolo y8,
el bit de código b5 al bit de símbolo yn,
el bit de código b
Figure imgf000035_0003
al bit de símbolo y9,
el bit de código b
Figure imgf000035_0004
al bit de símbolo y5,
el bit de código
Figure imgf000035_0005
al bit de símbolo y10,
el bit de código b
Figure imgf000035_0006
al bit de símbolo y6,
el bit de código b10 al bit de símbolo y4,
el bit de código bu al bit de símbolo y7,
el bit de código b12 al bit de símbolo y12,
el bit de código b13 al bit de símbolo y2 ,
el bit de código bu al bit de símbolo yu, y
el bit de código b15 al bit de símbolo y0.
La FIG. 61 muestra un ejemplo del proceso de sustitución de un método existente donde el código LDPC es un código LDPC que tiene una longitud de código N de 16.200 bits y una tasa de codificación de 3/5.
En particular, A de la FIG. 61 ilustra un ejemplo del método de sustitución de un método existente donde el código LDPC es un código LDPC que tiene una longitud de código N de 16.200 bits y una tasa de codificación de 3/5 y además el método de modulación es 16QAM y el múltiplo b es 2.
Donde el método de modulación es 16QAM, 4 (= m) bits de entre los bits de código se asignan como un símbolo a algunos de los 16 puntos de señal prescritos por 16QAM.
Además, donde la longitud de código N es de 16.200 bits y el múltiplo b es 2, la memoria 31 (FIG. 16 y 17) del demultiplexor 25 tiene 8 columnas para almacenar 4 x 2 (= mb) bits en la dirección de fila y almacena 16.200/ (4 x 2) bits en la dirección de columna.
En el demultiplexor 25, cuando los bits de código del código LDPC se escriben en la dirección de columna de la memoria 31 y termina la escritura de los 16.200 bits de código (una palabra de código), los bits de código escritos en la memoria 31 se leen en una unidad de 4 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32 (FIG. 16 y 17).
La sección de sustitución 32 sustituye, por ejemplo, los 4 x 2 (= mb) bits de código bü, b1, b2, b3, b4, b5, b6 y b7 leídos de la memoria 31 de manera, que como se ve en A de la FIG. 61, los 4 x 2 (= mb) bits de código b0 a b7 se asignan a los 4 x 2 (= mb) bits de símbolo y0 , y1, y2 , y3, y4, y5, y6 e y7 de dos (= b) símbolos sucesivos.
En particular, la sección de sustitución 32 lleva a cabo una sustitución para asignar los bits de código b0 a b7 a los bits de símbolo y0 a y7 como en el caso de A de la FIG. 60 descrito anteriormente.
En particular, B de la FIG. 61 ilustra un ejemplo del método de sustitución de un método existente donde el código LDPC es un código LDPC que tiene una longitud de código N de 16.200 bits y una tasa de codificación es 3/5 y además el método de modulación es 64QAM y el múltiplo b es 2.
Donde el método de modulación es 64QAM, 6 (= m) bits de entre los bits de código se mapean como un símbolo a algunos de los 64 puntos de señal prescritos por 64QAM.
Además, donde la longitud de código N es de 16.200 bits y el múltiplo b es 2, la memoria 31 (FIG. 16 y 17) del demultiplexor 25 tiene 12 columnas para almacenar 6 x 2 (= mb) bits en la dirección de fila y almacena 16.200/ (6 x 2) bits en la dirección de columna.
En el demultiplexor 25, cuando los bits de código del código LDPC se escriben en la dirección de columna de la memoria 31 y termina la escritura de los 16.200 bits de código (una palabra de código), los bits de código escritos en la memoria 31 se leen en una unidad de 6 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32 (FIG. 16 y 17).
La sección de sustitución 32 sustituye, por ejemplo, los 6 x 2 (= mb) bits de código b0, b1, b2 , b3, b4, b5, b6, b7, b8, b9, b10 y bu leídos de la memoria 31 de manera que, como se ve en B de la FIG. 61, los 6 x 2 (= mb) bits de código b0 a bii, se asignan a 6 x 2 (= mb) bits de símbolo y0, yi,
Figure imgf000036_0001
y7 , ys, y9 , sucesivos.
En particular, la sección de sustitución 32 lleva a cabo una sustitución para asignar los bits de código b0 a bii a los bits de símbolo y0 a yii como en el caso de B de la FIG. 60 descrito anteriormente.
En particular, C de la FIG. 6i ilustra un ejemplo del método de sustitución de un método existente donde el código LDPC es un código LDPC que tiene una longitud de código N de i6.200 bits y una tasa de codificación es 3/5 y además el método de modulación es 256QAM y el múltiplo b es i.
Donde el método de modulación es 256QAM, S (= m) bits de entre los bits de código se mapean como un símbolo a algunos de los 256 puntos de señal prescritos por 256QAM.
Además, donde la longitud de código N es de i6.200 bits y el múltiplo b es i, la memoria 3i (FIG. i6 y i7) del demultiplexor 25 tiene S columnas para almacenar S x i (= mb) bits en la dirección de fila y almacena 16.200/ (S x i) bits en la dirección de columna.
En el demultiplexor 25, cuando los bits de código del código LDPC se escriben en la dirección de columna de la memoria 3i y termina la escritura de los i6.200 bits de código (una palabra de código), los bits de código escritos en la memoria 3i se leen en una unidad de S x i (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32 (FIG. i6 y i7).
La sección de sustitución 32 sustituye, por ejemplo, los S x i (= mb) bits de código bü, bi, b2 , b3 , b4 , b5 , b6 y b7 leídos de la memoria 3i de manera que, como se ve en C de la FIG. 6 i, los S x i (= mb) bits de código b0 a b7 se asignan a
S x i (= mb) bits de símbolo y0, yi, y2, y3 , y4 , y5 , y6 e y7 de un (= b) símbolo sucesivo.
En particular, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y7,
el bit de código bi al bit de símbolo y3,
el bit de código b2 al bit de símbolo yi,
el bit de código b3 al bit de símbolo y5,
el bit de código b4 al bit de símbolo y2 ,
el bit de código b5 al bit de símbolo y6 ,
el bit de código b6 al bit de símbolo y4 , y
el bit de código b7 al bit de símbolo y0.
Ahora, se describe un proceso de sustitución según una regla de asignación (en lo sucesivo conocida también como proceso de sustitución según el nuevo método de sustitución).
Las FIG. 62 a 64 son vistas que ilustran el nuevo método de sustitución.
En el nuevo método de sustitución, la sección de sustitución 32 del demultiplexor 25 lleva a cabo la sustitución de mb bits de código según una regla de asignación determinada por adelantado.
La regla de asignación es una regla para asignar bits de código de un código LDPC a bits de símbolo. En la regla de asignación, se prescriben un conjunto de grupos que es una combinación de un grupo de bits de código de bits de código y un grupo de bits de símbolo de bits de símbolos a los que están asignados los bits de código del grupo de bits de código y un número de bits (en lo sucesivo conocido también como número de bit de grupo) de bits de código y bits de símbolo del grupo de bits de código y el grupo de bits de símbolos del conjunto de grupos.
Aquí, los bits de código son diferentes en probabilidad de error, entre los mismos y también los bits de símbolo son diferentes en probabilidad de error entre los mismos como se ha descrito anteriormente. El grupo de bits de código es un grupo en el que los bits de código se agrupan según la probabilidad de error y el grupo de bits de símbolo es un grupo en el que los bits de símbolo se agrupan según la probabilidad de error.
La FIG. 62 ilustra grupos de bits de código y grupos de bits de símbolo donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.S00 bits y una tasa de codificación de 2/3 y además el método de modulación es 256QAM y el múltiplo b es 2.
En este caso, S x 2 (= mb) bits de código b0 a bis leídos de la memoria 3i se pueden agrupar en cinco grupos de bits de código Gbi, Gb2, Gb3 , Gb4 y Gb5 como se ve en A de la FIG. 62 según la diferencia de probabilidad de error.
Aquí, el grupo de bits de código Gb¡ es un grupo en el que los bits de código que pertenecen al grupo de bits de código Gbi tienen una probabilidad de error mejor (inferior), en la medida que el sufijo i del mismo tiene un valor inferior.
En A de la Fig. 62, al grupo de bits de código Gbi, pertenece el bit de código b0 ; al grupo de bits de código Gb2 , pertenece el bit de código bi; al grupo de bits de código Gb3 , pertenecen los bits de código b2 a bg; al grupo de bits de código Gb4 , pertenece el bit de código bi0 ; y al grupo de bits de código Gb5, pertenecen los bits de código bii a bi5.
Donde el método de modulación es 256QAM y el múltiplo b es 2, los 8 x 2 (= mb) bits de símbolo y0 a y i5 se pueden agrupar en cuatro grupos de bits de símbolo Gyi, Gy2 , Gy3 y Gy4 como se ve en B de la FIG. 62 según la diferencia de probabilidad de error.
Aquí, el grupo de bits de símbolo Gyi es un grupo en el que los bits de símbolo que pertenecen al grupo de bits de símbolo Gyi tienen una probabilidad de error mejor en la medida que el sufijo i del mismo tiene un valor inferior de manera similar al grupo de bits de código.
En B de la Fig. 62, al grupo de bits de símbolo Gyi, pertenecen los bits de símbolo y0 , yi, y8 e yg; al grupo de bits de símbolo Gy2 , pertenecen los bits de símbolo y2 , y3, y i0 e yi i ; al grupo de bits de símbolo Gy3 , pertenecen los bits de símbolo y4, y5, y i2 e yi3; y al grupo de bits de símbolo Gy4, pertenecen los bits de símbolo y6 , y7, yi4 e yi5.
La FIG. 63 ilustra una regla de asignación donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación de 2/3 y además el método de modulación es 256QAM y el múltiplo b es 2.
En la regla de asignación de la FIG. 63, la combinación del grupo de bits de código Gbi y el grupo de bits de símbolo Gy4 se define en el primero de la izquierda de la FIG. 63 como un conjunto de grupos. Además, el número de bits de grupo del conjunto de grupos se prescribe a i bit.
En la siguiente descripción, un conjunto de grupos y un número de bits de grupo del conjunto de grupos se conocen colectivamente como información de conjunto de grupos. Por ejemplo, el conjunto de grupos del grupo de bits de código Gbi y el grupo de bits de símbolo Gy4 y i bit que es el número de bits de grupo del conjunto de grupos se describen como información de conjunto de grupos (Gbi, Gy4 , i).
En la regla de asignación de la FIG. 63, se prescribe información de conjunto de grupos (Gb2 , Gy4 , i), (Gb3, Gyi, 3), (Gb3 , Gy2 , i), (Gb3 , Gy3 , 2), (Gb3 , Gy4, 2), (Gb4, Gy3 , i), (Gb5 , Gyi, i), (Gb5 , Gy2 , 3) y (Gb5 , Gy3 , i) además de la información de conjunto de grupos (Gbi, Gy4 , i).
Por ejemplo, la información de conjunto de grupos (Gbi, Gy4 , i) significa que un bit de código que pertenece al grupo de bits de código Gbi se asigna a un bit de símbolo que pertenece al grupo de bits de símbolo Gy4.
Por consiguiente, según la regla de asignación de la FIG. 63, se prescribe que,
dependiendo de la información de conjunto de grupos (Gbi, Gy4, i), un bit de código del grupo de bits de código Gbi que es el mejor en probabilidad de error se asigna a un bit de símbolo del grupo de bits de símbolo Gy4 que es el cuarto el mejor en probabilidad de error, que
dependiendo de la información de conjunto de grupos (Gb2 , Gy4, i), un bit de código del grupo de bits de código Gb2 que es el segundo mejor en probabilidad de error se asigna a un bit de símbolo del grupo de bits de símbolo Gy4 que es el cuarto mejor en probabilidad de error, que
dependiendo de la información de conjunto de grupos (Gb3 , Gyi, 3), tres bits de código del grupo de bits de código Gb3 que es el tercero mejor en probabilidad de error se asignan a tres bits de símbolo del grupo de bits de símbolo Gyi que es el mejor en probabilidad de error, que
dependiendo de la información de conjunto de grupos (Gb3 , Gy2, i), un bit de código del grupo de bits de código Gb3 que es el tercero mejor en probabilidad de error se asigna a un bit de símbolo del grupo de bits de símbolo Gy2 que es el segundo mejor en probabilidad de error, que
dependiendo de la información de conjunto de grupos (Gb3 , Gy3, 2), dos bits de código del grupo de bits de código Gb3 que es el tercero mejor en probabilidad de error se asignan a dos bits de símbolo del grupo de bits de símbolo Gy3 que es el tercero mejor en probabilidad de error, que
dependiendo de la información de conjunto de grupos (Gb3 , Gy4, 2), dos bits de código del grupo de bits de código Gb3 que es el tercero mejor en probabilidad de error se asignan a dos bits de símbolo del grupo de bits de símbolo Gy4 que es el cuarto mejor en probabilidad de error, que
dependiendo de la información de conjunto de grupos (Gb4 , Gy3, i), un bit de código del grupo de bits de código Gb4 que es el cuarto mejor en probabilidad de error se asigna a un bit de símbolo del grupo de bits de símbolo Gy3 que es el tercero mejor en probabilidad de error, que
dependiendo de la información de conjunto de grupos (Gb5 , Gy1, 1), un bit de código del grupo de bits de código Gb5 que es el quinto mejor en probabilidad de error se asigna a un bit de símbolo del grupo de bits de símbolo Gy1 que es el mejor en probabilidad de error, que
dependiendo de la información de conjunto de grupos (Gb5 , Gy2 , 3), tres bits de código del grupo de bits de código Gb5 que es el quinto mejor en probabilidad de error se asignan a tres bits de símbolo del grupo de bits de símbolo Gy2 que es el segundo mejor en probabilidad de error, y que
dependiendo de la información de conjunto de grupos (Gb5 , Gy3, 1), un bit de código del grupo de bits de código Gb5 que es el quinto mejor en probabilidad de error se asigna a un bit de símbolo del grupo de bits de símbolo Gy3 que es el tercero mejor en probabilidad de error.
Como se ha descrito anteriormente, el grupo de bits de código es un grupo en el que se agrupan los bits de código según la probabilidad de error, y el grupo de bits de símbolo es un grupo en el que se agrupan los bits de símbolo según la probabilidad de error. Por consiguiente, también se puede considerar que la regla de asignación prescribe una combinación de la probabilidad de error de bits de código y la probabilidad de error de bits de símbolo a los que se asignan los bits de código.
De esta manera, la regla de asignación que prescribe una combinación de la probabilidad de error de los bits de código y la probabilidad de error de los bits de símbolo a los que se asignan los bits de código se determina de manera que se hace mejor la tolerancia a errores (tolerancia al ruido), por ejemplo, a través de una simulación en donde se mide la BER o similar.
Se ha de señalar que, incluso si el destino de asignación de un bit de código de un cierto grupo de bits de código se cambia entre los bits del mismo grupo de bits de símbolo, la tolerancia a errores no es influenciada (poco) por ello. Por consiguiente, con el fin de mejorar la tolerancia a errores, información de conjunto de grupos que hace la BER (Tasa de Error Bit) incluyendo el suelo de error menor, en particular, combinaciones (conjuntos de grupos) de grupos de bits de código de bits de código y grupos de bits de símbolo de bits de símbolo a los que los bits de código de los grupos de bits de código han de ser asignados y los números de bits (números de bits de grupo) de los bits de código de los grupos de bits de código y los grupos de bits de símbolo de los conjuntos de grupos y de los bits de símbolo, se debería definir como una regla de asignación, y la sustitución de los bits de código se debería llevar a cabo de manera que los bits de código se asignen a los bits de símbolo según la regla de asignación.
No obstante, necesita ser determinado por adelantado un método de asignación particular con respecto a qué símbolo se debería asignar cada bit de código según la regla de asignación entre el aparato de transmisión 11 y el aparato de recepción 12 (FIG. 7).
La FIG. 64 ilustra un ejemplo de sustitución de bits de código según la regla de asignación de la FIG. 63.
En particular, A de la FIG. 64 ilustra un primer ejemplo de sustitución de bits de código según la regla de asignación de la FIG. 63 donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación de 2/3 y además el método de modulación es 256QAM y el múltiplo b es 2.
Donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación de 2/3 y además el método de modulación es 256QAM y el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para (64.800/ (8 x 2) x (8 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 8 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32 (FIG. 16 y 17).
La sección de sustitución 32 sustituye los 8 x 2 (= mb) bits de código bü a b15 leídos de la memoria 31 según la regla de asignación de la FIG. 63 de manera que se asignan los 8 x 2 (= mb) bits de código b0 a b15, por ejemplo, a los 8 x 2 (= mb) bits de símbolo y0 a y15 de dos (= b) símbolos sucesivos como se ve en A de la FIG. 64.
En particular, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y15,
el bit de código b1 al bit de símbolo y7 ,
el bit de código b2 al bit de símbolo y1,
el bit de código b3 al bit de símbolo y5 ,
el bit de código b4 al bit de símbolo y6 ,
el bit de código b5 al bit de símbolo y13,
el bit de código b6 al bit de símbolo yii,
el bit de código b7 al bit de símbolo y9,
el bit de código b8 al bit de símbolo y8,
el bit de código b9 al bit de símbolo yu,
el bit de código b10 al bit de símbolo y12,
el bit de código bu al bit de símbolo y3,
el bit de código b12 al bit de símbolo y0 ,
el bit de código b13 al bit de símbolo y10,
el bit de código bu al bit de símbolo y4, y
el bit de código b15 al bit de símbolo y2.
B de la FIG. 64 ilustra un segundo ejemplo de sustitución de bits de código según la regla de asignación de la FIG.
63 donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación de 2/3 y además el método de modulación es 256QAM y el múltiplo b es 2.
Según B de la FIG. 64, la sección de sustitución 32 lleva a cabo una sustitución para asignar los 8 x 2 (= mb) bits de código bü a b15 leídos de la memoria 31 según la regla de asignación de la FIG. 63 de tal manera que asignan el bit de código b0 al bit de símbolo y15,
el bit de código b1 al bit de símbolo yu,
el bit de código b2 al bit de símbolo y8,
el bit de código b3 al bit de símbolo y5,
el bit de código b4 al bit de símbolo y6,
el bit de código b5 al bit de símbolo y4,
el bit de código b6 al bit de símbolo y2,
el bit de código b7 al bit de símbolo y1,
el bit de código b8 al bit de símbolo y9 ,
el bit de código b9 al bit de símbolo y7 ,
el bit de código b10 al bit de símbolo y12,
el bit de código bu al bit de símbolo y3,
el bit de código b12 al bit de símbolo yu,
el bit de código bu al bit de símbolo yu,
el bit de código bu al bit de símbolo y0 , y
el bit de código bu al bit de símbolo yu.
Aquí, los métodos de asignación de los bits de código bi a los bits de símbolo yi ilustrados en A de la FIG. 64 y B de la FIG. 64 observan la regla de asignación de la FIG. 63 (siguen la regla de asignación).
La FIG. 65 ilustra un resultado de una simulación de la BER (Tasa de Error Bit) en un caso en donde se lleva a cabo un proceso de sustitución en A de la FIG. 64 entre los procesos de sustitución del nuevo sistema de sustitución descrito anteriormente con referencia a las FIG. 62 a 64 y en otro caso en donde se lleva a cabo un proceso de sustitución descrito anteriormente con referencia a C de la FIG. 60 entre los métodos existentes.
En particular, la FIG. 65 ilustra la BER donde se determina como objeto un código LDPC que se prescribe en el DVB-S.2 y tiene una longitud de código N de 64.800 y una tasa de codificación de 2/3 y además se adopta 256QAM como el método de modulación y 2 se adopta como el múltiplo b.
Se ha de señalar que, en la FIG. 65, el eje de abscisas indica la Es/N0 y el eje de ordenadas indica la BER. Además, una marca redonda representa la BER donde se lleva a cabo un proceso de sustitución del nuevo método de sustitución, y un asterisco (marca en estrella) representa la BER donde se lleva a cabo un proceso de sustitución del método existente.
A partir de la FIG. 65, se puede reconocer que, según el proceso de sustitución del nuevo método de sustitución, el suelo de error cae significativamente en comparación con el del proceso de sustitución del método existente y se mejora la tolerancia a errores.
Se ha de señalar que, mientras que la sección de sustitución 32 en el demultiplexor 25 lleva a cabo el proceso de sustitución para bits de código leídos de la memoria 31 por la conveniencia de la descripción, el proceso de sustitución se puede llevar a cabo controlando la escritura o la lectura de los bits de código hacia en o desde la memoria 31.
En particular, el proceso de sustitución se puede llevar a cabo, por ejemplo, controlando la dirección (dirección de lectura) para leer un bit de código de manera que la lectura de los bits de código de la memoria 31 se lleva a cabo en orden de los bits de código después de la sustitución.
Ahora, como contramedida para mejorar la tolerancia a errores, un método de adopción de un código LDPC que reduce el suelo de error está disponible además del método que adopta un proceso de sustitución del método de sustitución que reduce el suelo de error.
De esta manera, la sección de codificación LDPC 21 (FIG. 8 ) puede llevar a cabo la codificación de un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 2/3 en un código LDPC de alto rendimiento adoptando una tabla de valores iniciales de matriz de comprobación de paridad que es diferente de las tablas de valores iniciales de matriz de comprobación de paridad prescritas en el estándar DVB-S.2 y a partir de la cual se determina una matriz de comprobación de paridad H adecuada y usando una matriz de comprobación de paridad determinada a partir de la tabla de valores iniciales de matriz de comprobación de paridad.
Aquí, la matriz de comprobación de paridad H adecuada es una matriz de comprobación de paridad que satisface una condición predeterminada para hacer la BER (Tasa de Error de Bit) inferior cuando una señal de modulación de un código LDPC obtenido de una matriz de comprobación de paridad se transmite a una Es/Nü (relación de potencia de señal a potencia de ruido por símbolo) baja o Eb/N0 (relación de potencia de señal a potencia de ruido por bit). Además, el código LDPC de un rendimiento alto es un código LDPC obtenido a partir de una matriz de comprobación de paridad adecuada.
La matriz de comprobación de paridad H adecuada se puede determinar, por ejemplo, llevando a cabo una simulación de la BER cuando una señal de modulación de un código LDPC obtenido a partir de diversas matrices de comprobación de paridad que satisfacen una condición predeterminada se transmite a una relación Es/N0 baja. La condición predeterminada que debería satisfacer la matriz de comprobación de paridad H adecuada es, por ejemplo, que el resultado de un análisis obtenido por un método de análisis de un rendimiento de un código llamado evolución de densidad es bueno, que la matriz de comprobación de paridad H no incluye un bucle de elementos del valor 1 llamado ciclo 4, que la matriz de comprobación de paridad H no incluye el ciclo 6 , y así sucesivamente. Aquí, la evolución de densidad y la incorporación de la misma se describen, por ejemplo, en S. Y. Chung, G. D. Forney, T. J. Richardson y R. Urbanke, “On the Design of Low-Density Parity-Check Codes within 0.0045 dB of the Shannon Limit”, IEEE Communications Leggers, VOL. 5, N° 2, febrero de 2001.
Por ejemplo, si el valor de varianza de ruido se aumenta gradualmente a partir de cero en un canal AWGN, entonces, aunque el valor esperado de la probabilidad de error de un código LDPC es cero primero, llega a ser diferente de cero si el valor de varianza de ruido llega a ser más alto que un cierto valor umbral (umbral).
Según la evolución de densidad, el valor esperado de la probabilidad de error de la misma llega a ser diferente de cero. Comparando el valor de umbral del valor de varianza (en lo sucesivo conocido como valor de umbral de rendimiento) de ruido, se puede determinar si el rendimiento del código LDPC (adecuación de la matriz de comprobación de paridad) es bueno o no. Aquí, como el valor umbral de rendimiento, la Eb/N0 cuando la BER comienza a caer (disminuye).
Si un valor umbral de rendimiento, obtenido por análisis mediante evolución de densidad, con respecto a un código LDPC que se define en el estándar DVB-S.2 y tiene una longitud de código N de 64.800 y una tasa de codificación r de 2/3 (tal código LDPC se conoce también en lo sucesivo como código estándar) se representa por V, entonces en la simulación, un código LDPC (matriz de comprobación de paridad) que tiene una longitud de código N de 64.800 y una tasa de codificación r de 2/3 y presenta un valor umbral de rendimiento menor que V A obtenido añadiendo un margen predeterminado A a V se seleccionó como el código LDPC que tiene un buen rendimiento.
Las FIG. 66 a 68 ilustran una tabla de valores iniciales de matriz de comprobación de paridad para uno de los códigos LDPC cuya Eb/N0 como el valor umbral de rendimiento es menor que V A (código LDPC que tiene una longitud de código N de 64.800 y una tasa de codificación r de 2/3).
Se ha de señalar que la FIG. 67 es una vista que continúa a la FIG. 66, y la FIG. 68 es una vista que continúa a la FIG. 67.
En una matriz de comprobación de paridad H determinada a partir de la tabla de valores iniciales de matriz de comprobación de paridad de las FIG. 66 a 68, ni el ciclo 4 ni el ciclo 6 existen.
La FIG. 69 ilustra un resultado de la simulación de la BER con respecto a un código LDPC de una matriz de comprobación de paridad H determinada a partir de la tabla de valores iniciales de matriz de comprobación de paridad de las FIG. 66 a 68 (tal código LDPC se conoce también en lo sucesivo como código propuesto).
En particular, la FIG. 69 ilustra, donde el método de modulación es 256QAM, la BER con respecto a la Es/N0 del código estándar (en la figura, la BER se indica mediante una marca redonda) y la BER para la Es/N0 del código propuesto (en la figura, la BER se indica con una marca cuadrada). Se ha de señalar que, en la FIG. 69, un proceso de sustitución del método existente de C de la FIG. 60 se adopta como el proceso de sustitución.
A partir de la FIG. 69, se puede reconocer que el código propuesto es mejor en rendimiento que el código estándar y que particularmente el suelo de error se mejora significativamente.
Se ha de señalar que la condición predeterminada que debería satisfacer la matriz de comprobación de paridad H adecuada se puede determinar adecuadamente desde tal punto de vista como mejora del rendimiento de decodificación de un código LDPC, facilitación (simplificación) de un proceso de decodificación de un código LDPC, y así sucesivamente.
La FIG. 70 es un diagrama de bloques que muestra un ejemplo de una configuración del aparato de recepción 12 de la FIG. 7.
Con referencia a la FIG. 70, el aparato de recepción 12 es un aparato de procesamiento de datos para recibir una señal de modulación desde el aparato de transmisión 11 (FIG. 7) e incluye una sección de demodulación ortogonal 51, una sección de descorrespondencia 52, un desintercalador 53 y una sección de decodificación LDPC 56.
La sección de demodulación ortogonal 51 recibe una señal de modulación desde el aparato de transmisión 11 y lleva a cabo la demodulación ortogonal, y entonces suministra los símbolos obtenidos como resultado de la demodulación ortogonal (valores en los ejes I y Q) a la sección de descorrespondencia 52.
La sección de descorrespondencia 52 lleva a cabo la descorrespondencia de la conversión de los puntos de señal de la sección de demodulación ortogonal 51 a los bits de código de un código LDPC para ser símbolos simbolizados y suministra los bits de código al desintercalador 53.
El desintercalador 53 incluye un multiplexor (MUX) 54 y un desintercalador de torsión de columna 55 y lleva a cabo el desintercalado de los símbolos de los bits de símbolo de la sección de descorrespondencia 52.
En particular, el multiplexor 54 lleva a cabo un proceso de sustitución inversa (proceso inverso al proceso de sustitución) que corresponde al proceso de sustitución llevado a cabo por el demultiplexor 25 de la FIG. 8 para los símbolos de los bits de símbolo de la sección de descorrespondencia 52, es decir, un proceso de sustitución inversa de devolución de las posiciones de los bits de código (bits de símbolo) de los códigos LDPC sustituidos por el proceso de sustitución a las posiciones originales. Entonces, el multiplexor 54 suministra un código LDPC obtenido como resultado del proceso de sustitución inversa al desintercalador de torsión de columna 55.
El desintercalador de torsión de columna 55 lleva a cabo el desintercalado de torsión de columna (proceso inverso al intercalado de torsión de columna) que corresponde al intercalado de torsión de columna como el proceso de reordenación llevado a cabo por el intercalador de torsión de columna 24 de la FIG. 8, es decir, por ejemplo, el desintercalado de torsión de columna como un proceso de reordenación inversa de devolución de la disposición de los bits de código del código LDPC que tienen una disposición cambiada por el intercalado de torsión de columna como el proceso de reordenación a la disposición original, para el código LDPC desde el multiplexor 54.
En particular, el desintercalador de torsión de columna 55 lleva a cabo el desintercalado de torsión de columna escribiendo los bits de código del código LDPC en y leyendo los bits de código escritos de la memoria para desintercalar, la memoria que está configurada de manera similar a la memoria 31 mostrada en la FIG. 22 y así sucesivamente.
Se ha de señalar que, en el desintercalador de torsión de columna 55, la escritura de los bits de código se lleva a cabo en la dirección de fila de la memoria para desintercalar usando direcciones de lectura al leer los códigos de la memoria 31 como direcciones de escritura. Mientras tanto, la lectura de los bits de código se lleva a cabo en la dirección de columna de la memoria para desintercalar usando las direcciones de escritura al escribir los bits de código en la memoria 31 como direcciones de lectura.
Los códigos LDPC obtenidos como resultado del intercalado de torsión de columna se suministran desde el desintercalador de torsión de columna 55 a la sección de decodificación LDPC 56.
Aquí, mientras que el código LDPC suministrado desde la sección de descorrespondencia 52 al desintercalador 53 se ha obtenido mediante el intercalado de paridad, intercalado de torsión de columna y proceso de sustitución llevado a cabo en este orden, por lo tanto, el desintercalador 53 lleva a cabo solamente un proceso de sustitución inversa que corresponde al proceso de sustitución y el desintercalado de torsión de columna que corresponde al intercalado de torsión de columna. Por consiguiente, no se lleva a cabo el desintercalado de paridad que corresponde al intercalado de paridad (proceso inverso al intercalado de paridad), es decir, el desintercalado de paridad que devuelve la disposición de los bits de código de los códigos LDPC, cuya disposición se ha variado por el intercalado de paridad, a la disposición original.
Por consiguiente, el código LDPC para el cual se han llevado a cabo el proceso de sustitución inversa y el desintercalado de torsión de columna, pero no se ha llevado a cabo el desintercalado de paridad se suministra desde el (desintercalador de torsión de columna 55 del) desintercalador 53 a la sección de decodificación LDPC 56. La sección de decodificación LDPC 56 lleva a cabo la decodificación LDPC del código LDPC desde el desintercalador 53 usando una matriz de comprobación de paridad de conversión, obtenida llevando a cabo al menos una sustitución de columnas que corresponde al intercalado de paridad para la matriz de comprobación de paridad H usada para la codificación LDPC por la sección de codificación LDPC 21 de la FIG. 8 , y emite los datos obtenidos como resultado de la decodificación LDPC como resultado de decodificación de los datos de objeto. La FIG. 71 es un diagrama de flujo que ilustra un proceso de recepción llevado a cabo por el aparato de recepción 12 de la FIG. 70.
La sección de demodulación ortogonal 51 recibe una señal de modulación desde el aparato de transmisión 11 en el paso S111. Entonces, el procesamiento avanza al paso S112, en el que la sección de demodulación ortogonal 51 lleva a cabo la demodulación ortogonal de la señal de modulación. La sección de demodulación ortogonal 51 suministra los puntos de señal obtenidos como resultado de la demodulación ortogonal a la sección de descorrespondencia 52, después de lo cual el procesamiento avanza desde el paso S112 hasta el paso S113. En el paso S113, la sección de descorrespondencia 52 lleva a cabo la descorrespondencia de conversión de los puntos de señal desde la sección de demodulación ortogonal 51 en símbolos y suministra los bits de código al desintercalador 53, después de lo cual el procesamiento avanza al paso S114.
En el paso S114, el desintercalador 53 lleva a cabo el desintercalado de los símbolos de los bits de símbolo desde la sección de descorrespondencia 52, después de lo cual el procesamiento avanza al paso S115.
En particular, en el paso S114, el multiplexor 54 en el desintercalador 53 lleva a cabo un proceso de sustitución inversa para los símbolos de los bits de símbolo desde la sección de descorrespondencia 52 y suministra el código LDPC obtenido como resultado del proceso de sustitución inversa al desintercalador de torsión de columna 55. El desintercalador de torsión de columna 55 lleva a cabo un desintercalado de torsión de columna para el código LDPC desde el multiplexor 54 y suministra un código LDPC obtenido como resultado del desintercalado de torsión de columna a la sección de decodificación LDPC 56.
En el paso S115, la sección de decodificación LDPC 56 lleva a cabo la decodificación LDPC del código LDPC desde el desintercalador de torsión de columna 55 usando una matriz de comprobación de paridad de conversión obtenida llevando a cabo al menos una sustitución de columnas que corresponde al intercalado de paridad para la matriz de comprobación de paridad H usada para la codificación LDPC por la sección de codificación LDPC 21 de la FIG. 8 , y emite los datos obtenidos mediante la decodificación LDPC como resultado de decodificación de los datos de objeto. A partir de entonces, se termina el procesamiento.
Se ha de señalar que el proceso de recepción de la FIG. 71 se lleva a cabo repetitivamente.
También en la FIG. 70, el multiplexor 54 para llevar a cabo el proceso de sustitución inversa y el desintercalador de torsión de columna 55 para llevar a cabo el desintercalado de torsión de columna se configuran separadamente uno de otro por la conveniencia de la descripción de manera similar que en el caso de la FIG. 8. No obstante, el multiplexor 54 y el desintercalador de torsión de columna 55 se pueden configurar integralmente uno con otro.
Además, donde el aparato de transmisión 11 de la FIG. 8 no lleva a cabo el intercalado de torsión de columna, no hay necesidad de proporcionar el desintercalador de torsión de columna 55 en el aparato de recepción 12 de la FIG.
70.
Ahora, se describe además la decodificación LDPC llevada a cabo por la sección de decodificación LDPC 56 de la FIG. 70.
La sección de decodificación LDPC 56 de la FIG. 70 lleva a cabo la decodificación LDPC de un código LDPC, para el cual se han llevado a cabo el proceso de sustitución inversa y el desintercalado de torsión de columna, pero no se ha llevado a cabo el desintercalado de paridad, desde el desintercalador de torsión de columna 55 como se ha descrito anteriormente usando una matriz de comprobación de paridad de conversión obtenida llevando a cabo al menos una sustitución de columnas que corresponde al intercalado de paridad para la matriz de comprobación de paridad H usada para la codificación LDPC por la sección de codificación LDPC 21 de la FIG. 8.
Aquí, se ha propuesto anteriormente una decodificación LDPC que puede suprimir la frecuencia de operación dentro de un intervalo suficientemente implementable mientras que se suprime la escala de circuito llevando a cabo la decodificación LDPC usando la matriz de comprobación de paridad de conversión (véase, por ejemplo, la Patente japonesa abierta a la inspección pública N° 2004-343170).
De esta manera, la decodificación LDPC propuesta anteriormente que usa un matriz de comprobación de paridad de conversión se describe primero con referencia a las FIG. 72 a 75.
La FIG. 72 muestra un ejemplo de la matriz de comprobación de paridad H de un código LDPC cuya longitud de código N es 90 y la tasa de codificación es 2/3.
Se ha de señalar que, en la FIG. 72, 0 se representa por un periodo (.) (esto se aplica de manera similar también a las FIG. 73 y 74 descritas en lo sucesivo).
En la matriz de comprobación de paridad H de la FIG. 72, la matriz de paridad tiene una estructura de escalera. La FIG. 73 ilustra una matriz de comprobación de paridad H’ obtenida aplicando la sustitución de fila de una expresión (11) y la sustitución de columnas de una expresión (12) a la matriz de comprobación de paridad H de la FIG. 72.
Sustitución de fila: fila de orden 6s+t+1 ® fila de orden 5t+s+1 ... (11)
Sustitución de columna: columna de orden 6x+y+61 ® columna de orden 5y+x+61 ... (12)
No obstante, en las expresiones (11) y (12), s, t, x e y son números enteros dentro de los intervalos de 0 < s < 5, 0 < t < 6, 0 < x < 5 y 0 < t < 6, respectivamente.
Según la sustitución de fila de la expresión (11), la sustitución se lleva a cabo de tal manera que las filas 1a, 7a, 13a, 19a y 25a, cada uno de cuyos números indica un resto de 1 donde se divide por 6 se sustituyen por las filas 1a, 2a, 3 a, 4 a y 5 a, y las filas 2a, 8a, 14a, 2 0 a y 26a, cada uno de cuyos números indica un resto de 2 donde se divide por 6 se sustituyen por las filas 6a, 7 a, 8a, 9 a y 10a.
Por otra parte, según la sustitución de columnas de la expresión (12), se lleva a cabo la sustitución para la 61a y sucesivas columnas (matriz de paridad) de manera que las columnas 61a, 6 7 a, 7 3 a, 7 9 a y 8 5 a cada uno de cuyos números indica un resto de 1 donde se divide por 6 se sustituyen por las columnas 61a, 6 2 a, 6 3 a, 64a y 6 5 a, y las columnas 62a, 6 8 a, 7 4 a, 8 0 a y 8 6 a cada uno de cuyos números indica un resto de 2 donde se divide por 6 se sustituyen por las columnas 6 6 a, 6 7 a, 6 8 a, 6 9 a y 7 0 a.
Una matriz obtenida llevando a cabo la sustitución de las filas y de las columnas para la matriz de comprobación de paridad H de la FIG. 72 es una matriz de comprobación de paridad H’ de la FIG. 73.
Aquí, incluso si se lleva a cabo la sustitución de filas de la matriz de comprobación de paridad H, esto no tiene influencia en la disposición de los bits de código del código LDPC.
Mientras tanto, la sustitución de columnas de la expresión (12) corresponde al intercalado de paridad cuando la longitud de información K, el número de columnas unidad P de la estructura cíclica y el testador q (= M/P) de la longitud de paridad M (aquí, 30) en el intercalado de paridad de intercalado del bit de código de orden K+qx+y+1 a la posición del bit de código de orden K+Py+x+1 se fijan a 60, 5 y 6 , respectivamente.
Si la matriz de comprobación de paridad H’ (en lo sucesivo conocida adecuadamente como matriz de comprobación de paridad de sustitución) de la FIG. 73 se multiplica por un resultado de sustitución igual que el de la expresión (12) para el código LDPC de la matriz de comprobación de paridad H (en lo sucesivo conocida adecuadamente como matriz de comprobación de paridad original) de la FIG. 72, entonces se emite el vector 0. En particular, donde un vector de filas obtenido aplicando la sustitución de columnas de la expresión (1 2 ) para el vector de filas c como el código LDPC (una palabra de código) de la matriz de comprobación de paridad H original se representa por c’, dado que HcT llega a ser el vector 0 sobre la base de la característica de la matriz de comprobación de paridad, también H’c’T llega a ser naturalmente el vector 0.
A partir de lo precedente, la matriz de comprobación de paridad de conversión H’ de la FIG. 73 llega a ser la matriz de comprobación de paridad de un código LDPC c’ obtenido llevando a cabo la sustitución de columnas de la expresión (12) para el código LDPC c de la matriz de comprobación de paridad H original.
Por consiguiente, llevando a cabo la sustitución de columnas de la expresión (12) para el código LDPC c de la matriz de comprobación de paridad H original, decodificando (decodificación LDPC) el código LDPC c’ después de la sustitución de columnas usando la matriz de comprobación de paridad H’ de la FIG. 73 y luego llevando a cabo la sustitución inversa a la sustitución de columnas de la expresión (1 2 ) para el resultado de la decodificación, se puede obtener un resultado de decodificación similar al obtenido donde el código LDPC de la matriz de comprobación de paridad H original se decodifica usando la matriz de comprobación de paridad H.
La FIG. 74 muestra la matriz de comprobación de paridad de conversión H’ de la FIG. 73 en donde se proporciona un espacio entre unidades de 5 x 5 matrices.
En la FIG. 74, la matriz de comprobación de paridad de conversión H’ está representada por una combinación de una matriz unidad de 5 x 5 elementos, otra matriz (en lo sucesivo conocida adecuadamente como matriz cuasi unidad) que corresponde a la matriz unidad cuyo elemento o elementos de 1 se cambian a un elemento o elementos de 0 , una matriz adicional (en lo sucesivo conocida adecuadamente como matriz de desplazamiento) que corresponde a la matriz unidad o matriz cuasi unidad después de que se desplaza cíclicamente (desplazamiento cíclico), una matriz aún adicional (en lo sucesivo conocida adecuadamente como matriz de suma) de dos o más de la matriz unidad, matriz cuasi unidad y matriz de desplazamiento, y una matriz 0 de 5 x 5 elementos.
Se puede considerar que la matriz de comprobación de paridad de conversión H’ de la FIG. 74 se compone de una matriz unidad, una matriz cuasi unidad, una matriz de desplazamiento, una matriz de suma y una matriz 0 de 5 x 5 elementos. Por lo tanto, las matrices de 5 x 5 elementos que componen la matriz de comprobación de paridad de conversión H’ se conocen en lo sucesivo como matrices componentes.
Para la decodificación de un código LDPC representado por una matriz de comprobación de paridad representada por una matriz de P x P componentes, se puede usar una arquitectura que lleva a cabo una operación matemática de nodo de comprobación y una operación matemática de nodo variable simultáneamente para P nodos de comprobación y P nodos variables.
La FIG. 75 es un diagrama de bloques que muestra un ejemplo de una configuración de un aparato de decodificación que lleva a cabo tal decodificación como se acaba de describir.
En particular, la FIG. 75 muestra un ejemplo de una configuración de un aparato de decodificación que lleva a cabo la decodificación de códigos LDPC de la matriz de comprobación de paridad H original de la FIG. 72 usando la matriz de comprobación de paridad de conversión H’ de la FIG. 74 obtenida llevando a cabo al menos la sustitución de columnas de la expresión (1 2 ).
El aparato de decodificación de la FIG. 75 incluye una memoria de almacenamiento de datos de borde 300 que incluye seis FIFO 3001 a 3006, un selector 301 para seleccionar las FIFO 3001 a 3006, una sección de cálculo de nodo de comprobación 302, dos circuitos de desplazamiento cíclico 303 y 308, una memoria de almacenamiento de datos de borde 304 que incluye 18 FIFO 3041 a 30418, un selector 305 para seleccionar las FIFO 3041 a 30418, una memoria de datos de recepción 306 para almacenar información de recepción, una sección de cálculo de nodo variable 307, una sección de cálculo de palabra decodificada 309, una sección de reordenación de datos de recepción 310, y una sección de reordenación de datos decodificados 311.
En primer lugar, se describe un método de almacenamiento de datos en las memorias de almacenamiento de datos de borde 300 y 304.
La memoria de almacenamiento de datos de borde 300 incluye las seis FIFO 3001 a 3006 el número de las cuales es igual a un cociente cuando el número de filas 30 de la matriz de comprobación de paridad de conversión H’ de la FIG. 74 se divide por el número de filas 5 de las matrices componentes. Cada una de las FIFO 300y (y = 1, 2, ..., 6 ) tiene una pluralidad de etapas de regiones de almacenamiento de manera que los mensajes que corresponden a cinco bordes cuyo número es igual al número de filas y al número de columnas de las matrices componentes se puede leer de o escribir en las regiones de almacenamiento de cada etapa al mismo tiempo. Además, el número de etapas de las regiones de almacenamiento de cada FIFO 300y es nueve que es el máximo número de 1 (ponderación de Hamming) en la dirección de fila de la matriz de comprobación de paridad de conversión de la FIG.
74.
En la FIFO 3001, los datos (mensajes vi de nodos variables) que corresponden a las posiciones del valor 1 en la primera a la quinta filas de la matriz de comprobación de paridad de conversión H’ de la FIG. 74 se almacenan de una forma cerrada en la dirección horizontal en las filas individuales (en la forma en donde 0 se ignora). En particular, si un elemento en la fila j de la columna de orden i se representa como (j, i), entonces en las regiones de almacenamiento en la primera etapa de la FIFO 3001, se almacenan los datos que corresponden a las posiciones del valor 1 de la matriz unidad de 5 x 5 elementos de (1, 1) a (5, 5) de la matriz de comprobación de paridad de conversión H’. En las regiones de almacenamiento en la segunda etapa, los datos que corresponden a las posiciones del valor 1 de una matriz de desplazamiento de (1,21) a (5, 25) de la matriz de comprobación de paridad de conversión H’ (una matriz de desplazamiento obtenida desplazando cíclicamente la matriz unidad de 5 x 5 elementos en tres en la dirección hacia la derecha). También en las regiones de almacenamiento en la tercera a octava etapas, los datos se almacenan en una relación asociada con la matriz de comprobación de paridad de conversión H’. Entonces, en las regiones de almacenamiento en la novena etapa, se almacenan los datos que corresponden a las posiciones del valor de una matriz de desplazamiento de (1, 8 6 ) a (5, 90) de la matriz de comprobación de paridad de conversión H’ (una matriz de desplazamiento obtenida sustituyendo el valor 1 en la primera fila de la matriz unidad de 5 x 5 elementos con el valor 0 y luego desplazando cíclicamente la matriz unidad después de la sustitución por uno en la dirección hacia la izquierda).
En la FIFO 3002 , se almacenan los datos que corresponden a las posiciones del valor 1 de la sexta a la décima filas de la matriz de comprobación de paridad de conversión H’ de la FIG. 74. En particular, en la región de almacenamiento en la primera etapa de la FIFO 3002 , se almacenan los datos que corresponden a las posiciones del valor 1 de una primera matriz de desplazamiento que forma una matriz de suma de (6 , 1) a (10, 5) de la matriz de comprobación de paridad de conversión H’ (una matriz de suma que es la suma de una primera matriz de desplazamiento obtenida desplazando cíclicamente la matriz unidad de 5 x 5 elementos en uno en la dirección hacia la derecha y una segunda matriz de desplazamiento obtenida desplazando cíclicamente la matriz unidad de 5 x 5 elementos en dos en la dirección hacia la derecha). Además, en la región de almacenamiento en la segunda etapa, se almacenan los datos que corresponden a las posiciones del valor 1 de la segunda matriz de desplazamiento que forma la matriz de suma de (6 , 1) a (10, 5) de la matriz de comprobación de paridad de conversión H’.
En particular, con respecto a una matriz componente cuya ponderación es 2 o más, donde la matriz componente se representa en forma de la suma de varios de entre una matriz unidad de P x P elementos que tienen la ponderación 1 , una matriz cuasi unidad que corresponde a la matriz unidad cuyos uno o más elementos que tienen el valor 1 se sustituyen con 0 y una matriz de desplazamiento obtenida desplazando cíclicamente la matriz unidad o la matriz cuasi unidad, los datos que corresponden a las posiciones del valor 1 de la matriz unidad, matriz cuasi unidad o matriz de desplazamiento cuya ponderación es 1 (mensajes que corresponden a los bordes que pertenecen a la matriz unidad, matriz cuasi unidad o matriz de desplazamiento) se almacenan en la misma dirección (misma FIFO de entre las FIFO 3001 a 3006).
También en las regiones de almacenamiento en la tercera a la novena etapas, los datos se almacenan en una relación asociada con la matriz de comprobación de paridad de conversión H’.
También las FIFO 3003 a 3006 almacenan datos en una relación asociada con la matriz de comprobación de paridad de conversión H’.
La memoria de almacenamiento de datos de borde 304 incluye 18 FIFO 3041 a 30418 el número de las cuales es igual al cociente cuando el número de columnas 90 de la matriz de comprobación de paridad de conversión H’ se divide por el número de columnas 5 de la matriz componente. Cada memoria de almacenamiento de datos de borde 304x (x = 1, 2, ..., 18) incluye una pluralidad de etapas de regiones de almacenamiento, y mensajes que corresponden a cinco bordes el número de los cuales es igual al número de filas y el número de columnas de la matriz de comprobación de paridad de conversión H’ se pueden leer de o escribir en las regiones de almacenamiento de cada etapa al mismo tiempo.
En la FIFO 3041, los datos que corresponden a las posiciones del valor 1 desde la primera a la quinta columnas de la matriz de comprobación de paridad de conversión H’ de la FIG. 74 (mensajes uj de los nodos de comprobación) se almacenan de una forma cerrada en la dirección vertical en las columnas individuales (en la forma en donde 0 se ignora). En particular, en las regiones de almacenamiento en la primera etapa de la FIFO 3041, se almacenan los datos que corresponden a las posiciones del valor 1 de la matriz unidad de 5 x 5 elementos de (1 , 1 ) a (5, 5) de la matriz de comprobación de paridad de conversión H’. En las regiones de almacenamiento en la segunda etapa, se almacenan los datos que corresponden a las posiciones del valor de una primera matriz de desplazamiento que forma una matriz de suma de (6 , 1) a (10, 5) de la matriz de comprobación de paridad vertica1H’ (una matriz de suma que es la suma de una primera matriz de desplazamiento obtenida desplazando cíclicamente la matriz unidad de 5 x 5 elementos en uno a la derecha y una segunda matriz de desplazamiento obtenida desplazando cíclicamente la matriz unidad de 5 x 5 elementos en dos a la derecha). Además, en las regiones de almacenamiento en la tercera etapa, los datos que corresponden a las posiciones del valor 1 de la segunda matriz de desplazamiento que forma la matriz de suma de (6 , 1) a (10, 5) de la matriz de comprobación de paridad vertica1H’.
En particular, con respecto a una matriz componente cuya ponderación es 2 o más, donde la matriz componente se representa en forma de la suma de varias de entre una matriz unidad de P x P elementos que tiene la ponderación 1 , una matriz cuasi unidad que corresponde a la matriz unidad cuyos uno o más elementos que tienen el valor 1 se sustituyen con 0 y una matriz de desplazamiento obtenida desplazando cíclicamente la matriz unidad o la matriz cuasi unidad, los datos que corresponden a las posiciones del valor 1 de la matriz unidad, matriz cuasi unidad o matriz de desplazamiento cuya ponderación es 1 (mensajes que corresponden a los bordes que pertenecen a la matriz unidad, matriz cuasi unidad o matriz de desplazamiento) se almacenan en la misma dirección (misma FIFO de entre las FIFO 3041 a 30418).
También con respecto a las regiones de almacenamiento en la cuarta y la quinta etapas, los datos se almacenan en una relación asociada con la matriz de comprobación de paridad de conversión H’. El número de etapas de las regiones de almacenamiento de la FIFO 3041 es 5, que es un número máximo del número de 1 (ponderación de Hamming) en la dirección de fila en la primera a la quinta columnas de la matriz de comprobación de paridad de conversión H’.
También las FIFO 3042 y 3043 almacenan datos en una relación asociada con la matriz de comprobación de paridad de conversión H’ de manera similar, y cada longitud (número de etapa) de las FIFO 3042 y 3043 es 5. También las FIFO 3044 a 304i2 almacenan datos en una relación asociada con la matriz de comprobación de paridad de conversión H’ de manera similar, y cada longitud de las FIFO 3044 a 30412 es 3. También las FIFO 30413 a 30418 almacenan datos en una relación asociada con la matriz de comprobación de paridad de conversión H’ de manera similar, y cada longitud de las FIFO 30413 a 30418 es 2.
Ahora, se describe la operación del aparato de decodificación de la FIG. 75.
La memoria de almacenamiento de datos de borde 300 incluye las seis FIFO 3001 a 3006, y las FIFO en las que han de ser almacenados datos se seleccionan de entre las FIFO 3001 a 3006 según la información (datos de matriz) D312 que representa a qué fila de la matriz de comprobación de paridad de conversión H’ pertenecen cinco mensajes D311 suministrados desde el circuito de desplazamiento cíclico 308 en la etapa anterior. Entonces, los cinco mensajes D311 se almacenan colectivamente y en orden en las FIFO seleccionadas. Además, cuando han de ser leídos los datos, la memoria de almacenamiento de datos de borde 300 lee cinco mensajes D3001 en orden desde la FIFO 3001 y suministra los cinco mensajes D3001 al selector 301 en la etapa sucesiva. Después de que termina la lectura de los mensajes de la FIFO 3001, la memoria de almacenamiento de datos de borde 300 lee los mensajes en orden también desde las FIFO 3302 a 3006 y suministra los mensajes leídos al selector 301.
El selector 301 selecciona los cinco mensajes de esa FIFO desde la cual se leen actualmente los datos de entre las FIFO 3001 a 3006 según una señal de selección D301 y suministra los cinco mensajes como mensajes D302 a la sección de cálculo de nodo de comprobación 302.
La sección de cálculo de nodo de comprobación 302 incluye cinco calculadoras de nodos de comprobación 3021 a 3025 y lleva a cabo la operación matemática de nodo de comprobación según la expresión (7) usando los mensajes D302 (D3021 a D302s) (mensajes vi de la expresión (7)) suministrados a la misma a través del selector 301. Entonces, la sección de cálculo de nodo de comprobación 302 suministra cinco mensajes D303 (D3031 a D3035) (mensajes uj de la expresión (7)) obtenidos como resultado de la operación matemática de nodo de comprobación al circuito de desplazamiento cíclico 303.
El circuito de desplazamiento cíclico 303 desplaza cíclicamente los cinco mensajes D3031 a 3035 determinados por la sección de cálculo de nodo de comprobación 302 en base a información (datos de matriz) D305 con respecto a qué número de matrices unidad originales, los bordes correspondientes se desplazan cíclicamente en la matriz de comprobación de paridad de conversión H’, y suministra un resultado del desplazamiento cíclico como un mensaje D304 a la memoria de almacenamiento de datos de borde 304.
La memoria de almacenamiento de datos de borde 304 incluye 18 FIFO 3041 a 30418. La memoria de almacenamiento de datos de borde 304 selecciona una FIFO en la que se han de almacenar datos de entre las FIFO 3041 a 30418 según la información D305 con respecto a qué fila de la matriz de comprobación de paridad de conversión H’ pertenecen los cinco mensajes D304 suministrados desde el circuito de desplazamiento cíclico 303 en la etapa anterior y almacena colectivamente los cinco mensajes D304 en orden en la FIFO seleccionada. Por otra parte, cuando los datos han de ser leídos, la memoria de almacenamiento de datos de borde 304 lee cinco mensajes D3061 en orden desde la FIFO 3041 y suministra los mensajes D3061 al selector 305 en la etapa sucesiva. Después de que termina la lectura de los datos de la FIFO 3041, la memoria de almacenamiento de datos de borde 304 lee los mensajes también en orden de las FIFO 3042 a 30418 y suministra los mensajes al selector 305.
El selector 305 selecciona los cinco mensajes de la FIFO de la cual se leen datos actualmente de entre las FIFO 3041 a 30418 según una señal de selección D307 y suministra los mensajes seleccionados como mensajes D308 a la sección de cálculo de nodo variable 307 y la sección de cálculo de palabra decodificada 309.
Por otra parte, la sección de reordenación de datos de recepción 310 lleva a cabo la sustitución de columnas de la expresión (12) para reordenar un código LDPC D313 recibido a través de un camino de comunicación y suministra el código LDPC reordenado D313 como datos de recepción D314 a la memoria de datos de recepción 306. La memoria de datos de recepción 306 calcula y almacena una LLR (relación de verosimilitud logarítmica) de recepción a partir de los datos de recepción D314 suministrados a la misma desde la sección de reordenación de datos de recepción 310 y recoge y suministra cada cinco de las LLR de recepción como valores de recepción D309 a la sección de cálculo de nodo variable 307 y la sección de cálculo de palabra decodificada 309.
La sección de cálculo de nodo variable 307 incluye cinco calculadoras de nodo variable 3071 a 3075 y lleva a cabo una operación matemática de nodo variable según la expresión (1) usando los mensajes D308 (3081 a 3085 ) (mensajes uj de la expresión (1)) suministrados a la misma a través del selector 305 y los cinco valores de recepción D309 (valores de recepción uoi de la expresión (1)) suministrados a la misma desde la memoria de datos de recepción 306. Entonces, la sección de cálculo de nodo variable 307 suministra mensajes D310 (D3011 a D3105) (mensajes vi de la expresión (1)) obtenidos como resultado de la operación matemática al circuito de desplazamiento cíclico 308.
El circuito de desplazamiento cíclico 308 desplaza cíclicamente los mensajes D3101 a D3105 calculados por la sección de cálculo de nodo variable 307 en base a la información con respecto a qué número de matrices unidad originales el borde correspondiente se desplaza cíclicamente en la matriz de comprobación de paridad de conversión H’, y suministra un resultado del desplazamiento cíclico como un mensaje D311 a la memoria de almacenamiento de datos de borde 300.
Llevando a cabo la secuencia de operaciones descrita anteriormente, se puede llevar a cabo la decodificación en un ciclo de un código LDPC. En el aparato de decodificación de la FIG. 75, después de que un código LDPC se decodifica un número predeterminado de veces, se determina un resultado de decodificación final por la sección de cálculo de palabra decodificada 309 y la sección de reordenación de datos decodificados 311 y luego se emite. En particular, la sección de cálculo de palabra decodificada 309 incluye cinco calculadoras de palabra decodificada 3091 a 3095 y actúa como una etapa final en una pluralidad de ciclos de decodificación para calcular un resultado de decodificación (palabra decodificada) según la expresión (5) usando los cinco mensajes D308 (D3081 a D308s) (mensajes uj de la expresión (5)) emitidos desde el selector 305 y los cinco valores de recepción D309 (valores de recepción uoi de la expresión (5)) emitidos desde la memoria de datos de recepción 306. Entonces, la sección de cálculo de palabra decodificada 309 suministra datos decodificados D315 obtenidos como resultado del cálculo a la sección de reordenación de datos decodificados 311.
La sección de reordenación de datos decodificados 311 lleva a cabo la sustitución inversa a la sustitución de columnas de la expresión (12) para los datos decodificados D315 suministrados a la misma desde la sección de cálculo de palabra decodificada 309 para reordenar el orden de los datos decodificados D315 y emite los datos decodificados reordenados D315 como resultado de decodificación D316.
Como se ha descrito anteriormente, aplicando una o ambas de sustitución de filas y sustitución de columnas a una matriz de comprobación de paridad (matriz de comprobación de paridad original) para convertir la matriz de comprobación de paridad en una matriz de comprobación de paridad (matriz de comprobación de paridad de conversión) que se puede representar mediante una combinación de una matriz unidad de P x P elementos, una matriz cuasi unidad que corresponde a la matriz unidad cuyo elemento o elementos de 1 se cambian a un elemento o elementos de 0 , una matriz de desplazamiento que corresponde a la matriz unidad o matriz cuasi unidad después de que se desplaza cíclicamente, una matriz de suma de dos o más de la matriz unidad, matriz cuasi unidad y matriz de desplazamiento, y una matriz 0 de P x P elementos como se ha descrito anteriormente, llega a ser posible adoptar para decodificación de código LDPC una arquitectura que lleva a cabo la operación matemática de nodo de comprobación y la operación matemática de nodo variable simultáneamente para los P nodos de comprobación y los P nodos variables. En consecuencia, llevando a cabo la operación matemática de nodo simultáneamente para los P nodos, es posible suprimir la frecuencia de operación dentro de un intervalo implementable para llevar a cabo la decodificación LDPC.
La sección de decodificación LDPC 56 que compone el aparato de recepción 12 de la FIG. 70 lleva a cabo la operación matemática de nodo de comprobación y la operación matemática de nodo variable simultáneamente para P nodos de comprobación y P nodos variables para llevar a cabo la decodificación LDPC de forma similar al aparato de decodificación de la FIG. 75.
En particular, se supone ahora simplificar la descripción que la matriz de comprobación de paridad de un código LDPC emitido desde la sección de codificación LDPC 21 que compone el aparato de transmisión 11 de la FIG. 8 es, por ejemplo, la matriz de comprobación de paridad H en donde la matriz de paridad tiene una estructura de escalera mostrada en la FIG. 72. En este caso, el intercalado de paridad 23 del aparato de transmisión 11 lleva a cabo intercalado de paridad para intercalar el bit de código de orden K qx y 1 a la posición del bit de código de orden K Py x 1 con la longitud de información K fijada a 60, con el número de columnas unidad P de la estructura cíclica fijado a 5 y con el testador q (= M/P) de la longitud de paridad M a 6.
Dado que este intercalado de paridad corresponde a la sustitución de columnas de la expresión (12), la sección de decodificación LDPC 56 no necesita llevar a cabo la sustitución de columnas de la expresión (12).
Por lo tanto, en el aparato de recepción 12 de la FIG. 70, un código LDPC para el que no se ha llevado a cabo un desintercalado de paridad, es decir, un código LDPC en un estado en el que se lleva a cabo la sustitución de columnas de la expresión (12), se suministra desde el desintercalador de torsión de columnas 55 a la sección de decodificación LDPC 56 como se ha descrito anteriormente. La sección de decodificación LDPC 56 lleva a cabo un procesamiento similar al del aparato de decodificación de la FIG. 75 excepto que no se lleva a cabo la sustitución de columnas de la expresión (1 2 ).
En particular, la FIG. 76 muestra un ejemplo de una configuración de la sección de decodificación LDPC 56 de la FIG. 70.
Con referencia a la FIG. 76, la sección de decodificación LDPC 56 se configura de manera similar a la del aparato de decodificación de la FIG. 75 excepto que no se proporciona la sección de reordenación de datos de recepción 310 de la FIG. 75 y lleva a cabo un procesamiento similar al del aparato de decodificación de la FIG. 75 excepto que no se lleva a cabo la sustitución de columnas de la expresión (12). Por lo tanto, la descripción de la sección de decodificación LDPC 56 se omite en la presente memoria.
Dado que la sección de decodificación LDPC 56 se puede configurar sin incluir la sección de reordenación de datos de recepción 310 como se ha descrito anteriormente, se puede reducir en escala en comparación con el aparato de decodificación de la FIG. 75.
Se ha de señalar que, mientras, en las FIG. 72 a 76, se supone que la longitud de código N del código LDPC es 90; la longitud de información K es 60; el número de columnas unidad P (número de filas y número de columnas de una matriz componente) de la estructura cíclica es 5; y el testador q (= M/P) de la longitud de paridad M es 6 , para una descripción simplificada, la longitud de código N, la longitud de información K, el número de columnas unidad P de la estructura cíclica y el testador q (= M/P) no se limitan individualmente a los valores específicos dados anteriormente. En particular, mientras que la sección de codificación LDPC 21 en el aparato de transmisión 11 de la FIG. 8 emite un código LDPC en donde, por ejemplo, la longitud de código N es 64.800 o 16.200, la longitud de información K es N -Pq (= N - M), el número de columnas unidad P de la estructura cíclica es 360 y el testeador q es M/P, la sección de decodificación LDPC 56 en la FIG. 76 se puede aplicar también donde se lleva a cabo la decodificación LDPC llevando a cabo la operación matemática de nodo de comprobación y la operación matemática de nodo variable simultáneamente para P nodos de comprobación y P nodos variables con respecto a tal código LDPC como se acaba de describir.
Aunque la serie de procesos descritos anteriormente se puede ejecutar por hardware, de otro modo se puede ejecutar por software. Donde la serie de procesos se ejecuta por software, un programa que construye el software se instala en un ordenador para uso universal o similar.
La FIG. 77 muestra un ejemplo de una configuración de una realización de un ordenador en el que se instala un programa para ejecutar la serie de procesos descritos anteriormente.
El programa puede estar grabado por adelantado en un disco duro 705 o en una ROM 703 como medio de grabación incorporado en el ordenador.
O, el programa se puede almacenar (grabar) temporal o permanentemente en un medio de grabación extraíble 711 tal como un disco flexible, un CD-ROM (Memoria de Sólo Lectura de Disco Compacto), un disco MO (Magneto óptico), un DVD (Disco Digital Versátil), un disco magnético o una memoria de semiconductores. Tal medio de grabación extraíble 711, como se acaba de describir, se puede proporcionar como un denominado paquete de software.
Se ha de señalar que el programa no solamente se puede instalar a partir de tal medio de grabación extraíble 711 como se ha descrito anteriormente en el ordenador, sino que también se puede instalar en el disco duro 705 integrado en el ordenador donde se transfiere al mismo y se recibe por una sección de comunicación 708. En este caso, el programa se puede transferir al ordenador mediante comunicación inalámbrica desde un sitio de descarga a través de un satélite artificial para difusión digital por satélite o transferir al ordenador mediante comunicación por cable a través de una red, tal como una LAN (Red de Área Local) o Internet.
El ordenador tiene una CPU (unidad central de procesamiento) 702 incorporada dentro del mismo. Una interfaz de entrada/salida 7410 se conecta a la CPU 702 mediante un bus 701, y si se introduce una instrucción a la CPU 702 a través de la interfaz de entrada/salida 710 cuando una sección de entrada 707 configurada desde un teclado, un ratón, un micrófono, etc. se opera por un usuario o en un caso similar, la CPU 702 ejecuta el programa almacenado en la ROM (Memoria de Sólo Lectura) 703. O, la CPU 702 carga un programa almacenado en el disco duro 705, un programa transferido desde un satélite o una red, recibido por la sección de comunicación 708 e instalado en el disco duro 705 o un programa leído del medio de grabación extraíble 711 cargado en una unidad 709 e instalado en el disco duro 705 en una RAM (Memoria de Acceso Aleatorio) 704 y ejecuta el programa. En consecuencia, la CPU 702 lleva a cabo el procesamiento según el diagrama de flujo descrito anteriormente o el procesamiento llevado a cabo por la configuración del diagrama de bloques descrito anteriormente. Entonces, la CPU 702 emite un resultado del procesamiento desde una sección de salida 706 configurada desde un LCD (Visualizador de Cristal Líquido), un altavoz, etc. y transmite el resultado del procesamiento desde la sección de comunicación 708 a través de la interfaz de entrada/salida 710 o graba el resultado del procesamiento en el disco duro 705 según lo demande la ocasión. Aquí, en la presente especificación, los pasos de procesamiento que describen el programa para hacer al ordenador llevar a cabo varios procesos no necesitan ser procesados necesariamente en una serie de tiempo según el orden descrito como un diagrama de flujo, sino que incluyen aquellos procesos a ser ejecutados en paralelo o individualmente (por ejemplo, procesos paralelos o procesos mediante un objeto).
Además, el programa se puede procesar mediante un único ordenador o se puede procesar mediante procesamiento distribuido mediante una pluralidad de ordenadores. Además, el programa se puede transferir a y ejecutar por un ordenador en un lugar remoto.
Ahora, se describe además un proceso para codificación LDPC por la sección de codificación LDPC 21 del aparato de transmisión 1 1.
Por ejemplo, en el estándar DVB-S.2, se prescribe codificación LDPC de las dos longitudes de código N diferentes de 64.800 bits y 16.200 bits.
Y, para el código LDPC cuya longitud de código N es de 64.800 bits, se prescriben las 11 tasas de codificación 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, 8/9 y 9/10, y para el código LDPC cuya longitud de código N es 16.200 bits, se prescriben las 10 tasas de codificación 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6 y 8/9.
La sección de codificación LDPC 21 lleva a cabo la codificación (codificación de corrección de errores) en códigos LDPC de las diferentes tasas de codificación cuya longitud de código N es 64.800 bits o 16.200 bits según una matriz de comprobación de paridad H preparada para cada longitud de código N y para cada tasa de codificación. En particular, la sección de codificación LDPC 21 almacena una tabla de valores iniciales de matriz de comprobación de paridad descrita en lo sucesivo para producir una matriz de comprobación de paridad H para cada longitud de código N y para cada tasa de codificación.
Aquí, en el estándar DVB-S.2, se prescriben códigos LDPC de las dos longitudes de código N diferentes de 64.800 bits y 16.200 bits como se ha descrito anteriormente, y se prescriben las 11 tasas de codificación diferentes para el código LDPC cuya longitud de código N es de 64.800 bits y se prescriben las 10 tasas de codificación diferentes para el código LDPC cuya longitud de código N es de 16.200 bits.
Por consiguiente, donde el aparato de transmisión 11 es un aparato que lleva a cabo el procesamiento en cumplimiento con el estándar DVB-S.2, las tablas de valores iniciales de matriz de comprobación de paridad que corresponden individualmente a las 11 tasas de codificación diferentes para el código LDPC cuya longitud de código N es de 64.800 bits y las tablas de valores iniciales de matriz de comprobación de paridad que corresponden individualmente a las 10 tasas de codificación diferentes para el código LDPC cuya longitud de código N es 16.200 bits se almacenan en la sección de codificación LDPC 21.
La sección de codificación LDPC 21 fija una longitud de código N y una tasa de codificación r para códigos LDPC, por ejemplo, en respuesta a una operación de un operador. La longitud de código N y la tasa de codificación r fijada por la sección de codificación LDPC 21 se conocen en lo sucesivo de manera adecuada como longitud de código N fijada y tasa de codificación r fijada, respectivamente.
La sección de codificación LDPC 21 coloca, en base a las tablas de valores iniciales de matriz de comprobación de paridad que corresponden a la longitud de código N fijada y la tasa de codificación r fijada, elementos del valor 1 de una matriz de información Ha que corresponde a una longitud de información K (= Nr = longitud de código N -longitud de paridad M) que corresponde a la longitud de código N fijada y a la tasa de codificación r fijada en un periodo de 360 columnas (número de columnas unidad P de la estructura cíclica) en la dirección de columna para producir una matriz de comprobación de paridad H.
Entonces, la sección de codificación LDPC 21 extrae bits de información para la longitud de información K de datos objeto que son objeto de transmisión, tales como datos de imagen o datos de sonido suministrados desde el aparato de transmisión 11. Además, la sección de codificación LDPC 21 calcula los bits de paridad que corresponden a los bits de información en base a la matriz de comprobación de paridad H para producir una palabra de código (código LDPC) para una longitud de código.
En otras palabras, la sección de codificación LDPC 21 lleva a cabo sucesivamente una operación matemática de un bit de paridad de la palabra de código c que satisface la siguiente expresión.
HcT = 0
Aquí, en la expresión anterior, c indica un vector de fila como la palabra de código (código LDPC) y cT indica la inversión del vector de fila c.
Donde, desde dentro del vector de fila c como un código LDPC (una palabra de código), una parte que corresponde a los bits de información se representa por un vector de fila A y una parte que corresponde a los bits de paridad se representa por un vector de fila T, el vector de fila c se puede representar mediante una expresión c = [A|T] a partir del vector de fila A como los bits de información y del vector de fila T como los bits de paridad.
Mientras tanto, la matriz de comprobación de paridad H se puede representar, a partir de la matriz de información Ha de aquéllos de los bits de código del código LDPC que corresponden a los bits de información y la matriz de paridad Ht de aquéllos de los bits de código del código LDPC que corresponden a los bits de paridad mediante una expresión H = [Ha |Ht] (matriz en donde los elementos de la matriz de información Ha son elementos en el lado izquierdo y los elementos de la matriz de paridad Ht son elementos en el lado derecho).
Además, por ejemplo, en el estándar DVB-S.2, la matriz de comprobación de paridad Ht de la matriz de comprobación de paridad H = [Ha |Ht] tiene una estructura de escalera.
Es necesario para la matriz de comprobación de paridad H y el vector de fila c = [A|T] como código LDPC satisfacer la expresión HcT = 0, y donde la matriz de paridad Ht de la matriz de comprobación de paridad H = [Ha |Ht] tenga una estructura de escalera, el vector de fila T como bits de paridad que configura el vector de fila c = [A|T] que satisface la expresión HcT = 0 se puede determinar secuencialmente fijando los elementos de cada fila a cero en orden comenzando con los elementos de la primera fila del vector de columna HcT en la expresión HcT = 0.
Si la sección de codificación LDPC 21 determina un bit de paridad T para un bit de información A, entonces emite una palabra de código c = [A|T] representada por el bit de información A y el bit de paridad T como resultado de codificación LDPC del bit de información A.
Como se ha descrito anteriormente, la sección de codificación LDPC 21 almacena las tablas de valores iniciales de matriz de comprobación de paridad que corresponden a las longitudes de código N y las tasas de codificación r por adelantado dentro de la misma y lleva a cabo la codificación LDPC de la longitud de código N fijada y la tasa de codificación r fijada usando una matriz de comprobación de paridad H producida a partir de las tablas de valores iniciales de matriz de comprobación de paridad que corresponde a la longitud de código N fijada y la tasa de codificación r fijada.
Cada tabla de valores iniciales de matriz de comprobación de paridad es una tabla que representa la posición de elementos del valor 1 de la matriz de información HA que corresponde a la longitud de información K que corresponde a la longitud de código N y la tasa de codificación r del código LDPC de la matriz de comprobación de paridad H (código LDPC definido por la matriz de comprobación de paridad H) para cada 360 filas (número de columnas unidad P de la estructura periódica), y se produce por adelantado para una matriz de comprobación de paridad H para cada longitud de código N y cada tasa de codificación r.
Las FIG. 78 a 123 ilustran las tablas de valores iniciales de matriz de comprobación de paridad para producir varias matrices de comprobación de paridad H que incluyen tablas de valores iniciales de matriz de comprobación de paridad prescritas en el estándar DVB-S.2.
En particular, la FIG. 78 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 2/3.
Las FIG. 79 a 81 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 2/3.
Se ha de señalar que la FIG. 80 es una vista que continúa desde la FIG. 79 y la FIG. 81 es una vista que continúa desde la FIG. 80.
La FIG. 82 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 3/4.
Las FIG. 83 a 86 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 3/4.
Se ha de señalar que la FIG. 84 es una vista que continúa desde la FIG. 83 y la FIG. 85 es una vista que continúa desde la FIG. 84. Además, la FIG. 86 es una vista que continúa desde la FIG. 85.
La FIG. 87 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 4/5.
Las FIG. 88 a 91 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 4/5.
Se ha de señalar que la FIG. 89 es una vista que continúa desde la FIG. 88 y la FIG. 90 es una vista que continúa desde la FIG. 89. Además, la FIG. 91 es una vista que continúa desde la FIG. 90.
La FIG. 92 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 5/6.
Las FIG. 93 a 96 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 5/6.
Se ha de señalar que la FIG. 94 es una vista que continúa desde la FIG. 93 y la FIG. 95 es una vista que continúa desde la FIG. 94. Además, la FIG. 96 es una vista que continúa desde la FIG. 95.
La FIG. 97 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 8/9.
Las FIG. 98 a 101 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 8/9.
Se ha de señalar que la FIG. 99 es una vista que continúa desde la FIG. 98 y la FIG. 100 es una vista que continúa desde la FIG. 99. Además, la FIG. 101 es una vista que continúa desde la FIG. 100.
Las FIG. 102 a 105 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 9/10.
Se ha de señalar que la FIG. 103 es una vista que continúa desde la FIG. 102 y la FIG. 104 es una vista que continúa desde la FIG. 103. Además, la FIG. 105 es una vista que continúa desde la FIG. 104.
Las FIG. 106 y 107 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 1/4.
Se ha de señalar que la FIG. 107 es una vista que continúa desde la FIG. 106.
Las FIG. 108 y 109 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 1/3.
Se ha de señalar que la FIG. 109 es una vista que continúa desde la FIG. 108.
Las FIG. 110 y 111 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 2/5.
Se ha de señalar que la FIG. 111 es una vista que continúa desde la FIG. 110.
Las FIG. 112 a 114 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 1 /2.
Se ha de señalar que la FIG. 113 es una vista que continúa desde la FIG. 112 y la FIG. 114 es una vista que continúa desde la FIG. 113.
Las FIG. 115 a 117 muestran la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 64.800 bits y una tasa de codificación r de 3/5.
Se ha de señalar que la FIG. 116 es una vista que continúa desde la FIG. 115 y la FIG. 117 es una vista que continúa desde la FIG. 116.
La FIG. 118 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 1/4.
La FIG. 119 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 1/3.
La FIG. 120 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 2/5.
La FIG. 121 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 1 /2.
La FIG. 122 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 3/5.
La FIG. 123 muestra la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 3/5, que se puede usar en lugar de la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 122. La sección de codificación LDPC 21 del aparato de transmisión 11 determina una matriz de comprobación de paridad H de la siguiente manera usando las tablas de valores iniciales de matriz de comprobación de paridad. En particular, la FIG. 124 ilustra un método para determinar una matriz de comprobación de paridad H a partir de una tabla de valores iniciales de matriz de comprobación de paridad.
Se ha de señalar que la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 124 indica la tabla de valores iniciales de matriz de comprobación de paridad para una matriz de comprobación de paridad H prescrita en el estándar DVB-S.2 y que tiene una longitud de código N de 16.200 bits y una tasa de codificación r de 2/3 mostrada en la FIG. 178.
Como se ha descrito anteriormente, la tabla de valores iniciales de matriz de comprobación de paridad es una tabla que representa la posición de elementos del valor 1 de una matriz de información Ha que corresponde a la longitud de información K que corresponde a la longitud de código N y la tasa de codificación r del código LDPC para cada 360 columnas (para cada número de columnas unidad P de la estructura cíclica), y en la primera fila de la tabla de valores iniciales de matriz de comprobación de paridad, un número de números de fila de elementos del valor 1 en la columna de orden 1 360 x (i-1) de la matriz de comprobación de paridad H (números de fila donde el número de fila de la primera fila de la matriz de comprobación de paridad H es 0) es igual al número de ponderaciones de columna que tiene la columna de orden 1 360 x (i-1).
Aquí, se supone que la matriz de paridad Ht de la matriz de comprobación de paridad H que corresponde a la longitud de paridad M tiene una estructura de escalera y se determina por adelantado. Según la tabla de valores iniciales de matriz de comprobación de paridad, se determina la matriz de información Ha que corresponde a la longitud de información K de dentro de la matriz de comprobación de paridad H.
El número de fila k+1 de la tabla de valores iniciales de matriz de comprobación de paridad difiere dependiendo de la longitud de información K.
La longitud de información K y el número de fila k+1 de la tabla de valores iniciales de matriz de comprobación de paridad satisfacen una relación dada por la siguiente expresión.
K = (k 1) x 360
Aquí, 360 en la expresión anterior es el número de columnas unidad P de la estructura cíclica.
En la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 124, se enumeran 13 valores numéricos en la primera a la tercera filas, y se enumeran tres valores numéricos en las filas cuarta a la de orden k+1 (en la Figura 124, la 30a).
Por consiguiente, el número de ponderaciones de columnas en la matriz de comprobación de paridad H determinado a partir de la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 124 es 13 en las filas primera a la de orden 1 360 x (3-1) - 1 pero es 3 en las filas de orden 1 360 x (3-1) a la de orden K.
La primera fila de la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 124 incluye 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481, 3369, 3451,4620 y 2622, y esto indica que, en la primera columna de la matriz de comprobación de paridad H, los elementos en filas de los números de fila de 0, 2084, 1613, 1548, 1286, 1460, 3196, 4297, 2481,3369, 3451,4620 y 2622 tienen el valor 1 (y además los otros elementos tienen el valor 0). Mientras tanto, la segunda fila de la tabla de valores iniciales de matriz de comprobación de paridad de la FIG. 124 incluye 1, 122, 1516, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971, 4358 y 3108, y esto indica que, en la columna de orden 361 (= orden 1+360x (2-1)) de la matriz de comprobación de paridad H, los elementos en filas de los números de filas de 1, 122, 1546, 3448, 2880, 1407, 1847, 3799, 3529, 373, 971,4358 y 3108 tienen el valor 1. Como se ha dado anteriormente, la tabla de valores iniciales de matriz de comprobación de paridad representa la posición de elementos del valor 1 de la matriz de información Ha de la matriz de comprobación de paridad H para cada 360 columnas.
Cada una de las columnas de la matriz de comprobación de paridad H distinta de la columna de orden 1+360x (i-1), es decir, cada una de las columnas desde la columna de orden 2+360x (i-1) hasta la de orden 360xi, incluye elementos del valor de 1 obtenidos desplazando cíclicamente los elementos del valor de 1 de la columna de orden 1+360x (i-1) que dependen de la tabla de valores iniciales de matriz de comprobación de paridad periódicamente en la dirección hacia abajo (en la dirección hacia abajo de la columna) según la longitud de paridad M .
En particular, por ejemplo, la columna de orden 2+360x (i-1) es una columna obtenida desplazando cíclicamente la columna de orden 1+360x (i-1) en la dirección hacia abajo por M/360 (= q), y la siguiente de orden 3+360x (i-1) es una columna obtenida desplazando cíclicamente la columna de orden 1+360x (i-1) en la dirección hacia abajo por 2 x M/360 (= 2 x q) y luego desplazando cíclicamente la columna desplazada cíclicamente (columna de orden 2+360x (i-1)) en la dirección hacia abajo por M/360 (= q).
Ahora, si se supone que el valor numérico en la columna de orden j (orden j desde la izquierda) en la fila de orden i (fila de orden i desde arriba) de la tabla de valores iniciales de matriz de comprobación de paridad se representa por bi,j y el número de fila del elemento de orden j del valor 1 en la columna de orden w de la matriz de comprobación de paridad H se representa por Hw-j, entonces el número de filas Hw-j del elemento del valor 1 en la columna de orden w que es una columna distinta de la columna de orden 1+360x (i-1) de la matriz de comprobación de paridad H se puede determinar según la siguiente expresión.
Hw-j = mod {hi,j mod ((w-1), P) x q, M}
Aquí, mod (x, y) significa un resto cuando x se divide por y.
Mientras tanto, P es un número de columnas unidad de la estructura cíclica descrita anteriormente y es, por ejemplo, en el estándar DVB-S.2, 360. Además, q es un valor M/360 obtenido dividiendo la longitud de paridad M por el número de columnas unidad P (= 360) de la estructura cíclica.
La sección de codificación LDPC 21 especifica el número de filas de los elementos del valor 1 en la columna de orden 1+360x (i-1) de la matriz de comprobación de paridad H de la tabla de valores iniciales de matriz de comprobación de paridad.
Además, la sección de codificación LDPC 21 determina el número de fila Hw-j del elemento del valor 1 en la columna de orden w que es una columna distinta de la columna de orden 1+360x (i-1) de la matriz de comprobación de paridad H y produce una matriz de comprobación de paridad H en la que los elementos de los números de fila obtenidos mediante lo precedente tienen el valor 1.
Ahora, se describen las variaciones del método de sustitución de bits de código de un código LDPC en el proceso de sustitución mediante la sección de sustitución 32 del demultiplexor 25 en el aparato de transmisión 11, es decir, del patrón de asignación (conocido en lo sucesivo como patrón de asignación de bits) de bits de código de un código LDPC y bits de símbolo representativos de un símbolo.
En el demultiplexor 25, los bits de código del código LDPC se escriben en la dirección de columna de la memoria 31, que almacena (N/ (mb)) x (mb) bits en la dirección de columna x la dirección de fila. A partir de entonces, los bits de código se leen en una unidad de mb bits en la dirección de fila. Además, en el demultiplexor 25, la sección de sustitución 32 sustituye los mb bits de código leídos en la dirección de fila de la memoria 31 y determina los bits de código después de la sustitución como mb bits de símbolos de símbolos b (sucesivos).
En particular, la sección de sustitución 32 determina el bit de orden i+1 a partir del bit más significativo de los mb bits de código leídos en la dirección de fila de la memoria 31 como el bit de código bi y determina el bit de orden i+1 a partir del bit más significativo de los mb bits de símbolo de los b símbolos (sucesivos) como el bit de símbolo yi, y entonces sustituye los mb bits de código bü a bmb-1 según un patrón de asignación de bits predeterminado.
La FIG. 125 muestra un ejemplo de un patrón de asignación de bits de que se puede adoptar donde el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 5/6 o 9/10 y además el método de modulación es 4096QAM y el múltiplo b es 1.
Donde el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 5/6 o 9/10 y además el método de modulación es 4096QAM y el múltiplo b es 1, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (64.800/ (12 x 1)) x (12 x 1) bits en la dirección de columna x la dirección de fila se leen en una unidad de 12 x 1 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
La sección de sustitución 32 sustituye 12 x 1 (= mb) bits de código b0 a bu de manera que los 12 x 1 (= mb) bits de código b0 a bu que se leen de la memoria 31 se pueden asignar a los 12 x 1 (= mb) bits de símbolo y0 a yn de un (= b) símbolo como se ve en la FIG. 125.
En particular, según la FIG. 125, la sección de sustitución 32 lleva a cabo, con respecto a ambos de un código LDPC que tiene la tasa de codificación de 5/6 y un código LDPC que tiene la tasa de codificación de 9/10 de entre los códigos LDPC que tienen la longitud de código N de 64.800 bits, una sustitución para asignar
el bit de código
Figure imgf000053_0001
bit de símbolo y8 ,
el bit de código
Figure imgf000053_0002
bit de símbolo y0 ,
el bit de código
Figure imgf000053_0003
bit de símbolo y6 ,
el bit de código b3 al bit de símbolo y1,
el bit de código b4 al bit de símbolo y4 ,
el bit de código b5 al bit de símbolo y5 ,
el bit de código b6 al bit de símbolo y2 ,
el bit de código b7 al bit de símbolo y3 ,
el bit de código b8 al bit de símbolo y7 ,
el bit de código b9 al bit de símbolo y10,
el bit de código b10 al bit de símbolo yn, y
el bit de código bu al bit de símbolo y9.
La FIG. 226 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 5/6 o 9/10 y además el método de modulación es 4096QAM y el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es de 64.800 bits y cuya tasa de codificación es 5/6 o 9/10 y además el método de modulación es 4096QAM y el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (64.800/ (12 x 2)) x (12 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 12 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
La sección de sustitución 32 sustituye 12 x 2 (= mb) bits de código bü a b23 de manera que los 12 x 2 (= mb) bits de código b0 a b23 que se leen de la memoria 31 se pueden asignar a los 12 x 2 (= mb) bits de símbolo y0 a y23 de dos (= b) símbolos sucesivos como se ve en la FIG. 126.
En particular, según la FIG. 126, la sección de sustitución 32 lleva a cabo, con respecto a ambos de un código LDPC que tiene la tasa de codificación de 5/6 y un código LDPC que tiene la tasa de codificación de 9/10 de entre los códigos LDPC que tienen la longitud de código N de 64.800 bits, una sustitución para asignar
el bit de código b0 al bit de símbolo y8 ,
el bit de código b2 al bit de símbolo y0 ,
el bit de código b4 al bit de símbolo y6 ,
el bit de código b6 al bit de símbolo y1,
el bit de código b8 al bit de símbolo y4 ,
el bit de código b10 al bit de símbolo y5 ,
el bit de código b12 al bit de símbolo y2 ,
el bit de código bu al bit de símbolo y3 ,
el bit de código b16 al bit de símbolo y7,
el bit de código b18 al bit de símbolo y10,
el bit de código b20 al bit de símbolo yn,
el bit de código b22 al bit de símbolo y9 ,
el bit de código b1 al bit de símbolo y20,
el bit de código b3 al bit de símbolo y12,
el bit de código b5 al bit de símbolo y18,
el bit de código b7 al bit de símbolo y13,
el bit de código b9 al bit de símbolo y16,
el bit de código bu al bit de símbolo y17,
el bit de código b13 al bit de símbolo yu,
el bit de código b i5 al bit de símbolo yi5,
el bit de código b17 al bit de símbolo y19,
el bit de código b19 al bit de símbolo y22,
el bit de código b21 al bit de símbolo y23, y
el bit de código b23 al bit de símbolo y21.
Aquí, el patrón de asignación de bits de la FIG. 126 utiliza el patrón de asignación de bits de la FIG. 125 en donde el múltiplo b es 1 sin ninguna modificación. En particular, en la FIG. 126, la asignación de los bits de código b0 , b2 , ..., b22 a los bits de símbolo yi y la asignación de los b1, b3, ..., b23 a los bits de símbolo yi de los bits de código b0 a bu a los bits de símbolo y1 de la FIG. 125.
La FIG. 127 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el método de modulación es 1024QAM y el código LDPC es un código LDPC cuya longitud de código N es 16.200 bits y cuya tasa de codificación es 3/4, 5/6 u 8/9 y además el múltiplo b es 2 y también donde el método de modulación es 1024QAM y el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya longitud de codificación es 3/4, 5/6 o 9/10 y además el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es 16.200 bits y cuya tasa de codificación es 3/4, 5/6 u 8/9 y el método de modulación es 1024QAM y además el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (16.200/ (10 x 2)) x (10 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 10 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
Por otra parte, donde el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 3/4, 5/6 o 9/10 y el método de modulación es 1024QAM y además el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (64.800/ (10 x 2)) x (10 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 10 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
La sección de sustitución 32 sustituye 10 x 2 (= mb) bits de código bü a b19 de manera que los 10 x 2 (= mb) bits de código b0 a b19 que se leen de la memoria 31 se pueden asignar a los 10 x 2 (= mb) bits de símbolo y0 a y19 de dos
(= b) símbolos sucesivos como se ve en la FIG. 127.
En particular, según la FIG. 127, la sección de sustitución 32 lleva a cabo, con respecto a todos los códigos LDPC que tienen la tasa de codificación de 3/4, los códigos LDPC que tienen la tasa de codificación de 5/6 y los códigos LDPC que tienen una tasa de codificación adicional de 8/9 de entre los códigos LDPC que tienen la longitud de código N de 16.200 así como un código LDPC que tiene la tasa de codificación de 3/4, los códigos LDPC que tienen la tasa de codificación de 5/6 y los códigos LDPC que tienen una tasa de codificación adicional de 9/10 de entre los códigos LDPC que tienen otra longitud de código N de 64.800, una sustitución para asignar
el bit de código b0 al bit de símbolo ye,
el bit de código b1 al bit de símbolo y3 ,
el bit de código b2 al bit de símbolo y7,
el bit de código b3 al bit de símbolo y10,
el bit de código b4 al bit de símbolo y19,
el bit de código b5 al bit de símbolo y4,
el bit de código b6 al bit de símbolo y9,
el bit de código b7 al bit de símbolo y5,
el bit de código b8 al bit de símbolo y17,
el bit de código b9 al bit de símbolo y6,
el bit de código b10 al bit de símbolo yu,
el bit de código bu al bit de símbolo yu,
el bit de código b12 al bit de símbolo y2 ,
el bit de código bi3 al bit de símbolo yi8,
el bit de código b i4 al bit de símbolo yi6,
el bit de código b i5 al bit de símbolo yi5,
el bit de código bi6 al bit de símbolo y0 ,
el bit de código b i7 al bit de símbolo yi,
el bit de código bi8 al bit de símbolo yi3, y
el bit de código b i9 al bit de símbolo yi2.
La FIG. 128 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el método de modulación es 4096QAM y el código LDPC es un código LDPC cuya longitud de código N es i6.200 bits y cuya tasa de codificación es 5/6 u 8/9 y además el múltiplo b es 2 y también donde el método de modulación es 4096QAM y el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 5/6 o 9/i 0 y además el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es i6.200 bits y cuya tasa de codificación es 5/6 u 8/9 y el método de modulación es 4096QAM y además el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 3i para almacenar (i6.200/ (i2 x 2)) x (i2 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de i 2 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
Por otra parte, donde el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 5/6 o 9/i 0 y el método de modulación es 4096QAM y además el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 3i para almacenar (64.800/ (i2 x 2)) x (i2 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de i 2 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
La sección de sustitución 32 sustituye i2 x 2 (= mb) bits de código bü a b23 de manera que los i2 x 2 (= mb) bits que se leen de la memoria 3i se pueden asignar a los i2 x 2 (= mb) bits de símbolo y0 a y23 de dos (= b) símbolos sucesivos como se ve en la FIG. 128.
En particular, según la FIG. 128, la sección de sustitución 32 lleva a cabo, con respecto a todos los códigos LDPC que tienen la tasa de codificación de 5/6 y los códigos LDPC que tienen la tasa de codificación de 8/9 de entre los códigos LDPC que tienen la longitud de código de i6.200 bits así como códigos LDPC que tienen la tasa de codificación de 5/6 y códigos LDPC que tienen la tasa de codificación de 9/i 0 de entre los códigos LDPC que tienen otra longitud de código N de 64.800, una sustitución para asignar
el bit de código b0 al bit de símbolo y i0 ,
el bit de código bi al bit de símbolo y i5 ,
el bit de código b2 al bit de símbolo y4,
el bit de código b3 al bit de símbolo y i9 ,
el bit de código b4 al bit de símbolo y2 i,
el bit de código b5 al bit de símbolo yi6,
el bit de código b6 al bit de símbolo y23,
el bit de código b7 al bit de símbolo yis,
el bit de código bs al bit de símbolo yii,
el bit de código b9 al bit de símbolo yi4,
el bit de código bi0 al bit de símbolo y22,
el bit de código bi i al bit de símbolo y5,
el bit de código b i2 al bit de símbolo y6,
el bit de código b i3 al bit de símbolo yi7,
el bit de código b i4 al bit de símbolo yi3,
el bit de código b i5 al bit de símbolo y20,
el bit de código b16 al bit de símbolo y1,
el bit de código b17 al bit de símbolo y3,
el bit de código b18 al bit de símbolo y9,
el bit de código b19 al bit de símbolo y2.
el bit de código b20 al bit de símbolo y7,
el bit de código b21 al bit de símbolo y8,
el bit de código b22 al bit de símbolo y12, y
el bit de código y23 al bit de símbolo y0.
Según los patrones de asignación de bits mostrados en las FIG. 125 a 128, se puede adoptar el mismo patrón de asignación de bits para una pluralidad de tipos de códigos LDPC, y, además, la tolerancia a los errores se puede fijar a un rendimiento deseado con respecto a todos los múltiples tipos de códigos LDPC.
En particular, las FIG. 129 a 132 ilustran resultados de simulaciones de la BER (Tasa de Error de Bit) donde se lleva a cabo un proceso de sustitución según los patrones de asignación de bits de las FIG. 125 a 128.
Se ha de señalar que, en las FIG. 129 a 132, el eje de abscisas representa Es/No (relación potencia de señal a potencia de ruido por un símbolo) y el eje de ordenadas representa la BER.
Además, la curva de línea continua representa la BER donde se lleva a cabo el proceso de sustitución y una línea discontinua larga y corta alterna representa la BER donde no se lleva a cabo un proceso de sustitución.
La FIG. 129 ilustra la BER donde se lleva a cabo un proceso de sustitución según el patrón de asignación de bits de la FIG. 125 para códigos LDPC cuya longitud de código N es 64.800 y cuya tasa de codificación es 5/6 y 9/10 adoptando 4096QAM como el método de modulación y fijando el múltiplo b a 1.
La FIG. 130 ilustra la BER donde se lleva a cabo un proceso de sustitución según el patrón de asignación de bits de la FIG. 126 para códigos LDPC cuya longitud de código N es 64.800 y cuya tasa de codificación es 5/6 y 9/10 adoptando 4096QAM como el método de modulación y fijando el múltiplo b a 2.
Se ha de señalar que, en las FIG. 129 y 130, un gráfico que tiene una marca triangular aplicada al mismo representa la BER con respecto al código LDPC que tiene la tasa de codificación de 5/6, y un gráfico que tiene un asterisco aplicado al mismo representa la BER con respecto al código LDPC que tiene la tasa de codificación de 9/10.
La FIG. 131 ilustra la BER donde se lleva a cabo un proceso de sustitución según el patrón de asignación de bits de la FIG. 127 para códigos LDPC cuya longitud de código N es 16.200 y cuya tasa de codificación es 3/4, 5/6 y 8/9 y para códigos LDPC cuya longitud de código N es 64.800 y cuya tasa de codificación es 3/4, 5/6 y 9/10 adoptando 1024QAM como el método de modulación y fijando el múltiplo b a 2.
Se ha de señalar que, en la FIG. 131, un gráfico que tiene un asterisco aplicado al mismo representa la BER con respecto al código LDPC que tiene la longitud de código N de 64.800 y la tasa de codificación de 9/10, y un gráfico que tiene una marca triangular dirigida hacia arriba aplicada al mismo representa la BER con respecto a los códigos LDPC que tienen la longitud de código N de 64.800 y la tasa de codificación de 5/6. Además, un gráfico que tiene una marca cuadrada aplicada al mismo representa la BER con respecto al código LDPC que tiene la longitud de código N de 64.800 y la tasa de codificación de 3/4.
Además, en la FIG. 131, un gráfico que tiene una marca redonda aplicada al mismo representa la BER con respecto al código LDPC que tiene la longitud de código N de 16.200 y la tasa de codificación de 8/9, y un gráfico que tiene una marca triangular dirigida hacia abajo aplicada al mismo representa la BER con respecto al código LDPC que tiene la longitud de código N de 16.200 y la tasa de codificación de 5/6. Además, un gráfico que tiene una marca más aplicada al mismo representa la BER con respecto al código LDPC que tiene la longitud de código N de 16.200 y la tasa de codificación de 3/4.
La FIG. 132 ilustra la BER donde se lleva a cabo un proceso de sustitución según el patrón de asignación de bits de la FIG. 128 para códigos LDPC cuya longitud de código N es 16.200 y cuya tasa de codificación es 5/6 y 8/9 y para códigos LDPC cuya longitud de código N es 64.800 y cuya tasa de codificación es 5/6 y 9/10 adoptando 4096QAM como el método de modulación y fijando el múltiplo b a 2.
Se ha de señalar que, en la FIG. 132, un gráfico que tiene un asterisco aplicado al mismo representa la BER con respecto al código LDPC que tiene la longitud de código N de 64.800 y tasa de codificación de 9/10, y un gráfico que tiene una marca triangular dirigida hacia arriba aplicada al mismo representa la BER con respecto a los códigos LDPC que tienen la longitud de código N de 64.800 y la tasa de codificación de 5/6.
Además, en la FIG. 132, un gráfico que tiene una marca redonda aplicada al mismo representa la BER con respecto al código LDPC que tiene la longitud de código N de 16.200 y la tasa de codificación de 8/9, y un gráfico que tiene una marca triangular dirigida hacia abajo aplicada al mismo representa la BER con respecto al código LDPC que tiene la longitud de código N de 16.200 y la tasa de codificación de 5/6.
Según las FIG. 129 a 132, se puede adoptar el mismo patrón de asignación de bits con respecto a una pluralidad de tipos de códigos LDPC. Además, la tolerancia a los errores se puede fijar a un rendimiento deseado con respecto a todos los múltiples tipos de códigos LDPC.
En particular, donde se adopta un patrón de asignación de bits para uso exclusivo para cada uno de una pluralidad de tipos de códigos LDPC que tienen diferentes longitudes de código y diferentes tasas de codificación, la tolerancia a un error se puede elevar a un rendimiento muy alto. No obstante, es necesario cambiar el patrón de asignación de bits para cada uno de una pluralidad de tipos de códigos LDPC.
Por otra parte, según los patrones de asignación de bits de las FIG. 125 a 128, se puede adoptar el mismo patrón de asignación de bits para una pluralidad de tipos de códigos LDPC que tienen diferentes longitudes de código y diferentes tasas de codificación, y se elimina la necesidad de cambiar el patrón de asignación de bits para cada uno de una pluralidad de tipos de códigos LDPC como en un caso en donde se adopta un patrón de asignación de bits para uso exclusivo para cada uno de una pluralidad de tipos de códigos LDPC.
Además, según los patrones de asignación de bits de las FIG. 125 a 128, se puede elevar la tolerancia a errores a un rendimiento alto, aunque es un poco menor que aquél donde se adopta un patrón de asignación de bits para uso exclusivo para cada uno de una pluralidad de tipos de códigos LDPC.
En particular, por ejemplo, donde el método de modulación es 4096QAM, se puede usar el mismo patrón de asignación de bits en la FIG. 125 o 126 para todos los códigos LDPC que tienen la longitud de código N de 64.800 y la tasa de codificación de 5/6 y 9/10. Incluso donde se adopta el mismo patrón de asignación de bits de esta manera, se puede elevar la tolerancia a errores a un rendimiento alto.
Además, por ejemplo, donde el método de modulación es 1024QAM, se puede adoptar el mismo patrón de asignación de bits de la FIG. 127 para todos los códigos LDPC que tienen la longitud de código N de 16.200 y la tasa de codificación de 3/4, 5/6 y 8/9 y los códigos LDPC que tienen la longitud de código N de 64.800 y la tasa de codificación de 3/4, 5/6 y 9/10. Entonces, incluso si se adopta el mismo patrón de asignación de bits de esta manera, se puede elevar la tolerancia a errores a un rendimiento alto.
Mientras tanto, por ejemplo, donde el método de modulación es 4096QAM, se puede adoptar el mismo patrón de asignación de bits de la FIG. 128 para todos los códigos LDPC que tienen la longitud de código N de 16.200 y la tasa de codificación de 5/6 y 8/9 y los códigos LDPC que tienen la longitud de código N de 64.800 y la tasa de codificación de 5/6 y 9/10. Entonces, incluso si se adopta el mismo patrón de asignación de bits de esta manera, se puede elevar la tolerancia a errores a un rendimiento alto.
Se describen además variaciones del patrón de asignación de bits.
La FIG. 133 ilustra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el código LDPC es cualquier código LDPC que tiene la longitud de código N de 16.200 o 64.800 bits y una de las tasas de codificación para el código LDPC definido por una matriz de comprobación de paridad H producida, por ejemplo, a partir de cualquiera de las tablas de valores iniciales de matriz de comprobación de paridad mostradas en las FIG. 78 a 123 distintas de la tasa de codificación de 3/5 y además el método de modulación es QPSK y el múltiplo b es 1.
Donde el código LDPC es un código LDPC que tiene la longitud de código N de 16.200 o 64.800 bits y tiene la tasa de codificación distinta de 3/5 y además el método de modulación es QPSK y el múltiplo b es 1, el demultiplexor 25 lee bits de código escritos en la memoria 31 para almacenar (N/ (2 x 1)) x (2 x 1) bits en la dirección de columna x la dirección de fila en una unidad de 2 x 1 (= mb) bits en la dirección de fila y suministra los bits de código leídos a la sección de sustitución 32.
La sección de sustitución 32 sustituye los 2 x 1 (= mb) bits de código bü y b1 leídos de la memoria 31 de tal manera que los 2 x 1 (= mb) bits de código b0 y b1 se asignan a los 2 x 1 (= mb) bits de símbolo y0 e y1 de un (= b) símbolo como se ve en la FIG. 133.
En particular, según la FIG. 133, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y0 y
el bit de código b1 al bit de símbolo y1.
Se ha de señalar que, en este caso, también es posible considerar que la sustitución no se lleva a cabo y los bits de código b0 y b1 se determinan como están como los bits de símbolo y0 e y1, respectivamente.
La FIG. 134 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el código LDPC es un código LDPC que tiene la longitud de código N de 16.200 o 64.800 bits y tiene la tasa de codificación distinta de 3/5 y además el método de modulación es 16QAM y el múltiplo b es 2.
Donde el código LDPC es un código LDPC que tiene la longitud de código N de 16.200 o 64.800 bits y tiene la tasa de codificación distinta de 3/5 y además el método de modulación es 16QAM y el múltiplo b es 2, el demultiplexor 25 lee los bits de código escritos en la memoria 31 para almacenar (N/ (4 x 2)) x (4 x 2) bits en la dirección de columna x la dirección de fila en una unidad de 4 x 2 (= mb) bits en la dirección de fila y suministra los bits de código leídos a la sección de sustitución 32.
La sección de sustitución 32 sustituye los 4 x 2 (= mb) bits de código bü a b7 leídos de la memoria 31 de tal manera que los 4 x 2 (= mb) bits de código se asignan a los 4 x 2 (= mb) bits de símbolo y0 a y7 de dos (= b) símbolos sucesivos como se ve en la FIG. 134.
En particular, según la FIG. 134, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y7 ,
el bit de código b1 al bit de símbolo y1,
el bit de código b2 al bit de símbolo y4 ,
el bit de código b3 al bit de símbolo y2 ,
el bit de código b4 al bit de símbolo y5 ,
el bit de código b5 al bit de símbolo y3 ,
el bit de código b6 al bit de símbolo y6 , y
el bit de código b7 al bit de símbolo y0.
La FIG. 135 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el método de modulación es 64QAM y el código LDPC es un código LDPC cuya longitud de código N es 16.200 o 64.800 bits y cuya tasa de codificación es cualquiera distinta de 3/5 y además el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es 16.200 o 64.800 bits y cuya tasa de codificación es cualquiera distinta de 3/5 y el método de modulación es 64QAM y además el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (N/ ( 6 x 2)) x ( 6 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 6 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
La sección de sustitución 32 sustituye los 6 x 2 (= mb) bits de código b0 a bu leídos de la memoria 31 de manera que los 6 x 2 (= mb) bits de código b0 a bu se pueden asignar a los 6 x 2 (= mb) bits de símbolo y0 a yu de dos (= b) símbolos sucesivos como se ve en la FIG. 135.
En particular, según la FIG. 135, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo yu,
el bit de código b1 al bit de símbolo y7,
el bit de código b2 al bit de símbolo y3 ,
el bit de código b3 al bit de símbolo y10,
el bit de código b4 al bit de símbolo y6 ,
el bit de código b5 al bit de símbolo y2 ,
el bit de código b6 al bit de símbolo yg,
el bit de código b7 al bit de símbolo y5 ,
el bit de código bs al bit de símbolo y1,
el bit de código bg al bit de símbolo y8 ,
el bit de código b10 al bit de símbolo y4 , y
el bit de código bu al bit de símbolo y0.
La FIG. 136 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el método de modulación es 256QAM y el código LDPC es un código LDPC cuya longitud de código N es de 64.800 bits y cuya tasa de codificación es cualquiera distinta de 3/5 y además el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es cualquiera distinta de 3/5 y el método de modulación es 256QAM y además el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (64.800/ ( 8 x 2)) x ( 8 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 8 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
La sección de sustitución 32 sustituye los 8 x 2 (= mb) bits de código bü a b15 leídos de la memoria 31 de manera que los 8 x 2 (= mb) bits de código b0 a b15 se pueden asignar a los 8 x 2 (= mb) bits de símbolo y0 a y15 de dos (= b) símbolos sucesivos como se ve en la FIG. 136.
En particular, según la FIG. 136, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y15,
el bit de código b1 al bit de símbolo y1,
el bit de código b2 al bit de símbolo y13,
el bit de código b3 al bit de símbolo y3,
el bit de código b4 al bit de símbolo ys,
el bit de código b5 al bit de símbolo yn,
el bit de código b6 al bit de símbolo y9,
el bit de código b7 al bit de símbolo y5,
el bit de código b8 al bit de símbolo y10,
el bit de código b9 al bit de símbolo y6,
el bit de código b10 al bit de símbolo y4,
el bit de código bu al bit de símbolo y7,
el bit de código b12 al bit de símbolo y12,
el bit de código b13 al bit de símbolo y2 ,
el bit de código b14 al bit de símbolo yu, y
el bit de código b15 al bit de símbolo y0.
La FIG. 137 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el método de modulación es 256QAM y el código LDPC es un código LDPC cuya longitud de código N es 16.200 bits y cuya tasa de codificación es cualquiera distinta de 3/5 y además el múltiplo b es 1.
Donde el código LDPC es un código LDPC cuya longitud de código N es 16.200 bits y cuya tasa de codificación es cualquiera distinta de 3/5 y el método de modulación es 256QAM y además el múltiplo b es 1, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (16.200/ ( 8 x 1)) x ( 8 x 1) bits en la dirección de columna x la dirección de fila se leen en una unidad de 8 x 1 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
La sección de sustitución 32 sustituye los 8 x 1 (= mb) bits de código b0 a b7 leídos de la memoria 31 de manera que los 8 x 1 (= mb) bits de código b0 a b7 se pueden asignar a los 8 x 1 (= mb) bits de símbolo y0 a y7 de un (= b) símbolo como se ve en la FIG. 137.
En particular, según la FIG. 137, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y7 ,
el bit de código b1 al bit de símbolo y3,
el bit de código b2 al bit de símbolo y1,
el bit de código b3 al bit de símbolo y5,
el bit de código b4 al bit de símbolo y2 ,
el bit de código b5 al bit de símbolo y6 ,
el bit de código b6 al bit de símbolo y4 , y
el bit de código b7 al bit de símbolo y0.
La FIG. 138 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el código LDPC es un código LDPC cuya longitud de código N es de 16.200 o 64.800 bits y cuya tasa de codificación es cualquiera distinta de 3/5 y además el método de modulación es QPSK y el múltiplo b es 1.
Donde el código LDPC es un código LDPC cuya longitud de código N es 16.200 o 64.800 bits y cuya tasa de codificación es cualquiera distinta de 3/5 y además el método de modulación es QPSK y el múltiplo b es 1, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (N/ (2 x 1)) x (2 x 1) bits en la dirección de columna x la dirección de fila se leen en una unidad de 2 x 1 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
La sección de sustitución 32 sustituye los 2 x 1 (= mb) bits de código b0 y b1 leídos de la memoria 31 de manera que los 2 x 1 (= mb) bits de código bü y b1 se pueden asignar a los 2 x 1 (= mb) bits de símbolo y0 e y1 de un (= b) símbolo como se ve en la FIG. 138.
En particular, según la FIG. 138, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y0 , y
el bit de código b1 al bit de símbolo y2.
Se ha de señalar que, en este caso, también es posible considerar que la sustitución no se lleva a cabo y los bits de código b0 y b1 se determinan como están como los bits de símbolo y0 e y1, respectivamente.
La FIG. 139 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el código LDPC es un código LDPC cuya la longitud de código N es 64.800 bits y cuya tasa de codificación es 3/5 y además el método de modulación es 1 6 QAM y el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 3/5 y además el método de modulación es 16QAM y el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (64.800/ (4 x 2)) x (4 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 4 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32. La sección de sustitución 32 sustituye los 4 x 2 (= mb) bits de código b0 a b7 leídos de la memoria 31 de manera que los 4 x 2 (= mb) bits de código b0 a b7 se pueden asignar a los 4 x 2 (= mb) bits de símbolo y0 a y7 de dos (= b) símbolos sucesivos como se ve en la FIG. 139.
En particular, según la FIG. 139, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y0 ,
el bit de código b1 al bit de símbolo y5 ,
el bit de código b2 al bit de símbolo y1,
el bit de código b3 al bit de símbolo y2 ,
el bit de código b4 al bit de símbolo y4,
el bit de código b5 al bit de símbolo y7,
el bit de código b6 al bit de símbolo y3, y
el bit de código b7 al bit de símbolo y6.
La FIG. 140 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el código LDPC es un código LDPC cuya longitud de código N es de 16.200 bits y cuya tasa de codificación es 3/5 y además el método de modulación es 16QAM y el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es 16.200 bits y cuya tasa de codificación es 3/5 y además el método de modulación es 16QAM y el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (16.200/ (4 x 2)) x (4 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 4 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32.
La sección de sustitución 32 sustituye los 4 x 2 (= mb) bits de código b0 a b7 leídos de la memoria 31 de manera que los 4 x 2 (= mb) bits de código b0 a b7 se pueden asignar a los 4 x 2 (= mb) bits de símbolo y0 a y7 de dos (= b) símbolos sucesivos como se ve en la FIG. 240.
En particular, según la FIG. 140, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código bü al bit de símbolo y7 ,
el bit de código b1 al bit de símbolo y1,
el bit de código b2 al bit de símbolo y4 ,
el bit de código b3 al bit de símbolo y2 ,
el bit de código b4 al bit de símbolo y5 ,
el bit de código b5 al bit de símbolo y3 ,
el bit de código b6 al bit de símbolo y6 , y
el bit de código b7 al bit de símbolo y0.
La FIG. 141 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el método de modulación es 64QAM y el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 3/5 y además el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 3/5 y el método de modulación es 64QAM y además el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (64.800/ ( 6 x 2)) x ( 6 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 6 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32. La sección de sustitución 32 sustituye los 6 x 2 (= mb) bits de código b0 a bu leídos de la memoria 31 de manera que los 6 x 2 (= mb) bits de código b0 a bu se pueden asignar a los 6 x 2 (= mb) bits de símbolo y0 a yu de dos (= b) símbolos sucesivos como se ve en la FIG. 141.
En particular, según la FIG. 141, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y2 ,
el bit de código b1 al bit de símbolo y7,
el bit de código b2 al bit de símbolo y6 ,
el bit de código b3 al bit de símbolo y9 ,
el bit de código b4 al bit de símbolo y0 ,
el bit de código b5 al bit de símbolo y3 ,
el bit de código b6 al bit de símbolo y1,
el bit de código b7 al bit de símbolo y8 ,
el bit de código b8 al bit de símbolo y4 ,
el bit de código b9 al bit de símbolo yu,
el bit de código b10 al bit de símbolo y5 , y
el bit de código bu al bit de símbolo y10.
La FIG. 142 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el método de modulación es 64QAM y el código LDPC es un código LDPC cuya longitud de código N es de 16.200 bits y cuya tasa de codificación es 3/5 y además el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es 16.200 bits y cuya tasa de codificación es 3/5 y el método de modulación es 64QAM y además el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (16.200/ ( 6 x 2)) x ( 6 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 6 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32. La sección de sustitución 32 sustituye los 6 x 2 (= mb) bits de código b0 a bu leídos de la memoria 31 de manera que los 6 x 2 (= mb) bits de código b0 a bii se pueden asignar a los 6 x 2 (= mb) bits de símbolo y0 a yii de dos (= b) símbolos sucesivos como se ve en la FIG. 142.
En particular, según la FIG. 142, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo yn,
el bit de código b1 al bit de símbolo y7,
el bit de código b2 al bit de símbolo y3,
el bit de código b3 al bit de símbolo y10,
el bit de código b4 al bit de símbolo y6,
el bit de código b5 al bit de símbolo y2 ,
el bit de código b6 al bit de símbolo y9,
el bit de código b7 al bit de símbolo y5,
el bit de código b8 al bit de símbolo y1,
el bit de código b9 al bit de símbolo y8,
el bit de código b10 al bit de símbolo y4, y
el bit de código bu al bit de símbolo y0.
La FIG. 143 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el método de modulación es 256QAM y el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 3/5 y además el múltiplo b es 2.
Donde el código LDPC es un código LDPC cuya longitud de código N es 64.800 bits y cuya tasa de codificación es 3/5 y el método de modulación es 256QAM y además el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (64.800/ (8 x 2)) x (8 x 2) bits en la dirección de columna x la dirección de fila se leen en una unidad de 8 x 2 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32. La sección de sustitución 32 sustituye los 8 x 2 (= mb) bits de código bü a b15 leídos de la memoria 31 de manera que los 8 x 2 (= mb) bits de código b0 a b15 se pueden asignar a los 8 x 2 (= mb) bits de símbolo y0 a y15 de dos (= b) símbolos sucesivos como se ve en la FIG. 143.
En particular, según la FIG. 143, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y2 ,
el bit de código b1 al bit de símbolo yn,
el bit de código b2 al bit de símbolo y3,
el bit de código b3 al bit de símbolo y4,
el bit de código b4 al bit de símbolo y0,
el bit de código b5 al bit de símbolo y9 ,
el bit de código b6 al bit de símbolo y1,
el bit de código b7 al bit de símbolo y8,
el bit de código bs al bit de símbolo y10,
el bit de código b9 al bit de símbolo y13,
el bit de código b10 al bit de símbolo y7 ,
el bit de código bu al bit de símbolo yu,
el bit de código b12 al bit de símbolo y6 ,
el bit de código b13 al bit de símbolo y15,
el bit de código bi4 al bit de símbolo y5, y
el bit de código b15 al bit de símbolo y12.
La FIG. 144 muestra un ejemplo de un patrón de asignación de bits que se puede adoptar donde el método de modulación es 256QAM y el código LDPC es un código LDPC cuya longitud de código N es 16.200 bits y cuya tasa de codificación es 3/5 y además el múltiplo b es 1.
Donde el código LDPC es un código LDPC cuya longitud de código N es 16.200 bits y cuya tasa de codificación es 3/5 y el método de modulación es 256QAM y además el múltiplo b es 1, en el demultiplexor 25, los bits de código escritos en la memoria 31 para almacenar (16.200/ ( 8 x 1)) x ( 8 x 1) bits en la dirección de columna x la dirección de fila se leen en una unidad de 8 x 1 (= mb) bits en la dirección de fila y se suministran a la sección de sustitución 32. La sección de sustitución 32 sustituye los 8 x 1 (= mb) bits de código bü a b7 leídos de la memoria 31 de manera que los 8 x 1 (= mb) bits de código b0 a b7 se pueden asignar a los 8 x 1 (= mb) bits de símbolo y0 a y7 de un (= b) símbolo como se ve en la FIG. 144.
En particular, según la FIG. 144, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y7,
el bit de código b1 al bit de símbolo y3,
el bit de código b2 al bit de símbolo y1,
el bit de código b3 al bit de símbolo y5,
el bit de código b4 al bit de símbolo y2 ,
el bit de código b5 al bit de símbolo y6,
el bit de código b6 al bit de símbolo y4, y
el bit de código b7 al bit de símbolo y0.
Ahora, se describe el desintercalador 53 que compone el aparato de recepción 12.
La FIG. 145 es una vista que ilustra el procesamiento del multiplexor 54 que compone el desintercalador 53.
En particular, A de la FIG. 145 muestra un ejemplo de una configuración funcional del multiplexor 54.
El multiplexor 54 se compone de una sección de sustitución inversa 1001 y una memoria 1002.
El multiplexor 54 determina los bits de símbolo de símbolos suministrados desde la sección de descorrespondencia 52 en la etapa anterior como un objeto de procesamiento de la misma y lleva a cabo un proceso de sustitución inversa que corresponde al proceso de sustitución llevado a cabo por el demultiplexor 25 del aparato de transmisión 11 (proceso inverso al proceso de sustitución), es decir, un proceso de sustitución inversa de devolución de las posiciones de los bits de código (bits de símbolo) del código LDPC sustituido por el proceso de sustitución. Entonces, el multiplexor 54 suministra un código LDPC obtenido como resultado del proceso de sustitución inversa al desintercalador de torsión de columna 55 en la etapa sucesiva.
En particular, en el multiplexor 54, se suministran mb bits de símbolo y0 , y1, ..., ymb-1 de b símbolos en una unidad de b símbolos (sucesivos) a la sección de sustitución inversa 1 0 0 1.
La sección de sustitución inversa 1001 lleva a cabo una sustitución inversa de devolución de la disposición de los mb bits de símbolo y0 a ymb-1 a la disposición original de los mb bits de código b0 , b1, ..., bmb-1 (se lleva a cabo una disposición de los bits de código b0 a bmb-1 antes de la sustitución por la sección de sustitución 32 que compone el demultiplexor 25 en el lado del aparato de transmisión 11). La sección de sustitución inversa 1001 emite los bits de código b0 a bmb-1 obtenidos como resultado de la sustitución inversa.
La memoria 1002 tiene una capacidad de almacenamiento de almacenamiento de mb bits en la dirección de fila (horizontal) y almacenamiento de N/ (mb) bits en la dirección de columna (vertical) de manera similar a la memoria 31 que compone el demultiplexor 25 del lado del aparato de transmisión 11. En otras palabras, la sección de sustitución inversa 1001 se configura de mb columnas cada una de las cuales almacena N/ (mb) bits.
No obstante, en la memoria 1002, se lleva a cabo la escritura de los bits de código de códigos LDPC emitidos desde la sección de sustitución inversa 1001 en una dirección en la que se lleva a cabo la lectura de los bits de código de la memoria 31 del demultiplexor 25 del aparato de transmisión 11, y se lleva a cabo la lectura de los bits de código escritos en la memoria 1 00 2 en una dirección en la cual se lleva a cabo la escritura de los bits de código en la memoria 31.
En particular, el multiplexor 54 del aparato de recepción 12 lleva a cabo sucesivamente la escritura de bits de código de un código LDPC emitido desde la sección de sustitución inversa 1001 en una unidad de mb bits en la dirección de fila comenzando con la primera fila de la memoria 1002 hacia un punto más bajo como se ve en A de la FIG. 145. Entonces, cuando termina la escritura de bits de código para una longitud de código, el multiplexor 54 lee los bits de código en la dirección de columna de la memoria 1002 y suministra los bits de código al desintercalador de torsión de columna 55 en la etapa sucesiva.
Aquí, B de la FIG. 145 es una vista que ilustra la lectura de los bits de código de la memoria 1002.
El multiplexor 54 lleva a cabo la lectura de bits de código de un código LDPC en una dirección hacia abajo (dirección de columna) desde arriba de una columna que compone la memoria 1002 comenzando con una columna de más a la izquierda hacia una columna del lado derecho.
Ahora, el procesamiento del desintercalador de torsión de columna 55 que compone el desintercalador 53 del aparato de recepción 12 se describe con referencia a la FIG. 146.
La FIG. 146 muestra un ejemplo de una configuración de la memoria 1002 del multiplexor 54.
La memoria 1002 tiene una capacidad de almacenamiento para almacenar mb bits en la dirección (vertical) de columna y almacena N/ (mb) bits en la dirección de fila (horizontal) y se compone de mb columnas.
El desintercalador de torsión de columna 55 escribe los bits de código de un código LDPC en la dirección de fila en la memoria 1002 y controla la posición en la que se inicia la lectura cuando los bits de código se leen en la dirección de columna para llevar a cabo desintercalado de torsión de columna.
En particular, el desintercalador de torsión de columna 55 lleva a cabo un proceso de reordenación inversa de cambio adecuadamente de la posición de inicio de lectura en la que la lectura de los bits de código con respecto a cada una de una pluralidad de columnas ha de ser iniciada para devolver la disposición de los bits de código reordenados por el intercalado de torsión de columna a la disposición original.
Aquí, la FIG. 146 muestra un ejemplo de una configuración de la memoria 1002, donde el método de modulación es 16QAM y el múltiplo b es 1. Por consiguiente, el número de bits m de un símbolo es 4 bits, y la memoria 1002 incluye cuatro (= mb) columnas.
El desintercalador de torsión de columna 55 lleva a cabo (en lugar del multiplexor 54), la escritura de bits de código de un código LDPC emitido desde la sección de sustitución 1001 en la dirección de fila sucesivamente en la memoria 1002 comenzando con la primera fila hacia una fila de más abajo.
Entonces, si termina la escritura de bits de código para una longitud de código, entonces el desintercalador de torsión de columna 55 lleva a cabo la lectura de los bits de código en la dirección hacia abajo (dirección de columna) desde una parte superior de la memoria 1002 comenzando con una columna de más a la izquierda hacia una columna del lado derecho.
No obstante, el desintercalador de torsión de columna 55 lleva a cabo la lectura de los bits de código de la memoria 1002 determinando la posición de inicio de escritura tras la escritura de los bits de código por el intercalador de torsión de columna 24 en el lado del aparato de transmisión 11 a una posición de inicio de lectura de los bits de código.
En particular, si la dirección de la posición de la parte superior de cada columna se determina como 0 y la dirección de cada posición en la dirección de columna se representa por un número entero dado en un orden ascendente, entonces donde el método de modulación es 16QAM y el múltiplo b es 1, el desintercalador de torsión de columna 55 fija la posición de inicio de lectura para la columna de más a la izquierda a la posición cuya dirección es 0, fija la posición de inicio de lectura para la segunda columna (desde la izquierda) a la posición cuya dirección es 2, fija la posición de inicio de lectura para la tercera columna a la posición cuya dirección es 4, y fija la posición de inicio de lectura para la cuarta columna a la posición cuya dirección es 7.
Se ha de señalar que, con respecto a cada una de aquellas columnas cuya posición de inicio de lectura tiene una dirección distinta de 0, la lectura de los bits de código se lleva a cabo de manera que, después de que tal lectura se lleva a cabo hacia abajo a la posición más baja, la posición de lectura se devuelve a la parte superior (posición cuya dirección es 0) de la columna y la lectura se lleva a cabo hacia abajo a la posición inmediatamente anterior a la posición de inicio de lectura. Entonces, después de eso, la lectura se lleva a cabo desde la siguiente columna (derecha).
Llevando a cabo tal intercalado de torsión de columna como se ha descrito anteriormente, la disposición de los bits de código reorganizados por el intercalado de torsión de columna se devuelve a la disposición original.
La FIG. 147 es un diagrama de bloques que muestra otro ejemplo de la configuración del aparato de recepción 12.
Con referencia a la FIG. 147, el aparato de recepción 12 es un aparato de procesamiento de datos que recibe una señal de modulación desde el aparato de transmisión 11 e incluye una sección de demodulación ortogonal 51, una sección de descorrespondencia 52, un desintercalador 53 y una sección de decodificación LDPC 1021.
La sección de demodulación ortogonal 51 recibe una señal de modulación desde el aparato de transmisión 11, lleva a cabo la demodulación ortogonal y suministra los símbolos (valores en las direcciones de los ejes I y Q) obtenidos como resultado de la demodulación ortogonal a la sección de descorrespondencia 52.
La sección de descorrespondencia 52 lleva a cabo la descorrespondencia de conversión de los símbolos desde la sección de demodulación ortogonal 51 en bits de código de un código de LDPC y suministra los bits de código al desintercalador 53.
El desintercalador 53 incluye un multiplexor (MUX) 54, un desintercalador de torsión de columna 55 y un desintercalador de paridad 1011 y lleva a cabo el desintercalado de los bits de código del código de LDPC desde la sección de descorrespondencia 52.
En particular, el multiplexor 54 determina un código LDPC desde la sección de descorrespondencia 52 como un objeto de procesamiento de la misma y lleva a cabo un proceso de sustitución inversa que corresponde al proceso de sustitución llevado a cabo por el demultiplexor 25 del aparato de transmisión 11 (proceso inverso al proceso de sustitución), es decir, un proceso de sustitución inversa de devolución de las posiciones de los bits de código sustituidos por el proceso de sustitución a las posiciones originales. Entonces, el multiplexor 54 suministra un código LDPC obtenido como resultado del proceso de sustitución inversa al desintercalador de torsión de columna 55. El desintercalador de torsión de columna 55 determina el código de LDPC desde el multiplexor 54 como un objeto de procesamiento y lleva a cabo el desintercalado de torsión de columna que corresponde al intercalado de torsión de la columna como un proceso de reordenación llevado a cabo por el intercalador de torsión de columna 24 del aparato de transmisión 11.
El código LDPC obtenido como resultado del desintercalado de torsión de columna se suministra desde el desintercalador de torsión de columna 55 al desintercalador de paridad 1011.
El desintercalador de paridad 1011 determina los bits de código después del desintercalado de torsión de columna por el desintercalador de torsión de columna 55 como un objeto de procesamiento del mismo y lleva a cabo el desintercalado de paridad que corresponde al intercalado de paridad llevado a cabo por el intercalador de paridad 23 del aparato de transmisión 11 (proceso inverso al intercalado de paridad), es decir, el desintercalado de paridad de devolución de la disposición de los bits de código del código LDPC cuya disposición se cambió por el intercalado de paridad a la disposición original.
El código LDPC obtenido como resultado del desintercalado de paridad se suministra desde el desintercalador de paridad 1011 a la sección de decodificación LDPC 1021.
Por consiguiente, en el aparato de recepción 12 de la FIG. 147, el código LDPC para el que se han llevado a cabo el proceso de sustitución inversa, el desintercalado de torsión de columna y el desintercalado de paridad, es decir, un código LDPC obtenido mediante codificación LDPC según la matriz de comprobación de paridad H, se suministra a la sección de decodificación LDPC 1021.
La sección de decodificación LDPC 1021 lleva a cabo la decodificación LDPC del código LDPC desde el desintercalador 53 usando la matriz de comprobación de paridad H en sí misma usada para codificación LDPC por la sección de codificación LDPC 21 del aparato de transmisión 11 o una matriz de comprobación de paridad de conversión obtenida llevando a cabo al menos conversión de columna que corresponde al intercalado de paridad para la matriz de comprobación de paridad H. Entonces, la sección de decodificación LDPC 1021 emite los datos obtenidos mediante la decodificación LDPC como resultado de la decodificación de los datos de objeto.
Aquí, en el aparato de recepción 12 de la FIG. 147, dado que un código LDPC obtenido mediante codificación LDPC según la matriz de comprobación de paridad H se suministra desde el (desintercalador de paridad 1011 del) desintercalador 53 a la sección de decodificación LDPC 1021, donde la decodificación LDPC del código LDPC se lleva a cabo usando la matriz de comprobación de paridad H en sí misma usada para la codificación LDPC por la sección de codificación LDPC 21 del aparato de transmisión 11, se puede configurar la sección de decodificación LDPC 1021, por ejemplo, desde un aparato de decodificación que lleva a cabo decodificación LDPC según un método de decodificación en serie completo en donde la operación matemática de mensajes (mensajes de nodo de comprobación y mensajes de nodo variable) se lleva a cabo para un nodo uno por uno u otro aparato de decodificación en donde la decodificación LDPC se lleva a cabo según un método de decodificación en paralelo completo en donde la operación matemática de los mensajes se lleva a cabo simultáneamente (en paralelo) para todos los nodos.
Además, donde la decodificación LDPC de un código LDPC se lleva a cabo usando una matriz de comprobación de paridad de conversión obtenida llevando a cabo al menos la sustitución de columna que corresponde al intercalado de paridad para la matriz de comprobación de paridad H usada en la codificación LDPC por la sección de codificación LDPC 21 del aparato de transmisión 11, la sección de decodificación LDPC 1021 se puede confirmar a partir de un aparato de decodificación de una arquitectura que lleva a cabo la operación matemática de nodo de comprobación y la operación matemática de nodo variable simultáneamente para P (o un testador de P distinto de 1) nodos de comprobación y P nodos variables y que tiene una sección de reordenación de datos de recepción 310 para llevar a cabo una sustitución de columnas similar a la sustitución de columnas para obtener una matriz de comprobación de paridad de conversión para el código LDPC para reordenar los bits de código de los códigos LDPC.
Se ha de señalar que, mientras que, en la FIG. 147, el multiplexor 54 para llevar a cabo el proceso de sustitución inversa, el desintercalador de torsión de columna 55 para llevar a cabo el desintercalado de torsión de columna y el desintercalador de paridad 1011 para llevar a cabo el desintercalado de paridad se configuran por separado unos de otros por la conveniencia de la descripción, dos o más del multiplexor 54, el desintercalador de torsión de columna 55 y el desintercalador de paridad 1011 se pueden configurar integralmente de manera similar al intercalador de paridad 23, al intercalador de torsión de columna 24 y al demultiplexor 25 del aparato de transmisión 11.
La FIG. 148 es un diagrama de bloques que muestra un primer ejemplo de una configuración de un sistema de recepción que se puede aplicar al aparato de recepción 12.
Con referencia a la FIG. 148, el sistema de recepción incluye una sección de adquisición 1101, una sección de procesamiento de decodificación de línea de transmisión 1102 y una sección de procesamiento de decodificación de fuente de información 1103.
La sección de adquisición 1101 adquiere una señal que incluye un código LDPC obtenido al menos mediante codificación LDPC de datos de objeto tales como datos de imagen y datos de música de un programa a través de una línea de transmisión tal como, por ejemplo, difusión digital terrestre, difusión digital por satélite, una red de CATV, Internet o alguna otra red. Entonces, la sección de adquisición de 1101 suministra la señal adquirida a la sección de procesamiento de decodificación de línea de transmisión 1102.
Aquí, donde se emite la señal adquirida por la sección de adquisición 1101, por ejemplo, desde una estación de difusión a través de ondas terrestres, ondas por satélite, una CATV (Televisión por Cable) o similares, la sección de adquisición 1101 se configura a partir de un sintonizador, un STB (Decodificador) o similares. Por otra parte, donde la señal adquirida por la sección de adquisición 1101 se transmite en un estado de multidifusión como en la IPTV (Televisión de Protocolo de Internet), por ejemplo, desde un servidor web, la sección de adquisición 11 se configura a partir de una I/F (Interfaz) de red tal como, por ejemplo, una NIC (Tarjeta de Interfaz de Red).
La sección de procesamiento de decodificación de línea de transmisión 1102 lleva a cabo un proceso de decodificación de línea de transmisión que incluye al menos un proceso para corregir los errores producidos en la línea de transmisión para la señal adquirida a través de la línea de transmisión por la sección de adquisición 1101, y suministra una señal obtenida como resultado del proceso de decodificación de línea de transmisión a la sección de procesamiento de decodificación de fuente de información 1103.
En particular, la señal adquirida a través de la línea de transmisión por la sección de adquisición 1101 es una señal obtenida llevando a cabo al menos codificación de corrección de error para corregir errores producidos en la línea de transmisión, y para tal señal como se acaba de describir, la sección de procesamiento de decodificación de línea de transmisión 1102 lleva a cabo un proceso de decodificación de línea de transmisión tal como, por ejemplo, un proceso de corrección de error.
Aquí, como la codificación de corrección de error, por ejemplo, están disponibles la codificación LDPC, la codificación Reed-Solomon, etc. Aquí, como la codificación de corrección de error, al menos se lleva a cabo la codificación LDPC.
Además, el proceso de decodificación de línea de transmisión incluye algunas veces la demodulación de una señal de modulación, etc.
La sección de procesamiento de decodificación de fuente de información 1103 lleva a cabo un proceso de decodificación de fuente de información que incluye al menos un proceso para descomprimir información comprimida en información original para la señal para la que se ha llevado a cabo el proceso de decodificación de línea de transmisión.
En particular, la señal adquirida a través de la línea de transmisión por la sección de adquisición 1101 algunas veces se ha procesado mediante codificación de compresión para comprimir información con el fin de reducir la cantidad de datos, tales como imágenes, sonido, etc. como información. En este caso, la sección de procesamiento de decodificación de fuente de información 1103 lleva a cabo un proceso de decodificación de fuente de información tal como un proceso (proceso de descompresión) para descomprimir la información comprimida en información original para una señal para la cual se ha llevado a cabo el proceso de decodificación de línea de transmisión.
Se ha de señalar que, donde la señal adquirida a través de la línea de transmisión por la sección de adquisición 1101 no se ha llevado a cabo con codificación de compresión, la sección de procesamiento de decodificación de fuente de información 1103 no lleva a cabo el proceso de descompresión de la información comprimida en la información original.
Aquí, como el proceso de descompresión, por ejemplo, están disponibles una decodificación MPEG, etc. Además, el proceso de decodificación de línea de transmisión algunas veces incluye desaleatorización además del proceso de descompresión.
En el sistema de recepción configurado de tal manera como se ha descrito anteriormente, la sección de adquisición 1101 recibe una señal obtenida llevando a cabo codificación de compresión tal como codificación MPEG para datos de, por ejemplo, imágenes, sonido, etc. y además llevando a cabo codificación de corrección de error tal como codificación LDPC para los datos codificados con compresión a través de una línea de transmisión. La señal se suministra a la sección de procesamiento de decodificación de línea de transmisión 1102.
En la sección de procesamiento de decodificación de línea de transmisión 1102, procesos similares a los llevados a cabo, por ejemplo, por la sección de demodulación ortogonal 51, la sección de descorrespondencia 52, el desintercalador 53 y la sección de decodificación LDPC 56 (o sección de decodificación LDPC 1021) se llevan a cabo como el proceso de decodificación de línea de transmisión para la señal desde la sección de adquisición 1101. Entonces, una señal obtenida como resultado del proceso de decodificación de línea de transmisión se suministra a la sección de procesamiento de decodificación de fuente de información 1103.
En la sección de procesamiento de decodificación de fuente de información 1103, un proceso de decodificación de fuente de información tal como una decodificación MPEG se lleva a cabo para la señal desde la sección de procesamiento de decodificación de línea de transmisión 1102, y se emite una imagen o un sonido obtenido como resultado del proceso de decodificación de información.
Tal sistema de recepción de la FIG. 148 como se ha descrito anteriormente se puede aplicar, por ejemplo, a un sintonizador de televisión para recibir difusión de televisión como difusión digital, etc.
Se ha de señalar que es posible configurar la sección de adquisición 1101, la sección de procesamiento de decodificación de línea de transmisión 1102 y la sección de procesamiento de decodificación de fuente de información 1103 cada una como un aparato independiente (hardware (IC (Circuito Integrado) o similar) o un módulo de software).
Además, en cuanto a la sección de adquisición 1101, la sección de procesamiento de decodificación de línea de transmisión 1102 y la sección de procesamiento de decodificación de fuente de información 1103, un conjunto de la sección de adquisición 1101 y la sección de procesamiento de decodificación de línea de transmisión 1102, otro conjunto de la sección de procesamiento de decodificación de línea de transmisión 1102 y la sección de procesamiento de decodificación de fuente de información 1103 o un conjunto adicional de la sección de adquisición 1101, la sección de procesamiento de decodificación de línea de transmisión 1102 y la sección de procesamiento de decodificación de fuente de información 1103 se pueden configurar como un único aparato independiente.
La FIG. 149 es un diagrama de bloques que muestra un segundo ejemplo de la configuración del sistema de recepción que se puede aplicar al aparato de recepción 12.
Se ha de señalar que, en la FIG. 149, elementos que corresponden a aquéllos en la FIG. 148 se denotan mediante números de referencia similares, y la descripción de ellos se omite adecuadamente en la siguiente descripción. El sistema de recepción de la FIG. 149 es común al de la FIG. 148 en que incluye una sección de adquisición 1101, una sección de procesamiento de decodificación de línea de transmisión 1102 y una sección de procesamiento de decodificación de fuente de información 1103 pero es diferente del de la FIG. 148 en que incluye nuevamente una sección de salida 1111.
La sección de salida 1111 es, por ejemplo, un aparato de visualización para visualizar una imagen o un altavoz para emitir sonido y emite una imagen, un sonido del tipo de una señal emitida desde la sección de procesamiento de decodificación de fuente de información 1103. En otras palabras, la sección de salida 1111 muestra una imagen o emite un sonido.
Tal sistema de recepción de la FIG. 149 como se ha descrito anteriormente se puede aplicar, por ejemplo, a una TV (receptor de televisión) para recibir una difusión de televisión como una difusión digital, un receptor de radio para recibir una difusión de radio, etc.
Se ha de señalar que, donde la señal adquirida por la sección de adquisición 1101 no está en una forma en donde no se aplica codificación de compresión, una señal emitida desde la sección de procesamiento de decodificación de línea de transmisión 1102 se suministra a la sección de salida 1111.
La FIG. 150 es un diagrama de bloques que muestra un tercer ejemplo de la configuración del sistema de recepción que se puede aplicar al aparato de recepción 12.
Se ha de señalar que, en la FIG. 150, elementos que corresponden a los de la FIG. 148 se denotan mediante números de referencia similares, y en la siguiente descripción, se omite adecuadamente la descripción de ellos.
El sistema de recepción de la FIG. 150 es común al de la FIG. 148 en que incluye una sección de adquisición 1101 y una sección de procesamiento de decodificación de línea de transmisión 1102.
No obstante, el sistema de recepción de la FIG. 150 es diferente del de la FIG. 148 en que no incluye la sección de procesamiento de decodificación de fuente de información 1103 sino que incluye nuevamente una sección de grabación 1121.
La sección de grabación 1121 graba (almacena) una señal (por ejemplo, un paquete TS de un TS de MPEG) emitida desde la sección de procesamiento de decodificación de línea de transmisión 1102 en o dentro de un medio de grabación (almacenamiento) tal como un disco óptico, un disco duro (disco magnético) o como una memoria rápida.
Tal sistema de recepción de la FIG. 150 como se ha descrito anteriormente se puede aplicar a un grabador para grabar una difusión de televisión o similar.
Se ha de señalar que, en la FIG. 150, el sistema de recepción puede incluir la sección de procesamiento de decodificación de fuente de información 1103 de manera que una señal después de que el proceso de decodificación de fuente de información se ha llevado a cabo por la sección de procesamiento de decodificación de fuente de información 1103, es decir, una imagen o un sonido obtenido decodificando, se graba por la sección de grabación 1121.
De paso, según el proceso de sustitución del nuevo método de sustitución en donde los bits de código se sustituyen de tal manera como se ilustra en la FIG. 64 según la regla de asignación de la FIG. 63, se puede mejorar la tolerancia a errores en comparación con el proceso de sustitución del método existente en donde los bits de código se sustituyen de tal manera como se ilustra en C de la FIG. 60 (FIG. 65).
Además, con un código LDPC (código propuesto) de una matriz de comprobación de paridad H determinada a partir de la tabla de valores iniciales de matriz de comprobación de paridad de las FIG. 66 a 68, se puede mejorar la tolerancia a errores en comparación con el código estándar.
Aunque la tolerancia a errores se puede mejorar solamente mediante la adopción del nuevo método de sustitución o del código propuesto como se ha descrito anteriormente, la tolerancia a errores se puede mejorar además adoptando un proceso de sustitución de un método (en lo sucesivo conocido también como método adecuado) en donde se adopta el código propuesto y se lleva a cabo para el código propuesto la sustitución de bits de código según una regla de asignación adecuada.
Las FIG. 151 a 155 son vistas que ilustran el método adecuado.
En particular, la FIG. 151 ilustra grupos de bits de código y grupos de bits de símbolos donde el código LDPC es un código LDPC (código propuesto) de una matriz de comprobación de paridad H que tiene una longitud de código N de
64.800 bits y una tasa de codificación de 2/3 y determinada a partir de la tabla de valores iniciales de matriz de comprobación de paridad de las FIG. 66 a 68 y además el método de modulación es 256QAM y el múltiplo b es 2.
En este caso, la lectura se lleva a cabo en una unidad de 8 x 2 (= mb) bits de código bü a b15 de la memoria 31, y los
8 x 2 (= mb) bits de código b0 a b15 se pueden agrupar en cinco grupos de bits de código Gb1, Gb2 , Gb3 , Gb4 y Gbs como se ve en A de la FIG. 151 según una diferencia en la probabilidad de error.
En A de la FIG. 151, al grupo de bits de código Gb1, pertenece el bit de código b0 ; al grupo de bits de código Gb2 , pertenece el bit de código b1; al grupo de bits de código Gb3, pertenecen los bits de código b2 a bg; al grupo de bits de código Gb4 , pertenece el bit de código b™; y al grupo de bits de código Gbs, pertenecen los bits de código bu a b15.
Donde el método de modulación es 256QAM y el múltiplo b es 2, los 8 x 2 (= mb) bits de código y0 a y15 se pueden agrupar en cuatro grupos de bits de símbolo Gy1, Gy2 , Gy3 y Gy4 como se ve en B de la FIG. 151 según una diferencia en la probabilidad de error.
En B de la FIG. 151, al grupo de bits de símbolo Gy1, pertenecen los bits de símbolo y0 , y1, ys e yg; al grupo de bits de símbolo Gy2 , pertenecen los bits de símbolo y2 , y3 , y10 e yn; al grupo de bits de símbolo Gy3 , pertenecen los bits de símbolo y4 , y5 , y12 e y«; y al grupo de bits de símbolo Gy4, pertenecen los bits de símbolo y6 , y7, yu e y15.
La FIG. 152 ilustra una regla de asignación del método adecuado donde el código LDPC es el código propuesto y además el método de modulación es 256QAM y el múltiplo b es 2.
Según la regla de asignación de la FIG. 152, se prescribe información de conjunto de grupos (Gb1, Gy4, 1), (Gb2 ,
Gy2 , 1), (Gba, Gy1, 2), (Gba, Gy2 , 2), (Gya, Gya, 2), (Gba, Gy4 , 2), (Gb4 , Gy4 , 1), (Gba, Gy1, 2) (Gba, Gy2 , Gya, 2).
Por lo tanto, según la regla de asignación de la FIG. 152, se prescribe
para asignar, en base a la información de conjunto de grupos (Gbi, Gy4, 1), uno de los bits de código del grupo de bits de código Gb1 que tiene la mejor probabilidad de error a uno de los bits de símbolo del grupo de bits de símbolo Gy4 que tiene la cuarta mejor probabilidad de error,
para asignar, en base a la información de conjunto de grupos (Gb2 , Gy2 , 1), uno de los bits de código del grupo de bits de código Gb2 que tiene la segunda mejor probabilidad de error a uno de los bits de símbolo del grupo de bits de símbolo Gy2 que tiene la segunda mejor probabilidad de error,
para asignar, en base a la información de conjunto de grupos (Gb3, Gy1, 2), dos de los bits de código del grupo de bits de código Gb3 que tiene la tercera mejor probabilidad de error a dos de los bits de símbolo del grupo de bits de símbolo Gy1 que tiene la mejor probabilidad de error,
para asignar, en base a la información de conjunto de grupos (Gb3 , Gy2 , 2), dos de los bits de código del grupo de bits de código Gb3 que tiene la tercera mejor probabilidad de error a dos de los bits de símbolo del grupo de bits de símbolos Gy2 que tiene la segunda mejor probabilidad de error,
para asignar, en base a la información de conjunto de grupos (Gb3, Gy3, 3), dos de los bits de código del grupo de bits de código Gb3 que tiene la tercera mejor probabilidad de error a dos de los bits de símbolo del grupo de bits de símbolo Gy3 que tiene la tercera mejor probabilidad de error,
para asignar, en base a la información de conjunto de grupos (Gb3, Gy4, 2), dos de los bits de código del grupo de bits de código Gb3 que tiene la tercera mejor probabilidad de error a dos de los bits de símbolo del grupo de bits de símbolo Gy4 que tiene la cuarta mejor probabilidad de error,
para asignar, en base a la información de conjunto de grupos (Gb4, Gy4, 1), uno de los bits de código del grupo de bits de código Gb4 que tiene la cuarta mejor probabilidad de error a uno de los bits de símbolo del grupo de bits de símbolo Gy4 que tiene la cuarta mejor probabilidad de error,
para asignar, en base a la información de conjunto de grupos (Gb5, Gy1, 2), dos de los bits de código del grupo de bits de código Gb5 que tiene la quinta mejor probabilidad de error a dos de los bits de símbolo del grupo de bits de símbolo Gy1 que tiene la mejor probabilidad de error,
para asignar, en base a la información de conjunto de grupos (Gb5, Gy2 , 1), uno de los bits de código del grupo de bits de código Gb5 que tiene la quinta mejor probabilidad de error para uno de los bits de símbolo del grupo de bits de símbolo Gy2 que tiene la segunda mejor probabilidad de error, y
para asignar, en base a la información de conjunto de grupos (Gb5, Gy3, 2), dos de los bits de código del grupo de bits de código Gb5 que tiene la quinta mejor probabilidad de error a dos de los bits de símbolo del grupo de bits de símbolo Gy3 que tiene la tercera mejor probabilidad de error.
La -FIG. 153 ilustra un ejemplo de sustitución de bits de código según la regla de asignación de la FIG. 152.
En particular, A de la FIG. 153 ilustra un primer ejemplo de sustitución de bits de código según la regla de asignación de la FIG. 152 donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación de 2/3 y además el método de modulación es 256QAM y el múltiplo b es 2.
Donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación de 2/3 y además el método de modulación es 256QAM y el múltiplo b es 2, en el demultiplexor 25, los bits de código escritos en la memoria 31 de (64.800/ (8 x 2)) x (8 x 2) bits en la dirección de la columna x la dirección de la fila se leen en una unidad de 8 x 2 (= mb) bits en la dirección de la fila y se suministran a la sección de sustitución 32 (FIG. 16 y 17).
La sección de sustitución 32 sustituye los 8 x 2 bits de código bü a b15 según la regla de asignación de la FIG. 152 de manera que los 8 x 2 (= mb) bits de código b0 a b15 leídos de la memoria 31 se asignan a los 8 x 2 (= mb) bits de símbolo y0 a y15 de dos (= b) símbolos sucesivos, por ejemplo, como se ve en A de la FIG. 153.
En particular, la sección de sustitución 32 lleva a cabo una sustitución para asignar
el bit de código b0 al bit de símbolo y7,
el bit de código b1 al bit de símbolo y2 ,
el bit de código b2 al bit de símbolo yg,
el bit de código b3 al bit de símbolo y0 ,
el bit de código b4 al bit de símbolo y4,
el bit de código b5 al bit de símbolo y6,
el bit de código b6 al bit de símbolo yi3,
el bit de código b7 al bit de símbolo y3,
el bit de código b8 al bit de símbolo yu,
el bit de código b9 al bit de símbolo y10,
el bit de código b10 al bit de símbolo y15,
el bit de código bu al bit de símbolo y5,
el bit de código b12 al bit de símbolo y8,
el bit de código b13 al bit de símbolo y12,
el bit de código bu al bit de símbolo yu, y
el bit de código b15 al bit de símbolo y1.
B de la FIG. 153 ilustra un segundo ejemplo de sustitución de bits de código según la regla de asignación de la FIG.
152 donde el código LDPC es un código LDPC que tiene una longitud de código N de 64.800 bits y una tasa de codificación de 2/3 y además el método de modulación es 256QAM y el múltiplo b es 2.
Según B de la FIG. 153, la sección de sustitución 32 lleva a cabo, para los 8 x 2 (= mb) bits bü a b15 leídos de la memoria 31, según la regla de asignación de la FIG. 152, una sustitución para asignar
el bit de código b0 al bit de símbolo y7,
el bit de código b1 al bit de símbolo y2,
el bit de código b2 al bit de símbolo y1,
el bit de código b3 al bit de símbolo y0,
el bit de código b4 al bit de símbolo y13,
el bit de código b5 al bit de símbolo y12,
el bit de código b6 al bit de símbolo y6,
el bit de código b7 al bit de símbolo y3,
el bit de código b8 al bit de símbolo y15,
el bit de código b9 al bit de símbolo yu,
el bit de código b10 al bit de símbolo yu,
el bit de código bu al bit de símbolo y5,
el bit de código b12 al bit de símbolo y8,
el bit de código b13 al bit de símbolo y4,
el bit de código bu al bit de símbolo y10, y
el bit de código b15 al bit de símbolo y9.
Aquí, ambos modos de asignación de los bits de código bi a los bits de símbolo yi ilustrados en A de la FIG. 153 y B de la FIG. 153 observan la regla de asignación de la FIG. 152 (cumplen con la regla de asignación).
Las FIG. 154 y 155 ilustran los resultados de una simulación de la BER donde se llevó a cabo un proceso de sustitución del método adecuado descrito anteriormente con referencia a las FIG. 151 a 153.
Se ha de señalar que, en las FIG. 154 y 155, el eje de abscisas indica Es/N0 y el eje de ordenadas indica la BER. Además, en las FIG. 154 y 155, el método de modulación es 256QAM y el múltiplo b es 2.
La FIG. 154 ilustra la BER (representada por una marca redonda en la figura) donde el método de sustitución de A de la FIG. 153 de dentro del método adecuado descrito anteriormente con referencia a las FIG. 151 a 153 para el código propuesto y la BER (representada por un asterisco en la figura) donde el proceso de sustitución descrito con referencia a C de la FIG. 60 (proceso de sustitución del método existente) para el código LDPC (código estándar) que tiene una longitud de código N de 64.800 y una tasa de codificación de 2/3 y está prescrito en el estándar DVB-S.2.
A partir de la FIG. 154, se puede reconocer que, llevando a cabo un proceso de sustitución del método adecuado para el código propuesto, se puede reducir significativamente el suelo de error y se puede mejorar la tolerancia a errores en comparación con un caso alternativo en donde se lleva a cabo un proceso de sustitución del método existente para el código estándar.
La FIG. 155 ilustra la BER (indicada por una marca redonda en la figura) donde un proceso de sustitución del método adecuado se llevó a cabo para el código propuesto y la BER (indicada por un asterisco en la figura) donde el proceso de sustitución descrito anteriormente con referencia a C de la FIG. 60 (proceso de sustitución del método existente) se llevó a cabo para el código propuesto.
A partir de la FIG. 155, se puede reconocer que, adoptando el proceso de sustitución del método adecuado, se puede reducir la BER y se puede mejorar la tolerancia a errores en comparación con un caso alternativo en donde se adopta el proceso de sustitución del método existente.
Se debería entender por los expertos en la técnica que pueden ocurrir diversas modificaciones, combinaciones, subcombinaciones y alteraciones dependiendo de los requisitos de diseño y otros factores en la medida en que estén dentro del alcance de las reivindicaciones adjuntas.

Claims (12)

REIVINDICACIONES
1. Un aparato de recepción (12) que comprende
una sección de sustitución inversa (1001) para asignar bits de símbolo de símbolos recibidos correspondientes a puntos de señal en un plano I-Q de una constelación de 256 QAM a bits de código de una palabra de código de Comprobación de Paridad de Baja Densidad, LDPC, de longitud de código N = 64.800 bits y una tasa de codificación de 2/3, representando la palabra de código LDPC una señal de televisión, y
una sección de decodificación LDPC (1021) para decodificar los bits de código de la palabra de código LDPC asignada por la sección de sustitución inversa (1001) en base a una matriz de comprobación de paridad del código LDPC,
en donde, la sección de sustitución inversa asigna los mb bits de símbolo yj de b símbolos sucesivos a los m bits con b = 2 y m = 8, a los mb bits de código bi para llevar a cabo una inversión de una demultiplexión llevada a cabo en un transmisor asignando
el bit y7 al bit bü,
el bit y2 al bit b1 ,
el bit yg al bit b2 ,
el bit y0 al bit b3 ,
el bit y4 al bit b4 ,
el bit y6 al bit b5 ,
el bit y13 al bit b6,
el bit y3 al bit b7,
el bit y14 al bit b8,
el bit y10 al bit bg,
el bit y15 al bit b10,
el bit y5 al bit b11,
el bit y8 al bit b12,
el bit y12 al bit b13,
el bit y11 al bit b14,
el bit y1 al bit b15,
y el bit de orden i a partir del bit más significativo de los mb bits de código se representa como un bit bi y el bit de orden j a partir del bit más significativo de los mb bits de símbolo de dos símbolos sucesivos se representa como un bit yj,
en donde la matriz de comprobación de paridad del código LDPC es una matriz MxN, donde M es una longitud de paridad, e incluye una matriz de información MxK donde K = N-M y una matriz de paridad MxM, teniendo la matriz de paridad MxM una estructura de escalera en la que elementos que tienen un valor 1 se disponen en una escalera con una ponderación de fila de la primera fila que es 1 y una ponderación de fila de todas las filas restantes que es 2, y la matriz de información se representa por una tabla de valores iniciales de matriz de comprobación de paridad, que muestra en su fila de orden i, 1 < i < 120, las posiciones de elementos del valor de 1 en la columna de orden (1+360 (i-1)) de la matriz de información, y en donde en base a cada columna de orden (1+360 (i-1)), 1 < i <120, las columnas (2+360 (i-1)) a 360i de la matriz de información se determinan desplazando cíclicamente hacia abajo la columna precedente respectiva en M/ 360;
la tabla de valores iniciales de matriz de comprobación de paridad que está formada como:
31722552324272335383576619467009101 10057127391740721039,
1958200732944394127621450514593146921652217737192452127221379,
1278605001 56338644928212690146441755319511 19681 2095421002,
251428225781 6297806394699551 114071183712985157102023620393, 156531064659492664956872734387201578516434167271988421325, 7063220856810896124861366316398165991947519781 2062520961 21335, 4257104491240614561 160491652217214180291803318802190621952620748, 412433558261429784157658493201168311819130241448616860,
7775906740385508717877011436128461362914755156881639216419, 409350456037724886339771 10260108091132612072175161934419938, 212026483155385268881225814821 15359163781643717791 2061421025, 1085243458167151 8050942210884127281535317733181401872920920, 856169012787,
653273579151,
42101661518152,
114941403617470,
247410291 10323,
1778697310739,
4347957018748,
21891194220666,
3868752617706,
87801479618268,
1601623217399,
1285200318922,
465817331 20361,
276548625875,
45655521 8759,
3484730515829,
50241773017879,
7031 1234615024,
179636511352,
249031435098,
26433101 21259,
4315472413130,
5941736518322,
598385979627,
108371510220876,
104482041821478,
38481202915228,
708565213146,
5998753416117, 209813201 18317, 91861454817776, 52461039818597, 3083494421021, 137261849519921, 673610811 17545, 1008412411 14432, 10641355517033, 679987813547, 3422991020194, 36403701 10046, 58621013411498, 5923958015060, 1073301216427, 55272011320883, 70581292415151, 97641223017375, 7727711 12723, 5551381615376, 105741126817932, 154421726620482, 3903371 8781, 1051:21221617180, 43091406815783, 3971 1167320009, 92591427017199, 2947585220101, 3965972215363, 1429568916771, 6101 684912781, 3676934718761, 350 1165918342, 5961 1480316123, 2113916313443, 2155980812885, 2861 798811031, 7309922020745, 6834874211977, 21331290814704, 101701380918153, 134641478714975, 79911073789, 3571 817610165, 54331344615481, 3351 676712840, 8950897411650, 1430425021332, 62831062815050, 86321440416916, 65091070216278, 159001639517995, 8031 1842019733,
3 7 4 7 463417087, 4453629716262, 2792351317031, 148462089321563, 172202043621337, 275410710497, 3536752010027, 140891494319455, 19653931 21104, 24391156517932, 1541527921414, 100171126916546, 71691016116928, 1028416791 20655, 3631758475, 26051626919290, 8947917815420, 5687915612408, 8096973814711, 4935809319266, 26671006215972, 63891131814417,
88001813718434,
5824592715314,
60561316815179,
32841313818919, y
131151725917332.
2. Un aparato de recepción según la reivindicación 1, que comprende la sección de decodificación LDPC para decodificar la palabra de código LDPC de longitud de código N = 64.800 y una tasa de codificación de 2/3 para recuperar bits de información,
3. Un método recepción que comprende
un paso de sustitución inversa (S114) para asignar bits de símbolo de símbolos recibidos correspondientes a puntos de señal en un plano I-Q de una constelación de 256 QAM a bits de código de una palabra de código de Comprobación de Paridad de Baja Densidad, LDPC, de longitud de código N = 64.800 bits y una tasa de codificación de 2/3, representando la palabra de código LDPC una señal de televisión, y
un paso de decodificación LDPC (S115) para decodificar los bits de código de la palabra de código LDPC asignada por el paso de sustitución inversa en base a una matriz de comprobación de paridad del código LDPC,
en donde, el paso de sustitución inversa comprende asignar los mb bits de símbolo yj de b símbolos sucesivos a los m bits con b = 2 y m = 8, a los mb bits de código bi para llevar a cabo una inversión de una demultiplexión llevada a cabo en un transmisor asignando
el bit y7 al bit b0 ,
el bit y2 al bit b1 ,
el bit y9 al bit b2 ,
el bit y0 al bit b3 ,
el bit y4 al bit b4 ,
el bit y6 al bit b5 ,
el bit y13 al bit b6,
el bit y3 al bit b7 ,
el bit y14 al bit b8,
el bit y10 al bit b9 ,
el bit y15 al bit b10,
el bit y5 al bit b11,
el bit y8 al bit b12,
el bit y12 al bit b13,
el bit yn al bit b14,
el bit y1 al bit b15,
y el bit de orden i a partir del bit más significativo de los mb bits de código se representa como un bit bi y el bit de orden j a partir del bit más significativo de los símbolos mb de dos símbolos sucesivos se representa como un bit yj, en donde la matriz de comprobación de paridad del código LDPC es una matriz MxN, donde M es una longitud de paridad, e incluye una matriz de información MxK donde K = N-M y una matriz de paridad MxM, teniendo la matriz de paridad MxM una estructura de escalera en la que elementos que tienen un valor 1 se disponen en una escalera con una ponderación de fila de la primera fila que es 1 y una ponderación de fila de todas las filas restantes que es 2, y la matriz de información se representa por una tabla de valores iniciales de matriz de comprobación de paridad, que muestra en su fila de orden i, 1 < i < 120, las posiciones de elementos del valor de 1 en la columna de orden (1+360 (i-1)) de la matriz de información, y en donde en base a cada columna de orden (1+360 (i-1)), 1 < i < 120, las columnas (2+360 (i-1)) a 360i de la matriz de información se determinan desplazando cíclicamente hacia abajo la columna precedente respectiva en M/360;
la tabla de valores iniciales de matriz de comprobación de paridad que está formada como:
31722552324272335383576619467009101 10057127391740721039,
1958200732944394127621450514593146921652217737192452127221379,
1278605001 56338644928212690146441755319511 19681 2095421002,
251428225781 6297806394699551 114071183712985157102023620393,
156531064659492664956872734387201578516434167271988421325,
7063220856810896124861366316398165991947519781 2062520961 21335,
4257104491240614561 160491652217214180291803318802190621952620748,
412433558261429784157658493201168311819130241448616860,
7775906740385508717877011436128461362914755156881639216419,
409350456037724886339771 10260108091132612072175161934419938,
212026483155385268881225814821 15359163781643717791 2061421025,
1085243458167151 8050942210884127281535317733181401872920920,
856169012787,
653273579151,
42101661518152,
114941403617470,
24741029110323,
1778697310739,
4347957018748,
21891194220666,
3868752617706,
87801479618268,
1601623217399,
1285200318922,
465817331 20361,
276548625875,
45655521 8759,
3484730515829,
50241773017879,
7031 1234615024,
179636511352,
249031435098,
26433101 21259,
4315472413130, 5941736518322, 598385979627, 108371510220876, 104482041821478, 38481202915228, 708565213146, 5998753416117, 20981320118317, 91861454817776, 52461039818597, 3083494421021, 137261849519921, 673610811 17545, 1008412411 14432, 10641355517033, 679987813547, 3422991020194, 36403701 10046, 58621013411498, 5923958015060, 1073301216427, 55272011320883, 70581292415151, 97641223017375, 7727711 12723, 5551381615376, 105741126817932, 154421726620482, 3903371 8781, 105121221617180, 43091406815783, 3971 1167320009, 92591427017199, 2947585220101, 3965972215363, 1429568916771, 6101 684912781, 3676934718761, 350 1165918342, 5961 1480316123, 2113916313443, 2155980812885, 2861 798811031, 7309922020745, 6834874211977, 21331290814704, 101701380918153, 134641478714975, 799 11073789, 3571 817610165, 54331344615481, 3351 676712840, 8950897411650, 1430425021332, 62831062815050, 86321440416916, 65091070216278, 159001639517995, 8031 1842019733, 3747463417087, 4453629716262, 2792351317031, 148462089321563, 172202043621337, 275410710497, 3536752010027, 140891494319455, 19653931 21104, 24391156517932, 1541527921414,
1 0 0 1 '71126916546, 716910161 16928, 1028416791 20655, 3631758475,
26051626919290,
8947917815420,
5687915612408,
8096973814711,
4935809319266,
26671006215972,
63891131814417,
88001813718434,
5824592715314,
60561316815179,
32841313818919,
131151725917332.
4. Un método según la reivindicación 3, que comprende el paso de decodificación LDPC de decodificar la palabra de código LDPC de longitud de código N = 64.800 y una tasa de codificación de 2/3 para recuperar bits de información.
5. Un aparato según la reivindicación 1 o 2 o un método según la reivindicación 3 o 4, donde el aparato comprende medios para recibir la señal de televisión o el método comprende un paso de recibir (S111) la señal de televisión.
6. Un aparato o un método según la reivindicación 5, donde los medios para recibir la señal de televisión comprenden un sintonizador o el paso de recibir la señal de televisión comprende recibir la señal de televisión mediante un sintonizador.
7. Un aparato según la reivindicación 1 o 2 o un método según la reivindicación 3 o 4, donde el aparato es un receptor de televisión o el método se implementa en un receptor de televisión.
8. Un aparato según la reivindicación 1 o 2 o un método según la reivindicación 3 o 4, donde el aparato es un decodificador o el método se implementa en un decodificador.
9. Un aparato según la reivindicación 1 o 2 o un método según la reivindicación 3 o 4, donde el aparato comprende medios para procesar la palabra de código LDPC decodificada para obtener datos de imagen y/o sonido, o el método comprende el paso de procesar la palabra de código LDPC decodificada para obtener datos de imagen y/o sonido.
10. Un aparato o un método según la reivindicación 9, donde el aparato comprende un visualizador para visualizar los datos de imagen, o el método comprende un paso de visualizar los datos de imagen.
11. Un aparato o un método según la reivindicación 9 o reivindicación 10, donde el aparato comprende un altavoz para dar salida a los datos de sonido, o el método comprende el paso de dar salida a los datos de sonido.
12. Un programa que, cuando se carga en un ordenador, hace que el ordenador ejecute el método según se reivindica en cualquiera de las reivindicaciones 3 a 11.
ES15163589T 2007-11-26 2008-11-25 Aparato de recepción que comprende un multiplexor para códigos LDPC de 64K de tasa 2/3 y 256QAM Active ES2881854T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2007304690 2007-11-26
JP2007304689 2007-11-26
JP2008070467 2008-03-18
PCT/JP2008/070960 WO2009069513A1 (ja) 2007-11-26 2008-11-18 データ処理装置、及びデータ処理方法、並びに、符号化装置、及び符号化方法

Publications (1)

Publication Number Publication Date
ES2881854T3 true ES2881854T3 (es) 2021-11-30

Family

ID=40678415

Family Applications (4)

Application Number Title Priority Date Filing Date
ES12175213.3T Active ES2636371T3 (es) 2007-11-26 2008-11-18 Aparato y método de decodificación para un código LDPC de 64K y tasa 2/3
ES08854840.9T Active ES2649560T3 (es) 2007-11-26 2008-11-18 Método y aparato para codificar y método y aparato para decodificar un código LDPC de 64K y tasa 2/3
ES08853412T Active ES2639994T7 (es) 2007-11-26 2008-11-25 Patrón de permutación de bits para BICM con códigos LDPC de tasa 2/3 y constelaciones 256QAM
ES15163589T Active ES2881854T3 (es) 2007-11-26 2008-11-25 Aparato de recepción que comprende un multiplexor para códigos LDPC de 64K de tasa 2/3 y 256QAM

Family Applications Before (3)

Application Number Title Priority Date Filing Date
ES12175213.3T Active ES2636371T3 (es) 2007-11-26 2008-11-18 Aparato y método de decodificación para un código LDPC de 64K y tasa 2/3
ES08854840.9T Active ES2649560T3 (es) 2007-11-26 2008-11-18 Método y aparato para codificar y método y aparato para decodificar un código LDPC de 64K y tasa 2/3
ES08853412T Active ES2639994T7 (es) 2007-11-26 2008-11-25 Patrón de permutación de bits para BICM con códigos LDPC de tasa 2/3 y constelaciones 256QAM

Country Status (18)

Country Link
US (2) US8402337B2 (es)
EP (4) EP2509270B1 (es)
JP (2) JP5273054B2 (es)
KR (2) KR101481854B1 (es)
CN (2) CN101911505B (es)
AU (2) AU2008330816B2 (es)
BR (2) BRPI0820163B1 (es)
CO (1) CO6311122A2 (es)
DK (2) DK2509270T3 (es)
EA (2) EA021906B1 (es)
ES (4) ES2636371T3 (es)
MY (2) MY155083A (es)
NZ (2) NZ585421A (es)
PL (3) PL2509270T3 (es)
PT (2) PT2509270T (es)
TW (1) TW200939639A (es)
WO (3) WO2009069513A1 (es)
ZA (1) ZA201003529B (es)

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4601675B2 (ja) * 2006-02-09 2010-12-22 富士通株式会社 Ldpc検査行列生成方法及び検査行列生成器並びに符号再送方法
KR101191196B1 (ko) * 2006-06-07 2012-10-15 엘지전자 주식회사 패리티 검사 행렬을 이용하여 부호화 및 복호화하는 방법
ES2562031T3 (es) 2007-10-30 2016-03-02 Sony Corporation Aparato y método de procesamiento de datos
TWI390856B (zh) * 2007-11-26 2013-03-21 Sony Corp Data processing device and data processing method
TWI459724B (zh) * 2007-11-26 2014-11-01 Sony Corp Data processing device and data processing method
PT2093887E (pt) * 2008-02-18 2013-11-25 Postech Acad Ind Found Aparelho e método para a codificação e descodificação de canal num sistema de comunicação utilizando códigos de verificação de paridade de densidade esparsa
SI2254249T1 (sl) * 2008-03-03 2015-10-30 Rai Radiotelevisione Italiana (S.P.A.) Vzorci permutacije bitov za modulacijo, kodirano z LDPC, in konstelacije 16QAM
US8468396B2 (en) * 2008-12-31 2013-06-18 Mediatek, Inc. Channel interleaver having a constellation-based block-wise permuation module
KR101644656B1 (ko) * 2009-11-02 2016-08-10 삼성전자주식회사 선형 블록 부호를 사용하는 통신 시스템에서 패리티 검사 행렬을 생성하는 방법과 이를 이용한 채널 부호화/복호화 장치 및 방법
TWI415396B (zh) * 2009-11-23 2013-11-11 Nat Univ Tsing Hua 適用於根據里德-索羅門碼建立之低密度同位檢查碼的解碼器及解碼方法
JP5148586B2 (ja) * 2009-12-01 2013-02-20 株式会社東芝 復号装置および復号方法
JP5505725B2 (ja) * 2010-09-16 2014-05-28 ソニー株式会社 データ処理装置、及びデータ処理方法
JP5601182B2 (ja) * 2010-12-07 2014-10-08 ソニー株式会社 データ処理装置、及びデータ処理方法
JP5630278B2 (ja) * 2010-12-28 2014-11-26 ソニー株式会社 データ処理装置、及びデータ処理方法
JP5630283B2 (ja) * 2011-01-19 2014-11-26 ソニー株式会社 データ処理装置、及び、データ処理方法
JP5630282B2 (ja) * 2011-01-19 2014-11-26 ソニー株式会社 データ処理装置、及び、データ処理方法
JP5637393B2 (ja) * 2011-04-28 2014-12-10 ソニー株式会社 データ処理装置、及び、データ処理方法
EP2525497A1 (en) * 2011-05-18 2012-11-21 Panasonic Corporation Bit-interleaved coding and modulation (BICM) with quasi-cyclic LDPC codes
JP5648852B2 (ja) * 2011-05-27 2015-01-07 ソニー株式会社 データ処理装置、及び、データ処理方法
EP2560311A1 (en) 2011-08-17 2013-02-20 Panasonic Corporation Cyclic-block permutations for spatial multiplexing with quasi-cyclic LDPC codes
RU2012134916A (ru) * 2012-08-15 2014-02-20 ЭлЭсАй Корпорейшн Способ выбора подходящего кода ldcp
CN103780266B (zh) * 2012-12-21 2016-11-23 北京信息科技大学 一种不增加总线数目的避免串扰编码方法及装置
US9213593B2 (en) * 2013-01-16 2015-12-15 Maxlinear, Inc. Efficient memory architecture for low density parity check decoding
WO2014123017A1 (ja) * 2013-02-08 2014-08-14 ソニー株式会社 データ処理装置、及びデータ処理方法
EP2955854A4 (en) * 2013-02-08 2016-08-24 Sony Corp DATA PROCESSING DEVICE AND DATA PROCESSING METHOD
US20160043737A1 (en) * 2013-02-08 2016-02-11 Sony Corporation Data processing device and data processing method
MX2014011863A (es) * 2013-02-08 2014-11-03 Sony Corp Dispositivo de procesamiento de datos y metodo de procesamiento de datos.
MX2015009838A (es) * 2013-02-08 2015-10-14 Sony Corp Dispositivo para el procesamiento de datos y metodo para el procesamiento de datos.
KR102023558B1 (ko) 2013-06-12 2019-09-23 새턴 라이센싱 엘엘씨 데이터 처리 장치, 및 데이터 처리 방법
US9698939B2 (en) 2013-06-13 2017-07-04 Ciena Corporation Variable spectral efficiency optical modulation schemes
KR20150005853A (ko) * 2013-07-05 2015-01-15 삼성전자주식회사 송신 장치 및 그의 신호 처리 방법
KR102002559B1 (ko) 2013-07-05 2019-07-22 삼성전자주식회사 송신 장치 및 그의 신호 처리 방법
GB201312243D0 (en) 2013-07-08 2013-08-21 Samsung Electronics Co Ltd Non-Uniform Constellations
KR20160060026A (ko) * 2013-09-20 2016-05-27 소니 주식회사 데이터 처리 장치 및 데이터 처리 방법
KR101752331B1 (ko) * 2013-09-20 2017-06-29 소니 주식회사 데이터 처리 장치 및 데이터 처리 방법
MX2019015244A (es) 2013-09-20 2020-02-07 Sony Corp Dispositivo de procesamiento de datos y metodo de procesamiento de datos.
KR102264848B1 (ko) * 2013-09-26 2021-06-14 삼성전자주식회사 송신 장치 및 그의 신호 처리 방법
WO2015045901A1 (ja) * 2013-09-26 2015-04-02 ソニー株式会社 データ処理装置、及びデータ処理方法
EP3051707A4 (en) * 2013-09-26 2017-06-21 Sony Corporation Data processing device and data processing method
US9735809B2 (en) 2013-09-26 2017-08-15 Samsung Electronics Co., Ltd. Transmitting apparatus and signal processing method thereof
KR102359183B1 (ko) 2013-10-30 2022-02-07 삼성전자주식회사 송신 장치 및 그의 신호 처리 방법
US9871621B2 (en) 2013-10-30 2018-01-16 Samsung Electronics Co., Ltd. Transmitting apparatus and signal processing method thereof
KR102163710B1 (ko) * 2013-10-30 2020-10-12 삼성전자주식회사 송신 장치 및 그의 신호 처리 방법
JP2015156533A (ja) * 2014-02-19 2015-08-27 ソニー株式会社 データ処理装置、及び、データ処理方法
JP2015156534A (ja) 2014-02-19 2015-08-27 ソニー株式会社 データ処理装置、及び、データ処理方法
JP2015156530A (ja) * 2014-02-19 2015-08-27 ソニー株式会社 データ処理装置、及び、データ処理方法
JP2015156532A (ja) 2014-02-19 2015-08-27 ソニー株式会社 データ処理装置、及び、データ処理方法
JP2015170912A (ja) * 2014-03-05 2015-09-28 ソニー株式会社 データ処理装置、及び、データ処理方法
JP2015179960A (ja) * 2014-03-19 2015-10-08 ソニー株式会社 データ処理装置、及び、データ処理方法
KR101776272B1 (ko) 2014-03-19 2017-09-07 삼성전자주식회사 송신 장치 및 그의 인터리빙 방법
CN111245442B (zh) 2014-03-19 2023-06-30 三星电子株式会社 发送设备及其交织方法
US9800269B2 (en) 2014-05-21 2017-10-24 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
KR101785692B1 (ko) 2014-05-21 2017-10-16 삼성전자주식회사 송신 장치 및 그의 인터리빙 방법
US9780808B2 (en) 2014-05-21 2017-10-03 Samsung Electronics Co., Ltd. Transmitter apparatus and bit interleaving method thereof
JP6428650B2 (ja) * 2014-05-21 2018-11-28 ソニー株式会社 データ処理装置、及び、データ処理方法
US9602245B2 (en) 2014-05-21 2017-03-21 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
MX357178B (es) * 2014-05-21 2018-06-28 Sony Corp Dispositivo de procesamiento de datos y metodo de procesamiento de datos.
JP6424837B2 (ja) 2014-05-21 2018-11-21 ソニー株式会社 データ処理装置、及び、データ処理方法
WO2015178215A1 (ja) * 2014-05-21 2015-11-26 ソニー株式会社 データ処理装置、及び、データ処理方法
KR101775703B1 (ko) * 2014-05-21 2017-09-06 삼성전자주식회사 송신 장치 및 그의 인터리빙 방법
JP6428649B2 (ja) * 2014-05-21 2018-11-28 ソニー株式会社 データ処理装置、及び、データ処理方法
KR101775704B1 (ko) 2014-05-21 2017-09-19 삼성전자주식회사 송신 장치 및 그의 인터리빙 방법
US9748975B2 (en) * 2015-05-19 2017-08-29 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
CN107925648B (zh) * 2015-09-25 2021-03-02 苹果公司 用于生成射频信号的装置和方法
JP6415787B2 (ja) * 2016-06-13 2018-10-31 三菱電機株式会社 光伝送方法及び光伝送システム
JP6885025B2 (ja) * 2016-11-18 2021-06-09 ソニーグループ株式会社 送信装置、及び、送信方法
CN108123776A (zh) 2016-11-30 2018-06-05 华为技术有限公司 一种编码和调制方法、通信装置
JP6880792B2 (ja) * 2017-02-06 2021-06-02 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6897205B2 (ja) * 2017-02-20 2021-06-30 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6895052B2 (ja) * 2017-02-20 2021-06-30 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6903979B2 (ja) * 2017-02-20 2021-07-14 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP6895053B2 (ja) * 2017-02-20 2021-06-30 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
EP3598648B1 (en) * 2017-03-13 2021-02-24 Sony Semiconductor Solutions Corporation Transmission scheme using a rate 1/4 (736, 184) ldpc code
JP2019121935A (ja) * 2018-01-05 2019-07-22 日本放送協会 送信装置及び受信装置
JP7135344B2 (ja) * 2018-01-18 2022-09-13 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
JP7077628B2 (ja) * 2018-01-18 2022-05-31 ソニーグループ株式会社 送信装置、送信方法、受信装置、及び、受信方法
CN110190925B (zh) * 2018-02-23 2022-03-08 中兴通讯股份有限公司 一种数据处理方法及装置
CN114897104A (zh) * 2022-06-14 2022-08-12 北京金堤科技有限公司 信息获取方法、装置、电子设备及存储介质

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6353900B1 (en) * 1998-09-22 2002-03-05 Qualcomm Incorporated Coding system having state machine based interleaver
US6625219B1 (en) * 1999-02-26 2003-09-23 Tioga Technologies, Ltd. Method and apparatus for encoding/framing for modulated signals over impulsive channels
EP1463255A1 (en) 2003-03-25 2004-09-29 Sony United Kingdom Limited Interleaver for mapping symbols on the carriers of an OFDM system
JP4224777B2 (ja) 2003-05-13 2009-02-18 ソニー株式会社 復号方法および復号装置、並びにプログラム
KR100505694B1 (ko) * 2003-07-09 2005-08-02 삼성전자주식회사 직접 계산 방식에 의한 코드화 직교 주파수 분할 다중화수신기의 채널 상태 평가 장치 및 그 방법
CN1294706C (zh) * 2003-11-07 2007-01-10 中国人民解放军理工大学通信工程学院 对于具有输出外信息的编码调制系统的迭代解调解码方法及装置
CN100364237C (zh) * 2004-02-09 2008-01-23 清华大学 非规则低密度奇偶校验码的系统码设计方法及其通信系统
CN100490334C (zh) * 2005-01-10 2009-05-20 美国博通公司 构建和选择基于grs不规则ldpc码的方法
KR20060135451A (ko) * 2005-06-25 2006-12-29 삼성전자주식회사 저밀도 패리티 검사 행렬 부호화 방법 및 장치
CN100505555C (zh) * 2005-09-30 2009-06-24 电子科技大学 一种无线通信系统中非正则低密度奇偶校验码的生成方法
KR101351140B1 (ko) * 2005-11-22 2014-01-15 조지아 테크 리서치 코오포레이션 통신 시스템에서 신호 송수신 장치 및 방법
US7831887B2 (en) * 2005-12-15 2010-11-09 General Instrument Corporation Method and apparatus for using long forward error correcting codes in a content distribution system
JP4601675B2 (ja) * 2006-02-09 2010-12-22 富士通株式会社 Ldpc検査行列生成方法及び検査行列生成器並びに符号再送方法
KR101191196B1 (ko) * 2006-06-07 2012-10-15 엘지전자 주식회사 패리티 검사 행렬을 이용하여 부호화 및 복호화하는 방법
US8028214B2 (en) * 2006-08-17 2011-09-27 Mobile Techno Corp. Low density parity check codes decoder and method thereof
US8086929B2 (en) * 2006-11-17 2011-12-27 Lg Electronics Inc. Method of executing LDPC coding using parity check matrix
JP4688841B2 (ja) * 2007-03-20 2011-05-25 日本放送協会 符号化器及び復号器、並びに送信装置及び受信装置
ES2562031T3 (es) * 2007-10-30 2016-03-02 Sony Corporation Aparato y método de procesamiento de datos

Also Published As

Publication number Publication date
KR101474050B1 (ko) 2014-12-17
JPWO2009069580A1 (ja) 2011-04-14
EP2214321A4 (en) 2014-10-22
EP2214318B3 (en) 2019-02-13
EP2509270A2 (en) 2012-10-10
WO2009069616A1 (ja) 2009-06-04
PT2214318T (pt) 2017-08-08
NZ585418A (en) 2013-04-26
BRPI0819644A2 (pt) 2020-12-22
AU2008330716A2 (en) 2010-07-22
EA021906B1 (ru) 2015-09-30
BRPI0820163B1 (pt) 2019-06-04
EP2509270A3 (en) 2014-10-29
MY155083A (en) 2015-08-28
PL2924882T3 (pl) 2021-09-27
WO2009069513A1 (ja) 2009-06-04
ES2639994T3 (es) 2017-10-31
EP2214318A1 (en) 2010-08-04
DK2214318T3 (en) 2017-08-21
EP2214321A1 (en) 2010-08-04
EA201070629A1 (ru) 2011-02-28
AU2008330816A1 (en) 2009-06-04
AU2008330716B2 (en) 2013-01-10
EA201070630A1 (ru) 2010-12-30
US8402337B2 (en) 2013-03-19
AU2008330816B2 (en) 2013-01-17
DK2214318T6 (da) 2019-05-13
JPWO2009069513A1 (ja) 2011-04-14
EP2214318B8 (en) 2017-12-13
MY159733A (en) 2017-01-31
EP2214318A4 (en) 2015-03-04
PL2509270T3 (pl) 2017-09-29
EA021966B1 (ru) 2015-10-30
EP2924882B1 (en) 2021-07-14
AU2008330716A1 (en) 2009-06-04
AU2008330816A2 (en) 2010-07-22
PL2214318T3 (pl) 2017-10-31
ES2639994T7 (es) 2019-08-20
CN101911505A (zh) 2010-12-08
WO2009069580A1 (ja) 2009-06-04
DK2509270T3 (en) 2017-07-31
PL2214318T6 (pl) 2020-10-19
NZ585421A (en) 2013-03-28
CN101911505B (zh) 2015-05-06
EP2924882A1 (en) 2015-09-30
ES2636371T3 (es) 2017-10-05
KR20100096098A (ko) 2010-09-01
US20100299572A1 (en) 2010-11-25
BRPI0820163A2 (pt) 2015-06-16
JP5273055B2 (ja) 2013-08-28
KR20100096102A (ko) 2010-09-01
US20100275100A1 (en) 2010-10-28
TWI377793B (es) 2012-11-21
EP2214321B1 (en) 2017-10-25
CN101874352B (zh) 2013-04-17
PT2509270T (pt) 2017-07-18
EP2214318B1 (en) 2017-06-28
CO6311122A2 (es) 2011-08-22
EP2509270B1 (en) 2017-05-17
ZA201003529B (en) 2011-11-30
ES2649560T3 (es) 2018-01-12
JP5273054B2 (ja) 2013-08-28
TW200939639A (en) 2009-09-16
US8335964B2 (en) 2012-12-18
KR101481854B1 (ko) 2015-01-12
CN101874352A (zh) 2010-10-27
AU2008330716B8 (en) 2013-01-24

Similar Documents

Publication Publication Date Title
ES2881854T3 (es) Aparato de recepción que comprende un multiplexor para códigos LDPC de 64K de tasa 2/3 y 256QAM
AU2008330666B2 (en) Data processing device and data processing method
AU2008330661B2 (en) Data processing device and data processing method
AU2008330660B2 (en) Data process device and data process method
EP2940875A1 (en) COLUMN-TWIST DEINTERLEAVING FOR LDPC CODES IN COMBINATION WITH 16k QAM and 64k QAM
ES2697695T3 (es) Codificación y descodificación de un código LDPC con tasa 18/30 (3/5) de longitud 64.800
EP2950452A2 (en) Dvb reception apparatus comprising a multiplexer for rate 5/6 or 9/10 64k ldpc codes and 4096qam