ES2281309B2 - Procedimiento y arquitectura electronica para la deteccion sova optimabasado en el rastreo de puntos de fusion. - Google Patents

Procedimiento y arquitectura electronica para la deteccion sova optimabasado en el rastreo de puntos de fusion. Download PDF

Info

Publication number
ES2281309B2
ES2281309B2 ES200701056A ES200701056A ES2281309B2 ES 2281309 B2 ES2281309 B2 ES 2281309B2 ES 200701056 A ES200701056 A ES 200701056A ES 200701056 A ES200701056 A ES 200701056A ES 2281309 B2 ES2281309 B2 ES 2281309B2
Authority
ES
Spain
Prior art keywords
melting points
unit
points
sova
marks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES200701056A
Other languages
English (en)
Other versions
ES2281309A1 (es
Inventor
Carlos Arrabal Azzalini
Pablo Ituero Herrero
Maria Luisa Lopez Vallejo
Carlos Alberto Lopez Barrio
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.)
Universidad Politecnica de Madrid
Original Assignee
Universidad Politecnica de Madrid
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Universidad Politecnica de Madrid filed Critical Universidad Politecnica de Madrid
Priority to ES200701056A priority Critical patent/ES2281309B2/es
Publication of ES2281309A1 publication Critical patent/ES2281309A1/es
Application granted granted Critical
Publication of ES2281309B2 publication Critical patent/ES2281309B2/es
Priority to PCT/ES2008/000260 priority patent/WO2008129102A1/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/4138Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions
    • H03M13/4146Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions soft-output Viterbi decoding according to Battail and Hagenauer in which the soft-output is determined using path metric differences along the maximum-likelihood path, i.e. "SOVA" 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

Procedimiento y arquitectura electrónica para la detección SOVA óptima basado en el rastreo de puntos de fusión.
La presente invención propone una alternativa a los esquemas actuales de decodificación SOVA (Soft Output Viterbi Algorithm), ya que no realiza un rastreo de los caminos sobrevivientes por el diagrama trellis, sino que primero encuentra puntos aislados donde estos caminos convergen. A estos puntos donde los caminos convergen se les llaman puntos de fusión. Dado que este punto es donde los caminos convergen, los puntos de fusión son en realidad parte del camino más probable en el diagrama trellis. Estos puntos de fusión luego se utilizan para que otra unidad actualice la fiabilidad de los bits.

Description

