ES2344299T3 - Metodo y dispositivo para codificacion de canal adaptativo. - Google Patents

Metodo y dispositivo para codificacion de canal adaptativo. Download PDF

Info

Publication number
ES2344299T3
ES2344299T3 ES05016017T ES05016017T ES2344299T3 ES 2344299 T3 ES2344299 T3 ES 2344299T3 ES 05016017 T ES05016017 T ES 05016017T ES 05016017 T ES05016017 T ES 05016017T ES 2344299 T3 ES2344299 T3 ES 2344299T3
Authority
ES
Spain
Prior art keywords
bits
component
encoder
queue
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.)
Expired - Lifetime
Application number
ES05016017T
Other languages
English (en)
Inventor
Chang Soo Park
Hyeon Woo Lee
Pil Joong Lee
Jun Jin Kong
Yong Kim
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
Original Assignee
Samsung Electronics Co Ltd
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
Priority claimed from KR1019970060101A external-priority patent/KR100454952B1/ko
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Application granted granted Critical
Publication of ES2344299T3 publication Critical patent/ES2344299T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/2721Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions the interleaver involves a diagonal direction, e.g. by using an interleaving matrix with read-out in a diagonal direction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2732Convolutional interleaver; Interleavers using shift-registers or delay lines like, e.g. Ramsey type interleaver
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/275Interleaver wherein the permutation pattern is obtained using a congruential operation of the type y=ax+b modulo c
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/276Interleaving address generation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2771Internal interleaver for turbo codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2789Interleaver providing variable interleaving, e.g. variable block sizes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2792Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • H03M13/296Particular turbo code structure
    • H03M13/2972Serial concatenation using convolutional component 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • H03M13/2996Tail biting
    • 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/0064Concatenated codes
    • H04L1/0065Serial concatenated 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/0064Concatenated codes
    • H04L1/0066Parallel concatenated 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
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • 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/0059Convolutional codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

Un codificador turbo para codificar bits de información de entrada, que comprende: un primer codificador de componente (410) para codificar bits de información de entrada en una trama para generar primeros bits de paridad; un intercalador (430) para intercalar los bits de información de entrada, y un segundo codificador de componente (420) para codificar los bits de información de entrada intercalada para generar segundos bits de paridad, caracterizados porque un primer generador de bits de cola (450) separado del primer codificador de componente (410) para generar primeros bits de cola es igual a valores retroalimentados del primer codificador de componente (410) para terminar el primer codificador de componente, dicho primer generador de bits de cola comprende unos medios X-OR; un segundo generador de bits de cola (460) separado del segundo codificador de componente (420) para generar segundos bits de cola que son iguales a los valores retroalimentados de los segundos codificador de componente (420) para terminar el segundo codificador de componentes, dicho segundo generador de bits de cola comprende unos medios X-OR; un primer interruptor (455) para conmutar los valores retroalimentados del primer codificador de componente (410) al primer codificador de componentes como los primeros bits de cola en el extremo de la trama, y un segundo interruptor (465) para conmutar los valores de retroalimentados del segundo codificador de componente (420) al segundo codificador de componentes como el segundo bits de cola en el extremo de la trama, en donde cada uno de los codificadores de componentes (410, 420) requiere bits de cola tanto como memorias del codificador de componente que están dispuestas para codificar bits de información de entrada de tamaños de trama variables, en donde los codificadores de componente (410, 420) generan un bit de información y dos bits de paridad en respuesta a proporcionar cada uno de los bits de información al codificador de componente y generar dos bits de de cola y dos los bits de paridad en respuesta a proporcionar cada uno de los primeros y segundos bits de cola al codificador de componente (410, 420).

Description

