WO2008129102A1 - Method and electronic architecture for optimal sova detection, based on tracing fusion points - Google Patents

Method and electronic architecture for optimal sova detection, based on tracing fusion points Download PDF

Info

Publication number
WO2008129102A1
WO2008129102A1 PCT/ES2008/000260 ES2008000260W WO2008129102A1 WO 2008129102 A1 WO2008129102 A1 WO 2008129102A1 ES 2008000260 W ES2008000260 W ES 2008000260W WO 2008129102 A1 WO2008129102 A1 WO 2008129102A1
Authority
WO
WIPO (PCT)
Prior art keywords
melting points
unit
reliability
update
trellis diagram
Prior art date
Application number
PCT/ES2008/000260
Other languages
Spanish (es)
French (fr)
Inventor
Carlos Arrabal Azzalini
Pablo Ituero Herrero
Carlos Alberto LÓPEZ BARRIO
María Luisa LÓPEZ VALLEJO
Original Assignee
Universidad Politécnica 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 Politécnica de Madrid filed Critical Universidad Politécnica de Madrid
Publication of WO2008129102A1 publication Critical patent/WO2008129102A1/en

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

Definitions

  • the invention falls within the technical sector of Telecommunications Engineering, more specifically in architectures of digital electronic circuits for communications systems, and within communications systems, in the part of architectures for channel coding and decoding.
  • SOVA decoding Soft Output Viterbi Algorithm
  • SOVA decoding Soft Output Viterbi Algorithm
  • J Hagenauer, P Hoeher - Proc. IEEE GLOBECOM, 1989 are of great interest because of their usefulness in channel coding schemes based on concatenated codes, such as Turbo Codes (C. Berrou, A. Glambidar, and P.
  • the current architectures implement this well-known SOVA algorithm, in a non-optimal way by limiting two parameters.
  • the first parameter, known as D is the most probable path tracking depth in a trellis diagram given by the application of the Viterbi algorithm to the sequence of symbols received.
  • the other parameter, known as U is the depth of update of the reliability of the bits of the estimated bit sequence.
  • the current architectures implement a non-optimal SOVA algorithm, by limiting both ' parameters, in order to obtain a reduced and constant latency in the process.
  • most current architectures use concurrent processing schemes, or parallel processing that results in a large switching activity of the f K registers and, therefore, in a high dynamic power consumption.
  • the optimal SOVA detection can be performed, since the architecture together with the procedure present in the invention, manages to avoid the aforementioned commitment relationship of the parameters D and U while maintaining the controlled latency.
  • the proposed architecture achieves the results with a Dynamic power consumption reduced due to the use of recursive architectures when processing information.
  • the HR-SOVA procedure contemplates only the case in which the bit of the surviving path and the bit of the competing path differ; However, the BR-SOVA procedure also contemplates the update in case these bits are the same. Finally, the latency that is achieved with these schemes is D + U. Parameters D and U are set in proportion to the length of the code and with the aim that the response of the decoder in terms of error rate versus the signal to noise ratio is acceptable for the application in question.
  • the present invention proposes an alternative to current schemes, since it does not track the paths by the trellis diagram, but first finds isolated points where the paths converge. These points where roads converge are called melting points. Since this point is where the paths converge, the melting points are actually part of the most likely path in the trellis diagram. These melting points are then used for another unit to update the ability of the bits.
  • the melting point at the moment ifp can be defined as follows: since the trellis diagram is being processed for the moment i, if all the paths are traced backwards from that moment i, it is observed that these converge until in the instant ifp the roads finish converging in the sfp state and from that moment towards previous moments only the surviving path or most probable path is traced.
  • the melting point procedure or algorithm consists of marking, or establishing a brand, each of the possible melting points and processing their evolution. To understand its validity, the reverse logic can be made to the explanation of melting points given in the previous paragraph. If, at the instant the ifp trellis section is processed, the sfp state is marked as a possible melting point, then it is possible, in successive times, to propagate that mark towards the states that connect the trellis diagram resulting from applying the algorithm of Viterbi Finally, when the moment is reached, it is obtained that the brand has spread to all states.
  • the procedure considers as possible melting points, those states that have branches of the branches of the trellis, or if you look at the trellis diagram in the direction of tracing, the points where two or more paths converge.
  • the procedure also contemplates how to process the marks with which the possible melting points are indicated. The process is described below:
  • the melting point procedure has the advantage that it always finds the melting points along the trellis diagram and does not depend on any factor D. On the other hand, the number of records used is limited so that the consumption Dynamic is limited regardless of performance in terms of the error rate set as the objective.
  • a generic architecture that implements the SOVA algorithm is composed of the units: BMU (branch metric unit), ACSU (sum, comparison and selection unit) and the SMU unit (surviving memory unit).
  • the present invention resides in implementing the SMU unit based on two units.
  • the FPU unit melting point unit
  • the RUUFP unit reliability update unit based on melting points).
  • the SMU architecture also consists of a dual-port RAM to store the information that the ACSU unit provides until it can be used.
  • BMU units, and ACSU are conventional, However, the FPU and RUUFP units are new and are the ones described below.
  • the unit has combinational logic that performs the detection, propagation and processing of the marks.
  • the unit detects a melting point, it indicates it with a signal, at the same time as it turns on the output lines, the address and the status code of the melting point.
  • the RUUFP unit collects, in a bank of records, the melting points that the FPU unit delivers.
  • This unit also contains a state machine that implements a control procedure on the melting points in order to begin updating the reliability of the bits at the time possible. Once the state machine has a starting point, it loads that address in a descending counter and launches the update, performed by the recursive update unit.
  • This unit consists of a part that performs the most probable path tracking, and another that performs the reliability update recursively. The part that performs the update recursively uses the trellis topology in the reverse direction to track the competing paths. When two competing roads converge, the one with the minimum delta remains.
  • the delta parameter is the difference in road metrics and is the value used to estimate the reliability of the bits.
  • the origin of the last melting point is compared with the instant the first one was detected. If the origin of the latter is after the detection line of the former, then the reliability is updated and the starting point is the time and state of the last melting point.
  • the RUUFP unit always has to wait until two or more melting points are found for the update to begin. This waiting time is deterministic and is linked to the random appearance of melting points in the trellis diagram. If this timeout results in final latency, the bit rate per second of the system will be reduced. Therefore, to avoid this situation, it is possible to make the RUUFP unit work at a frequency higher than that of the FPU unit.
  • Other advantages offered by the proposed architecture 'in this invention is that by performing the' reliability update recursively and from subsequent moments to previous moments in the trellis diagram, the rule of updating the reliability to the proposal can be extended in the BR-SOVA procedure for RSC codes (recursive and systematic convolutional).
  • the reliability of the competing path can be defined as the Delta corresponding to that time and state. This Delta will then be added to the recursive structure if the bits of the competing path and the surviving path are equal, as indicated by the BR-SOVA procedure.
  • the architecture that performs the SOVA decoding contemplates a RAM 1 if this RAM is sized to store all the Deltas and decision vectors provided by the ACSU unit, then the SOVA algorithm is optimally implemented. If you choose to size this RAM to a smaller size, you can save in area at the cost of implementing a quasi-optimal algorithm. "" Finally, the main advantages of the invention can be concluded: 1. The FPU architecture finds all the melting points along the trellis diagram without this involving a compromise relationship of some parameter.
  • the FPU unit works recursively, which implies that only a limited number of records have activity.
  • the RUUFP unit recursively updates the Ability of the bits and since the beginning and end of the update is carried out based on the melting points, the dependence with the parameter U is eliminated.
  • the RUUFP unit by performing the update recursively, reduces the activity of the records.
  • the BR-SOVA procedure has a reliability update rule when the bits of the competing and surviving paths are different, but in order to perform it it is necessary to add the reliability of the bits of the competing path in the calculation.
  • a RSC binary code branches ⁇ incoming to a state that compete to be the survivor path are always associated bit counter, by Io both / and much Ia reliability of a bit either any way be the difference metric between roads that competed in that state.
  • the proposed approach consists in using the difference of road metrics of a state as an estimator of the reliability of the competing bit.
  • Figure (1) clarifies the definition of melting point. It is an example with a 1/2 rate RSC code.
  • the feedback polynomial is [111] and the generator polynomial is [101].
  • a possible melting point in the s2 state is detected and the IV mark is used to indicate it.
  • the Il mark spreads to the s ⁇ -s1-s3 states.
  • the mark III only propagates into the s2 state, therefore it is released. If it continues to propagate, at most it would coincide with another possible melting point, and by the definition of this, if the two marks turn out to be melting points, the last one is really the melting point. Since the record containing the information of the mark III was released, it is used to store the information related to the mark IV.
  • a possible melting point is detected in the sO state, it is related to the V mark and propagated to the s ⁇ -s2 states.
  • the Il mark spreads to the s ⁇ -s2-s3 states.
  • the IV mark only propagates towards s3, so it is released and its registration is used to store the information related to the V mark.
  • the inputs are the decision vector of the ACSU 1 unit and the current address or time being processed.
  • Combinational logic is responsible for detecting possible melting points, propagating and processing them.
  • the records store the evolution of the brand, the address or instant of time and the status code in which it was detected. When a melting point is found, it is communicated by the detection line and the address register and the status code are selected.
  • Figure 10 shows the general architecture of a RUUFP unit.
  • a queue is observed to collect the information of the melting points; a group of records to store the relevant information of up to three melting points; a descending counter to go through the RAM and select the information previously saved by the ACSU unit.
  • the structure to the right of the RAM memory serves to track the surviving path and the recursive update unit is taught in detail in Figure (11).
  • the output reliability is obtained based on the estimated message bit, which is equivalent to multiplying by +1 or -1 depending on whether the message bit is 1 or 0.
  • Figure 11 shows the tracking architecture of the Deltas of competing roads.
  • the topology that connects the multiplexer pairs with the minimizer blocks corresponds to the trellis diagram of the code, but viewed in reverse.
  • control signals that drive the multiplexers are obtained by comparing the bits of the competing paths with the message bit of the surviving path.
  • a tree minimization is launched for every moment of time, the result of which is obtained after a few clock cycles.
  • Figure 12 shows the general architecture that encompasses the other previous architectures and generalizes the SOVA decoder.
  • Figures 13 and 14 present the alternative to Figures 10 and 11, for an RSC code, to achieve an approximation to the BR-SOVA procedure and therefore improve performance in terms of the decoder's error rate.
  • the Skill of the competitor path is added to the difference of metrics between competitor and survivor to participate in obtaining the Skill resulting from that bit.
  • One embodiment is the scheme proposed in Figures 9, 10, 11 and 12.
  • This scheme serves a code of length three, which is equivalent to four states in the trellis diagram.
  • the connection topology corresponds to the following polynomials: Feedback polynomial [111], generator polynomial [101].
  • the quantification schemes may be as desired and will influence the size of the RAM and the final performance of the system. Since the code is RSC, it is possible to opt for the architectures of figures 13 and 14 instead of the architectures of figures 10 and 11 to make a BR-SOVA approximation with which the error rate can be improved without. incur a considerable hardware overhead.
  • the state machine of the RUUFP unit handles the control signals. First it receives three melting points in the input records. If the last melting point is behind the second detection line, then the update begins. If this does not happen, then check if the third party is behind the first detection line. If it is, then the update begins with the information of the first and third parties. Finally, if none of the above conditions is met, the third point is discarded and another is expected.
  • the above description is an example of implementation of the invention that is not intended to be limiting of its scope.
  • the invention would reduce the power and the bit error rate compared to the previous implementations. This is very interesting for any company that design chips for systems with energy restrictions such as mobile phones or portable equipment.