Procedimiento y arquitectura electrónica para la detección SOVA óptima basado en el rastreo de puntos de fusión.
Sector técnico
La invención se encuadra en el sector técnico de la Ingeniería de telecomunicaciones, más concretamente en arquitecturas de circuitos electrónicos digitales para sistemas de comunicaciones, y dentro de los sistemas de comunicaciones, en la parte de arquitecturas para la codificación y decodificación de canal.
Estado de la técnica
Actualmente, las arquitecturas que realizan la decodificación de Viterbi con información de fiabilidad sobre los bits de salida, más conocida como decodificación SOVA(Soft Output Viterbi Algorithm) (A Viterbi algorithm with soft-decision outputs and its applications. J Hagenauer, P Hoeher - Proc. IEEE GLOBECOM, 1989), son de gran interés por su utilidad en esquemas de codificación de canal basados en códigos concatenados, como pueden ser los Turbo Códigos (C. Berrou, A. Glavieux, and P. Thitimasjshima. Near Shannon Limit Error-Correcting Coding and Decoding: Turbo- Codes. Proceedings of the IEEE Internacional Conference on Communications, May 1993, Geneva, Switzerland). Esto es debido a que permiten recuperar la información transmitida con probabilidades de error muy bajas.
Las arquitecturas actuales, implementan este conocido algoritmo SOVA, de una forma no óptima al limitar dos parámetros. El primer parámetro, conocido como D, es la profundidad de rastreo del camino más probable en un diagrama trellis dado por la aplicación del algoritmo de Viterbi a la secuencia de símbolos recibida. El otro parámetro, conocido como U, es la profundidad de actualización de la fiabilidad de los bits de la secuencia de bits estimada. Las arquitecturas actuales implementan un algoritmo SOVA no óptimo, al limitar ambos parámetros, con el fin de obtener una latencia reducida y constante en el proceso. Por otro lado, la mayoría de las arquitecturas actuales utilizan esquemas de procesamiento concurrente, o procesamiento en paralelo que deriva en una gran actividad de conmutación de los registros y, por lo tanto, en un elevado consumo de potencia dinámica.
Con la presente invención se puede realizar la detección SOVA óptima, ya que la arquitectura junto con el procedimiento presentes en la invención, logran evadir la relación de compromiso, antes citada, de los parámetros D y U mientras mantienen la latencia controlada. La arquitectura propuesta consigue obtener los resultados con un consumo de potencia dinámica reducido por el hecho de emplear arquitecturas recursivas a la hora de procesar la información.
Hay varias arquitecturas que implementan la decodificación SOVA. Las arquitecturas más eficientes en términos de consumo de potencia, realizan la decodificación en dos pasos. Primero llevan a cabo una decodificación de Viterbi pura con la que estiman el camino mas probable dentro del diagrama trellis. Luego realizan la actualización de fiabilidad de los bits asociados a este camino. Al realizar la decodificación de Viterbi pura, por cada vector de decisión que entrega la unidad ACSU (unidad de suma, comparación y selección) en un esquema convencional, se rastrea hacia atrás una profundidad D el diagrama trellis. El parámetro D es lo suficientemente grande como para asegurar que los caminos rastreados convergen en un solo camino sobreviviente que resulta ser el camino más probable. Una vez que se obtiene esta secuencia de bits se puede proceder a la actualización de su fiabilidad. Las arquitecturas actuales realizan esta actualización siguiendo las reglas del procedimiento conocido como HR-SOVA, con una profundidad U. Existe otra regla de actualización conocida como BR-SOVA (BATTAIL G. Ponderation des symboles decodes par 1-agorithem de Viterbi, AnnTelecommun, Jan. 1987 Fr.42(1-2,):31-38.) cuyo desempeño en términos de tasa de error es superior y equivalente a una decodificación max-log-map (On the Equivalence Between SOVA and max-log-MAP Decodings. MPC Fossorier, F Burkert, S Lin, J Hagenauer - IEEE COMMUNICATIONS LETTERS, 1998). El procedimiento HR-SOVA contempla sólo el caso en que el bit del camino sobreviviente y el bit del camino competidor difieran, sin embargo el procedimiento BR-SOVA contempla también la actualización para el caso de que estos bits sean iguales.
Finalmente la latencia que se consigue con estos esquemas es de D+U. Los parámetros D y U se fijan en proporción a la longitud del código y con el objetivo de que la respuesta del decodificador en términos de tasa de error frente a la relación señal a ruido sea aceptable para la aplicación en cuestión.
En el documento de patente US6445755B1 se describe una implementación del algoritmo SOVA basada en una arquitectura de dos etapas y utiliza para la actualización la regla basada en la decodificación HR-SOVA. En el documento de patente US6487694B1 se describe una arquitectura que realiza un rastreo símbolo a símbolo y también, la actualización se basa en la regla HR-SOVA.
Descripción detallada de la invención
La presente invención propone una alternativa a los esquemas actuales, ya que no realiza un rastreo de los caminos por el diagrama trellis, sino que primero encuentra puntos aislados donde los caminos convergen. A estos puntos donde los caminos convergen se les llaman puntos de fusión. Dado que este punto es donde los caminos convergen, los puntos de fusión son en realidad parte del camino más probable en el diagrama trellis. Estos puntos de fusión luego se utilizan para que otra unidad actualice la fiabilidad de los bits.
A continuación se describirá el procedimiento o algoritmo de puntos de fusión, pero primero es conveniente definir qué es un punto de fusión. El punto de fusión en el instante ifp se puede definir de la siguiente manera: dado que se está procesando el diagrama trellis para el instante i, si se rastrean todos los caminos hacia atrás desde ese instante i, se observa que estos van convergiendo hasta que en el instante ifp los caminos terminan de converger en el estado sfp y ya desde ese instante hacia instantes anteriores sólo se rastrea el camino sobreviviente o camino más probable. Por lo tanto en el instante ifp y estado sfp existe un punto de fusión para el instante de comienzo de
rastreo i.
El procedimiento o algoritmo de puntos de fusión consiste en marcar, o establecer una marca, a cada uno de los posibles puntos de fusión y procesar su evolución. Para comprender su validez, se puede hacer la lógica inversa a la explicación de puntos de fusión dada en el párrafo anterior. Si en el instante que se procesa el tramo del trellis ifp, se marca como posible punto de fusión el estado sfp, luego se puede, en tiempos sucesivos, propagar esa marca hacia los estados que conecta el diagrama de trellis resultante de aplicar el algoritmo de Viterbi. Finalmente cuando se alcanza el instante i se obtiene que la marca se ha propagado hacia todos los estados.
El procedimiento contempla como posibles puntos de fusión, aquellos estados que poseen bifurcaciones de las ramas del trellis, o si se mira el diagrama trellis en el sentido de rastreo, los puntos donde convergen dos o más caminos.
El procedimiento también contempla cómo procesar las marcas con las que se señalan los posibles puntos de fusión. A continuación se describe el proceso:
1.
Cuando se detecta un posible punto de fusión, se conserva en registros su instante de detección y su código de estado. Estas marcas se propagan hacia los estados en el instante de tiempo siguiente a través de las conexiones del trellis resultante de aplicar el algoritmo de Viterbi.
2.
Las marcas se propagan en cada instante de tiempo. Concurrentemente se puede detectar nuevas marcas.
3.
Si una marca se propaga a todos los estados, entonces el origen de esa marca es un punto de fusión. Los registros asociados a esa marca contienen la información del punto de fusión.
4.
Si dos marcas, producto de la propagación, coinciden, entonces se retiene la marca con el instante de detección posterior y se liberan los registros que contienen la información de la marca con instante de detección anterior. También es totalmente factible el procedimiento contrario; es decir, se retiene la marca con el instante de detección anterior y se liberan los registros que contienen la información de la marca con instante de detección posterior aunque es preferible la primera opción ya que los puntos de fusión que se obtienen están lo mas próximo al instante de tiempo que se está procesando.
5.
Si una marca se propaga a sólo un estado, entonces los registros que contienen la información de esa marca se liberan, ya que esa marca no podrá volverse en el futuro un punto de fusión.
Dado que las marcas se repiten y se descartan de acuerdo con el inciso dos antes mencionado, el número de registros finales que se emplean para mantener el cómputo de marcas es limitado y por ende el numero de registros empleados para representarlas también es limitado. Este número de registros dependerá del número de estados del codificador.
El procedimiento de puntos de fusión presenta la ventaja de que siempre encuentra los puntos de fusión a lo largo del diagrama trellis y no depende de ningún factor D. Por otro lado, el número de registros que se emplean es limitado con lo que el consumo dinámico se mantiene acotado independientemente del desempeño en términos de tasa de error que se fije como objetivo.
Una arquitectura genérica que implementa el algoritmo SOVA está compuesta por las unidades: BMU (unidad de métrica de rama), ACSU (unidad de suma, comparación y selección) y la unidad SMU (unidad de memoria sobreviviente). La presente invención reside en implementar la unidad SMU en base a dos unidades. La unidad FPU (unidad de puntos de fusión) y la unidad RUUFP (unidad de actualización de fiabilidad basada en puntos de fusión). La arquitectura SMU también consta de una memoria RAM de doble puerto para almacenar la información que la unidad ACSU provee hasta que se pueda utilizar. Las unidades BMU, y ACSU son convencionales, sin embargo las unidades FPU y RUUFP son novedad y son las que se describirán a continuación.
La unidad FPU implementa el procedimiento de puntos de fusión. Esta unidad consta de un grupo de registros con la siguiente finalidad:
1.
Almacenar la dirección, o el instante de tiempo de detección de los posibles puntos de fusión.
2.
Almacenar los códigos de estado de los posibles puntos de fusión.
3.
Almacenar el estado de las marcas.
Además de los registros, la unidad cuenta con lógica combinacional que realiza la detección, propagación y procesamiento de las marcas. Cuando la unidad detecta un punto de fusión, lo indica con una señal, al mismo tiempo que vuelca en las líneas de salida, la dirección y el código de estado del punto de fusión.
La unidad RUUFP, recoge, en un banco de registros, los puntos de fusión que le entrega la unidad FPU. Esta unidad también contiene una máquina de estados que implementa un procedimiento de control sobre los puntos de fusión con el objetivo de comenzar la actualización de fiabilidad de los bits en el momento que sea posible. Una vez que la máquina de estados tiene un punto de partida, carga esa dirección en un contador descendente y lanza la actualización, realizada por la unidad de actualización recursiva. Esta unidad, consta de una parte que realiza el rastreo del camino más probable, y otra que realiza la actualización de la fiabilidad de forma recursiva. La parte que realiza la actualización de forma recursiva utiliza la topología trellis en sentido inverso para rastrear los caminos competidores. Cuando dos caminos competidores convergen se conserva el que tiene la mínima delta. El parámetro delta es la diferencia de métrica de caminos y es el valor que se utiliza para estimar la fiabilidad de los bits.
El procedimiento que implementa la máquina de estados se detalla a continuación:
1.
Se espera a que haya dos puntos de fusión
2.
Se compara el origen del último punto de fusión con el instante en que se detectó el primero. Si el origen del último se encuentra después de la línea de detección del primero, entonces se procede a la actualización de la fiabilidad y el punto de partida es el tiempo y estado del último punto de fusión.
3.
Si no se cumple la condición anterior se espera otro punto de fusión. Ahora se tienen tres puntos de fusión disponibles. Si este tercer punto de fusión se encuentra detrás de la línea de detección del segundo, entonces se procede a la actualización con el segundo y tercero. Si no se encuentra detrás de la línea de detección del segundo, entonces se compara con la línea de detección del primero, si se encuentra detrás entonces se procede con la actualización.
4.
Si finalmente el tercer punto de fusión no se encuentra detrás del la línea de detección del segundo punto de fusión ni del primero, entonces este tercer punto de fusión se descarta y se espera uno nuevo.
5.
Cuando la unidad ACSU procesa el último instante de la trama de datos, entonces ésta se lo indica por una señal a esta máquina de estados, la cual se encarga de comenzar la actualización de fiabilidad desde el final de la trama.
La unidad RUUFP siempre tiene que esperar a que se encuentren dos o más puntos de fusión para que la actualización comience. Este tiempo de espera no es determinista y está ligado a la aleatoriedad de aparición de los puntos de fusión en el diagrama trellis. Si este tiempo de espera se traduce en latencia final, la tasa de bits por segundo del sistema se verá reducida. Por lo tanto, para evitar esta situación, cabe la posibilidad de hacer trabajar a la unidad RUUFP a una frecuencia superior a la de la unidad FPU.
Otras de las ventajas que aporta la arquitectura propuesta en esta invención es que al realizar la actualización de fiabilidad de forma recursiva y desde instantes posteriores hacia instantes anteriores en el diagrama trellis, se puede extender la regla de actualización de la fiabilidad a la propuesta en el procedimiento BR-SOVA para códigos RSC (convolucionales recursivos y sistemáticos). Dado que, al aplicar el algoritmo de Viterbi para los códigos RSC, los bits asociados a las ramas entrantes a un estado son diferentes, la fiabilidad del camino competidor se puede acotar como la Delta correspondiente a ese tiempo y estado. Esta Delta luego se sumará en la estructura recursiva si los bits del camino competidor y el camino sobreviviente son iguales, tal como indica el procedimiento BR-SOVA.
La arquitectura que realiza la decodificación SOVA contempla una memoria RAM, si esta memoria RAM se dimensiona para almacenar todas las Deltas y vectores de decisión que provee la unidad ACSU, entonces se consigue implementar el algoritmo SOVA de forma óptima. Si se opta por dimensionar esta memoria RAM a un tamaño menor, se consigue ahorrar en área a costa de implementar un algoritmo cuasi-óptimo.
Finalmente se puede concluir con las ventajas principales que aporta la invención:
1.
La arquitectura FPU encuentra todos los puntos de fusión a lo largo del diagrama trellis sin que esto suponga una relación de compromiso de algún parámetro.
2.
La unidad FPU trabaja de forma recursiva lo que implica que sólo un número limitado de registros tengan actividad.
3.
La unidad RUUFP actualiza de forma recursiva la fiabilidad de los bits y dado que el comienzo y final de la actualización se realiza en base a los puntos de fusión, se consigue eliminar la dependencia con el parámetro U.
4.
La unidad RUUFP, al realizar la actualización de forma recursiva, reduce la actividad de los registros.
5.
Al realizarse la actualización a medida que se rastrea el camino más probable, se puede implementar una aproximación al procedimiento BR- SOVA para códigos RSC con lo que se consigue potenciar la respuesta de la tasa de error del decodificador frente a la relación señal a ruido. El procedimiento BR-SOVA tiene una regla de actualización de la fiabilidad cuando los bits de los caminos competidores y sobrevivientes son diferentes, pero para poder realizarla es necesario sumar la fiabilidad de los bits del camino competidor en el cálculo. Con un código RSC binario, las ramas entrantes a un estado que compiten por ser el camino sobreviviente, siempre están asociadas a bits contrarios, por lo tanto, como mucho la fiabilidad de un bit cualquiera de cualquier camino será la diferencia de métrica entre los caminos que compitieron en ese estado. La aproximación que se propone consiste en utilizar la diferencia de métricas de caminos de un estado como estimador de la fiabilidad del bit competidor.
Breve descripción de los dibujos/figuras
La figura (1) aclara la definición de punto de fusión. Es un ejemplo con un código RSC de tasa 1/2. El polinomio de realimentación es [111] y el polinomio generador es [101]. Cuando se rastrean los caminos hacia instantes de tiempo anteriores, partiendo del instante i, se observa cómo los caminos van convergiendo hasta que en el instante ifp y estado sfp convergen los dos últimos. Desde ese instante hacia instantes anteriores el único camino es el camino sobreviviente o camino más probable.
Las figuras 2 a 8 tienen como fin intentar dar una visión mas concreta del procedimiento de puntos de fusión. La figura 2 indica la referencia de las marcas, mientras que el resto de figuras enseña la evolución del procedimiento, aplicado a un código RSC como el del párrafo anterior.
Se comienza en el instante cero. Se procesa de acuerdo al algoritmo de Viterbi esa etapa y se obtiene las ramas que se muestran en la figura 3. Las líneas punteadas indican una transición ocasionada por un bit mensaje con valor 1 y las líneas sólidas indican una transición ocasionada por un bit mensaje con valor 0. En el instante cero, estado s0, se detecta un posible punto de fusión, ya que se observa una bifurcación. Se conservan el instante y el código de estado de detección y se utiliza la marca I para representar este posible punto de fusión. Esta marca se propaga a los estados s0, s2 en el instante de tiempo i=1.
Se avanza en el tiempo y se procede con el instante de tiempo i=1 (figura 4). Para este instante de tiempo se detectan dos posibles puntos de fusión en los estados s0, s2, los cuales se marcan con II y III respectivamente. Las marcas II y III se propagan a los estados s0-s2, s1-s3 respectivamente. La marca I se propaga hacia todos los estados en el tiempo i=2. Por lo tanto la marca I es un punto de fusión. Este punto de fusión se indica y el registro que contenía su información se libera. Nótese que se ha dibujado una línea vertical a lo largo del instante i=2 para indicar el momento de detección del punto de fusión. La información relativa a las marcas II y III se guarda en el registro liberado y en un nuevo registro.
Se continúa con el tiempo i=2 (figura 5). Se detecta un posible punto de fusión en el estado s2 y se utiliza la marca IV para indicarlo. Esta marca se propaga hacia los estados s1-s3 en el instante i=3. La marca II se propaga hacia los estados s0-s1-s3. La marca III sólo se propaga hacia el estado s2, por lo tanto es liberada. Si se continuara propagando, a lo sumo coincidiría con otro posible punto de fusión, y por la definición de éste, si las dos marcas resultan ser puntos de fusión la última es realmente el punto de fusión. Dado que se liberó el registro que contenía la información de la marca III, éste se utiliza para almacenar la información relativa a la marca IV.
Se continúa con el tiempo i=3 (figura 6). Se detecta un posible punto de fusión en el estado s0, se relaciona con la marca V y se propaga hacia los estados s0-s2. La marca II se propaga hacia los estados s0-s2-s3. La marca IV sólo se propaga hacia s3, por lo que es liberada y su registro se utiliza para almacenar la información relativa a la marca V.
Se continúa con el instante i=4 (figura 7). Se detectan dos posibles puntos de fusión en los estados s0 y s2. Se marcan con VI y VII y se propagan hacia los estados s0-s2, s1-s3, respectivamente. Tanto la marca II como la marca V se propagan a todos los estados en i=5 (figura 8). Sin embargo sólo la marca V es el punto de fusión, ya que su origen es posterior al origen de la marca II. Se indica un punto de fusión con la información relativa a la marca V en i=3, estado s0 y se traza una línea vertical en el momento de detección. Los registros de II y V se liberan y se utilizan para almacenar la información relativa a VI y VII.
Se continúa en el instante i=5. Para este instante no se detecta ningún posible punto de fusión. Sólo hay propagación de las marcas VI y VII hacia los estados s2-s3, s0-s1, respectivamente.
En la figura 9 se presenta un ejemplo de arquitectura general para implementar la unidad FPU para un código RSC de tasa 1/2 y longitud de código K=3, lo que equivale a tener en el diagrama trellis 4 estados. Las entradas son el vector de decisión de la unidad ACSU, y la dirección actual o tiempo que se está procesando. La lógica combinacional se encarga de detectar los posibles puntos de fusión, de propagarlos y de procesarlos. Los registros almacenan la evolución de la marca, la dirección o instante de tiempo y el código de estado en que se detectó. Cuando se encuentra un punto de fusión se comunica por la línea de detección y se selecciona el registro de dirección y el código de estado.
En la figura 10 se muestra la arquitectura general de una unidad RUUFP. En un panorama general de izquierda a derecha se observa una cola para recoger la información de los puntos de fusión; un grupo de registros para almacenar la información relevante de hasta tres puntos de fusión; un contador descendente para ir recorriendo la memoria RAM e ir seleccionando la información previamente guardada por la unidad ACSU. La estructura a la derecha de la memoria RAM sirve para rastrear el camino sobreviviente y la unidad de actualización recursiva se enseña en detalle en la figura (11). Finalmente se obtiene la fiabilidad de salida en función del bit mensaje estimado, lo que equivale a multiplicar por +1 ó -1 dependiendo de si el de bit mensaje es 1 ó 0.
En la figura 11 se presenta la arquitectura de rastreo de las Deltas de caminos competidores. La topología que conecta los pares de multiplexores con los bloques minimizadores se corresponde con el diagrama trellis del código, pero visto en sentido inverso.
Las señales de control que manejan a los multiplexores se obtienen de comparar los bits de los caminos competidores con el bit mensaje del camino sobreviviente.
Por cada instante de tiempo se lanza una minimización en árbol cuyo resultado se obtiene al cabo de unos ciclos de reloj.
La figura 12 muestra la arquitectura general que engloba las otras arquitecturas anteriores y generaliza al decodificador SOVA.
Por último, las figuras 13 y 14 presentan la alternativa a las figuras 10 y 11, para un código RSC, para conseguir una aproximación al procedimiento BR-SOVA y por lo tanto mejorar el desempeño en términos de tasa de error del decodificador. En este caso, si los bits del camino competidor y sobreviviente son iguales, la fiabilidad del camino competidor se suma a la diferencia de métricas entre competidor y sobreviviente para participar en la obtención de la fiabilidad resultante de ese bit.
Modos de realización de la invención
Un modo de realización es el esquema propuesto en las figuras 9, 10, 11 y 12. Este esquema sirve para un código de longitud tres, lo que equivale a cuatro estados en el diagrama trellis. La topología de conexión corresponde a los siguientes polinomios: Polinomio de realimentación [111], polinomio generador [101]. Los esquemas de cuantificación pueden ser los que se desee e influirán en el tamaño de la memoria RAM y en el desempeño final del sistema. Dado que el código es RSC, se puede optar por las arquitecturas de las figuras 13 y 14 en lugar de las arquitecturas de las figuras 10 y 11 para realizar una aproximación BR-SOVA con la que se consigue mejorar la tasa de error sin incurrir en una sobrecarga de hardware considerable.
La máquina de estados de la unidad RUUFP maneja las señales de control. Primero recibe tres puntos de fusión en los registros de entrada. Si el último punto de fusión se encuentra detrás de la línea de detección del segundo, entonces comienza la actualización. Si esto no sucede, entonces comprueba si el tercero está detrás de la línea de detección del primero. Si lo está, entonces comienza la actualización con la información del primero y del tercero. Finalmente, si no se cumple ninguna de las condiciones anteriores, se descarta el tercer punto y se espera otro. La anterior descripción es un ejemplo de implementación de la invención que no pretende ser limitativo de su alcance.
Aplicación industrial
La invención reduciría la potencia y la tasa de errores de bit en comparación con las implementaciones anteriores. Esto es muy interesante para cualquier empresa que diseñe chips destinados a sistemas con restricciones energéticas como es el caso de teléfonos móviles o equipos portátiles.