Método y dispositivo para codificación de canal adaptativo.
Antecedente de la invención 1. Campo de la invención
La presente invención se relaciona con métodos y dispositivos para codificación de canal adaptativo para sistemas de comunicaciones, y en particular, con métodos y dispositivos para codificación de canales adaptativos para uso en transmisión de voz y datos.
2. Descripción de la técnica relacionada
Un codificador turbo, constituido en una estructura en paralelo o en serie, genera símbolos de paridad a partir de una trama de bit de información N de entrada con dos codificadores de componente simple (o constituyentes). Este utiliza un código convolucional sistemático recursivo (RSC) como un código de componente (o constituyentes).
La Fig. 1 es un diagrama de bloques de un codificador turbo paralelo convencional, descrito en la Patente Estadounidense No. 5,446,747 otorgada a Berrou. En el codificador turbo de La Fig. 1, se interpone un intercalador 12 entre los primeros y segundos codificadores de componente 11 y 13. El intercalador 12 tiene un tamaño equivalente a la longitud de la trama N de los bits de información de entrada, y modifica la secuencia de los bits de información recibidos en el segundo codificador componente 13 para reducir la correlación entre los bits de información. La Fig. 2 es un diagrama de bloques de un codificador turbo en serie convencional que también tiene el intercalador 12 conectado entre los primeros y segundos codificadores de componente 11 y 13.
Los codificadores turbo anteriores producen un código turbo para uso en comunicaciones espaciales. Aunque una restricción de la longitud K en los codificadores de componente 11 y 13 es más corta que aquella de un código convolucional convencional (es decir, K=9), el intercalador 12 utiliza una memoria muy grande, lo que resulta en un retraso muy largo en la decodificación.
La Fig. 3 es un diagrama de bloques de un decodificador turbo para decodificar la salida del codificador turbo paralelo mostrado en la Fig. 1, también descrito en la Patente Estadounidense No. 5,446,747 otorgada a Berrou. La Fig. 4 es un diagrama de bloques de un decodificador turbo para decodificar la salida del codificador turbo en serie mostrado en la Fig. 2, propuesto por Benedetto en un artículo de IEEE Electronics Letters, Vol. 32, No. 13, Junio 1996.
El decodificador turbo en paralelo de La Fig. 3 mejora ventajosamente las características de desempeño en términos de error de bit (BER) al decodificar respectivamente datos de entrada en unidades de trama, utilizando un algoritmo de decodificación iterativo. Un intercalador 323 contribuye a un incremento en una capacidad de corrección de error al distribuir los patrones de error en ráfaga que no se corrigen, mediante un primer decodificador 319, antes de la corrección de los patrones de error en ráfaga en un segundo decodificador 327.
La decodificación iterativa se refiere a la decodificación repetida de símbolos que se decodifican en un procedimiento especifico, utilizando la información extrínseca resultante, para lograr excelente desempeño de decodificación. Los algoritmos de decodificación iterativa son SOVA (Soft-Output Viterbi Algorithm: ver Proceedings of IEEE Vehicular Technology Conference, pp. 941-944, Mayo 1993) y MAP (Maximum Aposteriori Probability: ver IEEE Transactions on Information Theory, pp. 429-445, Vol. 42, No. 2, Marzo 1996). SOVA es una modificación de un algoritmo Viterbi que produce una salida de decisión suave y puede minimizar el índice de error de palabra de código. De otra parte, MAP puede minimizar el índice de error de símbolo.
En el decodificador de La Fig. 3, la salidas y1k e y2k de un "despunzador" 313 son y_{k} y cero, respectivamente, cuando se recibe símbolo de paridad yk del primer codificador de componente 11 de La Fig. 1, mientras que ellos sean cero y y_{k}, respectivamente, cuando se recibe el símbolo de paridad y_{k} del segundo codificador de componente 13 de La Fig. 1. Z_{k+1} es un símbolo de decisión suave utilizada como información extrínseca en un algoritmo de decodificación iterativo y una entrada para decodificación en una siguiente etapa. Se obtiene un símbolo propuesto final al someter Z_{k+1} a una decisión dura. El desempeño del código turbo depende del tamaño del intercalador, la estructura del intercalador, y el número de decodificaciones iterativa.
Como se muestra en la Fig. 1, el codificador turbo incluye el intercalador 12. El intercalador 12 produce la codificación/decodificación turbo para ser implementada en unidades de trama. Así, la complejidad del código turbo es proporcional al producto del tamaño de trama de una memoria necesaria para primeros y segundos decodificadores iterativos 319 y 327 mostrados en la Fig. 3 y el número de estado de los códigos componentes para los primeros y segundos codificadores de componente 11 y 13. El código turbo no puede encontrar su aplicación en trasmisión de voz y datos debido al uso de tramas muy grandes. Incrementar el número de estado de los códigos de componentes para el codificador turbo con el fin de alcanzar mejor desempeño conduce a una complejidad incrementada de los primeros y segundos codificadores de componente 11 y 13.
Con un error en ráfaga en los decodificadores como se muestra en la Fig. 3, la salida del primer decodificador iterativo 319 tiene una correlación, que impide la decodificación confiable en el segundo decodificador iterativo 327 en la siguiente etapa de decodificación, por lo tanto, se incurren en errores en un bloque completo y no se pueden corregir en una siguiente etapa de decodificación iterativa. En este contexto, hay una necesidad cada vez mayor de un intercalador y un desintercalador que pueda distribuir errores en ráfagas en una única trama de un sujeto de código para decodificación iterativa sin correlación.
Debido a la ventaja de la baja correlación, un intercalador aleatorio incrementa el desempeño del código turbo. Con un tamaño pequeño de trama, sin embargo, el intercalador aleatorio tiene limitaciones en su efectividad para distribuir errores en ráfagas sin la correlación y requiere una Tabla de Valores. Por lo tanto, la transmisión de voz o la transmisión de datos de bajo índice requieren un tamaño de trama pequeño un número pequeño de estados de código de componente para minimizar el tiempo de retraso. La transmisión de voz o la transmisión de datos de bajo índice necesitan adicionalmente un intercalador estructurado. En resumen, el código turbo convencional no es viable en la transmisión de voz y datos debido a la inaceptable longitud de restricción de los códigos componentes y el intercalador grande. No obstante, se han hecho grandes esfuerzos en la realización de un codificador y un decodificador para un sistema de comunicaciones, que tiene en cuenta la ventaja del código turbo convencional.
Por lo tanto, existe la necesidad de un codificador turbo que tenga un desempeño igual a o menor que aquel de un codificador convolucional en un sistema de comunicaciones convencional. Existe una necesidad adicional de un intercalador que tenga excelente desempeño con estados de código de componentes y tiempo de retraso minimizado. Aunque el desempeño del intercalador 12 de La Fig. 1 o 2 para uso en un codificador turbo es generalmente proporcional al tamaño del intercalador, el tamaño de la trama del código turbo es limitado. En este caso, es preferible utilizar un intercalador que maximice una distancia Hamming mínima de los códigos turbo en términos de un código de bloque. Se puede emplear un intercalador estructurado para tramas pequeñas.
Divsalar, D., et al. "Codigo turbo for Deep-Space Communications", TDA Progress Report, Volumen 42-120, Febrero 15, 1995, páginas 29-39, en particular se refiere a una concatenación en paralelo de dos códigos convolucionales y el problema de la terminación trellis. Se describe un método de terminación particular que se puede utilizar para índices desiguales y codificadores. De acuerdo con este método de terminación, de proporciona un cambio que está en una primera posición para los primeros N ciclos de reloj y en una segunda posición para M ciclos adicionales. Aquellos M ciclos adicionales vaciará los codificadores con ceros.
Bomer, L., et al.: "A CDMA Radio Link con ``Turbo -Decoding'': Concept y Performance Evaluation", 6th IEEE symposium y personal, indoor y mobile radio communications PIMRC'1995 Volumen 2, Septiembre 27, 1995, paginas 788-793, describe una conexión de radio CDMA de acuerdo con la cual se pueden transmitir servicios de datos y voz. Se dan los parámetros de transmisión correspondientes y se simula una conexión CDMA para servicio de voz y servicio de datos. En particular se describe mediante esta referencia que un código multidimensional sencillo con decodificación turbo se puede utilizar ventajosamente para servicio de voz y datos.
Barbulescu, A.S., et al.: "Rate Compatible Turbo Codes", Electronic Letters, IEE Stevenage, March 30, 1995,GB, Volumen 31, No. 7, páginas 535-536, describe códigos turbo multi-dimensionales particulares en donde el índice se puede variar de la mitad a1/n en donde n corresponde a la dimensión del código. La protección de error desigual y que corresponde a los códigos turbo se describen para ser utilizados en la transmisión de imágenes comprimidas o velocidad también canales satelitales móviles.
Berrou, C., et al.: "Near Shannon Limit Error - Correcting Coding y Decoding: Turbo -Codes (1)", Proceedings of The International Conference on Communications (ICC) Ginebra, Mayo 23-26, 1993, Vol. 3, páginas 1064-1070, describe básicas de código turbo y en particular se refiere a la concatenación en paralelo de dos códigos convolucionales sistémicos recursivos con respecto a un codificador y se dice que el decodificador asociado utiliza una regla de decodificación de retroalimentación.
Resumen de la invención
Es un objeto de la presente invención para proporcionar métodos y dispositivos de codificación turbo, que pueden codificar datos de radiotransmisión bajos y voz en un sistema de comunicaciones en donde los bits de cola y los bits de paridad generados de los bits de cola se transmiten sobre un canal para codificar señales de voz y datos a un código turbo.
Este objeto se resuelve mediante las características de las reivindicaciones independientes.
Se describen realizaciones ventajosas mediante las sub-reivindicaciones.
Son posibles diferentes métodos de intercalación.
Un método de intercalado diagonal puede comprender las etapas de recibir una señal de tamaño de trama; determinar los valores de fila y columna que corresponden al tamaño de una trama de entrada; e intercalar diagonalmente los bits de información de la trama de entrada de acuerdo con los valores de fila y columna.
El intercalado diagonal se puede implementar sobre la base de
1
\vskip1.000000\baselineskip
En donde M y N son los valores de fila y columna, MxN es el tamaño de trama, y k es un índice, y new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente.
también se puede implementar el intercalado diagonal sobre la base de
2
en donde M y N son los valores de fila y columna, MxN es el tamaño de trama, y i y j are indexes y new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente.
3
\vskip1.000000\baselineskip
En donde M y N son los valores de fila y columna, M x N es el tamaño de trama, e i y j son los índices y new addr [] representa La nueva dirección de los bits de información intercalados diagonalmente.
Adicionalmente, el intercalado diagonal se puede implementar sobre la base de
4
En donde M y N son los valores de fila y columna, M x N es el tamaño de trama, e i y j son los índices y new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente.
Un método de intercalado de cambio circular, puede comprender las etapas de:
Recibir una señal de tamaño de trama;
determinar parámetros de etapa y salto que corresponde al tamaño de una trama entrada; y
\vskip1.000000\baselineskip
Desarrollar un intercalado circular sobre los bits de información de la trama de entrada de acuerdo con los parámetros de salto y etapa determinados, utilizando los bits de información por lo menos en un círculo.
El intercalado de cambio circular se puede implementar sobre la base de
5
en donde SIZE es el tamaño de los datos a ser intercalados, p es el parámetro de salto para intercalado de cambio circular, STEP es el parámetro de etapa que tiene un valor entero, para datos de cambio desde una posición saltada, new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente e i es un índice.
\vskip1.000000\baselineskip
También se puede implementar el intercalado de cambio circular sobre la base de
6
En donde SIZE es el tamaño de los datos a ser intercalados, p es el parámetro de salto para intercalado de cambio circular, STEP es el parámetro de etapa que tiene un valor entero, para datos de cambio desde una posición saltada, new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente, GCD es el denominador común más grande e i y k son los índices.
Un codificador turbo puede comprender una pluralidad de codificadores de componente para codificar bits de información de entrada; y un intercalador conectado a un puerto de entrada de uno de los codificadores de componentes y tiene información de filas y columnas que corresponden a los tamaños de la información de entrada, para determinar la información de fila y columna que corresponde al tamaño de trama de los bits de información de entrada e intercalar diagonalmente los bits de información.
Un intercalador diagonal correspondiente puede comprender una tabla de intercalado diagonal para almacenar la información de filas y columnas que corresponde al tamaño de la información de entrada, un intercalado diagonal de los bits de información de acuerdo con la información de filas y columnas, mediante
\vskip1.000000\baselineskip
7
\vskip1.000000\baselineskip
En donde M y N son información de fila y columna, k es índice y new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente, y M x N es un tamaño de trama
o mediante
\vskip1.000000\baselineskip
8
\vskip1.000000\baselineskip
En donde M y N son la información de filas y columnas, new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente e i y j son índices, o también mediante
\vskip1.000000\baselineskip
9
\vskip1.000000\baselineskip
En donde M y N son la información de filas y columnas new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente e i y j son índices.
Tal un codificador turbo puede comprender una pluralidad de codificadores componentes para codificar bits de información de entrada; yun intercalador de cambio circular conectado a un puerto de entrada de uno de los codificadores de componente y tiene información de etapa y salto que corresponden a los tamaños de la información de entrada, para determinar la información de etapa y salto que corresponde al tamaño de la trama de los bits de información de entrada desarrolla un intercalado de cambio circular sobre los bits de información.
El intercalador de cambio circular puede comprender: una tabla de intercalado de cambio circular para almacenar la información de filas y columnas que corresponden a los tamaños de una trama de entrada; un controlador de intercalado de cambio circular para generar direcciones para ser utilizadas en el intercalado de cambio circular de los bits de información de la trama de acuerdo con la información de etapa y salto, mediante
\vskip1.000000\baselineskip
10
\newpage
En donde SIZE es el tamaño de los datos a ser intercalados, p es el parámetro de salto para intercalado de cambio circular new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente, STEP es el parámetro de etapa que es un entero, para datos de cambio desde una posición saltada, e i es un índice,
mediante
11
en donde SIZE es el tamaño de los datos de trama a ser intercalados, p es el parámetro de salto para intercalado de cambio circular, e i, j y k son índices, new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente y STEP es en parámetro de etapa que es un entero, para datos de cambio desde una posición saltada.
\vskip1.000000\baselineskip
El método de intercalado de cambio circular puede comprender los etapas de: recibir una señal representativa de tamaño de la información de entrada; determinar un parámetro de salto que corresponde al tamaño de información de entrada, y desarrollar un intercalado de cambio circular sobre los bits de información de entrada de acuerdo con el parámetro de salto determinado, utilizando la bits de información en por lo menos un círculo.
El intercalado de cambio circular se puede implementar sobre la base de
12
En donde SIZE es el tamaño de la información de entrada a ser intercalada, p es el parámetro de salto para el intercalado de cambio circular, STEP es el parámetro de etapa que tiene un valor entero, para datos de cambio desde una posición saltada, new addr [] representa la nueva dirección de la bits de información intercalados diagonalmente, e i es un índice,
o sobre la base de
13
En donde SIZE es el tamaño de la información de entrada a ser intercalado, p es el parámetro de salto para intercalado de cambio circular, new addr [] representa la nueva dirección de los bits de información intercalados diagonalmente, GCD es el denominador común más grande, i, j y k son índices y STEP es el parámetro de etapa que tiene un valor entero, para datos de cambio desde una posición saltada.
Generalmente, el intercalado de cambio circular se puede implementar de acuerdo con un parámetro de salto que corresponde al tamaño de la información de entrada. El tamaño de la información de entrada y el parámetro de salto corresponden al tamaño de la información de entrada que puede ser almacenado.
El intercalado de cambio circular también se puede implementar de acuerdo a un parámetro de salto que corresponde al tamaño de la información de entrada y el orden en que están dispuestos los bits de información de entrada.
El intercalado de cambio circular se puede implementar, utilizando un remanente obtenido al dividir el producto del parámetro salto y la información de orden de los bits de información de entrada mediante un tamaño de círculo.
El tamaño de círculo puede ser igual al tamaño de la trama de entrada.
Breve descripción de los dibujos
Los objetos y ventajas anteriores de la presente invención serán más evidentes, al describir en detalle las realizaciones preferidas de la misma con referencia a los dibujos adjuntos en los que:
La Figura 1 es un diagrama de bloques de un codificador sistemático recursivo contactado en paralelo convencional;
La Figura 2 es un diagrama de bloque de un codificador sistemático recursivo contactado en serie convencional;
La Figura 3 es un diagrama de bloques de un decodificador sistemático recursivo contactado en paralelo convencional;
La Figura 4 es un diagrama de bloques de un decodificador sistemático recursivo contactado en serie convencional;
La Figura 5 es un diagrama de bloques de un codificador sistemático recursivo concatenado en de acuerdo con una primer realización de la presente invención;
La Figura 6 es un diagrama de bloques de un codificador sistemático recursivo concatenado en de acuerdo con una segunda realización de la presente invención;
La Figura 7 es un diagrama de bloques en el intercalador diagonal en el codificador turbo de acuerdo con la primer realización de la presente invención;
La Figura 8 es un diagrama de flujo que muestra una primera operación de intercalado de diagonal en el intercalador diagonal de la figura 7;
La Figura 9 es un diagrama de bloques de un intercalador de cambio circular en el codificador turbo de acuerdo con la segunda realización de la presente invención;
La Figura 10 es un diagrama de flujo que muestra una primera operación de intercalado de cambio circular en el intercalador de cambio circular de la figura.
La Figura 11 es un diagrama de flujo que muestra una segunda operación de intercalado de cambio circular en el intercalado mostrado en la figura
La Figura 12 es una gráfica que muestra características de un codificador turbo que se basa en intercalados de bloque y aleatorios versus aquellos del codificador turbo que se basan en el intercalado de cambio circular de acuerdo con una segunda realización de la presente invención, y
La Figura 13 es un diagrama de bloques de un codificador turbo de acuerdo con las realizaciones de la presente invención, relacionado para describir la punción y generación de bit de cola.
Descripción detallada de las realizaciones preferidas
Para claridad de descripción, las realizaciones de la presente invención se describe con referencia a un codificador turbo recursivo concatenado en paralelo, se contemplan otras configuraciones tal como el codificador turbo recursivo en serie. Las Figs. 5 y 6 son diagramas en bloque de, codificador turbo de acuerdo con las realizaciones de la presente invención. Los codificadores 410 y 420 son codificadores de componente para codificar un bit de información de entrada d_{k} en un símbolo de paridad Y_{k} similar a los codificadores de componente de las Figs. 1 y 2. Un intercalador diagonal 432 y un intercalador de cambio circular 434 son una característica de la presente invención y se denominaran un intercalador 430 a menos que se especifique lo contrario.
Con referencia a las Figs. 5 y 6, los bits de información d_{k} se cargan simultáneamente al primer codificador de componente 410 y el intercalador 430. El intercalador 430 modifica el orden en el que se disponen los bits de información y, preferiblemente, maximizan una distancia mínima Hamming de una secuencia de salida codificada (X_{k}, Y_{k}) que corresponde a los bits de información d_{k}. Una entrada de trama de datos al codificador de canal es variable en longitud debido a un bit CRC (Comprobación de Redundancia Cíclica) y otros bits de control que se agregan a los datos. Para fijar forzadamente la longitud de trama de datos, de deben agregar bit vacíos dependiendo de la diferencia entre el tamaño de la trama y el tamaño de intercalador. Pero, debido a que estos bits vacíos no tienen nada que hacer con la mejora del desempeño del sistema, es deseable reducirlos. Así, el intercalador 430 proporciona excelente desempeño y operación confiable independiente de una variación en los parámetros asociados con el tamaño de la trama.
La Fig. 7 es un diagrama de bloque del intercalador diagonal 432 y el intercalador de cambio circular 434 mostrados en las Figs. 5 y 6, respectivamente. Ambos intercaladores de cambio circular y diagonal 432 y 434 analizan sus tamaños de trama variable correspondientes y luego del recibo de los bits de información y desarrollan un intercalado optimo sobre los bit de información mediante los parámetros relacionados con el intercalador recibido desde un controlador de sistema de acuerdo con los resultados de análisis de tamaño de la trama. El intercalador diagonal 432 y el intercalador de cambio circular 434 se combinan en una descripción de las realizaciones de la presente invención, sin embargo, un codificador turbo puede emplear específicamente intercalado diagonal o intercalado de cambio circular, en forma separada. En adelante, el intercalador diagonal 432 y el intercalador de cambio circular 434 se denominan como el intercalador 430.
Con referencia a La Fig. 7, un registrador 511 almacena una señal de tamaño de trama y una señal de tipo de intercalador recibidos de un controlador de sistema (no mostrada). Una Tabla de intercalado diagonal 513 almacena los números M y N de columnas y filas en una matriz que permite las características de intercalado diagonal óptimo con respecto al tamaño de la trama durante el intercalado diagonal. Esto es, almacena valores MxN medidos que permite el intercalado diagonal óptimo de los bits de información con un tamaño de trama variable. La Tabla de intercalado diagonal 513 genera un valor MxN que corresponde a la señal de tamaño de la trama recibida del registrador 511. Un controlador de intercalado diagonal 517 recibe el valor MxN de la Tabla de intercalado diagonal 513 y genera una dirección de lectura para intercalar los bits de información en el método de intercalado designado.
La Tabla de intercalado de cambio circular 515 almacena parámetros de salto P y parámetros de etapa STEP que permiten características de intercalado de cambio circular con respecto al tamaño de la trama de los bits de información en el caso del intercalado de cambio circular. Los parámetros de salto P y los parámetros de etapa STEP se miden empíricamente. La Tabla de intercalado de cambio circular 515 genera los parámetros P y STEP que corresponden a la señal de tamaño de la trama recibida del registrador 511. Un controlador de intercalado de cambio circular 519 recibe los parámetros P y STEP de la Tabla de intercalado de cambio circular 515 y genera una dirección de lectura para intercalarlos bits de información en un método de intercalado de cambio circular designado. Un multiplexor 521 recibe una dirección de lectura del controlador de intercalado diagonal 517 y el controlador de intercalado de cambio circular 519 y selecciona uno de ellos de acuerdo con la señal de tipo de intercalador recibido desde el registrador 511. Una memoria 523 recibe los bits de información secuencialmente y genera los bits de información almacenados en la dirección de lectura recibida del multiplexor 521 en un orden intercalado. La memoria 523 se diseña para ser suficientemente larga para acomodar los bits de información con un tamaño de trama máximo variable.
Se incluyen para una estructura con solo el intercalador diagonal 432 en la Fig. 7, el registrador 511, la Tabla de intercalado diagonal 513, el controlador de intercalado diagonal 517, y la memoria 523. De otra parte, para una estructura con solo el intercalador de cambio circular 434 en la Fig. 7, se incluye el registrador 511, la Tabla de intercalado de cambio circular 515, el controlador de intercalado de cambio circular 519, y la memoria 523. En ambos casos no se necesita el multiplexor 521 y la señal de tipo intercalador si solo se emplea un tipo de intercalado.
La Tabla de intercalado diagonal 513 y la Tabla de intercalado de cambio circular 515 pueden estar compuestas de una memoria similar a ROM o RAM, o dispositivos lógicos en combinación. El controlador de intercalado diagonal 517 y el controlador de intercalado de cambio circular 519 se pueden realizar, utilizando dispositivos lógicos en combinación o un procesador de señal digital.
Las Figs. 8 y 9 son diagramas de flujo de intercalados diagonales de ejemplo, y las Figs. 10 y 11 son diagramas de flujo de intercalado de cambio circular de ejemplo. Un intercalador que se puede describir adelante, por vía de ejemplo, tiene un amortiguador de entrada.
Con referencia a la estructura del intercalador 430 mostrado en la Fig. 7, se describirán adelante primeras a terceras operaciones de intercalado diagonal.
La Fig. 8 es un diagrama de flujo de la primera operación de intercalado diagonal. En la Fig. 8, el primer intercalado diagonal incluye un proceso de reordenamiento de una secuencia de bit de entrada en una matriz MxN. Para el primer intercalado diagonal, luego del recibo de los bits de información d_{k}, se almacenan los bits de información en una dirección old_addr[k] para almacenar secuencialmente los bits de información en la memoria 523 (Fig. 7) y se determina el tamaño de trama de datos k, en la etapa 611. Luego, se determinan los parámetros de columnas y filas MxN de la trama de datos para intercalados diagonales en la etapa 613. Esto es, para implementar el intercalado diagonal, se designan valores MxN de la Tabla de intercalado diagonal sobre la base del tamaño de datos de trama de entrada k. Se puede almacenar una pluralidad de valores MxN en una Tabla de Valores a ser seleccionada de acuerdo con el tamaño de trama de entrada k. Alternativamente, se puede calcular un MxN óptimo de acuerdo con el tamaño de trama de entrada k. En la etapa 615, se determina si el máximo común divisor (GCD) de M y N es 1. Cuando el GCD de M y N es 1, las primeras direcciones de intercalado diagonal se operan como sigue, en la etapa 617.
14
Luego de la designación de las direcciones en un amortiguador de salida como en la ecuación (1), los bits de información de entrada almacenados en el amortiguador de entrada se intercalan y almacenan en el amortiguador de salida.
Si el GCD de M y N no es 1, es decir, [GCD (M, N) \neq 1] en la etapa 615, si se determina que el intercalado falla en la etapa 619 y el proceso se termina.
En el primer intercalado diagonal, asumiendo que una secuencia de datos con M = 6 y N = 5 almacenados en old_addr[k] es {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 25 26 27 28 29}, una primer secuencia de salida de intercalador diagonal almacenada en new_addr[k] del amortiguador de salida es {25 21 17 13 9 0 26 22 18 14 5 1 27 23 19 10 6 2 28 24 15 11 7 3 29 20 16 12 8 4}.
Los datos de entrada y la salida del primer intercalador diagonal se tabulan matrices de MxN como sigue.
TABLA 1
15
\vskip1.000000\baselineskip
Sin embargo, el anterior primer intercalado diagonal es viable solo cuando el GCD de M y N es 1. Cuando el GCD (M, N) \neq 1, por ejemplo, M = 6 y N =6, el primer intercalado diagonal es imposible y los mismos datos se sobrescriben como mostrados en Tabla 2.
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
TABLA 2
16
\vskip1.000000\baselineskip
Segundos y terceros intercalado diagonal incluye un proceso para permutar una secuencia de bit de información de entrada expresada en una matriz MxN y permitir que los datos de entrada se intercalen independientemente del GCD (M, N) = 1 o \neq 1.
La Fig. 9 es un diagrama de flujo de la segunda operación de intercalado diagonal. Con referencia a La Fig. 9, el segundo intercalado diagonal reordena los bit de entrada en una matriz MxN y se puede aplicar a ambos casos en donde el GCD (M, N) = 1 y en donde el GCD (M, N) \neq 1. En el segundo intercalado diagonal, luego de la entrada de los bits de información d_{k}, los bits de entrada de información se almacenan en la dirección old_addr [k] y se determina el tamaño de la trama k, en la etapa 631. Un parámetro de columna y fila (MxN) para el intercalado diagonal se determina en la etapa 633. En la etapa 635, las segundas direcciones de intercalado diagonal se operan mediante
\vskip1.000000\baselineskip
17
\vskip1.000000\baselineskip
en donde i y j incrementan la ubicación de la trama.
\vskip1.000000\baselineskip
Luego de la designación de las direcciones del amortiguador de salida como en la ecuación (2), los bits de información almacenados en el amortiguador de entrada se intercalan y almacenan en el amortiguador de salida.
La segunda salida intercalada diagonal corresponde a una secuencia de entrada con M = 6, N = 5, y el GCD (M, N) = 1 se muestran en Tabla 3.
TABLA 3
18
\vskip1.000000\baselineskip
Adicionalmente, una secuencia de entrada con M = 6, N = 6, y el GCD (M, N) \neq 1 se intercala como se muestra en
\vskip1.000000\baselineskip
TABLA 4
19
\vskip1.000000\baselineskip
En el tercer intercalado diagonal, el controlador de intercalado diagonal 517 se puede implementar mediante
20
Una secuencia de entrada se almacena en dirección de una memoria mapeada y luego se leen secuencialmente por columnas o filas por el intercalador diagonal 432. De otra forma, la secuencia de entrada se almacena secuencialmente en la memoria mediante columnas o filas y se leen desde un bit de dirección por bit mediante el intercalador diagonal 432.
El desintercalado se implementa en un orden inverso a aquel del intercalado de datos de entrada.
La Fig. 10 es un diagrama de flujo de un primer intercalador circular implementado por el intercalador de cambio circular 434. La primera operación de intercalado de cambio circular es un procedimiento de reordenamiento de datos en un intervalo predeterminado, considerando una secuencia de entrada como un círculo. La primera operación de intercalado de cambio circular puede intercalar una secuencia de entrada independiente de su longitud.
Con referencia a La Fig. 10, se almacenan bits de información de entrada d_{k} en la dirección old_addr [k] de un amortiguador de entrada, y se determina el tamaño de trama en la etapa 711. Se determinan parámetros P y STEP en la etapa 713. Aquí, P es un parámetro de intervalo de salto que determina el desempeño de un intercalador de cambio circular y se obtiene así empíricamente para alcanzar un efecto óptimo. Adicionalmente, STEP es un parámetro para datos de cambio desde una ubicación saltada por P a la izquierda o derecha y tiene un valor entero. Luego, se determina si el GCD de P y SIZE es 1 en la etapa 715. Cuando el GCD (P, SIZE) = 1, se computa la primer dirección de intercalado de cambio circular, en la etapa 717, mediante
21
en donde i es un parámetro representativo del tamaño de trama de los datos de entrada o menos que aquel del tamaño de los datos de entrada, que varía de cero a SIZE, es decir, el número de direcciones, SIZE es un tamaño de trama, p es un número natural que satisface el GCD (SIZE, p) = 1, y STEP es un entero e indicador de un punto de partida.
Por ejemplo, la primer salida intercalada de cambio circular, almacenada en new_addr[k] del amortiguador, que corresponde a una secuencia de entrada con SIZE = 30 almacenada en new_addr[k] del amortiguador de entrada, esto es, {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 25 26 27 28 29} es {0 11 22 3 14 25 6 17 28 9 20 1 12 23 4 15 26 7 18 29 10 21 2 13 24 5 16 27 8 19} si P = 11 y STEP = 0. La secuencia de entrada y la primer secuencia de salida intercalada de cambio circular se tabula como en
\vskip1.000000\baselineskip
TABLA 5
22
Sin embargo, con el GCD (SIZE, p) \neq 1 y p = 6, el primer intercalado de cambio circular no es viable debido a que los mismos datos se sobre escriben.
Asumiendo que SIZE = 30 para una secuencia de entrada almacenada en un dirección secuencial old_addr[k] de una memoria inicial, P = 11, y STEP = 0, una salida intercalada correspondiente que resulta del primer intercalado de cambio circular de La Fig. 10 se expresa en una matriz MxN como se muestra adelante.
\vskip1.000000\baselineskip
TABLA 6
23
Un segundo esquema de intercalado circular incluye permitir el intercalado del caso con el GCD (SIZE, p) \neq 1, como se muestra en la Fig. 11. El segundo intercalado de cambio circular un procedimiento de reordenamiento de datos en el que se ve una secuencia de entrada como una matriz de d x SIZE/d, las filas son primero intercalada de cambio circular, y las columnas se bloquean en forma intercalada.
La Fig. 11 es un diagrama de flujo del segundo intercalado de cambio circular que se puede aplicar independiente del GCD (SIZE, p) = 1 o \neq 1. En la segunda operación de intercalado de cambio circular, se almacenan bits de información de entrada en una dirección secuencial old_addr[k] de una memoria y se determina el tamaño, en la etapa 721. Aquí, SIZE es un parámetro indicador del tamaño de los datos de entrada. Los parámetros P y STEP para el intercalado de cambio circular se determina en la etapa 723. En la etapa 725, se alcanza la segunda dirección de intercalado de cambio circular mediante la ecuación (5):
24
en donde i y k están entre 0 a SIZE, j es un parámetro de dirección, que varía de 0 a d, P es un parámetro de salto para implementar intercalado de cambio circular, y STEP es un parámetro que determina un punto de partida al cambiar datos colocados en una ubicación establecida por P a la izquierda o derecha.
De la ecuación (5), (P x i + STEP) representa una operación de intercalado de cambio circular y j indica una operación de intercalado de bloque. SIZE es el tamaño de los datos de entrada, p es un número natural, y STEP es un entero.
Con SIZE = 30 y p = 11, se expresa una segunda salida de intercalado de cambio circular en una matriz M x N como
\vskip1.000000\baselineskip
TABLA 7
25
\vskip1.000000\baselineskip
Que es la misma que aquella de la Tabla 6. Aún, con el GCD (SIZE, p) \neq 1,
\vskip1.000000\baselineskip
TABLA 8
26
\vskip1.000000\baselineskip
Después que se almacena la secuencia de entrada en la dirección de una memoria mapeada, se leen los datos secuencialmente por columnas o filas mediante el intercalador de cambio circular. De otra forma, la secuencia de entrada se almacena secuencialmente en la memoria mediante columnas o filas y luego se lee desde las direcciones bit por bit.
Se puede implementar el desintercalado en un orden inverso a aquel de los datos de entrada de intercalado.
La Fig. 12 es una gráfica que muestra el desempeño del intercalador de cambio circular en un codificador turbo concatenado paralelo de acuerdo con la segunda realización de la presente invención. Los intercaladores aleatorio y de bloque utilizados ampliamente se compara con el intercalador de cambio circular en términos de BER bajo las condiciones de un código componente con K=3, una trama de entrada 104-bit, decodificaciones iterativa ocho, modulación BPSK (código de cambio Bi-fase), y AWGN (ruido blanco Gaussian aditivo). Como se anoto de la Fig. 12, Eb/No del intercalador de cambio circular es 3 dB, aunque aquel del intercalador de bloque es 3.4 dB, bajo un 10^{-5} BER. Así, se infiere que el intercalador de cambio circular es superior al intercalador de bloque en desempeño en aproximadamente 0.4 dB.
La Fig. 13 es un diagrama de bloque de un codificador turbo de acuerdo con las realizaciones de la presente invención.
Con referencia a La Fig. 13, el primer codificador de componente 410 codifica bits de información de entrada con K = 3, por ejemplo. El intercalador 430 intercala los bits de información en un método predeterminado para modificar por lo tanto el orden de los bits de información. El intercalador 430 se puede constituir como se muestra en la Fig. 7. En este caso, este se puede implementar puno de los primero a terceros intercalado diagonales y el primero a tercero de los intercalado de cambio circulares. El segundo codificador de componente 420 codifica la salida del intercalador 430 con K = 3, por ejemplo.
Un primer generador de bits de cola 450 incluye un primer interruptor 455 conectado a un puerto de entrada del primer codificador de componente 410, una salida oclusiva para desarrollar una operación oclusiva en la salidas de Memorias 412 y 413 del primer codificador de componente 410, y un generador de bit 453 para generar una señal para terminar tramas de acuerdo con la salida de la puerta exclusiva 451, y aplicar la señal al primer interruptor 455. En el primer generador de bits de cola 450, el primer interruptor 455 se conecta al primer codificador de componente 410 y luego de la terminación de una trama y se genera una señal determinación de trama. Un segundo generador de bits de cola 460 incluye un segundo interruptor 465 conectado a un puerto de entrada del segundo codificador de componente 420, una puerta o oclusiva 461 para desarrollar una operación o exclusiva en las salidas de Los dispositivos de memoria 422 y 423 del segundo codificador de componente 420, y un generador de bit 463 de acuerdo con la salida de la puerta o exclusiva 461, que genera una señal de terminación de trama, y aplicar la señal al segundo interruptor 465. En el segundo generador de bits de cola 460, se conecta el segundo interruptor 465 al segundo codificador de componente 420 luego de la terminación de una trama y se genera una señal de terminación de trama.
Un primer punzador 470 punza bits de información. Un segundo punzador 480 punza datos codificados recibidos de los primeros y segundos codificadores de componente 410 y 420. Los primeros y segundos punzadores 470 y 480 sirve para ajustar un índice de transmisión de datos. Un multiplexor 491 multiplexa la salidas de los generadores de bit 453 y 463. Un tercer interruptor 493 conmuta bits de cola recibidos del multiplexor 491 a un canal de transmisión luego de la terminación de una trama.
Los primeros y segundos generadores de bits de cola 450 y 460 generan bits de cola para terminar las operaciones de los primeros y segundos codificadores de componente 410 y 420, respectivamente. Los primeros y segundos punzadores 470 y 480 funcionan para ajustar un índice de transmisión a un nivel aceptable.
Con referencia a la Fig. 13, un código turbo tiene bits de cola para terminar los codificadores de componente 410 y 420. Aquí, debido a que los códigos de componente del código turbo son sistemáticos, las memorias 412 y 413, 422 y 423 de los codificadores de componente 410 y 420 no se inicializan aun con la entrada de ceros consecutivos como en un código convolucional no sistemático. Para fijar valores en una memoria más cercana a la entrada a ceros, los primeros y segundos codificadores de componente 410 y 420 ingresan la suma de los valores retroalimentados a las memorias mediante el uso de generadores de bits de cola. Por lo tanto, el codificador turbo requiere bits de cola tanto como memorias de cada codificador de componente. El primero y segundo interruptores 455 y 465 se conmutan luego de generación de los bits de cola. Luego, los bits de paridad generados de los bits de cola se aplican desde los primeros y segundos codificadores de componente 410 y 420 al segundo punzador 480, y los bits de cola generados de los generadores de bits de cola se conmutan mediante el tercer interruptor 493 a ser generados como bits de información X_{k}.
Es deseable fijar un índice de transmisión a una potencia de 2 con el fin de reducir la complejidad del hardware. Sin embargo, el índice de transmisión 384 kbps no puede ser una potencia de 2 utilizando un código turbo con un índice de código de 1/2. En este caso, el código turbo 1/2 se punza a un código turbo 3/8. Especialmente, en el caso de 144 kbps, el código turbo 1/2 se punza para ser un código turbo 9/16 código turbo. Las matrices de punción 9/16 se muestran como ejemplo en
\vskip1.000000\baselineskip
TABLA 9
28
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
TABLA 10
280
\vskip1.000000\baselineskip
En las Tablas 9 y 10, los bits de información son d_{k}, aplicados al primer punzador 470, y RSC1 son bits de paridad aplicados desde el primer codificador de componente 410 al segundo punzador 480. Aquí, la Tabla 9 muestra ejemplos punción de bits de paridad de salida de los codificadores de componente 410 y 420. En este caso, existen varios ceros consecutivos que corresponde a bits de paridad. Esto es, cuando los bits de paridad se punzan para ajustar un índice de transmisión, aparecen ceros sucesivamente como se indica por lo subrayado en la Tabla 9. Sin embargo, debido a dos memorias en cada uno de los codificadores de componente 410 y 420, se pueden generar serios errores a menos que se transmita consecutivamente dos o más bits de paridad. Por lo tanto, los bits de información se punzan como se muestra en la Tabla 10 en la presente invención. Tabla 10 muestra una matriz punción 9/16 diferente de aquella de la Tabla 9 en la que dos o más de los bits de paridad se transmite sucesivamente. Aun mas, el desempeño del código turbo se mejora cuando se incrementa el número de decodificaciones iterativa.
De acuerdo con la presente invención como se describió anteriormente, un código turbo, que es inaceptable para transmisión de voz y datos en un sistema de comunicación debido al retraso de tiempo, se puede encontrar aplicaciones en la transmisión de voz y datos con la introducción de un intercalador que tiene un tamaño reducido y que muestra excelente desempeño con respecto al código turbo en un codificador turbo. Adicionalmente, el intercalador que tiene excelente desempeño reduce el número de estado de un codificador de componente en el codificador turbo, reduciendo por lo tanto la complejidad de un decodificador, a su vez, también, de acuerdo con una realización de la presente invención como se describió anteriormente, se puede proporcionar una variedad de índices de codificación al punzar la información de entrada.
Aunque se ha descrito la presente invención en detalle con referencia a las realizaciones específicas, ellas son aplicaciones únicamente de ejemplo. Así, se debe entender claramente que se pueden hacer muchas variaciones por el experto en la técnica dentro del alcance de la presente invención como se establece por las reivindicaciones adjuntas.