Abstract

The invention provides an alternative to current Soft Output Viterbi Algorithm (SOVA) decoding schemes, which does not trace the surviving paths through the trellis diagram, but first finds isolated points at which said paths converge. The points at which the paths converge are known as fusion points. Given that this is the point at which the paths converge, the fusion points in reality form part of the most likely path in the trellis diagram. Said fusion points are subsequently used to enable another unit to update the reliability of the bits.

Description

Procedimiento y arquitectura electrónica para Ia detección SOVA óptima basado en el rastreo de puntos de fusión Sector Técnico Procedure and electronic architecture for optimal SOVA detection based on the tracking of melting points Technical Sector
La invención se encuadra en el sector técnico de Ia 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 Ia parte de arquitecturas para Ia codificación y decodificación de canal. Estado de Ia Técnica Actualmente, las arquitecturas que realizan Ia 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 Ia 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 Ia profundidad de rastreo del camino más probable en un diagrama trellis dado por Ia r aplicación del algoritmo de Viterbi a Ia secuencia de símbolos recibida. El otro parámetro, conocido como U, es Ia profundidad de actualización de Ia 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, Ia 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 f K registros y, por Io tanto, en un elevado consumo de potencia dinámica.The invention falls within the technical sector of Telecommunications Engineering, more specifically in architectures of digital electronic circuits for communications systems, and within communications systems, in the part of architectures for channel coding and decoding. State of the Art Currently, the architectures that perform Viterbi decoding with reliability information about the output bits, better known as SOVA decoding (Soft Output Viterbi Algorithm) (A Viterbi algorithm with soft-decision outputs and . Its applications. J Hagenauer, P Hoeher - Proc. IEEE GLOBECOM, 1989), are of great interest because of their usefulness in channel coding schemes based on concatenated codes, such as Turbo Codes (C. Berrou, A. Glavieux, and P. Thitimasjshima Near Shannon Limit Error-Correcting Coding and Decoding: Turbo-Codes. Proceedings of the IEEE International Conference on Communications, May 1993, Geneva, Switzerland). This is because they allow the information transmitted to be recovered with very low error probabilities. The current architectures, implement this well-known SOVA algorithm, in a non-optimal way by limiting two parameters. The first parameter, known as D, is the most probable path tracking depth in a trellis diagram given by the application of the Viterbi algorithm to the sequence of symbols received. The other parameter, known as U, is the depth of update of the reliability of the bits of the estimated bit sequence. The current architectures implement a non-optimal SOVA algorithm, by limiting both ' parameters, in order to obtain a reduced and constant latency in the process. On the other hand, most current architectures use concurrent processing schemes, or parallel processing that results in a large switching activity of the f K registers and, therefore, in a high dynamic power consumption.
Con Ia presente invención se puede realizar Ia detección SOVA óptima, ya que Ia arquitectura junto con el procedimiento presentes en Ia invención, logran evadir Ia relación de compromiso, antes citada, de los parámetros D y U mientras mantienen Ia 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 Ia hora de procesar Ia información.With the present invention, the optimal SOVA detection can be performed, since the architecture together with the procedure present in the invention, manages to avoid the aforementioned commitment relationship of the parameters D and U while maintaining the controlled latency. The proposed architecture achieves the results with a Dynamic power consumption reduced due to the use of recursive architectures when processing information.
Hay varias arquitecturas que implementan Ia decodificación ° SOVA. Las arquitecturas más eficientes en términos de consumo de potencia, realizan Ia decodificación en dos pasos. Primero llevan a cabo una decodificación de Viterbi pura con Ia que estiman el camino mas probable dentro del diagrama trellis. Luego realizan Ia actualización de fiabilidad de los bits asociados a este camino. Al realizar Ia decodificación de Viterbi pura, por cada vector de decisión que entrega Ia 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 Io 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 Ia 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 l-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 Ia actualización para el caso de que estos bits sean ¡guales. Finalmente Ia latencia que se consigue con estos esquemas es de D+U. Los parámetros D y U se fijan en proporción a Ia longitud del código y con el objetivo de que Ia respuesta del decodificador en términos de tasa de error frente a Ia relación señal a ruido sea aceptable para Ia aplicación en cuestión.There are several architectures that implement decoding ° SOVA. The most efficient architectures in terms of power consumption, perform decoding in two steps. First they perform a pure Viterbi decoding with which they estimate the most probable path within the trellis diagram. Then they perform the reliability update of the bits associated with this path. When performing the decoding of pure Viterbi, for each decision vector delivered by the ACSU unit (unit of addition, comparison and selection) in a conventional scheme, a depth D of the diagram, trellis, is traced backwards. Parameter D is large enough to ensure that tracked roads converge on a single surviving path that turns out to be the most likely path. Once this bit sequence is obtained, its reliability can be updated. The current architectures perform this update following the rules of the procedure known as HR-SOVA, with a depth U. There is another update rule known as BR-SOVA (BATTAIL G. Ponderation des symboles decodes par l-agorithem de Viterbi, AnnTelecommun, Jan 1987 Fr.42 (1-2,): 31-38.) Whose performance in terms of error rate is higher and equivalent to a max-log-map decoding (On the Equivalence Between SOVA and max-log-MAP Decodings MPC Fossorier, F Burkert, S Lin, J Hagenauer - IEEE COMMUNICATIONS LETTERS, 1998). The HR-SOVA procedure contemplates only the case in which the bit of the surviving path and the bit of the competing path differ; However, the BR-SOVA procedure also contemplates the update in case these bits are the same. Finally, the latency that is achieved with these schemes is D + U. Parameters D and U are set in proportion to the length of the code and with the aim that the response of the decoder in terms of error rate versus the signal to noise ratio is acceptable for the application in question.
En el documento de patente US6445755B1 se describe una implementación del algoritmo SOVA basada en una arquitectura de dos etapas y utiliza para IaIn patent document US6445755B1 an implementation of the SOVA algorithm based on a two-stage architecture is described and used for Ia
I actualización Ia regla basada en Ia 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, Ia actualización se basa en Ia regla HR-SOVA. Descripción detallada de Ia invenciónI update the rule based on the HR-SOVA decoding. In the patent document US6487694B1 an architecture is described that performs a symbol-to-symbol tracking and also, the update is based on the HR-SOVA rule. Detailed description of the invention
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 Ia Habilidad de los bits.The present invention proposes an alternative to current schemes, since it does not track the paths by the trellis diagram, but first finds isolated points where the paths converge. These points where roads converge are called melting points. Since this point is where the paths converge, the melting points are actually part of the most likely path in the trellis diagram. These melting points are then used for another unit to update the ability of the 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 Ia 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.Next, the melting point procedure or algorithm will be described, but first it is convenient to define what a melting point is. The melting point at the moment ifp can be defined as follows: since the trellis diagram is being processed for the moment i, if all the paths are traced backwards from that moment i, it is observed that these converge until in the instant ifp the roads finish converging in the sfp state and from that moment towards previous moments only the surviving path or most probable path is traced.
Por Io tanto en el instante ifp y estado sfp existe un punto de fusión para el instante de comienzo de rastreo i.Therefore, at the instant ifp and sfp state there is a melting point for the tracing start time 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 sú validez, se puede hacer Ia lógica inversa a Ia 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, eñ 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 Ia marca se ha propagado hacia todos los estados.The melting point procedure or algorithm consists of marking, or establishing a brand, each of the possible melting points and processing their evolution. To understand its validity, the reverse logic can be made to the explanation of melting points given in the previous paragraph. If, at the instant the ifp trellis section is processed, the sfp state is marked as a possible melting point, then it is possible, in successive times, to propagate that mark towards the states that connect the trellis diagram resulting from applying the algorithm of Viterbi Finally, when the moment is reached, it is obtained that the brand has spread to all states.
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.The procedure considers as possible melting points, those states that have branches of the branches of the trellis, or if you look at the trellis diagram in the direction of tracing, the points where two or more paths converge.
El procedimiento también contempla cómo procesar las marcas con las que sé señalan los posibles puntos de fusión. A continuación se describe el proceso:The procedure also contemplates how to process the marks with which the possible melting points are indicated. The process is described below:
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.1. When a possible melting point is detected, its detection instant and its status code are kept in registers. These marks propagate to the states in the next instant of time through the connections of the trellis resulting from applying the Viterbi algorithm. 2. Marks propagate at every moment of time. Concurrently new brands can be detected.
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 Ia información del punto de fusión.3. If a brand spreads to all states, then the origin of that brand is' a melting point. The records associated with that brand contain the melting point information.
4. Si dos marcas, producto de Ia propagación, coinciden, entonces se retiene Ia marca con el instante de detección posterior y se liberan los registros que contienen Ia información de Ia marca con instante de detección anterior. También es totalmente factible el procedimiento contrario; es decir, se retiene Ia marca con el instante de detección anterior y se liberan los registros que contienen Ia información de Ia marca con instante de detección posterior aunque es preferible Ia primera opción ya que los puntos de fusión que se obtienen están Io mas próximo al instante de tiempo que se está procesando.4. If two marks, product of the propagation, coincide, then the mark is retained with the instant of subsequent detection and the records containing the information of the mark with instant of previous detection are released. The opposite procedure is also completely feasible; that is, the mark is retained with the instant of previous detection and the records containing the information of the brand with instant of subsequent detection are released although the first option is preferable since the melting points that are obtained are closest to the instant of time that is being processed.
5. Si una marca se propaga a sólo un estado, entonces los. registros que contienen Ia información de esa marca se liberan, ya que esa marca no podrá volverse en el futuro un punto de fusión.5. If a brand spreads to only one state, then the. Records containing the information of that brand are released, since that brand may not become a melting point in the future.
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.Since the marks are repeated and discarded in accordance with paragraph two above, the number of final registrations used to maintain the computation of marks is limited and therefore the number of records used to represent them is also limited. This number of records will depend on the number of states of the encoder.
El procedimiento de puntos de fusión presenta Ia ventaja de que siempre encuentra los puntos de fusión a ,1o 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 Io que el consumo dinámico se mantiene acotado independientemente del desempeño en términos de tasa de error que se fije como objetivo.The melting point procedure has the advantage that it always finds the melting points along the trellis diagram and does not depend on any factor D. On the other hand, the number of records used is limited so that the consumption Dynamic is limited regardless of performance in terms of the error rate set as the objective.
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 Ia unidad SMU (unidad de memoria sobreviviente). La presente invención reside en ¡mplementar Ia unidad SMU en base a dos unidades. La unidad FPU (unidad de puntos de fusión) y Ia 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 Ia información que Ia 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.A generic architecture that implements the SOVA algorithm is composed of the units: BMU (branch metric unit), ACSU (sum, comparison and selection unit) and the SMU unit (surviving memory unit). The present invention resides in implementing the SMU unit based on two units. The FPU unit (melting point unit) and the RUUFP unit (reliability update unit based on melting points). The SMU architecture also consists of a dual-port RAM to store the information that the ACSU unit provides until it can be used. BMU units, and ACSU are conventional, However, the FPU and RUUFP units are new and are the ones described below.
La unidad FPU implementa el procedimiento de puntos de fusión. Esta unidad consta de un grupo de registros con Ia siguiente finalidad: * 1. Almacenar Ia dirección, o el instante de tiempo de detección de los posibles puntos de fusión.The FPU unit implements the melting point procedure. This unit consists of a group of records with the following purpose: * 1. Store the address, or the instant of detection time of the possible melting points.
2. Almacenar los códigos de estado de los posibles puntos de fusión.2. Store the status codes of the possible melting points.
3. Almacenar el estado de las marcas.3. Store the status of the marks.
Además de los registros, Ia unidad cuenta con lógica combinacional que realiza Ia detección, propagación y procesamiento de las marcas. Cuando Ia unidad detecta un punto de fusión, Io indica con una señal, al mismo tiempo que vuelca en las líneas de salida, Ia dirección y el código de estado del punto de fusión.In addition to the records, the unit has combinational logic that performs the detection, propagation and processing of the marks. When the unit detects a melting point, it indicates it with a signal, at the same time as it turns on the output lines, the address and the status code of the melting point.
La unidad RUUFP, recoge, en un banco de registros, los puntos de fusión que Ie entrega Ia 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 Ia actualización de fiabilidad de los bits en el momento que sea posible. Una vez que Ia máquina de estados tiene un punto de partida, carga esa dirección en un contador descendente y lanza Ia actualización, realizada por Ia unidad de actualización recursiva. Esta unidad, consta de una parte que realiza el rastreo del camino más probable, y otra que realiza Ia actualización de Ia fiabilidad de forma recursiva. La parte que realiza Ia actualización de forma recursiva utiliza Ia topología trellis en sentido inverso para rastrear los caminos competidores. Cuando dos caminos competidores convergen se conserva el que tiene Ia mínima delta. El parámetro delta es Ia diferencia de métrica de caminos y es el valor que se utiliza para estimar Ia fiabilidad de los bits.The RUUFP unit collects, in a bank of records, the melting points that the FPU unit delivers. This unit also contains a state machine that implements a control procedure on the melting points in order to begin updating the reliability of the bits at the time possible. Once the state machine has a starting point, it loads that address in a descending counter and launches the update, performed by the recursive update unit. This unit consists of a part that performs the most probable path tracking, and another that performs the reliability update recursively. The part that performs the update recursively uses the trellis topology in the reverse direction to track the competing paths. When two competing roads converge, the one with the minimum delta remains. The delta parameter is the difference in road metrics and is the value used to estimate the reliability of the bits.
El procedimiento que implementa Ia máquina de estados se detalla a continuación:The procedure that implements the state machine is detailed below:
1. Se, espera a que haya dos puntos de fusión1. Se, wait until there are two melting points
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 Ia línea de detección del primero, entonces se procede a Ia actualización de Ia fiabilidad y el punto de partida es el tiempo y estado del último punto de fusión.2. The origin of the last melting point is compared with the instant the first one was detected. If the origin of the latter is after the detection line of the former, then the reliability is updated and the starting point is the time and state of the last melting point.
3. Si no se cumple Ia 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 Ia línea de detección del segundo, entonces se procede a Ia actualización con el segundo y tercero. Si no se encuentra detrás de Ia línea de detección del segundo, entonces se compara con Ia línea de detección del primero, si se encuentra detrás entonces se procede con Ia actualización.3. If the previous condition is not met, another melting point is expected. Now you have three melting points available. If this third melting point is behind the second detection line, then the update is carried out with the second and third. If it is not behind the second detection line, then it is compared with the first detection line, if it is behind then the update is carried out.
4. Si finalmente el tercer punto de fusión no se encuentra detrás del Ia 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.4. If finally the third melting point is not behind the detection line of the second melting point or the first, then this third melting point is discarded and a new one is expected.
5. Cuando Ia unidad ACSU procesa el último instante de Ia trama de datos, entonces ésta se Io indica por una señal a esta máquina de estados, Ia cual se encarga de comenzar Ia actualización de Habilidad desde el final de Ia trama.5. When the ACSU unit processes the last moment of the data frame, then it is indicated by a signal to this state machine, which is responsible for starting the Skill update from the end of the frame.
La unidad RUUFP siempre tiene que esperar a que se encuentren dos o más puntos de fusión para que Ia actualización comience. Este tiempo de espera rio es determinista y está ligado a Ia aleatoriedad de aparición de los puntos de fusión en el diagrama trellis. Si este tiempo de espera se traduce en latencia final, Ia tasa de bits por segundo del sistema se verá reducida. Por Io tanto, para evitar esta situación, cabβx Ia posibilidad de hacer trabajar a Ia unidad RUUFP a una frecuencia superior a Ia de Ia unidad FPU. Otras de las ventajas que aporta Ia arquitectura propuesta' en esta invención es que al realizar Ia' actualización de fiabilidad de forma recursiva y desde instantes posteriores hacia instantes anteriores en el diagrama trellis, se puede extender Ia regla de actualización de Ia fiabilidad a Ia 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, Ia fiabilidad del camino competidor se puede acotar como Ia Delta correspondiente a ese tiempo y estado. Esta Delta luego se sumará en Ia 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 Ia decodificación SOVA contempla una memoria RAM1 si esta memoria RAM se dimensiona para almacenar todas las Deltas y vectores de decisión que provee Ia 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 Ia invención: 1. La arquitectura FPU encuentra todos los puntos de fusión a Io largo del diagrama trellis sin que esto suponga una relación de compromiso de algún parámetro.The RUUFP unit always has to wait until two or more melting points are found for the update to begin. This waiting time is deterministic and is linked to the random appearance of melting points in the trellis diagram. If this timeout results in final latency, the bit rate per second of the system will be reduced. Therefore, to avoid this situation, it is possible to make the RUUFP unit work at a frequency higher than that of the FPU unit. Other advantages offered by the proposed architecture 'in this invention is that by performing the' reliability update recursively and from subsequent moments to previous moments in the trellis diagram, the rule of updating the reliability to the proposal can be extended in the BR-SOVA procedure for RSC codes (recursive and systematic convolutional). Since, when applying the Viterbi algorithm for the RSC codes, the bits associated with the incoming branches to a state are different, the reliability of the competing path can be defined as the Delta corresponding to that time and state. This Delta will then be added to the recursive structure if the bits of the competing path and the surviving path are equal, as indicated by the BR-SOVA procedure. The architecture that performs the SOVA decoding contemplates a RAM 1 if this RAM is sized to store all the Deltas and decision vectors provided by the ACSU unit, then the SOVA algorithm is optimally implemented. If you choose to size this RAM to a smaller size, you can save in area at the cost of implementing a quasi-optimal algorithm. "" Finally, the main advantages of the invention can be concluded: 1. The FPU architecture finds all the melting points along the trellis diagram without this involving a compromise relationship of some parameter.
2. La unidad FPU trabaja de forma recursiva Io que implica que sólo un número limitado de registros tengan actividad.2. The FPU unit works recursively, which implies that only a limited number of records have activity.
3. La unidad RUUFP actualiza de forma recursiva Ia Habilidad de los bits y dado que el comienzo y final de Ia actualización se realiza en base a los puntos de fusión, se consigue eliminar Ia dependencia con el parámetro U.3. The RUUFP unit recursively updates the Ability of the bits and since the beginning and end of the update is carried out based on the melting points, the dependence with the parameter U is eliminated.
4. La unidad RUUFP, al realizar Ia actualización de forma recursiva, reduce Ia actividad de los registros.4. The RUUFP unit, by performing the update recursively, reduces the activity of the records.
5. Al realizarse Ia 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 Io que se consigue potenciar Ia respuesta de Ia tasa de error del decodificador frente a Ia relación señal a ruido. El procedimiento BR-SOVA tiene una regla de actualización de Ia fiabilidad cuando los bits de los caminos competidores y sobrevivientes son diferentes, pero para poder realizarla es necesario sumar Ia 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 Io tanto/como mucho Ia fiabilidad de un bit cualquiera de cualquier camino será Ia diferencia de métrica entre los caminos que compitieron en ese estado. La aproximación que se propone consiste en utilizar Ia diferencia de métricas de caminos de un estado como estimador de Ia fiabilidad del bit competidor.5. When the update is carried out as the most probable path is tracked, an approach to the BR-SOVA procedure for RSC codes can be implemented, so that the response of the decoder error rate versus the signal-to-signal ratio is enhanced. noise. The BR-SOVA procedure has a reliability update rule when the bits of the competing and surviving paths are different, but in order to perform it it is necessary to add the reliability of the bits of the competing path in the calculation. A RSC binary code, branches ^ incoming to a state that compete to be the survivor path are always associated bit counter, by Io both / and much Ia reliability of a bit either any way be the difference metric between roads that competed in that state. The proposed approach consists in using the difference of road metrics of a state as an estimator of the reliability of the competing bit.
Breve descripción de los dibujos/figurasBrief description of the drawings / figures
La figura (1) aclara Ia 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.Figure (1) clarifies the definition of melting point. It is an example with a 1/2 rate RSC code. The feedback polynomial is [111] and the generator polynomial is [101]. When the paths are traced to previous moments of time, starting from the moment i, it is observed how the roads converge until in the instant ifp and sfp state the last two converge. From that moment to earlier moments the only way is the surviving path or most likely path.
-J_as 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 Ia referencia de las marcas, mientras que el resto de figuras enseña Ia evolución del procedimiento, aplicado a un código RSC como el del párrafo anterior.-J_ Figures 2 to 8 are intended to give a more concrete view of the melting point procedure. Figure 2 indicates the reference of the marks, while the rest of the figures show the evolution of the procedure, applied to an RSC code as in the previous paragraph.
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 Ia 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 sO, se detecta un posible punto de fusión, ya que se observa una bifurcación.It starts at instant zero. This stage is processed according to the Viterbi algorithm and the branches shown in Figure 3 are obtained. The dashed lines indicate a transition caused by a message bit with value 1 and solid lines indicate a transition caused by a message bit with value 0. At the instant zero, state sO, a possible melting point is detected, since a bifurcation is observed.
Se conservan el instante y el código de estado de detección y se utiliza Ia marca I para representar este posible punto de fusión. Esta marca se propaga a los estados sO, s2 en el instante de tiempo i=1.The instant and the detection status code are preserved and the I mark is used to represent this possible melting point. This mark propagates to the states sO, s2 at the moment of time 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 sO, s2, los cuales se marcan con Il y III respectivamente. Las marcas Il y III se propagan a los estados sθ-s2, s1-s3 respectivamente. La marca I se propaga hacia todos los estados en el tiempo i=2. Por Io tanto Ia 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 Io largo del instante i=2 para indicar el momento de detección del punto de fusión. La información relativa a las marcas Il 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 Ia marca IV para indicarlo. Esta marca se propaga hacia los estados s1-s3 en el instante i=3. La marca Il se propaga hacia los estados sθ-s1-s3. La marca III sólo se propaga hacia el estado s2, por Io tanto es liberada. Si se continuara propagando, a Io sumo coincidiría con otro posible punto de fusión, y por Ia definición de éste, si las dos marcas resultan ser puntos de fusión Ia última es realmente el punto de fusión. Dado que se liberó el registro que contenía Ia información de Ia marca III, éste se utiliza para almacenar Ia información relativa a Ia marca IV.It advances in time and proceeds with the instant of time i = 1 (figure 4). For this instant of time two possible melting points are detected in the states sO, s2, which are marked with Il and III respectively. The Il and III marks propagate to the states sθ-s2, s1-s3 respectively. The I mark is propagated to all states at the time i = 2. Therefore, the I mark is a melting point. This melting point is indicated and the record containing your information is released. Note that a vertical line has been drawn along the instant i = 2 to indicate the time of detection of the melting point. The information regarding the Il and III marks is stored in the released register and in a new register. The time i = 2 is continued (figure 5). A possible melting point in the s2 state is detected and the IV mark is used to indicate it. This mark propagates into the s1-s3 states at the moment i = 3. The Il mark spreads to the sθ-s1-s3 states. The mark III only propagates into the s2 state, therefore it is released. If it continues to propagate, at most it would coincide with another possible melting point, and by the definition of this, if the two marks turn out to be melting points, the last one is really the melting point. Since the record containing the information of the mark III was released, it is used to store the information related to the mark IV.
Se continúa con el tiempo i=3 (figura 6). Se detecta un posible punto de fusión en el estado sO, se relaciona con Ia marca V y se propaga hacia los estados sθ-s2. La marca Il se propaga hacia los estados sθ-s2-s3. La marca IV sólo se propaga hacia s3, por Io que es liberada y su registro se utiliza para almacenar Ia información relativa a Ia marca V.The time i = 3 is continued (figure 6). A possible melting point is detected in the sO state, it is related to the V mark and propagated to the sθ-s2 states. The Il mark spreads to the sθ-s2-s3 states. The IV mark only propagates towards s3, so it is released and its registration is used to store the information related to the V mark.
Se continúa con el instante i=4 (figura 7). Se detectan dos posibles puntos de fusión en los estados sO y s2. Se marcan con Vl y VII y se propagan hacia los estados sθ-s2, s1-s3, respectivamente. Tanto Ia marca Il como Ia marca V se propagan a todos los estados en i=5 (figura 8). Sin embargo sólo Ia .marca V es el punto de fusión, ya que su origen es posterior al origen de Ia marca II. Se indica un punto de fusión con Ia información relativa a Ia marca V en i=3, estado sO y se traza una línea vertical en el momento de detección. Los registros de Il y V se liberan y se utilizan para almacenar Ia información relativa a Vl y VII.Continue with the instant i = 4 (figure 7). Two possible melting points are detected in the sO and s2 states. They are marked with Vl and VII and spread to the states sθ-s2, s1-s3, respectively. Both the Il mark and the V mark are propagated to all states at i = 5 (Figure 8). However, only the mark V is the melting point, since its origin is later than the origin of the mark II. A melting point is indicated with the information related to the V mark at i = 3, state sO and a vertical line is drawn at the moment of detection. The registers of Il and V are released and used to store the information related to Vl and 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 Vl y VII hacia los estados s2-s3, sθ-s1 , respectivamente. En Ia figura 9 se presenta un ejemplo de arquitectura general para implementar Ia unidad FPU para un código RSC de tasa 1/2 y longitud de código K=3, Io que equivale a tener en el diagrama trellis 4 estados. Las entradas son el vector de decisión de Ia unidad ACSU1 y Ia 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 Ia evolución de Ia marca, Ia 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 Ia línea de detección y se selecciona el registro de dirección y el código de estado.It continues at the moment i = 5. At this time no possible melting point is detected. There is only propagation of the Vl and VII marks to the states s2-s3, sθ-s1, respectively. Figure 9 shows an example of a general architecture to implement the FPU unit for an RSC code of rate 1/2 and length of code K = 3, which is equivalent to having 4 states in the trellis diagram. The inputs are the decision vector of the ACSU 1 unit and the current address or time being processed. Combinational logic is responsible for detecting possible melting points, propagating and processing them. The records store the evolution of the brand, the address or instant of time and the status code in which it was detected. When a melting point is found, it is communicated by the detection line and the address register and the status code are selected.
En Ia figura 10 se muestra Ia arquitectura general de una unidad RUUFP. En un panorama general de izquierda a derecha se observa una cola para recoger Ia información de los puntos de fusión; un grupo de registros para almacenar Ia información relevante de hasta tres puntos de fusión; un contador descendente para ir recorriendo Ia memoria RAM e ir seleccionando Ia información previamente guardada por Ia unidad ACSU. La estructura a Ia derecha de Ia memoria RAM sirve para rastrear el camino sobreviviente y Ia unidad de actualización recursiva se enseña en detalle en Ia figura (11 ). Finalmente se obtiene Ia fiabilidad de salida en función del bit mensaje estimado, Io que equivale a multiplicar por +1 ó -1 dependiendo de si el de bit mensaje es 1 ó 0.Figure 10 shows the general architecture of a RUUFP unit. In a general overview from left to right, a queue is observed to collect the information of the melting points; a group of records to store the relevant information of up to three melting points; a descending counter to go through the RAM and select the information previously saved by the ACSU unit. The structure to the right of the RAM memory serves to track the surviving path and the recursive update unit is taught in detail in Figure (11). Finally, the output reliability is obtained based on the estimated message bit, which is equivalent to multiplying by +1 or -1 depending on whether the message bit is 1 or 0.
En Ia figura 11 se presenta Ia 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.Figure 11 shows the tracking architecture of the Deltas of competing roads. The topology that connects the multiplexer pairs with the minimizer blocks corresponds to the trellis diagram of the code, but viewed in reverse.
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.The control signals that drive the multiplexers are obtained by comparing the bits of the competing paths with the message bit of the surviving path. A tree minimization is launched for every moment of time, the result of which is obtained after a few clock cycles.
La figura 12 muestra Ia arquitectura general que engloba las otras arquitecturas anteriores y generaliza al decodificador SOVA. Por último, las figuras 13 y 14 presentan Ia alternativa a las figuras 10 y 11 , para un código RSC, para conseguir una aproximación al procedimiento BR-SOVA y por Io 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, Ia Habilidad del camino competidor se suma a Ia diferencia de métricas entre competidor y sobreviviente para participar en Ia obtención de Ia Habilidad resultante de ese bit. Modos de realización deja invenciónFigure 12 shows the general architecture that encompasses the other previous architectures and generalizes the SOVA decoder. Finally, Figures 13 and 14 present the alternative to Figures 10 and 11, for an RSC code, to achieve an approximation to the BR-SOVA procedure and therefore improve performance in terms of the decoder's error rate. In this case, if the bits of the competitor and survivor path are equal, the Skill of the competitor path is added to the difference of metrics between competitor and survivor to participate in obtaining the Skill resulting from that bit. Modes of embodiment leaves invention
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, Io 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 Ia 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 Ia que se consigue mejorar Ia tasa de error sin. incurrir en una sobrecarga de hardware considerable.One embodiment is the scheme proposed in Figures 9, 10, 11 and 12. This scheme serves a code of length three, which is equivalent to four states in the trellis diagram. The connection topology corresponds to the following polynomials: Feedback polynomial [111], generator polynomial [101]. The quantification schemes may be as desired and will influence the size of the RAM and the final performance of the system. Since the code is RSC, it is possible to opt for the architectures of figures 13 and 14 instead of the architectures of figures 10 and 11 to make a BR-SOVA approximation with which the error rate can be improved without. incur a considerable hardware overhead.
La máquina de estados de Ia 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 Ia línea de detección del segundo, entonces comienza Ia actualización. Si esto no sucede, entonces comprueba si el tercero está detrás de Ia, línea de detección del primero. Si Io está, entonces comienza Ia actualización con Ia 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 Ia invención que no pretende ser limitativo de su alcance.The state machine of the RUUFP unit handles the control signals. First it receives three melting points in the input records. If the last melting point is behind the second detection line, then the update begins. If this does not happen, then check if the third party is behind the first detection line. If it is, then the update begins with the information of the first and third parties. Finally, if none of the above conditions is met, the third point is discarded and another is expected. The above description is an example of implementation of the invention that is not intended to be limiting of its scope.
Aplicación IndustrialIndustrial Application
La invención reduciría Ia potencia y Ia 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. The invention would reduce the power and the bit error rate compared to the previous implementations. This is very interesting for any company that design chips for systems with energy restrictions such as mobile phones or portable equipment.