Claims (6)

1. Nuevo procedimiento para encontrar puntos de convergencia de los caminos rastreados a partir de un instante determinado en el diagrama trellis y que permite implementar una decodificación SOVA óptima, caracterizado por realizar el siguiente proceso para cada instante en el diagrama trellis:
-
Detectar los posibles puntos de fusión que se definen como aquellos estados que poseen bifurcaciones de las ramas del trellis, o si se mira el diagrama trellis en el sentido de rastreo, los puntos donde convergen dos o más caminos posibles,
-
Conservar en registros el instante de detección y el código de estado de los posibles puntos de fusión detectados, con el fm de realizar su posterior seguimiento,
-
Propagar los posibles puntos de fusión hacia los posteriores estados según el diagrama trellis,
-
Propagar los posibles puntos de fusión detectados anteriormente hacia los posteriores estados según el diagrama trellis,
-
Eliminar las marcas que se descarten como puntos de fusión de acuerdo a unas reglas de descarte,
-
Detectar puntos de fusión cuando una marca se ha propagado a todos los estados de un instante temporal del diagrama trellis.
2. Procedimiento según reivindicación 1, caracterizado por emplear las siguientes reglas de descarte para las marcas:
-
En el caso en que, producto de la propagación, se obtengan marcas idénticas, descartar todas las que tienen el origen temporal anterior o, alternativamente, descartar todas las que tienen el origen temporal posterior.
-
Descartar las marcas que se propagan a sólo un estado.
3. Arquitectura electrónica para implementar el procedimiento según reivindicaciones 1 y 2, que tiene una unidad de métrica de rama convencional (BMU), una unidad de comparación y selección convencional (ACSU) y una unidad de memoria sobreviviente (SMU) que comprende los siguientes elementos:
-
Una unidad de puntos de fusión (FPU),
-
una unidad de actualización de fiabilidad basada en puntos de fusión (RUUFP) y
-
una memoria RAM.
4. Arquitectura electrónica según la reivindicación 3, caracterizada porque la unidad FPU se implementa con una máquina de estados genérica, donde la etapa combinacional está compuesta por la lógica que detecta las marcas, la lógica que las propaga y la lógica que las procesa y la memoria de la máquina de estados está compuesta por los registros que almacenan las marcas, los códigos de estados origen, y las direcciones origen.
5. Arquitectura electrónica según reivindicación 3, caracterizada porque la unidad RUUFP se implementa con los siguientes elementos:
-
un banco de registros para recibir los puntos de fusión,
-
una máquina de estados para controlar el proceso sobre los puntos de fusión,
-
una unidad de actualización recursiva para obtener la fiabilidad de los bits que consta de una parte que realiza el rastreo del camino más probable, y otra que realiza la actualización de la fiabilidad de forma recursiva utilizando la topología de trellis en sentido inverso para el rastreo de caminos competidores.
6. Arquitectura electrónica según reivindicación 5 para el caso de que se empleen códigos RSC binarios caracterizada por incluir la aproximación hacia la decodificación BR-SOVA en la actualización de fiabilidad que se basa en sumar al cálculo del mínimo de la diferencia de métricas de caminos, la fiabilidad del bit competidor que se estima con la diferencia de métricas de caminos en el instante de tiempo que se está procesando.
ES200701056A 2007-04-19 2007-04-19 Procedimiento y arquitectura electronica para la deteccion sova optimabasado en el rastreo de puntos de fusion. Active ES2281309B2 (es)

