WO2006108768A1 - Procédé et dispositif de décodage d'un code à longueur variable prenant en compte une information de probabilité a priori - Google Patents

Procédé et dispositif de décodage d'un code à longueur variable prenant en compte une information de probabilité a priori Download PDF

Info

Publication number
WO2006108768A1
WO2006108768A1 PCT/EP2006/061237 EP2006061237W WO2006108768A1 WO 2006108768 A1 WO2006108768 A1 WO 2006108768A1 EP 2006061237 W EP2006061237 W EP 2006061237W WO 2006108768 A1 WO2006108768 A1 WO 2006108768A1
Authority
WO
WIPO (PCT)
Prior art keywords
decoding
priori
information
source
probability information
Prior art date
Application number
PCT/EP2006/061237
Other languages
English (en)
Inventor
Pierre Siohan
Valérian MANNONI
Original Assignee
France Telecom
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 France Telecom filed Critical France Telecom
Publication of WO2006108768A1 publication Critical patent/WO2006108768A1/fr

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/6312Error control coding in combination with data compression
    • H03M13/6318Error control coding in combination with data compression using variable length codes

Definitions

  • Method and device for decoding a variable length code taking into account a priori probability information.
  • the field of the invention is that of the transmission, or broadcasting, of digital data signals. More precisely, the invention relates to the decoding of transmitted digital signals, and in particular to source decoding, especially when these signals are transmitted in disturbed channels.
  • variable length code VLC
  • FSM finite state machine
  • the digital communication systems commonly used today rely on coding systems implementing on the one hand a source coding and on the other hand a channel coding.
  • these two codings are optimized separately.
  • the purpose of the source encoder is to minimize the redundancy of the source signal to be transmitted. Then, to protect this information from disturbances inherent to any transmission, the channel coder introduces redundancy, in a controlled manner.
  • the invention can notably be applied to the decoding of video signals transmitted in wired or wireless channels.
  • the invention can be applied to the transmission of MPEG4 video signals in noisy channels of the WLAN (wireless local area network) type where the channel coder would be of the LDPC ("Low-Density Parity Check" type, for "control”. low density parity "), as could be the case under 802.16.
  • VLC codes From the point of view of source coding, VLC codes generally leave redundancy in the bitstream they produce. It has been proposed to perform a source-channel joint decoding (DCSC). The goal of the DCSC is therefore to exploit this residual redundancy in order to improve the performance of the decoder by proposing different alternatives compared to a conventional tandem decoder.
  • DCSC source-channel joint decoding
  • this DCSC scheme uses the "turbo" principle between the channel decoder and the source decoder, namely that a decoding iteration is composed of a channel decoding iteration (SISO, for "Soft” Input Soft Output “, or” soft input soft output ") followed by a source decoding iteration (SISO) with exchange of extrinsic information between these two decoders;
  • SISO channel decoding iteration
  • SISO Source decoding iteration
  • source-controlled source channel source decoding this decoding method consists in decoding the channel code by inserting the binary prior probabilities calculated from the structure of the CLV and the probabilities of occurrences of each source symbol.
  • This type of DCSC decoder has been developed only for channel codes defined by trellises. 3. Disadvantages of these techniques of the prior art
  • the methods of the first type are very complex. Indeed, if the use of the turbo principle reduces complexity by a ratio to an optimal system, the operating cost is still very important, and therefore difficult to implement.
  • a disadvantage of the second type method is that it is usable only for error correcting codes defined by trellises. However, not all error-correcting codes are represented by trellises, and in particular among them certain pseudo-random codes presenting excellent performances, called Tanner's codes (such as the LDPC codes, the Tanner codes " Tail-Biting ", ). For this family of code, it is not possible, with the help of current knowledge, to perform channel decoding controlled by the source. 4. Objectives of the invention
  • an object of the invention is to provide a technique for decoding data encoded by a variable length code which can be represented in the form of a finite number state machine (type b code) which is more efficient as known techniques.
  • an object of the invention is to provide such a decoding technique adapted to the case where the channel code is a Tanner code and where the source is coded by a CLV.
  • the invention also aims to provide such a technique, to achieve, or at least to approach, the optimal decoding performance in the sense of MAP (maximum likelihood a posteriori).
  • Another object of the invention is to provide such a technique, having a realization complexity acceptable for consumer reception systems, for example a mobile receiving a video signal. 5.
  • Main features of the invention are achieved by means of a method of decoding received digital data corresponding to transmitted digital data coded to the using a variable length code represented by a finite number state tree, associating a separate source symbol with each of the codewords of an alphabet.
  • this method comprises the following steps: determining, for at least one binary element constituting each of said symbols, a probability information a priori of the value of said binary element, as a function of at least one preceding bit and / or following and said variable length code; estimating the value of said binary element, taking into account said prior probability information.
  • the estimate is optimized, since not only the received signal but also the source is taken into account.
  • the quality of the decoding can approach the optimal performances, in a relatively simple and effective way. It is particularly advantageous to take into account both the past and the future (considering an instant t), always to improve the decoding efficiency.
  • said step of determining a priori probability information takes into account probabilities of occurrences of said source symbols, said probabilities being known and / or estimated.
  • each of said symbols is associated with information bits and redundancy bits, and a priori probability information is determined for each bit information element.
  • said step of determining an a priori probability information uses likelihood information.
  • the method of the invention implements a decoding graph comprising data nodes and functional nodes, and comprises at least one iteration of the following passes: a data pass, in which a data node q delivers a first output message in the following form:
  • K is the number of information bits
  • V (n) is the set of functional node indices
  • a control pass in which a functional node delivers a second output message M ⁇ function of the messages from the data nodes.
  • the final decision on the binary value of each of said data nodes may be: kjq - 1 - g grK ⁇ , v VL / -, i, ..., N ⁇ v.
  • the criterion for stopping said iterations belongs to the group comprising:
  • a thresholding step applied to said a priori probability information is implemented.
  • said thresholding step limits in absolute value a log-ratio a priori calculated as follows:
  • K z is the maximum value that can be reached by the log a priori absolute value for a predetermined maximum level of performance degradation
  • b q is the binary value of the data node of index q.
  • the invention also relates to digital data decoding devices implementing the method described above. Such a device comprises in particular:
  • the invention also relates to computer programs implementing the decoding method presented above. 6. List of figures
  • FIG. 1 is a simplified flow chart of the principle of iterative LDPC decoding, a data pass and a control pass;
  • FIG. 2 schematically illustrates a source-channel joint decoder according to the invention
  • Fig. 3 shows an exemplary tree of a Huffman CLV code
  • FIG. 4 illustrates the calculation of a generalized binary probability
  • FIG. 5 is an example of a factor graph of the decoder of FIG. 2, taking into account a priori binary probabilities of the source;
  • FIG. 6 illustrates, for a source without memory, the mechanism for calculating the prior probabilities for the decoder of FIG. 2;
  • FIG. 7 shows the general structure of a decoding device according to the invention. 7. Description of a preferred embodiment
  • the invention therefore proposes a new technique for decoding data encoded using a variable length code (VLC) which can be represented in the form of a finite number state machine.
  • VLC variable length code
  • This technique offers the possibility of implementing the decoding of source-controlled Tanner codes, and proposes a method whose complexity of implementation is relatively low, especially compared to the methods of the state of the prior art of category a. ).
  • the coding used in the context of the invention is known per se.
  • the main stages of implementation of this one are the following ones:
  • variable length code which can be represented by a machine with a finite number of states (for example of the Huffman type);
  • the resulting bit sequence is then protected by a channel code of the Tanner code family (for example, an LDPC code where the constraint corresponds to a set of parity check equations, or a Tanner code "Tail-Biting Where the constraint is realized by a set of small associated convolutional codes, ).
  • a channel code of the Tanner code family for example, an LDPC code where the constraint corresponds to a set of parity check equations, or a Tanner code "Tail-Biting Where the constraint is realized by a set of small associated convolutional codes, .
  • the encoded data is then transmitted over a channel that can introduce distortions.
  • FIG. 1 The decoding principle according to the invention is illustrated in FIG. 1. It comprises the following operations:
  • an iterative decoding of the channel code is performed.
  • This decoding of the data is done taking into account the source (decoding channel controlled by the source), that is to say by exploiting the statistics of this one as well as its structure.
  • This information from the source is injected as a priori binary probabilities, or likelihood ratios, which are calculated from the probabilities of occurrences of the symbols of the source (assumed known or estimated at the reception).
  • An iteration 11 of this source-controlled channel decoding is sequenced in two steps, namely: ⁇ a first step 111, called data pass, corresponds to an update of the messages (log likelihood ratio) when they pass through a data node:
  • a message coming out of a data node (representing an information bit) and heading towards a functional node is the sum of the log-likelihood ratio observed at the output of the channel, messages originating from the functional nodes connected to the nodes of processed data except the one where the message is being processed, and the log-report a priori based on the following characteristics of the source: its statistics and its structure;
  • the log-ratio a priori of the source injected at the current iteration will be a function of the code word decided at the previous iteration. This approach is new. Indeed, in the codes of the prior art the information is injected only in the current iteration, without having to decide the code word. This log-ratio a priori injected is therefore a function of the statistics of the source, the structure of the source encoder and is calculated taking into account the preceding bits and following the current bit, as is detailed later;
  • control pass corresponds to the update of messages when they pass through a control node.
  • a thresholding of the log- source a priori reports that are injected during the data pass is provided (as explained later).
  • the bits decoded by the channel decoder are then decoded by a so-called "hard” source decoder, that is to say that the bit sequence coming from the channel decoder is transformed into a sequence of source symbols according to the VLC coding table.
  • the communication chain of an exemplary implementation of the invention is shown in FIG. 2.
  • the sequence X n is transmitted through a channel 23 BABG (white additive noise) Gaussian).
  • BABG white additive noise
  • the received signal y n is then sent to the LDPC decoder 24 which is added according to the inventor additional information corresponding to the prior binary probabilities 25 from the source encoder.
  • the estimated symbol sequence C k is finally obtained after the source "hard" decoding 26.
  • Figure 7 schematically illustrates a decoder according to the invention.
  • This encoder comprises processing means 71, receiving coefficients to decoding 72, and delivering decoded data 73, taking into account the probabilities a priori.
  • the decoding method is stored in a program memory 74.
  • a random access memory 75 stores the intermediate data and reconstruction data of the original signal.
  • the joint source-channel decoder of the invention is in the form of a concatenation of a channel decoder, of which the prior binary probabilities originating from the source coder are injected with a "hard" source decoder.
  • the binary prior probabilities injected during the channel decoding do not correspond to "static" probabilities of appearances of "0" or “1” on the whole block but have “dynamic” probabilities computed locally on each of the bits. depending on the structure of the source. It is supposed that the probabilities of occurrences of the symbols are perfectly known, knowing that they can be estimated by a robust turbo estimator as described in the document FR-0450593. To present the advantage of exploiting this knowledge when decoding the LDPC codes, it is first necessary to derive the probabilities of the source symbols at the bit level so that they can be associated with the likelihoods of the channel in the context of a decoding of LDPC codes. In this new context, in order to make better use of prior information, the calculation of probabilities as proposed in the document "Joint Source-Channel Decoding of Variable Length Codes for Convolutional Codes and Turbo Codes", IEEE
  • the Huffman codes can be represented by a tree with a number of nodes N 1 finite as represented on the figure 3.
  • the probability of the symbol d and that of the bit d (f) will be noted respectively P ⁇ d) and P (d (j) ⁇
  • the probability of each branch of the tree representing the code CLV can be expressed using the probabilities of the source symbols and by exploiting the structure of the tree If only the causal information is used, ie the binary sequence preceding the treated bit, the probability of each branch in the case of a source without memory can express itself by the following relation: P ⁇ d ⁇ k) ⁇ d ⁇ ), ..., d ⁇ k- ⁇ ))
  • index j can be, indifferently, the index of any source symbol provided that this symbol is reachable by the binary sequence
  • N bnc denotes the number of bits constituting the "non-causal" binary sequence.
  • Figure 4 illustrates the calculation of this probability a priori binary. widespread.
  • the symbols of the source have a 1st order Marko relation
  • the calculations of the different binary probabilities must be reviewed by considering each symbol as a possible previous symbol.
  • equation (1) defining the a priori binary probability in the causal case develops as follows:
  • the factor graph of the source-controlled LDPC decoder is shown in FIG. 5.
  • the resulting decoding algorithm is therefore based on a belief propagation algorithm as described in the Kschischang document already cited, inside. of which the step of updating the messages during their passage through a data node (ie the data pass) has been modified, and this only for the information bits 51 which are the only ones to contain information coming from the source (unlike the redundancy bits 52).
  • we inject (54) the binary prior probabilities of the source is written as follows:
  • the estimation of the bits at the previous iteration is indicated inside each data node.
  • variable length coding A weakness of variable length coding is that it potentially presents a risk of error propagation.
  • the bit stream generated by the source is divided into packets.
  • DCSC methods where the channel decoder is controlled by the source therefore assume packetization with, in the case of LDPC codes, blocks the size of a code word. As soon as an error occurs in the estimate of the information bits, the calculation of the log-ratios a priori becomes erroneous, thereby injecting bad source information until a possible resynchronization within the block.
  • K z represents the maximum value that the log-ratio can reach a priori in absolute value in order not to generate too much performance degradation.
  • the choice of this coefficient can be made experimentally, depending on the chosen source and possibly the signal-to-noise ratio.
  • This prior log-ratio thresholding (or a priori probabilities) of the source injected during the source-controlled channel decoding can generally be applied to any family of error-correcting codes and this, whether in a context of source coding performed by a CLV or by a fixed length code (CLF).
  • CLF fixed length code
  • K p is here a probability of thresholding between 0 and 0.5.