Claims

Reivindicaciones Claims
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 siguiente1. New procedure to find points of convergence of the tracks traced from a certain moment in the trellis diagram and that allows to implement an optimal SOVA decoding, characterized by performing the following
5 proceso para cada instante en el diagrama trellis:5 process for each moment in the trellis diagram:
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, 0 - Conservar en registros el instante de detección y el código de estado de los posibles puntos de fusión detectados, con el fin de realizar su posterior seguimiento,Detect the possible melting points that are defined as those states that have branches of the branches of the trellis, or if you look at the trellis diagram in the direction of tracing, the points where two or more possible paths converge, 0 - Keep in registers the instant of detection and the status code of the possible melting points detected, in order to carry out subsequent monitoring,
Propagar los posibles puntos de fusión hacia los posteriores estados según el diagrama trellis, 5 - Propagar los posibles puntos de fusión detectados anteriormente hacia los posteriores estados según el diagrama trellis,Propagate the possible melting points towards the subsequent states according to the trellis diagram, 5 - Propagate the possible melting points previously detected towards the subsequent states according to the trellis diagram,
Eliminar las marcas que se descarten como puntos de fusión de acuerdo a unas reglas de descarte,Eliminate brands that are discarded as melting points according to rules of discard,
Detectar puntos de fusión cuando una marca se ha propagado a todos los0 estados de un instante temporal del diagrama trellis.Detect melting points when a brand has propagated to all 0 states of a temporary moment of the trellis diagram.
2. Procedimiento según reivindicación 1 , caracterizado por emplear las siguientes reglas de descarte para las marcas: x - En el caso en que, producto de Ia propagación, se obtengan marcas2. Method according to claim 1, characterized by using the following rules of discard for the marks: x - In the event that, as a result of the propagation, marks are obtained
, idénticas, descartar todas las que tienen el origen temporal anterior o,5 alternativamente, descartar todas las que tienen el origen temporal posterior. Descartar las marcas que se propagan a sólo un estado., identical, discard all those that have the previous temporal origin or, alternatively, discard all those that have the posterior temporal origin. Discard marks that propagate to only one state.
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 de0 comparación y selección convencionaL (ACSU) y una unidad de memoria sobreviviente (SMU) que comprende los siguientes elementos:3. Electronic architecture for implementing the method according to claims 1 and 2, which has a conventional branch metric unit (BMU), a conventional comparison and selection unit (ACSU) and a surviving memory unit (SMU) comprising the following elements:
Una unidad de puntos de fusión (FPU), una unidad de actualización de fiabilidad basada en puntos de fusiónA melting point unit (FPU), a reliability update unit based on melting points
(RUUFP) y 5 - una memoria RAM. (RUUFP) and 5 - a RAM.
4. Arquitectura electrónica según Ia reivindicación 3, caracterizada porque Ia unidad FPU se implementa con una máquina de estados genérica, donde ' Ia etapa combinacional está compuesta por Ia lógica que detecta las marcas, Ia lógica que las propaga y Ia lógica que las procesa y Ia memoria de Ia máquina de estados está compuesta por los registros que almacenan las marcas, los códigos de estados origen, y las direcciones origen.4. Electronic architecture according to claim 3, characterized in that the FPU unit is implemented with a generic state machine, wherein the combinational stage is composed of the logic that detects the marks, the logic that propagates them and the logic that processes them and The memory of the state machine is composed of the registers that store the marks, the origin state codes, and the origin addresses.
5. Arquitectura electrónica según reivindicación 3, caracterizada porque Ia 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 Ia fiabilidad de los bits que consta de una parte que realiza el rastreo del camino más probable, y otra que realiza Ia actualización de Ia fiabilidad de forma recursiva * utilizando Ia topología de trellis en sentido inverso para el rastreo de caminos competidores.5. Electronic architecture according to claim 3, characterized in that the RUUFP unit is implemented with the following elements: a bank of registers to receive the melting points, - a state machine to control the process on the melting points, - a unit of recursive update to obtain the reliability of the bits that consists of a part that performs the most probable path tracking, and another that performs the update of the reliability recursively * using the trellis topology in the reverse direction for the tracking of competing paths .
6. Arquitectura electrónica según reivindicación 5 para el caso de que se empleen códigos RSC binarios caracterizada por incluir Ia aproximación hacia Ia decodificación BR-SOVA en Ia actualización de fiabilidad que se basa en sumar al / cálculo del mínimo de Ia diferencia de métricas "de caminos, Ia fiabilidad del bit competidor que se estima con Ia diferencia de métricas de caminos en el instante de tiempo que se está procesando. 6. Electronic architecture according to claim 5 in the case that binary RSC codes are used characterized by including the approximation towards the BR-SOVA decoding in the reliability update based on adding / calculating the minimum of the difference of metrics "of roads, the reliability of the competing bit that is estimated with the difference of road metrics in the instant of time that is being processed.
PCT/ES2008/000260 2007-04-19 2008-04-17 Method and electronic architecture for optimal sova detection, based on tracing fusion points WO2008129102A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
ESP200701056 2007-04-19
ES200701056A ES2281309B2 (en) 2007-04-19 2007-04-19 PROCEDURE AND ELECTRONIC ARCHITECTURE FOR OPTIMABASED SOVA DETECTION IN THE TRACKING OF FUSION POINTS.

