EP1072099A1 - Method and apparatus for tcm decoding using qpsk viterbi decoder - Google Patents

Method and apparatus for tcm decoding using qpsk viterbi decoder

Info

Publication number
EP1072099A1
EP1072099A1 EP99918600A EP99918600A EP1072099A1 EP 1072099 A1 EP1072099 A1 EP 1072099A1 EP 99918600 A EP99918600 A EP 99918600A EP 99918600 A EP99918600 A EP 99918600A EP 1072099 A1 EP1072099 A1 EP 1072099A1
Authority
EP
European Patent Office
Prior art keywords
signal
qpsk
symbol
modulation
constellation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP99918600A
Other languages
German (de)
French (fr)
Inventor
Chi-Ping Nee
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tiernan Communications Inc
Original Assignee
Tiernan Communications Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tiernan Communications Inc filed Critical Tiernan Communications Inc
Publication of EP1072099A1 publication Critical patent/EP1072099A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/256Error 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/38Demodulator circuits; Receiver circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing

Definitions

  • Trellis-coded modulation combines channel coding and modulation 5 at a transmitter.
  • Information bits are sent into a TCM encoder in parallel.
  • the least- significant bits (LSBs) are convolutionally encoded.
  • the most-significant bits (MSBs) are usually left uncoded and combined with the output of the convolutional coder to form a symbol on a signal constellation through a signal mapper.
  • One advantage of TCM is that although no error control coding is performed on any bit
  • the decoder is able to provide error correction on all bits. Therefore, significant coding gain over uncoded modulation can be achieved.
  • Punctured Pragmatic TCM Punctured Pragmatic TCM
  • P2TCM Punctured Pragmatic TCM
  • the core of the trellis coder is a punctured version of the industry standard, rate Vz convolutional code. This approach was shown to lead to a wide class of high-rate pragmatic punctured trellis codes of rate n/n+1 for both phase-shift keying (PSK) and quadrature amplitude modulation (QAM) modulations.
  • PSK phase-shift keying
  • QAM quadrature amplitude modulation
  • a trellis diagram can be used to represent the response of a convolutional coder to an input stream.
  • Each trellis stage includes a fixed number of nodes that represent the possible states of the coder.
  • the states are connected such that each state has inputs from disjoint states in the preceding stage and outputs to disjoint states in the succeeding stage.
  • the connections represent possible state transitions and are more commonly referred to as branches.
  • the decoding of TCM signals can be performed efficiently using the well- known Viterbi algorithm.
  • the Viterbi algorithm selects the best path along the branches of thertrellis diagram to determine the originally transmitted input stream from a received sequence of symbols.
  • the algorithm bases this selection on a measure of the accumulated squared (Euclidean) distance between the received symbols and possible points on a signal constellation.
  • the Euclidean distance measurement is made for each branch of the trellis diagram and is referred to as a branch metric.
  • the branch metric is added to the accumulated error for each state. This accumulated error is also called a state metric.
  • a comparison is made between the two incoming branches and the branch with the smaller accumulated error is selected as the survivor branch for each state of the trellis stage.
  • a common technique is to increase the order of modulation, for example, by upgrading from quarternary phase-shift keying (QPSK) to 8-ary phase-shift keying (8PSK).
  • QPSK quarternary phase-shift keying
  • 8PSK 8-ary phase-shift keying
  • high order modulation can result in inferior performance, since the transmitter has to increase the signal power to maintain the same bit error rate as that of the low order modulation.
  • a typical approach is to use TCM at the encoder and "soft decision" values input to a Viterbi decoder designed for the particular high order TCM.
  • the Viterbi decoder engine is typically the most complex element.
  • QPSK modulation there exists many commercially available cores and ASICs that provide a QPSK decoder as a whole package.
  • QPSK decoders cannot be applied directly to higher order TCM.
  • a need exists for a decoding capability which can take advantage of the symmetric properties of QPSK in decoding higher order modulations while also taking advantage of commercially available QPSK Viterbi decoder engines.
  • the present invention provides a method and apparatus for decoding a high order trellis-coded modulated (TCM) signal using a QPSK Viterbi decoder.
  • the invention avoids the need to modify a standard QPSK Viterbi decoder by including a pre-processing unit that transforms a received signal to an equivalent signal vector or soft value in the QPSK signal constellation.
  • This inventive approach is referred to as the "transformed I-Q" approach where I-Q refers to the inphase (I) and quadrature (Q) components of the received signal at the decoder.
  • a method of decoding includes receiving a signal having inphase (I) and quadrature (Q) signal components which correspond to a signal constellation of a first modulation type, such as a high order trellis code modulation or punctured QPSK.
  • the received I, Q signal components are transformed to I 1 , Q 1 signal components corresponding to a QPSK signal constellation.
  • the I', Q 1 signal components are decoded in a QPSK decoder such as a QPSK Viterbi decoder engine.
  • the transforming includes selecting four signal points and determining branch metrics corresponding to the four selected signal points.
  • the branch metrics correspond to a distance between the received signal and the selected signal points in the first modulation signal constellation. From among the selected signal points that signal point having the largest branch metric is determined and an offset is added thereto. The branch metrics of the remaining selected signal points are matched to corresponding QPSK branch metrics in the QPSK signal constellation.
  • the transformed I-Q approach of the present invention is applicable to various high order TCM schemes, including one and two coded bits per symbol formats.
  • FIGs. 1 A and IB show block diagrams for a conventional TCM encoder and decoder, respectively.
  • FIG. 2 shows a conventional rate Vi convolutional encoder.
  • FIG. 3 illustrates a QPSK signal constellation according to the DVB standard.
  • FIG. 4 shows a block diagram for a conventional QPSK decoder.
  • FIG. 5 shows a block diagram of a decoder according to the present invention.
  • FIG. 6 illustrates a trellis diagram. -5-
  • FIG. 7 illustrates a signal constellation for 16 QAM.
  • FIG. 8 illustrates an 8PSK signal constellation.
  • FIG. 9A illustrates a rate 8/9 8 PSK signal constellation based on a rate 5/6 convolutional code
  • FIGs. 9B and 9C illustrate two possible bit-to-symbol 5 mappings.
  • FIGs. 10A and 10B illustrate a unit vector on respective different signal constellations for 8PSK modulation.
  • the encoder structure in FIG. 1 A includes three elements: differential precoder 100, convolutional encoder 102 of rate n/(n+l) with
  • the input bit a is called an "encoded bit” and bits b,, b 2 , ..., b k are called “uncoded bits”.
  • the output y of the convolutional encoder 102 provides "coded bits”. If the convolutional encoder 102 is the de facto rate Vz convolutional encoder 102' as shown in FIG. 2, then the coding is called pragmatic trellis code modulation (PTCM).
  • PTCM pragmatic trellis code modulation
  • mapping can be viewed as a lookup table that assigns an address to a signal point in the constellation. If there are two coded bits within the address of a symbol (not necessarily from the same transition), this coding is referred to as “two coded bits per symbol” (2CBPS). On the other hand, if there is only one coded bit, such coding is referred to as “one coded bit per symbol” (1CBPS). -6-
  • FIG. IB shows the decoder structure comprising five elements: branch metric calculator 106, uncoded bit detector 108, convolutional re-encoder 110, Viterbi decoder engine 112 and differential decoder 114.
  • branch metric calculator 106 uncoded bit detector 108
  • convolutional re-encoder 110 convolutional re-encoder 110
  • Viterbi decoder engine 112 differential decoder 114.
  • the output of the bit-to-symbol mapping block 104 is denoted as s(b, b 2 ...b k y, yj for 2CBPS and s(b, b 2 ...b k y,) for 1CBPS.
  • s(b, b 2 ...b k y,) for 1CBPS.
  • d 00 ,d 01 ,d l0 ,d u are Euclidean distances between the received signal and the signal constellation.
  • the Viterbi decoder engine 112 receives d go ,d ol ,d 10 ,d ⁇ as inputs and determine an optimal path in the trellis diagram.
  • the output a of the Viterbi decoder engine is re-encoded by the convolutional re-encoder 110 to provide output y which is used to determine uncoded bits &,, b .... b by the uncoded bit detector 108.
  • the branch metric calculator 106 needs to find two signals Sg,s ⁇ and branch metrics dg, d, such that
  • a QPSK soft value calculator 200 calculates the soft values v 0 , v, as described above for Equations (21)(22).
  • the Viterbi decoder engine is typically the most complex element. There are many commercially available cores and ASICs that provide a QPSK decoder as a whole package.
  • the present invention provides a modification to the conventional QPSK decoder by introducing a pre-processing unit which transforms a received signal to an equivalent signal vector or soft value in the QPSK signal constellation. This allows a high order TCM signal to be decoded using a conventional QPSK Viterbi decoder engine.
  • This inventive approach is referred to as the "transformed I-Q" -10-
  • I-Q refers to the components I and Q of the received signal at the decoder.
  • the decoder shown in FIG. 5 includes the following conventional decoder elements: QPSK soft values calculator 302, QPSK Viterbi decoder engine 304, convolutional re-encoder 306, uncoded bit detector 308 and differential decoder 310.
  • the decoder further includes an IQ transformer block 300 which provides a transform of the I,Q components such that a general TCM decoder is provided which uses the conventional QPSK Viterbi decoder engine 304 to produce a very good approximation for higher order modulation schemes.
  • invention can simplify the decoding algorithm and leave the Viterbi decoder engine unchanged.
  • the transformed I-Q approach of the present invention can be applied to punctured QPSK.
  • Table 1 shows the corresponding function table of the branch metric calculator where x denotes a puncture.
  • a more popular implementation method for punctured QPSK TCM involves insertion of an erasure. This method can be interpreted as a form of the transformed I-Q approach.
  • This method can be interpreted as a form of the transformed I-Q approach.
  • the four Euclidean distances chosen as the branch metrics can be highly irregular compared to the d' tone which are measured from the received signal to four corners of a square.
  • dominates the difference between the conventional decoding method and the transformed I-Q method of the present invention.
  • the optimal decision and the transformed I-Q method For any signal constellation that satisfies
  • 0 for all received signal points, there is no degradation between the optimal decision and the transformed I-Q method.
  • the box 402 around the two rightmost bits of a symbol 400 indicates the two coded bits per symbol.
  • the 16QAM constellation satisfies
  • 0 because any four closest points chosen form four corners of a square.
  • the transformed I-Q method for 16QAM has no degradation compared with the conventional method.
  • the V and Q ' in Equations (29)(31)(33)(35) are based on the difference of the Euclidean distance instead of the absolute distance. Using a triangle inequality,
  • is finite. Since most of the Viterbi decoder is using fixed point computation, a finite dynamic range will not only be easy to determine the number of quantization bits, but also will reduce the quantization noise due to finite precision. For example, for an 8PSK constellation as shown in FIG. 8,
  • is about three times smaller than a typical I-Q signal which requires a dynamic range of at least 1.5. If a 2CBPS scheme is based on a punctured convolutional code, two coded bits may come from the same transition, from two consecutive transitions or from two far away transitions. Even at the transition where neither yl nor y2 is punctured, -19-
  • FIG. 9A shows rate 8/9 8PSK based on a rate 5/6 convolutional code.
  • FIGs. 9B and 9C illustrate two possible bit-to-symbol mapping patterns with transitions indicated as 420-1,. . ., 420-6 and 422-1,. . .,422-6, respectively.
  • the conventional decoding method for punctured TCM can be very complicated.
  • coded bits y2 and y5 are carried by the one symbol. Since the four closet signals never form four corners of a rectangle, the 1-d metric method cannot be directly applied. This is because the Euclidean distance d, cannot be split into two individual / and Q terms.
  • the optimal decoding method has to wait until the third transition and then perform the standard add-compare-select operation.
  • the transformed I-Q method of the present invention provides a very good solution.
  • the components (I, Q) are transformed to an equivalent component set (V, Q') in the QPSK signal constellation
  • the 1-d metric method in Table 1 or the transformed I-Q method in Table 2 can be applied.
  • the bit-to-symbol mapping is as complicated as shown in FIG. 9B, a very "clean" decoding method can still be applied.
  • Table 3 shows the transform I-Q for different conditions, where the index in d 0 i , d l t indicates a different received symbol.
  • Equations (10) (11) and (12) can also be expressed as a function of
  • These soft values can be used as the soft values input to the QPSK Viterbi decoder engine 304 described above with reference to FIG.5.

Abstract

A method and apparatus for decoding a high order trellis-coded modulated (TCM) signal avoids the need to modify a standard QPSK Viterbi decoder by including a pre-processing unit that transforms a received signal to an equivalent signal vector of soft value in the QPSK signal constellation.

Description

-1-
METHOD AND APPARATUS FOR TCM DECODING USING QPSK VITERBI
DECODER
BACKGROUND OF THE INVENTION
Trellis-coded modulation (TCM) combines channel coding and modulation 5 at a transmitter. Information bits are sent into a TCM encoder in parallel. The least- significant bits (LSBs) are convolutionally encoded. The most-significant bits (MSBs) are usually left uncoded and combined with the output of the convolutional coder to form a symbol on a signal constellation through a signal mapper. One advantage of TCM is that although no error control coding is performed on any bit
10 other than the LSB of the input information data, the decoder is able to provide error correction on all bits. Therefore, significant coding gain over uncoded modulation can be achieved.
The best convolutional codes for TCM were described in the paper "Channel Coding with Multilevel/Phase Signal", G. Ungerboeck, IEEE Transactions On
15 Information Theory, pp. 55-67, January 1982. Unfortunately, for any particular code rate, the maximum coding gain requires a different convolutional code. To achieve versatility, pragmatic TCM (PTCM) was developed, as described in "A Pragmatic Approach to Trellis-Coded Modulation", A. J. Viterbi et al., LEEE Cornm. Magazine, pp. 11-19, July 1989. The fundamental concept in PTCM is that an
-20 industry standard convolutional code of rate Vi, K=7 is used as the core coder inside the TCM encoder. A tradeoff relative to the Ungerboeck approach is that somewhat lower coding gain is achieved. However, even though a lower coding gain is realized, it is very close to the optimum coding gain of the Ungerboeck codes at bit- error rates of interest. A key advantage of PTCM is that with a single standardized
:25 core convolutional coder/decoder, different types of TCM with various code rates -2-
can be easily constructed. This benefits the decoder design especially, since the same Viterbi decoder can be employed for different modulations.
Another advantage of the PTCM scheme is that the code rate can be made variable by puncturing the convolutional coder. Puncturing means that certain bits from the convolutional coder output are deleted. The resultant structure is called Punctured Pragmatic TCM (P2TCM), which was disclosed in "P2 Codes: Pragmatic Trellis Codes Utilizing Punctured Convolutional Codes", J. K. Wolf and E. Zehavi, IEEE Comm. Magazine, pp. 94-99, February 1995. In the P2TCM approach, the core of the trellis coder is a punctured version of the industry standard, rate Vz convolutional code. This approach was shown to lead to a wide class of high-rate pragmatic punctured trellis codes of rate n/n+1 for both phase-shift keying (PSK) and quadrature amplitude modulation (QAM) modulations.
In general, a trellis diagram can be used to represent the response of a convolutional coder to an input stream. Each trellis stage includes a fixed number of nodes that represent the possible states of the coder. The states are connected such that each state has inputs from disjoint states in the preceding stage and outputs to disjoint states in the succeeding stage. The connections represent possible state transitions and are more commonly referred to as branches.
The decoding of TCM signals can be performed efficiently using the well- known Viterbi algorithm. The Viterbi algorithm selects the best path along the branches of thertrellis diagram to determine the originally transmitted input stream from a received sequence of symbols. The algorithm bases this selection on a measure of the accumulated squared (Euclidean) distance between the received symbols and possible points on a signal constellation. The Euclidean distance measurement is made for each branch of the trellis diagram and is referred to as a branch metric. At each trellis stage, the branch metric is added to the accumulated error for each state. This accumulated error is also called a state metric. A comparison is made between the two incoming branches and the branch with the smaller accumulated error is selected as the survivor branch for each state of the trellis stage. -3-
There is a strong demand for expanding the data throughput in communication links. A common technique is to increase the order of modulation, for example, by upgrading from quarternary phase-shift keying (QPSK) to 8-ary phase-shift keying (8PSK). However, high order modulation can result in inferior performance, since the transmitter has to increase the signal power to maintain the same bit error rate as that of the low order modulation. A typical approach is to use TCM at the encoder and "soft decision" values input to a Viterbi decoder designed for the particular high order TCM.
SUMMARY OF THE INVENTION In a conventional TCM decoder, the Viterbi decoder engine is typically the most complex element. In the particular case of QPSK modulation, there exists many commercially available cores and ASICs that provide a QPSK decoder as a whole package. Unfortunately, such QPSK decoders cannot be applied directly to higher order TCM. A need exists for a decoding capability which can take advantage of the symmetric properties of QPSK in decoding higher order modulations while also taking advantage of commercially available QPSK Viterbi decoder engines.
The present invention provides a method and apparatus for decoding a high order trellis-coded modulated (TCM) signal using a QPSK Viterbi decoder. The invention avoids the need to modify a standard QPSK Viterbi decoder by including a pre-processing unit that transforms a received signal to an equivalent signal vector or soft value in the QPSK signal constellation. This inventive approach is referred to as the "transformed I-Q" approach where I-Q refers to the inphase (I) and quadrature (Q) components of the received signal at the decoder. In accordance with the present invention, a method of decoding includes receiving a signal having inphase (I) and quadrature (Q) signal components which correspond to a signal constellation of a first modulation type, such as a high order trellis code modulation or punctured QPSK. The received I, Q signal components are transformed to I1, Q1 signal components corresponding to a QPSK signal constellation. The I', Q1 signal components are decoded in a QPSK decoder such as a QPSK Viterbi decoder engine.
According to an aspect of the invention, the transforming includes selecting four signal points and determining branch metrics corresponding to the four selected signal points. The branch metrics correspond to a distance between the received signal and the selected signal points in the first modulation signal constellation. From among the selected signal points that signal point having the largest branch metric is determined and an offset is added thereto. The branch metrics of the remaining selected signal points are matched to corresponding QPSK branch metrics in the QPSK signal constellation.
The transformed I-Q approach of the present invention is applicable to various high order TCM schemes, including one and two coded bits per symbol formats.
BRIEF DESCRIPTION OF THE DRAWINGS The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of preferred embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention.
FIGs. 1 A and IB show block diagrams for a conventional TCM encoder and decoder, respectively.
FIG. 2 shows a conventional rate Vi convolutional encoder.
FIG. 3 illustrates a QPSK signal constellation according to the DVB standard.
FIG. 4 shows a block diagram for a conventional QPSK decoder.
FIG. 5 shows a block diagram of a decoder according to the present invention.
FIG. 6 illustrates a trellis diagram. -5-
FIG. 7 illustrates a signal constellation for 16 QAM. FIG. 8 illustrates an 8PSK signal constellation.
FIG. 9A illustrates a rate 8/9 8 PSK signal constellation based on a rate 5/6 convolutional code and FIGs. 9B and 9C illustrate two possible bit-to-symbol 5 mappings.
FIGs. 10A and 10B illustrate a unit vector on respective different signal constellations for 8PSK modulation.
DETAILED DESCRIPTION OF THE INVENTION
Initially, conventional TCM encoder and decoder structures are described,
10 followed thereafter by a description of the principles of the present invention and preferred embodiments.
Consider a well-known TCM encoder and decoder structure as shown in FIGs. 1 A and IB, respectively. The encoder structure in FIG. 1 A includes three elements: differential precoder 100, convolutional encoder 102 of rate n/(n+l) with
15 k parallel transition(s) and bit-to-symbol mapping block 104. The input bit a is called an "encoded bit" and bits b,, b2, ..., bk are called "uncoded bits". The output y of the convolutional encoder 102 provides "coded bits". If the convolutional encoder 102 is the de facto rate Vz convolutional encoder 102' as shown in FIG. 2, then the coding is called pragmatic trellis code modulation (PTCM).
,20 When ah encoded bit a is input into the shift register 103, two coded bits y '1, y '2 are generated at the output of the rate Vi convolutional encoder. Either two or one (if the code is a punctured code) of the coded bits v 'I, y '2 are serialized into the stream v. The coded bits combined with the uncoded bit, if any, are used as an address to a symbol in a two dimensional signal constellation. The bit-to-symbol
-25 mapping can be viewed as a lookup table that assigns an address to a signal point in the constellation. If there are two coded bits within the address of a symbol (not necessarily from the same transition), this coding is referred to as "two coded bits per symbol" (2CBPS). On the other hand, if there is only one coded bit, such coding is referred to as "one coded bit per symbol" (1CBPS). -6-
FIG. IB shows the decoder structure comprising five elements: branch metric calculator 106, uncoded bit detector 108, convolutional re-encoder 110, Viterbi decoder engine 112 and differential decoder 114. Consider the relationship between the differential precoder 100 and the differential decoder 114. Note that x is the input bit stream and a along with b,, b2, ..., bk (if there are parallel transitions) are the output of the differential precoder 100. The only constraint for the differential precoder 100 is that it has to be invertible. If it is not, the information x will be lost. Thus, there always exists a differential decoder that is the inverse function of the differential precoder such that the output stream £ of the receiver can be derived from a and b~,, bΛ 2, ..., b~k.
Referring again to FIG.1A, the output of the bit-to-symbol mapping block 104 is denoted as s(b, b2...bky, yj for 2CBPS and s(b, b2...bky,) for 1CBPS. For convenience, the following are defined:
Soo^ {s(b1b2...bk00),Vb,b2...bk} (1)
S01 { s(b, b2...bk 01), V b, b2...bk } (2)
S10 {s(b,b2...bk10),Vb1b2...bk} (3)
S„ {s(b,b2...bkll),Vb1b2...bk} (4)
for 2CBPS; and for 1CBPS:
S0 ^ {s(b,b2...bk0),Vb,b2...bk} (5)
S, { s(b, b2...bk 1), V b, b2...bk } (6)
Now consider the decoding process with reference again to FIG. IB. The received signal is defined as r = [I,QJ. If the TCM is 2CBPS, then branch metric calculator 106 needs to find four signal points s00,s0,,sl0,sn and branch metrics d0O,dO dIO,dπ such that -7-
doo ^ ||s00-r||≤ ||s - r||, V s e Soo (7)
do, ||s0I-r||≤||s-r||,VseS01 (8)
d10 ||s10-r||||s-r||,VseS10 (9)
dM ^ ||s11-r||J£||8-r||,VseS„ (10)
Note that d00,d01,dl0,du are Euclidean distances between the received signal and the signal constellation. The Viterbi decoder engine 112 receives dgo,dol,d10,dπ as inputs and determine an optimal path in the trellis diagram. The output a of the Viterbi decoder engine is re-encoded by the convolutional re-encoder 110 to provide output y which is used to determine uncoded bits &,, b .... b by the uncoded bit detector 108.
Similarly, if TCM is 1CBPS, then the branch metric calculator 106 needs to find two signals Sg,s} and branch metrics dg, d, such that
do ||so-r||≤||s-r||,VseS0 (11)
d, ||s4 - r|| ≤ ||s - r||, V s e S, (12)
However, if a QPSK constellation such as the Digital Video Broadcasting (DVB) standard is used for TCM, as shown in FIG.3, then the branch metrics d00,d0],d10,d11 defined in Equations (7)(8)(9)(10) can be further simplified. Without loss of generality, assume the signal points lie on a unit circle 120. Then,
1/ . + \Q- -t * d'_ (13)
Hr ' '* 2 ' '^ 2 ' 00 r-s '.10" v4* \Q .& & d i 11n0 (14)
i'-'..l = I-fi2 + ie+ ; 2 A d< 01 (15)
r-*nll = | +^l2 ++- l2 a (16)
2 ' 2
where
5oo-(^-' -γ' *ιo ( 2 ' 2 }' 01 ^ 2 ' 2 ^ 1J ^ 2 ' 2 '
It is well-known that the branch metrics fed into a Viterbi decoder engine can be subtracted by the same value without changing the result of the decoder. Subtracting the Expressions in (13)(14)(15)(16) by I2 + Q2 + 1, yields
dόO = d -(/2+β2+1> = fi(-ι-Q (17)
dή' = d! - 2+β2+ = fiv-Q) os)
dό = o, - 2+β2+D = γ5(-/+β) (19) -9-
d 1"1 = d 1'1 -(/22 + l) = J2(J+β) (20)
Since it can be seen above that d"00 = -d"π and d"10 = -d"01, an alternative way of inputting to the Viterbi decoder engine is to use values referred to as "soft values", defined:
v0^d"oo (21)
v, Δ d"01 (22)
The symmetric properties of the QPSK signal constellation are widely used to reduce the complexity of the Viterbi decoder engine to a simpler QPSK Viterbi decoder engine 202 as shown in FIG. 4. A QPSK soft value calculator 200 calculates the soft values v0, v, as described above for Equations (21)(22). Having described the conventional TCM encoder and decoder structures, the principles of the present invention are now described with reference to preferred embodiments.
In the conventional TCM decoder shown in FIG. IB, the Viterbi decoder engine is typically the most complex element. There are many commercially available cores and ASICs that provide a QPSK decoder as a whole package.
Unfortunately, these QPSK decoders cannot be applied to higher order modulation directly because the symmetric properties of QPSK identified above do not necessarily exist for these higher order modulation schemes.
The present invention provides a modification to the conventional QPSK decoder by introducing a pre-processing unit which transforms a received signal to an equivalent signal vector or soft value in the QPSK signal constellation. This allows a high order TCM signal to be decoded using a conventional QPSK Viterbi decoder engine. This inventive approach is referred to as the "transformed I-Q" -10-
approach throughout the Specification where I-Q refers to the components I and Q of the received signal at the decoder.
Referring now to FIG. 5, a preferred decoder embodiment is shown. The decoder shown in FIG. 5 includes the following conventional decoder elements: QPSK soft values calculator 302, QPSK Viterbi decoder engine 304, convolutional re-encoder 306, uncoded bit detector 308 and differential decoder 310. The decoder further includes an IQ transformer block 300 which provides a transform of the I,Q components such that a general TCM decoder is provided which uses the conventional QPSK Viterbi decoder engine 304 to produce a very good approximation for higher order modulation schemes. In particular and as described further hereinafter, the IQ transformer 300 transforms a received signal r = [I,Q] that has been modulated by a higher order signal constellation to an equivalent [I',Q'] signal in the QPSK signal constellation such that the components [I'.Q'J provided to the QPSK Viterbi decoder engine 304 are decoded as a close approximation to the result for f QJ input to a higher order Viterbi decoder. There are several advantages of using the transformed I-Q approach, including:
(a) The conventional QPSK Viterbi decoder engine does not need to be changed dramatically in order to adopt a higher order modulation scheme. For example, whereas a generalized TCM scheme needs at least four branch metric inputs (as shown in FIG. IB), only two soft value inputs are necessary in the transformed I-Q approach.
(b) The transformed signal has less dynamic range. Thus, fewer quantization bits are needed for [I ', Q '] than for [I, QJ.
(c) Even though a TCM decoder allows the user to have access to the branch metrics d00, dol, dI0, du, there can still be some difficulty in decoding such
TCM schemes. For example, some 2CBPS modulation schemes use the coded bits that are generated by two different transitions. The optimal decoding method for such schemes requires a totally different Viterbi decoder engine. In contrast, the transformed I-Q approach of the present -11-
invention can simplify the decoding algorithm and leave the Viterbi decoder engine unchanged.
The transformed I-Q approach of the present invention can be applied to punctured QPSK. First the so-called "1-d branch metric" approach for punctured QPSK is described, followed thereafter by a description of the transformed I-Q approach for punctured QPSK.
Consider the situation where one of the coded bits is punctured. Let v„ and yn+l be the output of two consecutive transitions that are combined into one QPSK signal point, where y„ is used for determining α and yn+l for β shown in FIG. 3. Although the four Euclidean distances remain the same, a different branch metric is applied to the second transition.
Referring now to FIG. 6, a trellis diagram is shown. A function of a Viterbi decoder is to perform an add-compare-select operation. For example, to compare path 1 => 1 '=>1 " and path 2=>1 '=>1 ", two squared Euclidean distances d'00 and d'10 respectively (from Equations (13)(14)) are required since 1 => 1 '=>1 ' ' generates 00 and 2=>1 '=>1 " generate 10. Since these metrics share the same Q term, namely
then only the respective I terms
|/ J--J-^λ? a anndd U |/++&-^|2 (23) 2 2
have to be compared. Similarly, to compare path 3=>2'=>1 " that generates 01 with path 4=>2'=>1" that generates 11, the metrics d'01 and d'π respectively (from Equations (15)(16)) share the same Q term, namely
κ*£t -12-
thus, only the I terms from (23) are involved in the comparison. It is very easy to verify that the survivor at state 1 " will be the larger likelihood path of two survivors at 1 ' and 2' by adding the respective I terms from (23). In other words, the one dimensional or "1-d metrics" from (23) can be used as the branch metric foτy„ and the 1-d metrics given by Q terms
lQ+ and Qf (24)
can be used as the corresponding branch metric foτyn+!. Note that this property is based on the fact that the Euclidean distance of I and Q can be split into two. This is equivalent to two conditions: a) the four signal points are addressed in Gray code, b) the four signal points lie in four corners of a rectangle.
There are four combinations of branch metric for punctured QPSK. Table 1 shows the corresponding function table of the branch metric calculator where x denotes a puncture.
Table 1 : 1-d branch metric for punctured QPSK
doo doi dio d„ yl x, α v- \β,2
| +—
2 v-&r i' f
x y2, v- v- ^ ι> f
-13-
yl x, β lβ-#l2 Ifi^f lβ-#l2 le+fi'
χ y2, β
|β-#l2 lβ-fl2+ l2 iδ÷fi2
yi y2,
V-£ I1 + lδ- 1 |/+ j£|i + iρ-^i (α,β) 2 2 2 2
Observe that even if v„ and vn+/ are not two consecutive transitions, Table 1 still holds true. The choice of branch metric thus depends on the α - β position and the yl-y2 puncture pattern.
A more popular implementation method for punctured QPSK TCM involves insertion of an erasure. This method can be interpreted as a form of the transformed I-Q approach. Consider for example the first row of Table 1 above which indicates that the coded bit y2 is punctured. Thus, d0o =di0; d0,=d„. (25)
Those signal points satisfying Equation (25) lie on the X axis of the signal constellation (FIG. 3). By defining a new signal point
r = 1
Q' = 0, (26)
then the result from the QPSK Viterbi decoder engine is the same. Table 2 lists the transformed I-Q components for punctured QPSK. -14-
Table 2: transformed I-Q for punctured QPSK yl x, α x y2, α yl x, β x y2, β yi y2, («,β) transformed I-Q r = o r = ι Q* = Q Q' = Q
A description of the following schemes is now provided: high order modulation 2CBPS, punctured 2CBPS and 1 CBPS, respectively.
For a 2CBPS TCM, there are four possible coded bit combinations, 00, 10, 01 and 11. Therefore, four signal points are chosen and the four squared Euclidean distances defined in Equations (7)(8)(9)(10) are the branch metrics. As noted, the transformed I-Q approach of the invention transforms a received signal point r = [ Q] of a high order signal constellation to a signal point r' = [F, QJ' in QPSK such that the transformed values can be used in a QPSK Viterbi decoder engine. However, it is possible that the four Euclidean distances chosen as the branch metrics can be highly irregular compared to the d'„ which are measured from the received signal to four corners of a square. In general, it is impossible to find a signal f = (I'.Q)' such that ds = d . In order to match as many d, as possible, a constant K which is independent of i can be added to d since such a constant does not change the maximal likelihood decision made in the Viterbi decoder engine. Even so, since there are only three variables, /, Q and K to match four arbitrary Euclidean distances, it is only possible to match at most three d, and leave one d, unmatched. A sub-optimal decision can be formed by adding an offset ε to the signal point that is farthest from the received signal, that is, the signal with largest d,. The reason for choosing the farthest signal is because the code path corresponding to such signal has the least chance to survive in the Viterbi decoder engine. For example, suppose d00 = max(d00, d0l, dl0, d„) (27)
then the Equations -15-
d' +K + E = \l'- . 2 +/-^|2 +K + ε d 2 2 00
".', **-v'-£t*v'+ **-*n
10 + K |7'÷i£ |β J& + K 10
. ÷^H ^I2 + |β,÷ l2 + 1: = dι.
(28) have the solutions
ε = d oo + d π - d "oi - d lo ι ^29y>">
Similarly, if -16-
d01 = max(d00, d0„ d10, d,j) (30)
then,
/ = ^ ^ιo - «OO> ε =+ ,o - d„ - oo (31>
If dl0 = max(d00, d0„ d10, dj (32)
then,
/' =
4 «O. - rfoo)
Q1 - 4 . - rfoι> = 4π + d 10 d„ -' (33)
and if dn = max(d0o, dol, dI0, d„) (34)
then, -17-
fi <<Oι - d
Q 4 ^ ιo d oo)' d 00 + d 11 - d 01 - d 10 (35)
Note that the offset |ε| dominates the difference between the conventional decoding method and the transformed I-Q method of the present invention. For any signal constellation that satisfies |ε|=0 for all received signal points, there is no degradation between the optimal decision and the transformed I-Q method. For example, consider the 16QAM constellation shown in FIG. 7. Note that the box 402 around the two rightmost bits of a symbol 400 indicates the two coded bits per symbol. In this case, the 16QAM constellation satisfies |ε|=0 because any four closest points chosen form four corners of a square. Thus, the transformed I-Q method for 16QAM has no degradation compared with the conventional method. Note also that the V and Q ' in Equations (29)(31)(33)(35) are based on the difference of the Euclidean distance instead of the absolute distance. Using a triangle inequality,
\ 1\1s 00 - s 10 I"I < d 01 - d oo < | "| s 00 - 510 |"|
\ 1\1s oo - oi 1 " < d oi - d oo < \ "\s oo - s or \ -18-
- s. 11 10 ' < d. 11 10 11 ' 10 "
- - s"o, ll < dn ~ d< ~ s~o
(36)
In other words, the range of |I'| and |Q'| is finite. Since most of the Viterbi decoder is using fixed point computation, a finite dynamic range will not only be easy to determine the number of quantization bits, but also will reduce the quantization noise due to finite precision. For example, for an 8PSK constellation as shown in FIG. 8,
/ \/2 ■> ■> 3π Jϊ + 2J2 l2 + l2 - 2 sin( — ) = - ϊ- * 0.55
4 4
(37) The dynamic range of |I'| and |Q'| is about three times smaller than a typical I-Q signal which requires a dynamic range of at least 1.5. If a 2CBPS scheme is based on a punctured convolutional code, two coded bits may come from the same transition, from two consecutive transitions or from two far away transitions. Even at the transition where neither yl nor y2 is punctured, -19-
the coded bits might be carried by different symbols. For example, FIG. 9A shows rate 8/9 8PSK based on a rate 5/6 convolutional code. FIGs. 9B and 9C illustrate two possible bit-to-symbol mapping patterns with transitions indicated as 420-1,. . ., 420-6 and 422-1,. . .,422-6, respectively. The conventional decoding method for punctured TCM can be very complicated. For example, in the transition diagram of FIG. 9C, coded bits y2 and y5 are carried by the one symbol. Since the four closet signals never form four corners of a rectangle, the 1-d metric method cannot be directly applied. This is because the Euclidean distance d, cannot be split into two individual / and Q terms. Thus, the optimal decoding method has to wait until the third transition and then perform the standard add-compare-select operation. This results in eight path merges in each state and totally changes the structure of the Viterbi engine. The situation becomes worse for the bit-to-symbol mapping shown in FIG. 9B, wherein the add-compare-select operation has to wait until the sixth transition because the .yz are "interleaved". This forces the Viterbi engine to compare 32 paths at the same time which is much too complex.
Fortunately, the transformed I-Q method of the present invention provides a very good solution. After the components (I, Q) are transformed to an equivalent component set (V, Q') in the QPSK signal constellation, the 1-d metric method in Table 1 or the transformed I-Q method in Table 2 can be applied. Even though the bit-to-symbol mapping is as complicated as shown in FIG. 9B, a very "clean" decoding method can still be applied.
The transformed I-Q method for 1 CBPS scheme is simpler than that shown for 2CBPS. Since there are only two distances d0 and d, defined in Equations (11)(12), neither constant K nor ε needs to be added. Suppose, for example, that the puncture pattern is given as ylx, then the Equations
& \n & oo ' 2 2 ° -20-
,/ β + | \βo' >-&\
01 I/'
= v'-ψ r ++ \Qo Α '+ψ -=do
d^]I'+ +\Q/ + =dl
(38)
have the soiutidns:
4 «*. - do>
Q' =0
(39) -21-
Table 3 shows the transform I-Q for different conditions, where the index in d0 i, dl t indicates a different received symbol.
Table 3: transformed I-Q for 1 CPBS scheme
yl x, α x y2, α transformed
/' =0 I-Q
Q 1 =0
Having described the application of the transformed I-Q approach to high order modulation TCM for 2 CBPS, punctured 2 CBPS and 1 CBPS, it can be seen that for preferred embodiments the computation of the transformed I-Q method is very simple and easy to implement in hardware. There are two kinds of signal constellation (1,11) for 8PSK as shown in FIGs. 10A and 10B. To isolate the difference from the remainder of the receiver, define z^ vX, (40)
where Xf is the unit vector as shown in FIGs. 10A and 10B and • is the inner product. Using the bit-to-symbol mapping as shown in FIG. 9A, it can be seen that two signal points that carry the same coded bit but a different uncoded bit will be -22-
180° different. It is very easy to verify that the sign bit of z„ 1=0,1,2,3 in 2's complement is the uncoded bit 00, 10, 01, 11, respectively and that di=I2 + Q2-2\zi\ (41)
Therefore,
max(do, d„ d2, d = min (\z0\, \z, \, \z2\, \z3\) (42)
If d0 is the farthest signal point,
2
- 4 t [I 2\z J] U' - 2 ] )
- z
2
(43)
Similarly,
Q = - (1^,1 - lz3
(44)
Equations (10) (11) and (12) can also be expressed as a function of |z,|. From Equation (21) and (22), the soft values can be computed by -23-
v0 = 2(|z2|-|z3| (45) v,=2(|z1|-|z3| (46)
These soft values can be used as the soft values input to the QPSK Viterbi decoder engine 304 described above with reference to FIG.5.
While this invention has been particularly shown and described with references to preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

Claims

-24-CLAIMSWhat is claimed is:
1. A method of decoding comprising the steps of: receiving a signal having inphase (I) and quadrature (Q) signal components corresponding to a signal constellation of a first modulation type; transforming the received I, Q signal components to Y, Q1 signal components corresponding to a QPSK signal constellation; and decoding the I', Q' signal components in a QPSK decoder.
2. The method of Claim 1 wherein the transforming includes: selecting four signal points and determining branch metrics corresponding to the four selected signal points, each branch metric corresponding to a distance between the received signal and the selected signal points in the first modulation signal constellation; determining from among the selected signal points that signal point having the largest branch metric and adding an offset thereto; and matching the branch metrics of the remaining selected signal points to corresponding QPSK branch metrics in the QPSK signal constellation.
3. The method of Claim 2 wherein the decoding includes decoding the I', Q' signal components according to the QPSK branch metrics.
4. The method of Claim 3 wherein the first modulation type comprises a high order trellis coded modulation and the received signal corresponds to a symbol representing trellis code modulated data encoded according to an encoding format wherein each symbol includes two coded bits per symbol. -25-
5. The method of Claim 4 wherein the received signal corresponds to a symbol representing punctured trellis code modulated data encoded according to an encoding format wherein each symbol includes two coded bits per symbol.
6. The method of Claim 1 wherein the first modulation type comprises a high order trellis coded modulation and the received signal corresponds to a symbol representing trellis code modulated data encoded according to an encoding format wherein each symbol includes one coded bits per symbol.
7. The method of Claim 1 further comprising determining QPSK soft values from the I1, Q' signal components corresponding to a QPSK signal constellation; and decoding the I', Q' signal components in a QPSK decoder according to the QPSK soft values.
8. The method of Claim 1 wherein the first modulation type comprises punctured QPSK and wherein the transforming includes determining branch metrics corresponding to four signal points, each branch metric corresponding to a distance between the received signal and the signal points in the first modulation signal constellation and wherein each branch metric comprises one-dimensional metrics for consecutive transitions in the received signal.
9. An apparatus for decoding comprising: a receiver for receiving a signal having inphase (I) and quadrature (Q) signal components corresponding to a signal constellation of a first modulation type; a transformer for transforming the received I, Q signal components to I1, Q' signal components corresponding to a QPSK signal constellation; and a QPSK decoder for decoding the I', Q' signal components. -26-
10. The apparatus of Claim 9 wherein the transformer includes: means for selecting four signal points and determining branch metrics corresponding to the four selected signal points, each branch metric corresponding to a distance between the received signal and the selected signal points in the first modulation signal constellation; means for determining from among the selected signal points that signal point having the largest branch metric and adding an offset thereto; and means for matching the branch metrics of the remaining selected signal points to corresponding QPSK branch metrics in the QPSK signal constellation.
11. The apparatus of Claim 10 wherein the QPSK decoder includes means for decoding the I', Q' signal components according to the QPSK branch metrics.
12. The apparatus of Claim 11 wherein the first modulation type comprises a high order trellis coded modulation and the received signal corresponds to a symbol representing trellis code modulated data encoded according to an encoding format wherein each symbol includes two coded bits per symbol.
13. The apparatus of Claim 12 wherein the received signal corresponds to a symbol representing punctured trellis code modulated data encoded according to an encoding format wherein each symbol includes two coded bits per symbol.
14. The apparatus of Claim 9 wherein the first modulation type comprises a high order trellis coded modulation and the received signal corresponds to a symbol representing trellis code modulated data encoded according to an encoding format wherein each symbol includes one coded bits per symbol. -27-
15. The apparatus of Claim 9 further comprising a QPSK soft values calculator for determining QPSK soft values from the I', Q1 signal components corresponding to a QPSK signal constellation; and wherein the QPSK decoder decodes the I1, Q' signal components responsive to the QPSK soft values.
16. The apparatus of Claim 9 wherein the first modulation type comprises punctured QPSK and wherein the transformer includes means for deteπnining branch metrics corresponding to four signal points, each branch metric corresponding to a distance between the received signal and the signal points in the first modulation signal constellation and wherein each branch metric comprises one-dimensional metrics for consecutive transitions in the received signal.
EP99918600A 1998-04-17 1999-04-16 Method and apparatus for tcm decoding using qpsk viterbi decoder Withdrawn EP1072099A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US8219998P 1998-04-17 1998-04-17
US82199P 1998-04-17
PCT/US1999/008346 WO1999055010A1 (en) 1998-04-17 1999-04-16 Method and apparatus for tcm decoding using qpsk viterbi decoder

Publications (1)

Publication Number Publication Date
EP1072099A1 true EP1072099A1 (en) 2001-01-31

Family

ID=22169683

Family Applications (1)

Application Number Title Priority Date Filing Date
EP99918600A Withdrawn EP1072099A1 (en) 1998-04-17 1999-04-16 Method and apparatus for tcm decoding using qpsk viterbi decoder

Country Status (3)

Country Link
EP (1) EP1072099A1 (en)
AU (1) AU3647499A (en)
WO (1) WO1999055010A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI569589B (en) * 2015-05-13 2017-02-01 晨星半導體股份有限公司 Viterbi decoding apparatus and viterbi decoding method
CN106301395A (en) * 2015-06-10 2017-01-04 晨星半导体股份有限公司 Veterbi decoding device and Veterbi decoding method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO9955010A1 *

Also Published As

Publication number Publication date
AU3647499A (en) 1999-11-08
WO1999055010A1 (en) 1999-10-28

Similar Documents

Publication Publication Date Title
US5408502A (en) Apparatus and method for communicating digital data using trellis coded QAM with punctured convolutional codes
US6578173B2 (en) Cyclic trellis-coded modulation
US5469452A (en) Viterbi decoder bit efficient chainback memory method and decoder incorporating same
US5233630A (en) Method and apparatus for resolving phase ambiguities in trellis coded modulated data
US6138265A (en) Decoding trellis coded modulated data with a conventional Viterbi decoder
JPH05335972A (en) Viterbi decoder
ITRM950715A1 (en) PROCEDURE AND APPARATUS FOR DIGITAL COMMUNICATIONS WITH SOFT DECISION MAKING
EP1081903B1 (en) Bs digital broadcast receiver
EP1324558A1 (en) Multiresolution broadcast transmitter and method using Gaussian trellis shaping to reduce average signal power and corresponding multi-stage decoder
Pietrobon et al. Rotationally invariant nonlinear trellis codes for two-dimensional modulation
US6889356B1 (en) Cyclic trellis coded modulation
US6625225B1 (en) Trellis decoder and associated method
JP2000092139A (en) Packet binary convolution code
EP1072099A1 (en) Method and apparatus for tcm decoding using qpsk viterbi decoder
Leonardo et al. Multidimensional M-PSK trellis codes for fading channels
JP2008141312A (en) Encoder, decoder, transmitter, and receiver
WO1999017509A1 (en) Symbol mappings for coded modulations
JP3763023B2 (en) Digital communication method and digital communication apparatus
Lampe et al. Coded continuous phase modulation with low-complexity noncoherent reception
US20010029596A1 (en) TCM decoding device and method
US6061408A (en) Method and apparatus for 45° phase ambiguity resolution for one coded bit per symbol 8PSK modulation
Wei et al. Noncoherently non-catastrophic trellis coded modulation
KR100320953B1 (en) Symbol Mapping Method and Device of TCM Using Euclidean Distance And Hamming Distance And Apparatus Thereof
US20040117712A1 (en) Frequency mapped coding for signal error correction
GB2334862A (en) Mapping symbol points in a quadrature amplitude modulation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20001018

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE

RIN1 Information on inventor provided before grant (corrected)

Inventor name: NEE, CHI-PING

17Q First examination report despatched

Effective date: 20010329

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20010809