ES2549773T3 - Método de decodificación de canales y decodificador convolucional en bucle - Google Patents
Método de decodificación de canales y decodificador convolucional en bucle Download PDFInfo
- Publication number
- ES2549773T3 ES2549773T3 ES11816024.1T ES11816024T ES2549773T3 ES 2549773 T3 ES2549773 T3 ES 2549773T3 ES 11816024 T ES11816024 T ES 11816024T ES 2549773 T3 ES2549773 T3 ES 2549773T3
- Authority
- ES
- Spain
- Prior art keywords
- comparison
- states
- selection
- addition
- treatment
- 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
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0036—Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the receiver
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/413—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors tail biting Viterbi decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6522—Intended application, e.g. transmission or communication standard
- H03M13/6525—3GPP LTE including E-UTRA
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4161—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing path management
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
Un método de decodificación de canales para decodificar un código convolucional en bucle con longitud de restricción N+1, caracterizado por que comprende: tras efectuar, mediante un decodificador convolucional en bucle, un tratamiento de adición-comparación-selección de acuerdo con los datos de entrada para ser decodificados, continuar realizando, mediante el decodificador convolucional en bucle, N etapas adicionales del tratamiento de adición-comparación-selección de datos de entrada que representan 0 (S402), en el que el hecho de que los datos de entrada de las N etapas adicionales del tratamiento de adición-comparación-selección sean 0 resulta en que los valores métricos de ruta representan 0 en las N etapas adicionales del tratamiento de adición-comparación-selección; efectuar un retroceso, mediante el decodificador convolucional en bucle, desde uno cualquiera de los 2N estados del decodificador convolucional en bucle para obtener un resultado de decodificación intermedio, después de que el tratamiento de adición-comparación-selección ha terminado (S404); y emitir, mediante el decodificador convolucional en bucle, bits excepto los N últimos bits del resultado de la decodificación intermedio como resultado decodificado de los datos de entrada para ser decodificados (S406).
Description
5
10
15
20
25
30
35
40
45
50
E11816024
08-10-2015
DESCRIPCIÓN
Método de decodificación de canales y decodificador convolucional en bucle
Campo de la descripción
La descripción se refiere al campo de la comunicación y, en particular, a un método de decodificación de canales y a un decodificador convolucional en bucle
Antecedentes de la invención
En el sistema de evolución a largo plazo (LTE – Long Term Evolution, en inglés) de la comunicación por radio de tercera generación, la codificación convolucional se aplica ampliamente a los canales tales como el canal de difusión (BCH-Broadcast CHannel, en inglés), el canal de información de control del enlace descendente (DCI – Downlink Control Information, en inglés) y el canal de información de control del enlace ascendente (UCI – Uplink Control Information, en inglés). Para mejorar la velocidad de codificación y el rendimiento, se adopta la codificación convolucional en bucle para efectuar codificación de canal en el sistema LTE.
La estructura de un codificador de la codificación convolucional en bucle adoptado en el sistema LTE se muestra en la Fig. 1. La velocidad de codificación de la codificación convolucional en bucle es 1/3. El valor inicial del registro de estado del codificador se configura como el valor correspondiente de los últimos 6 bits de información del flujo de datos de entrada, para hacer que el estado inicial del registro de desfase sea el mismo que el estado final del registro de desfase.
Actualmente, el método de decodificación del código convolucional en bucle normalmente es el algoritmo de Viterbi, que principalmente comprende las siguientes etapas:
etapa 1: calcular el valor métrico de ruta de acuerdo con los datos de entrada para ser decodificados, y acumular el valor métrico de ruta al valor métrico del estado original para obtener un nuevo valor métrico de estado.
etapa 2: guardar 64 valores métricos máximos de estado mediante el tratamiento de añadir – comparar – seleccionar, y guardar la ruta de selección, donde el diagrama de relación de la ruta del tratamiento de añadir – comparar – seleccionar se muestra en la Fig. 3.
etapa 3: debido al bucle, la etapa 1 y la etapa 2 pueden repetirse hasta que el rendimiento de decodificación cumple el requisito, como se muestra en la Fig. 2.
etapa 4: retroceso. El estado de la convolución en bucle no efectúa un retorno a cero, de manera que el retroceso puede iniciarse bien desde cualquier punto de estado, o desde el punto de máximo valor métrico de estado.
Debido a que la corrección de los datos en el punto de retroceso no puede ser asegurada cuando se efectúa un retroceso desde cualquier punto de estado, se requiere una cierta profundidad de retroceso para asegurar que la ruta de retroceso está estabilizada en la ruta final (la profundidad de retroceso es habitualmente de 5 a 10 veces la longitud de restricción). Así, para conseguir el mismo rendimiento, el retroceso desde cualquier punto de inicio necesita más tiempo de cálculo y más recurso de ruta de almacenamiento que el retroceso desde el punto de máximo valor métrico de estado.
La ventaja del retroceso desde el punto de máximo valor métrico de estado es que: el valor métrico máximo cumple el principio fundamental de la decodificación de Viterbi: el principio de máxima probabilidad. Por ello, el punto de máximo valor métrico de estado es el punto de inicio de la ruta final. La confianza de los datos recuperados mediante retroceso desde este punto es la mayor, y los datos pueden ser emitidos directamente como datos decodificados sin necesidad de calcular los datos con una mayor profundidad de retroceso o de ahorrar el recurso de almacenamiento de esta ruta. La desventaja de efectuar un retroceso desde el punto de máximo valor métrico de estado es que: es necesario cierto recurso para buscar el punto de máximo valor métrico de estado, y el valor máximo es seleccionado de los 64 valores métricos de estado.
Buscar el valor máximo en 64 valores métricos de estado es un problema de búsqueda. Actualmente, para implementación mediante hardware, existen habitualmente dos métodos, a saber, la comparación en serie y la comparación en paralelo. La comparación en serie necesita solo un comparador, pero necesita comparar 64 veces sucesivamente. La comparación en serie necesita más tiempo de comparación, y por ello desperdicia tiempo. Si la comparación en paralelo desea obtener el valor máximo comparando solo con una etapa, necesita 63 comparadores, necesitando por ello más recursos de comparación.
El documento WO 2008/075125, WONJIN SUNG ET AL “Performance of a fixed delay decoding scheme for tail biting convolutional codes”, y el documento US 2008/250303 proporcionan soluciones técnicas respectivas; no obstante, el problema anterior aún permanece sin resolver.
5
10
15
20
25
30
35
40
45
50
55
E11816024
08-10-2015
Compendio de la invención
De acuerdo con un aspecto, la presente invención proporciona un método de decodificación de canales de acuerdo con la reivindicación 1. De acuerdo con otro aspecto, la presente invención proporciona un decodificador convolucional en bucle de acuerdo con la reivindicación 5.
La descripción proporciona un método de decodificación de canales y un decodificador convolucional en bucle, para al menos resolver los problemas de que la comparación en serie necesita más tiempo de comparación y que la comparación en paralelo necesita más recurso de comparación.
En un aspecto de la descripción, se proporciona un método de decodificación de canales, que comprende las siguientes etapas: efectuar, mediante un decodificador convolucional en bucle, el tratamiento de añadir – comparar – seleccionar sobre los valores métricos de 2N estados de acuerdo con los datos de entrada para ser decodificados, e introducir N ceros después de los datos para ser decodificados para obtener valores métricos acumulativos finales de los 2N estados, y almacenar, mediante el decodificador convolucional en bucle, un resultado de la selección del tratamiento de adición-comparación-selección, en el que N es una longitud de restricción de la codificación convolucional en bucle; efectuar un retroceso, mediante el decodificador convolucional en bucle, desde un estado de los 2N estados de acuerdo con el resultado de selección para obtener un resultado de codificación intermedio, después de que el tratamiento de adición-comparación-selección ha finalizado; y emitir, mediante el decodificador convolucional en bucle, bits, con la excepción de los últimos N bits del resultado de la decodificación intermedio, como resultado decodificado de los datos para ser decodificados.
La obtención mediante el decodificador convolucional en bucle de los valores métricos acumulativos finales de los 2N estados comprende las siguientes etapas: efectuar, mediante el decodificador convolucional en bucle, el tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de acuerdo con los datos de entrada para ser decodificados, para obtener los valores métricos acumulativos intermedios de los 2N estados; y tomando los valores métricos acumulativos intermedios de los 2N estados como valores iniciales, continuar realizando N veces el tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de acuerdo con los N ceros introducidos después de los datos para ser decodificados, para obtener los valores métricos acumulativos finales de los 2N estados.
Una manera de efectuar el tratamiento de adición-comparación-selección comprende: en el proceso en el que los 2N estados transitan desde un momento previo a un momento actual, acumular respectivamente un valor métrico recién añadido de esta transición a dos estados opcionales correspondientes a cada estado antes de esta transición, donde el valor métrico recién añadido es una distancia euclidiana calculada utilizando los datos de entrada; y seleccionar un valor mayor de acumulación como nuevo valor métrico acumulativo de un estado correspondiente después de esta transición.
El inicio del retroceso del decodificador convolucional en bucle desde un estado de los 2N estados de acuerdo con el resultado de la selección para obtener el resultado de la decodificación intermedio comprende las siguientes etapas: tomando un estado de los 2N estados como punto de inicio del retroceso, buscar, mediante el decodificador convolucional en bucle, un estado padre de acuerdo con el resultado de la selección hasta que se encuentran todos los estados históricos; y componer, mediante el decodificador convolucional en bucle los bits menores emitidos por todos los estados históricos en el resultado de decodificación intermedio, según una dirección negativa del retroceso.
Un estado de los 2N estados es el estado cero.
En otro aspecto de la descripción, se proporciona un decodificador convolucional en bucle que comprende un módulo de adición-comparación-selección, configurado para efectuar un tratamiento de adición-comparaciónselección sobre los valores métricos de 2N estados de acuerdo con los datos para ser decodificados, que son introducidos en el decodificador convolucional en bucle y la introducción de N ceros tras los datos para ser decodificados para obtener valores métricos acumulativos finales de los 2N estados, y almacenar un resultado de la selección del tratamiento de adición-comparación-selección, en el que N es una longitud de restricción de la codificación convolucional en bucle; un módulo de retroceso, configurado para efectuar un retroceso desde un estado de los 2N estados de acuerdo con el resultado de la selección para obtener un resultado de decodificación intermedio después de que el módulo de adición-comparación-selección termina el tratamiento de adicióncomparación-selección; y un módulo de emisión, configurado para emitir bits, con las excepción de los N bits últimos del resultado de la decodificación intermedio como resultado decodificado de los datos para ser decodificados.
El módulo de adición-comparación-selección comprende: un primer módulo de tratamiento, configurado para efectuar el tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de acuerdo con los datos para ser decodificados que son introducidos en el decodificador convolucional en bucle para obtener valores métricos acumulativos intermedios de los 2N estados; y un segundo módulo de tratamiento, configurado para, tomando los valores métricos acumulativos intermedios de los 2N estados como valores iniciales, continuar realizando N veces el tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de
10
15
20
25
30
35
40
45
50
E11816024
08-10-2015
acuerdo con los N ceros introducidos tras los datos para ser decodificados, para obtener los valores métricos acumulativos finales de los 2N estados.
Una manera de efectuar el tratamiento de adición-comparación-selección mediante el módulo de adicióncomparación-selección comprende: en el proceso de que los 2N estados transitan desde un momento previo a un momento actual, acumular respectivamente un valor métrico recién añadido de esta transición de dos estados opcionales correspondientes a cada estado antes de esta transición, en el que el valor métrico recién añadido es una distancia euclidiana calculada utilizando los datos de entrada; y seleccionar un valor mayor de acumulación como un nuevo valor métrico acumulativo de un estado correspondiente después de esta transición.
El módulo de retroceso comprende: un módulo de búsqueda, configurado para, tomando un estado de los 2N estados como punto de inicio del retroceso, buscar un estado padre de acuerdo con el resultado de la selección hasta que se encuentran todos los estados históricos; y un módulo de composición, configurado para componer la salida de los bits más bajos mediante todos los estados históricos en el resultado de decodificación intermedio, de acuerdo con una dirección negativa del retroceso.
Un estado de los 2N estados es el estado cero.
En la descripción, cuando el proceso de decodificación tradicional se ha completado, adicionalmente se introducen N ceros, es decir, es necesario efectuar N etapas de cálculo adicionales cuyos datos de entrada representan 0. Finalmente, todos los valores métricos acumulativos de los 2N estados son iguales a los valores máximos de los valores métricos acumulativos de los 2N estados cuando el proceso de decodificación tradicional se ha completado. Así, no hay necesidad de buscar especialmente el valor métrico máximo de estado. Durante el retroceso, el punto de valor métrico máximo de estado puede ser alcanzado mediante retroceso desde cualquier estado solo mediante N etapas. Entonces, los datos decodificados emitidos pueden obtenerse mediante un retroceso normal desde el punto de valor métrico máximo de estado. Por ello, esta solución ahorra el recurso de búsqueda del valor métrico máximo de estado, es decir, ahorra el tiempo de comparación y el recurso de comparación.
Breve descripción de los dibujos
Los dibujos descritos en esta memoria se utilizan para proporcionar una comprensión más profunda de la descripción, y constituyen una parte de la solicitud. Las realizaciones esquemáticas de la descripción y la descripción de las mismas son utilizadas para ilustrar la descripción y no pretenden formar un límite impropio para la descripción. En los dibujos:
la Fig. 1 muestra un diagrama de estructura de un decodificador convolucional en bucle de acuerdo con tecnologías relacionadas;
la Fig. 2 muestra un diagrama de trellis de la codificación convolucional en bucle de acuerdo con tecnologías relacionadas;
la Fig. 3 muestra un diagrama de relación de ruta del tratamiento de adición-comparación-selección de acuerdo con tecnologías relacionadas;
la Fig. 4 muestra un diagrama de un método de decodificación de canales de acuerdo con una realización de la descripción;
la Fig. 5 es un diagrama de estructura de un decodificador convolucional en bucle de acuerdo con una realización de la descripción; y
la Fig. 6 muestra un diagrama de estructura de un decodificador convolucional en bucle de acuerdo con una realización preferida de la descripción.
Descripción detallada de las realizaciones
La descripción se describe en esta memoria en detalle con referencia a los dibujos y realizaciones. Debe observarse que las realizaciones y características de las realizaciones de la solicitud pueden ser combinadas entre sí si no entran en conflicto.
La Fig. 4 muestra un diagrama de un método de decodificación de canales de acuerdo con una realización de la descripción. El método de decodificación de canales comprende las etapas siguientes.
Etapa S402: el decodificador convolucional en bucle realiza el tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de acuerdo con los datos de entrada para ser decodificados y los N ceros de entrada tras los datos para obtener los valores métricos acumulativos finales de los 2N estados, y almacena el resultado de la selección del tratamiento de adición-comparación-selección , en el que N es la longitud de restricción de la codificación convolucional en bucle.
10
15
20
25
30
35
40
45
50
55
E11816024
08-10-2015
Etapa S404: el decodificador convolucional en bucle realiza un retroceso desde un estado de los 2N estados de acuerdo con el resultado de la selección para obtener el resultado de decodificación intermedio después de que el tratamiento de adición-comparación-selección ha finalizado.
Etapa S406: el decodificador convolucional en bucle emite los bits, con la excepción de los últimos N bits del resultado intermedio de la decodificación como resultado decodificado de los datos para ser decodificados.
Sobre la base de la total comprensión de la esencia del retroceso del método de decodificación de Viterbi, la realización adopta la idea del retorno a cero. Mediante la realización, cuando el proceso de decodificación tradicional se ha completado, adicionalmente se introducen N ceros, es decir, es necesario efectuar N etapas adicionales de cálculo, cuyos datos de entrada representan 0. Finalmente, todos los valores métricos acumulativos de los 2N estados (es decir, los valores métricos acumulativos finales mencionados anteriormente) son iguales a los valores máximos de los valores métricos acumulativos de los 2N estados (es decir, el valor métrico máximo de estado) cuando el tratamiento de decodificación tradicional se ha completado. Así, no es necesario buscar especialmente el máximo valor métrico de estado. Durante el retroceso, el punto de valor métrico máximo de estado puede alcanzarse mediante retroceso desde cualquier estado solo mediante N etapas. A continuación, los datos decodificados emitidos pueden ser obtenidos mediante retroceso normal desde el punto de máximo valor métrico de estado. Por ello, esta realización ahorra el recurso de búsqueda del máximo valor métrico de estado, es decir, ahorra el tiempo de comparación y el recurso de comparación.
Debido a que el método anterior introduce adicionalmente N ceros para forzar el retorno a cero del estado del decodificador convolucional en bucle, el método puede denominarse también método de retorno a cero forzado.
Obviamente, en el método anterior, pueden introducirse M (M es mayor o igual que N) ceros tras los datos para ser decodificados. A continuación, todos los valores métricos acumulativos finales de los 2N estados pueden ser también iguales al valor máximo de los valores métricos acumulativos de los 2N estados cuando el proceso de decodificación tradicional se ha completado. Tras el subsiguiente retroceso, en la etapa S406, los bits, con la excepción de los últimos M bits del resultado de decodificación intermedio obtenido son emitidos como resultado decodificado de los datos para ser decodificados. Pero preferiblemente, deben introducirse N ceros.
Preferiblemente, la etapa S402 comprende que: el decodificador convolucional en bucle realiza el tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de acuerdo con los datos de entrada para ser decodificados, para obtener los valores métricos acumulativos intermedios de los 2N estados; y tomando los valores métricos acumulativos intermedios de los 2N estados como valores iniciales, el decodificador convolucional en bucle continúa realizando N veces del tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de acuerdo con los N ceros introducidos tras los datos para ser decodificados, para obtener los valores métricos acumulativos finales de los 2N estados.
Específicamente, el principio del método anterior es que: el tratamiento de adición-comparación-selección de la decodificación de Viterbi es de hecho un comparador natural. Introduciendo los datos iguales a cero (es decir, el valor métrico de ruta representa cero), realmente completa la comparación de los valores métricos de los 2N estados sin cambiar el propio valor métrico de estado. Así, calculando los ceros de los datos de entrada para N etapas (es decir, realizando N veces el tratamiento de adición-comparación-selección), realmente completa el tratamiento de selección del máximo valor entre los valores métricos de los 2N estados. Este proceso puede ser realizado hacia atrás debido a que es el mismo que el proceso normal de introducción de datos distintos de cero. Almacenando la ruta final (es decir, el resultado de la selección del tratamiento de adición-comparación-selección), realmente almacena la ruta de búsqueda del valor máximo, de manera que el punto de valor métrico máximo de estado puede ser alcanzado mediante retroceso solo mediante N etapas a través de un proceso de retroceso normal.
En realidad, el tratamiento de adición-comparación-selección siempre guarda los valores mayores. Así, todos los valores métricos acumulativos finales de los 2N estados son actualizados al valor métrico máximo de estado a través de las N etapas adicionales de cálculo de los ceros de datos de entrada. Por ello, retrocediendo desde cualquier punto de inicio, puede volver al punto de máximo valor métrico de estado mediante N etapas. Así, solo es necesario introducir adicionalmente N ceros, en lugar del proceso de comparar y buscar para obtener el valor máximo. Esta solución ahorra el tiempo de comparación y el recurso de comparación.
En lo anterior, la manera de efectuar el tratamiento de adición-comparación-selección comprende: como se muestra en la Fig. 3, en el proceso de que los 2N estados transitan desde el momento previo hasta el momento actual, acumulando respectivamente el valor métrico recién añadido de este tránsito a dos estados opcionales correspondientes a cada estado antes de este tránsito, donde el valor métrico recién añadido (denominado también el valor métrico de ruta) es la distancia euclidiana que se calcula utilizando los datos de entrada; y seleccionando el valor mayor de acumulación como los nuevos valores métricos acumulativos de un estado correspondiente después de este tránsito.
El valor métrico del estado de orden 2k del momento T actual se obtiene realizando el tratamiento de adicióncomparación-selección sobre el valor métrico del estado de orden k y el valor métrico del estado de orden (k+32) del momento previo T-1 (el valor añadido es el valor métrico de ruta). De manera similar, el valor métrico del estado de
10
15
20
25
30
35
40
45
50
55
E11816024
08-10-2015
orden (2k+1) del momento T actual se obtiene realizando el tratamiento de adición-comparación-selección sobre el valor métrico del estado de orden k y sobre el valor métrico del estado de orden (k+32). Así, cuando el dato introducido es 0, es decir, el valor métrico de ruta representa 0, el mayor de los valores métricos de los dos estados opcionales es seleccionado como el valor métrico del momento T actual.
En el sistema LTE, la longitud del registro de codificación es configurada a 6. Es decir, la longitud de restricción N es igual a 6. Solo es necesario introducir adicionalmente 6 ceros y calcular adicionalmente 6 etapas (es decir, efectuar adicionalmente 6 veces del tratamiento de adición-comparación-selección).
Preferiblemente, la etapa S404 comprende que: tomando cualquiera de uno de los 2N estados como el punto de inicio del retroceso, el decodificador convolucional en bucle busca el estado padre de acuerdo con el resultado de la selección hasta que se han encontrado todos los estados históricos; y el decodificador convolucional en bucle compone la salida de bits más bajos mediante todos los estados históricos en el resultado de la decodificación intermedio, según la dirección negativa del retroceso.
La realización preferida proporciona una implementación específica del retroceso mediante el decodificador convolucional en bucle. Todos los valores métricos acumulativos finales se los estados pueden hacerse iguales al máximo valor introduciendo adicionalmente N ceros y realizando adicionalmente N veces del tratamiento de adicióncomparación-selección en la etapa S402. Así, durante el retroceso, mediante retroceso desde cualquier estado se puede volver al punto del máximo valor métrico. Es decir, retrocediendo desde cualquier estado es igual al retroceso desde el máximo valor métrico de estado.
La única diferencia entre las N etapas adicionales necesarias del proceso de cálculo y de retroceso en la realización preferida y el proceso de decodificación tradicional es que los datos de entrada se configuran a 0. Así, este proceso es fácil de efectuar y muy eficiente.
Preferiblemente, uno cualquiera de los 2N estados puede ser el estado cero. Es decir, el retroceso desde el estado cero puede ser seleccionado en el retroceso de la etapa S404, lo que resulta más conveniente para la implementación mediante hardware. Y, es obvio para los expertos en la materia que el retroceso puede iniciarse también desde el último estado.
Esencialmente, el método de decodificación de canales anterior de acuerdo con una realización de la descripción es aún un método de retroceso desde el punto de máximo valor métrico de estado. Su ventaja es que no son necesarios ni tiempo ni recurso exclusivos para la búsqueda del máximo valor métrico de estado, y es fácil de efectuar y muy eficiente.
En la implementación real, el método de decodificación de canales (específicamente, el método de decodificación de Viterbi para codificación convolucional en bucle) de acuerdo con una realización preferida de la descripción se describe con detalle tomando la decodificación de canales del sistema LTE por ejemplo. En esta memoria, N es igual a 6. El método comprende las siguientes etapas:
etapa 1: efectuar el tratamiento de adición-comparación-selección y almacenar la ruta de acuerdo con el tratamiento de decodificación normal hasta que la codificación normal ha terminado;
etapa 2: configurar los datos de entrada a 0 (introduciendo adicionalmente 6 ceros), y continuar la realización del tratamiento de adición-comparación-selección y el almacenamiento de la ruta;
etapa 3: repetir la etapa 2 durante N veces; y
etapa 4: efectuar un retroceso desde el estado cero, descartando los N bits de datos que se obtienen desde el retroceso más antiguo, y emitiendo los bits de datos restantes como el resultado decodificado de los datos para ser decodificados.
La Fig. 5 muestra un diagrama de estructura de un decodificador convolucional en bucle de acuerdo con una realización de la descripción. El decodificador convolucional en bucle comprende: el módulo de adicióncomparación-selección 10, configurado para efectuar el tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de acuerdo con los datos para ser decodificados, que son introducidos en el decodificador convolucional en bucle, y N ceros de entrada tras los datos para obtener los valores métricos acumulativos finales de los 2N estados, y almacenar el resultado de la selección del tratamiento de adicióncomparación-selección, donde N es la longitud de restricción de la codificación convolucional en bucle; el módulo de retroceso 20, configurado para efectuar un retroceso desde uno cualquiera de los 2N estados de acuerdo con el resultado de la selección almacenado para obtener el resultado de decodificación intermedio, después de que el módulo de adición-comparación-selección 10 finaliza el tratamiento de adición-comparación-selección; y el módulo de emisión 30, configurado para emitir los bits, con la excepción de los últimos N bits del resultado de la decodificación intermedio como el resultado decodificado de los datos para ser decodificados.
Preferiblemente, como se muestra en la Fig. 6, el módulo de adición-comparación-selección 10 comprende: el primer módulo de tratamiento 102, configurado para efectuar el tratamiento de adición-comparación-selección sobre los
10
15
20
25
30
35
40
E11816024
08-10-2015
valores métricos de los 2N estados de acuerdo con los datos para ser decodificados, que son introducidos en el decodificador convolucional en bucle, para obtener los valores métricos acumulativos intermedios de los 2N estados; y el segundo módulo de tratamiento 104, configurado para, tomando los valores métricos acumulativos intermedios de los 2N estados como valores iniciales, continuar realizando N veces del tratamiento de adición-comparaciónselección sobre los valores métricos de los 2N estados de acuerdo con los N ceros introducidos tras los datos para ser decodificados, para obtener los valores métricos acumulativos finales de los 2N estados.
Preferiblemente, la manera de efectuar el tratamiento de adición-comparación-selección mediante el módulo de tratamiento 10 comprende: en el proceso de que los 2N estados transitan desde el momento previo al momento actual, acumular respectivamente el valor métrico recién añadido de esta transición a dos estados opcionales correspondientes a cada estado antes de esta transición, donde el valor métrico recién añadido es la distancia euclidiana que se calcula utilizando los datos de entrada; y seleccionar el mayor valor de acumulación como los nuevos valores métricos acumulativos de un estado correspondiente tras esta transición.
Preferiblemente, el módulo de retroceso 20 comprende: el módulo de búsqueda 202, configurado para, tomando uno cualquiera de los 2N estados como el punto de inicio del retroceso, buscar el estado padre de acuerdo con el resultado de la selección hasta que se han encontrado todos los estados históricos; y el módulo de composición 204, configurado para componer la salida de los bits más bajos mediante todos los estados históricos en el resultado de la decodificación intermedio, según la dirección negativa del retroceso.
Preferiblemente, uno cualquiera de los 2N estados puede ser el estado cero. Es decir, durante el retroceso, el módulo de retroceso 20 puede seleccionar efectuar un retroceso desde el estado cero. Esta solución es más conveniente para la implementación mediante hardware.
Puede verse a partir de la descripción anterior que la descripción alcanza los siguientes efectos técnicos. El método del retorno a cero forzado se adopta para efectuar un retroceso en el proceso de decodificación de Viterbi de la codificación convolucional en bucle. Así, el rendimiento del retroceso desde el punto de máximo valor métrico de estado puede conseguirse solo calculando adicionalmente los ceros de los datos de entrada para las etapas de longitud de restricción y almacenar adicionalmente la ruta de retroceso para las etapas de longitud de restricción de acuerdo con el modo de decodificación normal. Y, el tiempo y el recurso para buscar el máximo valor métrico de estado ya no son necesarios.
Obviamente, resultará evidente para los expertos en la materia que los módulos y etapas de la descripción mencionados anteriormente pueden ser realizados mediante un dispositivo informático de propósito general. Esto puede estar centralizado en un solo dispositivo informático, o distribuido en una red compuesta por múltiples dispositivos informáticos. Opcionalmente, pueden ser realizados mediante un código de programa que es capaz de ser ejecutado mediante el dispositivo informático. Por lo tanto, pueden ser almacenados en un dispositivo de almacenamiento para ser ejecutados por el dispositivo informático. Además, en ciertas condiciones, las etapas presentadas o descritas pueden ser ejecutadas en un orden diferente del descrito en esta memoria. O bien, pueden efectuarse en módulos de circuitos integrados, respectivamente; o bien múltiples módulos o etapas de los mismos están realizados en un único módulo de circuitos integrados para efectuarlos. De esta manera, la descripción no se limita a ninguna combinación particular de hardware y software.
Lo anterior son solo las realizaciones preferidas de la descripción y no pretende limitar la descripción. Para los expertos en la materia, la descripción puede tener varias modificaciones y cambios. Cualquier modificación, sustitución equivalente, mejora y otros dentro del principio de la descripción se encontrará dentro del alcance de protección de la descripción.
Claims (8)
- 5101520253035404550REIVINDICACIONES1. Un método de decodificación de canales para decodificar un código convolucional en bucle con longitud de restricción N+1, caracterizado por que comprende:tras efectuar, mediante un decodificador convolucional en bucle, un tratamiento de adición-comparación-selección de acuerdo con los datos de entrada para ser decodificados, continuar realizando, mediante el decodificador convolucional en bucle, N etapas adicionales del tratamiento de adición-comparación-selección de datos de entrada que representan 0 (S402), en el que el hecho de que los datos de entrada de las N etapas adicionales del tratamiento de adición-comparación-selección sean 0 resulta en que los valores métricos de ruta representan 0 en las N etapas adicionales del tratamiento de adición-comparación-selección;efectuar un retroceso, mediante el decodificador convolucional en bucle, desde uno cualquiera de los 2N estados del decodificador convolucional en bucle para obtener un resultado de decodificación intermedio, después de que el tratamiento de adición-comparación-selección ha terminado (S404); yemitir, mediante el decodificador convolucional en bucle, bits excepto los N últimos bits del resultado de la decodificación intermedio como resultado decodificado de los datos de entrada para ser decodificados (S406).
- 2. El método de acuerdo con la reivindicación 1, caracterizado por queel efectuar, mediante el decodificador convolucional en bucle, el tratamiento de adición-comparación-selección de acuerdo con los datos de entrada para ser decodificados comprende:efectuar, mediante el decodificador convolucional en bucle, el tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de acuerdo con los datos de entrada para ser decodificados para obtener valores métricos acumulativos intermedios de los 2N estados; yel continuar realizando, mediante el decodificador convolucional en bucle, las N etapas adicionales del tratamiento de adición-comparación-selección los datos de entrada que representan 0 comprende: continuar realizando, mediante el decodificador convolucional en bucle, las N etapas adicionales del tratamiento de adición-comparaciónselección los datos de entrada que representan 0 en los valores métricos de los 2N estados para obtener los valores métricos acumulativos finales de los 2N estados, en el que los valores métricos acumulativos finales de los 2N estados estados son iguales a un valor métrico máximo de estado a través de las N etapas adicionales del tratamiento de adición-comparación-selección de los datos introducidos que representan 0.
- 3. El método de acuerdo con las reivindicaciones 1 o 2, caracterizado por que un modo de efectuar el tratamiento de adición-comparación-selección comprende:en el proceso en que los 2N estados transitan desde un momento previo a un momento actual, para cada estado, la acumulación respectivamente de un valor métrico de ruta con relación a los valores métricos de estado de dos estados opcionales correspondientes al estado antes de esta transición, en el que el valor métrico de ruta representa una distancia euclidiana calculada utilizando los datos de entrada; yseleccionar un valor mayor de acumulación como nuevo valor métrico acumulativo de un estado correspondiente tras esta transición.
- 4. El método de acuerdo con la reivindicación 1, caracterizado por que un retroceso, mediante el decodificador convolucional en bucle, a partir de uno cualquiera de los 2N estados del decodificador convolucional en bucle para obtener un resultado de decodificación intermedio después de que el tratamiento de adición-comparación-selección ha terminado comprende:tomando un estado entre los 2N estados como punto de partida del retroceso, la búsqueda, mediante el decodificador convolucional en bucle, de un estado padre en función de un resultado de selección del tratamiento de adición-comparación-selección hasta que todos los estados históricos se han encontrado; yla composición, mediante el decodificador convolucional en bucle, de los bits más bajos emitidos por todos los estados históricos en el resultado de decodificación intermedio, en función de una dirección negativa del retroceso.
- 5. Decodificador convolucional en bucle que permite la decodificación de un código convolucional en bucle con una longitud de restricción de N+1, caracterizado por que comprende:un módulo de adición-comparación-selección (10), configurado para, tras la ejecución del tratamiento de adicióncomparación-selección en función de los datos de entrada en el decodificador, continuar con la ejecución de las N etapas adicionales del tratamiento de adición-comparación-selección de datos de entrada que representan 0, en el cual el hecho de que los datos de entrada de las N etapas adicionales del tratamiento de adición-comparaciónselección que representen 0 resulta en valores métricos de ruta que representan 0 en las N etapas adicionales del tratamiento de adición-comparación-selección;8 51015202530un módulo de retroceso (20), configurado para efectuar un retroceso desde un estado cualquiera de los 2N estados del decodificador convolucional en bucle para obtener un resultado de decodificación intermedio después de que el módulo de adición-comparación-selección termina el tratamiento de adición-comparación-selección; yun módulo de salida (30),configurado para emitir bits, con la excepción de los N últimos bits del resultado de decodificación intermedio, como resultado decodificado de los datos de entrada para ser decodificados.
- 6. El decodificador convolucional en bucle de acuerdo con la reivindicación 5, caracterizado por que el módulo de adición-comparación-selección comprende:un primer módulo de tratamiento, configurado para efectuar el tratamiento de adición-comparación-selección sobre los valores métricos de los 2N estados de acuerdo con los datos para ser decodificados que son introducidos en el decodificador convolucional en bucle para obtener los valores métricos acumulativos intermedios de los 2N estados; yun segundo módulo de tratamiento, configurado para continuar realizando las N etapas adicionales del tratamiento de adición-comparación-selección los datos de entrada que representan 0 sobre los valores métricos de los 2N estados para obtener valores métricos acumulativos finales de los 2N estados, en el que los valores métricos acumulativos finales de los 2N estados son iguales al valor métrico máximo de estado a través de las N etapas adicionales del tratamiento de adición-comparación-selección de los datos de entrada que representan 0.
-
- 7.
- El decodificador convolucional en bucle de acuerdo con la reivindicación 5 o 6, caracterizado por que un modo de efectuar el tratamiento de adición-comparación-selección mediante el módulo de adición-comparación-selección comprende: en el proceso en el que los 2N estados transitan desde un momento previo a un momento actual, para cada estado, acumular respectivamente un valor métrico de ruta a valores métricos de estado de dos estados opcionales correspondientes al estado antes de esta transición, en el que el valor métrico de ruta representa una distancia euclidiana calculada utilizando los datos de entrada; y seleccionar un valor mayor de acumular como nuevo valor métrico acumulativo de un estado correspondiente tras esta transición.
-
- 8.
- El decodificador convolucional en bucle de acuerdo con la reivindicación 5, caracterizado por que el módulo de retroceso comprende:
un módulo de búsqueda, configurado para, tomando un estado de los 2N estados como el punto de inicio del retroceso, buscar un estado padre de acuerdo con un resultado de selección del tratamiento de adicióncomparación-selección hasta que se encuentren todos los estados históricos; yun módulo de composición, configurado para componer los bits más bajos emitidos por todos los estados históricos en el resultado de decodificación intermedio, según una dirección negativa de retroceso.9
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102516844A CN102377438B (zh) | 2010-08-11 | 2010-08-11 | 信道译码方法和咬尾卷积译码器 |
CN201010251684 | 2010-08-11 | ||
PCT/CN2011/073284 WO2012019465A1 (zh) | 2010-08-11 | 2011-04-25 | 信道译码方法和咬尾卷积译码器 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2549773T3 true ES2549773T3 (es) | 2015-11-02 |
Family
ID=45567334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES11816024.1T Active ES2549773T3 (es) | 2010-08-11 | 2011-04-25 | Método de decodificación de canales y decodificador convolucional en bucle |
Country Status (6)
Country | Link |
---|---|
US (1) | US8942326B2 (es) |
EP (1) | EP2605410B1 (es) |
KR (1) | KR101476560B1 (es) |
CN (1) | CN102377438B (es) |
ES (1) | ES2549773T3 (es) |
WO (1) | WO2012019465A1 (es) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2595321A1 (en) * | 2011-11-16 | 2013-05-22 | MStar Semiconductor, Inc. | Tail-biting convolutional decoding apparatus and decoding method |
CN104796160B (zh) * | 2014-01-22 | 2019-04-12 | 华为技术有限公司 | 译码方法和装置 |
CN106301391B (zh) * | 2016-08-08 | 2019-07-16 | 西安电子科技大学 | 一种改进的软输出咬尾卷积码译码方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030131306A1 (en) * | 2001-12-27 | 2003-07-10 | Yeun-Renn Ting | Method for turbo-code block message tailing and turbo-code encoder employing the same |
DE10339832A1 (de) * | 2003-08-29 | 2005-03-17 | Philips Intellectual Property & Standards Gmbh | Verfahren zum verbesserten Erkennen der Gültigkeit von IEEE 802.11a Signalen sowie Schaltungsanordnung zur Durchführung des Verfahrens |
CN100544213C (zh) * | 2005-04-25 | 2009-09-23 | 中兴通讯股份有限公司 | 一种咬尾卷积码的译码方法及其译码器 |
US8055986B2 (en) * | 2005-08-19 | 2011-11-08 | Samsung Electronics Co., Ltd | Viterbi decoder and method thereof |
CN1992576A (zh) * | 2005-12-26 | 2007-07-04 | 中兴通讯股份有限公司 | 一种用于移动终端的联合信道译码装置 |
WO2008075125A1 (en) * | 2006-12-20 | 2008-06-26 | Wavesat Inc. | Method and decoder for tail-biting decoding |
JP4806673B2 (ja) * | 2007-12-27 | 2011-11-02 | ルネサスエレクトロニクス株式会社 | 復号装置及び復号方法 |
KR20080083256A (ko) * | 2008-03-11 | 2008-09-17 | 에스케이 텔레콤주식회사 | 테일-바이팅 디코딩을 위한 방법 및 디코더 |
CN101369817B (zh) * | 2008-09-27 | 2011-10-26 | 华为技术有限公司 | 咬尾卷积码的译码方法和装置 |
CN101635611B (zh) * | 2009-09-02 | 2013-06-05 | 中兴通讯股份有限公司 | 一种信道译码方法和装置 |
US8548102B2 (en) * | 2010-05-12 | 2013-10-01 | Qualcomm Incorporated | Tail-biting convolutional decoding |
TW201233070A (en) * | 2011-01-26 | 2012-08-01 | Ind Tech Res Inst | Pre-decoded tail-biting convolutional decoder and decoding method thereof |
-
2010
- 2010-08-11 CN CN2010102516844A patent/CN102377438B/zh not_active Expired - Fee Related
-
2011
- 2011-04-25 EP EP11816024.1A patent/EP2605410B1/en not_active Not-in-force
- 2011-04-25 US US13/814,463 patent/US8942326B2/en not_active Expired - Fee Related
- 2011-04-25 KR KR1020137005446A patent/KR101476560B1/ko active IP Right Grant
- 2011-04-25 ES ES11816024.1T patent/ES2549773T3/es active Active
- 2011-04-25 WO PCT/CN2011/073284 patent/WO2012019465A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CN102377438A (zh) | 2012-03-14 |
KR101476560B1 (ko) | 2014-12-24 |
EP2605410A1 (en) | 2013-06-19 |
CN102377438B (zh) | 2013-12-04 |
EP2605410A4 (en) | 2014-01-01 |
US20130136215A1 (en) | 2013-05-30 |
EP2605410B1 (en) | 2015-09-30 |
KR20130081279A (ko) | 2013-07-16 |
US8942326B2 (en) | 2015-01-27 |
WO2012019465A1 (zh) | 2012-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2012517138A (ja) | 削除訂正畳み込み符号および畳み込みターボ符号のための符号化法および復号法 | |
JP2005033705A (ja) | 復号装置および復号方法 | |
CN107911195A (zh) | 一种基于cva的咬尾卷积码信道译码方法 | |
CN1855732A (zh) | 一种咬尾卷积码的译码方法及其译码器 | |
ES2549773T3 (es) | Método de decodificación de canales y decodificador convolucional en bucle | |
US8904266B2 (en) | Multi-standard viterbi processor | |
US8843811B2 (en) | Apparatus and method for decoding in communication system | |
JPWO2011111654A1 (ja) | 誤り訂正符号復号装置、誤り訂正符号復号方法および誤り訂正符号復号プログラム | |
CN108134612B (zh) | 纠正同步与替代错误的级联码的迭代译码方法 | |
Sui et al. | CRC-Aided High-Rate Convolutional Codes With Short Blocklengths for List Decoding | |
US9160399B2 (en) | System and apparatus for decoding tree-based messages | |
CN114430279B (zh) | 一种列表维特比译码方法、装置、译码器和存储介质 | |
Tang et al. | A memory-efficient architecture for low latency viterbi decoders | |
CN102291198B (zh) | 信道译码方法和装置 | |
Xu et al. | Implementation of folded sliding block Viterbi decoders for MB-OFDM UWB communication system | |
Wu et al. | Reliability-based decoding for convolutional tail-biting codes | |
Sui et al. | On CRC-Aided, Dual-Trellis, List Decoding for High-Rate Convolutional Codes with Short Blocklengths. | |
KR102302560B1 (ko) | 조인트 비터비 검출 및 복호 장치 및 그 방법 | |
Li et al. | Efficient implementation of the decoder for tail biting convolutional codes | |
Singh et al. | Hardware Implementation of Viterbi Decoder for Wireless Applications | |
CN107645296B (zh) | 衔尾卷积码用最大似然双向优先级优先搜索算法 | |
Latha et al. | Low-Power Adaptive Viterbi Decoder for TCM Using T-Algorithm | |
KR20060084218A (ko) | 부호 복호 방법 | |
Yamuna | Some investigations on a class of reliability based soft decision decoding algorithms for block codes | |
Li et al. | Joint probability-algebraic decoding for tail-biting codes used in LTE system |