Publications (1)

Publication Number Publication Date
WO2008129102A1 true WO2008129102A1 (en) 2008-10-30

Family

ID=38458355

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/ES2008/000260 WO2008129102A1 (en) 2007-04-19 2008-04-17 Method and electronic architecture for optimal sova detection, based on tracing fusion points

Country Status (2)

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

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5181209A (en) * 1989-04-03 1993-01-19 Deutsche Forschungsanstalt Fur Luft- Und Raumfahrt E.V. Method for generalizing the viterbi algorithm and devices for executing the method
EP0606724A1 (en) * 1993-01-14 1994-07-20 AT&T Corp. Extended list output and soft symbol output viterbi algorithms
US20030110437A1 (en) * 2001-12-08 2003-06-12 Sooyoung Kim Method for iteratively decoding block turbo codes and recording medium for storing iterative decoding program of block turbo codes
US7031406B1 (en) * 1999-08-09 2006-04-18 Nortel Networks Limited Information processing using a soft output Viterbi algorithm
US7103831B1 (en) * 2003-01-22 2006-09-05 Conexant Systems, Inc. Burst reliability and error locator for trellis codes

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5181209A (en) * 1989-04-03 1993-01-19 Deutsche Forschungsanstalt Fur Luft- Und Raumfahrt E.V. Method for generalizing the viterbi algorithm and devices for executing the method
EP0606724A1 (en) * 1993-01-14 1994-07-20 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
US20030110437A1 (en) * 2001-12-08 2003-06-12 Sooyoung Kim Method for iteratively decoding block turbo codes and recording medium for storing iterative decoding program of block turbo codes
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 (en) 2007-09-16
ES2281309B2 (en) 2008-03-01