Priority Applications (2)

Application Number Priority Date Filing Date Title
ES200701056A ES2281309B2 (es) 2007-04-19 2007-04-19 Procedimiento y arquitectura electronica para la deteccion sova optimabasado en el rastreo de puntos de fusion.
PCT/ES2008/000260 WO2008129102A1 (es) 2007-04-19 2008-04-17 Procedimiento y arquitectura electrónica para la detección sova óptima basado en el rastreo de puntos de fusión

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ES200701056A ES2281309B2 (es) 2007-04-19 2007-04-19 Procedimiento y arquitectura electronica para la deteccion sova optimabasado en el rastreo de puntos de fusion.

Publications (2)

Publication Number Publication Date
ES2281309A1 ES2281309A1 (es) 2007-09-16
ES2281309B2 true ES2281309B2 (es) 2008-03-01

Family

ID=38458355

Family Applications (1)

Application Number Title Priority Date Filing Date
ES200701056A Active ES2281309B2 (es) 2007-04-19 2007-04-19 Procedimiento y arquitectura electronica para la deteccion sova optimabasado en el rastreo de puntos de fusion.

Country Status (2)

Country Link
ES (1) ES2281309B2 (es)
WO (1) WO2008129102A1 (es)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3910739C3 (de) * 1989-04-03 1996-11-21 Deutsche Forsch Luft Raumfahrt Verfahren zum Verallgemeinern des Viterbi-Algorithmus und Einrichtungen zur Durchführung des Verfahrens
US5537444A (en) * 1993-01-14 1996-07-16 At&T Corp. Extended list output and soft symbol output viterbi algorithms
US7031406B1 (en) * 1999-08-09 2006-04-18 Nortel Networks Limited Information processing using a soft output Viterbi algorithm
KR100456474B1 (ko) * 2001-12-08 2004-11-09 한국전자통신연구원 블록터보 부호의 반복 복호 방법 및 블록터보 부호의 반복복호 프로그램을 저장한 기록매체
US7103831B1 (en) * 2003-01-22 2006-09-05 Conexant Systems, Inc. Burst reliability and error locator for trellis codes

