DE10120156A1 - Turbotrellis coded modulation - Google Patents
Turbotrellis coded modulationInfo
- Publication number
- DE10120156A1 DE10120156A1 DE2001120156 DE10120156A DE10120156A1 DE 10120156 A1 DE10120156 A1 DE 10120156A1 DE 2001120156 DE2001120156 DE 2001120156 DE 10120156 A DE10120156 A DE 10120156A DE 10120156 A1 DE10120156 A1 DE 10120156A1
- Authority
- DE
- Germany
- Prior art keywords
- bits
- encoder
- bit
- data
- turbo
- 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.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
- H03M13/258—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with turbo codes, e.g. Turbo Trellis Coded Modulation [TTCM]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
- H03M13/256—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with trellis coding, e.g. with convolutional codes and TCM
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3905—Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3988—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes for rate k/n convolutional codes, with k>1, obtained by convolutional encoders with k inputs and n outputs
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/6325—Error control coding in combination with demodulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0059—Convolutional codes
- H04L1/006—Trellis-coded modulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0064—Concatenated codes
- H04L1/0066—Parallel concatenated codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/32—Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
- H04L27/34—Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
- H04L27/3405—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power
- H04L27/3416—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power in which the information is carried by both the individual signal points and the subset to which the individual points belong, e.g. using coset coding, lattice coding, or related schemes
- H04L27/3427—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power in which the information is carried by both the individual signal points and the subset to which the individual points belong, e.g. using coset coding, lattice coding, or related schemes in which the constellation is the n - fold Cartesian product of a single underlying two-dimensional constellation
- H04L27/3433—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power in which the information is carried by both the individual signal points and the subset to which the individual points belong, e.g. using coset coding, lattice coding, or related schemes in which the constellation is the n - fold Cartesian product of a single underlying two-dimensional constellation using an underlying square constellation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
- H04L1/005—Iterative decoding, including iteration between signal detection and decoding operation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
Abstract
Bei einem Verfahren zum Übertragen von Daten über einen Datenübertragungskanal werden zumindest einige der Bits eines eingehenden Bitstroms durch einen Turbocodierer geleitet, um turbocodierte Ausgangsbits zu erzeugen, und Worte entsprechend Symbolpunkten in einer Konstellation in einem Trelliscode-Modulationsschema werden unter Verwendung von zumindest den Bits, die durch den Turbocodierer geleitet werden, erzeugt, möglicherweise in Verbindung mit anderen Bits, die nicht durch den Turbocodierer geleitet werden. Typischerweise sind die turbocodierten Bits die niedrigstwertigen Bits.In a method of transmitting data over a data transmission channel, at least some of the bits of an incoming bit stream are passed through a turbo encoder to produce turbo-coded output bits, and words corresponding to symbol points in a constellation in a trellis code modulation scheme are generated using at least the bits that passed through the turbo encoder, possibly in conjunction with other bits that are not passed through the turbo encoder. Typically, the turbo coded bits are the least significant bits.
Description
Diese Erfindung betrifft das Gebiet der Datenübertragung und insbesondere ein Modulationsschema zum Übertragen von Daten über einen Datenübertragungskanal, beispielsweise in einem diskreten Mehrton-Modulationssystem.This invention relates to the field of data transmission and, more particularly, to a Modulation scheme for transmitting data over a data transmission channel, for example in a discrete multi-tone modulation system.
Um die Effizienz einer Datenübertragung über einen Datenübertragungskanal zu steigern, werden die Daten als Symbole übertragen, die jeweils eine Anzahl von Bits darstellen. In einem QAM-(Quadraturamplitudenmodulations-)System werden die Symbole beispielsweise durch die Amplitude und Phase der Signale dargestellt. Sechzehn eindeutige Symbole, d. h. Kombinationen von Amplitude und Phase, stellen beispielsweise vier Bits auf einmal dar. Die Symbole bilden eine Konstellation von Punkten in einem Phasen-Amplituden-Diagramm. Wenn die Anzahl der Symbole zunimmt, nimmt auch die Möglichkeit für Übertragungsfehler zu. Vorwärtsfehlercodierschemen werden verwendet, um zu ermöglichen, daß der Empfänger Fehler erkennt und das korrekte übertragene Symbol wiederherstellt.To increase the efficiency of data transmission over a data transmission channel, the data is transmitted as symbols, each representing a number of bits. In For example, in a QAM (Quadrature Amplitude Modulation) system, the symbols represented by the amplitude and phase of the signals. Sixteen unique symbols, i. H. Combinations of amplitude and phase, for example, represent four bits at a time Symbols form a constellation of points in a phase-amplitude diagram. As the number of symbols increases, so does the possibility of transmission errors to. Forward error coding schemes are used to enable the receiver Detects errors and restores the correct transmitted symbol.
Eine bevorzugte Form von Codierung bei Datenübertragungen ist die Faltungscodierung, die ein Codierschema auf Bitebene ist, das von der vorangehenden Bitsequenz abhängt. Bei der trelliscodierten Modulation wird die Anzahl der Symbole erhöht, um eine Redundanz vorzusehen. Nur bestimmte Übergänge sind zugelassen. Im Fall eines Fehlers kann der Empfänger den wahrscheinlichsten korrekten Übergang mit der Kenntnis aller möglichen zulässigen Übergänge erkennen.A preferred form of coding in data transmissions is convolutional coding is a bit-level coding scheme that depends on the preceding bit sequence. In the trellis coded modulation, the number of symbols is increased to provide redundancy to provide. Only certain transitions are allowed. In the event of an error, the Receiver the most likely correct transition with knowledge of all possible recognize permissible transitions.
Im Gegensatz zu Blockcodes, die Daten in vorbestimmten Blöcken senden, kommen Faltungscodes nicht gut mit Büschelfehlern zurecht. Teilweise als Antwort auf dieses Problem wurden Turbocodes entwickelt. Im wesentlichen besteht ein Turbocode aus zwei oder mehreren Faltungscodes, die durch eine Verschachtelungsvorrichtung getrennt sind, die die Eingangssequenz des ersten Codierers verarbeitet. Siehe beispielsweise "Application of Turbo Codes for Discrete Multi-Tone Modulation", Hamid R. Sadjapour, AT Shannon Labs., 1996.In contrast to block codes that send data in predetermined blocks, come Convolutional codes do not cope well with tuft errors. Partly in response to this problem Turbo codes were developed. A turbo code essentially consists of two or a plurality of convolutional codes separated by an interleaver that the Input sequence of the first encoder processed. For example, see "Application of Turbo Codes for Discrete Multi-Tone Modulation ", Hamid R. Sadjapour, AT Shannon Labs., 1996.
Der Turbocode zieht aufgrund seines größeren Codiergewinns immer mehr Interesse auf sich. In einem DSL-(digitalen Teilnehmermultiplex-)System wurde ein Turbocode verwendet, um einen Trelliscode zu ersetzen, um eine bessere Bitfehlerraten-(BER)Leistung zu erhalten. Wenn jedoch die Konstellationsgröße zunimmt, beginnt der Codiergewinnvorteil des Turbocodes abzunehmen. Dies liegt daran, daß die redundanten Bits die Konstellationsgröße noch größer machen.The turbo code is attracting more and more interest due to its greater coding gain. In a DSL (digital subscriber multiplex) system, a turbo code was used to replace a trellis code for better bit error rate (BER) performance. However, as the constellation size increases, the coding gain of the Remove turbo codes. This is because the redundant bits are the constellation size make it bigger.
Eine Aufgabe dieser Erfindung ist die Steigerung der Datenübertragungsrate, beispielsweise in einem DMT-System.An object of this invention is to increase the data transfer rate, for example in a DMT system.
Gemäß der vorliegenden Erfindung wird ein Verfahren zum Übertragen von Daten über einen Datenübertragungskanal bereitgestellt, umfassend Empfangen eines eingehenden Bitstroms, Leiten von zumindest einigen der Bits durch einen Turbocodierer, um turbocodierte Ausgangsbits zu erzeugen, und Erzeugen von Worten entsprechend Symbolpunkten in einer Konstellation in einem Trelliscode-Modulationsschema unter Verwendung von zumindest den durch den Turbocodierer geleiteten Bits.According to the present invention, a method for transmitting data over a Data transmission channel provided, comprising receiving an incoming bit stream, Passing at least some of the bits through a turbo encoder to turbo coded ones Generate output bits and generate words corresponding to symbol points in one Constellation in a trellis code modulation scheme using at least the bits passed through the turbo encoder.
In dieser Erfindung wird der Turbocodierer vorzugsweise verwendet, um nur das niedrigstwertige Bit (LSB) in der Konstellation zu codieren, da das LSB für Fehler am empfindlichsten ist. Die durch dieses Mittel erreichbare Datenrate ist nur ein paar dB von der Shannon-Kapazität entfernt. Die Erfindung kombiniert den leistungsstarken Turbocode mit einem trelliscodierten Modulationsschema, um die Datenrate vorzugsweise in einem DMT- (Diskreten Mehrton-)System zu erhöhen.In this invention, the turbo encoder is preferably used to do just that to code the least significant bit (LSB) in the constellation, since the LSB for errors on is most sensitive. The data rate that can be achieved by this means is only a few dB of that Shannon capacity removed. The invention combines the powerful turbo code with a trellis-coded modulation scheme in order to optimize the data rate in a DMT Increase (discrete multi-tone) system.
In einem DMT-System werden mehrere Unterkanäle verwendet, um Daten zu übertragen, jeweils mit verschiedenen Trägern und verschiedenen QAM-Konstellationen, die verschiedene Zahlen von Bits pro Konstellationspunkt enthalten. Die Anzahl von Bits an jedem Konstellationspunkt ist normalerweise eine ganze Zahl und ein Unterkanal ist nicht verwendbar, wenn er nicht ein Datenbit unterstützen kann. Gemäß der Erfindung kann ein Streuspektrum-Algorithmus mit einer turbotrelliscodierten Modulation kombiniert werden, so daß Kanäle, die weniger als ein Informationsbit übertragen, auch verwendet werden können. Folglich kann die Gesamtkanalkapazität stark erhöht werden.In a DMT system, several subchannels are used to transmit data, each with different carriers and different QAM constellations that contain different numbers of bits per constellation point. The number of bits each constellation point is usually an integer and a subchannel is not can be used if it cannot support a data bit. According to the invention, a Spread spectrum algorithm can be combined with a turbotrellis coded modulation, so that channels that transmit less than one bit of information can also be used. As a result, the overall channel capacity can be greatly increased.
Die Erfindung wird nun lediglich anhand eines Beispiels mit Bezug auf die zugehörigen Zeichnungen genauer beschrieben, in welchen gilt:The invention will now be described only by way of example with reference to the associated Drawings described in more detail, in which the following applies:
Fig. 1 zeigt einen Codierer gemäß den Prinzipien der Erfindung für x und y < 1, wobei x und y die Anzahl von Bits in jedem Konstellationspunkt (Symbol) sind; Fig. 1 shows an encoder according to the principles of the invention, for x and y <1, and y is the number of bits in each constellation point (symbol) wherein x;
Fig. 2 zeigt die Codiererstruktur für x = 1 und y < 1, wobei die Turbocodierrate 2/3 ist; Fig. 2 shows the encoder structure for x = 1 and y <1, the turbo coding rate being 2/3;
Fig. 3 zeigt eine Codiererstruktur für den Fall y = 1 und x < 1; Fig. 3 shows an encoder structure for the case y = 1 and x <1;
Fig. 4 zeigt den Codierer für x = y = 1, wobei die Codierrate ½ ist; Fig. 4 shows the encoder for x = y = 1, where the coding rate is ½;
Fig. 5 ist ein Blockdiagramm des Decodierers; Fig. 5 is a block diagram of the decoder;
Fig. 6 zeigt eine Konstellation, die zeigt, wie die letzten drei Bits bestimmt werden; und Fig. 6 shows a constellation showing how the last three bits are determined; and
Fig. 7 ist eine Konstellation, die die Bestimmung der höchstwertigen Bits zeigt. Fig. 7 is a constellation showing the determination of the most significant bits.
Die Erfindung wird im Zusammenhang mit einem DMT (Diskreten Mehrtonsystem) beschrieben, das typischerweise 1000 Unterkanäle enthalten könnte, die jeweils zum Übertragen einer anderen Anzahl von Symbolen, die eine unterschiedliche Anzahl von Bits darstellen, in der Lage sind, d. h. die Anzahl der Konstellationspunkte für jeden Unterkanal kann variieren, und somit kann die Anzahl von Bits pro Konstellationspunkt variieren.The invention is used in connection with a DMT (discrete multi-tone system) described, which could typically contain 1000 subchannels, each for Transfer a different number of symbols that have a different number of bits are capable of, d. H. the number of constellation points for each subchannel can vary, and thus the number of bits per constellation point can vary.
Wie in Fig. 1 gezeigt, wird ein Teil eines eingehenden Bitstroms einem Codiererdatenblock 10 zugeführt, der ein adressierbarer Speicher ist. Unter der Annahme von 10 Bits pro Symbol, einschließlich eines Prüfbits pro zwei Unterkanälen, können die 1000 Kanäle 9500 Bits auf einmal übertragen. Somit werden typischerweise 9500 Bits eines eingehenden Bitstroms in den Codierer eingespeist. Ein Bruchteil von diesen, typischerweise 1500, wird dem Codiererdatenblock 10 zugeführt.As shown in Fig. 1, part of an incoming bit stream is supplied to an encoder data block 10 , which is an addressable memory. Assuming 10 bits per symbol, including one check bit per two subchannels, the 1000 channels can transmit 9500 bits at a time. Thus, typically 9500 bits of an incoming bit stream are fed into the encoder. A fraction of these, typically 1500, are fed to encoder data block 10 .
Der Codierer kann vorzugsweise als paralleler Codierer implementiert werden, wie in unserer gleichzeitigen GB-Anmeldung Nr. 0010330.9, eingereicht am 18. April 2000, beschrieben, deren Inhalt durch den Hinweis hierin aufgenommen wird.The encoder can preferably be implemented as a parallel encoder, as in our Concurrent GB Application No. 0010330.9, filed April 18, 2000, the content of which is incorporated herein by reference.
In dem gezeigten Beispiel werden drei Bits u1, u2, u3 nacheinander vom Codiererdatenblock 10 ausgegeben und drei Bits u'1, u'2, u'3 werden als verschachtelte Daten ausgegeben. Die Datenbits u2 und u3 bilden Komponenten v0, v1 des ersten Ausgangsworts v und das Bit u1 bildet das Bit w1 des zweiten Ausgangsworts w. Das Bit w0 wird durch Turbocodieren der Gruppen von Bits u1, u2, u3 und u'1, u'2, u'3 mit rekursiven systematischen Faltungscodierern 12, 14 nach Laufen durch jeweilige Schieberegister 16, 18 gebildet.In the example shown, three bits u 1 , u 2 , u 3 are successively output by the encoder data block 10 and three bits u ' 1 , u' 2 , u ' 3 are output as interleaved data. The data bits u 2 and u 3 form components v 0 , v 1 of the first output word v and the bit u 1 forms the bit w 1 of the second output word w. Bit w 0 is formed by turbo coding the groups of bits u 1 , u 2 , u 3 and u ' 1 , u' 2 , u ' 3 with recursive systematic convolutional encoders 12 , 14 after passing through respective shift registers 16 , 18 .
Die verwendete Konstellationscodiererstruktur ist ähnlich jener, die in einem ADSL-System verwendet wird. Das Binärwort u = (uz', uz'-1, . . ., u1) bestimmt zwei Binärworte v = (vz'-y, . . ., v0) und w = (wy-1, . . ., w0) (wobei z' = x + y - 1), die verwendet werden, um zwei Konstellationspunkte (jeder enthält x bzw. y Bits) in der Codierer-Nachschlagetabelle zu suchen.The constellation encoder structure used is similar to that used in an ADSL system. The binary word u = (u z ' , u z'-1 , ... , U 1 ) determines two binary words v = (v z'-y , ... , V 0 ) and w = (w y-1 , ..., w 0 ) (where z '= x + y - 1), which are used to find two constellation points (each containing x and y bits, respectively) in the encoder look-up table.
Fig. 1 zeigt die Codiererstruktur für x < 1 und y < 1, wobei der verwendete Turbocodierer ein systematischer Codierer mit einer Codierrate von 3/4, die mit einer Rate von 1/2 unterbrochen ist, ist. Der Turbocodierer 20 besteht aus den zwei rekursiven systematischen Faltungscodierern 12, 14 (RSC1 und RSC2). Der Codierer RSC1 übernimmt fortlaufende Daten vom Codiererdatenblock 10 und der Codierer RSC2 übernimmt verschachtelte Daten von dem gleichen Datenblock 10. Fig. 1 shows the encoder structure for x <1 and y <1, the turbo encoder used being a systematic encoder with a coding rate of 3/4 which is interrupted at a rate of 1/2. The turbo encoder 20 consists of the two recursive systematic convolutional encoders 12 , 14 (RSC1 and RSC2). The coder RSC 1 assumes continuous data from Codiererdatenblock 10 and the coder RSC 2 takes nested data from the same data block 10th
Die Länge des Datenblocks hängt von der Anzahl der in jedem Signalrahmen übertragenen Daten ab, 9500 Bits in dem vorstehend gegebenen Beispiel. Normalerweise wird eine ganzzahlige Anzahl von Datenblöcken in jedem Signalrahmen übertragen. Die Fig. 2 bis 4 zeigen die Codiererstruktur für andere Werte von x und y.The length of the data block depends on the number of data transmitted in each signal frame, 9500 bits in the example given above. Usually an integer number of data blocks are transmitted in each signal frame. The FIGS. 2 to 4 show the encoder structure for other values of x and y.
Fig. 2 zeigt die Codiererstruktur für x = 1 und y < 1, wobei die Turbocodierrate 2/3 ist. Für den Fall y = 1 und x < 1 ist die in Fig. 3 gezeigte Codiererstruktur ähnlich der in Fig. 2 gezeigten. Fig. 2 shows the encoder structure for x = 1 and y <1, the turbo coding rate being 2/3. For the case y = 1 and x <1, the encoder structure shown in FIG. 3 is similar to that shown in FIG. 2.
Fig. 3 zeigt die Codiererstruktur für den Fall x = y = 1, wobei die Codierrate 1/2 ist. FIG. 3 shows the encoder structure for the case x = y = 1, the coding rate being 1/2.
Für y < 1 (oder x < 1) kann eine ähnliche Codiererstruktur wie die in den Fig. 1 bis 4 gezeigte in Abhängigkeit von dem Wert von x (oder y) verwendet werden. Der einzige Unterscheid besteht darin, daß ein Bit unter Verwendung von K Unterkanälen, wobei y = 1/K, unter Verwendung eines Streucodes übertragen wird.For y <1 (or x <1), an encoder structure similar to that shown in Figs. 1 to 4 can be used depending on the value of x (or y). The only difference is that a bit is transmitted using K subchannels, where y = 1 / K, using a spreading code.
Wenn der verwendete Streucode [b1, b2, . . ., bk] ist, kann 0 als [b1, b2, . . ., bk] übertragen werden, wobei (k = 1, 2, . . ., K) ist, und 1 wird als b₁, b₂, . . ., übertragen. Die Konstellation für jeden Unterkanal in der Gruppe von K Unterkanälen verwendet eine Konstellation mit einem Bit pro Kanal und der k-te Kanal überträgt das Bit bk. Insgesamt sind K Unterkanäle erforderlich, um ein Datenbit zu übertragen. Der Vorteil einer solchen Anordnung besteht darin, daß Selbstnebensprechen stark verringert werden kann, wenn verschiedene Streucodes für verschiedene Modems in derselben Bindegruppe verwendet werden. Geeignete Streucodes sind in IEEE Communications Letters, Band 4, Nr. 3, S. 80-82, März 2000, R. V. Sonalkar und R. R. Shively, beschrieben.If the spreading code used [b 1 , b 2 ,. . ., b k ], can be 0 as [b 1 , b 2 ,. . ., b k ] are transmitted, where (k = 1, 2,..., K), and 1 is called b₁, b₂,. . ., transfer. The constellation for each subchannel in the group of K subchannels uses a constellation with one bit per channel and the kth channel transmits the bit bk . A total of K subchannels are required to transmit one data bit. The advantage of such an arrangement is that self-crosstalk can be greatly reduced if different spreading codes are used for different modems in the same binding group. Suitable spreading codes are described in IEEE Communications Letters, Volume 4, No. 3, pp. 80-82, March 2000, RV Sonalkar and RR Shively.
Die Decodierprozedur für eine turbotrelliscodierte Modulation besteht aus den folgenden
Schritten:
The decoding procedure for turbotrellis coded modulation consists of the following steps:
- 1. Softdecodierung des niedrigstwertigen Bits (LSB);1. Soft decoding of the least significant bit (LSB);
- 2. Hartdecodierung der höchstwertigen Bits (MSB);2. Hard decoding of the most significant bits (MSB);
- 3. Decodieren des LSB unter Verwendung eines Turbodecodiereralgorithmus; und3. Decode the LSB using a turbo decoder algorithm; and
- 4. Bestimmen aller Datenbits.4. Determine all data bits.
Wenn eine N-Bit-Konstellation für die Datenübertragung in einem gegebenen Unterkanal verwendet wird, kann die Konstellationsstelle durch zweidimensionale Vektoren dargestellt werden: Xb = [bx M, bx(M-1), . . . bx1, 1] und Yb = [byM, by(M-1), . . . by1, 1], wobei M = N/2 für eine gerade Zahl N und M = (N+1)/2 für eine ungerade Zahl N. Der Decodierer ist für sowohl Xb als auch Yb derselbe.If an N-bit constellation is used for data transmission in a given subchannel, the constellation location can be represented by two-dimensional vectors: X b = [b x M , b x (M-1) ,. . . b x1 , 1] and Y b = [b yM , b y (M-1) ,. . . b y1 , 1], where M = N / 2 for an even number N and M = (N + 1) / 2 for an odd number N. The decoder is the same for both X b and Y b .
Die empfangenen Daten sollen (X, Y) sein. Wenn (-2M+1+2k)<X<(-2M+1+2(k+1)) ist, wobei
k = 0, 1, . . ., 2M-1, und X1 = (-2M+1+2k) und X2 = (-2M+1+2(k+1)) festgehalten wird, hängt das
Decodiererergebnis, ob das letzte XX1 oder X2 annimmt, vom LSB ab. Für N<1 wird das
Softbit (Log-Wahrscheinlichkeit ohne Konstante) für das LSB in X bestimmt als
The received data should be (X, Y). If (-2 M + 1 + 2k) <X <(- 2 M + 1 + 2 (k + 1)), where k = 0, 1,. . ., 2 M -1, and X 1 = (-2 M + 1 + 2k) and X 2 = (-2 M + 1 + 2 (k + 1)), the decoder result depends on whether the last XX 1 or assumes X 2 , from the LSB. For N <1, the soft bit (log probability without constant) for the LSB in X is determined as
wobei σ2 die Rauschleistung ist. Das Softbit für das LSB in Y kann in ähnlicher Weise durch Austauschen von X gegen Y in der obigen Gleichung erhalten werden.where σ 2 is the noise power. The soft bit for the LSB in Y can similarly be obtained by swapping X for Y in the equation above.
Wenn N = 1 ist, ist das Softbit
If N = 1, the soft bit is
Wenn N<1 und der Streucode [b1, b2, . . ., bk] ist, kann das Softbit berechnet werden als
If N <1 and the spreading code [b 1 , b 2 ,. . ., b k ], the soft bit can be calculated as
Die Softbitausgabe wird zur Turbodecodiererschaltung gesandt, die in Fig. 5 dargestellt ist. Der Turbodecodierer besteht aus zwei LOG-MAP-Decodierern 30, 32. Jeder enthält eine Vorwärts-(α)Iteration, eine Rückwärts-(β)Iteration und führt die Endsoftbitausgabe- Berechnung durch. Der einzige Unterschied besteht darin, daß das Ausgangssignal nicht nur das Datenbit, sondern auch das Fehlerprüfbit als seine letzte Iteration enthält.The soft bit output is sent to the turbo decoder circuit shown in FIG. 5. The turbo decoder consists of two LOG-MAP decoders 30 , 32 . Each contains a forward (α) iteration, a backward (β) iteration, and performs the final soft bit output calculation. The only difference is that the output signal contains not only the data bit but also the error check bit as its last iteration.
Der Grund dafür, daß die Ausgabe des Fehlerprüfbits erforderlich ist, ist, daß das LSB erforderlich ist, um X (oder Y) aus zwei möglichen Konstellationspunkten X1 und X2 (oder Y1 und Y2) zu bestimmen, während einige dieser LSBs Fehlerprüfbits sind. Ein ausführliches Beispiel eines Turbodecodierers ist in dem vorstehend angeführten Sadjapour-Artikel und auch in C. Berrou und A., "Near Optimum Error Correcting Coding and Decoding Turbo- Codes", IEEE Trans. on Communications, Band 44, Nr. 10, Okt. 1996, zu finden.The reason the error check bit output is required is that the LSB is required to determine X (or Y) from two possible constellation points X 1 and X 2 (or Y 1 and Y 2 ) while some of these LSBs Error check bits are. A detailed example of a turbo decoder is in the Sadjapour article cited above and also in C. Berrou and A., "Near Optimal Error Correcting Coding and Decoding Turbo Codes", IEEE Trans. On Communications, Volume 44, No. 10, Oct. 1996 to find.
Die Softausgangsfehlerprüfbits zum Zeitpunkt k werden berechnet als
The soft output error check bits at time k are calculated as
Pck1 = prob(bck = 1) = MAX(s,s')[γck1(Rk, s, s')αk-1(s')βk(s)]
Pck0 = prob(bck = 0) = MAX(s,s')[γck0(Rk, s, s')αk-1(s')βk(s)]
P ck1 = prob (b ck = 1) = MAX (s, s') [γ ck1 (R k , s, s') α k-1 (s') β k (s)]
P ck0 = prob (b ck = 0) = MAX (s, s') [γ ck0 (R k , s, s') α k-1 (s') β k (s)]
wobei s der Zustand des Turbocodierers zum Zeitpunkt k ist und s' der Zustand zum Zeitpunkt k-1 ist. Rk stellt die empfangenen Daten dar. βk(s) ist die Wahrscheinlichkeit im Zustand s (Zeitpunkt k) für die Rückwärtsiteration und αk-1(s') stellt die Wahrscheinlichkeit im Zustand s' (Zeitpunkt k-1) für die Vorwärtsiteration dar. γck0(Rk, s, s') und γck1(Rk, s, s') sind die Wahrscheinlichkeit für den Übergang vom Zustand s' zu s, wobei die empfangenen Daten Rk sind und das Fehlerprüfbit 0 bzw. 1 ist.where s is the state of the turbo encoder at time k and s' is the state at time k-1. R k represents the received data. Β k (s) is the probability in state s (time k) for the backward iteration and α k-1 (s ') represents the probability in state s' (time k-1) for Forward iteration . Γ ck0 (R k , s, s') and γ ck1 (R k , s, s') are the probability of the transition from state s' to s, the received data being R k and the error check bit 0 or 1.
Nach dem Laufen durch den Turbodecodierer werden die LSBs bestimmt, und wenn N<1, sollen die MSBs noch aus zwei möglichen Konstellationspunkten bestimmt werden. X wird als Beispiel genommen, das zwei mögliche Werte X1 oder X2 aufweist (die zwei benachbarte Punkte in der Konstellation sind). Für zwei benachbarte Konstellationspunkte muß das LSB für X1 und X2 verschieden sein. Daher kann Xb = [bxM, bx(M-1), . . . bx1, 1] aus X1 und X2 durch Untersuchen seines LSB bestimmt werden. Ebenso kann Yb = [byM, by(M-1), . . . by1, 1] bestimmt werden. Nachdem Xb und Yb bestimmt sind, werden die letzten empfangenen Datenbits für die folgenden drei Fälle erhalten:After running through the turbo decoder, the LSBs are determined, and if N <1, the MSBs are still to be determined from two possible constellation points. X is taken as an example that has two possible values X 1 or X 2 (which are two adjacent points in the constellation). For two adjacent constellation points, the LSB for X 1 and X 2 must be different. Hence X b = [b xM , b x (M-1) ,. . . b x1 , 1] can be determined from X 1 and X 2 by examining its LSB. Likewise, Y b = [b yM , b y (M-1) ,. . . b y1 , 1] can be determined. After X b and Y b are determined, the last received data bits are obtained for the following three cases:
Wenn N gerade ist, sind die letzten Bits [bN, bN-1, . . ., b1] = [bxM, byM, bx(M-1), by(M-1), . . . bx1, by1].If N is even, the last bits are [b N , b N-1,. . ., b 1 ] = [b xM , b yM , b x (M-1) , b y (M-1) ,. . . b x1 , b y1 ].
Wenn N = 3 ist, werden die letzten drei Bits durch die in Fig. 6 gezeigte Konstellation
bestimmt, die in Tabelle 1 weiter tabellarisch dargestellt ist.
If N = 3, the last three bits are determined by the constellation shown in FIG. 6, which is further tabulated in Table 1.
Wenn N eine ungerade Zahl ist und N<3, kann das niedrige Bit (N-5) auf dieselbe Weise wie
für den Fall mit geradem N bestimmt werden, d. h. [bN-5, bN-6, . . ., b1] = [bx(M-3), by(M-3), bx(M-4),
by(M-4), . . ., bx1, by1]. Die 5 MSBs werden gemäß der Konstellation in Fig. 7 bestimmt, die
ferner in Tabelle 2 tabellarisch dargestellt ist.
If N is an odd number and N <3, the low bit (N-5) can be determined in the same way as for the even N case, ie [b N-5 , b N-6,. . ., b 1 ] = [b x (M-3) , b y (M-3) , b x (M-4) , b y (M-4) ,. . ., b x1 , b y1 ]. The 5 MSBs are determined according to the constellation in FIG. 7, which is also shown in table 2.
Es ist zu erkennen, daß die Verwendung eines Turbocodes, wie beschrieben, in Kombination mit einem Trelliscode das Erreichen einer besseren Leistung ermöglicht als mit derzeit verwendeten Trelliscodes möglich ist. Wenn ein Streuspektrum-Algorithmus mit einer turbotrelliscodierten Modulation kombiniert wird, ist es möglich, Kanäle zu verwenden, die weniger als ein Informationsbit übertragen, was zu einer erheblichen Steigerung der Kanalkapazität führt.It can be seen that the use of a turbo code as described in combination enables better performance with a trellis code than with current Trellis codes used is possible. If a spread spectrum algorithm with a turbotrellis coded modulation is combined, it is possible to use channels that transmitted less than one bit of information, resulting in a significant increase in Channel capacity leads.
Die beschriebenen Blöcke können in einem Digitalsignalprozessor unter Verwendung von Standard-DSP-Verfahren, die Fachleuten bekannt sind, implementiert werden.The blocks described can be implemented in a digital signal processor using Standard DSP techniques known to those skilled in the art can be implemented.
Claims (18)
- a) Softdecodierung des empfangenen Signals für die niedrigstwertigen Bits;
- b) Hartdecodierung des Eingangssignals für die höchstwertigen Bits;
- c) Decodieren des niedrigstwertigen Bits unter Verwendung eines Turbodecodiereralgorithmus; und
- d) Bestimmen aller Datenbits.
- a) soft decoding of the received signal for the least significant bits;
- b) hard decoding the input signal for the most significant bits;
- c) decoding the least significant bit using a turbo decoder algorithm; and
- d) determining all data bits.
wobei σ2 die Rauschleistung ist.12. The method of claim 11, wherein the received signal is processed to determine the soft bit (log probability without constant) for the LSB as
where σ 2 is the noise power.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0010334A GB2361853A (en) | 2000-04-28 | 2000-04-28 | Turbo encoding for trellis modulation |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10120156A1 true DE10120156A1 (en) | 2001-11-15 |
Family
ID=9890656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2001120156 Withdrawn DE10120156A1 (en) | 2000-04-28 | 2001-04-25 | Turbotrellis coded modulation |
Country Status (4)
Country | Link |
---|---|
CN (1) | CN1330454A (en) |
DE (1) | DE10120156A1 (en) |
FR (1) | FR2808394B1 (en) |
GB (1) | GB2361853A (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10089173B2 (en) * | 2014-11-26 | 2018-10-02 | Qualcomm Incorporated | Error detection constants of symbol transition clocking transcoding |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU5407898A (en) * | 1996-12-04 | 1998-06-29 | Fernway Limited | A method for trellis coding a logarithmic distribution of constellation points |
US5970098A (en) * | 1997-05-02 | 1999-10-19 | Globespan Technologies, Inc. | Multilevel encoder |
-
2000
- 2000-04-28 GB GB0010334A patent/GB2361853A/en not_active Withdrawn
-
2001
- 2001-04-25 DE DE2001120156 patent/DE10120156A1/en not_active Withdrawn
- 2001-04-27 FR FR0105763A patent/FR2808394B1/en not_active Expired - Fee Related
- 2001-04-27 CN CN 01115659 patent/CN1330454A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN1330454A (en) | 2002-01-09 |
FR2808394B1 (en) | 2005-07-01 |
FR2808394A1 (en) | 2001-11-02 |
GB2361853A (en) | 2001-10-31 |
GB0010334D0 (en) | 2000-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3910739C2 (en) | ||
DE69930467T2 (en) | Iterative demodulation and decoding of a multi-level signal | |
DE69838451T2 (en) | PROCESS AND SWITCHING FOR ADAPTIVE CHANNEL CODING | |
DE60313832T2 (en) | Method and system for generating Low Density Parity Check (LDPC) codes | |
DE69532949T2 (en) | METHOD AND APPARATUS FOR DECODER OPTIMIZATION | |
DE69923970T2 (en) | Channel decoder and method for channel decoding | |
DE60307800T2 (en) | Error detection method in wireless communication systems | |
DE69922707T2 (en) | Transmitter and receiver with rate adaptation | |
DE60113053T2 (en) | Turbo decoder predecoder, for retrieving punctured parity symbols, and a method for recovering a turbo code | |
DE60036245T2 (en) | Block code for multicarrier transmission | |
DE69925151T2 (en) | EFFICIENT NORMALIZATION OF TRELLISCET METHODIC VALUE | |
DE69722571T2 (en) | System and method for digital transmission with a product code combined with multidimensional modulation | |
DE69831783T2 (en) | MULTI-STAGE CODING WITH TIME DIVERSITY | |
DE112004002008B4 (en) | Unified Viterbi / Turbo decoder for mobile telecommunication systems | |
DE69726665T2 (en) | Coded modulation with repeat and tree codes | |
DE69737337T2 (en) | Data receiver and receiving method for punctured, convolutional coded data | |
DE19935785A1 (en) | Method and device for generating a rate-compatible code | |
DE10196688B3 (en) | A decoder for trellis-based channel coding | |
DE10310812B4 (en) | Decoding device, trellis processor and method | |
EP0353694B1 (en) | Method for the redundancy-reducing error-correcting coding in digital radio relay systems using multi-level modulation | |
DE69735982T2 (en) | data receiver | |
EP1269633B1 (en) | Optimized turbo decoder | |
EP1249074B1 (en) | Method for decoding a data signal | |
EP1323269A2 (en) | Segmental deinterlacing | |
US6671327B1 (en) | Turbo trellis-coded modulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8127 | New person/name/address of the applicant |
Owner name: 1021 TECHNOLOGIES KK, YOKOHAMA, JP |
|
8139 | Disposal/non-payment of the annual fee |