Similar Documents

Publication Publication Date Title
US6813742B2 (en) High speed turbo codes decoder for 3G using pipelined SISO log-map decoders architecture
KR100761306B1 (en) Decoding method and device
US7849377B2 (en) SISO decoder with sub-block processing and sub-block based stopping criterion
ES2301492T3 (en) TURBO DECODING WITH SOFT OUTPUT VITERBI DECODER.
CN1808912B (en) Error correction decoder
US7246298B2 (en) Unified viterbi/turbo decoder for mobile communication systems
US20030084398A1 (en) High speed turbo codes decoder for 3g using pipelined siso log-map decoders architecture
Argon et al. A parallel decoder for low latency decoding of turbo product codes
US8904266B2 (en) Multi-standard viterbi processor
WO2006116066A3 (en) Method for decoding tail-biting convolutional codes
JP2007194684A (en) Decoding apparatus, decoding method, and receiver
ES2281309B2 (en) PROCEDURE AND ELECTRONIC ARCHITECTURE FOR OPTIMABASED SOVA DETECTION IN THE TRACKING OF FUSION POINTS.
EP1376879A1 (en) Turbo decoder and turbo decoding method and storage medium where the method is stored
JPH07254861A (en) Viterbi decoding method and convolutional code encoding and transmission method
Lin et al. High-throughput 12-mode CTC decoder for WiMAX standard
Gautham et al. Common architecture for decoding turbo and LDPC codes
JP3892471B2 (en) Decryption method
Meghana et al. Comparitive analysis of channel coding using BPSK modulation
Annauth et al. Neural network decoding of turbo codes
Bourichi A low power parallel sequential decoder for convolutional codes
Bailey et al. SLATE: A Combined Architecture for LDPC and Turbo Decoding
Yeon et al. High-performance iterative BCH decoder architecture for 100 Gb/s optical communications
Yang et al. Iterative joint source channel decoding in wireless sensor networks
KR19990017546A (en) Decoder of turbo encoder
Sathyabama et al. VLSI Implementation of Error Correction Unit for TCM Decoders Using T-Algorithm

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08761507

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08761507

Country of ref document: EP

Kind code of ref document: A1