Claims (12)

1. Un codificador turbo para codificar bits de información de entrada, que comprende:
un primer codificador de componente (410) para codificar bits de información de entrada en una trama para generar primeros bits de paridad;
un intercalador (430) para intercalar los bits de información de entrada, y un segundo codificador de componente (420) para codificar los bits de información de entrada intercalada para generar segundos bits de paridad,
caracterizados porque
un primer generador de bits de cola (450) separado del primer codificador de componente (410) para generar primeros bits de cola es igual a valores retroalimentados del primer codificador de componente (410) para terminar el primer codificador de componente, dicho primer generador de bits de cola comprende unos medios X-OR;
un segundo generador de bits de cola (460) separado del segundo codificador de componente (420) para generar segundos bits de cola que son iguales a los valores retroalimentados de los segundos codificador de componente (420) para terminar el segundo codificador de componentes, dicho segundo generador de bits de cola comprende unos medios X-OR;
un primer interruptor (455) para conmutar los valores retroalimentados del primer codificador de componente (410) al primer codificador de componentes como los primeros bits de cola en el extremo de la trama, y
un segundo interruptor (465) para conmutar los valores de retroalimentados del segundo codificador de componente (420) al segundo codificador de componentes como el segundo bits de cola en el extremo de la trama,
en donde cada uno de los codificadores de componentes (410, 420) requiere bits de cola tanto como memorias del codificador de componente que están dispuestas para codificar bits de información de entrada de tamaños de trama variables, en donde los codificadores de componente (410, 420) generan un bit de información y dos bits de paridad en respuesta a proporcionar cada uno de los bits de información al codificador de componente y generar dos bits de de cola y dos los bits de paridad en respuesta a proporcionar cada uno de los primeros y segundos bits de cola al codificador de componente (410, 420).
\vskip1.000000\baselineskip
2. El código turbo de acuerdo con la reivindicación 1, que comprende adicionalmente:
Un punzador (480) para punzar una de los primeros bits de paridad o los segundos bits de paridad a la vez.
\vskip1.000000\baselineskip
3. El código turbo de acuerdo con la reivindicación 1, que comprende adicionalmente: un multiplexor (491) para multiplexar los primeros bits de cola y los segundos bits de cola.
4. El código turbo de acuerdo con la reivindicación 1, en donde el primer codificador de componente (410) codifica los bits de información de entrada o los primeros bits de cola para generar los primeros bits de paridad, y el segundo codificador de componente (420) codifica los bits de información de entrada intercalados o los segundos bits de cola para generar los segundos bits de paridad.
5. El código turbo de acuerdo con la reivindicación 4, en donde los bits de cola se cargan en cada codificador de componente (410, 420) después que se han codificado todos los bits de información de entrada.
6. Un método de codificación de canal para uso en un codificador de canal que tiene un primer codificador de componente (410) y un segundo codificador de componentes (420), caracterizados porque
Comprende las etapas de:
recibir bits de información de entrada;
generar primeros bits de paridad de los bit de información de entrada y primeros valores retroalimentación mediante el primer codificador de componente (410);
intercalar los bits de información de entrada adaptativamente de acuerdo con el número de bits de información de entrada;
generar segundos bits de paridad de los bits de información de entrada intercalados y segundos valores retroalimentación mediante el segundo codificador de componentes (420);
generar mediante un primer generador de bits de cola (450) separado del primer codificador de componente (410) y que comprende unos medios X-OR (451) primeros bits de cola y mediante un segundo generador de bits de cola (460) separado del segundo codificador de componentes (420) y que comprende unos medios X-OR (461) segundos bits de cola que son iguales al primeros y segundos valores de retroalimentación,
respectivamente para terminar las memorias en los primeros y segundos codificadores de componente (410, 420) y alimentar los bits de cola en el primero y segundo codificador de componente, y
punzar la salidas de los codificadores de componente (410, 420) para ajustar un índice de transmisión, en donde cada uno de los codificadores de componente (410, 420) requiere bits de cola tanto como memorias del codificador de componente que están dispuestas para codificar los bits de información de entrada de tamaños de trama variables, en donde un bit de información y dos bits de paridad se generan en respuesta a proporcional cada uno de los bits de información al codificador de componente y dos bits de cola y dos bits de paridad se generan en respuesta a proporcionar cada uno de los primeros y segundos bits de cola a los codificadores de componente (410, 420).
\vskip1.000000\baselineskip
7. El método de codificación de canal de acuerdo con la reivindicación 6, en donde los bits de cola se cargan a cada codificador de componente (410, 420) después que se han codificado todos los bit de información de entrada.
8. El método de codificación de canal de acuerdo con la reivindicación 6, que comprende la etapa adicional de:
multiplexar los primeros bits de cola y los segundos bits de cola.
\vskip1.000000\baselineskip
9. El codificador turbo de acuerdo con la reivindicación 1, que comprende adicionalmente:
Una entrada para recibir bits de tamaño variable de bits de información de entrada y una salida para generar los bits de información;
un punzador (480) para punzar una parte de los primeros y segundos los bits de paridad para ajustar el índice de transmisión de datos, en donde se genera un número de bits de cola idénticos al número de memorias de retraso en el índice de transmisión de datos, en donde se genera un número de bits de cola idéntico al número de memorias de retraso para terminar el codificador de componentes (410, 420) y los bits de cola se transmiten en la salida de los bits de información;
en donde el primer codificador de componente (420) tiene un número predeterminado de memorias de retraso para codificar los bits de información de entrada recibidos desde la entrada y generar los primeros los bits de paridad y
el intercalador (430) intercala los bits de información de entrada recibidos de la entrada y el segundo codificador de componentes (420) tiene un número predeterminado de memorias de retraso para codificar los bits de información intercalada y generar segundos bits de paridad.
\vskip1.000000\baselineskip
10. El dispositivo de codificación de canal de acuerdo con la reivindicación 9, en donde la información de entrada y los bits de paridad se punzan en forma separada.
11. El dispositivo de codificación de canal de acuerdo con la reivindicación 9, en donde no toda la información de entrada, los primeros bits de paridad, y los segundos bits de paridad se punzan.
12. El dispositivo de codificación de canal de acuerdo con la reivindicación 9, en donde no todos los primero bits de paridad y los segundos bits de paridad se punzan.
ES05016017T 1997-07-30 1998-07-30 Metodo y dispositivo para codificacion de canal adaptativo. Expired - Lifetime ES2344299T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR97-036265 1997-07-30
KR19970036265 1997-07-30
KR1019970060101A KR100454952B1 (ko) 1997-07-30 1997-11-10 적응형채널부호화방법및장치
KR97-060101 1997-11-10