Also Published As

Publication number Publication date
ES2281309A1 (es) 2007-09-16
WO2008129102A1 (es) 2008-10-30

Similar Documents

Publication Publication Date Title
US6484283B2 (en) Method and apparatus for encoding and decoding a turbo code in an integrated modem system
US7849377B2 (en) SISO decoder with sub-block processing and sub-block based stopping criterion
US6813742B2 (en) High speed turbo codes decoder for 3G using pipelined SISO log-map decoders architecture
DK1135877T3 (da) Turbodekodning med soft-output-Viterbi-dekoder
US20030084398A1 (en) High speed turbo codes decoder for 3g using pipelined siso log-map decoders architecture
US20050149838A1 (en) Unified viterbi/turbo decoder for mobile communication systems
US8904266B2 (en) Multi-standard viterbi processor
JP2007081760A (ja) ターボ復号装置及びその方法並びにプログラム
WO2006116066A3 (en) Method for decoding tail-biting convolutional codes
ES2281309B2 (es) Procedimiento y arquitectura electronica para la deteccion sova optimabasado en el rastreo de puntos de fusion.
CN101252409B (zh) 基于符号级超格图的联合信源信道解码新算法
Suganya et al. RTL design and VLSI implementation of an efficient convolutional encoder and adaptive Viterbi decoder
Thobaben et al. On iterative source-channel decoding for variable-length encoded markov sources using a bit-level trellis
JPH07254861A (ja) ヴィタビ復号方法及び畳み込み符号化伝送方法
CN100364301C (zh) 一种用于数字通信差错控制的基于分块处理的并行Turbo编译码方法
ES2549773T3 (es) Método de decodificación de canales y decodificador convolucional en bucle
Lin et al. High-throughput 12-mode CTC decoder for WiMAX standard
KR101760462B1 (ko) 터보 복호기 및 ldpc 복호기를 위한 다중 복호 방법 및 그 장치
KR101066287B1 (ko) 이동통신시스템에서 맵 방식을 이용하여 디코딩을 수행하는 장치 및 방법
Li et al. Efficient implementation of the decoder for tail biting convolutional codes
Bourichi A low power parallel sequential decoder for convolutional codes
JP2006115534A (ja) 誤り訂正符号の復号方法、そのプログラム及びその装置
Zyablov et al. On the error exponent for woven convolutional codes with inner warp
Sathyabama et al. VLSI Implementation of Error Correction Unit for TCM Decoders Using T-Algorithm
Lin et al. Tail Biting Trellis Representation of Codes: Decoding and Construction

Legal Events

Date Code Title Description
EC2A Search report published

Date of ref document: 20070916

Kind code of ref document: A1

FG2A Definitive protection

Ref document number: 2281309B2

Country of ref document: ES