FR2808394A1 - METHOD AND DEVICE FOR TURBOCODULATED TRELLIS MODULATION - Google Patents
METHOD AND DEVICE FOR TURBOCODULATED TRELLIS MODULATION Download PDFInfo
- Publication number
- FR2808394A1 FR2808394A1 FR0105763A FR0105763A FR2808394A1 FR 2808394 A1 FR2808394 A1 FR 2808394A1 FR 0105763 A FR0105763 A FR 0105763A FR 0105763 A FR0105763 A FR 0105763A FR 2808394 A1 FR2808394 A1 FR 2808394A1
- Authority
- FR
- France
- Prior art keywords
- bits
- encoder
- bit
- data
- constellation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
- H03M13/258—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with turbo codes, e.g. Turbo Trellis Coded Modulation [TTCM]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
- H03M13/256—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with trellis coding, e.g. with convolutional codes and TCM
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3905—Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3988—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes for rate k/n convolutional codes, with k>1, obtained by convolutional encoders with k inputs and n outputs
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/6325—Error control coding in combination with demodulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0059—Convolutional codes
- H04L1/006—Trellis-coded modulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0064—Concatenated codes
- H04L1/0066—Parallel concatenated codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/32—Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
- H04L27/34—Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
- H04L27/3405—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power
- H04L27/3416—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power in which the information is carried by both the individual signal points and the subset to which the individual points belong, e.g. using coset coding, lattice coding, or related schemes
- H04L27/3427—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power in which the information is carried by both the individual signal points and the subset to which the individual points belong, e.g. using coset coding, lattice coding, or related schemes in which the constellation is the n - fold Cartesian product of a single underlying two-dimensional constellation
- H04L27/3433—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power in which the information is carried by both the individual signal points and the subset to which the individual points belong, e.g. using coset coding, lattice coding, or related schemes in which the constellation is the n - fold Cartesian product of a single underlying two-dimensional constellation using an underlying square constellation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
- H04L1/005—Iterative decoding, including iteration between signal detection and decoding operation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
Abstract
Selon un procédé de transmission de données sur un canal de communication selon l'invention, au moins certains des bits d'un train de bits arrivant (10) sont passés au travers d'un turbocodeur (RSC1, RSC2) afin de générer des bits de sortie turbocodés, et des mots correspondant à des points de symbole sur une constellation dans un schéma de modulation de code par treillis sont générés en utilisant au moins les bits qui sont passés au travers du turbocodeur, éventuellement en conjonction avec d'autres bits qui ne sont pas passés au travers du turbocodeur. Typiquement, les bits du turbocodeur sont des bits de poids le plus faible.According to a method of transmitting data over a communication channel according to the invention, at least some of the bits of an arriving bit stream (10) are passed through a turbocoder (RSC1, RSC2) in order to generate bits turbocoded output, and words corresponding to symbol points on a constellation in a trellis code modulation scheme are generated using at least the bits that are passed through the turbocoder, possibly in conjunction with other bits that did not pass through the turbocoder. Typically, the turbocoder bits are least significant bits.
Description
Domaine de l'invention La présente invention concerne le domaine de laField of the Invention The present invention relates to the field of
transmission de données et de façon davantage particulière, elle concerne un schéma de modulation pour transmettre des données sur un canal de communication, par exemple dans un système de modulation multifréquence discret. Arrière-plan de l'invention Afin d'augmenter l'efficacité d'un transfert de données sur un canal de communication, les données sont transférées en tant que symboles dont chacun représente un nombre de bits. Par exemple, dans un système QAM (à modulation d'amplitude en quadrature) , les symboles sont représentés par l'amplitude et la phase des signaux. Seize symboles uniques, c'est-à-dire des combinaisons d'amplitude et de phase, par exemple, représenteront quatre bits à la fois. Les symboles forment une constellation de points sur un diagramme de phase/amplitude. Lorsque le nombre de symboles augmente, la possibilité de transmission d'erreurs fait de même. Des schémas de codage d'erreurs vers l'avant sont utilisés pour permettre au récepteur de détecter des data transmission and more particularly, it relates to a modulation scheme for transmitting data over a communication channel, for example in a discrete multi-frequency modulation system. BACKGROUND OF THE INVENTION In order to increase the efficiency of a data transfer over a communication channel, the data is transferred as symbols each of which represents a number of bits. For example, in a quadrature amplitude modulated (QAM) system, the symbols are represented by the amplitude and phase of the signals. Sixteen unique symbols, i.e., amplitude and phase combinations, for example, will represent four bits at a time. The symbols form a constellation of points on a phase / amplitude diagram. As the number of symbols increases, the possibility of error transmission does the same. Forward error coding schemes are used to allow the receiver to detect
erreurs et de restaurer le symbole transmis correct. errors and restore the correct transmitted symbol.
Une forme préférée de codage au niveau de communications de données est un codage par convolution qui est un schéma de codage du niveau des bits qui dépend de la séquence binaire précédente. Selon une modulation codée par treillis, le nombre de symboles est augmenté afin A preferred form of coding at the data communications level is convolutional coding which is a bit level coding scheme that depends on the previous bit sequence. According to a trellis coded modulation, the number of symbols is increased so
d'assurer une redondance. Seulement certaines transitions sont autorisées. to ensure redundancy. Only certain transitions are allowed.
Dans le cas d'une erreur, le récepteur peut détecter la transition la plus probablement correcte en ayant connaissance de toutes les transitions In the case of an error, the receiver can detect the most probably correct transition knowing all the transitions
autorisées possibles.allowed.
A la différence des codes par blocs qui envoient des données selon des blocs prédéterminés, les codes de convolution ne permettent pas de traiter d'une façon satisfaisante des erreurs de salve. En partie en tant que réponse à ce problème, des turbocodes ont été développés. Par essence, un turbocode est constitué par deux codes de convolution ou plus qui sont séparés par un entrelaceur qui opère sur la séquence d'entrée du premier codeur. Voir par exemple "Application of Turbo Codes for Discrete Multi-tone Unlike block codes that send data according to predetermined blocks, convolutional codes do not permit satisfactory processing of burst errors. In part as an answer to this problem, turbocodes have been developed. In essence, a turbocode consists of two or more convolutional codes that are separated by an interleaver that operates on the input sequence of the first encoder. See for example "Application of Turbo Codes for Discrete Multi-tone
Modulation", de Hamid R. Sadjapour, AT & T Shannon Labs, 1996. Modulation "by Hamid R. Sadjapour, AT & T Shannon Labs, 1996.
Le turbocode est en train d'attirer de plus en plus l'intérêt du fait de son gain de codage plus important. Dans un système de ligne d'abonné numérique ou DSL, un turbocode a été utilisé pour remplacer un code par treillis afin d'obtenir une performance meilleure en termes de taux d'erreurs binaires (BER). Cependant, lorsque la dimension de la constellation augmente, I'avantage constitué par le gain de codage du turbocode commence à s'effondrer. Ceci est dû au fait que les bits de redondance ou The turbocode is attracting more and more interest because of its larger coding gain. In a digital subscriber line or DSL system, a turbocode has been used to replace a trellis code in order to achieve better performance in terms of bit error rates (BER). However, as the size of the constellation increases, the advantage of the coding gain of the turbocode begins to collapse. This is because the redundancy bits or
redondants rendent la dimension de la constellation encore plus importante. Redundants make the dimension of the constellation even more important.
Un objet de la présente invention consiste à augmenter le débit de An object of the present invention is to increase the flow rate of
transmission de données, par exemple dans un système DMT. data transmission, for example in a DMT system.
Résumé de l'invention Conformément à la présente invention, on propose un procédé permettant de transmettre des données sur un canal de communication, comprenant la réception d'un train de bits arrivant, le passage d'au moins certains desdits bits au travers d'un turbocodeur afin de générer des bits de sortie turbocodés et la génération de mots correspondant à des points de symbole sur une constellation dans un schéma de modulation de code par treillis en utilisant au moins lesdits bits qui sont passés au SUMMARY OF THE INVENTION In accordance with the present invention there is provided a method for transmitting data over a communication channel, comprising receiving an incoming bitstream, passing at least some of said bits through a turbo encoder for generating turbo-encoded output bits and generating words corresponding to symbol points on a constellation in a trellis code modulation scheme using at least said bits that are passed to the
travers dudit turbocodeur.through said turbocharger.
Selon la présente invention, le turbocodeur est de préférence utilisé pour coder seulement le bit de poids le plus faible (LSB) dans la constellation puisque le LSB est le plus sensible à des erreurs. Le débit de données susceptible d'être obtenu à l'aide de ce moyen est éloigné de la capacité de Shannon de seulement 2 dB. L'invention combine un turbocode puissant avec un schéma de modulation codée par treillis afin d'augmenter le débit de According to the present invention, the turbo encoder is preferably used to encode only the least significant bit (LSB) in the constellation since the LSB is the most sensitive to errors. The data rate that can be achieved using this means is far from Shannon's capacity of only 2 dB. The invention combines a powerful turbocode with a trellis coded modulation scheme to increase the throughput of
données, de préférence dans un système DMT (multifréquence discret). data, preferably in a DMT (discrete multi-frequency) system.
Dans un système DMT, de multiples sous-canaux sont utilisés pour transmettre des données, chacun d'entre eux présentant différentes porteuses et différentes constellations QAM contenant différents nombres de bits par point de constellation. Normalement, le nombre de bits au niveau de chaque point de constellation est un entier et un sous-canal est inutilisable s'il ne peut pas supporter un bit de données entier. Conformément à l'invention, un algorithme de spectre étendu peut être combiné avec une modulation turbocodée par treillis de telle sorte que des canaux qui transportent moins d'un bit entier d'information puissent également être utilisés. En tant que résultat, la capacité globale en termes de canaux peut être augmentée fortement. In a DMT system, multiple sub-channels are used to transmit data, each of which has different carriers and different QAM constellations containing different numbers of bits per constellation point. Normally, the number of bits at each constellation point is an integer and a subchannel is unusable if it can not support an entire data bit. According to the invention, an extended spectrum algorithm can be combined with trellis-coded modulation so that channels carrying less than one whole bit of information can also be used. As a result, the overall capacity in terms of channels can be greatly increased.
Brève description des dessinsBrief description of the drawings
L'invention sera maintenant décrite de manière davantage détaillée à titre d'exemple seulement par report aux dessins annexés parmi lesquels: la figure 1 représente un codeur conformément aux principes de l'invention pour x et y > 1, o x et y sont le nombre de bits dans chaque point de constellation (symbole); la figure 2 représente la structure de codeur pour x = 1 et y > 1, o le débit de turbocodage est de 2/3; la figure 3 représente une structure de codeur pour le cas y = 1 et x > 1; la figure 4 représente le codeur pour x = y = 1, o le débit de codage est de 1/2; la figure 5 est un schéma fonctionnel du décodeur; la figure 6 représente une constellation qui représente comment les trois bits finals sont déterminés; et la figure 7 est une constellation qui représente la détermination des The invention will now be described in more detail by way of example only with reference to the accompanying drawings in which: Figure 1 shows an encoder according to the principles of the invention for x and y> 1, ox and y are the number bits in each constellation point (symbol); Fig. 2 shows the encoder structure for x = 1 and y> 1, where the turbo-coding rate is 2/3; Fig. 3 shows an encoder structure for the case y = 1 and x> 1; FIG. 4 represents the coder for x = y = 1, where the coding rate is 1/2; Figure 5 is a block diagram of the decoder; Fig. 6 shows a constellation representing how the three final bits are determined; and Figure 7 is a constellation that represents the determination of
bits de poids le plus fort.bits of the strongest weight.
Description détaillée des modes de réalisation préférés Detailed Description of the Preferred Embodiments
L'invention sera décrite dans le contexte d'un système DMT ou multifréquence discret qui pourrait typiquement contenir 1000 sous-canaux dont chacun peut transporter un nombre différent de symboles représentant un nombre distinct de bits, c'est-à-dire que le nombre de points de constellation pour chaque sous-canal peut varier, et par conséquent, le The invention will be described in the context of a discrete DMT or multi-frequency system which could typically contain 1000 subchannels each of which can carry a different number of symbols representing a distinct number of bits, i.e. the number constellation points for each subchannel can vary, and therefore the
nombre de bits par point de constellation peut varier. number of bits per constellation point may vary.
Codeur Comme représenté sur la figure 1, une partie d'un train de bits arrivant est appliquée sur un bloc de données de codeur 10 qui est une mémoire adressable. Si l'on suppose 10 bits par symbole y compris un bit de contrôle pour deux sous-canaux, les 1000 canaux peuvent transporter 9500 bits à la fois. Par conséquent, typiquement 9500 bits d'un train de bits ou binaire arrivant sont appliqués dans le codeur. Une fraction de ces bits, typiquement Encoder As shown in FIG. 1, part of an incoming bitstream is applied to an encoder data block 10 which is an addressable memory. Assuming 10 bits per symbol including one control bit for two subchannels, the 1000 channels can carry 9500 bits at a time. Therefore, typically 9500 bits of an arriving bitstream or bit stream are applied in the encoder. A fraction of these bits, typically
1500, sont appliqués sur le bloc de données de codeur 10. 1500, are applied to the encoder data block 10.
Le codeur peut de préférence être mis en oeuvre en tant que codeur parallèle comme décrit dans notre demande de brevet du Royaume Uni de Grande Bretagne connexe de numéro 0010330.9 déposée le 18 avril 2000 The encoder can preferably be implemented as a parallel encoder as described in our co-pending United Kingdom patent application number 0010330.9 filed April 18, 2000.
dont le contenu est incorporé ici à titre de référence. whose contents are incorporated herein by reference.
Dans l'exemple représenté, trois bits ul, u2, u3 sont émis en sortie séquentiellement depuis le bloc de données de codeur 10 et trois bits U'1, u'2, u'3 sont émis en sortie en tant que données entrelacées. Les bits de données u2 et u3 forment des composantes vo0, va du premier mot de sortie v et le bit u1 forme le bit w1 du second mot de sortie w. Le bit wo est formé en turbocodant les groupes de bits u1, u2, u3 et u'l, u'2, u'3 à l'aide de codeurs convolutionnels systématiques récursifs 12, 14 après passage au travers de registres à In the example shown, three bits μ1, u2, u3 are sequentially outputted from the encoder data block 10 and three bits U'1, u'2, u'3 are output as interleaved data. The data bits u2 and u3 form components vo0, va of the first output word v and the bit u1 forms the bit w1 of the second output word w. The wo bit is formed by turbocharging the groups of bits u1, u2, u3 and u'1, u'2, u'3 by means of recursive systematic convolutional coders 12, 14 after passing through registers to
décalage respectifs 16, 18.respective offset 16, 18.
La structure du codeur de constellation utilisé est similaire à celle utilisée dans un système ADSL. Le mot binaire u = (uz,, uz,.,..., ul) détermine deux mots binaires v = (v,.y,..., vo) et w = (wy.1,..., w0) (o z' = x + y -1) qui sont utilisés pour consulter deux points de constellation (chacun contient The structure of the constellation encoder used is similar to that used in an ADSL system. The binary word u = (uz ,, uz,., ..., ul) determines two binary words v = (v, .y, ..., vo) and w = (wy.1, ..., w0 ) (oz '= x + y -1) which are used to look up two constellation points (each contains
respectivement x et y bits) dans la table de consultation de codeur. respectively x and y bits) in the encoder look-up table.
La figure I représente la structure de codeur pour x > 1 et y > 1, o le turbocodeur utilisé est un codeur systématique avec une vitesse ou un débit de codage 3/4 ramené au débit 1/2. Le turbocodeur 20 est constitué par les deux codeurs convolutionnels systématiques récursifs 12, 14 (RSC1 et RSC2). Le codeur RSC1 extrait des données séquentielles à partir du bloc de données de codeur 10 et le codeur RSC2 extrait des données entrelacées à FIG. 1 shows the encoder structure for x> 1 and y> 1, where the turbo encoder used is a systematic encoder with a rate or rate of 3/4 coding brought back to the 1/2 rate. The turbocoder 20 consists of the two recursive systematic convolutional coders 12, 14 (RSC1 and RSC2). The RSC1 encoder extracts sequential data from the encoder data block 10 and the RSC2 encoder extracts data interleaved with
partir du même bloc de données 10. from the same data block 10.
La longueur du bloc de données dépend du nombre de données qui sont transmises dans chaque trame de signal, soit 9500 bits dans l'exemple présenté ci-avant. Normalement, un nombre entier de blocs de données seront transmis dans chaque trame de signal. Les figures 2 à 4 représentent The length of the data block depends on the number of data that are transmitted in each signal frame, ie 9500 bits in the example presented above. Normally, an integer number of data blocks will be transmitted in each signal frame. Figures 2 to 4 represent
la structure de codeur pour d'autres valeurs de x et y. the encoder structure for other values of x and y.
La figure 2 représente la structure de codeur pour x = 1 et y > 1, o la vitesse ou le débit de turbocodage est de 2/3. Pour le cas de y = 1 et x > 1, la structure de codeur qui est représentée sur la figure 3 est similaire à celle qui Figure 2 shows the encoder structure for x = 1 and y> 1, where the rate or turbo coding rate is 2/3. For the case of y = 1 and x> 1, the encoder structure shown in Figure 3 is similar to the one
est représentée sur la figure 2.is shown in Figure 2.
La figure 3 représente la structure de codeur pour le cas x = y = 1, o le débit de codage ou vitesse de codage est de 1/2. Pour y < I (ou x < 1), une structure de codeur similaire à celle qui est représentée sur les figures 1 à 4 peut être utilisée en fonction de la valeur de x (ou de y). La seule différence réside dans le fait qu'un bit sera transmis en FIG. 3 represents the encoder structure for the case x = y = 1, where the coding rate or coding rate is 1/2. For y <I (or x <1), an encoder structure similar to that shown in Figures 1 to 4 may be used depending on the value of x (or y). The only difference is that a bit will be transmitted in
utilisant K sous-canaux o y = 1/K en utilisant un code étalé. using K subchannels o y = 1 / K using a spread code.
Si le code étalé qui est utilisé est [b1, b2,..., bK], 0 peut être transmis en tant que [b1, b2,..., bK] o (k = 1, 2,..., K) et 1 est transmis en tant que [bl,b2,...,bK]. La constellation pour chaque souscanal dans le groupe de K sous-canaux utilise un bit par constellation de canal et le k-ième canal transmet le bit bk. De façon globale, K souscanaux sont requis pour transmettre un bit de données. L'avantage d'un tel agencement réside dans le fait qu'une autodiaphonie peut être réduite fortement si différents codes étalés sont utilisés pour différents modems dans le même faisceau de paires. Des codes étalés appropriés sont décrits dans IEEE Communications Letters, vol. If the spread code that is used is [b1, b2, ..., bK], 0 can be transmitted as [b1, b2, ..., bK] o (k = 1, 2, ..., K) and 1 is transmitted as [bl, b2, ..., bK]. The constellation for each subchannel in the subchannel K group uses one bit per channel constellation and the k-th channel transmits the bk bit. Overall, K sub-channels are required to transmit a bit of data. The advantage of such an arrangement is that autotax can be strongly reduced if different spread codes are used for different modems in the same pair of pairs. Suitable spread codes are described in IEEE Communications Letters, Vol.
4, n 3, pp. 80 à 82, mars 2000, R. V. Sonalkar et R. R. Shively. 4, No. 3, pp. 80 to 82, March 2000, R. V. Sonalkar and R. R. Shively.
Décodeur La procédure de décodage pour une modulation turbocodée par treillis est constituée par les étapes qui suivent: 1. Décodage souple du bit de poids le plus faible (LSB); 2. Décodage dur des bits de poids le plus fort (MSB); 3. Décodage du LSB en utilisant un algorithme de turbodécodeur; et Decoder The decoding procedure for a trellis-coded modulation consists of the following steps: 1. Flexible decoding of the least significant bit (LSB); 2. Hard decoding of the most significant bits (MSB); 3. Decoding the LSB using a turbodecoder algorithm; and
4. Détermination de tous les bits de données. 4. Determination of all data bits.
Si une constellation de N bits est utilisée pour une transmission de données dans un sous-canal donné, l'emplacement de la constellation peut être représenté par deux vecteurs dimensionnels Xb = [bxM, bx(M-1),... bxl, 1] et Yb = [byM, by(M-1),..., by1, 1] o M = N/2 pour un nombre pair N et M = (N + 1)/2 pour un nombre impair N. Le décodeur sera le même pour à la fois Xb et Yb. On suppose que des données reçues sont (X, Y). Si (2M + 1 + 2k) < X < (-2M+ 1 + 2(k + 1)) o k=0, 1,..., 2M-1 et si l'on pose X1 = (-2M+ 1 + 2k) et X2 = (-2M + 1 + 2(k+1)), la détermination de si le X final prendra la valeur X1 ou X2 dépend du résultat de décodeur du fait du LSB. Pour N > 1, le bit souple (une probabilité logarithmique sans une constante) pour le LSB dans X est déterminé comme suit [_ (X+1 si N=2 P1 =1og(sonde(bx1=1)) = X_2-l(X+4k_2M+3)2 autrement L k=0 l k-O 2o2 'aurmn F_ (X+1)2 si N=2 P0 =log(sonde(bx1=0)) = 2 (X+4k2M+1)2 _2M-1(X+ 4k_2M+3) Ik=0 2, autrement tk=O 2cy o u2 est la puissance de bruit. Le bit souple pour le LSB dans Y peut être obtenu d'une façon similaire en remplaçant X par Y dans l'équation If an N-bit constellation is used for data transmission in a given subchannel, the location of the constellation can be represented by two dimensional vectors Xb = [bxM, bx (M-1), ... bx1, 1] and Yb = [byM, by (M-1), ..., by1, 1] where M = N / 2 for an even number N and M = (N + 1) / 2 for an odd number N. The decoder will be the same for both Xb and Yb. It is assumed that received data is (X, Y). If (2M + 1 + 2k) <X <(-2M + 1 + 2 (k + 1)) ok = 0, 1, ..., 2M-1 and if we put X1 = (-2M + 1 + 2k ) and X2 = (-2M + 1 + 2 (k + 1)), the determination of whether the final X will take the value X1 or X2 depends on the decoder result due to the LSB. For N> 1, the soft bit (a logarithmic probability without a constant) for the LSB in X is determined as follows [_ (X + 1 if N = 2 P1 = 1og (probe (bx1 = 1)) = X_2-l (X + 4k_2M + 3) 2 otherwise L k = 0 l kO 2o2 'aurmn F_ (X + 1) 2 if N = 2 P0 = log (probe (bx1 = 0)) = 2 (X + 4k2M + 1) 2 _2M-1 (X + 4k_2M + 3) Ik = 0 2, otherwise tk = O 2cy where u2 is the noise power The soft bit for the LSB in Y can be obtained in a similar way by replacing X by Y in 'equation
mentionnée ci-avant.mentioned above.
Si N = 1, le bit souple sera: P1l=log(sonde(bxl =1))= _(X+1)2 + (Y+1)2 2 2a2 2 a2) P0 =log(sonde(bx1=0))= (X-1)y2(Y-1)2 2 Si N < 1 et si le code étalé vaut [b1, b2,..., bK], le bit souple peut être calculé comme suit: K (X-(1-2bk)2) (Y_(1-2bk)2) Po = log(sonde(bxl =0))= - + 22) k=l 2oy2 2o2 La sortie de bit souple est envoyée à un circuit de turbodécodeur qui est représenté sur la figure 5. Le turbodécodeur est constitué par deux décodeurs LOG-MAP 30, 32. Chaque décodeur contient une itération vers l'avant (a) et une itération vers l'arrière (13) et réalise le calcul de sortie de bit souple finale. La seule différence réside dans le fait que la sortie contient non seulement le bit de données mais également le bit de contrôle d'erreur au If N = 1, the soft bit will be: P1l = log (probe (bx1 = 1)) = _ (X + 1) 2 + (Y + 1) 2 2 2a2 2 a2) P0 = log (probe (bx1 = 0) )) = (X-1) y2 (Y-1) 2 2 If N <1 and if the spread code is [b1, b2, ..., bK], the soft bit can be calculated as follows: K (X - (1-2bk) 2) (Y_ (1-2bk) 2) Po = log (probe (bx1 = 0)) = - + 22) k = 1 2oy2 2o2 The soft bit output is sent to a turbo-decoder circuit which is shown in FIG. 5. The turbodecoder consists of two LOG-MAP decoders 30, 32. Each decoder contains a forward iteration (a) and a backward iteration (13) and performs the output calculation. final soft bit. The only difference is that the output contains not only the data bit but also the error check bit at
niveau de sa dernière itération.level of its last iteration.
La raison pour laquelle la sortie du bit de contrôle d'erreur est requise réside dans le fait que LSB est nécessaire pour déterminer X (ou Y) à partir de deux points de constellation possibles Xi et X2 (ou Y1 et Y2) bien que certains de ces LSB soient des bits de contrôle d'erreur. Un exemple détaillé d'un turbodécodeur peut être trouvé dans l'article de Sadjapour auquel il a été fait référence ci-avant et également dans le document de C. Berrou et suivants, "Near Optimum Error Correcting Coding and Decoding Turbo-codes", IEEE The reason the output of the error check bit is required is that LSB is needed to determine X (or Y) from two possible constellation points Xi and X2 (or Y1 and Y2) although some of these LSBs are error control bits. A detailed example of a turbodecoder can be found in the Sadjapour article referred to above and also in the document by C. Berrou et al., "Near Optimum Error Correcting Coding and Decoding Turbo Codes", IEEE
Trans. on Communications, vol. 44, N 10, octobre 1996. Trans. on Communications, vol. 44, No. 10, October 1996.
Les bits de contrôle d'erreur de sortie souple à l'instant k sont calculés comme suit: Pckl = sonde (bck = 1) = MAX(s, s,) [Yckl (Rk, S, S') OEk-1 (S') k(S)] Pçko = sonde (bck = 0) = MAX(s, s') [YckO (Rk, S, S') Ok-1(S') 13k(S)] o s est l'état du turbocodeur à l'instant k et s' est son état à l'instant k-1. Rk représente les données reçues. 3k(S) est la probabilité pour l'état s (à l'instant k) pour une itération vers l'arrière et Ok.l(s') représente la probabilité pour l'état s' (à l'instant k-1) pour une itération vers l'avant. YCko(Rk, s, s') et YCk1(Rk, s, s') sont la probabilité de transition depuis l'état s' jusqu'à l'état s avec des données reçues qui sont Rk et avec le bit de contrôle d'erreur qui vaut The soft output error check bits at time k are computed as follows: Pck1 = probe (bck = 1) = MAX (s, s,) [Yck1 (Rk, S, S ') OEk-1 ( S ') k (S)] Pcko = probe (bck = 0) = MAX (s, s') [YckO (Rk, S, S ') Ok-1 (S') 13k (S)] os is the state of the turbocoder at time k and s' is its state at time k-1. Rk represents the received data. 3k (S) is the probability for the state s (at instant k) for a backward iteration and Ok.l (s ') represents the probability for the state s' (at the instant k- 1) for a forward iteration. YCko (Rk, s, s') and YCk1 (Rk, s, s') are the transition probability from state s' to state s with received data which are Rk and with the control bit error that is worth
respectivement 0 et 1.respectively 0 and 1.
Après passage au travers du turbodécodeur, les LSB sont déterminés et si N > 1, les MSB doivent encore être déterminé à partir de deux points de constellation possibles. On considère en tant qu'exemple X qui présente deux After passing through the turbodecoder, the LSBs are determined and if N> 1, the MSBs must still be determined from two possible constellation points. We consider as example X which presents two
valeurs possibles Xi ou X2 (qui sont deux points voisins dans la constellation). possible values Xi or X2 (which are two neighboring points in the constellation).
Pour deux points de constellation voisins, les LSB pour Xi et pour X2 doivent être différents. Par conséquent, Xb = [bxM, bX(M-1),..., bx1, 1] peut être déterminé à partir de X1 et de X2 en examinant le LSB afférent. De façon similaire, Yb = [byM, by(M-1),..., by1, 1] peut être déterminé. Après que Xb et Yb sont déterminés, les bits de données reçus finals sont obtenus pour les trois For two neighboring constellation points, the LSBs for Xi and for X2 must be different. Therefore, Xb = [bxM, bX (M-1), ..., bx1, 1] can be determined from X1 and X2 by examining the corresponding LSB. Similarly, Yb = [byM, by (M-1), ..., by1, 1] can be determined. After Xb and Yb are determined, the final received data bits are obtained for the three
cas qui suivent.following cases.
Lorsque N est pair, les bits finals sont [bN, bN-1,..., b1] = [bxM, byM, bx(M- When N is even, the final bits are [bN, bN-1, ..., b1] = [bxM, byM, bx (M-
1), by(M-1),..., bx1, by1]. Si N = 3, les trois bits finals sont déterminés au moyen d'une constellation qui est représentées sur la figure 6, laquelle est en outre 1), by (M-1), ..., bx1, by1]. If N = 3, the three final bits are determined by means of a constellation which is shown in Figure 6, which is furthermore
présentée sous forme de tableau au niveau du tableau 1. presented in tabular form in Table 1.
bx2bxl by2byl b3b2b1bx2bxl by2byl b3b2b1
00 00 00000 00 000
00 01 10100 01 101
00 10 00100 10 001
00 11 00100 11 001
01 00 00001 00 000
01 01 10101 01 101
01 10 11101 10 111
01 11 11101 11 111
00 10000 100
01 10001 100
10 11010,110
11 01111,011
11 00 01011 00 010
11 01 01011 01 010
11 10 11011 10 110
11 11 01111 11 011
Si N est un nombre impair et que N > 3, le bit faible (N - 5) peut être déterminé de la même façon que pour le cas de N pair, c'est-à-dire [bN-5, bN-6, b1] = [bx(M-3), by(M-3), bx(M-4), by(M-4),..., bx1, b1].. Les 5 MSB sont déterminés conformément à une constellation telle que représentée sur la figure 7, laquelle constellation est en outre présentée sous forme de tableau If N is an odd number and N> 3, the weak (N - 5) bit can be determined in the same way as for the case of even N, ie [bN-5, bN-6 , b1] = [bx (M-3), by (M-3), bx (M-4), by (M-4), ..., bx1, b1]. The MSBs are determined in accordance with a constellation as shown in Figure 7, which constellation is further presented in tabular form
au niveau du tableau 2.at the level of Table 2.
bxMbx(M-1)bx(M-2) byMby(M-1)by(M-2) bNbN-1 bN-2bN-3bN-4 bxMbx (M-1) bx (M-2) byMby (M-1) by (M-2) bNbN-1bN-2bN-3bN-4
000 000 00000000 000 00000
000 001 00001000 001 00001
000 010 10100000 010 10100
000 011 10100000 011 10100
000 100 10101000 100 10101
000 101 10101000 101 10101
000 110 00100000 110 00100
000 111 00101000 111 00101
001 000 00010001 000 00010
001 001 00011001 001 00011
001 010 10110001 010 10110
001 011 10110001 011 10110
001 100 10111001 100 10111
001 101 10111001 101 10111
001 110 00110001 110 00110
001 111 00111001 111 00111
000 10000000 10000
001 10001001 10001
010 10110010 10110
011 10110011 10110
100 10111100 10111
101 10111101 10111
110 11100110 11100
111 11101111 11101
011 000 10000011 000 10000
011 001 10001011 001 10001
011 010 10001011 010 10001
011 011 10001011 011 10001
011 100 11101011 100 11101
011 101 11100011 101 11100
011 110 11100011 110 11100
011 111 11100011 111 11100
000 10010000 10010
001 10011001 10011
010 10011010 10011
011 10011011 10011
100 11110100 11110
101 11110101 11110
110 11110110 11110
111 11111111 11111
101 000 10010101,000 10010
101 001 10011101 001 10011
101 010 11000101 010 11000
101 011 11000101 011 11000
101 100 11001101 100 11001
101 101 11001101 101 11001
101 110 11110101 110 11110
101 111 11111101 111 11111
000 01000000 01000
001 01001001 01001
010 11000010 11000
011 11000011 11000
100 11001100 11001
101 11001101 11001
110 01100110 01100
111 01101111 01101
111 000 01010111 000 01010
111 001 01011111 001 01011
111 010 11010111 010 11010
111 011 11010111 011 11010
111 100 11011111 100 11011
111 101 11011111 101 11011
111 110 01110111 110 01110
111 111 01111111 111 01111
Il sera apprécié que l'utilisation d'un turbocode comme décrit en combinaison avec un code par treillis permet l'obtention d'une meilleure performance qu'il n'est possible avec des codes par treillis présentement utilisés. Lorsqu'un algorithme par spectre étalé est combiné avec une modulation turbocodée par treillis, il est possible d'utiliser des canaux qui transportent moins d'un bit d'information, ce qui conduit à une augmentation It will be appreciated that the use of a turbocode as described in combination with trellis code provides better performance than is possible with lattice codes presently used. When a spread spectrum algorithm is combined with a trellis-coded modulation, it is possible to use channels carrying less than one information bit, which leads to an increase
importante de la capacité en termes de canaux. significant capacity in terms of channels.
Les blocs décrits peuvent être mis en oeuvre dans un processeur de signal numérique ou DSP qui utilise des techniques DSP standards connues The described blocks can be implemented in a digital signal processor or DSP which uses known standard DSP techniques
de l'homme de l'art.of the man of the art.
Claims (14)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0010334A GB2361853A (en) | 2000-04-28 | 2000-04-28 | Turbo encoding for trellis modulation |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2808394A1 true FR2808394A1 (en) | 2001-11-02 |
FR2808394B1 FR2808394B1 (en) | 2005-07-01 |
Family
ID=9890656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0105763A Expired - Fee Related FR2808394B1 (en) | 2000-04-28 | 2001-04-27 | METHOD AND DEVICE FOR TURBOCODULATED TRELLIS MODULATION |
Country Status (4)
Country | Link |
---|---|
CN (1) | CN1330454A (en) |
DE (1) | DE10120156A1 (en) |
FR (1) | FR2808394B1 (en) |
GB (1) | GB2361853A (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9842020B2 (en) * | 2014-11-26 | 2017-12-12 | Qualcomm Incorporated | Multi-wire symbol transition clocking symbol error correction |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5970098A (en) * | 1997-05-02 | 1999-10-19 | Globespan Technologies, Inc. | Multilevel encoder |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU5407898A (en) * | 1996-12-04 | 1998-06-29 | Fernway Limited | A method for trellis coding a logarithmic distribution of constellation points |
-
2000
- 2000-04-28 GB GB0010334A patent/GB2361853A/en not_active Withdrawn
-
2001
- 2001-04-25 DE DE2001120156 patent/DE10120156A1/en not_active Withdrawn
- 2001-04-27 CN CN 01115659 patent/CN1330454A/en active Pending
- 2001-04-27 FR FR0105763A patent/FR2808394B1/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5970098A (en) * | 1997-05-02 | 1999-10-19 | Globespan Technologies, Inc. | Multilevel encoder |
Non-Patent Citations (2)
Title |
---|
CAI ZHAOHUI ET AL: "DMT scheme with multidimensional turbo trellis code", ELECTRONICS LETTERS, IEE STEVENAGE, GB, vol. 36, no. 4, 17 February 2000 (2000-02-17), pages 334 - 335, XP006014826, ISSN: 0013-5194 * |
SADJADPOUR H R ED - INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS: "APPLICATION OF TURBO CODES FOR DISCRETE MULTI-TONE MODULATION SCHEMES", ICC '99. 1999 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS. CONFERENCE RECORD. VANCOUVER, CA, JUNE 6 - 10, 1999, IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS, NEW YORK, NY : IEEE, US, vol. VOL. 2, 6 June 1999 (1999-06-06), pages 1022 - 1027, XP000898013, ISBN: 0-7803-5285-8 * |
Also Published As
Publication number | Publication date |
---|---|
GB0010334D0 (en) | 2000-06-14 |
DE10120156A1 (en) | 2001-11-15 |
GB2361853A (en) | 2001-10-31 |
CN1330454A (en) | 2002-01-09 |
FR2808394B1 (en) | 2005-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7415079B2 (en) | Decoder design adaptable to decode coded signals using min* or max* processing | |
EP0891656B1 (en) | Data block convolutional coding device and method, and corresponding decoding method and device | |
US7139959B2 (en) | Layered low density parity check decoding for digital communications | |
EP1547289B1 (en) | Reception of a signal modulated according to a multilevel coding technique | |
EP0848501B1 (en) | Digital transmission system and method comprising a product code combined with multidimensional modulation | |
EP0529718B1 (en) | Digital signal transmission system using concatenated codes and receiver and decoder used for this system | |
FR2815199A1 (en) | Cyclic turbo coding scheme improves minimum Hamming distance | |
FR2804260A1 (en) | DIGITAL CORRECTIVE ERROR-TYPE CODING TRANSMITTING METHOD | |
FR2794915A1 (en) | TRANSMITTING METHOD AND DEVICE, RECEIVING METHOD AND DEVICE, AND SYSTEMS USING THE SAME | |
FR2765749A1 (en) | WEIGHTED DECISION SYNDROME-BASED DECODER FOR CONVOLUTION CODES | |
US6956872B1 (en) | System and method for encoding DSL information streams having differing latencies | |
FR2920929A1 (en) | METHOD AND DEVICE FOR ENCODING SYMBOLS WITH A CODE OF THE TYPE WITH PARITY CONTROL AND CORRESPONDING DECODING METHOD AND DEVICE | |
EP1959572B1 (en) | Decoding method with message passing and forced convergence | |
EP1101288B1 (en) | Method and device for error correction coding and corresponding decoding method and device | |
JP3674851B2 (en) | Scaling feedback turbo decoder | |
FR2837044A1 (en) | Modulation procedure for binary data includes determination of number of bits to load according to signal to noise ratio and error probability | |
FR2952252A1 (en) | METHOD AND DEVICE FOR DECODING, COMPUTER PROGRAM PRODUCT, CORRESPONDING MEANS OF STORAGE AND CORRESPONDING DESTINATION NODE | |
KR100666399B1 (en) | Receiver and signal processing method | |
US6671327B1 (en) | Turbo trellis-coded modulation | |
FR2808394A1 (en) | METHOD AND DEVICE FOR TURBOCODULATED TRELLIS MODULATION | |
FR2805418A1 (en) | DIGITAL CORRECTIVE ERROR-TYPE CODING TRANSMITTING METHOD | |
EP1754311B1 (en) | System for compensating turbodecoder phase shift | |
Viraktamath et al. | Performance analysis of source coding techniques | |
FR2808390A1 (en) | METHOD AND DEVICE FOR TURBOCODULATED PARALLEL TRELLIS MODULATION | |
JP2024545829A (en) | Method and device for transmitting binary data - Patents.com |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
CD | Change of name or company name | ||
TP | Transmission of property | ||
ST | Notification of lapse |
Effective date: 20081231 |