Landscapes

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

Abstract

Procédé de décodage de données numériques reçues correspondant à des données numériques émises codées à l'aide d'un code à longueur variable représenté par un arbre à nombre d'états fini, associant un symbole source distinct à chacun des mots de code d'un alphabet, comprenant les étapes suivantes : - détermination (54), pour au moins un élément binaire constituant chacun desdits symboles, d'une information de probabilité a priori de la valeur dudit élément binaire, en fonction d'au moins un élément binaire précédent et/ou suivant et dudit code à longueur variable ; - estimation (53) de la valeur dudit élément binaire, tenant compte de ladite information de probabilité a priori.

Description

Procédé et dispositif de décodage d'un code à longueur variable prenant en compte une information de probabilité a priori.
1. Domaine de l'invention
Le domaine de l'invention est celui de la transmission, ou de la diffusion, de signaux de données numériques. Plus précisément, l'invention concerne le décodage de signaux numériques transmis, et en particulier le décodage de source, notamment lorsque ces signaux sont transmis dans des canaux perturbés.
Plus précisément encore, l'invention s'applique au décodage de données codées à l'aide d'un codage de source mettant en œuvre des codes à longueur variable (VLC, en anglais : « Variable Length Code ») représentables sous forme de machine à nombre fini d'états (en anglais « Finite State Machine », FSM) par exemple les codes de Huffman,...
Les systèmes de communication numérique couramment utilisés aujourd'hui s'appuient sur des systèmes de codage mettant en œuvre d'une part un codage de source et d'autre part un codage de canal. Classiquement, ces deux codages sont optimisés séparément. Le codeur de source a pour but de réduire au maximum la redondance du signal source à transmettre. Ensuite, pour protéger cette information des perturbations inhérentes à toute transmission, le codeur de canal introduit de la redondance, de manière contrôlée. L'invention peu notamment s'appliquer au décodage de signaux vidéos transmis dans des canaux filaires, ou sans fil. Par exemple, l'invention peut s'appliquer à la transmission de signaux MPEG4 vidéo dans des canaux bruités de type WLAN (réseau local sans fil) où le codeur canal serait de type LDPC (« Low-Density Parity Check », pour « contrôle de parité faible densité »), comme cela pourrait être le cas selon la norme 802.16.
2. Etat de l'art
Du point de vue du codage source, les codes VLC laissent en général une redondance dans le train binaire qu'ils produisent. On a proposé d'effectuer un décodage conjoint source-canal (DCSC). Le but du DCSC est donc d'exploiter cette redondance résiduelle afin d'améliorer les performances du décodeur en proposant différentes alternatives par rapport à un décodeur classique dit tandem.
L'art antérieur du décodage des VLC, de type Huffman, transmis avec codage canal à travers des canaux bruités peut se classer en deux catégories :
- a) décodage itératif source canal conjoint : ce schéma de DCSC utilise le principe "turbo" entre le décodeur canal et le décodeur source à savoir qu'une itération de décodage est composée d'une itération de décodage canal (SISO, pour « Soft Input Soft Output », ou « entrée douce sortie douce ») suivie d'une itération de décodage source (SISO) avec échange d'informations extrinsèques entre ces deux décodeurs ; - b) décodage source canal conjoint contrôlé par la source : cette méthode de décodage consiste à décoder le code canal en y insérant les probabilités a priori binaires calculées à partir de la structure du CLV et des probabilités d'occurrences de chaque symbole source. Ce type de décodeur DCSC a été développé uniquement pour des codes de canal définis par des treillis. 3. Inconvénients de ces techniques de l'art antérieur
Les méthodes du premier type présente une grande complexité. En effet, si l'utilisation du principe turbo permet de réduire la complexité par un rapport à un système optimal, le coût opératoire s'avère encore être très important, et donc difficile à mettre en application. Un inconvénient de la méthode du second type est qu'elle est utilisable uniquement pour des codes correcteurs d'erreurs définis par des treillis. Or tous les codes correcteurs d'erreurs ne se représentent pas par des treillis, et en particulier parmi ceux-ci certains codes pseudo-aléatoires présentant d'excellentes performances, nommés code de Tanner (tels que les codes LDPC, les codes de Tanner « Tail-Biting », ...). Pour cette famille de code, il n'est pas possible, à l'aide des connaissances actuelles, d'effectuer du décodage canal contrôlé par la source. 4. Objectifs de l'invention
L'invention a notamment pour objectif de pallier ces inconvénients de l'art antérieur. Plus précisément, un objectif de l'invention est de fournir une technique de décodage de données codées par un code à longueur variable représentable sous la forme d'une machine à nombre fini d'états (code de type b)) qui soit plus efficace que les techniques connues. Notamment, un objectif de l'invention est de fournir une telle technique de décodage adaptée au cas où le code canal est un code de Tanner et où la source est codée par un CLV.
L'invention a également pour objectif de fournir une telle technique, permettant d'atteindre, ou au moins d'approcher, les performances optimales de décodage au sens du MAP (maximum de vraisemblance a posteriori).
Un autre objectif de l'invention est de fournir une telle technique, présentant une complexité de réalisation acceptable pour des systèmes de réception grand public, par exemple un mobile recevant un signal vidéo. 5. Caractéristiques principales de l'invention Ces objectifs, ainsi que d'autres qui apparaîtront plus clairement par la suite, sont atteints à l'aide d'un procédé de décodage de données numériques reçues correspondant à des données numériques émises codées à l'aide d'un code à longueur variable représenté par un arbre à nombre d'états fini, associant un symbole source distinct à chacun des mots de code d'un alphabet. Selon l'invention, ce procédé comprend les étapes suivantes : détermination, pour au moins un élément binaire constituant chacun desdits symboles, d'une information de probabilité a priori de la valeur dudit élément binaire, en fonction d'au moins un élément binaire précédent et/ou suivant et dudit code à longueur variable ; - estimation de la valeur dudit élément binaire, tenant compte de ladite information de probabilité a priori.
Ainsi, l'estimation est optimisée, du fait que l'on prend en compte non seulement le signal reçu, mais également la source. En tenant compte de la source, notamment de ses statistiques et/ou de sa structure, la qualité du décodage peut se rapprocher des performances optimales, de façon relativement simple et efficace. II est notamment avantageux de tenir compte à la fois du passé et du futur (considérant un instant t), toujours pour améliorer l'efficacité du décodage.
De façon préférentielle, ladite étape de détermination d'une information de probabilité a priori tient compte de probabilités d'occurrences desdits symboles source, lesdites probabilités étant connues et/ou estimées.
Cette approche est relativement simple à mettre en œuvre, et présente une bonne efficacité.
Avantageusement, à chacun desdits symboles sont associés des éléments binaires d'information et des éléments binaires de redondance, et une information de probabilité a priori est déterminée pour chaque élément binaire d'information.
Selon un mode de réalisation particulier, ladite étape de détermination d'une information de probabilité a priori utilise des informations de vraisemblance.
D'autres modes de calcul sont bien sûr envisageables. Avantageusement, le procédé de l'invention met en œuvre un graphe de décodage comprenant des nœuds de données et des nœuds fonctionnels, et comprend au moins une itération des passes suivantes : une passe de donnée, dans laquelle un nœud de donnée q délivre un premier message de sortie sous la forme suivante :
Figure imgf000006_0001
où u est un message venant d'un nœud fonctionnel ; z représente le log rapport a priori ; q est l'indice d'un nœud de donnée ; / est l'indice d'itération ; n est l'indice d'un nœud fonctionnel (pour un message d'entrée) ; p est l'indice d'un nœud fonctionnel (pour un message de sortie) ;
K est le nombre de bits d'information ; V(n) est l'ensemble des indices de nœuds fonctionnels ; une passe de contrôle, dans laquelle un nœud fonctionnel délivre un second message de sortie M^ fonction des messages provenant des nœuds de données.
Dans ce cas, après N itérations, la décision finale sur la valeur binaire de chacun desdits nœuds de donnée peut valoir : kjq — 1-ggrKθ , v V L/ — , i, ..., Nι v.
ou % " MD1Q + ^ + Z^ n,q > v c/— \, ..., ι\ , nsV(n)
pour les bits d'information, et
Figure imgf000007_0001
pour les bits de redondance, où N est la taille du mot code ;
K est le nombre de bit d'information. De façon avantageuse, le critère d'arrêt desdites itérations appartient au groupe comprenant :
- un nombre maximum d'itérations ;
- une convergence vers un mot de code.
Selon un aspect avantageux de l'invention, on met en œuvre une étape de seuillage appliquée auxdites informations de probabilité a priori.
Cette approche permet de lutter contre les risques de désynchronisation et de propagation d'erreurs. Il est à noter qu'elle peut être mise en œuvre dans d'autres types de décodage correcteur d'erreurs.
Selon un mode de réalisation préférentielle, ladite étape de seuillage borne en valeur absolue un log-rapport a priori calculé de la façon suivante :
Figure imgf000007_0002
où Kz est la valeur maximale que peut atteindre le log rapport a priori en valeur absolue pour un niveau maximum de dégradation des performances prédéterminé ; bq est la valeur binaire du nœud de donnée d'indice q. L'invention concerne également les dispositifs de décodage de données numériques mettant en œuvre le procédé décrit ci-dessus. Un tel dispositif comprend notamment :
- des moyens de détermination, pour au moins un élément binaire constituant chacun desdits symboles, d'une information de probabilité a priori de la valeur dudit élément binaire, en fonction d'au moins un élément binaire précédent et/ou suivant et dudit code à longueur variable ; des moyens d'estimation de la valeur dudit élément binaire, tenant compte de ladite information de probabilité a priori. L'invention concerne encore les programmes informatiques mettant en œuvre le procédé de décodage présenté ci-dessus. 6. Liste des figures
D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel de l'invention, donnée à titre de simple exemple illustratif et non limitatif, et des dessins annexés parmi lesquels : la figure 1 est un organigramme simplifié du principe d'un décodage LDPC itératif, en une passe de donnée et une passe de contrôle ;
- la figure 2 illustre schématiquement un décodeur conjoint source-canal selon l'invention ; la figure 3 présente un exemple d'arbre d'un code CLV de Huffman ;
- la figure 4 illustre le calcul d'une probabilité binaire généralisée ;
- la figure 5 est un exemple de graphe factoriel du décodeur de la figure 2, prenant en compte des probabilités a priori binaires de la source ; la figure 6 illustre, pour une source sans mémoire, le mécanisme de calcul des probabilités a priori pour le décodeur de la figure 2 ; - la figure 7 présente la structure générale d'un dispositif de décodage selon l'invention. 7. Description d'un mode de réalisation préférentiel
L'invention propose donc une nouvelle technique de décodage de données codées à l'aide d'un code à longueur variable (VLC, en anglais : « Variable Length Code ») représentables sous forme de machine à nombre fini d'états. Cette technique offre la possibilité de mettre en œuvre le décodage des codes de Tanner contrôlé par la source, et propose une méthode dont la complexité de réalisation est relativement faible, notamment par rapport aux méthodes de l'état de l'art antérieur de catégorie a).
7.1 Codage
Le codage utilisé dans le cadre de l'invention est connu en soi. Les étapes principales de mise en œuvre de celui-ci sont les suivantes :
- les données (symboles sources avec ou sans mémoire) sont codées par un code à longueur variable, représentable par une machine à nombre d'états fini (par exemple de type Huffman) ;
- la séquence binaire résultante est alors protégée par un code canal de la famille des codes de Tanner (par exemple, un code LDPC où la contrainte correspond à un ensemble d'équations de vérification de parité, ou un code de Tanner « Tail-Biting » où la contrainte se réalise par un ensemble de petits codes convolutifs associés, ...).
Les données codées sont ensuite transmises sur un canal qui peut introduire des distorsions.
7.2 Décodage
Le principe du décodage selon l'invention est illustré en figure 1. Il comprend les opérations suivantes :
- dans un premier temps, un décodage itératif du code canal est effectué. Ce décodage des données est réalisé en tenant compte de la source (décodage canal contrôlé par la source), c'est-à-dire en exploitant la statistique de celle-ci ainsi que sa structure. Cette information provenant de la source est injectée sous forme de probabilités a priori binaires, ou de rapports de vraisemblance, qui sont calculées à partir des probabilités d'occurrences des symboles de la source (supposées connues ou estimées à la réception).
Une itération 11 de ce décodage canal contrôlé par la source est séquencée en deux étapes, à savoir : β une première étape 111, nommée passe de donnée, correspond à une mise à jour des messages (log rapport de vraisemblance) lorsqu'ils passent par un noeud de donnée :
• un message sortant d'un nœud de donnée (représentant un bit d'information) et se dirigeant vers un nœud fonctionnel est la somme du log-rapport de vraisemblance observé en sortie du canal, des messages provenant des nœuds fonctionnels connectés au nœuds de données traités sauf celui où se dirige le message en cours de traitement, et du log-rapport a priori fonction des caractéristiques suivantes de la source : ses statistiques et sa structure ;
• Pour calculer le log-rapport a priori, il est tout d'abord nécessaire d'effectuer l'estimation du mot de code à chaque itération. Ainsi, le log-rapport a priori de la source injecté à l'itération courante sera fonction du mot de code décidé à l'itération précédente. Cette approche est nouvelle. En effet, dans les codes de l'art antérieur l'information est injectée uniquement dans l'itération courante, sans avoir à décider du mot de code. Ce log-rapport a priori injecté est donc fonction de la statistique de la source, de la structure du codeur source et est calculé en tenant compte des bits précédents et suivants le bit courant, comme cela est détaillé par la suite ;
• Pour les nœuds de données représentant les bits de redondance l'étape de passe de donnée reste identique à celle présentée dans le document « Factor Graphs and the Sum-product Algorithm », IEEE
Transaction on Information Theory, vol.47, n° 2, pp. 498-519, Feb.
2001, par F.R. Kschichang, BJ. Frey and H.-A. Loeligler. β Une deuxième étape 112, nommée passe de contrôle, correspond à la mise à jour des messages lorsqu'ils passent par un noeud de contrôle.
Elle est identique à celle présentée dans le document sus-mentionné. On itère (12) les deux étapes précédentes jusqu'à un critère d'arrêt 13 qui peut être un nombre maximum d'itérations, la convergence vers un mot de code (syndrome nul), ... Avantageusement, un seuillage des log-rapports a priori source que l'on injecte lors de la passe de donnée est prévu (comme expliqué par la suite).
Finalement, les bits décodés par le décodeur canal sont ensuite décodés par un décodeur source dit "dur" c'est-à-dire que la séquence binaire provenant du décodeur canal est transformée en une séquence de symboles sources suivant la table de codage VLC.
7.3 Chaîne de communication
La chaîne de communication d'un exemple de mise en oeuvre de l'invention est représentée sur la figure 2. Les symboles sources ck sont convertis par un codeur de Huffman 21 en un bloc de M bits dt , 1=1,...,K, lesquels sont à nouveau codés par un codeur LDPC 22 pour former le mot de code bj,...,bn
(n=l,...,N) de taille N, qui assure ensuite la mise sur constellation par une MDP2 (modulation de phase à deux états), la séquence Xn est émise à travers un canal 23 BABG (bruit additif blanc Gaussien). Au niveau du récepteur, le signal reçu yn est alors envoyé au décodeur LDPC 24 auquel on ajoute selon l'inventeur un complément d'information correspondant aux probabilités a priori binaires 25 provenant du codeur source. La séquence de symboles estimés Ck est finalement obtenue après le décodage "dur" 26 source.
7.4 Décodage source canal conjoint
La figure 7 illustre schématiquement un décodeur selon l'invention. Ce codeur comprend des moyens de traitement 71, recevant des coefficients à décoder 72, et délivrant des données décodées 73, en tenant compte des probabilités a priori. Le procédé de décodage est stocké dans une mémoire de programme 74. Une mémoire vive 75 permet la mémorisation des données intermédiaires et des données de reconstruction du signal original. Le décodeur source-canal conjoint de l'invention se présente sous la forme d'une concaténation d'un décodeur canal, dont on injecte les probabilités a priori binaires provenant du codeur source, avec un décodeur source "dur". Les probabilités a priori binaires injectées lors du décodage canal ne correspondent pas à des probabilités "statiques" d'apparitions de "0" ou de "1" sur l'ensemble du bloc mais a des probabilités "dynamiques" calculées localement sur chacun des bits en fonction de la structure de la source. On suppose que les probabilités d'occurrences des symboles sont parfaitement connues, sachant qu'elles peuvent être estimées par un turbo estimateur robuste tel que décrit dans le document FR- 0450593. Pour présenter l'intérêt d'exploiter cette connaissance lors du décodage des codes LDPC, il est d'abord nécessaire de dériver les probabilités des symboles source au niveau bit pour qu'elles puissent être associées aux vraisemblances du canal dans le cadre d'un décodage de codes LDPC. Dans ce nouveau contexte, pour pouvoir tirer meilleur parti de l'information a priori, le calcul des probabilités tel qu'il a été proposé dans le document « Joint Source-Channel Decoding of Variable Length Codes for Convolutional Codes and Turbo codes », IEEE
Transactions on Communications, vol. 53, n° 1, pp. 10-15, Jan. 2005, par M. Jeanne, J.-C. Carlach and P. Siohan, pour les codes convolutifs et les turbo codes doit être fortement revu. En effet, dans cette méthode de calcul, la séquence de bits est décodée séquentiellement et seuls le bit courant et les bits précédents influent dans la modification apportée au calcul des métriques. Cependant, dans le cadre de l'utilisation de codes en blocs tel que les codes LDPC et du décodage de ceux-ci par propagation de croyance il devient possible d'insérer à chaque itération de décodage des probabilités a priori calculées à partir de la séquence binaire précédent le bit considéré ainsi que de la séquence suivant ce bit. 7.4.1 Calcul des probabilités a priori binaires des mots de codes CLV Dans le présent mode de réalisation, on utilise un CLV de type Huffman. Les codes de Huffman peuvent être représentés par un arbre à nombre de noeuds N1 fini tel que représenté sur la figure 3. Notons par C = ~ψ , &,...{? j l'ensemble des symboles sources où chaque symbole d G C a pour expression binaire d '' = [ d (1), ..., d (/),...] avec d (/') la valeur du ième bit définissant le symbole d .
Les paramètres du code de Huffman représenté par l'arbre de la figure 2 sont alors : Nc = œrd(C)= 5, ό = [QQO], ^ = [QQI], t? = [Q1], c4 = [1,0] et C5 = [1,1].
Dans le document susmentionné, on a naturellement proposé de calculer les probabilités a priori binaires en exploitant l'information provenant de la séquence binaire précédent le bit traité. Pour effectuer ce calcul, il est tout d'abord nécessaire de poser /* = |n e N VI < k,cn(i) =cj(i)} comme étant l'ensemble des indices de tous les mots de code possédant les mêmes k-1 premiers bits que le mot de code d . Par convention, on fixe // = {1,..., C} . La probabilité du symbole d et celle du bit d(f) seront notées respectivement P{d) et P(d(j)^. La probabilité de chaque branche de l'arbre représentant le code CLV (correspondant chacune à une probabilité binaire) peut être exprimée à l'aide des probabilités des symboles source et par exploitation de la structure de l'arbre. Si on utilise uniquement l'information causale soit la séquence binaire précédent le bit traité, la probabilité de chaque branche dans le cas d'une source sans mémoire peut s'exprimer par la relation suivante :
Figure imgf000013_0001
P{d{k)\ d{λ),...,d{k-λ))
Figure imgf000013_0002
où bq est le bit dont on cherche la probabilité a priori et [^,...,£{^,1 la séquence binaire précédent ce bit permettant de déterminer, sous hypothèse de synchronisation, lequel des symboles sources on traite, soit ici d. Notons que l'indice j peut être, indifféremment, l'indice de n'importe quel symbole source à condition que ce symbole soit atteignable par la séquence binaire
Figure imgf000014_0001
Si l'on considère par exemple la probabilité correspondant à la branche de l'arbre comprise entre les nœuds N1 et N3, soit la probabilité P(C1 (2) C1Cl)) (tel qu'illustré en figure 3) : P(c\2) I C 1Cl)) = P(N2 1 N1) = Pic ) + P(c ) y y } P(cι) + P(c2) + P(c3)
De par la structure en bloc des codes LDPC et du fait que la plupart des algorithmes permettant de les décoder fournissent à chaque itération une estimation de l'ensemble de la séquence binaire émise, on peut généraliser le calcul des probabilités a priori binaires de la source en y insérant, en plus de l'information provenant de la séquence binaire précédent le bit traité (information causale), celle venant du ou des bits suivants (information non causale). Toute cette information est disponible à l'itération précédente de décodage.
La probabilité a priori binaire généralisée à partir des probabilités d'occurrences de chaque symbole (supposées parfaitement connues) ainsi que de la structure de l'arbre CLV constituant la source peut alors s'exprimer à l'aide des relations suivantes. D'après l'équation (1), on a :
Figure imgf000014_0002
(3)
où Nbnc désigne le nombre de bits constituant la séquence binaire "non causale".
La méthode de calcul de cette probabilité consiste à évaluer les probabilités de chacune des deux trajectoires sur l'arbre définissant le code CLV, tel qu'illustré en figure 4, correspondants à celle où bq=Q (ou d(k)=0) et celle où b =\ (ou d(k)=l) et ensuite à les normaliser. Ainsi, on pose :
Figure imgf000014_0003
(4) où Pm (d (Ar)= 01 d (1), ..., CJ (k- 1), ^1 , ..., b^^ ) représente la probabilité "non normalisée" que d(k) = 0 connaissant la séquence binaire précédant et suivant le bit considéré soit la séquence \ d (\),...,d (k-î),bψ_υ...,bψ_Nι^ \ . Cette probabilité Pm (d (k) = 0) est constituée d'un produit de deux probabilités à savoir celle correspondant à l'information "causale" avec celle "non causale" et s'exprime par :
Figure imgf000015_0001
(5)
De la même manière que pour le développement de l'équation (1), on peut réécrire l'équation (5) :
Pm (C (k) = 01 C(I),..., C (k- 1)1^1 ^)=
Figure imgf000015_0002
(6)
où la synchronisation sur le mot de code C;(χ) est effectuée à partir de la connaissance de la séquence [£|,... ,^ = Q...,^7-1, ^7] ce qui permet d'avoir d γ (β) = b^ . Finalement, cette probabilité non normalisée aura pour expression :
Figure imgf000015_0003
(7)
Si l'on prend à nouveau l'exemple du calcul de la probabilité correspondant à la branche de l'arbre comprise entre les nœuds N1 et N3 mais en tenant compte ici de la connaissance du bit bq+1 ce qui correspond à la probabilité P(d(2)= 1 l cO)»*Vi ) (Cf. figure 2). Si bq+1=l, cette probabilité peut alors s'écrire
P(d(2)=1l d(1),^ = i)
= P(N3\ Nvbψ] = V
Figure imgf000016_0001
P(N31 /V1)P(AZ71 N3)+ P(N41 /V1)P(AZ11 AZ0)
Figure imgf000016_0002
(8)
La figure 4 illustre le calcul de cette probabilité α priori binaire. généralisée. Dans le cas où les symboles de la source présentent une relation marko vienne d'ordre 1, les calculs des différentes probabilités binaires doivent être revus en considérant chaque symbole comme un symbole précédent possible. Ainsi, l'équation (1) définissant la probabilité a priori binaire dans le cas causal se développe comme suit :
Figure imgf000016_0003
où la séquence définie par (a) permet de déterminer le symbole précédent que l'on notera cm et de se synchroniser sur le nœud N0 (soit sur le début du mot de code du symbole source traité, noté <f). La séquence (b) quant à elle définit les k-1 premiers du mot de code du symbole d. Par conséquence, cette probabilité a priori peut s'écrire : p(bq \bi,...,b^)= p(cj(k)\ dθ),..., d(k-Mcr)
Figure imgf000017_0001
On calcule maintenant cette probabilité dans le cas où l'on dispose de l'information binaire non causale, soit la probabilité :
Figure imgf000017_0002
On applique le même raisonnement que pour le passage de l'équation (3) à
(4) soit :
Figure imgf000017_0003
(12)
où Pm (cJ(k)= 0\ cJ0),-, CJ(k-\), dr',bq¥V...,bq¥Nbκ ) est la probabilité "non normalisée" de C1Ck) = O dans le cas où la source présente mémoire markovienne d'ordre 1. De la même façon que pour le cas "causal", on obtient la relation suivante :
Pm(c'(Λr)=OICαλ...,C(Λr-U«fI,^1,..Λ^>
Figure imgf000017_0004
(13)
où (f(r> représente le symbole précédent à d{t et est déterminé par la séquence binaire f£|,...,£>q = Q..., bψγ_v bψγ J . Ainsi, on peut écrire : Pn, (d (k) = 01 d (1), ..., cf (k- 1), cf , bψλ ,..., /^ )=
Figure imgf000018_0001
(14)
7.4.2 Introduction des probabilités a priori binaires lors du décodage de codes LDPC
Après avoir développé la méthode de calcul des probabilités a priori binaires, on explique maintenant comment l'invention procède pour injecter cette probabilité lors du décodage itératif de codes de Tanner et plus particulièrement ici lors du décodage itératif de codes LDPC. On présente un exemple d'application de l'invention qui consiste en l'injection des probabilités binaires lors du décodage par propagation de croyance de codes LDPC. Cependant, l'invention est directement applicable à d'autres décodeurs de codes LDPC tel que ceux connus sous les désignations anglaises suivantes : le « BP-based algorithm », 1' « APP algorithm », l' « APP-based algorithm », le « λ-min algorithm », « λ- min* algorithm » ... Elle est également directement applicable aux codes de
Tanner de type « Tail-biting ».
Le graphe factoriel du décodeur LDPC contrôlé par la source (DCSC) est représenté sur la figure 5. L'algorithme de décodage résultant est donc basé sur un algorithme de propagation de croyance tel que décrit dans le document Kschischang déjà cité, à l'intérieur duquel l'étape de mise à jour des messages lors de leur passage par un nœud de donnée (soit la passe de donnée) a été modifiée, et ce uniquement pour les bits d'information 51 qui sont les seuls à contenir une information provenant de la source (contrairement aux bits de redondance 52). Ainsi, on injecte (54) les probabilités a priori binaires de la source. La relation définissant la mise à jour des messages lors de leur passage par un nœud de donnée 53 pour les bits d'information s'écrit :
Figure imgf000018_0002
K ' d5) ooùu rreeoprréésseennttee l lee
Figure imgf000019_0001
log-rapport α pr/oπ et B-!~λ) la valeur du jlème bit d'information décidé à l'itération
I- 1 de décodage. A la première itération de décodage, l'information provenant de la source n'est pas disponible ainsi _^0) = 0. Pour les bits de redondance 52, on a toujours :
•&. = «**+ Σ C' Vq= /C+1 N. m nsV(n)\p
La figure 6 illustre un exemple pour une source sans mémoire du mécanisme de calcul des probabilités a priori pour notre décodeur source-canal conjoint, où Nbnc=l, c'est-à-dire que l'on cherche dans cet exemple à calculer la probabilité PφJ
Figure imgf000019_0002
L'estimation des bits à l'itération précédente est indiquée à l'intérieur de chaque nœud de donnée. En fonction de la valeur de bq dont on cherche à calculer la probabilité a priori, deux "trajectoires" sont à explorer à savoir celle où bq=0 correspondant aux noeuds Nj 61 encadrés par des pointillés (uniquement à partir du nœud de donnée symbolisant le bit bq) et celle où b =\ correspondant aux nœuds laissés en trait plein. Ainsi, à partir des équations (4) et (7), on peut écrire :
^ q '* '-I <H ' ^1 } ~ P(N3 \ N,)P(N7 \ N3)+ P(N4 \ N,)P(N, \ N0)
Figure imgf000019_0003
(17) et P(b=λ\ H'-v B!-λ) B'-λ) B'-λ) U P(AZ4IAZ1)P(AZ1IyV0) yq M ,** ,-, +1 , & > P(AZ3IAZ1)P(AZ7IAZ3)+ P(N4\N,)P(N,\N0)
Figure imgf000020_0001
(18)
Ce qui permet finalement de déduire le log-rapport a priori du bit bq à l'itération / de décodage :
4M)
Figure imgf000020_0002
β
La mise à jour des messages lors de leur passage par un nœud de contrôle reste inchangée par rapport à celle présentée précédemment. Afin de déterminer les bits d'information dj'~^ à chaque itération, il est nécessaire de calculer le log- rapport a posteriori à chaque itération. Comme pour l'étape de passe de donnée, la relation définissant le log-rapport a posteriori dans le cadre du DCSC est dérivée de celle définie précédemment et ne change que pour les bits d'information, soit :
Figure imgf000020_0003
et pour les bits de redondance :
Figure imgf000020_0004
Ainsi, le mot de code décidé à l'itération / s'obtient par :
B? = U**<\ V(J=I N. (22) Les bits d'informations obtenus à l'itération /, lesquels sont nécessaires lors du calcul des probabilités a priori source, sont alors :
(ξ> = W, Vq= V.., K. (23)
7.4.3 Seuillage des log-rapports a priori
Une faiblesse du codage à longueur variable est qu'il présente potentiellement un risque de propagation d'erreur. Pour limiter le risque de désynchronisation, on découpe le train de bits générés par la source en paquets.
Les méthodes de DCSC où le décodeur canal est contrôlé par la source supposent donc une mise en paquets avec, dans le cas des codes LDPC, des blocs de la taille d'un mot de code. Dès lors qu'une erreur survient dans l'estimation des bits d'information le calcul des log-rapports a priori devient erroné injectant ainsi une mauvaise information source et ce jusqu'à une éventuelle resynchronisation à l'intérieur du bloc.
La désynchronisation, lorsqu'elle se produit, a généralement pour conséquence de détériorer les performances, le terme "généralement" venant du fait que cette dégradation n'est pas systématique et qu'elle est fonction d'une part du code canal utilisé et d'autre part des valeurs des log-rapports a priori injectés
(en valeur absolue) et donc des probabilités d'occurrences des symboles sources. En effet, en cas de désynchronisation, il est plus facile pour le code correcteur d'erreurs de compenser l'injection de mauvais log-rapports a priori à condition qu'ils soient de faible valeur absolue (équation (15)). Etant donné que les codes LDPC étaient plus sensibles à ce phénomène de désynchronisation, il est avantageux de modifier l'algorithme de décodage source canal conjoint en limitant la "confiance" accordée à ces messages provenant de la source. Pour ce faire, il suffit de borner en valeur absolue les log-rapports a priori injectés lors du décodage, soit : -K2 S ^ K -Kx
^ = Jζ a -Kz≤ $ ≤ Kz, (24)
K2 3 $ > K,
où Kz représente la valeur maximale que peut atteindre le log-rapport a priori en valeur absolue pour ne pas engendrer trop de dégradation des performances. Le choix de ce coefficient peut être effectué expérimentalement, en fonction de la source choisie et éventuellement du rapport signal à bruit.
Ce seuillage des log-rapports a priori (ou des probabilités a priori) de la source injectés lors du décodage canal contrôlé par la source peut être d'une manière générale appliqué à n'importe quelle famille de codes correcteurs d'erreurs et ce, que ce soit dans un contexte de codage source effectué par un CLV ou bien par un code à longueur fixe (CLF). Ainsi, pour une source codée par un code CLF et protégée par un code convolutif tel que présenté dans le document « Source-Controlled channel decoding », IEEE Transactions on Communications, vol. 43, n° 9, pp. 2249-2457, sept. 1995, il suffit d'appliquer le seuillage défini par l'équation (24) sur le log-rapport a priori injecté dans l'équation (21) de
[Hagenauer95]. Pour le cas d'une source codée par un CLV et protégée soit par un code convolutif soit par un turbo-code introduit dans le document Jeanne et al déjà cité, on réécrit l'équation (24) dans le domaine des "probabilités", soit pour la probabilité a priori p(bq) :
q) -Kp , (25)
Figure imgf000022_0001
où Kp est ici une probabilité de seuillage comprise entre 0 et 0,5. On peut ainsi appliquer cette transformation aux probabilités a priori injectées dans l'équation (4) du document Jeanne et al. dans la cas d'un code convolutif et dans les équations (11), (12) et (14) de ce document dans le cas du turbo-code.

Claims

REVENDICATIONS
1. Procédé de décodage de données numériques reçues correspondant à des données numériques émises codées à l'aide d'un code à longueur variable représenté par un arbre à nombre d'états fini, associant un symbole source distinct à chacun des mots de code d'un alphabet, caractérisé en ce qu'il comprend les étapes suivantes :
- détermination (54), pour au moins un élément binaire constituant chacun desdits symboles, d'une information de probabilité a priori de la valeur dudit élément binaire, en fonction d'au moins un élément binaire précédent et/ou suivant et dudit code à longueur variable ;
- estimation (53) de la valeur dudit élément binaire, tenant compte de ladite information de probabilité a priori.
2. Procédé de décodage selon la revendication 1, caractérisé en ce que ladite étape de détermination (54) d'une information de probabilité a priori tient compte de probabilités d'occurrences desdits symboles source, lesdites probabilités étant connues et/ou estimées.
3. Procédé de décodage selon l'une quelconque des revendications 1 et 2, caractérisé en ce qu'à chacun desdits symboles sont associés des éléments binaires d'information (51) et des éléments binaires de redondance (52), et en ce qu'une information de probabilité a priori est déterminée (54) pour chaque élément binaire d'information.
4. Procédé de décodage selon l'une quelconque des revendications 1 à 3, caractérisé en ce que ladite étape de détermination (54) d'une information de probabilité a priori utilise des informations de vraisemblance.
5. Procédé de décodage selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'il met en œuvre un graphe de décodage comprenant des nœuds de données et des nœuds de fonctionnel, et en ce qu'il comprend au moins une itération des passes suivantes : une passe de donnée (111), dans laquelle un nœud de donnée q délivre un premier message de sortie sous la forme suivante :
Figure imgf000024_0001
où u est un message venant d'un nœud fonctionnel ; z représente le log rapport a priori ; q est l'indice d'un nœud de donnée ; / est l'indice d'itération ; n est l'indice d'un nœud fonctionnel (pour un message d'entrée) ; p est l'indice d'un nœud fonctionnel (pour un message de sortie) ; K est le nombre de bits d'information ;
V(n) est l'ensemble des indices de nœuds fonctionnels ; une passe de contrôle (112), dans laquelle un nœud fonctionnel délivre un second message de sortie u^( q fonction des messages provenant des nœuds de données.
6. Procédé de décodage selon la revendication 5, caractérisé en ce que la décision sur la valeur binaire de chacun desdits nœuds de donnée vaut :
Figure imgf000024_0002
OU wq " MD1Q + ^q + Z^ n,q > V C/- I, ..., l\ , nsV(n)
pour les bits d'information, et
Figure imgf000024_0003
pour les bits de redondance où N est la taille du mot code,
K est le nombre de bit d'information.
7. Procédé de décodage selon l'une quelconque des revendications 5 et 6, caractérisé en ce qu'il met en œuvre un critère d'arrêt desdites itérations appartenant au groupe comprenant : un nombre maximum d'itérations ; une convergence vers un mot de code.
8. Procédé de décodage selon l'une quelconque des revendications 1 à 7, caractérisé en ce qu'il met en œuvre une étape de seuillage appliquée auxdites informations de probabilité a priori.
9. Procédé de décodage selon la revendication 8, caractérisé en ce que ladite étape de seuillage borne en valeur absolue un log-rapport a priori calculé de la façon suivante :
-K2 si ^ < -K2
^ = $ si - K2 ≤ $ ≤ K2
K2 9 % > K2 où Kz est la valeur maximale que peut atteindre le log rapport a priori en valeur absolue pour un niveau maximum de dégradation des performances prédéterminé ; bq est la valeur binaire du nœud de donnée d'indice q.
10. Dispositif de décodage de données numériques reçues correspondant à des données numériques émises codées à l'aide d'un code à longueur variable représenté par un arbre à nombre d'états fini, associant un symbole source distinct à chacun des mots de code d'un alphabet, caractérisé en ce qu'il comprend : des moyens de détermination, pour au moins un élément binaire constituant chacun desdits symboles, d'une information de probabilité a priori de la valeur dudit élément binaire, en fonction d'au moins un élément binaire précédent et/ou suivant et dudit code à longueur variable ; des moyens d'estimation de la valeur dudit élément binaire, tenant compte de ladite information de probabilité a priori.
11. Programme informatique comprenant des instructions de code de programme pour l'exécution des étapes du procédé de décodage selon l'une quelconque des revendications 1 à 9 lorsque ledit programme est exécuté par un microprocesseur.
PCT/EP2006/061237 2005-04-15 2006-03-31 Procédé et dispositif de décodage d'un code à longueur variable prenant en compte une information de probabilité a priori WO2006108768A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0503818 2005-04-15
FR0503818A FR2884661A1 (fr) 2005-04-15 2005-04-15 Procede et dispositif de decodage d'un code a longueur variable prenant en compte une information de probabilite a priori

Publications (1)

Publication Number Publication Date
WO2006108768A1 true WO2006108768A1 (fr) 2006-10-19

Family

ID=34955313

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2006/061237 WO2006108768A1 (fr) 2005-04-15 2006-03-31 Procédé et dispositif de décodage d'un code à longueur variable prenant en compte une information de probabilité a priori

Country Status (2)

Country Link
FR (1) FR2884661A1 (fr)
WO (1) WO2006108768A1 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108733924A (zh) * 2018-05-21 2018-11-02 东南大学 一种数字编码超材料单元的智能化设计方法
US10528003B2 (en) 2015-01-28 2020-01-07 Seereal Technologies S.A. Light modulation device having an optical element for scattering light
CN111164914A (zh) * 2017-08-28 2020-05-15 弗劳恩霍夫应用研究促进协会 编码时隙aloha的混合解码器
CN114301545A (zh) * 2021-12-03 2022-04-08 网络通信与安全紫金山实验室 信号检测方法、装置、电子设备及存储介质

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
BOND J W ET AL: "Decoding low-density generator matrix codes with the aid of comma-free source codes", INFORMATION THEORY WORKSHOP, 1998 KILLARNEY, IRELAND 22-26 JUNE 1998, NEW YORK, NY, USA,IEEE, US, 22 June 1998 (1998-06-22), pages 75 - 76, XP010297356, ISBN: 0-7803-4408-1 *
FRANK R KSCHISCHANG ET AL: "Factor Graphs and the Sum-Product Algorithm", IEEE TRANSACTIONS ON INFORMATION THEORY, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 47, no. 2, February 2001 (2001-02-01), XP011027872, ISSN: 0018-9448 *
GUIVARCH L ET AL: "Joint source-channel soft decoding of Huffman codes with turbo-codes", DATA COMPRESSION CONFERENCE, 2000. PROCEEDINGS. DCC 2000 SNOWBIRD, UT, USA 28-30 MARCH 2000, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, 28 March 2000 (2000-03-28), pages 83 - 92, XP010377348, ISBN: 0-7695-0592-9 *
JÖRG KLIEWER AND RAGNAR THOBABEN: "Combining FEC and optimal soft-input source decoding for the reliable transmission of correlated variable-length encoded signals", DATA COMPRESSION CONFERENCE, 2002. PROCEEDINGS. DCC 2002, 4 April 2002 (2002-04-04), XP002338985 *
LIUGUO YIN, JIANHUA LU, YOUSHOU WU: "Combined hidden Markov source estimation and low-density parity-check coding: a novel joint source-channel coding scheme for multimedia communications", WIRELESS COMMUNICATIONS COMMUNICATIONS AND MOBILE COMPUTING, vol. 2, no. 6, 30 October 2002 (2002-10-30), XP002338939 *
WEI XIANG: "Joint Source-Channel Coding for Image Transmission and Related Topics", PHD THESIS, December 2003 (2003-12-01), XP002338938, Retrieved from the Internet <URL:http://www.library.unisa.edu.au/adt-root/uploads/approved/adt-SUSA-04112004-175228/public/02whole.pdf> [retrieved on 20050802] *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10528003B2 (en) 2015-01-28 2020-01-07 Seereal Technologies S.A. Light modulation device having an optical element for scattering light
CN111164914A (zh) * 2017-08-28 2020-05-15 弗劳恩霍夫应用研究促进协会 编码时隙aloha的混合解码器
CN111164914B (zh) * 2017-08-28 2023-03-31 弗劳恩霍夫应用研究促进协会 编码时隙aloha的混合解码器
CN108733924A (zh) * 2018-05-21 2018-11-02 东南大学 一种数字编码超材料单元的智能化设计方法
CN108733924B (zh) * 2018-05-21 2022-05-10 东南大学 一种数字编码超材料单元的智能化设计方法
CN114301545A (zh) * 2021-12-03 2022-04-08 网络通信与安全紫金山实验室 信号检测方法、装置、电子设备及存储介质
CN114301545B (zh) * 2021-12-03 2024-04-19 网络通信与安全紫金山实验室 信号检测方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
FR2884661A1 (fr) 2006-10-20

Similar Documents

Publication Publication Date Title
EP0808538B1 (fr) Dispositif de reception de signaux numeriques a structure iterative, module et procede correspondants
EP2806565B1 (fr) Procede de decodage d&#39;un code correcteur, par exemple un turbo-code, par analyse du spectre etendu des mots du code
FR2909499A1 (fr) Procede et dispositif de decodage pour codes ldpc, et appareil de communication comprenant un tel dispositif
EP2661814B1 (fr) Procédé de décodage et décodeur
FR2905209A1 (fr) Procede et dispositif de decodage de blocs encodes avec un code ldpc
FR2694647A1 (fr) Procédé de décodage de canaux avec commande à la source par élargissement de l&#39;algorithme de Viterbi et utilisation de ce procédé.
FR3050343A1 (fr) Methode de decodage a inversion d&#39;un code polaire
FR2765749A1 (fr) Decodeur a base de syndrome a decision ponderee pour codes a convolution
EP1728330A1 (fr) Procede de decodage conjoint source-canal et decodeur conjoint source-canal associe
WO2006108768A1 (fr) Procédé et dispositif de décodage d&#39;un code à longueur variable prenant en compte une information de probabilité a priori
FR2912574A1 (fr) Procede de decodage a passage de messages et a convergence forcee.
JP2003283343A (ja) 反復復号を用いたデータ処理装置
EP2661815B1 (fr) Procédé de correction de messages contenant des bits de bourrage
EP1527521B1 (fr) Dispositif et procede de decodage robuste de codes arithmetiques
EP2833555B1 (fr) Procede ameliore de decodage d&#39;un code correcteur avec passage de message, en particulier pour le decodage de codes ldpc ou codes turbo
FR2828359A1 (fr) Emetteur, recepteur, procedes, programme et signal adaptes a des modulations a grand nombre d&#39;etats
FR2882480A1 (fr) Procede et dispositif de synchronisation trame
EP1481480A2 (fr) Procede de traitement d un signal mettant en oeuvre un algorithme de type map approche et applications correspondantes.
JP2007529974A (ja) ローカルイレージャmap復号器
FR2924288A1 (fr) Procede et dispositif de decodage iteratif par effacement, produit programme d&#39;ordinateur et moyen de stockage correspondants
WO2015197971A1 (fr) Procédés et dispositifs de codage et de décodage correcteur d&#39;erreurs, et programme d&#39;ordinateur correspondant
JP3816752B2 (ja) 符号同期判定装置
EP2262116B1 (fr) Décodeur Viterbi avec deux memoires adapté aux signaux GNSS
EP1217752A2 (fr) Procédé de décodage itératif associé à toutes concaténations d&#39;un nombre déterminé de codes en blocs ou assimilés
JPH07283741A (ja) ビタビ復号法およびビタビ復号器

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

NENP Non-entry into the national phase

Ref country code: RU

WWW Wipo information: withdrawn in national office

Country of ref document: RU

122 Ep: pct application non-entry in european phase

Ref document number: 06725483

Country of ref document: EP

Kind code of ref document: A1