Publications (1)

Publication Number Publication Date
ES2344299T3 true ES2344299T3 (es) 2010-08-24

Family

ID=26632977

Family Applications (2)

Application Number Title Priority Date Filing Date
ES05016017T Expired - Lifetime ES2344299T3 (es) 1997-07-30 1998-07-30 Metodo y dispositivo para codificacion de canal adaptativo.
ES98935383T Expired - Lifetime ES2290990T3 (es) 1997-07-30 1998-07-30 Metodo y dispositivo de codificacion de canal adaptiva.

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES98935383T Expired - Lifetime ES2290990T3 (es) 1997-07-30 1998-07-30 Metodo y dispositivo de codificacion de canal adaptiva.

Country Status (9)

Country Link
EP (2) EP1601109B1 (es)
JP (2) JP3492632B2 (es)
CN (2) CN1150680C (es)
BR (1) BR9811299A (es)
CA (1) CA2295791C (es)
DE (2) DE69841631D1 (es)
ES (2) ES2344299T3 (es)
RU (1) RU2193276C2 (es)
WO (1) WO1999007076A2 (es)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536624B2 (en) 2002-01-03 2009-05-19 The Directv Group, Inc. Sets of rate-compatible universal turbo codes nearly optimized over various rates and interleaver sizes
US6430722B1 (en) 1998-01-23 2002-08-06 Hughes Electronics Corporation Forward error correction scheme for data channels using universal turbo codes
KR100557177B1 (ko) * 1998-04-04 2006-07-21 삼성전자주식회사 적응 채널 부호/복호화 방법 및 그 부호/복호 장치
EP1046236B1 (en) 1998-08-17 2016-02-24 Dtvg Licensing, Inc Turbo code interleaver with near optimal performance
EP1455458B8 (en) 1998-08-27 2011-03-02 The DirecTV Group, Inc. Method for a general turbo code trellis termination
EP1919087A1 (en) 1999-03-01 2008-05-07 Fujitsu Limited Turbo decoder
FR2790621B1 (fr) * 1999-03-05 2001-12-21 Canon Kk Dispositif et procede d'entrelacement pour turbocodage et turbodecodage
CA2268853C (en) * 1999-04-13 2011-08-02 Wen Tong Rate matching and channel interleaving for a communications system
WO2000074249A1 (en) * 1999-05-28 2000-12-07 Lucent Technologies Inc. Turbo code termination
AU2003204597B2 (en) * 1999-07-06 2005-01-20 Samsung Electronics Co., Ltd. Rate matching device and method for a data communication system
IL141800A0 (en) * 1999-07-06 2002-03-10 Samsung Electronics Co Ltd Rate matching device and method for a data communication system
DE19934646C2 (de) * 1999-07-16 2001-09-13 Univ Dresden Tech Verfahren und Vorrichtung zur iterativen Decodierung von verketteten Codes
FR2796780B1 (fr) * 1999-07-21 2003-09-19 Groupe Ecoles Telecomm Procede et dispositif de codage a au moins deux codages en parallele et permutation amelioree, et procede et dispositif de decodage correspondants
DE19935785A1 (de) 1999-07-29 2001-02-08 Siemens Ag Verfahren und Einrichtung zur Erzeugung eines ratenkompatiblen Codes
FI108822B (fi) * 2000-02-14 2002-03-28 Nokia Corp Lomittelumenetelmä ja -järjestelmä
DE10008064B4 (de) * 2000-02-22 2009-07-02 Siemens Ag Verfahren zum Anpassen der einem Turbo-Codierer zuzuführenden Datenblöcke und entsprechende Kommunikationsvorrichtung
US6289000B1 (en) * 2000-05-19 2001-09-11 Intellon Corporation Frame control encoder/decoder for robust OFDM frame transmissions
JP2002076925A (ja) * 2000-08-31 2002-03-15 Sony Corp 軟出力復号装置及び軟出力復号方法、並びに、復号装置及び復号方法
JP2002076915A (ja) * 2000-08-31 2002-03-15 Sony Corp インターリーブ装置及びインターリーブ方法、並びに、復号装置及び復号方法
DE10048872A1 (de) 2000-10-02 2002-04-25 Infineon Technologies Ag Abschnittsweise Entschachtelung
US6871270B2 (en) * 2001-12-03 2005-03-22 Samsung Electronics Co., Ltd. Device and method for minimizing puncturing-caused output delay
US6973579B2 (en) 2002-05-07 2005-12-06 Interdigital Technology Corporation Generation of user equipment identification specific scrambling code for the high speed shared control channel
FI20021222A (fi) 2002-06-20 2003-12-21 Nokia Corp Informaatiobittien limitys
CN1333598C (zh) * 2004-03-05 2007-08-22 上海交通大学 一种用于数字电视地面传输的比特交织方法
CN1333599C (zh) * 2004-03-29 2007-08-22 上海交通大学 一种用于数字电视地面传输的比特交织方法
JP4249750B2 (ja) 2005-01-11 2009-04-08 三星電子株式会社 無線通信システムにおける高速フィードバック情報の伝送装置及び方法
JP4848359B2 (ja) * 2005-02-03 2011-12-28 パナソニック株式会社 並列インターリーバ、並列デインターリーバ及びインターリーブ方法
KR100729258B1 (ko) * 2005-12-07 2007-06-18 엘지전자 주식회사 확장된 링크 적응화 기법을 제공하는 이동 통신 단말기 및그 방법
JP4436315B2 (ja) * 2005-12-26 2010-03-24 京セラ株式会社 畳み込み符号化器、通信装置、及び畳み込み符号化方法
WO2007134542A1 (fr) * 2006-05-23 2007-11-29 Huawei Technologies Co., Ltd. Procédé et appareil d'envoi et de réception de signaux
US7925956B2 (en) * 2006-10-03 2011-04-12 Motorola Mobility, Inc. Method and apparatus for encoding and decoding data
US8194750B2 (en) * 2006-10-16 2012-06-05 Samsung Electronics Co., Ltd. System and method for digital communication having a circulant bit interleaver for equal error protection (EEP) and unequal error protection (UEP)
CN101584121B (zh) * 2007-01-16 2014-10-29 皇家飞利浦电子股份有限公司 用于对数据比特或码元进行交织的系统、装置和方法
CN101075812B (zh) * 2007-06-08 2011-01-05 中国科学技术大学 一种并行级联结构的系统形式低密度码的构造方法
CN101350626B (zh) * 2007-07-20 2012-02-15 电信科学技术研究院 一种Turbo码编码装置及方法
JP2009077371A (ja) * 2007-08-30 2009-04-09 Hitachi Communication Technologies Ltd インタリーブ方法、送信機、無線機、および無線通信システム。
ES2373240T3 (es) 2007-12-20 2012-02-01 Panasonic Corporation Señalización de canal de control usando un campo de señalización común para el formato de transporte y la versión de redundancia.
CN102089985B (zh) 2008-07-13 2014-07-09 Lg电子株式会社 在移动通信系统中使用CTC(卷积的Turbo码)编码器发送数据的装置和方法
CN101753261B (zh) * 2008-12-01 2012-11-21 电信科学技术研究院 一种编码器、译码器及编码、译码方法
CN101753151B (zh) * 2008-12-02 2014-02-05 电信科学技术研究院 一种数据处理装置及方法
CN101753153B (zh) * 2008-12-04 2014-02-05 电信科学技术研究院 一种Turbo码编码器、译码器及编码、译码方法
CN101753155B (zh) * 2008-12-22 2014-12-03 电信科学技术研究院 一种数据处理装置及其方法
CN105100862B (zh) * 2014-04-18 2018-04-24 阿里巴巴集团控股有限公司 网格移动的显示处理方法及其系统
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) 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
US9917675B2 (en) 2016-06-01 2018-03-13 Qualcomm Incorporated Enhanced polar code constructions by strategic placement of CRC bits
US10313057B2 (en) 2016-06-01 2019-06-04 Qualcomm Incorporated Error detection in wireless communications using sectional redundancy check information
US10469104B2 (en) 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
AU2016416176B2 (en) 2016-07-27 2021-11-25 Qualcomm Incorporated Design of hybrid automatic repeat request (HARQ) feedback bits for polar codes
KR102502529B1 (ko) * 2017-03-23 2023-02-21 퀄컴 인코포레이티드 폴라 코딩을 위한 패리티 비트 채널 할당
US10312939B2 (en) 2017-06-10 2019-06-04 Qualcomm Incorporated Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code
JP6912648B2 (ja) 2017-07-07 2021-08-04 クアルコム,インコーポレイテッド 低密度パリティ検査コードのベースグラフ選択を適用する通信技法
CN110098891B (zh) * 2018-01-30 2021-09-07 华为技术有限公司 交织方法和交织装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4901319A (en) * 1988-03-18 1990-02-13 General Electric Company Transmission system with adaptive interleaving
GB2296165B (en) * 1994-12-15 1999-12-29 Int Mobile Satellite Org Multiplex communication
US5721745A (en) * 1996-04-19 1998-02-24 General Electric Company Parallel concatenated tail-biting convolutional code and decoder therefor

