ES2604033T3 - Procedimiento y aparato para decodificación de canal en un sistema de comunicación que utiliza códigos LDPC perforados - Google Patents

Procedimiento y aparato para decodificación de canal en un sistema de comunicación que utiliza códigos LDPC perforados Download PDF

Info

Publication number
ES2604033T3
ES2604033T3 ES13150863.2T ES13150863T ES2604033T3 ES 2604033 T3 ES2604033 T3 ES 2604033T3 ES 13150863 T ES13150863 T ES 13150863T ES 2604033 T3 ES2604033 T3 ES 2604033T3
Authority
ES
Spain
Prior art keywords
bits
parity
perforated
ldpc
information
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
ES13150863.2T
Other languages
English (en)
Inventor
Seho Myung
Hwan-Joon Kwon
Kyung-Joong Kim
Seok-Ki Ahn
Kyeong-Cheol Yang
Jae-Yoel Kim
Hak-Ju Lee
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.)
Samsung Electronics Co Ltd
Academy Industry Foundation of POSTECH
Original Assignee
Samsung Electronics Co Ltd
Academy Industry Foundation of POSTECH
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 Samsung Electronics Co Ltd, Academy Industry Foundation of POSTECH filed Critical Samsung Electronics Co Ltd
Application granted granted Critical
Publication of ES2604033T3 publication Critical patent/ES2604033T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • 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/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • 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/0067Rate matching
    • H04L1/0068Rate matching by puncturing
    • 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
    • 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Error Detection And Correction (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

Un procedimiento para una decodificación de canal usando un código de comprobación de paridad de baja densidad, LDPC, comprendiendo el procedimiento: demodular una señal transmitida desde un transmisor; determinar (1401) posiciones de bits de paridad perforados basándose en información acerca de un orden predeterminado de conjuntos de bits de paridad perforados y un número de conjuntos de bits de paridad perforados; y decodificar (1409) datos usando las posiciones de los bits de paridad perforados; en el que el orden predeterminado de los conjuntos de bits de paridad perforados se determina como 6, 4, 13, 9, 18, 8, 15, 20, 5, 17, 2, 22, 24, 7, 12, 1, 16, 23, 14, 0, 21, 10, 19, 11, 3, cuando una longitud de palabra de código, N1, es 16200, una longitud de información, K1, es 7200, un esquema de modulación es modulación por amplitud en cuadratura, QAM, de 16 y el número de bits de paridad por conjunto de bits de paridad, M1, es 360 bits de paridad, en el que los conjuntos de bits de paridad se forman mediante la siguiente ecuación;**Fórmula** donde Pj indica el j-ésimo conjunto de bits de paridad, N1 indica una longitud de una palabra de código LDPC, K1, indica una longitud de una palabra de información, q es un valor que satisface q >= (N1 - K1) / M1, donde K1/M1 es un número entero, y 0 <= j < q.

Description

5
10
15
20
25
30
35
40
45
50
55
DESCRIPCION
Procedimiento y aparato para decodificacion de canal en un sistema de comunicacion que utiliza codigos LDPC perforados
Antecedentes de la invencion
Campo de la Invencion
La presente invencion se refiere a un sistema de comunicacion que utiliza codigos de comprobacion de paridad de baja densidad LDPC. Mas en particular, la presente invencion se refiere a un procedimiento de decodificacion de canal y a un aparato para generar codigos LDPC con diversas longitudes de palabra de codigo y tasas de codigo a partir de un codigo LDPC proporcionado en modulacion de orden superior.
Descripcion de la tecnica relacionada
En los sistemas de comunicacion inalambricos, el rendimiento del enlace disminuye significativamente debido a diversos ruidos en los canales, al fenomeno de desvanecimiento y a la interferencia entre sfmbolos (ISI). Por lo tanto, para conseguir sistemas de comunicacion digital de alta velocidad que requieren un caudal de datos y una fiabilidad elevados, tales como la comunicacion movil de la siguiente generacion, la difusion digital e internet portatil, es importante desarrollar una tecnologfa para superar los ruidos de canal, el desvanecimiento y la ISI. Recientemente, se ha llevado a cabo un estudio intensivo sobre los codigos de correccion de errores como un procedimiento para aumentar la fiabilidad de la comunicacion recuperando eficazmente informacion distorsionada.
Un codigo LDPC, introducido en primer lugar por Gallager en la decada de 1960, ha perdido importancia con el tiempo debido a la complejidad de su implementacion, que no podfa resolverse mediante la tecnologfa de entonces. Sin embargo, dado que el turbo codigo, que fue descubierto por Berrou, Glavieux y Thitimajshima en 1993, presenta niveles de rendimiento que se aproximan al lfmite de canal de Shannon, se han llevado a cabo investigaciones sobre decodificacion iterativa y codificacion de canal basadas en un grafo, junto con analisis sobre el rendimiento y las caractensticas del turbo codigo. Con esto como impulso, el codigo LDPC se ha vuelto a estudiar a finales de la decada de 1990, demostrandose que el codigo LDPC tiene unos niveles de rendimiento que se aproximan al lfmite del canal de Shannon, si el LDPC experimenta decodificacion aplicando decodificacion iterativa basandose en un algoritmo suma-producto sobre un grafo de Tanner (un caso especial de un grafo factor) correspondiente al codigo LDPC.
El codigo LDPC se representa habitualmente utilizando una tecnica de representacion de grafos, y muchas caractensticas pueden analizarse mediante los procedimientos basados en teona de grafos, algebra y teona de probabilidades. En general, un modelo de grafos de los codigos de canal es util para la descripcion de los codigos, y mapeando la informacion sobre los bits codificados a vertices en el grafo y mapeando las relaciones entre los bits a las aristas en el grafo, es posible considerar el grafo como una red de comunicacion en la que los vertices intercambian mensajes predeterminados a traves de las aristas, posibilitando de este modo obtener un algoritmo de decodificacion natural. Por ejemplo, un algoritmo de decodificacion obtenido a partir de un grafo reticulado (“trellis”), que puede considerarse una clase de grafo, puede incluir el muy conocido algoritmo de Viterbi y un algoritmo de Bahl, Cocke, Jelinek y Raviv (BCJR).
El codigo LDPC se define en general como una matriz de comprobacion de paridad, y puede expresarse utilizando un grafo bipartito, que se denomina un grafo de Tanner. El grafo bipartite es un grafo en el que los vertices que constituyen el grafo estan divididos en dos tipos diferentes, y el codigo LDPC esta representado por el grafo bipartito que consiste en vertices, algunos de los cuales se denominan nodos variables y otros de los cuales se denominan nodos de comprobacion. Los nodos variables estan mapeados uno a uno a los bits codificados.
Se describira un procedimiento de representacion de grafos para el codigo LDPC haciendo referencia a las figuras 1
y 2.
La figura 1 ilustra un ejemplo de una matriz de comprobacion de paridad H1 de un codigo LDPC con 4 filas y 8 columnas. Haciendo referencia a la figura 1, debido a que el numero de columnas es 8, la matriz de comprobacion de paridad H1 significa un codigo LDPC que genera una palabra de codigo de longitud 8, y las columnas estan mapeadas a 8 bits codificados en una base de uno a uno.
La figura 2 ilustra un grafo de Tanner correspondiente a la matriz de comprobacion de paridad H1 de la figura 1.
Haciendo referencia la figura 2, el grafo de Tanner del codigo LDPC incluye 8 nodos variables x1 (202), x2 (204), x3 (206), x4 (208), x5 (210), x6 (212), x7 (214) y xa (216), y 4 nodos 218, 220, 222 y 224 de comprobacion. Una columna i-esima y una fila j-estima en la matriz de comprobacion de paridad H1 del codigo LDPC se mapean a un nodo variable xi y a un nodo de comprobacion j-esimo, respectivamente. Ademas, un valor de 1, es decir, un valor distinto de cero, en la posicion en que se cruzan una columna i-esima y una fila j-esima en la matriz de comprobacion de paridad H1 del codigo LDPC, indica que existe una arista entre el nodo variable xi y el nodo de comprobacion j-esimo en el grafo de Tanner que se muestra en la figura 2.
5
10
15
20
25
30
35
40
45
En el grafo de Tanner del codigo LDPC, el grado del nodo variable y del nodo de comprobacion indica el numero de aristas conectadas a cada nodo respectivo, y el grado es igual al numero de entradas distintas de cero en una columna o fila correspondiente al nodo pertinente en la matriz de comprobacion de paridad del codigo LDPC. Por ejemplo, en la figura 2, los grados de los nodos variables x1 (202), x2 (204), x3 (206), x4 (208), X5 (210), x6 (212), x7 (214) y X8 (216) son 4, 3, 3, 3, 2, 2, 2 y 2, respectivamente, y los grados de los nodos 218, 220, 222 y 224 de comprobacion son 6, 5, 5 y 5, respectivamente. Ademas, los numeros de las entradas distintas de cero en las columnas de la matriz de comprobacion de paridad H1 en la figura 1, que corresponden a los nodos variables en la figura 2, coinciden con sus grados 4, 3, 3, 3, 2, 2, 2 y 2, y los numeros de las entradas distintas de cero en las filas de la matriz de comprobacion de paridad H1 en la figura 1, que corresponden a los nodos de comprobacion de la figura 2, coinciden con sus grados 6, 5, 5 y 5.
Para expresar la distribution de grados para los nodos del codigo LDPC, una relation del numero de nodos variables de grado i respecto al numero total de nodos variables se define como fi, y una relacion del numero de nodos de comprobacion de grado j respecto al numero total de nodos de comprobacion se define como gj. Por ejemplo, para el codigo LDPC correspondiente a las figuras 1 y 2, f2=4/8, f3=3/8, f4=1/8, y fi=0 para i^2, 3, 4; y g5=3/4, ge=1M, y gj=0 para j^5, 6. Cuando una longitud del codigo LDPC, es decir, el numero de columnas, se define como N, y el numero de filas se define como N/2, la densidad de entradas distintas de cero en toda la matriz de comprobacion de paridad que tiene la distribucion de grados anterior se calcula tal como se muestra en la ecuacion (1).
2f2N + 3f3N + 4f4N _5,25 m
N ■ N/2 N ...................
En la ecuacion (1), cuando N aumenta, disminuye la densidad de los 1 en la matriz de comprobacion de paridad. En general, como para el codigo LDPC, dado que la longitud N de la palabra de codigo es inversamente proporcional a la densidad de entradas distintas de cero, un codigo LDPC con N grande tiene una densidad muy baja de entradas distintas de cero. El termino "baja densidad” para el codigo LDPC se origina a partir de la relacion mencionada anteriormente.
A continuation, haciendo referencia a la figura 3, se realizara una description de caracteristicas de una matriz de comprobacion de paridad de un codigo LDPC estructurado aplicable a la presente invention. La figura 3 muestra un codigo LDPC adoptado como la tecnologia convencional de transmision de difusion por satelite de video digital de segunda generation (DVB-S2), que es una de las normas europeas de difusion digital.
En la figura 3, N1 y K1 indican una longitud de palabra de codigo y una longitud de information (una longitud de una palabra de informacion) de un codigo LDPC, respectivamente, (N1-K1) proporciona una longitud de paridad. Ademas, los numeros enteros M1 y q se determinan de manera que satisfacen q=(N1-K1)/M1. Preferentemente, K1/M1 debera ser tambien un numero entero. La matriz de comprobacion de paridad en la figura 3 se denominara en el presente documento una primera matriz de comprobacion de paridad H1, por conveniencia unicamente.
Haciendo referencia a la figura 3, una estructura de una parte de paridad, es decir, la columna de orden K1 hasta la columna de orden (N1-1), en la matriz de comprobacion de paridad, tiene forma de diagonal doble. Por lo tanto, como para la distribucion de grado sobre las columnas correspondientes a la parte de paridad, todas las columnas tienen grado ‘2’, excepto la ultima columna, que tiene grado ‘1’.
En la matriz de comprobacion de paridad, una estructura de una parte de informacion, es decir, la columna de orden 0 hasta la columna de orden (KH), se forma utilizando las reglas siguientes.
Regla 1: se generan un total de K1/M1 grupos de columnas agrupando K1 columnas correspondientes a la palabra de informacion en la matriz de comprobacion de paridad, en multiples grupos incluyendo, cada uno, M1 columnas. Un procedimiento para formar columnas pertenecientes a cada grupo de columnas sigue la regla 2 a continuacion.
Regla 2: se determinan en primer lugar las posiciones de los 1 en cada columna de orden 0 en grupos de columnas i-esimos (donde Cuando se indica un grado de una columna de orden 0 en cada grupo
R(l) R(2) RiDl)
de columnas i-esimo mediante Q, si se supone que las posiciones de las filas con 1 son las
R?/(k = l,2,...,Di)
posiciones de las filas con 1 se definen como se muestra en la ecuacion (2), en una fila j-
esima (donde j=1,2,...,M1-1) en un grupo de columnas i-esimo.
imagen1
5
10
15
20
25
30
35
40
45
50
De acuerdo con las reglas anteriores, puede apreciarse que los grados de las columnas que pertenecen a un grupo de columnas i-esimo son iguales a Di. Para una mejor comprension de una estructura de un codigo LDPC de DVB- S2 que almacena information sobre la matriz de comprobacion de paridad de acuerdo con las reglas anteriores, se describira el siguiente ejemplo detallado.
Como un ejemplo detallado, para N1=30, K1=15, M1=5 y q=3, pueden expresarse como sigue tres secuencias para la informacion sobre las posiciones de las filas con 1 para las columnas de orden 0 en 3 grupos de columnas. En el presente documento, estas secuencias se denominan “secuencias de position de ponderacion-1”.
R(l) =0 R(2) =1 R(2) - 2
Al,0 w’ Al,0 Al,0
^=0, *$ = 11, *$=!3,
4o=0> 42o=10’ 43o=14-
En relation con la secuencia de posicion de ponderacion-1 para las columnas de orden 0 en cada grupo de columnas, solamente las secuencias de posicion correspondientes pueden expresarse como sigue para cada grupo de columnas. Por ejemplo:
012
0 11 13 0 10 14.
En otras palabras, la secuencia de posicion de ponderacion-1 i-esima en la lmea i-esima representa secuencialmente la informacion de las posiciones de las filas con 1 en el grupo de columnas i-esimo.
Es posible generar un codigo LDPC que tenga el mismo concepto que el de un codigo LDPC de DVB-S2 de la figura 4, formando una matriz de comprobacion de paridad utilizando la informacion correspondiente al ejemplo detallado, y las reglas 1 y 2.
La solicitud de patente de Estados Unidos US 2008/005641 A1 desvela un decodificador de LDPC. El decodificador esta configurado para incluir una unidad de adquisicion configurada para adquirir primeras probabilidades respectivas de bits de datos y segundas probabilidades respectivas de bits de paridad, los bits de datos y los bits de paridad incluidos en datos de codigo obtenidos por codificar por LDPC los bits de datos con una matriz de comprobacion de paridad de baja densidad.
La solicitud de patente internacional WO 2007/091797 A se refiere a un procedimiento y un transmisor para adaptar el tamano de una palabra de codigo codificada mediante un codigo de comprobacion de paridad de baja densidad (LDPC) a un tamano de un canal de transmision en un sistema de comunicacion movil. Un procedimiento de ajuste del tamano de palabra de codigo en un sistema de comunicacion que soporta un esquema de codification lDpC, comprende las etapas de codificar los datos de origen utilizando una matriz de comprobacion de paridad, y ajustar el tamano de la palabra de codigo codificada para hacerlo coincidir con un tamano de un canal de transmision que se determina en funcion de la capacidad del canal de transmision, siendo ajustado el tamano de la palabra de codigo codificada utilizando informacion asociada con ponderaciones de columna de la matriz de comprobacion de paridad.
El articulo “Variable Rate LDPC Codes for Wireless Applications”, de M. Baldo y col, en Proc. Softcom 2006, 1 de septiembre de 2006, paginas 301 a 305, XP031 059454, ISBN: 978-953-6114-90-0 analiza codigos LDPC de tasa variable para aplicaciones inalambricas, donde se requiere adaptation de enlace rapida para maximizar la eficacia del sistema. En particular, el articulo describe que puede utilizarse una denominada estrategia de “pseudoperforation” como alternativa a soluciones mas convencionales, asegurando un buen rendimiento y manteniendo al mismo tiempo una complejidad limitada.
La solicitud de patente de Estados Unidos US 2007/226583 A1 describe un aparato y un procedimiento para transmitir/recibir senales en un sistema de comunicacion. En un sistema de comunicacion, un aparato de transmision de senales incluye un codificador para codificar un vector de informacion en una palabra de codigo de comprobacion de paridad de baja densidad (LDPC) con un esquema de codificacion LDPC, y un perforador para perforar la palabra de codigo LDPC en funcion de una tasa de codificacion utilizada en un esquema de perforation. Un aparato de reception de senal incluye un elemento de insertion de ‘0’ para insertar simbolos ‘0’ en una senal recibida, de acuerdo con una tasa de codificacion utilizada en un aparato de transmision de senal, y un decodificador para decodificar la senal con simbolos ‘0’ insertados con un esquema de decodificacion correspondiente a un esquema de codificacion de comprobacion de paridad de baja densidad (LDPC) utilizado en el aparato de transmision de senal, detectando de ese modo un vector de informacion.
La solicitud de patente de Estados Unidos US 2007/101243 A1 describe un procedimiento para perforar una comprobacion de paridad de baja densidad (LDPC). El procedimiento incluye a) establecer una longitud de palabra de codigo y el numero total de nodos de bit a perforar; b) seleccionar un nodo de comprobacion (o varios nodos de
5
10
15
20
25
30
35
40
comprobacion) con prioridad maxima excluyendo los nodos de comprobacion comprobados por completo en una ronda actual; c) seleccionar un nodo de bit (o nodos de bit) con prioridad maxima excluyendo los nodos de bit comprobados por completo entre nodos de bit conectados al nodo de comprobacion (o nodos de comprobacion) seleccionado; d) determinar si el nodo de bit seleccionado es un nodo de bit a perforar, es decir, no es sistematico, no tiene activado un indicador de prohibition de perforation; e) perforar un nodo de bit asociado si el nodo de bit seleccionado es el nodo de bit a perforar, establecer nodos de bit no perforados conectados al nodo de comprobacion seleccionado mediante un indicador de prohibicion de perforacion, reduciendo en 1 el numero de nodos de bit restantes a perforar y aumentando en 1 el numero de nodos perforados conectados, del nodo de comprobacion asociado; f) determinar si el numero de bits restantes a perforar es mayor que 0; y g) volver a la etapa b) si el numero de bits restantes a perforar es mayor que 0, y finalizar un procedimiento de perforacion si el numero de bits restantes a perforar no es mayor que 0.
El articulo "Efficient Puncturing Method for Rate-Compatible Low-Density Parity-Check Codes”, de H.Y. Park y col, en IEEE Transactions on Wireless Communications, volumen 6, n. ° 11, 1 de noviembre de 2007, paginas 3914 a 3919, XP011197001, ISSN: 1536-1276, describe un algoritmo que proporciona el orden de nodos variables para perforacion basandose en una funcion de coste propuesta. La funcion de coste intenta maximizar la fiabilidad minima entre las proporcionadas por todos los nodos de comprobacion. Asimismo, intenta asignar homogeneamente nodos de comprobacion supervivientes a todos los nodos variables perforados. El algoritmo presenta la formation de un conjunto de parada a partir de los nodos variables perforados incluso cuando la cantidad de perforacion es grande.
El documento "LDPC Codes in Communications and Broadcasting”, de T. Ohtsuki en IEICE Trans. Commun., volumen E90B, n. ° 3, 1 de marzo de 2007, describe las bases de los codigos LDPC y sus algoritmos de decodificacion. Se presentan algunos codigos LDPC que tienen un buen rendimiento y estan recibiendo mucha atencion, en particular en los sistemas de comunicacion. El documento repasa asimismo algunos codigos LDPC normalizados, los codigos LDPC normalizados en DVB-S2 y los codigos LDPC del estandar IEEE802.16e.
Se sabe que el codigo LDPC de DVB-S2 disenado de acuerdo con la regla 1 y la regla 2 puede codificarse eficazmente utilizando la forma estructural. A continuation se describiran a modo de ejemplo las etapas respectivas en un procedimiento de realization de codification LDPC utilizando la matriz de comprobacion de paridad basada en DVB-S2.
En la siguiente description, como un ejemplo detallado, un codigo LDPC de DVB-S2 con N-i=16200, K-i=10800, M1=360 y q=15 experimenta a un procedimiento de codificacion. Por conveniencia, los bits de information que tienen una longitud K1 se representan como (/b,/1,...,/K1-1), y los bits de paridad que tiene una longitud de (N1-K1) se expresan
como (P0, P1,..., PN1-K1-1).
Etapa 1: un codificador LDPC inicializa bits de paridad, como sigue:
Po ~ Pi ~ ~ Pn^k^-i ~ ^
Etapa 2: el codificador LDPC lee informacion sobre filas donde hay un 1 en un grupo de columnas, a partir de una secuencia de position de ponderacion-1 de orden 0 de entre las secuencias almacenadas que indican la matriz de comprobacion de paridad.
0 2084 1613 1548 1286 1460 3196 4297 2481 3369 3451 4620 2622
Rfl = 0, R™ = 2048, =1613, R$ = 1548, R$ =1286,
/$> =1460, R$ =3196, R(*q =4297, =2481, R^ = 3369,
=3451, R™ =4620, R^3) =2622.
El codificador LDPC actualiza los bits de paridad particulares px de acuerdo con la ecuacion (3) utilizando la informacion leida y el primer bit de informacion /0. En el presente documento, x es un valor de H(k)1,0 para k = 1,2, ..., 13. ’
5
10
15
20
25
30
Po-Po® hi Plow ~ 7*2064 ® *0’ Pi 613 — A613 ® *0’
A548 — As48 ® hi A286 — A286 ® *0 ’ A46O = A46O ® hi
Al96 ~ Al96 ® hi 7*4297 = Pmi ® hi 7*2481 = 7*2481 ® hi (3)
7*3369 = 7*3369 ® *0 ’ 7*3451 = A451 ® *0 > 7*4620 = 7*4620 ® hi
7*2622 = P2622 ® h
En la ecuacion (3), p = px © /b puede expresarse asimismo como p px © io, y © representa suma binaria.
Etapa 3: el codificador LDPC determina en primer lugar un valor de la ecuacion (4) para los siguientes 359 bits de information im (donde m=1,2, ..., 359) despues de ib.
{x-KmmodM^x^mod^ -K^, Ml-360, m = 1,2,...,359
(4)
R(k) i
En la ecuacion (4), xindica un valor de 1>0 para k= 1, 2,..., 13. Debe observarse que la ecuacion (4) es similar a la ecuacion (2).
A continuation, el codificador LDPC realiza una operation similar a la ecuacion (3) utilizando los valores hallados en la ecuacion (4). En otras palabras, el codificador LDPC actualiza los bits de paridad p{x+(m mod M-i)xq}mod(w-m) para /m. Por ejemplo, para m=1, es decir, para i1, el codificador LDPC actualiza los bits de paridad P(x+q)mod(N1-K1) tal como se define en la ecuacion (5).
imagen2
Debe observarse que q = 15 en la ecuacion (5). El codificador LDPC lleva a cabo el procedimiento anterior para m=1,2, ..., 359 del mismo modo que se ha mostrado anteriormente.
Etapa 4: tal como en la etapa 2, el codificador LDPC lee informacion de la 1a secuencia de position de
ponderacion-1
(k = 1, 2,..., 13) para un bit de informacion de orden 361 /360, y actualiza los bits de paridad
particulars px, donde x es . El codificador LDPC actualiza P{X+(m mod Mi)xq>mod(Ni-Ki), m = 361, 362,..., 719 aplicando de manera similar la ecuacion (4) a los siguientes 359 bits de informacion /361, /362, ..., i719 despues de
/360.
Etapa 5: el codificador LDPC repite las etapas 2, 3 y 4 para todos los grupos teniendo cada uno 360 bits de informacion.
Etapa 6: el codificador LDPC determina finalmente bits de paridad utilizando la ecuacion (6).
imagen3
Los bits de paridad pi de la ecuacion (6) son bits de paridad que han experimentado totalmente codificacion LDPC.
Como se ha descrito anteriormente, DVB-S2 lleva a cabo la codificacion mediante el procedimiento de las etapas 1 a 6.
Para aplicar el codigo LDPC al sistema de comunicacion real, el codigo LDPC deberia estar disenado para ser adecuado para la tasa de datos requerida en el sistema de comunicacion. En particular, no solo en un sistema de comunicacion adaptativo que utilice solicitud de retransmision automatica hibrida (HARQ) y modulacion y codificacion adaptativas (AMC), sino asimismo en un sistema de comunicacion que soporte diversos servicios de difusion, se requieren codigos LDPC que tengan diversas longitudes de palabra de codigo, para soportar diversas tasas de datos de acuerdo con los requisitos del sistema.
5
10
15
20
25
30
35
40
45
50
55
Sin embargo, como se ha descrito anteriormente, el codigo LDPC utilizado en el sistema DVB-S2 tiene solamente dos tipos de longitudes de palabra de codigo debido a su utilizacion limitada, y cada tipo de codigo LDPC requiere de una matriz de comprobacion de paridad independiente. Por estas razones, hace tiempo que existe en la tecnica la necesidad de un procedimiento que soporte diversas longitudes de palabra de codigo para aumentar la extensibilidad y flexibilidad del sistema. En particular, en el sistema DVB-S2, se requiere la transmision de datos con varios cientos o miles de bits para la transmision de informacion de senalizacion. Sin embargo, debido a que estan disponibles solamente 16200 y 64800 para las longitudes del codigo LDPC de DVB-S2, sigue existiendo la necesidad de soportar diversas longitudes de palabra de codigo. Ademas, dado que el almacenamiento de matrices de comprobacion de paridad independientes para longitudes respectivas de palabra de codigo del codigo LDPC puede reducir la eficacia de la memoria, existe la necesidad de un esquema que pueda soportar eficazmente diversas longitudes de palabra de codigo a partir de una matriz de comprobacion de paridad existente dada, sin disenar una nueva matriz de comprobacion de paridad.
Sumario de la invencion
Un aspecto de una realizacion de la presente invencion es solucionar, por lo menos, los problemas y/o las desventajas mencionadas anteriormente y dar a conocer, por lo menos, las ventajas descritas a continuacion. Por consiguiente, un aspecto de la presente invencion es proporcionar un procedimiento y un aparato de decodificacion de canal utilizando un codigo de comprobacion de paridad de baja densidad (LDPC) como se define en las reivindicaciones independientes 1 a 4 y en las reivindicaciones dependientes de las mismas.
Otros aspectos, ventajas y caractensticas destacadas de la invencion resultaran evidentes para los expertos en la materia a partir de la siguiente descripcion detallada que, tomada junto con los dibujos adjuntos, desvela realizaciones de la invencion.
Breve descripcion de los dibujos
Los anteriores y otros aspectos, caractensticas y ventajas de ciertas realizaciones a modo de ejemplo de la presente invencion resultaran mas evidentes a partir de la siguiente descripcion, tomada con los dibujos adjuntos, en los cuales:
La figura 1 ilustra un ejemplo de una matriz de comprobacion de paridad de un codigo LDPC de longitud 8;
La figura 2 ilustra un grafo de Tanner para una matriz de comprobacion de paridad de un codigo LDPC de longitud 8;
La figura 3 ilustra un codigo LDPC de DVB-S2;
La figura 4 ilustra un ejemplo de una matriz de comprobacion de paridad de un codigo LDPC de DVB-S2;
La figura 5A ilustra una constelacion de senales para modulacion QPSK utilizada en un sistema de comunicacion digital;
La figura 5B ilustra una constelacion de senales para modulacion 16QAM utilizada en un sistema de comunicacion digital;
La figura 5C ilustra una constelacion de senales para modulacion 64QAM utilizada en un sistema de comunicacion digital;
La figura 6 es un diagrama de bloques de un transceptor en un sistema de comunicacion que utiliza un codigo LDPC;
La figura 7 ilustra un ejemplo en el que se aplica perforacion aleatoria al codigo LDPC de la figura 4;
La figura 8 ilustra otro ejemplo en el que se aplica perforacion no aleatoria al codigo LDPC de la figura 4;
La figura 9 ilustra otro ejemplo en el que se aplica perforacion no aleatoria al codigo LDPC de la figura 4;
La figura 10 ilustra otro ejemplo de una matriz de comprobacion de paridad de un codigo LDPC de DVB-S2;
La figura 11 ilustra un ejemplo de un patron de perforacion determinado considerando transmision BPSK o QPSK en el codigo LDPC de la figura 10;
La figura 12A ilustra un ejemplo de un patron de perforacion determinado considerando transmision 16QAM en el codigo LDPC de la figura 10;
La figura 12B ilustra un ejemplo de un patron de perforacion determinado considerando transmision 64QAM en el codigo LDPC de la figura 10;
La figura 13 es un diagrama de flujo que ilustra un procedimiento para generar un codigo LDPC con una longitud de palabra de codigo diferente a partir de una matriz de comprobacion de paridad de un codigo LDPC almacenado, de acuerdo con una realizacion de la presente invencion;
La figura 14 es un diagrama de flujo que ilustra un procedimiento de decodificacion LDPC en un aparato de recepcion, de acuerdo con una realizacion de la presente invencion;
La figura 15 es un diagrama de bloques de un aparato de transmision que utiliza un codigo LDPC perforado/reducido, de acuerdo con una realizacion de la presente invencion; y
La figura 16 es un diagrama de bloques de un aparato de recepcion que utiliza un codigo LDPC perforado/reducido, de acuerdo con una realizacion de la presente invencion.
En la totalidad de los dibujos, se entendera que los mismos numeros de referencia se refieren a los mismos elementos, caractensticas y estructuras.
5
10
15
20
25
30
35
40
45
50
55
Descripcion detallada de realizaciones ejemplares
La siguiente descripcion que hace referencia a los dibujos adjuntos, se proporciona para ayudar a una comprension exhaustiva de las realizaciones de la invencion, que se define mediante las reivindicaciones y sus equivalentes. Esta incluye diversos detalles espedficos para ayudar a dicha comprension, pero estos deben considerarse como meramente ejemplares. Por consiguiente, los expertos en la materia reconoceran que pueden realizarse diversos cambios y modificaciones a las realizaciones descritas en el presente documento, sin apartarse del alcance de la invencion. Ademas, se omiten las descripciones de funciones y construcciones bien conocidas para mayor claridad y concision.
Los terminos y las palabras utilizadas en la siguiente descripcion y las reivindicaciones no se limitan a sus significados bibliograficos, sino que se utilizan por el inventor unicamente para facilitar una comprension clara y consistente de la invencion. Por consiguiente, debera ser evidente para los expertos en la materia que la siguiente descripcion de realizaciones de la presente invencion se proporciona solamente con fines ilustrativos y no con el fin de limitar la invencion, que se define mediante las reivindicaciones adjuntas y sus equivalentes.
Debe entenderse que las formas singulares “un”, “una” y “el” y “la” incluyen sus equivalentes plurales, salvo que el contexto imponga claramente lo contrario. Por lo tanto, por ejemplo, la referencia a “una superficie componente” incluye la referencia a una o mas de tales superficies.
A continuacion se describira la diferencia de fiabilidad en modulacion de orden superior, antes de una descripcion de la presente invencion. Debera prestarse la debida atencion al diseno de un codigo LDPC debido a que las fiabilidades de los bits que componen los sfmbolos de modulacion de orden superior son diferentes cuando se utiliza modulacion de orden superior en el sistema de comunicacion que requiere de codigos LDPC con varias longitudes de palabra de codigo, a diferencia del sistema de comunicacion que utiliza solamente codificacion por desplazamiento de fase binario (BPSK) o codificacion por desplazamiento de fase en cuadratura (QPSK).
Para explicar la diferencia de fiabilidad en modulacion de orden superior, se proporcionara una descripcion de constelaciones de senal para modulacion de amplitud en cuadratura (QAM), que es la modulacion de orden superior utilizada normalmente en los sistemas de comunicacion. Un sfmbolo modulado QAM consiste en una parte real y una parte imaginaria, y pueden generarse diversos sfmbolos de modulacion diferenciando magnitudes y signos de sus partes reales de sus partes imaginarias. Se describira QAM junto con modulacion QPSK para considerar los detalles de las caractensticas de QAM.
La figura 5A ilustra una constelacion de senal para modulacion QPSK general.
Haciendo referencia la figura 5A, yo determina el signo de una parte real mientras que yi determina el signo de una parte imaginaria. Es decir, un signo de la parte real es mas (+) para yo=0, y menos (-) para yo=1. Asimismo, es signo de la parte imaginaria es mas (+) para yi=0, y menos (-) para yi=1. Dado que yo e yi son iguales en probabilidad de aparicion de errores, puesto que son bits de indicacion de signo que indican signos respectivos de la parte real y la parte imaginaria, las fiabilidades de los bits (y0, yi) correspondientes a una senal de modulacion son de igual importancia, en modulacion QPSK. Para y0,q e yi,q, el segundo submdice 'q' indica q-esimas salidas de bits que constituyen una senal de modulacion.
La figura 5B ilustra una constelacion de senal para modulacion 16QAM general.
Haciendo referencia a la figura 5B, el significado de (y0, yi, y2, y3) correspondiente a los bits de una senal de modulacion, es el siguiente. Los bits y0 e y2 determinan el signo y la magnitud de la parte real, respectivamente, mientras que los bits yi e y3 determinan el signo y la magnitud de la parte imaginaria, respectivamente. En otras palabras, y0 e yi determinan signos de la parte real y la parte imaginaria de la senal de modulacion, mientras que y2 e y3 determinan magnitudes de la parte real y la parte imaginaria de la senal de modulacion. Debido a que distinguir el signo de una senal modulada es mas facil que distinguir la magnitud de la senal modulada, y2 e y3 estan por encima de y0 e yi en probabilidad de produccion de errores. Por lo tanto, en terminos de probabilidades de no aparicion de errores (es decir, de fiabilidades) de los bits, y0=yi > y2=y3. Es decir, los bits (y0, yi, y2, y3) que constituyen una senal de modulacion QAM, a diferencia de los de una senal de modulacion QPSK, tienen fiabilidades diferentes.
En modulacion i6QAM, entre los 4 bits que constituyen una senal, 2 bits determinan signos de la parte real y la parte imaginaria de la senal, y los bits restantes tienen que determinar solamente las magnitudes de la parte real y la parte imaginaria de la senal. Por lo tanto, los ordenes de (y0, yi, y2, y3) y la funcion de cada bit estan sometidos a cambios.
La figura 5C ilustra una constelacion de senal para modulacion 64QAM general.
De (y0, yi, y2, y3, y4, ys), que corresponde a los bits de la senal de modulacion, los bits y0, y2 e y4 determinan la magnitud y el signo de la parte real, e yi, y3 e ys determinan la magnitud y el signo de la parte imaginaria. En este caso, y0 e yi determinan signos de la parte real y la parte imaginaria, respectivamente, y una combinacion de y2 e y4 y una combinacion de y3 e ys determinan magnitudes de la parte real y la parte imaginaria, respectivamente. Dado
5
10
15
20
25
30
35
40
45
50
55
que distinguir los signos de una senal modulada es mas sencillo que distinguir las magnitudes de la senal modulada, las fiabilidades de y0 e y1 son mayores que las fiabilidades de y2, y3, y4 e y5. Los bits y2 e y3 se determinan dependiendo si la magnitud del sfmbolo modulado es mayor o igual que 4, y los bits y4 e y5 se determinan de acuerdo con si la magnitud del sfmbolo modulado esta mas cerca de 4 o de 0, con 2 centrado entre ambos, o mas cerca de 4 o de 8, con 6 centrado entre ambos. Por lo tanto, el intervalo en el que la magnitud esta determinada por y2 e y3 es 4, mientras que el intervalo para y4 e y5 es 2. Como resultado, la fiabilidad de y2 e y3 es mayor que la de y4 e y5. Para concluir, y0=yi > y2=y3 > y4=y5 en terminos de probabilidades de no aparicion de errores (es decir, fiabilidades) de los bits.
En modulacion 64QAM, de los 6 bits que constituyen una senal, 2 bits determinan signos de la parte real y la parte imaginaria de la senal, y 4 bits tienen que determinar solamente magnitudes de la parte real y la parte imaginaria de la senal. Por consiguiente, los ordenes de (y0, yi, y2, y3, y4, y5) y la funcion de cada bit estan sometidos a cambios. Asimismo, en una constelacion de senal de 256QaM o superior, las funciones y las fiabilidades de los bits que constituyen una senal modulacion son diferentes a las descritas anteriormente. Se omitira una descripcion detallada de las mismas.
Por lo tanto, la presente invencion proporciona un procedimiento y un aparato para soportar codigos LDPC con diversas longitudes de palabra de codigo adecuadas para modulacion de orden superior, utilizando una matriz de comprobacion de paridad de un codigo LDPC estructurado, en una forma particular. Ademas, la presente invencion proporciona un aparato para soportar diversas longitudes de palabra de codigo de acuerdo con un orden superior de modulacion en un sistema de comunicacion que utiliza un codigo LDPC en una forma particular, y un procedimiento para controlar el mismo. En particular, la presente invencion proporciona un procedimiento para generar un codigo LDPC utilizando una matriz de comprobacion de paridad de un codigo LDPC dado, siendo el codigo LDPC generado menor que el codigo LDPC dado, y un aparato para lo mismo.
La figura 6 es un diagrama de bloques de un transceptor en un sistema de comunicacion que utiliza un codigo LDPC.
Haciendo referencia a la figura 6, un mensaje u se introduce a un codificador 611 LDPC en un transmisor 610 antes de transmitirse a un receptor 630. El codificador 611 LDPC codifica el mensaje de entrada u, y emite la senal codificada c a un modulador 613. El modulador 613 modula la senal codificada c y transmite la senal modulada s al receptor 630 a traves de un canal 620 inalambrico. Un demodulador 631 en el receptor 630 demodula la senal recibida r, y emite la senal demodulada x a un decodificador 633 LDPC. El decodificador 633 LDPC halla una estimacion u del mensaje basandose en los datos recibidos a traves del canal 620 inalambrico, decodificando la senal demodulada x.
El codificador 611 LDPC genera una matriz de comprobacion de paridad de acuerdo con una longitud de palabra de codigo requerida por un sistema de comunicacion, utilizando un esquema preestablecido. En particular, de acuerdo con una realizacion de la presente invencion, el codificador 611 LDPC puede soportar diversas longitudes de palabra de codigo utilizando el codigo LDPC, sin la necesidad separada de informacion adicional almacenada.
Segun una realizacion de la presente invencion, un procedimiento de obtencion de diversas longitudes de palabra de codigo a partir de un codigo LDPC dado utiliza reduccion y perforacion. El termino “perforacion”, tal como se utiliza en el presente documento, indica un procedimiento que no transmite una parte especificada de una palabra de codigo LDPC despues de generar la palabra de codigo LDPC a partir de una matriz de comprobacion de paridad particular dada realizando codificacion LDPC. Por lo tanto, un receptor determina que los bits no transmitidos han sido borrados.
Para una mejor comprension de la perforacion, se describira en mayor detalle a continuacion una matriz de comprobacion de paridad del codigo LDPC de DVB-S2 ilustrado en la figura 3.
En relacion con la matriz de comprobacion de paridad del codigo LDPC de DVB-S2 ilustrado en la figura 3, su longitud total es de N1, K columnas en la parte delantera de la matriz de comprobacion de paridad correspondiente a bits de informacion (/0, /1...,/m-1), y las columnas en la parte posterior restante correspondientes a bits de paridad (P0, p1,...,pw1-K1-1) de longitud (N1-K1).
De manera general, la perforacion puede aplicarse tanto a los bits de informacion como a los bits de paridad. Aunque normalmente la perforacion y la reduccion reducen las longitudes de palabra de codigo, la perforacion, a diferencia de la reduccion, descrita anteriormente en el presente documento, no limita los valores de bits particulares. La perforacion es un procedimiento para, simplemente, no transmitir bits de informacion particulares o partes particulares de bits de paridad generados, de manera que un receptor pueda borrar los bits correspondientes. En otras palabras, simplemente no transmitiendo bits en las Np posiciones predefinidas en una palabra de codigo LDPC de longitud N1 generada, la perforacion puede obtener el mismo efecto al obtenido transmitiendo una palabra de codigo LDPC de longitud (NrNp). Dado que las columnas correspondientes a los bits perforados en la matriz de comprobacion de paridad se utilizan todas intactas en un procedimiento de decodificacion, con las columnas borradas, la perforacion es diferente a la reduccion.
5
10
15
20
25
30
35
40
45
50
55
Ademas, debido a que la informacion de la posicion para los bits perforados puede compartirse o estimarse en comun mediante el transmisor y el receptor cuando el sistema se configura, el receptor puede simplemente borrar los correspondientes bits perforados, antes de la decodificacion.
En la tecnica de perforacion, debido a que la longitud de una palabra de codigo que el transmisor transmite realmente es de Ni-Np, y a que la longitud de una palabra de informacion es de manera constante K1, la tasa de codigo pasa a ser de Ki/(Ni-Np), que siempre es mayor que la primera tasa de codigo dada K1/N1.
A continuacion se realizara una descripcion de la tecnica de reduccion y la tecnica de perforacion adecuadas para el codigo LDPC de DVB-S2. El codigo LDPC de DVB-S2, que se ha descrito anteriormente, es un codigo LDpC que tiene una estructura particular. Por lo tanto, comparado con el codigo LDPC normal, el codigo LDPC de DVB-S2 puede experimentar reduccion y perforacion mas eficaces.
Haciendo referencia a la figura 4, se proporcionara una descripcion detallada de las caractensticas de un codigo LDPC de DVB-S2 al que se aplica perforacion de paridad. Debe observarse que para el codigo LDPC de DVB-S2 de la figura 4, Ni=30, Ki=15, Mi=5 y q=3 y las secuencias de posicion de ponderacion-1 para las columnas de orden 0 en tres grupos de columnas son las siguientes:
0 i 2 0 ii i3 0 i0 i4
Una secuencia de posicion de ponderacion-i i-esima en una columna i-esima representa secuencialmente la informacion sobre las posiciones de las filas con i en un grupo de columnas i-esimo.
La figura 7 ilustra un ejemplo en el que se aplica perforacion aleatoria al codigo LDPC de la figura 4. Debido a que los bits de paridad perforados en la figura 7 estan sometidos a un procedimiento de borrado en un decodificador, los bits de paridad perforados, en comparacion con los otros bits no eliminados, no tienen un efecto mayor de mejora del rendimiento en un procedimiento de decodificacion LDPC, de manera que sus fiabilidades disminuyen. Por consiguiente, los otros bits conectados directamente a los bits de paridad perforados, que tienen una fiabilidad reducida, acusan tambien una reduccion en el efecto de mejora del rendimiento en el procedimiento de decodificacion. La reduccion en el efecto de mejora del rendimiento aumenta a medida que aumenta el numero de aristas conectadas directamente a los bits perforados en el grafo de Tanner.
En la figura 7, por ejemplo, un bit de informacion de orden 0 correspondiente a una columna de orden 0 esta conectado directamente dos veces al bit de paridad perforado, un 3er bit de informacion correspondiente a una 3a columna esta conectado directamente una vez al bit de paridad perforado, y un 8° bit de informacion correspondiente a una 8a columna esta conectado directamente tres veces al bit de paridad perforado. En este caso, el 3er, el de orden 0, y el 8° bits de informacion son superiores en efecto de mejora del rendimiento para el procedimiento de decodificacion. En otras palabras, cuando los grados de los nodos variables son iguales entre sf, el efecto de mejora del rendimiento disminuye a medida que aumenta el numero de bits perforados conectados.
A partir de la figura 7, puede apreciarse que los numeros de bits de paridad perforados, que estan conectados directamente a bits de informacion respectivos, son aleatorios debido al patron de perforacion aleatorio. Por lo tanto, existe una elevada probabilidad de que las fiabilidades de los bits de informacion respectivos sean asimismo aleatorias. En otras palabras, mientras que algunos bits de informacion pueden obtener un rendimiento de decodificacion mejor que el necesario, otros bits de informacion pueden sufrir una degradacion significativa del rendimiento. Este patron de perforacion aleatorio puede conducir a una irregularidad considerable de las fiabilidades de los bits de informacion en el procedimiento de decodificacion.
La figura 8 ilustra un segundo ejemplo donde se aplica perforacion no aleatoria al codigo LDPC de la figura 4. Mas espedficamente, en el ejemplo ilustrado en la figura 8 se aplica un patron de perforacion relativamente no aleatorio, en una forma particular.
Haciendo referencia a la figura 8, a pesar de que se aplica el patron de perforacion relativamente no aleatorio, las conexiones a los bits de informacion pueden ser significativamente irregulares de acuerdo con el patron de perforacion correspondiente. El patron de perforacion no aleatorio de la figura 8 puede ser mas irregular en comparacion con el patron de perforacion aleatorio de la figura 7.
En el caso del codigo LDPC con una matriz de comprobacion de paridad que tiene una estructura particular tal como el codigo LDPC de DVB-S2, las conexiones entre los bits de informacion y los bits de paridad perforados segun el patron de perforacion pueden cambiar significativamente.
Las realizaciones de la presente invencion sugieren un patron de perforacion que proporciona un rendimiento de decodificacion estable suprimiendo al maximo la irregularidad de las fiabilidades de los bits de informacion en el procedimiento de decodificacion, utilizando las caractensticas estructurales del codigo LDPC de DVB-S2.
5
10
15
20
25
30
35
40
45
50
55
La figura 9 ilustra un tercer ejemplo donde se aplica perforacion no aleatoria al codigo LDPC de la figura 4. En el ejemplo de la figura 9, un patron de perforacion que mantiene un intervalo constante de 3 entre bits de paridad perforados desde q=3, que es una de las variables constituyentes, se aplica a la matriz de comprobacion de paridad mostrada en la figura 4. Tal como puede verse en la figura 9, cada uno de los bits de informacion esta conectado de la misma manera, y dos veces, al bit perforado.
La irregularidad entre los bits perforados y los bits de informacion se reduce notablemente cuando el intervalo entre los bits de paridad perforados se ajusta de acuerdo con el valor de q debido a la estructura del codigo LDPC de DVB-S2. Esto se describe mejor haciendo referencia a la figura 3.
Haciendo referencia a las reglas 1 y 2 y a la figura 3, en relacion con cada grupo de columnas, las posiciones de los 1 en la primera columna en el grupo de columnas correspondiente, determinan posiciones de los 1 en las columnas restantes. Los indices de las filas en las que 1 esta situado en las columnas restantes difieren exactamente en un multiplo de q respecto de un mdice de una fila en la que 1 esta situado en la primera columna, en relacion con modulo (N1-K1), donde N1 indica la longitud de una palabra de codigo LDPC y K1 indica una longitud de una palabra de informacion. Mas espedficamente, los indices de las filas en las que 1 esta situado en dos columnas consecutivas en un grupo de columnas particular difieren entre sf exactamente en q, para modulo (N1-K1).
Otra caractenstica del codigo LDPC de DVB-S2 se encuentra en una submatriz correspondiente a la parte de paridad en la matriz de comprobacion de paridad. Haciendo referencia a la figura 3, la parte de paridad tiene una estructura de una matriz triangular inferior en la que 1 existe en todas las partes diagonales y, en esta estructura, un bit de paridad i-esimo corresponde a un '1' situado en una fila i-esima.
En funcion de la caractenstica estructural del codigo LDPC de DVB-S2, suponiendo que se perforan bits de paridad particulares, si se repite exactamente una perforacion de paridad a intervalos de q, el numero de aristas de bits de informacion conectadas a los bits de paridad perforados en un grupo de columnas particular es el mas regular. Por ejemplo, suponiendo que un bit de paridad i-esimo se perfora para 0<i<q y un bit de paridad de orden (i+kq) se perfora repetidamente para 0<k<M1, si un cierto bit de informacion esta conectado al bit de paridad i-esimo, esto indica que '1' existe en una fila i-esima para una columna correspondiente al bit de informacion. Por lo tanto, puede entenderse que hay '1' en la fila de orden (i+kd) en una columna correspondiente a un bit de informacion que esta separado en k del bit de informacion anterior entre las columnas en un grupo de columnas, de acuerdo con la regla 1 y la regla 2. Como resultado, el bit de informacion esta conectado al bit de orden (i+kq) perforado.
Para el codigo LDPC de DVB-S2, debido a que los grados de los nodos variables correspondientes a toda la palabra de informacion son iguales entre sf en un grupo de columnas, y en una fila hay distribuido un '1' o menos, cuando se aplica perforacion q-periodica, los bits de informacion correspondientes a un grupo de columnas se conectan a un mismo numero de bits perforados. Por lo tanto, las conexiones entre los bits perforados y los bits de informacion se regularizan, de manera que puede esperarse una decodificacion estabilizada en el procedimiento de decodificacion.
En lo descrito hasta ahora, puede apreciarse que para el codigo LDPC de DVB-S2, la tecnica de perforacion q- periodica puede contribuir a la mejora del rendimiento haciendo la mejor utilizacion de las caractensticas estructurales del codigo LDPC de DVB-S2. Sin embargo, hasta la fecha, en relacion con el patron de perforacion optimizado obtenido considerando la perforacion q-periodica, solamente se conocen los resultados obtenidos estableciendo BPSK o QPSK.
Ademas del procedimiento de perforacion q-periodica, se conocen procedimientos que optimizan el rendimiento de acuerdo con la tasa de codigo o la longitud de palabra de codigo cuando se aplica reduccion o perforacion al codigo LDPC general. Sin embargo, debido a que los procedimientos existentes conocidos de descubrimiento de un patron de reduccion/perforacion llevan a cabo el procedimiento de optimizacion teniendo en cuenta solamente BPSK o QPSK, solamente podfa existir un patron de reduccion/perforacion optimizado para un codigo LDPC dado.
Sin embargo, el patron de perforacion/reduccion optimizado obtenido cuando se utiliza modulacion de orden superior y se ha determinado un esquema de constelacion de senal/mapeo de bits (mapeo de bits sobre la constelacion de serial), puede ser diferente al obtenido utilizando modulacion BPSK o QPSK.
En modulacion BPSK o QPSK, debido a que las fiabilidades de los bits que constituyen un sfmbolo son iguales, las fiabilidades de los bits de una palabra de codigo son iguales asimismo en la palabra de codigo LDPC despues de que se ha sometido a reduccion o perforacion, de manera que no es necesario considerar un esquema de modulacion en el procedimiento de descubrimiento del patron de reduccion/perforacion. Sin embargo, tal como se ha descrito anteriormente, en la modulacion de orden superior tal como 16QAM, 64QAM y 256QAM, debido a que las fiabilidades de los bits que componen un sfmbolo son diferentes, cuando se determina el esquema de modulacion de orden superior y el esquema de constelacion de senal/mapeo de bits, las fiabilidades de los bits de palabra de codigo en la palabra de codigo LDPC despues de la aplicacion de reduccion o perforacion pueden ser diferentes a las mismas antes de la aplicacion de la perforacion o reduccion.
La figura 10 ilustra otro ejemplo de una matriz de comprobacion de paridad de un codigo LDPC de DVB-S2.
5
10
15
20
25
30
35
40
45
50
55
En la figura 10, N|=40, Ki=10, Mi=5 y q=6 y las secuencias de posicion de ponderacion-1 para las columnas de orden 0 en dos grupos de columnas de una palabra de informacion, son como sigue:
0 5 10 20 25 71526
Una secuencia de posicion de ponderacion-1 i-esima en una columna i-esima representa secuencialmente la informacion sobre las posiciones de las filas con 1 en un grupo de columnas i-esimo.
Haciendo referencia a la figura 10, el grado de cada columna correspondiente al primer grupo de columnas es 5, y el grado de cada columna correspondiente al segundo grupo de columnas es 3. En general, en relacion con un codigo LDPC, su efecto de mejora del rendimiento es excelente en un procedimiento de decodificacion a medida que aumentan los grados. Por lo tanto, normalmente se espera que el rendimiento proporcionado despues de la decodificacion de los bits correspondientes al primer grupo de columnas sea superior comparado al del segundo grupo de columnas.
Haciendo referencia a la figura 11, se realizara a continuacion una breve descripcion de un patron de perforacion que es adecuado cuando se aplica modulacion BPSK o QPSK al codigo LDPC con la matriz de comprobacion de paridad de la figura 10. En la figura 11, y0 e y1 indican cada sfmbolo BPSK, o indican dos bits que componen un sfmbolo QPSK. Por lo tanto, y0 e y1 son iguales en cuanto a fiabilidad en la constelacion de senal.
Haciendo referencia a la figura 11, despues de que se ha perforado un bit de paridad correspondiente a una 5a columna en una submatriz correspondiente a un bit de paridad arbitrario, se perfora un bit de paridad cuatro veces en un periodo de q. En este punto, los bits de informacion correspondientes a las columnas de grado-5 estan conectados a bits de paridad perforados mediante 2 aristas, y los bits de informacion correspondientes a las columnas de grado-3 no estan conectados a bits de paridad perforados en el grafo de Tanner.
En general, los bits conectados a muchos bits perforados muestran un mal efecto de mejora del rendimiento en el procedimiento de decodificacion. Sin embargo, en la figura 11, las columnas de grado-5 siguen teniendo 3 aristas que no estan conectadas a los bits perforados, de manera que el rendimiento puede no reducirse significativamente en el procedimiento de decodificacion. Ademas, dado que los bits de informacion en las columnas de grado-3 no estan conectados directamente a los bits de paridad perforados, una degradacion significativa del rendimiento puede no ocurrir de manera similar en el procedimiento de decodificacion.
En el presente documento se supone que las columnas de grado-5 son superiores a las columnas de grado-3 en terminos del efecto de mejora del rendimiento en el procedimiento de decodificacion. Sin embargo, esta suposicion es valida solamente para BPSK o QPSK, y no puede aplicarse siempre para modulacion de orden superior general.
Por ejemplo, como se ilustra en la figura 12A, la modulacion 16QAM puede aplicarse al codigo LDPC con la matriz de comprobacion de paridad de la figura 10. En la figura 12A, y0 e y1 indican bits de fiabilidad elevada que determinan signos de una parte real y una parte imaginaria en un sfmbolo 16QAM, respectivamente. Es decir, la relacion de fiabilidad entre los bits se define como y0 = y1 > y2= y3.
Haciendo referencia a la figura 12A, las columnas de grado-5 estan mapeadas a y3 y las columnas de grado-3 estan mapeadas a y-i. En otras palabras, las columnas de grado-5 estan mapeadas a un bit de fiabilidad menor y las de grado-3 estan mapeadas a un bit de fiabilidad mayor en la constelacion de senal.
En este caso, no puede concluirse que las columnas de grado-5 tengan un mayor efecto de mejora del rendimiento en el procedimiento de decodificacion. Las razones son las siguientes. En vista de las caractensticas de la modulacion 16QAM, dado que las columnas de grado-5 estan mapeadas a informacion de fiabilidad menor en una senal recibida de un canal, su mejora de la fiabilidad se realiza muy lentamente en el procedimiento de decodificacion. Por otra parte, las columnas de grado-3, aunque tienen un grado bajo, se mapean a informacion de fiabilidad menor, de manera que el efecto de mejora de la fiabilidad se produce muy rapido.
Como se ha descrito anteriormente, no puede garantizarse que los bits correspondientes a las columnas de grado superior tengan siempre un rendimiento superior en el codigo LDPC al que se aplica modulacion de orden superior.
Haciendo referencia de nuevo a la figura 12A, en una implementacion, despues de que se perfora un bit de paridad correspondiente a una 4a columna en una submatriz correspondiente a un bit de paridad arbitrario, se perfora un bit de paridad cuatro veces a un periodo de q. En este punto, los bits de informacion tanto en las columnas de grado-5 como en las columnas de grado-3 estan conectados a bits de paridad perforados mediante 1 arista en el grafo de Tanner.
En el patron de perforacion aplicado en la figura 11, los bits perforados estan conectados solamente a las columnas de grado-5 debido a que el efecto de mejora del rendimiento de las columnas de grado-5 es alto en modulacion BPSK o QPSK. Sin embargo, en el patron de perforacion ilustrado en la figura 12A, los bits perforados estan distribuidos uniformemente considerando la diferencia entre fiabilidades correspondientes a cada grupo de columnas basandose en el esquema de modulacion. En un analisis de este caso, dado que las columnas de grado-5 estan
5
10
15
20
25
30
35
40
45
50
conectadas solamente a un bit perforado, existe una probabilidad elevada de que no se produzca mas degradacion significativa del rendimiento. Asimismo, aunque las columnas de grado-3 estan conectadas a un bit perforado, corresponden a informacion de alta fiabilidad procedente de una senal recibida, de manera que existe una probabilidad elevada de que no se produzca una degradacion significativa del rendimiento.
De manera similar, incluso cuando se aplica modulacion 64QAM al codigo LDPC con la matriz de comprobacion de paridad de la figura 10, tal como se muestra en la figura 12B, las caractensticas pueden ser diferentes a las de BPSK, QPSK y 16QAM. En la figura 12B, yo e yi indican bits de fiabilidad elevada que determinan signos de una parte real y una parte imaginaria en un sfmbolo 64QAM, respectivamente. Es decir, la relacion de fiabilidad entre los bits se define como yo = yi > y2 = y3 > y4 = y5.
La figura 12B ilustra un ejemplo de un patron de perforacion obtenido considerando bits de paridad correspondientes a columnas de grado-2. En la figura 12A para 16QAM, aunque 3 bits entre los bits de paridad perforados estan conectados a los bits y2 e y3 de fiabilidad minima, dado que los bits de informacion correspondientes a las columnas de grado-5 o grado-3 tienen buen rendimiento, no se produce degradacion del rendimiento. Sin embargo, en la figura 12B, cuando se aplica 64QAM, cuando demasiados bits de paridad estan conectados a y4 e y5 con fiabilidades muy bajas, puede producirse una degradacion del rendimiento. Por lo tanto, las fiabilidades correspondientes a los bits de paridad deberan asimismo considerarse cuidadosamente.
Cabe senalar, en las figuras 12A y 12B, que cuando la longitud de palabra de codigo del codigo LDPC se reduce debido a la reduccion o perforacion, los ordenes de los bits correspondientes a la constelacion de senal son iguales, pero los bits disminuyen en una proporcion predeterminada. Por ejemplo, en las figuras 12A y 12B, para un codigo LDPC, los ordenes (y3, yi, yo, y2, yi, y3, y2, yo) e (y5, yi, y3, y4, yo, y2, y3, y5, yi, y2, y4, yo) de bits correspondientes a las constelaciones de senal se mantienen, pero la proporcion de los bits correspondientes a cada constelacion de senal disminuye en proporcion a la longitud de la palabra de codigo LDPC.
Tal como se ha descrito en las figuras io, ii, i2A y i2B, es facil suponer que podna cambiarse el mismo patron de perforacion de acuerdo con el esquema de modulacion. Es decir, cuando se determina un esquema de modulacion de orden superior y una constelacion de senal/mapeo de bits para un codigo LDPC dado, el patron de perforacion optimo esta sometido a cambios de acuerdo con las conexiones entre bits perforados y otros bits no perforados. Por lo tanto, debenan aplicarse diferentes patrones de perforacion de acuerdo con los esquemas de modulacion de transmision, para minimizar la degradacion del rendimiento causada por la perforacion.
El procedimiento general para aplicar el esquema de perforacion descrito anteriormente puede resumirse en 5 etapas, como sigue. Por conveniencia, se supone en el presente documento que Ni indica la longitud de una palabra de codigo LDPC, cada grupo de columnas incluye Mi columnas y Np bits de paridad se someten a perforacion. El siguiente procedimiento de perforacion se muestra resumidamente en la figura i3.
Etapa de perforacion i
Un aparato de transmision genera una palabra de codigo LDPC de DVB-S2 reducida/no reducida existente, en la etapa i3oi.
Etapa de perforacion 2
El aparato de transmision determina el numero Np de bits de paridad a perforar en la etapa i3o3, y halla en la etapa i3o5, donde LxJ es el numero maximo entero que es menor o igual que x.
Etapa de perforacion 3
El aparato de transmision determina los bits de paridad a perforar po, Pii,..., P/a-i para o<x<A y o</X<q, de acuerdo con un esquema de modulacion de transmision, en la etapa i3o7. Se asume que para o<x<q, se determinaron previamente valores de ix utilizando un procedimiento de evolucion de la densidad que considera el esquema de modulacion de transmision (en el presente documento, se da una relacion de A<q).
Etapa de perforacion 4
El aparato de transmision aplica perforacion a todos los bits de paridad px+kqB para 0<x<A y 0<k<Mi, en la etapa i3o7. En este caso, la constante B es un numero entero predeterminado distinto de cero.
Etapa de perforacion 5
El aparato de transmision perfora adicionalmente los bits de paridad p/A+kqB para o<k<Np-AMi, en la etapa i3o7. A continuacion, el aparato de transmision transmite bits excepto para los bits perforados en la etapa i3o9.
A partir de la etapa de perforacion i hasta la etapa de perforacion 5, se comprendera que el patron de perforacion puede definirse con precision cuando se conoce el numero Np de bits a perforar, la informacion secuencial que
imagen4
define valores de ix y el valor de q.
Para describir ejemplos detallados en los que se llevan a cabo las etapas de perforacion anteriores de acuerdo con los esquemas de modulacion, en la tabla 1 se muestran patrones de perforacion por debajo del optimo (es decir, suboptimizados) para un codigo LDPC de DVB-S2 con N|=16200, K|=7200, Mi=360 y q=25. A continuacion se 5 describira en detalle un procedimiento de seleccion de patrones de perforacion suboptimos.
En la tabla 1, (po, pi, p2,..., P8999) indica todos los bits de paridad del codigo LDPC de DVB-S2, que estan enumerados en una fila.
Tabla 1
Variables principales del codigo LDPC de DVB-S2
N1=16200, K1=7200, M1=360, q=25
Agrupamiento de bits de paridad
Define un conjunto Pj que satisface las siguientes caractensticas para 0<i<q=25: Pj={pklk=j mod 25, 0<k<9000}. El conjunto Pj es un conjunto que tiene 360 bits de paridad como entradas.
Intervalo de Np
Procedimiento de perforacion
0<Np<9000
Para un numero entero _ Np m 360 ’ perforar todos los bits de paridad correspondientes a m conjuntos de bits de paridad P*(0), P*(1), ..., P*(m-1), y perforar adicionalmente (Np- 360m) bits de paridad de entre los bits de paridad correspondientes a P*(m). En este punto, * indica una funcion de permutacion que es un patron de perforacion, y las relaciones se muestran en la parte inferior de la tabla.
m
*(1) *(2) *(3) *(4) *(5) *(6) *(7) *(8)
*(9)
*(10) *(11) *(12) *(13) *(14) *(15) *(16) *(17)
*(18)
*(19) *(20) *(21) *(22) *(23) *(24) - -
Relacion entre funciones de permutacion suboptimizadas en BPSK/QPSK
6
4 18 9 13 8 15 20 5
17
2 24 10 22 12 3 16 23
1
14 0 21 19 7 11 - -
Relacion entre funciones de permutacion suboptimizadas en 16QAM
6
4 13 9 18 8 15 20 5
17
2 24 22 14 23 3 19 10
1
12 0 16 21 7 11 - -
Relacion entre funciones de permutacion suboptimizadas en 64QAM
15
3 23 6 13 18 1 9 17
8
5 20 16 22 4 24 14 2
21
12 7 10 19 11 0 - -
Haciendo referencia a la tabla 1, puede apreciarse que cuando se determina la longitud de los bits de paridad a perforar, el procedimiento de perforacion basandose en patrones de perforacion suboptimos se lleva a cabo mediante un procedimiento predeterminado independientemente del esquema de modulacion, pero las relaciones entre las funciones de permutacion que indican patrones de perforacion optimizados son todas diferentes de 5 acuerdo con los esquemas de modulacion. Es decir, cuando se aplica el procedimiento de perforacion sin tener en cuenta el esquema de modulacion, puede producirse una degradacion significativa del rendimiento de acuerdo con los esquemas de modulacion.
A partir del procedimiento de perforacion, puede apreciarse asimismo que AMi bits de paridad se perforan en la etapa de perforacion 3 y en la etapa de perforacion 4, y Np-AMi bits de paridad se perforan en la etapa de 10 perforacion 5, de manera que se perfora un total de Np bits de paridad.
Los patrones de perforacion suboptimos mostrados en la tabla 1 pueden no ser unicos en funcion de las condiciones para encontrar los patrones de perforacion. Debido a que son posibles varias selecciones del procedimiento de seleccion de los patrones de perforacion, que se describira en detalle a continuacion, pueden estar disponibles muchos patrones de perforacion que muestran un buen rendimiento. De hecho, los patrones de perforacion 15 mostrados en la tabla 2 pueden proporcionar asimismo un rendimiento excelente, tal como los patrones de perforacion definidos en la tabla 1.
Tabla 2
Variables principales del codigo LDPC de DVB-S2
N1=16200, ^1=7200, M1=360, q=25
Agrupamiento de bits de paridad
Define un conjunto Pj que satisface las siguientes caractensticas para 0</<q=25: Pj={pklk=j mod 25, 0<k<9000}. El conjunto Pj es un conjunto que tiene 360 bits de paridad como entradas.
Intervalo de Np
Procedimiento de perforacion
0< Np < 9000
Para un numero entero m Nr 360 ’ perforar todos los bits de paridad
correspondientes a m conjuntos de bits de paridad P*(0), P*(1), ..., P*(m-1), y perforar adicionalmente (Np-360m) bits de paridad de entre los bits de paridad correspondientes a P*(m). En este caso, * indica una funcion de permutacion que es un patron de perforacion, y las relaciones se muestran en la parte inferior de la tabla.
*(0)
*(1) *(2) *(3) *(4) *(5) *(6) *(7) *(8)
*(9)
*(10) *(11) *(12) *(13) *(14) *(15) *(16) *(17)
*(18)
*(19) *(20) *(21) *(22) *(23) *(24) - -
Relacion entre funciones de permutacion suboptimizadas en BPSK/QPSK
6
4 18 9 13 8 15 20 5
17
2 24 10 22 12 3 16 23
1
14 0 21 19 7 11 - -
Relacion entre funciones de permutacion suboptimizadas en 16QAM
6
4 13 9 18 8 15 20 5
17
2 22 24 7 12 1 16 23
14
0 21 10 19 11 3 - -
Relacion entre funciones de permutacion suboptimizadas en 64QAM
6
15 13 10 3 17 21 8 5
19
2 23 16 24 7 18 1 12
20
0 4 14 9 11 22 - -
El procedimiento de mapeo de bits correspondientes a las constelaciones de serial utilizadas en modulaciones 20 16QAM y 64QAM de la tabla 2 es el resultado obtenido aplicando los mismos esquemas de mapeo de bits a aquellos que se ilustran en las figuras 12A y 12B.
5
10
15
20
25
30
35
40
45
50
La palabra de codigo LDPC de DVB-S2 transmitida despues de experimentar la perforacion se restaura a su senal original a partir de una senal recibida en un aparato de recepcion, mediante el procedimiento de decodificacion de la figura 14.
La figura 14 es un diagrama de flujo que ilustra un procedimiento de recepcion en un aparato de recepcion de acuerdo con una realizacion de la presente invencion.
Haciendo referencia a la figura 14, un aparato de recepcion determina o estima un patron de perforacion/reduccion a partir de una senal recibida, en la etapa 1401. A continuacion, el aparato de recepcion determina en la etapa 1403 si existen bits perforados o reducidos. En ausencia de bits perforados o reducidos, el aparato de recepcion lleva a cabo la decodificacion, en la etapa 1409. Sin embargo, cuando existen bits perforados o reducidos, en la etapa 1405 el aparato de recepcion proporciona el patron de perforacion/reduccion al codificador 1560 LDPC, que se describira en relacion con la figura 15, en la etapa 1405.
En la etapa 1407, el codificador 1560 LDPC determina que los bits perforados son bits borrados, y determina que la probabilidad de que los valores de los bits reducidos sean cero (0) es de 1. A continuacion, el codificador 1560 LDPC lleva a cabo la decodificacion, en la etapa 1409.
En el procedimiento de perforacion, se aplica una perforacion g-periodica para estabilizar el rendimiento del codigo LDPC de DVB-S2 utilizando caractensticas estructurales del codigo LDPC de DVB-S2.
Una diferencia mas significativa entre la presente invencion y la tecnica anterior radica en considerar la fiabilidad del esquema de modulacion de transmision cuando se determinan bits de paridad a perforar en la etapa de perforacion 3. En este punto, se proporciona a continuacion un ejemplo de un procedimiento de seleccion de secuencia para determinar los bits a perforar en el codigo LDPC de DVB-S2 en la etapa de perforacion 3. El siguiente procedimiento de seleccion esta sometido a cambios, cuando se aplica a otros codigos LDPc.
Procedimiento de seleccion 1
En primer lugar se determinan los bits que estan conectados, si es posible, a un numero menor de bits de informacion.
Procedimiento de seleccion 2
A partir de los bits de paridad determinados en el procedimiento de seleccion 1, se determinan los bits de paridad a perforar, que presentan el rendimiento mas asintotico, utilizando un procedimiento de analisis de evolucion de la densidad que considera tanto un esquema de modulacion como una distribucion de grados.
Procedimiento de seleccion 3
Basandose en los bits de paridad a perforar determinados en el procedimiento de seleccion 2, se repiten el procedimiento de seleccion 1 y el procedimiento de seleccion 2 sobre los bits, excluyendo los bits a perforar ya seleccionados.
Normalmente, cuando el numero Np de bits a perforar vana mucho, los patrones de perforacion optimizados basandose en el valor de Np pueden no tener correlacion entre sf En otras palabras, en un sistema donde el valor de Np vana mucho, todos los patrones de perforacion optimizados basandose en el valor de Np debenan almacenarse por separado para un rendimiento optimizado.
Sin embargo, aunque no esta garantizado que los patrones de perforacion obtenidos aplicando el procedimiento de seleccion anterior sean optimos para todos los casos, tendnan un rendimiento relativamente estable a partir de un patron de perforacion que tenga una regla regular, independientemente de un cambio en el valor de Np, garantizando de ese modo el rendimiento relativamente estable y un almacenamiento sencillo de los patrones de perforacion.
Por ejemplo, suponiendo que los ordenes de los bits de paridad a perforar se establecen como P1, P2, ..., Pq, puede almacenarse solamente una secuencia que indica los ordenes de los bits de paridad para permitir una perforacion eficaz para un valor arbitrario de Np, a traves de la etapa de perforacion 1 hasta la etapa de perforacion 5.
La tecnica de perforacion puede contribuir a un aumento en la tasa de codigo, debido a que puede cambiar una longitud de una palabra de codigo LDPC, y reducir la longitud de la palabra de codigo sin cambiar una longitud de la informacion. Preferentemente, la perforacion y la reduccion pueden aplicarse conjuntamente para obtener la tasa de codigo y una longitud de palabra de codigo necesarias en el sistema.
Suponiendo, tal como se ha descrito anteriormente, que una longitud de palabra de codigo y una longitud de informacion de un codigo LDPC, que se pretende que se obtengan finalmente a partir de un codigo LDPC dado con una longitud de palabra de codigo N1 y una longitud de informacion K mediante reduccion y perforacion, son N2 y K2, respectivamente, si se proporciona una definicion de N-i-N2=N^ y K-i-K2=Ka, el codigo LDPc con una longitud de palabra de codigo N2 y una longitud de informacion K2 puede generarse reduciendo K& bits y perforando Np (=Na-Ka) bits a partir de una matriz de comprobacion de paridad del codigo LDPC dado. En el caso del codigo LDPC
5
10
15
20
25
30
35
40
45
50
generado, para Na>0 o Ka>0, dado que la tasa de codigo es —!-----—, las longitudes de perforacion y reduccion
N,-Na
k,-ka
pueden establecerse considerando Afe y ^ _jy ■ .
La figura 15 es un diagrama de bloques de un aparato de transmision que utiliza un codigo LDPC perforado/reducido, de acuerdo con una realizacion de la presente invencion.
Haciendo referencia a la figura 15, un aparato de transmision incluye un controlador 1510, un aplicador 1520 de patron de reduccion, un extractor 1540 de matriz de comprobacion de paridad de codigo LDPC, un codificador 1560 LDPC y un aplicador 1580 de patron de perforacion.
El extractor 1540 de matriz de comprobacion de paridad de codigo LDPC extrae una matriz de comprobacion de paridad de codigo LDPC que se ha sometido a reduccion. La matriz de comprobacion de paridad de codigo LDPC puede extraerse utilizando una memoria, puede proporcionarse en el aparato de transmision o puede generarse por el aparato de transmision.
El controlador 1510 controla el aplicador 1520 de patron de reduccion para determinar un patron de reduccion de acuerdo con una longitud de informacion. El aplicador 1520 del patron de reduccion inserta bits con un valor de 0 en las posiciones correspondientes a bits reducidos, o elimina columnas correspondientes a los bits reducidos, a partir de una matriz de comprobacion de paridad de un codigo LDPC dado. El patron de reduccion puede determinarse extrayendo un patron de reduccion almacenado en una memoria, generando un patron de reduccion utilizando un generador de secuencia (no mostrado) u obteniendo un patron de reduccion utilizando un algoritmo de analisis de evolucion de la densidad para una matriz de comprobacion de paridad y una longitud de informacion dada.
El aplicador 1520 del patron de reduccion es opcional cuando no se requiere la reduccion para el codigo. Ademas, el controlador 1510 controla el aplicador 1580 del patron de perforacion para determinar y aplicar un patron de perforacion de acuerdo con un esquema de modulacion y una longitud de bits de perforacion.
El aplicador 1580 del patron de perforacion determina el numero de bits de paridad a perforar, divide en intervalos predeterminados los bits de paridad, determina el numero de bits de perforacion, que se someten a perforacion dentro de los intervalos predeterminados, determina un esquema de modulacion, determina posiciones de los bits de paridad a perforar correspondientes al numero determinado de bits de perforacion dentro de los intervalos predeterminados de acuerdo con el esquema de modulacion determinado, y lleva a cabo perforacion repetidamente sobre los bits de paridad a perforar correspondientes a las posiciones determinadas en los intervalos predeterminados. Los intervalos predeterminados se determinan dividiendo una longitud de los bits de paridad por una longitud de un grupo de columnas en una matriz de comprobacion de paridad.
Los bits restantes, excepto los bits perforados, se transmiten a un receptor de acuerdo con el esquema de modulacion, mediante una unidad de transmision (no mostrada).
El codificador 1560 LDPC lleva a cabo la codificacion basandose en el codigo LDPC reducido mediante el controlador 1510 y el aplicador 1520 del patron de reduccion.
La figura 16 es un diagrama de bloques de un aparato de recepcion de acuerdo con una realizacion de la presente invencion, en el que una serial transmitida desde un sistema de comunicacion que utiliza un codigo LDPC de DVB- S2 perforado/reducido, se recibe y restaura a los datos deseados por el usuario.
Haciendo referencia a la figura 16, un aparato de recepcion incluye un controlador 1610, una unidad 1620 de determinacion/estimacion de un patron de reduccion/perforacion, un demodulador 1630 y un decodificador 1640 LDPC.
El demodulador 1630 recibe y demodula un codigo LDPC reducido/perforado, y proporciona la senal demodulada a la unidad 1620 de determinacion/estimacion del patron de reduccion/perforacion y al decodificador 1640 LDPC.
La unidad 1620 de determinacion/estimacion del patron de reduccion/perforacion, bajo el control del controlador 1610, estima o determina informacion sobre un patron de perforacion/reduccion del codigo LDPC a partir de la senal demodulada, y proporciona al decodificador 1640 LDPC informacion de posicion de los bits perforados/reducidos. La unidad 1620 de determinacion/estimacion del patron de reduccion/perforacion puede determinar o estimar el patron de perforacion/reduccion extrayendo un patron de perforacion/reduccion almacenado en una memoria, generando un patron de perforacion/reduccion utilizando un procedimiento de generacion implementado previamente u obteniendo un patron de perforacion/reduccion utilizando un algoritmo de analisis de evolucion de la densidad para una matriz de comprobacion de paridad y una longitud de informacion dada. El decodificador 1640 LDPC realiza un procedimiento de borrado sobre los bits perforados y lleva a cabo decodificacion sobre los mismos.
5
10
15
20
25
Cuando el aparato de transmision aplica tanto reduccion como perforacion, la unidad 1620 de determinacion/estimacion del patron de reduccion/perforacion, en el aparato de recepcion, puede llevar a cabo la determinacion/estimacion del patron sobre la reduccion en primer lugar, llevar a cabo la estimacion/determinacion del patron sobre la perforacion en primer lugar, o realizar la determinacion/estimacion del patron tanto sobre la reduccion como sobre la perforacion. La unidad 1620 de determinacion/estimacion del patron de reduccion/perforacion determina la presencia/ausencia de bits que perforacion en la senal demodulada. Cuando existen bits de perforacion, la unidad 1620 de determinacion/estimacion del patron de reduccion/perforacion determina las posiciones de los bits de paridad perforados estimando informacion sobre el patron de perforacion.
El decodificador 1640 LDPC decodifica datos utilizando las posiciones determinadas de los bits de paridad perforados, suponiendo que la probabilidad de que los bits perforados sean cero (0) y la probabilidad de que los bits perforados sean 1, son iguales a 1/2. Debido a que la probabilidad de que los valores de los bits reducidos sean cero es 1 (es decir, el 100 %), el decodificador 1640 LDPC determina si permitira o no que los bits reducidos formen parte de su operacion de decodificacion, en funcion del valor 1 de la probabilidad de que los bits reducidos sean cero. Cuando el decodificador 1640 LDPC recibe informacion sobre la longitud del codigo LDPC de DVB-S2 reducido, mediante la unidad 1620 de determinacion/estimacion del patron de reduccion/perforacion, el decodificador 1640 LDPC restaura los datos deseados por el usuario a partir de las senales recibidas.
Tal como se ha descrito en relacion con la figura 15, la reduccion se lleva a cabo en la etapa de entrada del codificador 1560 LDPC y la perforacion se lleva a cabo en la etapa de salida del codificador 1560 LDPC. Sin embargo, en el aparato de recepcion mostrado en la figura 16, el decodificador 1640 LDPC debena tener simultaneamente informacion sobre la perforacion y la reduccion, para hacer posible la decodificacion.
Tal como resulta evidente a partir de la descripcion anterior, las realizaciones de la presente invencion pueden generar un codigo LDPC separado con una longitud de palabra de codigo diferente, optimizando el rendimiento de codificacion/decodificacion utilizando informacion sobre una matriz de comprobacion de paridad dada en el sistema de comunicacion que utiliza modulacion de orden superior y codigos LDPC.
Si bien la invencion se ha mostrado y descrito haciendo referencia a ciertas realizaciones a modo de ejemplo de la misma, los expertos en la materia comprenderan que pueden realizarse en la misma diversos cambios en la forma y los detalles sin apartarse del alcance de la invencion, tal como se define mediante las reivindicaciones adjuntas.

Claims (6)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    REIVINDICACIONES
    1. Un procedimiento para una decodificacion de canal usando un codigo de comprobacion de paridad de baja densidad, LDPC, comprendiendo el procedimiento:
    demodular una senal transmitida desde un transmisor;
    determinar (1401) posiciones de bits de paridad perforados basandose en informacion acerca de un orden predeterminado de conjuntos de bits de paridad perforados y un numero de conjuntos de bits de paridad perforados; y
    decodificar (1409) datos usando las posiciones de los bits de paridad perforados;
    en el que el orden predeterminado de los conjuntos de bits de paridad perforados se determina como 6, 4, 13, 9, 18, 8, 15, 20, 5, 17, 2, 22, 24, 7, 12, 1, 16, 23, 14, 0, 21, 10, 19, 11, 3, cuando una longitud de palabra de codigo, Ni, es 16200, una longitud de informacion, Ki, es 7200, un esquema de modulacion es modulacion por amplitud en cuadratura, QAM, de 16 y el numero de bits de paridad por conjunto de bits de paridad, Mi, es 360 bits de paridad, en el que los conjuntos de bits de paridad se forman mediante la siguiente ecuacion;
    Pj= {pk I j=k mod q, 0<k<Ni-K/},
    donde Pj indica el j-esimo conjunto de bits de paridad, Ni indica una longitud de una palabra de codigo LDPC, Ki, indica una longitud de una palabra de informacion, q es un valor que satisface q = (Ni - Ki) / Mi, donde Ki/Mi es un numero entero, y 0 < j < q.
  2. 2. El procedimiento de la reivindicacion 1, la etapa de determinar las posiciones de los bits de paridad perforados, comprende:
    determinar adicionalmente posiciones de los bits de paridad perforados restantes cuando el numero de los bits de paridad perforados no es un multiplo de un tamano de los conjuntos de bits de paridad.
  3. 3. El procedimiento de la reivindicacion 1, en el que el numero de conjuntos de bits de paridad perforados se determina mediante la siguiente ecuacion;
    imagen1
    donde A indica el numero de conjuntos de bits de paridad perforados y Np indica un numero de bits de paridad perforados.
  4. 4. Un aparato para una decodificacion de canal usando un codigo de comprobacion de paridad de baja densidad, LDPC, comprendiendo el aparato:
    un demodulador (1630) para demodular una senal transmitida desde un transmisor;
    un estimador (1620) de patron de perforacion para determinar posiciones de bits de paridad perforados basandose en informacion acerca de un orden predeterminado de conjuntos de bits de paridad perforados y un numero de conjuntos de bits de paridad perforados; y
    un decodificador (1640) para decodificar datos usando las posiciones de los bits de paridad perforados,
    en el que el orden predeterminado de los conjuntos de bits de paridad perforados se determina como 6, 4, 13, 9, 18, 8, 15, 20, 5, 17, 2, 22, 24, 7, 12, 1, 16, 23, 14, 0, 21, 10, 19, 11, 3, cuando una longitud de palabra de codigo, Ni, es 16200, una longitud de informacion, Ki, es 7200, un esquema de modulacion es modulacion por amplitud en cuadratura, QAM, de 16 y el numero de bits de paridad por conjunto de bits de paridad, Mi, es 360 bits de paridad, en el que los conjuntos de bits de paridad se forman mediante la siguiente ecuacion;
    Pj= {pk \j=k mod q, 0<k<Ni-K}},
    donde Pj indica el j-esimo conjunto de bits de paridad, Ni indica una longitud de una palabra de codigo LDPC, Ki, indica una longitud de una palabra de informacion, q es un valor que satisface q = (Ni - Ki) / Mi, donde Ki/Mi es un numero entero, y 0 < j < q.
  5. 5. El aparato de la reivindicacion 4, en el que el estimador (1620) de patron de perforacion esta configurado para determinar adicionalmente posiciones de los bits de paridad perforados restantes cuando el numero de los bits de paridad perforados no es un multiplo de un tamano de los conjuntos de bits de paridad.
  6. 6. El aparato de la reivindicacion 4, en el que el numero de conjuntos de bits de paridad perforados se determina mediante la siguiente ecuacion;
    imagen2
    donde A indica el numero de conjuntos de bits de paridad perforados y Np indica un numero de bits de paridad perforados.
ES13150863.2T 2008-02-26 2009-02-26 Procedimiento y aparato para decodificación de canal en un sistema de comunicación que utiliza códigos LDPC perforados Active ES2604033T3 (es)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR20080017280 2008-02-26
KR20080017280 2008-02-26
KR20080022472 2008-03-11
KR20080022472 2008-03-11
KR20080025143 2008-03-18
KR1020080025143A KR101503058B1 (ko) 2008-02-26 2008-03-18 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서의 채널 부호화/복호화 방법 및 장치

Publications (1)

Publication Number Publication Date
ES2604033T3 true ES2604033T3 (es) 2017-03-02

Family

ID=40577879

Family Applications (4)

Application Number Title Priority Date Filing Date
ES09153765.4T Active ES2439262T3 (es) 2008-02-26 2009-02-26 Perforación de códigos LDPC en función del esquema de modulación
ES18215832T Active ES2965396T3 (es) 2008-02-26 2009-02-26 Patrón de perforación específico del formato de modulación para códigos LDPC en combinación con 16QAM
ES13150843.4T Active ES2547688T3 (es) 2008-02-26 2009-02-26 Método y aparato para codificación de canales en un sistema de comunicaciones utilizando códigos LDPC perforados
ES13150863.2T Active ES2604033T3 (es) 2008-02-26 2009-02-26 Procedimiento y aparato para decodificación de canal en un sistema de comunicación que utiliza códigos LDPC perforados

Family Applications Before (3)

Application Number Title Priority Date Filing Date
ES09153765.4T Active ES2439262T3 (es) 2008-02-26 2009-02-26 Perforación de códigos LDPC en función del esquema de modulación
ES18215832T Active ES2965396T3 (es) 2008-02-26 2009-02-26 Patrón de perforación específico del formato de modulación para códigos LDPC en combinación con 16QAM
ES13150843.4T Active ES2547688T3 (es) 2008-02-26 2009-02-26 Método y aparato para codificación de canales en un sistema de comunicaciones utilizando códigos LDPC perforados

Country Status (20)

Country Link
US (1) US8271846B2 (es)
EP (5) EP2096761B1 (es)
JP (4) JP5440805B2 (es)
KR (1) KR101503058B1 (es)
CN (4) CN103401563B (es)
AU (1) AU2009217933B2 (es)
DK (3) DK2584707T3 (es)
ES (4) ES2439262T3 (es)
FI (1) FI3490157T3 (es)
HR (1) HRP20240053T3 (es)
HU (1) HUE064710T2 (es)
LT (1) LT3490157T (es)
MY (1) MY163692A (es)
PL (2) PL3490157T3 (es)
PT (3) PT2584707E (es)
RU (3) RU2450443C1 (es)
SG (2) SG188820A1 (es)
SI (2) SI2096761T1 (es)
TW (3) TWI399928B (es)
WO (1) WO2009107989A2 (es)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8209582B1 (en) 2006-11-07 2012-06-26 Marvell International Ltd. Systems and methods for optimizing a product code structure
KR101503058B1 (ko) * 2008-02-26 2015-03-18 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서의 채널 부호화/복호화 방법 및 장치
WO2011103565A1 (en) * 2010-02-22 2011-08-25 Lyric Semiconductor, Inc. Mixed signal stochastic belief propagation
US8347169B1 (en) * 2010-03-01 2013-01-01 Applied Micro Circuits Corporation System and method for encoding using common partial parity products
KR101670511B1 (ko) * 2010-05-07 2016-10-28 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호/복호 방법 및 장치
CA3147919A1 (en) 2010-12-03 2012-06-07 Samsung Electronics Co., Ltd. A method for controlling a code rate according to data transmission and reception in a broadcasting communication system
CN102541675B (zh) * 2010-12-23 2015-03-11 慧荣科技股份有限公司 提升错误更正能力的方法、记忆装置及其控制器
EP2477335B1 (en) 2011-01-18 2019-05-29 Samsung Electronics Co., Ltd. Apparatus and method for transmitting and reveiving data in communication/broadcasting system
JP2012151676A (ja) * 2011-01-19 2012-08-09 Jvc Kenwood Corp 復号装置および復号方法
JP5630283B2 (ja) * 2011-01-19 2014-11-26 ソニー株式会社 データ処理装置、及び、データ処理方法
JP5664919B2 (ja) * 2011-06-15 2015-02-04 ソニー株式会社 データ処理装置、及び、データ処理方法
KR101791477B1 (ko) * 2011-10-10 2017-10-30 삼성전자주식회사 통신/방송 시스템에서 데이터 송수신 장치 및 방법
KR102015121B1 (ko) * 2012-10-17 2019-08-28 삼성전자주식회사 불휘발성 메모리 장치를 제어하도록 구성되는 컨트롤러 및 컨트롤러의 동작 방법
US9154261B2 (en) * 2013-01-16 2015-10-06 Broadcom Corporation Low density parity check (LDPC) coding in communication systems
KR101867829B1 (ko) 2014-03-10 2018-07-19 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법 및 방송 신호 수신 방법
JP6544620B2 (ja) * 2014-05-16 2019-07-17 パナソニックIpマネジメント株式会社 送信装置、受信装置、送信方法および受信方法
KR102177807B1 (ko) * 2014-08-22 2020-11-11 삼성전자주식회사 비이진 부호의 단축 및 천공 방법 및 장치
CN111669253B (zh) 2015-02-13 2023-11-03 三星电子株式会社 发送器及其附加奇偶校验产生方法
KR101800423B1 (ko) * 2015-02-13 2017-11-23 삼성전자주식회사 송신 장치 및 그의 부가 패리티 생성 방법
KR101776267B1 (ko) 2015-02-24 2017-09-07 삼성전자주식회사 송신 장치 및 그의 리피티션 방법
CN111865497B (zh) * 2015-02-25 2023-04-14 三星电子株式会社 发送器及其产生附加奇偶校验的方法
KR102426380B1 (ko) 2015-02-25 2022-07-29 삼성전자주식회사 송신 장치 및 그의 부가 패리티 생성 방법
KR102453471B1 (ko) 2015-02-27 2022-10-14 한국전자통신연구원 고정 길이 시그널링 정보 부호화를 위한 제로 패딩 장치 및 이를 이용한 제로 패딩 방법
CA3065458C (en) 2015-02-27 2022-05-24 Electronics And Telecommunications Research Institute Zero padding apparatus for encoding variable-length signaling information and zero padding method using same
WO2016137203A1 (ko) * 2015-02-27 2016-09-01 한국전자통신연구원 고정 길이 시그널링 정보 부호화를 위한 제로 패딩 장치 및 이를 이용한 제로 패딩 방법
KR102453475B1 (ko) 2015-02-27 2022-10-14 한국전자통신연구원 가변 길이 시그널링 정보 부호화를 위한 제로 패딩 장치 및 이를 이용한 제로 패딩 방법
CA2977627C (en) 2015-02-27 2020-01-07 Sung-Ik Park Parity puncturing device for fixed-length signaling information encoding, and parity puncturing method using same
US10326474B2 (en) 2015-03-02 2019-06-18 Samsung Electronics Co., Ltd. Transmitter and parity permutation method thereof
KR102426780B1 (ko) * 2015-03-02 2022-07-29 삼성전자주식회사 송신 장치 및 그의 패리티 퍼뮤테이션 방법
WO2016140512A1 (en) * 2015-03-02 2016-09-09 Samsung Electronics Co., Ltd. Transmitter and puncturing method thereof
CN111865499B (zh) * 2015-03-02 2023-07-21 三星电子株式会社 接收设备和接收方法
KR101800415B1 (ko) * 2015-03-02 2017-11-23 삼성전자주식회사 송신 장치 및 그의 패리티 퍼뮤테이션 방법
US10277250B2 (en) 2015-03-02 2019-04-30 Samsung Electronics Co., Ltd. Transmitter and parity permutation method thereof
US10348335B2 (en) * 2015-05-15 2019-07-09 SK Hynix Inc. Miscorrection avoidance for turbo product codes
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
US10326477B2 (en) * 2015-12-30 2019-06-18 SK Hynix Inc. Techniques for miscorrection detection for constituent codewords in product codes
US11043966B2 (en) 2016-05-11 2021-06-22 Qualcomm Incorporated Methods and apparatus for efficiently generating multiple lifted low-density parity-check (LDPC) codes
US10454499B2 (en) 2016-05-12 2019-10-22 Qualcomm Incorporated Enhanced puncturing and low-density parity-check (LDPC) code structure
US10469104B2 (en) 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
TWI589125B (zh) * 2016-08-26 2017-06-21 國立交通大學 渦輪編碼的數位資料之去穿刺方法與裝置及渦輪解碼器系統
US10340949B2 (en) * 2017-02-06 2019-07-02 Qualcomm Incorporated Multiple low density parity check (LDPC) base graph design
US10312939B2 (en) 2017-06-10 2019-06-04 Qualcomm Incorporated Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code
CN110832782B (zh) 2017-06-27 2024-04-02 瑞典爱立信有限公司 准循环ldpc码的移位值的设计
CN108234077A (zh) * 2017-12-26 2018-06-29 中国电子科技集团公司第三十研究所 一种受密码控制的动态删余安全Turbo编码方法
KR102428522B1 (ko) * 2018-04-05 2022-08-03 삼성전자 주식회사 무선 통신 시스템에서 극 부호를 이용한 부호화 및 복호화를 위한 장치 및 방법
US11646753B2 (en) 2020-05-21 2023-05-09 Infinera Corporation Methods and apparatus for power efficient design of forward error correction for optical communication systems
KR20220022801A (ko) 2020-08-19 2022-02-28 삼성전자주식회사 무선 통신 시스템에서 신호를 복호하는 방법 및 장치
US11455208B2 (en) 2020-08-20 2022-09-27 Western Digital Technologies, Inc. Soft information for punctured bit estimation in a data storage device
US11949436B2 (en) * 2022-08-12 2024-04-02 Qualcomm Incorporated Low-density parity-check coding scheme with varying puncturing pattern

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7000174B2 (en) * 1999-12-20 2006-02-14 Research In Motion Limited Hybrid automatic repeat request system and method
US6938196B2 (en) * 2001-06-15 2005-08-30 Flarion Technologies, Inc. Node processors for use in parity check decoders
CN1151672C (zh) * 2001-08-28 2004-05-26 清华大学 一种采用多层分组乘积码的信道编码调制方法
WO2003065591A2 (en) * 2002-01-29 2003-08-07 Seagate Technology Llc A method and decoding apparatus using linear code with parity check matrices composed from circulants
US7139964B2 (en) * 2002-05-31 2006-11-21 Broadcom Corporation Variable modulation with LDPC (low density parity check) coding
TWI272777B (en) * 2003-08-08 2007-02-01 Intel Corp Method and apparatus for varying lengths of low density parity check codewords
KR100809619B1 (ko) * 2003-08-26 2008-03-05 삼성전자주식회사 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법
US7221680B2 (en) * 2003-09-02 2007-05-22 Qualcomm Incorporated Multiplexing and transmission of multiple data streams in a wireless multi-carrier communication system
KR100918763B1 (ko) 2003-11-14 2009-09-24 삼성전자주식회사 병렬 연접 저밀도 패리티 검사 부호를 사용하는 채널 부호화/복호 장치 및 방법
JP3875693B2 (ja) 2004-03-24 2007-01-31 株式会社東芝 Lpc符号を用いた符号化ビットのマッピング方法及び送信装置
KR100594818B1 (ko) * 2004-04-13 2006-07-03 한국전자통신연구원 순차적 복호를 이용한 저밀도 패리티 검사 부호의 복호장치 및 그 방법
KR100659266B1 (ko) * 2004-04-22 2006-12-20 삼성전자주식회사 다양한 코드율을 지원하는 저밀도 패러티 검사 코드에 의한데이터 송수신 시스템, 장치 및 방법
KR20050118056A (ko) 2004-05-12 2005-12-15 삼성전자주식회사 다양한 부호율을 갖는 Block LDPC 부호를 이용한이동 통신 시스템에서의 채널부호화 복호화 방법 및 장치
JP4138723B2 (ja) 2004-09-22 2008-08-27 株式会社東芝 復号処理方法および通信装置
US7996746B2 (en) 2004-10-12 2011-08-09 Nortel Networks Limited Structured low-density parity-check (LDPC) code
US7581159B2 (en) * 2004-11-23 2009-08-25 Texas Instruments Incorporated Simplified decoding using structured and punctured LDPC codes
US7953047B2 (en) * 2005-01-24 2011-05-31 Qualcomm Incorporated Parser for multiple data streams in a communication system
KR101157246B1 (ko) * 2005-05-16 2012-06-15 삼성전자주식회사 저밀도 패리티 검사 부호의 패딩 및 천공 방법
KR100946884B1 (ko) * 2005-07-15 2010-03-09 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널인터리빙/디인터리빙 장치 및 그 제어 방법
US20070040000A1 (en) * 2005-08-19 2007-02-22 3M Innovative Properties Company Zoned stretching of a web
KR100856235B1 (ko) * 2005-09-26 2008-09-03 삼성전자주식회사 가변 부호화율을 가지는 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법
KR100943623B1 (ko) * 2005-09-30 2010-02-24 삼성전자주식회사 저밀도 패러티 검사 부호의 천공기법
KR101351140B1 (ko) * 2005-11-22 2014-01-15 조지아 테크 리서치 코오포레이션 통신 시스템에서 신호 송수신 장치 및 방법
KR101102396B1 (ko) * 2006-02-08 2012-01-05 엘지전자 주식회사 이동통신 시스템에서의 코드워드 크기 정합 방법 및 송신장치
CN101034953B (zh) * 2006-03-06 2010-06-23 诺基亚西门子通信系统技术(北京)有限公司 应用低密度奇偶校验码进行数据传输的方法
WO2007145491A1 (en) 2006-06-15 2007-12-21 Samsung Electronics Co., Ltd. Apparatus and method of encoding/decoding block low density parity check codes in a communication system
JP4253332B2 (ja) * 2006-07-03 2009-04-08 株式会社東芝 復号装置、方法およびプログラム
US20100070820A1 (en) * 2006-12-18 2010-03-18 Mitsubishi Electric Corporation Coding apparatus, coding method, coding and decoding apparatus, and communication apparatus
CN101005334B (zh) * 2007-01-12 2010-12-29 中兴通讯股份有限公司 一种低密度奇偶校验码的混合自动请求重传包生成方法
WO2008093717A1 (ja) * 2007-01-31 2008-08-07 Panasonic Corporation 無線通信装置およびパンクチャリング方法
KR101502623B1 (ko) * 2008-02-11 2015-03-16 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널부호/복호 방법 및 장치
KR101503058B1 (ko) * 2008-02-26 2015-03-18 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서의 채널 부호화/복호화 방법 및 장치

Also Published As

Publication number Publication date
CN103401563B (zh) 2016-12-28
RU2012110390A (ru) 2013-09-27
RU2520405C2 (ru) 2014-06-27
PT2584707E (pt) 2015-10-16
JP2014042336A (ja) 2014-03-06
EP2584708B1 (en) 2016-08-24
TWI511469B (zh) 2015-12-01
TW200943739A (en) 2009-10-16
CN102017427B (zh) 2013-08-28
KR101503058B1 (ko) 2015-03-18
TW201334426A (zh) 2013-08-16
AU2009217933A1 (en) 2009-09-03
EP2584707A3 (en) 2013-06-12
TWI511470B (zh) 2015-12-01
US8271846B2 (en) 2012-09-18
SI2096761T1 (sl) 2014-01-31
CN103401633B (zh) 2016-09-28
DK2584707T3 (en) 2015-09-07
HUE064710T2 (hu) 2024-04-28
SG188820A1 (en) 2013-04-30
AU2009217933B2 (en) 2013-06-06
SG10201401195QA (en) 2014-07-30
PT3490157T (pt) 2023-12-18
SI3490157T1 (sl) 2024-01-31
LT3490157T (lt) 2023-12-27
RU2450443C1 (ru) 2012-05-10
PL2096761T3 (pl) 2014-02-28
ES2439262T3 (es) 2014-01-22
HRP20240053T3 (hr) 2024-03-29
JP2014053941A (ja) 2014-03-20
WO2009107989A3 (en) 2009-12-03
RU2520406C2 (ru) 2014-06-27
CN103368584B (zh) 2016-12-07
EP2584708A2 (en) 2013-04-24
EP3490157A1 (en) 2019-05-29
DK2096761T3 (da) 2013-12-02
US20090217130A1 (en) 2009-08-27
CN103368584A (zh) 2013-10-23
EP3490157B1 (en) 2023-10-11
EP2096761A1 (en) 2009-09-02
JP5644010B2 (ja) 2014-12-24
DK3490157T3 (da) 2024-01-08
TWI399928B (zh) 2013-06-21
RU2010135579A (ru) 2012-02-27
ES2547688T3 (es) 2015-10-08
CN103401563A (zh) 2013-11-20
KR20090092196A (ko) 2009-08-31
EP2584708A3 (en) 2013-05-29
EP2096762A1 (en) 2009-09-02
FI3490157T3 (fi) 2024-01-08
CN102017427A (zh) 2011-04-13
CN103401633A (zh) 2013-11-20
MY163692A (en) 2017-10-13
WO2009107989A2 (en) 2009-09-03
EP2096762B1 (en) 2018-12-26
PT2096761E (pt) 2013-12-11
EP2584707A2 (en) 2013-04-24
JP5644011B2 (ja) 2014-12-24
JP2011514070A (ja) 2011-04-28
JP5644012B2 (ja) 2014-12-24
TW201330517A (zh) 2013-07-16
JP2014042335A (ja) 2014-03-06
EP2096761B1 (en) 2013-09-11
EP2584707B1 (en) 2015-06-24
RU2012110392A (ru) 2013-09-27
JP5440805B2 (ja) 2014-03-12
ES2965396T3 (es) 2024-04-15
PL3490157T3 (pl) 2024-04-22

Similar Documents

Publication Publication Date Title
ES2604033T3 (es) Procedimiento y aparato para decodificación de canal en un sistema de comunicación que utiliza códigos LDPC perforados
ES2927436T3 (es) Procedimiento y aparato para codificación y descodificación en un sistema de comunicación que usa códigos de comprobación de paridad de baja densidad
ES2849723T3 (es) Procedimiento y aparato para codificación y descodificación de canal en un sistema de comunicación que usa códigos de verificación de paridad de baja densidad
EP2351230B1 (en) Channel-encoding/decoding apparatus and method using low-density parity-check codes
ES2664496T3 (es) Aparato y procedimiento para codificar y decodificar canales en un sistema de comunicación usando códigos de verificación de paridad de baja densidad
ES2417930T3 (es) Método y aparato para codificar canales en un sistema de comunicación usando códigos de comprobación de paridad de baja densidad