FR2820565A1 - Procedes et appareils de reagencement de sous-codes, de turbocodes quasi-complementaires et de transmission de symboles utilisant ces sous-codes - Google Patents
Procedes et appareils de reagencement de sous-codes, de turbocodes quasi-complementaires et de transmission de symboles utilisant ces sous-codes Download PDFInfo
- Publication number
- FR2820565A1 FR2820565A1 FR0201499A FR0201499A FR2820565A1 FR 2820565 A1 FR2820565 A1 FR 2820565A1 FR 0201499 A FR0201499 A FR 0201499A FR 0201499 A FR0201499 A FR 0201499A FR 2820565 A1 FR2820565 A1 FR 2820565A1
- Authority
- FR
- France
- Prior art keywords
- qctc
- sep
- sub
- codes
- turbocode
- 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
- 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/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1835—Buffer management
- H04L1/1845—Combining techniques, e.g. code combining
-
- 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
-
- 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/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
-
- 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/635—Error control coding in combination with rate matching
- H03M13/6362—Error control coding in combination with rate matching by puncturing
- H03M13/6368—Error control coding in combination with rate matching by puncturing using rate compatible puncturing or complementary puncturing
- H03M13/6387—Complementary punctured convolutional [CPC] codes
-
- 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
- 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/0067—Rate matching
- H04L1/0068—Rate matching by puncturing
-
- 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/0067—Rate matching
- H04L1/0068—Rate matching by puncturing
- H04L1/0069—Puncturing patterns
-
- 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/08—Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
-
- 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/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1812—Hybrid protocols; Hybrid automatic repeat request [HARQ]
- H04L1/1819—Hybrid protocols; Hybrid automatic repeat request [HARQ] with retransmission of additional or different redundancy
-
- 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/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1887—Scheduling and prioritising arrangements
-
- 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/6306—Error control coding in combination with Automatic Repeat reQuest [ARQ] and diversity transmission, e.g. coding schemes for the multiple transmission of the same information or the transmission of incremental redundancy
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Communication Control (AREA)
- Detection And Correction Of Errors (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
L'invention concerne un procédé et un appareil pour générer des turbocodes quasi-complémentaires QCTC à deux dimensions au moyen d'un générateur (1302) connecté à un codeur de canal (1301) et à un dispositif de commande (1303) de sélection de sous-code. Des ensembles de sous-codes de turbocodes QCTC ayant des taux d'émission donnés sont générés et les sous-codes sont réagencés dans un ensemble de sous-codes avec un taux d'émission différent, pour une utilisation dans la transmission suivante d'un sous-code ayant un taux d'émission prédéterminé.Domaine d'application : télécommunications.
Description
<Desc/Clms Page number 1>
L'invention concerne de façon générale la génération de codes dans un système de communications de données, et en particulier un appareil et un procédé pour générer des turbocodes quasi-complémentaires (QCTC) à deux dimensions et des turbocodes QCTC adaptatifs en prenant en considération les caractéristiques de turbocodes dans un système de communications par paquets utilisant un processus de retransmission ou un système de communications générales utilisant un processus de retransmission.
En général, un système utilisant un processus de retransmission (par exemple un système à demande automatique de répétition ARQ hybride) effectue une combinaison souple ou conditionnelle pour améliorer le débit de transmission. Les techniques de combinaison souple sont divisées en une combinaison en diversité de paquets et une combinaison en codes de paquets. Ces deux types de combinaison sont habituellement appelés combinaison souple ou conditionnelle de paquets. Bien que le processus de combinaison en diversité de paquets ait des performances qui ne sont pas optimales par rapport au processus de combinaison en codes de paquets, il est favorable dû à une mise en oeuvre aisée lorsque les pertes de performances sont faibles.
Comme indiqué précédemment, un système de transmission par paquets utilise le processus de combinaison en codes de paquets pour améliorer le débit de transmission. Un émetteur émet un code avec un taux d'émission différent pour chaque transmission de paquets. Si une erreur est détectée dans le paquet reçu, un récepteur demande une retransmission et effectue une combinaison souple entre le paquet original et le paquet retransmis. Le paquet retransmis peut avoir un code différent de celui du paquet précédent. Le type de combinaison en codes de paquets est un processus combinant N paquets reçus avec un taux d'émission R à un code ayant un taux d'émission effectif de R/N avant le décodage, pour obtenir ainsi un gain de
<Desc/Clms Page number 2>
codage.
En ce qui concerne le type de combinaison en diversité de paquets, l'émetteur émet le même code avec un taux d'émission R à chaque transmission de paquet. Si une erreur est détectée dans le paquet reçu, le récepteur demande une retransmission et effectue une combinaison souple entre le paquet original et le paquet retransmis. Le paquet retransmis a un code identique à celui du paquet précédent.
Dans ce sens, le type de combinaison en diversité de paquets peut être considéré comme effectuant une moyenne de symboles sur un canal aléatoire. Le type de combinaison en diversité de paquets réduit la puissance de bruit en établissant. la moyenne des sorties souples de symboles d'entrée et parvient à un gain en diversité tel que celui offert par un canal à voies multiples car le même code est transmis de façon répétée sur un canal à évanouissement.
Cependant, le type de combinaison en diversité de paquets ne procure pas un gain de codage additionnel tel que celui obtenu à partir d'une structure en code, procuré par le type de combinaison en code de paquets.
Du fait de la simplicité de mise en oeuvre, la plupart des systèmes de communications par paquets ont utilisé le processus de combinaison en diversité de paquets, qui est actuellement en cours de développement pour être utilisé avec le système synchrone IS-2000 et le système asynchrone UMTS. La raison en est que les systèmes existant de communications par paquets utilisant des codes à convolutions et même une combinaison en codes de paquets n'offrent pas un gain important lorsqu'on utilise des codes à convolutions ayant un taux d'émission de données. Si un système ayant un taux R=1/3 supporte une retransmission, il n'y a pas une grande différence de performances entre le processus de combinaison en codes de paquets et le processus de combinaison en diversité de paquets. Le processus de combinaison en diversité de paquets est donc choisi en considérant la complexité de la mise en oeuvre.
<Desc/Clms Page number 3>
Cependant, l'utilisation de turbocodes en tant que codes de correction d'erreur sans voie de retour (FEC) exige un mécanisme différent de combinaisons de paquets car les turbocodes sont conçus en tant que codes de correction d'erreur afin d'avoir des caractéristiques de performances très proches de la"capacité limite de Shannon par canal" et leurs performances varient évidemment avec les taux d'émission des codes à la différence des codes à convolutions. On peut donc conclure que la combinaison en codes de paquets est réalisable pour un système de communications par paquets utilisant des turbocodes dans un processus de retransmission pour parvenir à des performances optimales.
Dans ce contexte, des codes QCTC ont été proposés pour augmenter les performances dans un système utilisant une combinaison souple. Des codes QCTC sont décrits en détail dans la demande de brevet coréenne ? P2000-62151 déposée par la présente Demanderesse.
Turbocodes quasi-complémentaires (QCTC)
On décrira ci-dessous un système qui sélectionne le processus de combinaison en codes de paquets ou le processus de combinaison en diversité de paquets en utilisant des codes QCTC classiques conformément à un taux d'émission de données.
On décrira ci-dessous un système qui sélectionne le processus de combinaison en codes de paquets ou le processus de combinaison en diversité de paquets en utilisant des codes QCTC classiques conformément à un taux d'émission de données.
Dans un système utilisant des turbocodes à R=1/5, par exemple, une combinaison en codes de paquets s'applique jusqu'à ce que le taux global d'émission des codes produit par une combinaison souple de paquets retransmis atteigne 1/5. Pour les paquets retransmis suivants, une combinaison en diversité de paquets, puis une combinaison en codes de paquets sont effectuées. Si le premier paquet est émis à un taux de données de 1/3, les symboles de redondance nécessaires sont fournis lors d'une demande de retransmission pour établir le taux global de code de 1/5.
Par conséquent, lorsqu'un récepteur reçoit les deux paquets, le taux global du code devient égal à 1/5. Chacun
<Desc/Clms Page number 4>
des paquets suivants'est répété avant une émission et le récepteur effectue une combinaison en diversité de paquets, puis une combinaison en code de paquets sur les paquets retransmis au taux de données de 1/5.
La figure 1 des dessins annexés et décrits ci-après est un graphique illustrant la différence de performances entre une combinaison en code de paquets et une combinaison en diversité de paquets dans le cas de turbocodes. Comme montré sur la figure 1, un turbocode ayant un faible taux de données de 1/6 présente un plus grand gain de performances qu'un turbocode ayant un taux d'émission élevé de 1/3 avec la même énergie de symbole Es et obtient un gain de performances de 3dB à partir de la combinaison en code de paquets. Par conséquent, la génération de
turbocodes de R=1/3 par la combinaison en code de paquets de sous-codes à R=1/6 produit un gain que des turbocodes ayant un taux d'émission inférieur à 1/3 présentent et un gain qu'une combinaison de différents codes procure, en même temps.
turbocodes de R=1/3 par la combinaison en code de paquets de sous-codes à R=1/6 produit un gain que des turbocodes ayant un taux d'émission inférieur à 1/3 présentent et un gain qu'une combinaison de différents codes procure, en même temps.
Plus particulièrement, pour la même énergie de symbole de code Es et le même taux d'émission, des turbocodes procurent des performances proches de la"capacité limite de Shannon par canal"en fonction des taux d'émission uniquement si un décodage par itération est totalement exécuté, à la différence des codes à convolutions. Il est connu dans la technique qu'un turbocode à faible taux d'émission procure un plus grand gain de performances qu'un turbocode à taux d'émission élevé avec la même énergie de
symbole de code Es. Par exemple, lorsque R=1/3 est réduit à R=1/6, la différence de performances peut être estimée en analysant une variation de la"capacité limite de Shannon par canal". La raison pour laquelle on suppose la même énergie de symbole Es indépendamment de R=1/3 ou 1/6 pour les courbes de la figure 1 est que la même énergie de symbole Es est utilisée pour chaque retransmission dans un système ARQ hybride (HARQ).
symbole de code Es. Par exemple, lorsque R=1/3 est réduit à R=1/6, la différence de performances peut être estimée en analysant une variation de la"capacité limite de Shannon par canal". La raison pour laquelle on suppose la même énergie de symbole Es indépendamment de R=1/3 ou 1/6 pour les courbes de la figure 1 est que la même énergie de symbole Es est utilisée pour chaque retransmission dans un système ARQ hybride (HARQ).
<Desc/Clms Page number 5>
Si un code à R=1/2 est répété une fois et que les deux codes sont soumis à une combinaison en diversité de paquets sur un canal à bruit blanc additif gaussien (BBAG), on obtient un gain maximal de 3dB en termes de rapport énergie de symbole/bruit (Es/No). Le même résultat apparaît dans le
cas d'un code à R=l/6. Ainsi, une courbe de performances pour le turbocode à R=1/3 est translatée en parallèle vers la gauche d'une valeur de +3dB du fait d'un gain de combinaison en diversité de paquets et une courbe de performances pour un turbocode à R=1/6 est également translatée en parallèle vers la gauche d'une valeur de +3dB lorsque la même énergie de symbole est fournie. Ici, les courbes de performances sont obtenues en ce qui concerne le rapport énergie/bruit (Eb/No), qui est mesuré pour comparer des performances de code conformément aux taux d'émission.
cas d'un code à R=l/6. Ainsi, une courbe de performances pour le turbocode à R=1/3 est translatée en parallèle vers la gauche d'une valeur de +3dB du fait d'un gain de combinaison en diversité de paquets et une courbe de performances pour un turbocode à R=1/6 est également translatée en parallèle vers la gauche d'une valeur de +3dB lorsque la même énergie de symbole est fournie. Ici, les courbes de performances sont obtenues en ce qui concerne le rapport énergie/bruit (Eb/No), qui est mesuré pour comparer des performances de code conformément aux taux d'émission.
En conséquence, la différence entre les courbes de performances de turbocodes est équivalente à la différence de performances entre la combinaison en diversité de paquets et la combinaison en code de paquets. La différence de performances conformément aux taux d'émission peut être estimée d'après la"capacité limite de Shannon par canal" et on peut obtenir une différence minimale de performances en utilisant un rapport signal/bruit (SNR) minimal demandé.
Dans un système utilisant des turbocodes ayant un taux d'émission R et une très grande dimension L de bloc de codeur, un rapport Eb/No minimal nécessaire pour procurer un canal sans erreur est exprimé sous la forme suivante :
Conformément à l'équation ci-dessus, le rapport Eb/No minimal demandé dans un bruit BBAG à chaque taux d'émission pour les turbocodes est indiqué dans le tableau 1 cidessous. Dans le tableau 1, un rapport Eb/No typique indique un rapport Eb/No demandé pour un taux d'erreur de bits (BER) inférieur à 0,00001 lorsque la dimension L de
<Desc/Clms Page number 6>
bloc de codage des turbocodes est de 1024.
<tb>
<tb> Taux <SEP> de <SEP> code <SEP> Rapport <SEP> Eb/No <SEP> demandé <SEP> Rapport <SEP> Eb/No <SEP> type
<tb> (dB) <SEP> (dB) <SEP> pour <SEP> un <SEP> taux
<tb> BER=10-
<tb> 3/4 <SEP> 0, <SEP> 86 <SEP> 3, <SEP> 310
<tb> 2/3 <SEP> 0, <SEP> 57 <SEP> 2, <SEP> 625
<tb> 1/2 <SEP> 0, <SEP> 00 <SEP> 1, <SEP> 682
<tb> 3/8-0, <SEP> 4141, <SEP> 202
<tb> 1/3-0, <SEP> 55 <SEP> 0, <SEP> 975
<tb> 1/4-0, <SEP> 82 <SEP> 0, <SEP> 756
<tb> 1/5-0, <SEP> 975 <SEP> 0, <SEP> 626
<tb> 1/6-1, <SEP> 084 <SEP> 0, <SEP> 525
<tb> 0-1, <SEP> 62 <SEP> NA
<tb>
<tb> Taux <SEP> de <SEP> code <SEP> Rapport <SEP> Eb/No <SEP> demandé <SEP> Rapport <SEP> Eb/No <SEP> type
<tb> (dB) <SEP> (dB) <SEP> pour <SEP> un <SEP> taux
<tb> BER=10-
<tb> 3/4 <SEP> 0, <SEP> 86 <SEP> 3, <SEP> 310
<tb> 2/3 <SEP> 0, <SEP> 57 <SEP> 2, <SEP> 625
<tb> 1/2 <SEP> 0, <SEP> 00 <SEP> 1, <SEP> 682
<tb> 3/8-0, <SEP> 4141, <SEP> 202
<tb> 1/3-0, <SEP> 55 <SEP> 0, <SEP> 975
<tb> 1/4-0, <SEP> 82 <SEP> 0, <SEP> 756
<tb> 1/5-0, <SEP> 975 <SEP> 0, <SEP> 626
<tb> 1/6-1, <SEP> 084 <SEP> 0, <SEP> 525
<tb> 0-1, <SEP> 62 <SEP> NA
<tb>
Comme indiqué dans le tableau 1, les rapports Eb/No demandés sont, respectivement, de 0,86, 0,57, 0,0,-0, 414, -0, 55, -0,82,-0, 975 et-1, 084dB pour les taux d'émission de 3/4,2/3, 1/2,3/8, 1/3,1/4, 1/5 et 1/6. Une différence de performances d'au moins 0,53dB existe entre un système
utilisant un code à R=1/3 et un système utilisant un code à R=1/6. Il s'agit d'une différence minimale de performances basée sur la"capacité limite de Shannon par canal". En considérant la mise en oeuvre d'un environnement de décodeur et de système réel, la différence devient plus grande.
utilisant un code à R=1/3 et un système utilisant un code à R=1/6. Il s'agit d'une différence minimale de performances basée sur la"capacité limite de Shannon par canal". En considérant la mise en oeuvre d'un environnement de décodeur et de système réel, la différence devient plus grande.
D'après une simulation, on a observé une différence approximative de performances de 1, 12dB entre un système utilisant une combinaison en code de paquets pour des codes à R=2/3 et un système utilisant une combinaison en diversité de paquets pour les codes à R=1/3.
Le tableau 2 montre la différence de performances entre une combinaison en code de paquets et une combinaison en diversité de paquets après une retransmission dans un système à taux d'émission de sous-code de 2/3. Comme montré dans le tableau 2, une différence minimale de performances est de 1, 12dB et le processus de combinaison en code de paquets produit un gain de performances plus élevé dans le système utilisant un turbocode.
<Desc/Clms Page number 7>
<tb>
<tb> Eléments <SEP> Combinaison <SEP> de <SEP> paquets <SEP> Combinaison <SEP> en <SEP> code
<tb> Taux <SEP> d'émission <SEP> de <SEP> 1/3 <SEP> 1/3
<tb> base <SEP> Rm <SEP> (X, <SEP> YO, <SEP> Y'O) <SEP> (X, <SEP> YO, <SEP> Y'O) <SEP> sur
<tb> sur <SEP> la <SEP> figure <SEP> 2 <SEP> la <SEP> figure <SEP> 2
<tb> Dimension <SEP> d'un <SEP> bloc
<tb> (L) <SEP> 496 <SEP> 496
<tb> Nombre <SEP> maximal
<tb> d'itérations <SEP> 8 <SEP> 8
<tb> Nombre <SEP> d'émissions <SEP> 2 <SEP> 2
<tb> Taux <SEP> d'émission <SEP> Tx
<tb> réel <SEP> Re <SEP> pour <SEP> chaque <SEP> 2/3 <SEP> (par <SEP> perforation) <SEP> 2/3 <SEP> (par <SEP> perforation)
<tb> émission
<tb> Sélection <SEP> de <SEP> Motifs <SEP> identiques <SEP> pour <SEP> Motifs <SEP> différents <SEP> pour
<tb> redondance <SEP> toutes <SEP> les <SEP> émissions <SEP> toutes <SEP> les <SEP> émissions
<tb> Combinaison <SEP> souple <SEP> Combinaison <SEP> en <SEP> Combinaison <SEP> en <SEP> code
<tb> diversité <SEP> de <SEP> paquets <SEP> de <SEP> paquets
<tb> Gain <SEP> dans <SEP> les <SEP> Gain <SEP> de <SEP> répétition <SEP> de <SEP> Gain <SEP> de <SEP> codage <SEP> pour
<tb> retransmissions <SEP> symbole <SEP> des <SEP> codes <SEP> à <SEP> faible
<tb> taux <SEP> d'émission
<tb> Rapport <SEP> Eb/No <SEP> minimal <SEP> R-2/3 <SEP> + <SEP> 0,57 <SEP> (dB)
<tb> demandé <SEP> dans <SEP> le <SEP> +0,57 <SEP> (dB)
<tb> tableau <SEP> 1 <SEP> R-2/6-0, <SEP> 55 <SEP> (dB)
<tb> Rapport <SEP> Eb/No <SEP> demandé
<tb> lors <SEP> de <SEP> deuxièmes <SEP> +0,57-3, <SEP> 0 <SEP> (dB) <SEP> -0, <SEP> 55-3,0 <SEP> (dB)
<tb> retransmissions
<tb> Gain <SEP> relatif <SEP> de
<tb> performances <SEP> 0 <SEP> 1,12 <SEP> (=0,57+0,55) <SEP> dB
<tb> Gain <SEP> relatif <SEP> simulé
<tb> (à <SEP> BER <SEP> = <SEP> 10') <SEP> 02, <SEP> 5 <SEP> (dB)
<tb>
<tb> Eléments <SEP> Combinaison <SEP> de <SEP> paquets <SEP> Combinaison <SEP> en <SEP> code
<tb> Taux <SEP> d'émission <SEP> de <SEP> 1/3 <SEP> 1/3
<tb> base <SEP> Rm <SEP> (X, <SEP> YO, <SEP> Y'O) <SEP> (X, <SEP> YO, <SEP> Y'O) <SEP> sur
<tb> sur <SEP> la <SEP> figure <SEP> 2 <SEP> la <SEP> figure <SEP> 2
<tb> Dimension <SEP> d'un <SEP> bloc
<tb> (L) <SEP> 496 <SEP> 496
<tb> Nombre <SEP> maximal
<tb> d'itérations <SEP> 8 <SEP> 8
<tb> Nombre <SEP> d'émissions <SEP> 2 <SEP> 2
<tb> Taux <SEP> d'émission <SEP> Tx
<tb> réel <SEP> Re <SEP> pour <SEP> chaque <SEP> 2/3 <SEP> (par <SEP> perforation) <SEP> 2/3 <SEP> (par <SEP> perforation)
<tb> émission
<tb> Sélection <SEP> de <SEP> Motifs <SEP> identiques <SEP> pour <SEP> Motifs <SEP> différents <SEP> pour
<tb> redondance <SEP> toutes <SEP> les <SEP> émissions <SEP> toutes <SEP> les <SEP> émissions
<tb> Combinaison <SEP> souple <SEP> Combinaison <SEP> en <SEP> Combinaison <SEP> en <SEP> code
<tb> diversité <SEP> de <SEP> paquets <SEP> de <SEP> paquets
<tb> Gain <SEP> dans <SEP> les <SEP> Gain <SEP> de <SEP> répétition <SEP> de <SEP> Gain <SEP> de <SEP> codage <SEP> pour
<tb> retransmissions <SEP> symbole <SEP> des <SEP> codes <SEP> à <SEP> faible
<tb> taux <SEP> d'émission
<tb> Rapport <SEP> Eb/No <SEP> minimal <SEP> R-2/3 <SEP> + <SEP> 0,57 <SEP> (dB)
<tb> demandé <SEP> dans <SEP> le <SEP> +0,57 <SEP> (dB)
<tb> tableau <SEP> 1 <SEP> R-2/6-0, <SEP> 55 <SEP> (dB)
<tb> Rapport <SEP> Eb/No <SEP> demandé
<tb> lors <SEP> de <SEP> deuxièmes <SEP> +0,57-3, <SEP> 0 <SEP> (dB) <SEP> -0, <SEP> 55-3,0 <SEP> (dB)
<tb> retransmissions
<tb> Gain <SEP> relatif <SEP> de
<tb> performances <SEP> 0 <SEP> 1,12 <SEP> (=0,57+0,55) <SEP> dB
<tb> Gain <SEP> relatif <SEP> simulé
<tb> (à <SEP> BER <SEP> = <SEP> 10') <SEP> 02, <SEP> 5 <SEP> (dB)
<tb>
Comme décrit ci-dessus, le processus de combinaison en code de paquets procure d'excellentes performances dans le système de retransmission utilisant un turbocode. Par conséquent, l'invention propose un procédé de génération de sous-codes pour une combinaison optimale en code de paquets dans un système de retransmission utilisant un turbocode. La génération de sous-codes pour une combinaison en code de paquets conformément à une règle prédéterminée produit le gain de combinaison en code précité et maximise les performances d'un système demandant des sous-codes de la même dimension pour chaque retransmission.
La figure 2 des dessins annexés et décrits ci-après est un schéma fonctionnel simplifié d'un appareil typique
<Desc/Clms Page number 8>
de génération de sous-codes utilisant des turbocodes. Comme montré sur la figure 2, l'appareil de génération de sous- codes comprend un turbocodeur, un générateur 204 de souscodes et un dispositif de commande 205.
Premièrement, en ce qui concerne le turbocodeur, un premier codeur constitutif 201 (codeur constitutif 1) code une suite de bits d'information d'entrée et délivre en sortie des premiers symboles de code, c'est-à-dire des symboles d'information X et des premiers symboles de parité Yo et Yi. Un dispositif d'entrelacement 202 entrelace la suite de bits d'information d'entrée conformément à une règle prédéterminée. Un second codeur constitutif 203 (codeur constitutif 2) code la suite de bits d'information entrelacés et délivre en sortie des seconds symboles de code, c'est-à-dire des symboles d'information X'et des seconds symboles de partié Y'o et Y'i. Les symboles de sortie du turbocodeur sont donc les premier et second symboles de code. Etant donné que les symboles d'information X'générés par le second codeur constitutif 203 ne sont pas transmis en réalité, le taux d'émission du turbocodeur est de 1/5.
Le générateur de sous-codes 204 génère des sous-codes à partir des premier et second symboles de code reçus des premier et second codeurs constitutifs 201 et 203 par perforation et répétition sous la commande du dispositif de commande 205. Ce dispositif 205 stocke des matrices de perforation (et de répétition) générées à partir d'algorithmes montrés sur les figures 4,5 et 6 et délivre en sortie au générateur 204 de sous-codes des signaux de sélection de symboles en fonction des matrices de perforation. Le générateur 204 de sous-codes sélectionne alors un nombre prédéterminé de symboles de code dans une plage prédéterminée de perforation en réponse aux signaux de sélection de symboles.
Les caractères de référence tels qu'utilisés ici X, YO, Yl, Y'O et Y'l sont définis de la manière suivante.
<Desc/Clms Page number 9>
X : symbole de code systématique ou symbole d'information
YO : symbole de redondance provenant de l'élément codeur supérieur du turbocodeur Yl : symbole de redondance provenant de l'élément codeur supérieur du turbocodeur
YIO : symbole de redondance provenant de l'élément codeur inférieur du turbocodeur Y'1 : symbole de redondance provenant de l'élément codeur inférieur du turbocodeur
Les figures 4,5 et 6 sont des organigrammes illustrant des processus de génération de sous-codes (ou matrices de perforation) conformes à la technologie classique. En particulier, la figure 4 illustre un processus de génération du premier sous-code Co dans un ensemble de sous-codes, la figure 5 illustre un processus de génération de sous-codes médians Cl à Cs-2 dans l'ensemble de sous-codes, et la figure 6 illustre un processus de génération du dernier sous-code Cs-i dans l'ensemble de sous-codes.
YO : symbole de redondance provenant de l'élément codeur supérieur du turbocodeur Yl : symbole de redondance provenant de l'élément codeur supérieur du turbocodeur
YIO : symbole de redondance provenant de l'élément codeur inférieur du turbocodeur Y'1 : symbole de redondance provenant de l'élément codeur inférieur du turbocodeur
Les figures 4,5 et 6 sont des organigrammes illustrant des processus de génération de sous-codes (ou matrices de perforation) conformes à la technologie classique. En particulier, la figure 4 illustre un processus de génération du premier sous-code Co dans un ensemble de sous-codes, la figure 5 illustre un processus de génération de sous-codes médians Cl à Cs-2 dans l'ensemble de sous-codes, et la figure 6 illustre un processus de génération du dernier sous-code Cs-i dans l'ensemble de sous-codes.
Ci-dessous, on indique par ENC1 (premiers symboles de codes) les symboles d'information X et les premiers symboles de parité YO et Yl sortant du premier élément codeur 201 et par ENC2 (seconds symboles de codes), les seconds symboles de parité Y'O et Y'1 sortant du second élément codeur 203.
En référence à la figure 4, un taux d'émission maximal (Rmax) utilisable par un émetteur est établi dans une étape 401. Cette valeur est donnée principalement en fonction du taux de données utilisé dans le système. Un taux minimal d'émission (Rmin) est établi de façon à être un multiple entier de Rmax (=k/n). Ici, k est le nombre de symboles d'entrée et n est le nombre de symboles de sortie. Bien que Rmin puisse être déterminé arbitrairement, il est habituellement de 1/6,1/7 ou moins, car un gain de codage
<Desc/Clms Page number 10>
est saturé du fait de la diminution des taux d'émission à ou en dessous de R=1/7 dans des turbocodes. De plus, le taux réel d'émission, c'est-à-dire le taux d'émission de base (R) d'un décodeur dans un récepteur est déterminé. R est établi de façon à être supérieur à Rmin.
Dans la mise en oeuvre d'un système réel, Rmax et Rmin sont préalablement établis. Dans un certain sens, Rmax est le taux d'émission des sous-codes devant être généré et Rmin est le taux d'émission recherché après combinaison des sous-codes. En général, Rmin est le taux d'émission d'un codeur dans l'émetteur.
Dans une étape 403, le nombre de sous-codes (S) est calculé par l'équation suivante utilisant Rmax et Rmin.
Ici, le nombre des sous-codes ou le nombre des matrices de perforation est un entier minimal dépassant le rapport de Rmax à Rmin.
où fut représente un entier minimal égal ou supérieur à *.
où fut représente un entier minimal égal ou supérieur à *.
Une variable m est établie à une valeur initiale de 1 dans une étape 405 et C (=m x k) est déterminé dans une étape 407. C est le nombre des colonnes de chaque matrice de perforation, déterminé par Rmax. Par exemple, pour Rmax = 3/4, C peut être de 3,6, 9,... et est établi à une valeur minimale utilisable pour le premier sous-code devant être transmis. Ici, C est établi à 3 pour Rmax=3/4.
Dans l'étape 407, le nombre de symboles devant être sélectionné à partir de la matrice de perforation, Ns, est calculé en multipliant la variable m par la longueur du code, c'est-à-dire le nombre de symboles de code n d'après Rmax=k/n. Ns est le nombre de symboles choisis ou le nombre de positions choisies dans chaque matrice de perforation et calculé par C/Rmax.
Dans une étape 409, (Ns-C) est comparé au nombre des éléments codeurs du turbocodeur dans l'émetteur. Le présent
<Desc/Clms Page number 11>
turbocodeur est pourvu généralement de deux éléments codeurs. On suppose donc que deux éléments codeurs sont utilisés. On détermine si (Ns-C) est de 2 ou plus dans l'étape 409 car le turbocodeur comporte deux éléments codeurs connectés en parallèle avec le dispositif d'entrelacement interposé comme montré sur la figure 2, à la différence des codeurs classiques utilisant d'autres codes uniques. En d'autres termes, au moins un symbole de parité provenant de chaque élément codeur doit être transmis après que tous les symboles d'information ont été transmis pour préserver les caractéristiques propres au turbocodeur.
Si (Ns-C) est inférieur à 2, un seul symbole est choisi dans le premier ensemble de symboles de parité ou dans le second ensemble de symboles de parité. Du point de vue des turbocodes, des problèmes peuvent se poser dans chaque cas. Dans le premier cas, des sous-codes générés sans seconds symboles de parité ne sont pas des turbocodes, mais des codes à convolutions avec une longueur obligée K=4 à partir d'un codeur ayant uniquement le premier élément codeur et n'offrant aucun gain d'entrelacement qui est utilisable dans le turbocodeur. Par ailleurs, dans le second cas, la transmission uniquement de symboles systématiques sans symboles de parité à partir du premier élément codeur aboutit à des sous-codes ayant un taux d'émission de 1. Ceci équivaut à un système non codé sans aucun gain de codage. Par conséquent, (Ns-C) doit être égal ou supérieur à 2 pour procurer des performances de turbocodeurs.
Si (Ns-C) est égal ou supérieur à 2 dans l'étape 409, des symboles d'informations systématiques C sont sélectionnés dans la matrice de perforation dans une étape 411 et les autres symboles sont sélectionnés conformément à un type prédéterminé. Pour un type 1, les autres symboles sont des seconds symboles de parité. Par exemple, si le nombre des autres symboles, (Ns-C), est de 3, des premier
<Desc/Clms Page number 12>
et second symboles de parité sont sélectionnés par l'équation (3), puis un symbole de plus est sélectionné à partir des premiers symboles de parité.
où L*J représente un entier maximal égal ou inférieur à *.
où L*J représente un entier maximal égal ou inférieur à *.
Pour le type 2, les autres symboles sont sélectionnés à partir des premiers et seconds symboles de parité par l'équation (4) dans une étape 415. Si a et b sont donnés en tant que taux de distribution de symboles pour les premiers symboles de parité et les seconds symboles de parité, respectivement, un nombre de symboles égal à un entier minimal, lui-même égal ou supérieur au rapport de a (Ns-C) à (a+b) est sélectionné à partir des premiers symboles de parité et un nombre de symboles égal à un entier maximal, lui-même égal ou inférieur au rapport de b (Ns-C) à (a+b) est sélectionné à partir des seconds symboles de parité.
où a+b =1 et a et b indiquent les rapports de distribution de symboles pour ENC1 et ENC2, respectivement.
où a+b =1 et a et b indiquent les rapports de distribution de symboles pour ENC1 et ENC2, respectivement.
Si la condition donnée dans l'étape 409 n'est pas satisfaite, c'est-à-dire si (Ns-C) est inférieur à 2, la variable m est incrémentée de 1 dans une étape 417 et le processus revient à l'étape 407. Le but de l'étape 409 est de déterminer si des sous-codes capables de préserver la nature de turbocodes peuvent être générés dans la présente plage de perforation (la dimension de la matrice de perforation). Si la nature des turbocodes ne peut pas être préservée, la plage de perforation est élargie dans l'étape 417.
<Desc/Clms Page number 13>
Comme décrit précédemment, la matrice initiale de perforation est construite de manière que tous les symboles d'informations soient sélectionnés et qu'au moins un symbole soit sélectionné à partir de chacun des premier et second ensembles de symboles de parité dans le turbocodeur.
On donnera maintenant une description d'un procédé de génération d'une matrice de perforation médiane en référence à la figure 5. En répétant le processus de la figure 5, on génère des matrices de perforation Ci à Cs-2.
En référence à la figure 5, une étape 501 ou 503 est effectuée conformément à un type prédéterminé. Pour le type 1, des symboles Ns sont sélectionnés parmi les premier et second ensembles de symboles de parité par l'équation (5) dans l'étape 501. Ns est le produit de m et de n donné par Rmax (=k/n). Le nombre de premiers symboles de parité sélectionnés est égal ou supérieur à celui des seconds symboles de parité sélectionnés. Ici, des symboles non sélectionnés provenant des matrices de perforation précédentes sont sélectionnés.
Pour le type 2, des symboles Ns sont sélectionnés à partir des premier et second ensembles de symboles de parité conformément à des rapports prédéterminés par l'équation (6) dans l'étape 503. Si a et b sont donnés en tant que rapports de distribution de symboles pour les premiers symboles de parité et les seconds symboles de parité, respectivement, un nombre de symboles égal à un entier minimal, lui-même égal ou supérieur au rapport de a (Ns) à (a+b) est sélectionné à partir des premiers symboles de parité et un nombre de symboles égal à un entier maximal, lui-même égal ou inférieur au rapport de b (Ns) à (a+b), est sélectionné à partir des seconds
<Desc/Clms Page number 14>
symboles de parité. Ici, des symboles non sélectionnés provenant des matrices de perforation précédentes sont sélectionnés.
Un procédé de génération d'une dernière matrice de perforation Cs-1 sera décrit ci-dessous en référence à la figure 6.
En référence à la figure 6, les symboles non sélectionnés restants provenant des matrices de perforation précédentes sont tous sélectionnés dans une étape 601. Le nombre des symboles sélectionnés est défini comme étant Ns2. Dans une étape 603, une nouvelle valeur Ns est définie par (Ns-Ns2). Etant donné que les symboles dans toutes les positions sont sélectionnés à partir des matrices de perforation dans le processus des opérations montrées sur les figures 4,5 et 6, la nouvelle valeur Ns est le nombre de symboles devant être sélectionnés de façon répétée. Dans une étape 605, il est déterminé si la nouvelle valeur Ns est supérieure à 0. Si la nouvelle valeur Ns est de 0, le processus s'achève. Si elle est supérieure à 0, un nombre de symboles égal à la nouvelle valeur Ns est sélectionné de façon répétée à partir des symboles d'informations. En d'autres termes, les symboles sélectionnés sont transmis de façon répétée.
Le procédé de génération de sous-codes décrit cidessus, conforme à la présente invention, sera expliqué de façon claire ci-dessous au moyen de valeurs numériques spécifiques.
Pour Rmax=3/4 et R=1/5, Rmin=1/6 et S=6/ (4/3) =4, 5- > 5.
<Desc/Clms Page number 15>
Etant donné que le taux d'émission des sous-codes est de 3/4 et que le nombre de sous-codes est de 5, les sous- codes ont un taux d'émission de 3/20 ( (l/S) xRmax= (1/5) x (3/4) =3/20) après la combinaison par code. Ceci implique que pour 3 bits d'informations, un récepteur reçoit 20 symboles de code. Cependant, étant donné que 15 symboles sont générés à partir de Sxn=5x4=20 et Sxk=5x3=15,5 symboles parmi les 15 symboles sont transmis de façon répétée. Les symboles répétés sont de préférence des symboles d'informations. Dans l'exemple ci-dessus, si un symbole d'informations X est répété une fois dans chaque sous-code, un décodeur reçoit des turbocodes avec R=1/5 dans lesquels des symboles d'informations apparaissent deux fois pour chacun des souscodes S lorsque tous les sous-codes S sont reçus.
Les sous-codes résultant des processus montrés sur les figures 4,5 et 6 sont une forme de codes complémentaires, mais sans l'être au sens strict du terme car des symboles répétés existent et chaque sous-code présente une caractéristique différente. Compte tenu des sous-codes produits à partir de turbocodes, on les appellera des turbocodes quasi-complémentaires (QCTC).
La figure 3 est un graphique montrant une comparaison entre les performances d'une demande automatique de répétition hybride HARQ utilisant une combinaison en code de paquets et les performances d'une demande HARQ utilisant une combinaison en diversité de paquets, en termes de débit de données pour des turbocodes QCTC avec R=2/3 et S=4 conformément à la technologie classique. Comme montré sur la figure 3, une demande HARQ 301 utilisant une combinaison en code de paquets pour le turbocode QCTC et une demande HARQ 302 utilisant une combinaison en diversité de paquets pour le turbocode QCTC présentent de meilleures performances qu'une demande HARQ 303 sans le turbocode QCTC. Pour le même débit de données en temps réel (par exemple, 0,25), il faut environ-4dB du rapport Es/No dans la demande HARQ 301, environ-1, 3dB dans la demande HARQ
<Desc/Clms Page number 16>
302 et environ 1dB dans la demande HARQ 303. Par conséquent, l'utilisation du turbocode QCTC selon l'invention assure un débit de données plus élevé avec une moindre énergie de symbole.
Le procédé de génération de sous-codes décrit cidessus sera expliqué clairement ci-dessous au moyen de
valeurs numériques spécifiques.
Pour Rmax=3/4, R=l/5 et Rmin=l/6, S=6/ (4/3) =4, 5-- > 5.
Ainsi, cinq matrices de perforation sont produites.
valeurs numériques spécifiques.
Pour Rmax=3/4, R=l/5 et Rmin=l/6, S=6/ (4/3) =4, 5-- > 5.
Ainsi, cinq matrices de perforation sont produites.
Etant donné que le taux d'émission des sous-codes est de 3/4 et que le nombre de sous-codes est de 5, les souscodes ont un taux d'émission de 3/20 ( (l/S) xRntm= (1/5) x (3/4) =3/20 après combinaison en code. Ceci implique que pour 3 bits d'informations, un récepteur reçoit 20 symboles de codes.
Cependant, étant donné que 15 symboles sont générés d'après Sxn=5x4=20 et Sxk=5x3=15,5 symboles prédéterminés parmi les 15 symboles sont transmis de façon répétée. Les symboles répétés sont de préférence des symboles d'informations. Dans l'exemple ci-dessus, si un symbole d'information X est répété une fois dans chaque sous-code, un décodeur reçoit des turbocodes avec R=1/5 dans lesquels des symboles d'informations apparaissent deux fois dans chacun des sous-codes S.
Les sous-codes résultant des processus illustrés sur les figures 4,5 et 6 sont des formes de codes complémentaires, bien qu'ils ne le soient pas au sens strict du terme, car des symboles répétés existent et chaque sous-code présente une caractéristique différente.
Compte tenu des sous-codes produits à partir des turbocodes, ils seront appelés turbocodes QCTC.
Dans la technologie classique, les sous-codes d'un turbocode QCTC ont un taux d'émission prédéterminé. Pour la transmission d'un bloc de mot d'information unique, les sous-codes d'un QCTC ayant un taux d'émission particulier
<Desc/Clms Page number 17>
sont utilisés. En d'autres termes, le turbocode QCTC classique est un QCTC à une dimension.
Dans un environnement de canal modifié ou avec un mot d'information d'entrée d'une longueur modifiée, un souscode ayant un taux d'émission différent doit être transmis.
Cependant, on ne dispose d'aucun procédé pour sélectionner et transmettre des turbocodes QCTC avec des taux d'émission différents. En réalité, il est préférable d'utiliser un sous-code d'un nouveau turbocode QCTC avec un taux d'émission élevé (un taux d'émission bas) autre que les sous-codes précédents des turbocodes QCTC dans un bon environnement de canal (dans un mauvais environnement de canal). En d'autres termes, on a besoin d'un procédé pour déterminer des turbocodes QCTC de façon adaptative en fonction de l'environnement du canal ou d'autres facteurs.
Un objet de l'invention est donc de proposer un appareil et un procédé pour l'utilisation de plusieurs turbocodes quasi-complémentaires QCTC avec des taux d'émission différents dans un système de communications supportant une retransmission.
Un autre objet de l'invention est de proposer un appareil et un procédé pour réagencer des sous-codes dans un ensemble de sous-codes avec un taux d'émission différent, qui doivent être transmis après un sous-code avec un taux d'émission prédéterminé pour obtenir une combinaison en code optimale à un récepteur dans un système de communications supportant une retransmission en utilisant plusieurs turbocodes quasi-complémentaires QCTC.
Un autre objet de l'invention est de proposer un appareil et un procédé pour générer un sous-code avec un taux d'émission prévu en groupant des sous-codes d'un turbocode QCTC avec un taux d'émission particulier, un nombre de fois égal à un nombre de groupages déterminé par le taux d'émission prévu et en transmettant le sous-code généré pour obtenir une combinaison en code optimale à un récepteur dans un système de communications supportant une
<Desc/Clms Page number 18>
retransmission en utilisant plusieurs turbocodes QCTC.
Les objets précédents et d'autres objets de l'invention sont réalisés au moyen d'un appareil et d'un procédé pour générer des turbocodes quasi-complémentaires à deux dimensions. Selon un aspect de l'invention, les ensembles de sous-codes des turbocodes QCTC correspondant à plusieurs taux d'émission donnés sont générés. Ici, chaque sous-code est une matrice avec des éléments représentant une répétition et une perforation. Ensuite, de nouveaux ensembles de sous-codes sont générés afin que la matrice de chaque sous-code ait un nombre de colonnes égal au plus petit commun multiple des nombres des colonnes des souscodes dans les ensembles de sous-codes. La priorité des matrices de sous-codes est déterminée dans chaque nouvel ensemble de sous-codes afin qu'une matrice générée en combinant des matrices provenant de deux des nouveaux ensembles de sous-codes ait une caractéristique de turbocode quasi-complémentaire QCTC. Les matrices sont ensuite réagencées dans chaque nouveau sous-code conformément à la priorité.
Les objets précédents et d'autres objets de l'invention sont réalisés au moyen d'un appareil et d'un procédé pour générer des turbocodes quasi-complémentaires à deux dimensions. Selon un aspect de l'invention, les ensembles de sous-codes des turbocodes QCTC correspondant à plusieurs taux d'émission donnés sont générés. Ici, chaque sous-code est une matrice avec des éléments représentant une répétition et une perforation. Ensuite, de nouveaux ensembles de sous-codes sont générés afin que la matrice de chaque sous-code ait un nombre de colonnes égal au plus petit commun multiple des nombres des colonnes des souscodes dans les ensembles de sous-codes. La priorité des matrices de sous-codes est déterminée dans chaque nouvel ensemble de sous-codes afin qu'une matrice générée en combinant des matrices provenant de deux des nouveaux ensembles de sous-codes ait une caractéristique de turbocode quasi-complémentaire QCTC. Les matrices sont ensuite réagencées dans chaque nouveau sous-code conformément à la priorité.
Selon un autre aspect de l'invention, un turbocode QCTC ayant le taux d'émission le plus élevé parmi les turbocodes QCTC ayant des taux d'émission dans une relation de multiple entier est établi en tant que code primitif dans le groupe et les sous-codes du code primitif sont générés. Le nombre de sous-codes devant être groupés dans le code primitif est déterminé de façon à générer chacun des autres turbocodes QCTC. Un sous-code devant être transmis est généré en groupant un nombre de sous-codes du code primitif égal à un nombre de groupages correspondant à un taux d'émission donné, en commençant avec un sous-code suivant le sous-code précédemment transmis dans le code primitif. Le sous-code généré est ensuite transmis.
L'invention sera décrite plus en détail en regard des dessins annexés à titre d'exemples nullement limitatifs et sur lesquels :
<Desc/Clms Page number 19>
la figure 1 est un graphique montrant la différence de performances entre une combinaison en code de paquets et une combinaison en diversité de paquets dans un système de données en paquets utilisant des turbocodes i la figure 2 est un schéma fonctionnel simplifié d'un appareil typique de génération de sous-codes ; la figure 3 est un graphique illustrant les performances d'un processus de retransmission sans utilisation de sous-codes, les performances d'un processus de retransmission exécutant une combinaison en diversité avec des sous-codes, et un processus de retransmission exécutant une combinaison en code avec des sous-codes ; la figure 4 est un organigramme illustrant un procédé classique de génération du premier sous-code dans l'ensemble de sous-codes de turbocodes quasicomplémentaires i la figure 5 est un organigramme illustrant un procédé classique de génération de sous-codes médians dans l'ensemble de sous-codes des turbocodes quasicomplémentaires ; la figure 6 est un organigramme illustrant un procédé classique de génération du dernier sous-code dans l'ensemble de sous-codes des turbocodes quasicomplémentaires ; la figure 7 est un organigramme illustrant un procédé de génération de turbocodes quasi-complémentaires à deux dimensions selon la première forme de réalisation de l'invention ; la figure 8 est un organigramme illustrant un procédé de génération de turbocodes quasi-complémentaires adaptatifs selon la seconde forme de réalisation de l'invention ; la figure 9 est un diagramme illustrant une mise en oeuvre d'une génération de turbocodes quasi-complémentaires adaptatifs selon la première forme de réalisation de l'invention ;
<Desc/Clms Page number 20>
la figure 10 est un diagramme illustrant une autre mise en oeuvre d'une génération de turbocodes quasi- complémentaires adaptatifs selon la première forme de réalisation de l'invention ; la figure 11 est un organigramme illustrant une transmission de sous-codes utilisant les turbocodes QCTC adaptatifs selon la seconde forme de réalisation de l'invention ; la figure 12 est un organigramme illustrant une transmission de sous-codes utilisant les turbocodes QCTC à deux dimensions selon la première forme de réalisation de l'invention ; et la figure 13 est un schéma fonctionnel simplifié d'un appareil de transmission destiné à transmettre les turbocodes QCTC à deux dimensions et les turbocodes QCTC adaptatifs selon l'invention.
Dans la description qui suit, des fonctions ou des constructions bien connues ne seront pas décrites en détail pour ne pas compliquer la compréhension de l'invention par des détails inutiles.
L'invention propose un procédé pour la transmission de turbocodes quasi-complémentaires QCTC avec des taux d'émission différents selon les caractéristiques de turbocodes, de l'environnement de canal et de la cadence des données d'entrée. Deux types de turbocodes QCTC sont proposés ici, des turbocodes QCTC à deux dimensions et des turbocodes QCTC adaptatifs. Dans le premier processus, un sous-code d'un turbocode QCTC est choisi parmi plusieurs turbocodes QCTC ayant des taux d'émission différents à chaque temps de transmission, et dans le second processus, des sous-codes d'un turbocode QCTC particulier sont groupés conformément à une cadence établie de données avant une transmission.
Turbocode QCTC à deux dimensions
On considèrera le cas dans lequel un système de communications utilisant des turbocodes QCTC modifie la
On considèrera le cas dans lequel un système de communications utilisant des turbocodes QCTC modifie la
<Desc/Clms Page number 21>
cadence des données de transmission en fonction de l'environnement du canal avant qu'un turbocode QCTC soit totalement transmis. Soit lk un mot d'information ou un bloc de données devant être transmis. Dans le cas d'un turbocode QCTC, le mot d'information est codé de la manière suivante :
où QCTCENC désigne le codage d'un turbocode QCTC, C3 (k) (j=0, 1, 2,3,..., Si-1) est un jième sous-code d'un turbocode QCTC généré à partir de lk, et S est la dimension établie du turbocode QCTC, c'est-à-dire le nombre de souscodes qui forment le turbocode QCTC, déterminé par un taux d'émission de sous-codes et par un taux d'émission de base.
où QCTCENC désigne le codage d'un turbocode QCTC, C3 (k) (j=0, 1, 2,3,..., Si-1) est un jième sous-code d'un turbocode QCTC généré à partir de lk, et S est la dimension établie du turbocode QCTC, c'est-à-dire le nombre de souscodes qui forment le turbocode QCTC, déterminé par un taux d'émission de sous-codes et par un taux d'émission de base.
Comme on le voit d'après l'équation ci-dessus, le processus de turbocodes QCTC à une dimension existant transmet des symboles en utilisant les sous-codes d'un turbocode QCTC séquentiellement jusqu'à ce que lk soit totalement transmis. Autrement dit, les sous-codes sont transmis dans l'ordre de Co (k), Ci (k), C2 (k),... Cs1 et une modification d'un taux d'émission (au sens strict, le taux d'émission de sous-codes) entre des transmissions a été considéré sans présentation d'un procédé spécifique. Si un système de communications utilisant un turbocode QCTC doit utiliser un turbocode QCTC avec un nouveau taux d'émission dû à des modifications de l'environnement des canaux avant que les sous-codes d'un turbocode QCTC soient tous transmis à une cadence de données, il doit être capable de générer plusieurs turbocodes QCTC ayant des taux d'émission différents.
où QCTC~ENC désigne un codage de turbocodes QCTC, Cij (k) (i=0, 1,2, 3,..., NS-1, j=O, 1, 2,3,..., Si-1) est un jième
où QCTC~ENC désigne un codage de turbocodes QCTC, Cij (k) (i=0, 1,2, 3,..., NS-1, j=O, 1, 2,3,..., Si-1) est un jième
<Desc/Clms Page number 22>
sous-code d'un iième turbocode QCTC généré à partir de lk, et Si est la dimension établie du iième turbocode QCTC, déterminé par un taux d'émission de sous-codes et un taux d'émission de base.
Conformément à l'équation (11), un émetteur dans un système de communications utilisant des turbocodes QCTC à deux dimensions choisit l'un de NS turbocodes QCTC de façon adaptative par rapport à des modifications de l'environnement de transmission incluant une variation des conditions des canaux ou une variation d'une cadence de données. Pour optimiser les performances, le système doit déterminer un ordre optimal de transmission en analysant les relations entre les NS turbocodes QCTC. Etant donné qu'un récepteur peut combiner de façon arbitraire des turbocodes QCTC à deux dimensions à la différence des turbocodes QCTC à une dimension, si la structure de codes résultant d'une combinaison de turbocodes QCTC ne satisfait pas aux caractéristiques que des turbocodes devraient avoir, les performances peuvent être dégradées. Pour minimiser ce problème, des turbocodes QCTC à deux dimensions doivent être conçus de façon à satisfaire aux conditions suivantes.
Condition 1 : un nombre minimal de sous-codes de turbocodes QCTC doit être combiné pour générer un code avec un taux d'émission de base. En d'autres termes, une matrice de perforation pour chaque sous-code doit être formée de manière qu'un nombre minimal de sous-codes soit combiné pour atteindre un taux d'émission de base.
Condition 2 : uniquement si la condition 1 est satisfaite, les éléments d'une matrice de perforation pour le code résultant provenant de la combinaison de turbocodes QCTC doivent avoir des poids égaux si cela est possible.
Autrement dit, les éléments de la matrice de perforation du code généré en combinant un nombre minimal de sous-codes ont une distribution uniforme de répétition et de perforation.
<Desc/Clms Page number 23>
Le plus important pour satisfaire à la condition 1 et à la condition 2 est de former des matrices de perforation pour chaque turbocode QCTC et de déterminer l'ordre de transmissioin de sous-codes dans chaque turbocode QCTC. Des turbocodes QCTC à deux dimensions tels que ceux produits en utilisant des turbocodes QCTC optimaux à une dimension devraient avoir un gain supérieur à celui de turbocodes QCTC à deux dimensions pris au hasard. De plus, l'ordre de transmission de sous-codes devrait être optimisé, car il constitue un facteur important déterminant les performances des turbocodes QCTC à deux dimensions. On décrira en détail ci-dessous la génération des turbocodes QCTC à deux dimensions basés sur les deux principes ci-dessus.
Le terme"QCTC"tel qu'utilisé ici est défini comme étant un ensemble de sous-codes générés sur la base d'un taux d'émission de base prédéterminé et d'un taux d'émission de sous-codes donné. Comme indiqué précédemment, des matrices de perforation sont utilisées dans le même sens que celui de sous-codes.
La figure 7 est un organigramme illustrant un procédé de génération de turbocodes QCTC à deux dimensions selon la première forme de réalisation de l'invention. En référence à la figure 7, les ensembles de sous-codes de NS turbocodes QCTC optimaux à une dimension, ayant des taux d'émission donnés, sont générés lors d'une étape 701. Les matrices de perforation de Si sous-codes Cij (i=0, 1, 2,..., NS-1, j=0, 1, 2..., Si-1) sont formées conformément à un taux d'émission de base prédéterminé et à des taux d'émission de code donnés Ri. Ceci est effectué de la même manière que pour la génération de turbocode QCTC classique, sauf que plusieurs turbocodes QCTC Ci sont générés en correspondance avec les taux d'émission de code donnés. Dans une étape 703, le nombre des colonnes dans la matrice de perforation de chaque sous-code d'un turbocode QCTC ayant la plus grande dimension établie S parmi les NS turbocodes QCTC est défini
<Desc/Clms Page number 24>
De nouvelles matrices de perforation avec CWf colonnes sont formées en répétant les matrices de perforation existantes des turbocodes QCTC dans une étape 705. Si CWf n'est pas un multiple entier du nombre CWi des colonnes de chaque matrice de perforation pour un turbocode QCTC Ci, le plus petit commun multiple (PPCM) de CWf et de CWi est défini comme étant une nouvelle valeur CWf. Des matrices de perforation ayant la nouvelle valeur CWf doivent alors être de nouveau formées.
Dans une étape 707, une priorité de transmission est affectée aux matrices de perforation de chaque ensemble de sous-codes afin que des matrices de perforation produites en combinant des matrices de perforation de deux ensembles de sous-codes différents puissent prendre des caractéristiques de turbocodes QCTC. Par exemple, la priorité de transmission de sous-codes Cij dans chaque ensemble de sous-codes Co et Cl doit être déterminée de façon que des poids uniformes, si cela est possible, soient donnés aux éléments de la matrice de perforation d'un nouveau code résultant d'une combinaison des sous-codes dans les turbocodes QCTC Co et Ci. L'affectation de poids uniformes signifie une distribution uniforme d'éléments représentant une perforation et une répétition dans la matrice de perforation d'un mot de code généré en combinant un nombre minimal de sous-codes. La condition fondamentale devant être satisfaite pour générer un turbocode QCTC est qu'un sous-code de transmission initial Cio doit avoir un symbole de code d'information. En d'autres termes, des symboles de codes d'informations dans la première rangée du sous-code Cio doivent être transmis en premier lieu.
Dans une étape 709, les matrices de perforation sont réagencées dans chaque ensemble de sous-codes. Autrement dit, la séquence de sous-codes Cij est permutée dans chaque ensemble de sous-codes Cl. Ensuite, si un turbocode QCTC particulier Ci est sélectionné, les sous-codes Cij du turbo-
<Desc/Clms Page number 25>
code QCTC Ci sont transmis dans l'ordre croissant de j. Par exemple, si une transmission de turbocodes QCTC a lieu dans l'ordre de Ci, C3 et Ci, les sous-codes sont transmis dans l'ordre de Ciao, C30 et Cn. Dans ce contexte, on peut considérer que la figure 7 illustre le processus de réagencement de sous-codes avec un taux d'émission différent devant être transmis après un sous-code transmis avec un taux d'émission particulier.
Le procédé de génération de turbocode QCTC à deux dimensions ci-dessus sera expliqué de façon claire au moyen de citations spécifiques indiquées ci-dessous en regard de la figure 7. Avant la description, on suppose que NS=4, que les taux d'émission Ri des turbocodes QCTC Ci sont donnés par R0=1/2, R1=1/3, R2=1/4 et R3=1/8 et un taux d'émission de base R=1/5.
<Desc/Clms Page number 26>
<Desc/Clms Page number 27>
Etape 707 Ro=1/2, Co : l'ordre de transmission est rétabli en plaçant Coo dans la position de C02, Col dans la position de Coo et C02 dans la position de Coi.
<Desc/Clms Page number 28>
Comme on le voit ci-dessus, des sous-codes Coo, COI et Ces sont réagencés en Coi, C02 et Coo dans l'ensemble de sous-codes Co et les positions de sous-codes Cio et Cil sont permutées dans l'ensemble de sous-codes Ci pour satisfaire à la condition 1 et à la condition 2. Ici, des sous-codes dans chaque ensemble de sous-codes sont transmis dans l'ordre croissant des nombres de séquences de sous-codes. Par exemple, si une transmission de turbocodes QCTC a lieu dans l'ordre de Ci, C3 et Ci, les sous-codes sont transmis dans l'ordre de Ciao, C30 et Cil.
Le tableau 3 ci-dessous donne une liste des matrices de perforation montrées ci-dessus. Comme on le voit dans le tableau 3, la transmission de sous-codes est effectuée séquentiellement dans chaque ensemble de sous-codes (QCTC).
Bien que chaque matrice de perforation pour RI=1/3 et R2=1/4 doive avoir deux colonnes, elle est représentée comme n'ayant qu'une colonne. Il s'agit d'un mode de représentation. Les mêmes performances sont donc offertes.
Une station mobile et un système lisent une matrice de perforation conformément à un taux d'émission donné (ou une cadence de données donnée) et génèrent un sous-code en répétant et perforant des symboles de codes délivrés en sortie d'un turbocodeur avec un taux d'émission de base conforme à la matrice de perforation. En variante, ils acquièrent la matrice de perforation en utilisant un algorithme prédéterminé et génèrent le sous-code d'après la matrice de perforation.
<Desc/Clms Page number 29>
<tb>
<tb> Taux
<tb> d'émission <SEP> Cio <SEP> Cil <SEP> C12 <SEP> C13
<tb> X <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> R0=1/2 <SEP> Y0 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0
<tb> [Y1] <SEP> = <SEP> [1 <SEP> 0] <SEP> [0 <SEP> 1] <SEP> [0 <SEP> 0] <SEP> NA
<tb> Y0' <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1
<tb> Y'1 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0
<tb> R1=1/3 <SEP> 1 <SEP> 1
<tb> 0 <SEP> 1
<tb> [1] <SEP> [0]
<tb> 0 <SEP> 1 <SEP> NA <SEP> NA
<tb> 1 <SEP> 0
<tb> r <SEP> i
<tb> R2=1/4
<tb> 1 <SEP> 1
<tb> [1] <SEP> [0]
<tb> 1 <SEP> 1 <SEP> NA <SEP> NA
<tb> 1
<tb> R3=1/8 <SEP> 2
<tb> 2
<tb> [1]
<tb> 2 <SEP> NA <SEP> NA <SEP> NA
<tb> 1.
<tb>
<tb> Taux
<tb> d'émission <SEP> Cio <SEP> Cil <SEP> C12 <SEP> C13
<tb> X <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> R0=1/2 <SEP> Y0 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0
<tb> [Y1] <SEP> = <SEP> [1 <SEP> 0] <SEP> [0 <SEP> 1] <SEP> [0 <SEP> 0] <SEP> NA
<tb> Y0' <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1
<tb> Y'1 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0
<tb> R1=1/3 <SEP> 1 <SEP> 1
<tb> 0 <SEP> 1
<tb> [1] <SEP> [0]
<tb> 0 <SEP> 1 <SEP> NA <SEP> NA
<tb> 1 <SEP> 0
<tb> r <SEP> i
<tb> R2=1/4
<tb> 1 <SEP> 1
<tb> [1] <SEP> [0]
<tb> 1 <SEP> 1 <SEP> NA <SEP> NA
<tb> 1
<tb> R3=1/8 <SEP> 2
<tb> 2
<tb> [1]
<tb> 2 <SEP> NA <SEP> NA <SEP> NA
<tb> 1.
<tb>
Turbocodes QCTC adaptatifs
Comme décrit ci-dessus, des turbocodes QCTC à deux dimensions ayant des performances améliorées sont obtenus en commandant l'ordre de transmission des sous-codes dans chacun des turbocodes QCTC à une dimension indépendants avec des taux d'émission donnés. La génération de turbocodes QCTC indépendants facilite avantageusement leur optimisation, mais présente l'inconvénient distinct que, dans le cas où le taux d'émission Ri d'un turbocode QCTC particulier Ci est un multiple entier du taux d'émission Rk d'un autre turbocode QCTC (k=0, 1, 2,..., NS-1), la relation des turbocodes QCTC peut éviter une optimisation même s'il y a suffisamment de place pour une optimisation.
Comme décrit ci-dessus, des turbocodes QCTC à deux dimensions ayant des performances améliorées sont obtenus en commandant l'ordre de transmission des sous-codes dans chacun des turbocodes QCTC à une dimension indépendants avec des taux d'émission donnés. La génération de turbocodes QCTC indépendants facilite avantageusement leur optimisation, mais présente l'inconvénient distinct que, dans le cas où le taux d'émission Ri d'un turbocode QCTC particulier Ci est un multiple entier du taux d'émission Rk d'un autre turbocode QCTC (k=0, 1, 2,..., NS-1), la relation des turbocodes QCTC peut éviter une optimisation même s'il y a suffisamment de place pour une optimisation.
Pour Ro=1/2 et R2=1/4, on obtient séparément des turbocodes QCTC Co et C2 dans un algorithme QCTC. Pour utiliser complètement les caractéristiques de turbocodes
<Desc/Clms Page number 30>
QCTC, il est préférable de satisfaire à la condition 1. A cet effet, deux sous-codes successifs de Co sont groupés pour transmettre des sous-codes avec R2=1/4, tels que (Coo+Co1), (CO1+CO2) ou (Co2+Coo). Ensuite, si un sous-code avec Ro=1/2 est combiné avec de tels sous-codes, on peut obtenir des performances optimales.
Un turbocode QCTC à une dimension ayant le taux d'émission le plus élevé parmi des turbocodes QCTC à une dimension dont les taux d'émission sont dans une relation d'un multiple entier est défini comme étant un code primitif Cp dans le groupe (p est un entier entre 0 et NS-1). Lorsqu'un sous-code ayant un taux d'émission inférieur à celui du code primitif Cp est demandé, le souscode est généré par enchaînement ou groupage de sous-codes du code primitif Cp. Ceci est appelé un processus QCTC adaptatif.
La figure 8 est un organigramme illustrant un procédé de génération d'un turbocode QCTC adaptatif selon une autre forme de réalisation de l'invention. En référence à la figure 8, des turbocodes QCTC ayant des taux d'émission Ri sont divisés en groupes, chaque groupe comprenant des turbocodes QCTC ayant des taux d'émission dans une relation d'un multiple entier lors d'une étape 801. Dans une étape 803, un turbocode QCTC ayant le taux d'émission le plus élevé est sélectionné dans chaque groupe de turbocodes QCTC, en tant que code primitif Cp. Ainsi, plusieurs codes primitifs Cp peuvent être définis en fonction du nombre de groupes.
Dans une étape 805, des règles d'enchaînement ou de groupage sont établies de façon à générer des sous-codes pour chaque turbocode QCTC dans chaque groupe en utilisant les sous-codes Cpj (j=0, 1, 2,..., Su 1) de chaque code primitif Cp. Les règles peuvent comprendre le nombre de sous-codes devant être enchaînés ou groupés dans chaque code primitif. En d'autres termes, un sous-code prévu Cij ayant un taux d'émission Ri est généré par l'enchaînement ou le groupage
<Desc/Clms Page number 31>
de sous-codes du code primitif Cp. Une table de groupage de sous-codes peut être établie de façon préliminaire en considérant tous les groupages de sous-codes possibles.
Dans ce cas, il est préférable de grouper des sous-codes séquentiellement dans le code primitif Cp.
Une fois qu'un taux d'émission (ou qu'un turbocode QCTC ou un sous-code) est donné, un sous-code d'un turbocode QCTC ayant le taux d'émission est généré par enchaînement de sous-codes d'un code primitif correspondant
Cp.
Cp.
Si le code primitif d'un groupe grp (c'est-à-dire un groupe arbitraire) est Cp et que sa dimension établie est Sp, les sous-codes de turbocodes QCTC dans le groupe grp peuvent être exprimés de la manière suivante :
où j désigne un indice de sous-code et g est le nombre de sous-codes devant être groupés (c'est-à-dire un nombre de groupages). Si g=l, les sous-codes du code primitif Cp sont utilisés sans groupage. Si g=2, les sous-codes du code primitif Cp sont groupés par deux. Pour le taux d'émission du code primitif Cp, Ras=2/3, si g=l, un nouveau sous-code possède un taux d'émission r=2/3. Si g=2, r=1/3 car un ensemble de plus de symboles de code est généré en comparaison avec g=l. La matrice ci-dessus définit donc les taux d'émission de turbocodes QCTC qui peuvent être obtenus en groupant un nombre entier de sous-codes du code primitif Cp, et les sous-codes de chaque turbocode QCTC. Le nombre maximal de sous-codes devant être groupés n'est pas limité,
où j désigne un indice de sous-code et g est le nombre de sous-codes devant être groupés (c'est-à-dire un nombre de groupages). Si g=l, les sous-codes du code primitif Cp sont utilisés sans groupage. Si g=2, les sous-codes du code primitif Cp sont groupés par deux. Pour le taux d'émission du code primitif Cp, Ras=2/3, si g=l, un nouveau sous-code possède un taux d'émission r=2/3. Si g=2, r=1/3 car un ensemble de plus de symboles de code est généré en comparaison avec g=l. La matrice ci-dessus définit donc les taux d'émission de turbocodes QCTC qui peuvent être obtenus en groupant un nombre entier de sous-codes du code primitif Cp, et les sous-codes de chaque turbocode QCTC. Le nombre maximal de sous-codes devant être groupés n'est pas limité,
<Desc/Clms Page number 32>
car il dépend de la mise en oeuvre du système. Ici, on peut grouper à titre d'exemple jusqu'à quatre sous-codes.
Dans la matrice, le nombre de rangées indique le nombre maximal de groupages. Lorsque le nombre de rangées augmente, le taux d'émission d'un turbocode QCTC pouvant être mis en oeuvre par groupage de sous-codes diminue. Le nombre de colonnes dans la matrice est déterminé par la dimension établie Sp du code primitif Cp.
Par exemple, si le taux d'émission du code primitif Cp est Ras=1/2, la première rangée avec g=l comporte les souscodes du code primitif Cp avec Rus=1/2. En d'autres termes, les éléments de la première rangée dans la matrice indiquent les sous-codes du code primitif Cp. La seconde rangée avec g=2 comprend les sous-codes d'un turbocode QCTC
avec Ras=1/4. La troisième rangée avec g=3 comporte les sous-codes d'un turbocode QCTC avec Ras=1/6 et la quatrième rangée avec g=4, les sous-codes d'un turbocode QCTC avec Rs=1/8.
avec Ras=1/4. La troisième rangée avec g=3 comporte les sous-codes d'un turbocode QCTC avec Ras=1/6 et la quatrième rangée avec g=4, les sous-codes d'un turbocode QCTC avec Rs=1/8.
L'équation suivante montre la relation entre chaque turbocode QCTC et un code primitif Cp dans le même groupe. Un groupe de turbocode QCTC avec un code primitif Cp, avec Ras=1/2 et Sp=3, est tel que le suivant :
Par conséquent, pour un groupe avec un code primitif Cp et avec Rs=1/2, la matrice montrée dans l'équation (12) est exprimée par l'équation (14) ci-dessous.
<Desc/Clms Page number 33>
De la même manière, les sous-codes de turbocodes QCTC dans un groupe différent du turbocode QCTC peuvent être agencés en une matrice conformément à la dimension établie Sp de son code primitif Cp et des taux d'émission des turbocodes QCTC.
La génération de turbocode QCTC adaptatif, ci-dessus, ressortira clairement de citations spécifiques en regard de la figure 8. Avant la description, on suppose que NS=4, que les taux d'émission Ri des turbocodes QCTC Cj sont donnés comme étant Ro=1/2, RI=1/3, R2=1/4 et R3=1/8 et que le taux d'émission de base est R=1/5.
Etape 801 : Groupage de codes
Groupe 0 = (C0, C2, C3) = {R0, R2, R3}
Taux d'émission={1/2, 1/4, 1/8}
Groupe 1 = {Ci} = {Ri} Taux d'émission= {1/3} Etape 803 : Codes primitifs Cp= {Co, Ci}
Co (Ro=1/2) : Code primitif dans le groupe 0
Ci (RI=1/3) : Code primitif dans le groupe 1
Etape 805
Les sous-codes Cij (i=0, 1, 2,..., NS=1, j=0, 1, 2,..., Si-1) des turbocodes QCTC Ci dans chaque groupe sont obtenus en utilisant les codes primitifs Cp.
Groupe 0 = (C0, C2, C3) = {R0, R2, R3}
Taux d'émission={1/2, 1/4, 1/8}
Groupe 1 = {Ci} = {Ri} Taux d'émission= {1/3} Etape 803 : Codes primitifs Cp= {Co, Ci}
Co (Ro=1/2) : Code primitif dans le groupe 0
Ci (RI=1/3) : Code primitif dans le groupe 1
Etape 805
Les sous-codes Cij (i=0, 1, 2,..., NS=1, j=0, 1, 2,..., Si-1) des turbocodes QCTC Ci dans chaque groupe sont obtenus en utilisant les codes primitifs Cp.
Groupe 0 : QCTC avec Rs=1/2
Ro=1/2 : {COO, Col, C02}
R2=1/4 : { (Coo, Coi), (COI, C02), (C, Coo)} (jusqu'à trois cas sont utilisables) R3=1/8 : 1 (COO, COI, C02, COO) (Col, C02, COO, COO) (C02,
Ro=1/2 : {COO, Col, C02}
R2=1/4 : { (Coo, Coi), (COI, C02), (C, Coo)} (jusqu'à trois cas sont utilisables) R3=1/8 : 1 (COO, COI, C02, COO) (Col, C02, COO, COO) (C02,
<Desc/Clms Page number 34>
Lorsqu'un sous-code du turbocode QCTC avec R2=1/4 est transmis, il y a deux façons de déterminer lequel est le sous-code transmis.
(1) Identification implicite du sous-code
Si un émetteur et un récepteur ont une information concernant un ordre de transmission des sous-codes, il n'est pas nécessaire à l'émetteur de transmettre l'information sur un canal séparé. Par exemple, dans le cas du groupe 0, le récepteur stocke l'indice du sous-code reçu précédemment pour chaque taux d'émission, c'est-à-dire R=1/2, 1/4 ou 1/8 afin que, lors de la réception d'un nouveau sous-code dans le même groupe, le récepteur puisse trouver la position du nouveau sous-code.
Si un émetteur et un récepteur ont une information concernant un ordre de transmission des sous-codes, il n'est pas nécessaire à l'émetteur de transmettre l'information sur un canal séparé. Par exemple, dans le cas du groupe 0, le récepteur stocke l'indice du sous-code reçu précédemment pour chaque taux d'émission, c'est-à-dire R=1/2, 1/4 ou 1/8 afin que, lors de la réception d'un nouveau sous-code dans le même groupe, le récepteur puisse trouver la position du nouveau sous-code.
(2) Identification explicite du sous-code
L'émetteur indique au récepteur le type du sous-code en cours. Le récepteur combine ensuite les sous-codes reçus de façon correspondante. En général, si une condition de canal n'est pas très mauvaise, une identification implicite du sous-code suffit. Dans la présente invention, les deux procédés d'identification sont utilisés sélectivement en fonction de la fiabilité d'un canal de messages dans le système.
L'émetteur indique au récepteur le type du sous-code en cours. Le récepteur combine ensuite les sous-codes reçus de façon correspondante. En général, si une condition de canal n'est pas très mauvaise, une identification implicite du sous-code suffit. Dans la présente invention, les deux procédés d'identification sont utilisés sélectivement en fonction de la fiabilité d'un canal de messages dans le système.
La figure 9 est un diagramme illustrant une mise en oeuvre de la génération de turbocodes QCTC adaptatifs selon la seconde forme de réalisation de l'invention. Sur la figure 9, un taux d'émission de base est R=1/5, des turbocodes QCTC ayant des taux d'émission de 1/2,1/4, 1/8 sont dans le groupe 0, et des turbocodes QCTC ayant des taux d'émission de 1/3 et 1/6 sont dans le groupe 1. Pour le groupe 0, un turbocode QCTC à taux de 1/2 est un code primitif Cp et, pour le groupe 1, un turbocode QCTC à taux de 1/3 est un code primitif Cp. Avec les codes primitifs
<Desc/Clms Page number 35>
Pour le groupe 0, si le turbocode QCTC à taux de 1/2 est C3, des sous-codes ayant un taux de 1/4 et des souscodes ayant un taux de 1/8 sont générés par groupage séquentiel des sous-codes C30, C31 et C32 conformément aux nombres de groupages. Par exemple, les sous-codes de taux 1/4 sont produits en groupant deux sous-codes tels que (C3o, Coi), (C32, C3o) et (C31, C32) et les sous-codes de taux
1/8 sont produits en groupant quatre sous-codes (C30, C31, C32, C30). Pour le groupe 1, si un turbocode QCTC de taux 1/3 est C2, les sous-codes de taux 1/6 sont générés en groupant deux sous-codes tels que (C20, C21).
1/8 sont produits en groupant quatre sous-codes (C30, C31, C32, C30). Pour le groupe 1, si un turbocode QCTC de taux 1/3 est C2, les sous-codes de taux 1/6 sont générés en groupant deux sous-codes tels que (C20, C21).
La figure 10 est un diagramme illustrant une autre mise en oeuvre de la génération de turbocodes QCTC adaptatifs selon la seconde forme de réalisation de l'invention. Sur la figure 10, un taux d'émission de base est R=1/5, des turbocodes QCTC ayant des taux d'émission de 1/2,1/4 et 1/8 sont dans le groupe 0, et les turbocodes QCTC ayant des taux d'émission de 2/3,1/3 et 1/6 sont dans le groupe 1. Pour le groupe 0, le turbocode QCTC de taux 1/2 est un code primitif Cp et pour le groupe 1, le turbocode de taux 2/3 est un code primitif Cp. Avec les codes primitifs Cp, des turbocodes QCTC ayant les taux d'émission de 1/2,1/4, 1/8,2/3, 1/3 et 1/6 sont générés.
Pour le groupe 0, si le turbocode QCTC de taux 1/2 est C3, des sous-codes de taux 1/4 et des sous-codes de taux 1/8 sont générés par groupage séquentiel des sous-codes C30, C31 et C32 conformément à des nombres de groupages. Par exemple, les sous-codes de taux 1/4 sont produits en groupant deux sous-codes tels que (C30, Coti), (C32, C30) et (C31, C32) et les sous-codes de taux 1/8 sont produits en groupant quatre sous-codes (C30, C31, C32, C30). Pour le groupe 1, si le turbocode QCTC de taux de 2/3 est Ci, les sous-codes de taux 1/3 et les sous-codes de taux 1/6 sont
générés en groupant séquentiellement les sous-codes Ciao,
générés en groupant séquentiellement les sous-codes Ciao,
<Desc/Clms Page number 36>
Cll, Ci2 et C13 conformément à des nombres de groupage. En particulier, les sous-codes de taux 1/3 sont générés en groupant deux sous-codes du code primitif Cp ayant le taux d'émission de 2/3, tels que (Cio, CI,), (Cl2, Ciz) et (Cio, CIl) et les sous-codes de taux 1/6 sont générés en groupant quatre sous-codes du code primitif Cp ayant le taux d'émission de 2/3, tels que (Cl0, Cll, CIZ, Cl3). La structure des codes montrée sur la figure 10 est plus adaptative vis-à-vis de variations de la condition du canal et de la cadence des données.
Si un système de demande HARQ utilise des turbocodes QCTC ayant divers taux d'émission en fonction de l'environnement du canal, une demande HARQ II est préférable. Des sous-codes ayant des taux d'émission plus élevés sont alors nécessaires et un turbocode QCTC avec R=2/3 est donc utilisé en tant que code primitif. Un code primitif est évidemment déterminé en fonction d'un taux maximal d'émission que le système exige, dont la description n'entre pas dans le cadre de l'invention, et un turbocode QCTC adaptatif est généré de la manière décrite ci-dessus. Par exemple, pour R=3/4, des sous-codes avec R=3/4, R=2/3, R=1/3, R=1/6, etc. peuvent être générés de la même manière.
Le tableau 4 donne une liste des matrices de perforation de sous-codes qui sont générées en utilisant des codes primitifs Cp avec R=1/2 et R=1/3. Le tableau 5 donne une liste des matrices de perforation de sous-codes qui sont générées en utilisant des codes primitifs Cp avec R=1/2 et R=2/3.
<Desc/Clms Page number 37>
<tb>
<tb> Taux <SEP> Ci0 <SEP> Ci1 <SEP> Ci2 <SEP> Ci3
<tb> l'émission
<tb> (Ri)
<tb> R0=1/2 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 0 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0
<tb> [1 <SEP> 0] <SEP> [0 <SEP> 0] <SEP> [0 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 0
<tb> 0 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0
<tb> R1=1/4 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 2
<tb> 1 <SEP> 1 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 0
<tb> [1 <SEP> 0] <SEP> [1 <SEP> 1] <SEP> [0 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1
<tb> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0
<tb> R2=1/6 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> [1 <SEP> 1] <SEP> [1 <SEP> 1] <SEP> [1 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> R3=1/8 <SEP> [3 <SEP> 3] <SEP> [2 <SEP> 2] <SEP> [3 <SEP> 3
<tb> 21 <SEP> 12 <SEP> 11
<tb> 1 <SEP> 1 <SEP> 2 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> NA
<tb> 1 <SEP> 2 <SEP> 2 <SEP> 1 <SEP> 1 <SEP> 1
<tb> [1 <SEP> 1] <SEP> [1 <SEP> 2] <SEP> [2 <SEP> 1
<tb> R4=1/3 <SEP> [1] <SEP> [1]
<tb> 0 <SEP> 1
<tb> 1 <SEP> 0 <SEP> NA <SEP> NA
<tb> 0 <SEP> 1
<tb> 1 <SEP> Q
<tb>
<tb> Taux <SEP> Ci0 <SEP> Ci1 <SEP> Ci2 <SEP> Ci3
<tb> l'émission
<tb> (Ri)
<tb> R0=1/2 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 0 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0
<tb> [1 <SEP> 0] <SEP> [0 <SEP> 0] <SEP> [0 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 0
<tb> 0 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0
<tb> R1=1/4 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 2
<tb> 1 <SEP> 1 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 0
<tb> [1 <SEP> 0] <SEP> [1 <SEP> 1] <SEP> [0 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1
<tb> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0
<tb> R2=1/6 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> [1 <SEP> 1] <SEP> [1 <SEP> 1] <SEP> [1 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> R3=1/8 <SEP> [3 <SEP> 3] <SEP> [2 <SEP> 2] <SEP> [3 <SEP> 3
<tb> 21 <SEP> 12 <SEP> 11
<tb> 1 <SEP> 1 <SEP> 2 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> NA
<tb> 1 <SEP> 2 <SEP> 2 <SEP> 1 <SEP> 1 <SEP> 1
<tb> [1 <SEP> 1] <SEP> [1 <SEP> 2] <SEP> [2 <SEP> 1
<tb> R4=1/3 <SEP> [1] <SEP> [1]
<tb> 0 <SEP> 1
<tb> 1 <SEP> 0 <SEP> NA <SEP> NA
<tb> 0 <SEP> 1
<tb> 1 <SEP> Q
<tb>
<Desc/Clms Page number 38>
<tb>
<tb> Taux <SEP> Ci0 <SEP> Ci1 <SEP> Ci2 <SEP> Ci3
<tb> l'emission
<tb> (Ri)
<tb> R0=1/2 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 0 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0
<tb> [1 <SEP> 0] <SEP> [0 <SEP> 0] <SEP> [0 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 0
<tb> 0 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0
<tb> R1=1/4 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 2
<tb> 1 <SEP> 1 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 0
<tb> [1 <SEP> 0] <SEP> [1 <SEP> 1] <SEP> [0 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1
<tb> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0
<tb> R2=1/6 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> [1 <SEP> 1] <SEP> [1 <SEP> 1] <SEP> [1 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1. <SEP> 1 <SEP> 1
<tb> R3=1/8 <SEP> [3 <SEP> 3] <SEP> [2 <SEP> 2] <SEP> [3 <SEP> 3
<tb> 21 <SEP> 12 <SEP> 11
<tb> R3=1/8 <SEP> 3 <SEP> 3 <SEP> 2 <SEP> 2 <SEP> 3 <SEP> 3
<tb> 2 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 1 <SEP> 1
<tb> [1 <SEP> 1] <SEP> [2 <SEP> 1] <SEP> [1 <SEP> 2] <SEP> NA
<tb> 1 <SEP> 2 <SEP> 2 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 2 <SEP> 1
<tb> R4=2/3 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0
<tb> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [1 <SEP> 1 <SEP> 0 <SEP> 1] <SEP> [0 <SEP> 0 <SEP> 1 <SEP> 0
<tb> 0 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0
<tb> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> os
<tb> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 1 <SEP> 1 <SEP> 1] <SEP> P1 <SEP> 0 <SEP> 0 <SEP> 0]
<tb> R5=1/3 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0
<tb> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 1 <SEP> 1 <SEP> 1] <SEP> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [1 <SEP> 1 <SEP> 1 <SEP> 1]
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0
<tb> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb>
<tb> Taux <SEP> Ci0 <SEP> Ci1 <SEP> Ci2 <SEP> Ci3
<tb> l'emission
<tb> (Ri)
<tb> R0=1/2 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 0 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0
<tb> [1 <SEP> 0] <SEP> [0 <SEP> 0] <SEP> [0 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 0
<tb> 0 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 0
<tb> R1=1/4 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 2
<tb> 1 <SEP> 1 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 0
<tb> [1 <SEP> 0] <SEP> [1 <SEP> 1] <SEP> [0 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 1
<tb> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0
<tb> R2=1/6 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> [1 <SEP> 1] <SEP> [1 <SEP> 1] <SEP> [1 <SEP> 1] <SEP> NA
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1. <SEP> 1 <SEP> 1
<tb> R3=1/8 <SEP> [3 <SEP> 3] <SEP> [2 <SEP> 2] <SEP> [3 <SEP> 3
<tb> 21 <SEP> 12 <SEP> 11
<tb> R3=1/8 <SEP> 3 <SEP> 3 <SEP> 2 <SEP> 2 <SEP> 3 <SEP> 3
<tb> 2 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 1 <SEP> 1
<tb> [1 <SEP> 1] <SEP> [2 <SEP> 1] <SEP> [1 <SEP> 2] <SEP> NA
<tb> 1 <SEP> 2 <SEP> 2 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 2 <SEP> 1
<tb> R4=2/3 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0
<tb> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [1 <SEP> 1 <SEP> 0 <SEP> 1] <SEP> [0 <SEP> 0 <SEP> 1 <SEP> 0
<tb> 0 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0
<tb> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> os
<tb> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 1 <SEP> 1 <SEP> 1] <SEP> P1 <SEP> 0 <SEP> 0 <SEP> 0]
<tb> R5=1/3 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0
<tb> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [0 <SEP> 1 <SEP> 1 <SEP> 1] <SEP> [0 <SEP> 0 <SEP> 0 <SEP> 0] <SEP> [1 <SEP> 1 <SEP> 1 <SEP> 1]
<tb> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0
<tb> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 0 <SEP> 1 <SEP> 1 <SEP> 1 <SEP> 1
<tb>
<Desc/Clms Page number 39>
Comme on le voit dans le tableau 4 et dans le tableau 5, les sous-codes sont produits en groupant les sous-codes des codes primitifs Cp. Les sous-codes d'un turbocode QCTC ayant un taux d'émission donné sont générés en groupant séquentiellement les sous-codes d'un code primitif Cp. Dans le tableau 4 deux groupes de turbocodes QCTC ayant les codes primitifs avec R=1/2 et R=1/3 sont définis. Les matrices de perforation sont les éléments de la matrice de
sous-codes montrés dans l'équation (12). Par exemple, C'PO, cip, et C1p2 dans l'équation (12) correspondent aux matrices de perforation pour les premier, deuxième et troisième sous-codes Coo, COI et C02 de Pro=1/2, respectivement. C2p1 et C2p2 correspondent au deuxième sous-code (Cll (C02 U Coo) et au troisième sous-code C12 (Coi U C02) de RI=1/4, respectivement. Le tableau 5 illustre les sous-codes de deux groupes avec des codes primitifs de R=1/2 et R=2/3.
sous-codes montrés dans l'équation (12). Par exemple, C'PO, cip, et C1p2 dans l'équation (12) correspondent aux matrices de perforation pour les premier, deuxième et troisième sous-codes Coo, COI et C02 de Pro=1/2, respectivement. C2p1 et C2p2 correspondent au deuxième sous-code (Cll (C02 U Coo) et au troisième sous-code C12 (Coi U C02) de RI=1/4, respectivement. Le tableau 5 illustre les sous-codes de deux groupes avec des codes primitifs de R=1/2 et R=2/3.
La station mobile et le système comprennent des tableaux comme le tableau 4 et le tableau 5 dans lesquels des matrices de perforation ayant un taux d'émission donné (ou une cadence de données donnée) sont lues. Des souscodes sont générés en répétant et perforant des symboles en sortie d'un turbocodeur avec un taux d'émission de base correspondant aux matrices de perforation. En variante, les matrices de perforation sont obtenues dans un algorithme prédéterminé et les sous-codes sont générés sur la base des matrices de perforation.
La figure 13 est un schéma fonctionnel simplifié d'un appareil de transmission destiné à transmettre des turbocodes QCTC à deux dimensions et des turbocodes QCTC adaptatifs conformément à la présente invention. En référence à la figure 13, un codeur 1301 de canal code des symboles d'informations d'entrée à un taux d'émission de base R=1/5, par exemple, et délivre en sortie des symboles de code. Un générateur 1302 de turbocodes QCTC génère un sous-code en perforant et répétant les symboles de code sous la commande d'un dispositif 1303 de commande de
<Desc/Clms Page number 40>
sélection de sous-code.
Le dispositif de commande 1303 comporte une mémoire destinée à stocker des matrices de perforation comme montré dans les tableaux 3 à 5, au moyen desquelles des sous-codes sont générés. Le dispositif de commande 1303 commande le générateur 1302 de turbocodes QCTC à l'aide d'un algorithme comme illustré sur la figure 12 lors de la génération de turbocodes QCTC à deux dimensions, et d'un algorithme tel qu'illustré sur la figure 11 lors de la génération de turbocodes QCTC adaptatifs.
En variante, le dispositif 1303 de commande peut transmettre un signal d'indice au générateur 1302 de turbocodes QCTC pour sélectionner l'une des matrices de perforation montrée dans les tableaux 3 à 5 en exécutant les algorithmes illustrés sur les figures 11 et 12 à chaque temps de transmission de sous-codes. Dans ce cas, le générateur 1302 de turbocode QCTC lit une matrice de perforation correspondant à l'indice provenant des tableaux 3 à 5 et génère un sous-code en perforant et répétant les symboles délivrés en sortie du codeur 1301 de canal sur la base de la matrice de perforation.
On donnera ci-dessous une description de la sélection (ou de la transmission) d'un sous-code dans le dispositif de commande 1303.
La figure 11 est un organigramme illustrant une transmission de sous-code utilisant des turbocodes QCTC adaptatifs à une dimension selon la seconde forme de réalisation de l'invention. En référence à la figure 11, lors de la génération d'un nouveau bloc de codeur dans une étape 1100, le dispositif de commande 1303 établit toutes les variables (jen cours, j~pre, g~en cours et g~pre à des valeurs initiales dans une étape 1101. Dans une étape 1103, le dispositif de commande 1303 sélectionne un groupe de turbocodes QCTC comprenant un turbocode QCTC ayant un taux d'émission donné et il détermine un nombre de groupages g, c'est-à-dire le nombre de sous-codes devant être groupés
<Desc/Clms Page number 41>
dans un code primitif Cp. Ici, le taux d'émission est déterminé en fonction d'une condition du canal et de la cadence de données d'entrée dans l'émetteur. Le nombre g de groupages est une variable par laquelle un turbocode QCTC inclus dans le groupe est identifié. Après la détermination du groupe et du nombre de groupages gen cours, le dispositif de commande 1303 lit une variable gpre stockée pour le turbocode QCTC Ci avec le taux d'émission et établit une variable j~en cours à la valeur lue dans l'étape 1105. La valeur j en cours indique le nombre de séquences d'un sous-code dans un turbocode QCTC. Puis le
dispositif de commande 1303 sélectionne le jième~sous-code en cours du turbocode QCTC correspondant à la variable gen cours dans le groupe lors de l'étape 1107 et transmet le symbole codé correspondant au sous-code sélectionné dans une étape 1109. Pour la transmission suivante, les variables g-en cours et j-en cours sont stockées en tant que variables g~pre et j~pre. Des sous-codes correspondant à j en cours (=O), c'est-à-dire les premiers sous-codes des turbocodes QCTC, sont exprimés par
Ensuite, un sous-code correspondant à g en cours (ou g) est sélectionné parmi les premiers sous-codes.
dispositif de commande 1303 sélectionne le jième~sous-code en cours du turbocode QCTC correspondant à la variable gen cours dans le groupe lors de l'étape 1107 et transmet le symbole codé correspondant au sous-code sélectionné dans une étape 1109. Pour la transmission suivante, les variables g-en cours et j-en cours sont stockées en tant que variables g~pre et j~pre. Des sous-codes correspondant à j en cours (=O), c'est-à-dire les premiers sous-codes des turbocodes QCTC, sont exprimés par
Ensuite, un sous-code correspondant à g en cours (ou g) est sélectionné parmi les premiers sous-codes.
Après la transmission du sous-code, le dispositif de commande 1303 détermine si un autre sous-code est demandé, c'est-à-dire si une demande de retransmission a été reçue d'un récepteur lors d'une étape 1113. A la demande d'un autre sous-code, le dispositif de commande 1303 transmet un sous-code avec un taux d'émission donné dans une étape 1113. Autrement, le dispositif de commande 1303 revient à l'étape 1100 pour recevoir un nouveau bloc codé.
<Desc/Clms Page number 42>
Entre-temps, le dispositif de commande 1303 sélectionne un groupe de turbocodes QCTC (gen cours) comprenant un turbocode QCTC ayant le taux d'émission donné qui est déterminé en fonction des environnements du canal et de transmission dans une étape 1115.
Dans une étape 1117, le dispositif de commande 1303 détermine le nombre de séquences jen cours d'un sous-code devant être transmis (un élément dans la matrice de groupe) conformément à l'équation suivante 16 et il revient à l'étape 1107 dans laquelle un sous-code correspondant à la variable g~en cours est transmis parmi les sous-codes
correspondant à la variable j-en cours.
correspondant à la variable j-en cours.
[ ( (] pre+l) *gpre mod Sp)-l] +l= (j~en cours*g~en cours) mod Sp ... (16) Dans l'équation ci-dessus, le côté de gauche " [ ( (jpre+l) *g~pre mod Sp)-l]"signifie un sous-code achevé dans le groupe précédent, et le côté de droite " (j en cours*g en cours) mod Sp"signifie un sous-code commençant avec le groupe suivant. Par conséquent, dans le cas où l'on ajoute 1 à" [ ( (jpre+l) *gpre mod Sp)-1]", ceci signifie que le sous-code a commencé avec le groupe suivant, en sorte que chaque côté de l'équation présente la même valeur. De cette manière, la valeur de jen cours peut être obtenue.
Dans l'équation ci-dessus, A mod B est une opération établissant le quotient de A divisé par B. Autrement dit, si la variable g~pre indique le nombre de groupages de sous-codes d'un code primitif pour générer le sous-code précédent, c'est-à-dire le nombre d'identification du turbocode QCTC avec le sous-code précédent, et jpre indique que le nombre de séquences du sous-code précédent, le nombre de séquences du sous-code en cours devant être transmis, jen cours est déterminé par l'équation (16).
Parmi les sous-codes dans la colonne correspondant à la
<Desc/Clms Page number 43>
variable j~en cours, un sous-code est sélectionné dans la rangée correspondant à la variable gen cours qui est déterminée conformément au taux d'émission. La raison pour laquelle on utilise"mod Sp"dans l'équation (16) est que le nombre des colonnes dans la matrice de groupe est égal ou inférieur à Sp. Etant donné que le nombre des sous-codes du code primitif est Sp,"mod Sp"permet une sélection récurrente du premier sous-code Cpo après la transmission de tous les sous-codes dans chaque rangée (voir les figures 9 et 10).
Le fonctionnement de la figure Il sera décrite plus en détail au moyen de valeurs numériques spécifiques.
En supposant que le taux d'émission d'un code primitif, Rs=1/2, que le nombre de rangées dans une matrice de groupe est g=4 (c'est-à-dire qu'on peut générer jusqu'à
un turbocode QCTC avec Rs=1/8), Sp=3, des taux d'émission sont modifiés dans l'ordre de Rs=l/2, Rs=l/4, Rsl/2, Rs=l/8 et puis gpre=0, j-en cours=0, gen cours=0 et j~pre=O (valeur initiale), alors 1. R=1/2 : g-en cours=l et jen cours=0, donc g pre=l et pre=0.
un turbocode QCTC avec Rs=1/8), Sp=3, des taux d'émission sont modifiés dans l'ordre de Rs=l/2, Rs=l/4, Rsl/2, Rs=l/8 et puis gpre=0, j-en cours=0, gen cours=0 et j~pre=O (valeur initiale), alors 1. R=1/2 : g-en cours=l et jen cours=0, donc g pre=l et pre=0.
Sous-code sélectionné : Ci PO 2. R=1/4 : gen cours=2 et jen cours=2, donc g~pre=2 et j~pre=1.
Sous-code sélectionné : C2 p2 3. R=1/2 : gen cours=l et jen cours=0, donc g~pre=1 et pre=0.
Sous-code sélectionné : C4 pu
<Desc/Clms Page number 44>
Sous-code sélectionné : Clip2
Un sous-code dans chaque groupe est sélectionné conformément à l'équation (16) et un groupe est sélectionné conformément à un taux d'émission qui dépend d'un environnement de canal et d'une cadence de données d'entrée. Comme montré sur les figures 9 et 10, une transmission initiale de sous-codes est exécutée avec j=0. Bien que les matrices de perforation pour les sous-codes de chaque turbocode QCTC forment des listes dans les tables de mémoire telles que les tableaux 3 à 5 dans la forme de réalisation de l'invention, on peut en outre envisager, en tant qu'autre forme de réalisation, que les sous-codes d'un code primitif pour chaque groupe sont procurés et qu'un sous-code prévu est généré en groupant les sous-codes du code primitif conformément à l'équation (16). Dans ce dernier cas, si j en cours est calculé dans l'équation (16), le dispositif de commande peut générer un sous-code de transmission en groupant g sous-codes successifs du code primitif, en partant d'un sous-code correspondant à j-en cours.
Un sous-code dans chaque groupe est sélectionné conformément à l'équation (16) et un groupe est sélectionné conformément à un taux d'émission qui dépend d'un environnement de canal et d'une cadence de données d'entrée. Comme montré sur les figures 9 et 10, une transmission initiale de sous-codes est exécutée avec j=0. Bien que les matrices de perforation pour les sous-codes de chaque turbocode QCTC forment des listes dans les tables de mémoire telles que les tableaux 3 à 5 dans la forme de réalisation de l'invention, on peut en outre envisager, en tant qu'autre forme de réalisation, que les sous-codes d'un code primitif pour chaque groupe sont procurés et qu'un sous-code prévu est généré en groupant les sous-codes du code primitif conformément à l'équation (16). Dans ce dernier cas, si j en cours est calculé dans l'équation (16), le dispositif de commande peut générer un sous-code de transmission en groupant g sous-codes successifs du code primitif, en partant d'un sous-code correspondant à j-en cours.
La figure 12 est un organigramme illustrant la transmission de sous-codes en utilisant des turbocodes QCTC à deux dimensions selon la première forme de réalisation de l'invention. En référence à la figure 12, lors de la génération d'un nouveau bloc codeur dans une étape 1200, le dispositif de commande 1303 établit toutes les variables (j et j-sauvegardé) à des valeurs initiales dans une étape 1201. Dans une étape 1203, le dispositif de commande 1303 détermine un turbocode QCTC Ci conformément à un taux d'émission donné. Ici, le taux d'émission est déterminé en fonction de la condition du canal et de la cadence des données d'entrée dans l'émetteur. Le dispositif de commande 1303 lit une variable j sauvegardé stockée pour le turbo-
<Desc/Clms Page number 45>
code QCTC Ci dans une étape 1205, sélectionne le j sous- code Cij parmi les sous-codes du turbocode QCTC dans une étape 1207, et transmet le symbole codé en utilisant le sous-code sélectionné dans une étape 1209.
Après la transmission du sous-code, le dispositif de commande 1303 détermine si un autre sous-code est demandé, c'est-à-dire si une demande de retransmission a été reçue d'un récepteur dans une étape 1211. Lors d'une demande d'un autre sous-code, le dispositif de commande 1303 sélectionne un sous-code avec un taux d'émission déterminé en fonction de l'environnement du canal dans une étape 1213. Autrement, le dispositif de commande 1303 revient à l'étape 1200 pour vérifier si un nouveau bloc codeur a été reçu.
Entre-temps, le dispositif de commande 1303 détermine si le sous-code sélectionné est identique au sous-code précédent dans une étape 1215. S'ils sont identiques, le dispositif de commande 1303 met à jour la variable j à l'aide de l'équation (17) et il revient à l'étape 1207.
S'ils sont différents, le dispositif de commande 1303 augmente de 1 la variable j représentant le sous-code
précédent et stocke la valeur (j+1) en tant que variable j-sauvegardé dans une étape 1219, et il revient à l'étape 1203.
où Si est la dimension établie du turbocode QCTC Ci. La raison pour laquelle on utilise"mod Si"dans l'équation (17) est de permettre une sélection récurrente du premier sous-code après la transmission de tous les sous-codes du turbocode QCTC.
précédent et stocke la valeur (j+1) en tant que variable j-sauvegardé dans une étape 1219, et il revient à l'étape 1203.
où Si est la dimension établie du turbocode QCTC Ci. La raison pour laquelle on utilise"mod Si"dans l'équation (17) est de permettre une sélection récurrente du premier sous-code après la transmission de tous les sous-codes du turbocode QCTC.
Conformément à l'invention telle que décrite cidessus, un système de communications avec retransmission peut sélectionner un turbocode QCTC différent de façon adaptative par rapport à une cadence de données ou un taux
<Desc/Clms Page number 46>
d'émission donné. En d'autres termes, des turbocodes QCTC à deux dimensions et des turbocodes QCTC adaptatifs sont utilisés pour une retransmission de paquets, augmentant ainsi notablement le débit.
Il va de soi que de nombreuses modifications peuvent être apportées au procédé et à l'appareil décrits et représentés sans sortir du cadre de l'invention.
Claims (20)
- REVENDICATIONS 1. Procédé de réagencement de sous-codes de turbocodes quasi-complémentaires (QCTC) à deux dimensions, caractérisé en ce qu'il comprend les étapes qui consistent : à générer des ensembles de sous-codes de turbocodes QCTC avec des taux d'émission donnés ; et à réagencer des sous-codes d'un ensemble de sous-codes avec un même taux d'émission ou un taux d'émission différent qui doit être transmis après un sous-code ayant un taux d'émission prédéterminé.
- 2. Procédé selon la revendication 1, caractérisé en ce que le sous-code est une matrice ayant des éléments représentant une perforation et une répétition.
- 3. Procédé selon la revendication 1, caractérisé en ce que l'étape de réagencement comprend les étapes qui consistent : à générer de nouveaux ensembles de sous-cods, une matrice pour chaque sous-code dans chaque nouvel ensemble de sous-codes ayant autant de colonnes que le plus petit commun multiple des nombres de colonnes de chaque sous-code dans les ensembles de sous-codes ; et à déterminer une priorité des matrices de sous-codes dans chaque nouvel ensemble de sous-codes afin qu'une matrice générée en combinant des matrices provenant de deux des nouveaux ensembles de sous-codes ait une caractéristique QCTC, et à réagencer les matrices dans chaque nouveau sous-code conformément à la priorité.
- 4. Procédé selon la revendication 3, caractérisé en ce que la caractéristique QCTC est que des éléments de la matrice ont une distribution uniforme de répétition et de perforation.
- 5. Procédé de réagencement de matrices de sous-codes de turbocodes quasi-complémentaires QCTC, caractérisé en ce qu'il comprend les étapes qui consistent : à générer des ensembles de sous-codes de turbocodes QCTC correspondant à une pluralité de taux d'émission<Desc/Clms Page number 48>donnés, chaque sous-code de l'ensemble de sous-codes étant une matrice avec des éléments représentant une répétition et une perforation ; à générer de nouveaux ensembles de sous-codes, une matrice de chaque sous-code dans un nouvel ensemble de sous-codes ayant autant de colonnes que le plus petit commun multiple des nombres de colonnes de sous-codes dans les ensembles de sous-codes ; à déterminer une priorité des matrices de sous-codes dans chaque nouvel ensemble de sous-codes afin qu'une matrice générée en combinant des matrices provenant de deux des nouveaux ensembles de sous-codes ait une caractéristique QCTC i et à réagencer les matrices dans chaque nouveau sous-code conformément à la priorité.
- 6. Procédé de transmission de symboles utilisant des sous-codes de turbocodes quasi-complémentaires QCTC à deux dimensions, caractérisé en ce qu'il comprend les étapes qui consistent : à réagencer des sous-codes dans des ensembles de souscodes de turbocodes QCTC correspondant à une pluralité de taux d'émission donnés et à stocker les sous-codes réagencés ; à sélectionner un turbocode QCTC ayant un taux d'émission déterminé pour une transmission ; et à transmettre des symboles en utilisant un sous-code dans l'ensemble de sous-codes du turbocode QCTC sélectionné.
- 7. Procédé selon la revendication 6, caractérisé en ce que l'étape de réagencement comprend les étapes qui consistent : à générer de nouveaux ensembles de sous-codes, une matrice de chaque sous-code du nouvel ensemble de souscodes ayant un nombre de colonnes égal au plus petit commun multiple des nombres de colonnes de chaque sous-code dans les ensembles de sous-codes i à déterminer une priorité des matrices de sous-codes dans chaque nouvel ensemble de sous-codes afin qu'une<Desc/Clms Page number 49>matrice générée en combinant des matrices provenant de deux des nouveaux ensembles de sous-codes ait une caractéristique QCTC ; et à réagencer les matrices dans chaque nouveau sous-code conformément à la priorité.
- 8. Procédé selon la revendication 7, caractérisé en ce que la caractéristique QCTC est que des éléments d'une matrice ont une distribution uniforme de répétition et de perforation.
- 9. Procédé de génération de sous-codes de turbocodes quasi-complémentaires QCTC à deux dimensions, caractérisé en ce qu'il comprend les étapes qui consistent : à générer des sous-codes d'un turbocode QCTC ayant le taux d'émission le plus élevé parmi des turbocodes QCTC avec des taux d'émission dans une relation de multiple entier et à établir le turbocode QCTC ayant le taux d'émission le plus élevé en tant que code primitif ; à déterminer un nombre de sous-codes devant être groupés dans le code primitif pour générer chacun des autres turbocodes QCTC ; et à générer des sous-codes des autres turbocodes QCTC en groupant les sous-codes du code primitif conformémert à des nombres de groupage.
- 10. Procédé selon la revendication 9, caractérisé en ce qu'il comprend en outre l'étape qui consiste à transmettre un sous-code suivant un sous-code précédemment transmis dans un ensemble de sous-codes d'un turbocode QCTC avec un taux d'émission déterminé pour une transmission.
- 11. Procédé de transmission de symboles utilisant des sous-codes de turbocodes quasi-complémentaires QCTC à deux dimensions, caractérisé en ce qu'il comprend les étapes qui consistent : à générer des sous-codes d'un turbocode QCTC aqyant le taux d'émission le plus élevé parmi des turbocodes QCTC avec des taux d'émission dans une relation de multiple entier et à établir le turbocode QCTC ayant le taux<Desc/Clms Page number 50>d'émission le plus élevé en tant que code primitif ; à déterminer un nombre de sous-codes devant être groupés dans le code primitif pour générer chacun des autres turbocodes QCTC ; et à générer un sous-code en groupant un nombre de souscodes du code primitif égal à un nombre de groupages correspondant à un taux d'émission déterminé pour la transmission, en commençant avec un sous-code suivant un sous-code précédemment transmis dans le code primitif, et en transmettant des symboles utilisant le sous-code généré.
- 12. Procédé de transmission de symboles utilisant des sous-codes de turbocodes quasi-complémentaires QCTC à deux dimensions, caractérisé en ce qu'il comprend les étapes qui consistent : à générer des sous-codes d'un turbocode QCTC ayant le taux d'émission le plus élevé parmi des turbocodes QCTC ayant des taux d'émission dans une relation de multiple entier, et à établir le turbocode QCTC ayant le taux d'émission le plus élevé en tant que code primitif ; à générer des sous-codes des autres turbocodes QCTC en groupant les sous-codes du code primitif ; à déterminer un nombre de séquences, j~en cours devant être utilisé dans une transmission à l'aide de l'équation suivante lorsqu'un taux d'émission pour la transmission est donné [ ( (jpre+l) *gpre mod Sp)-l]+l=(jencours*gen cours) mod Spoù j~pre est un nombre de séquences de sous-code utilisé pour la transmission précédente, g~pre est un nombre de groupages utilisé pour la transmission précédente, g~en cours est un nombre de groupages déterminé et Sp est une dimension établie du code primitif i et à transmettre des symboles en utilisant un sous-code correspondant au nombre de séquences déterminé parmi des sous-codes du turbocode QCTC conformément au taux<Desc/Clms Page number 51>d'émission déterminé.
- 13. Procédé de génération de sous-codes de turbocodes quasi-complémentaires QCTC à deux dimensions, caractérisé en ce qu'il comprend les étapes qui consistent : à grouper des turbocodes QCTC conformément à des taux d'émission, chaque groupe QCTC comprenant des turbocodes QCTC ayant des taux d'émission dans une relation de multiple entier ; à générer des sous-codes d'un turbocode QCTC ayant le taux d'émission le plus élevé dans chaque groupe de turbocodes QCTC et à établir le turbocode QCTC ayant le taux d'émission le plus élevé en tant que code primitif ; à déterminer un nombre de sous-codes devant être groupés dans le code primitif pour générer chacun des autres turbocodes QCTC dans chaque groupe QCTC ; et à générer un sous-code en groupant un nombre de souscodes du code primitif égal à un nombre de groupages correspondant à un taux d'émission.
- 14. Procédé de transmission de symboles utilisant des sous-codes de turbocodes quasi-complémentaires QCTC à deux dimensions, caractérisé en ce qu'il comprend les étapes qui consistent : à grouper des turbocodes QCTC conformément à des taux d'émission, chaque groupe QCTC comprenant des turbocodes QCTC ayant des taux d'émission dans une relation de multiple entier ; à générer des sous-codes d'un turbocode QCTC ayant le taux d'émission le plus élevé dans chaque groupe QCTC et à établir le turbocode QCTC ayant le taux d'émission le plus élevé en tant que code primitif ; à déterminer un nombre de sous-codes devant être groupés dans le code primitif pour générer chacun des autres turbocodes QCTC dans chaque groupe QCTC ; et à générer un sous-code en groupant un nombre de souscodes du code primitif égal à un nombre de groupages correspondant à un taux d'émission déterminé pour la<Desc/Clms Page number 52>transmission, et à transmettre des symboles en utilisant le sous-code généré.
- 15. Appareil pour réagencer des sous-codes de turbocodes quasi-complémentaires QCTC à deux dimensions, caractérisé en ce qu'il comporte un turbocodeur destiné à coder une suite de bits d'informations d'entrée avec un taux d'émission prédéterminé et à générer des symboles de code ; un dispositif de commande (1303) destiné à réagencer des sous-codes dans des ensembles de sous-codes de turbocodes QCTC correspondant à une pluralité de taux d'émission donnés et à stocker les sous-codes réagencés, à sélectionner un turbocode QCTC ayant un taux d'émission déterminé pour une transmission, et à générer un signal de commande de perforation et de répétition pour une matrice suivant une matrice utilisée pour une transmission précédente parmi les matrices réagencées du turbocode QCTC sélectionné ; et un générateur (1302) de turbocodes QCTC destiné à générer un sous-code devant être transmis par perforation et répétition des symboles de codes reçus du turbocodeur conformément au signal de commande de perforation et de répétition.
- 16. Appareil selon la revendication 15, caractérisé en ce que le dispositif de commande réagence les matrices dans chaque ensemble de sous-codes afin qu'une matrice produite en combinant des matrices provenant de deux ensembles de sous-codes différents ait une caractéristique QCTC.
- 17. Appareil selon la revendication 16, caractérisé en ce que la caractéristique QCTC est que des éléments d'une matrice ont une distribution uniforme de répétition et de perforation.
- 18. Appareil pour la transmission de symboles utilisant des sous-codes de turbocodes quasicomplémentaires QCTC à deux dimensions, caractérisé en ce qu'il comporte un turbocodeur destiné à coder une suite de bits d'informations d'entrée avec un taux d'émission prédéterminé et à générer des symboles de code ; un<Desc/Clms Page number 53>dispositif de commande (1303) destiné à stocker un ensemble de matrice à partir duquel on génère des sous-codes d'un turbocode QCTC ayant le taux d'émission le plus élevé parmi des turbocodes QCTC ayant des taux d'émission dans une relation de multiple entier, à établir le turbocode QCTC ayant le taux d'émission le plus élevé en tant que code primitif, à générer des sous-codes de turbocodes QCTC en groupant les sous-codes du code primitif, à sélectionner un sous-code du turbocode QCTC conformément au taux d'émission déterminé lorsque le taux d'émission pour la transmission est donné, et à générer un signal de commande de perforation et de répétition conformément au sous-code sélectionné ; et un générateur (1302) de turbocodes QCTC destiné à générer un sous-code devant être transmis par perforation et répétition des symboles de code reçus du turbocodeur conformément au signal de commande de perforation et de répétition.
- 19. Appareil selon la revendication 18, caractérisé en ce que le dispositif de commande sélectionne un sous-code conformément à un nombre de séquences, jen cours, oe sous- code déterminé par [((jpre+l)*gpre mod Sp)-l] +l= (j~en cours*g~en cours) mod Sp où j~pre est un nombre de séquences d'un sous-code utilisédans la transmission précédente, gpre est un nombre de groupages utilisé pour la transmission précédente, g~en cours est un nombre de groupages déterminé et Sp est une dimension établie du code primitif.
- 20. Appareil selon la revendication 18, caractérisé en ce que le dispositif de commande comporte plusieurs groupes QCTC, chaque groupage QCTC ayant des turbocodes QCTC avec des taux d'émission dans une relation de multiple entier.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20010007139 | 2001-02-07 | ||
KR20010006662 | 2001-02-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2820565A1 true FR2820565A1 (fr) | 2002-08-09 |
FR2820565B1 FR2820565B1 (fr) | 2011-09-23 |
Family
ID=26638796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0201499A Expired - Fee Related FR2820565B1 (fr) | 2001-02-07 | 2002-02-07 | Procedes et appareils de reagencement de sous-codes, de turbocodes quasi-complementaires et de transmission de symboles utilisant ces sous-codes |
Country Status (13)
Country | Link |
---|---|
US (2) | US7213193B2 (fr) |
EP (2) | EP1231737B1 (fr) |
JP (1) | JP3753694B2 (fr) |
KR (1) | KR100464453B1 (fr) |
CN (1) | CN1276588C (fr) |
AU (1) | AU2002232276B2 (fr) |
BR (1) | BRPI0204016B1 (fr) |
CA (1) | CA2405465C (fr) |
DE (2) | DE60236268D1 (fr) |
FR (1) | FR2820565B1 (fr) |
GB (1) | GB2380915B (fr) |
RU (1) | RU2251793C2 (fr) |
WO (1) | WO2002063778A1 (fr) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2394153B (en) * | 2001-02-13 | 2005-08-24 | Samsung Electronics Co Ltd | Apparatus and method for generating codes in communication system |
JP3636708B2 (ja) | 2001-02-13 | 2005-04-06 | サムスン エレクトロニクス カンパニー リミテッド | 通信システムにおける符号を生成するための装置及び方法 |
KR100724921B1 (ko) * | 2001-02-16 | 2007-06-04 | 삼성전자주식회사 | 통신시스템에서 부호 생성 및 복호 장치 및 방법 |
EP1276267A3 (fr) * | 2001-07-12 | 2006-11-15 | Samsung Electronics Co., Ltd. | Système et procédé hybride à demande automatique de répétition |
WO2005025262A1 (fr) * | 2003-09-04 | 2005-03-17 | Fujitsu Limited | Systeme de communication et procede de communication par transfert |
KR100770902B1 (ko) | 2004-01-20 | 2007-10-26 | 삼성전자주식회사 | 고속 무선 데이터 시스템을 위한 가변 부호율의 오류 정정부호 생성 및 복호 장치 및 방법 |
US7953047B2 (en) * | 2005-01-24 | 2011-05-31 | Qualcomm Incorporated | Parser for multiple data streams in a communication system |
FI20050264A0 (fi) * | 2005-03-11 | 2005-03-11 | Nokia Corp | Tietojenkäsittelymenetelmä, verkkoelementti, lähetin, komponentti ja tietokoneohjelmatuote |
KR100651881B1 (ko) * | 2005-08-22 | 2006-12-01 | 엘지전자 주식회사 | Ldpc 부호화된 데이터의 송수신 장치 및 그를 이용하는송수신 방법 |
US20080016425A1 (en) * | 2006-04-04 | 2008-01-17 | Qualcomm Incorporated | Turbo decoder with symmetric and non-symmetric decoding rates |
US7890833B2 (en) * | 2006-06-08 | 2011-02-15 | Intel Corporation | Wireless communication using codeword encoded with high-rate code |
US7813296B2 (en) * | 2006-12-27 | 2010-10-12 | Telefonaktiebolaget L M Ericsson (Publ) | Adapting transmission and reception time in packet based cellular systems |
KR101505193B1 (ko) * | 2007-06-18 | 2015-03-23 | 삼성전자주식회사 | 직교주파수분할다중접속방식의 이동 통신시스템에서 심볼전송 방법 및 장치 |
KR100964610B1 (ko) | 2008-04-18 | 2010-06-21 | 한국전자통신연구원 | 오류정정 부호를 이용한 다이버시티 방법 |
US8516351B2 (en) | 2009-07-21 | 2013-08-20 | Ramot At Tel Aviv University Ltd. | Compact decoding of punctured block codes |
US8516352B2 (en) | 2009-07-21 | 2013-08-20 | Ramot At Tel Aviv University Ltd. | Compact decoding of punctured block codes |
US9397699B2 (en) | 2009-07-21 | 2016-07-19 | Ramot At Tel Aviv University Ltd. | Compact decoding of punctured codes |
US8375278B2 (en) | 2009-07-21 | 2013-02-12 | Ramot At Tel Aviv University Ltd. | Compact decoding of punctured block codes |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2324934A (en) * | 1997-05-02 | 1998-11-04 | Motorola Ltd | Multiplexing data from multi-media sources |
US5907582A (en) * | 1997-08-11 | 1999-05-25 | Orbital Sciences Corporation | System for turbo-coded satellite digital audio broadcasting |
US6138260A (en) | 1997-09-04 | 2000-10-24 | Conexant Systems, Inc. | Retransmission packet capture system within a wireless multiservice communications environment with turbo decoding |
US6347122B1 (en) * | 1998-01-13 | 2002-02-12 | Agere Systems Guardian Corp. | Optimal complement punctured convolutional codes for use in digital audio broadcasting and other applications |
US6370669B1 (en) * | 1998-01-23 | 2002-04-09 | Hughes Electronics Corporation | Sets of rate-compatible universal turbo codes nearly optimized over various rates and interleaver sizes |
CN100466483C (zh) * | 1998-06-05 | 2009-03-04 | 三星电子株式会社 | 用于速率匹配的发送机和方法 |
GB9814960D0 (en) * | 1998-07-10 | 1998-09-09 | Koninkl Philips Electronics Nv | Coding device and communication system using the same |
US6298463B1 (en) * | 1998-07-31 | 2001-10-02 | Nortel Networks Limited | Parallel concatenated convolutional coding |
JP2000068862A (ja) * | 1998-08-19 | 2000-03-03 | Fujitsu Ltd | 誤り訂正符号化装置 |
US6704898B1 (en) * | 1998-10-23 | 2004-03-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Combined hybrid automatic retransmission request scheme |
KR20000067738A (ko) * | 1999-04-14 | 2000-11-25 | 서평원 | 이동 통신 시스템에서 채널 코드의 레이트 매칭 방법 |
KR100357868B1 (ko) * | 1999-07-06 | 2002-10-25 | 삼성전자 주식회사 | 데이터 통신시스템의 전송율 정합 장치 및 방법 |
CN100426717C (zh) | 2000-01-20 | 2008-10-15 | 北方电讯网络有限公司 | 可变速率分组数据应用中带有软组合的混合arq方案 |
KR100734346B1 (ko) * | 2000-08-02 | 2007-07-03 | 엘지전자 주식회사 | 데이터 레이트 매칭 방법 |
US6684367B1 (en) * | 2000-10-13 | 2004-01-27 | Agere Systems Inc. | Channel coding based on hidden puncturing for partial-band interference channels |
KR100442685B1 (ko) * | 2000-10-21 | 2004-08-02 | 삼성전자주식회사 | 통신시스템에서 부호 생성장치 및 방법 |
-
2002
- 2002-02-06 US US10/072,579 patent/US7213193B2/en not_active Expired - Lifetime
- 2002-02-06 AU AU2002232276A patent/AU2002232276B2/en not_active Ceased
- 2002-02-06 CN CNB028004841A patent/CN1276588C/zh not_active Expired - Fee Related
- 2002-02-06 WO PCT/KR2002/000177 patent/WO2002063778A1/fr active IP Right Grant
- 2002-02-06 CA CA002405465A patent/CA2405465C/fr not_active Expired - Lifetime
- 2002-02-06 BR BRPI0204016A patent/BRPI0204016B1/pt not_active IP Right Cessation
- 2002-02-06 RU RU2002126564/09A patent/RU2251793C2/ru not_active IP Right Cessation
- 2002-02-06 JP JP2002563609A patent/JP3753694B2/ja not_active Expired - Fee Related
- 2002-02-07 FR FR0201499A patent/FR2820565B1/fr not_active Expired - Fee Related
- 2002-02-07 GB GB0202868A patent/GB2380915B/en not_active Expired - Fee Related
- 2002-02-07 EP EP02002811A patent/EP1231737B1/fr not_active Expired - Lifetime
- 2002-02-07 DE DE60236268T patent/DE60236268D1/de not_active Expired - Lifetime
- 2002-02-07 EP EP03022618A patent/EP1385291B1/fr not_active Expired - Lifetime
- 2002-02-07 KR KR10-2002-0007188A patent/KR100464453B1/ko not_active IP Right Cessation
- 2002-02-07 DE DE60236336T patent/DE60236336D1/de not_active Expired - Lifetime
-
2005
- 2005-04-08 US US11/102,253 patent/US20050210365A1/en not_active Abandoned
Non-Patent Citations (2)
Title |
---|
DOUGLAS N ROWITCH ET AL: "On the Performance of Hybrid FEC/ARQ Systems Using Rate Compatible Punctured Turbo (RCPT) Codes", IEEE TRANSACTIONS ON COMMUNICATIONS, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 48, no. 6, 1 June 2000 (2000-06-01), pages 948 - 959, XP011010867, ISSN: 0090-6778 * |
TINGFANG JI ET AL: "Concatenated punctured turbo Reed-Solomon codes in a hybrid FEC/ARQ DS/SSMA data network", VEHICULAR TECHNOLOGY CONFERENCE, 1999 IEEE 49TH HOUSTON, TX, USA 16-20 MAY 1999, PISCATAWAY, NJ, USA,IEEE, US, vol. 2, 16 May 1999 (1999-05-16), pages 1678 - 1682, XP010342040, ISBN: 978-0-7803-5565-1 * |
Also Published As
Publication number | Publication date |
---|---|
EP1385291A3 (fr) | 2004-06-23 |
FR2820565B1 (fr) | 2011-09-23 |
JP2004519149A (ja) | 2004-06-24 |
DE60236268D1 (de) | 2010-06-17 |
GB2380915B (en) | 2004-06-23 |
GB0202868D0 (en) | 2002-03-27 |
EP1385291A2 (fr) | 2004-01-28 |
EP1231737A1 (fr) | 2002-08-14 |
RU2251793C2 (ru) | 2005-05-10 |
CN1457553A (zh) | 2003-11-19 |
US7213193B2 (en) | 2007-05-01 |
US20050210365A1 (en) | 2005-09-22 |
CA2405465A1 (fr) | 2002-08-15 |
EP1385291B1 (fr) | 2010-05-05 |
BRPI0204016B1 (pt) | 2015-11-17 |
DE60236336D1 (de) | 2010-06-24 |
CN1276588C (zh) | 2006-09-20 |
GB2380915A (en) | 2003-04-16 |
JP3753694B2 (ja) | 2006-03-08 |
KR100464453B1 (ko) | 2005-01-03 |
US20020152445A1 (en) | 2002-10-17 |
RU2002126564A (ru) | 2004-01-27 |
WO2002063778A1 (fr) | 2002-08-15 |
EP1231737B1 (fr) | 2010-05-12 |
CA2405465C (fr) | 2007-09-25 |
KR20020065866A (ko) | 2002-08-14 |
AU2002232276B2 (en) | 2004-01-15 |
BR0204016A (pt) | 2003-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2820565A1 (fr) | Procedes et appareils de reagencement de sous-codes, de turbocodes quasi-complementaires et de transmission de symboles utilisant ces sous-codes | |
EP0891656B1 (fr) | Procede et dispositif de codage convolutif de blocs de donnees, et procede et dispositif de decodage correspondants | |
FR2826210A1 (fr) | Procede et appareils pour l'emission et la reemission de donnees, et pour la reception de donnees | |
FR2832004A1 (fr) | Procede et appareil de reemission de bits codes | |
FR2831003A1 (fr) | Appareils et procedes d'emission et de reception pour la re-emission de paquets dans un systeme de communication du service mobile | |
FR2826807A1 (fr) | Procede de reemission et de reception de donnees et appareils d'emission et de reception de donnees | |
EP3161986B1 (fr) | Procede de transmission dynamique et selectif fd-dsdf d'un signal numerique pour un systeme mamrc avec plusieurs relais full-duplex, produit programme et dispositif relais correspondants | |
FR2832003A1 (fr) | Emetteur et procede d'emission destines a etre utilises dans un systeme de communication mobile | |
FR2828033A1 (fr) | Procede et appareil pour retransmettre des donnees dans un systeme de communication mobile armc | |
TWI224431B (en) | Method and apparatus for puncturing code symbols in a communications system | |
EP3756295A1 (fr) | Procédé et système omamrc de transmission avec adaptation lente de lien sous contrainte d'un bler | |
EP3387773B1 (fr) | Procede, dispositif de relayage et destinataire avec retour dans un systeme omamrc | |
EP2266234B1 (fr) | Procede de transmission d'un signal numerique entre au moins deux emetteurs et au moins un recepteur, mettant en oeuvre au moins un relais, produit programme et dispositif relais correspondants | |
RU2239292C2 (ru) | Устройство и способ генерации кодов в системе связи | |
EP1974472B1 (fr) | Procedes d'encodage et de decodage rapides et dispositifs associes | |
EP3476071B1 (fr) | Transmission dynamique et selectif d'un signal numerique pour un systeme avec relais full-duplex et une voie de retour limitee | |
EP3161985B1 (fr) | Procédé de transmission dynamique et sélectif fd-dsdf d'un signal numérique pour un système marc avec un relais full-duplex, produit programme et dispositif relais correspondants | |
WO2021229183A1 (fr) | Procédé et système omamrc de transmission avec variation du nombre d'utilisations du canal | |
EP1134902A1 (fr) | Turbo codage/décodage adaptatif | |
FR2792476A1 (fr) | Procede de type arq pour procede de transmission utilisant des turbo-codes, et dispositif associe | |
FR3124912A1 (fr) | Procédé de retransmission coopérative dans un système OMAMRC | |
WO2024079309A1 (fr) | Procédé de retransmission coopérative dans un système omamrc avec allocation de ressources et sélections des sources à aider conjointes | |
WO2011026998A1 (fr) | Procedes de transmission et de reception d'un signal numerique mettant en oeuvre au moins un relais multi-utilisateur dans un reseau cooperatif, programme d'ordinateur et dispositifs correspondants | |
FR3144461A1 (fr) | Procédé de communication et système OMAMRC avec une sélection lors de retransmissions tenant compte du débit des sources et d’un unique échange de CSI | |
FR2800950A1 (fr) | Procede d'entrelacement pour turbo-codage convolutif de donnees |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 15 |
|
PLFP | Fee payment |
Year of fee payment: 16 |
|
PLFP | Fee payment |
Year of fee payment: 17 |
|
PLFP | Fee payment |
Year of fee payment: 19 |
|
ST | Notification of lapse |
Effective date: 20211005 |