Also Published As

Publication number Publication date
DE69838451T2 (de) 2008-01-10
EP0997031A2 (en) 2000-05-03
JP3492632B2 (ja) 2004-02-03
CN1264509A (zh) 2000-08-23
CN1492589A (zh) 2004-04-28
ES2290990T3 (es) 2008-02-16
DE69838451D1 (de) 2007-10-31
DE69841631D1 (de) 2010-06-02
EP1601109A2 (en) 2005-11-30
BR9811299A (pt) 2000-12-05
JP3730238B2 (ja) 2005-12-21
EP1601109A3 (en) 2007-10-03
EP0997031B1 (en) 2007-09-19
WO1999007076A2 (en) 1999-02-11
WO1999007076A3 (en) 1999-09-16
CN1256812C (zh) 2006-05-17
JP2001512914A (ja) 2001-08-28
EP1601109B1 (en) 2010-04-21
JP2004040818A (ja) 2004-02-05
RU2193276C2 (ru) 2002-11-20
CA2295791A1 (en) 1999-02-11
CN1150680C (zh) 2004-05-19
CA2295791C (en) 2006-06-13

Similar Documents

Publication Publication Date Title
ES2344299T3 (es) Metodo y dispositivo para codificacion de canal adaptativo.
US6289486B1 (en) Adaptive channel encoding method and device
US8520496B2 (en) Method and apparatus for rate matching within a communication system
CA2363410C (en) Highly parallel map decoder
CA2318803C (en) Encoder/decoder with serial concatenated structure in communication system
CA2337161C (en) Interleaving apparatus and method for use in serial concatenated convolutional code encoder in a mobile communication system
US6859906B2 (en) System and method employing a modular decoder for decoding turbo and turbo-like codes in a communications network
US7210075B2 (en) Prunable S-random block interleaver method and corresponding interleaver
KR100454952B1 (ko) 적응형채널부호화방법및장치
EP1926215B1 (en) Parallel concatenated zigzag codes with UMTS turbo interleavers
KR19990017546A (ko) 터보부호기의 복호기