AU701259B2 - Soft-output decoding transmission system with reduced memory requirement - Google Patents

Soft-output decoding transmission system with reduced memory requirement Download PDF

Info

Publication number
AU701259B2
AU701259B2 AU36184/95A AU3618495A AU701259B2 AU 701259 B2 AU701259 B2 AU 701259B2 AU 36184/95 A AU36184/95 A AU 36184/95A AU 3618495 A AU3618495 A AU 3618495A AU 701259 B2 AU701259 B2 AU 701259B2
Authority
AU
Australia
Prior art keywords
soft
algorithm
output
symbol
bits
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.)
Ceased
Application number
AU36184/95A
Other versions
AU3618495A (en
Inventor
Jurgen Petersen
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.)
Koninklijke Philips NV
Original Assignee
Philips Electronics NV
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 Philips Electronics NV filed Critical Philips Electronics NV
Publication of AU3618495A publication Critical patent/AU3618495A/en
Application granted granted Critical
Publication of AU701259B2 publication Critical patent/AU701259B2/en
Assigned to KONINKLIJKE PHILIPS ELECTRONICS N.V. reassignment KONINKLIJKE PHILIPS ELECTRONICS N.V. Request to Amend Deed and Register Assignors: PHILIPS ELECTRONICS N.V.
Anticipated expiration legal-status Critical
Ceased 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • H03M13/6505Memory efficient implementations
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3905Maximum 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
    • H03M13/3933Decoding in probability domain
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3972Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using sliding window techniques or parallel windows

Landscapes

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

Description

memory requirement which cannot be satisfied in currently available digital signal processors. In view of the backward recursion and the storage of the metrics, the algorithm is primarily suitable for signal sequences which have a block structure. The exact symbol-by-symbol MAP algorithm is basically unsuitable for fixed point DSP's, because the algorithm needs as soft-input values probabilities whose combinations in the algorithm (multiplication and addition) will rapidly lead to numerical problems. Therefore, a sub-optimum variant is to be used in currently available fixed point DSP's, which variant uses either logarithmic probabilities or so-called log-likelihood ratios as softinput values while the combinations in the algorithm then consist of additions and maximization.
Throughout this specification, unless the context requires otherwise, the word "comprise", or variations such as "comprises" or "comprising", will be understood to imply the inclusion of a stated element, integer or step, or group of elements, integers or steps, but not the exclusion of any other umelement, integer or step, or group of elements, integers or steps.
Summary of the Invention A first aspect of the invention is a digital transmission system comprising: a transmitting device including a coding device for coding a digital transmit signal; at least a transmit channel for transmitting the coded digital signal; and S 25 a decoding device for forming a decoded digital signal via an estimate assigned to respective symbols of the decoded digital signal for a probability with which the respective symbol was sent, wherein forward state metrics and backward state metrics to be stored are used for calculating the estimates, and the backward state metrics are stored only in each L th step, where L is the influence length of the convolutional code used in the decoding device.
A second aspect of the invention is a radio station, more particularly a radio base station or mobile station comprising a decoding device for forming a decoded digital signal from a received coded digital signal via an estimate assigned to respective symbols of the decoded digital signal for a probability with which the respective symbol was sent, wherein forward state metrics and backward state metrics to be stored are used for calculating the estimates, and the decoding device comprises means for storing the backward state metrics only in each L h step, where L is the influence length of the convolutional code used in the decoding device.
An advantage of at least some embodiments of the invention is that a transmission system of the type defined in the opening paragraph is provided with a reduced memory requirement of the decoding device.
In one embodiment, in the transmission system defined in the opening paragraph, backward state metrics are stored only in each L h step, where L is the influence length of the convolutional code used in the decoding device.
In one embodiment of a radio station and a decoding device of the type defined in the opening paragraph, the decoding device comprises means for storing the backward state metrics only in each L step, where L is the influence length of the convolutional code used in the decoding device.
15 One embodiment of the invention involves reducing the necessary S: memory requirement for the accumulated metrics from the backward recursion by the factor L, by modifying the base algorithm already known.
This holds both for the exact and for the sub-optimum algorithm. For the sub-optimum algorithm it is possible to achieve a further saving on both S 20 memory requirement and computation effort if soft-output values are needed .only for part of the bits of a block. These bits may then be re-sorted at the beginning and/or end of a block, so that there is then the possibility of limiting the whole soft-output algorithm to only these bits. For the 2 remaining bits, the storage of the accumulated metrics of the backward recursion and also the backward recursion itself may be omitted. Instead, a survivor or path memory is to be used during the forward recursion, which corresponds to the conventional Viterbi algorithm and requires only N.
2 L' 16 words of memory locations.
One embodiment of the invention is based on a transmission system which comprises the components of binary source, convolutional encoder, channel and convolutional decoder. More particularly, the channel is to contain not only the transmitting and receiving-end components such as a modulator and a demodulator, but also a device that estimates the probabilities PQn) with which the symbols un were sent, or a magnitude derived A A therefrom, such as logarithmic probabilities logP(unm) or log-likelihood ratios log(P(un 1)/P(un The binary source generates binary vectors x (xl, X 2 XN-L+1, XN- L+2 0, XN 0) of length N, with x i E where the last L-l bits (tail bits) have a zero value, so that the encoder and decoder change to the zero state after each block. The convolutional encoder generates from each input symbol x n an output symbol u n un, UnM) of length M, with unmE so that the vector u (u1, uM, Unm, UNI, UNM) results therefrom. The discrete-time channel model produces an estimate gnm A A ^A g(Un) P(unm) for the probability with which the symbol unm was sent. The convolutional
A
decoder is to produce for each decoded symbol x n an estimate qa q(xn) for the probability P(xn I u) with which the symbol xm was sent. To avoid scaling problems, the probability ratio qn as shown in equation 1 is generally used: q, 0I) (1) Since the algorithm was used for convolutional coded symbol sequences, the generation of such symbol sequences will be briefly discussed (convolutional encoder).
Fig. 2 shows the circuit of a 1/2 rate convolutional encoder for a convolutional code having the influence length L (memory The states of the convolutional code which are used both in the encoder and in the decoder are to be referenced S n and are formed by the L-l previous input symbols Sn=(Xn-L+2,...,Xn.1,Xn respectively.
During the coding process in step n, the encoder changes from the initial state Sn_ 1 when the signal x n is input, to the next state S n and then produces the M-position symbol un (unl, uM).
In the following are described the separate steps for the exact algorithm which are necessary for calculating the soft-output values.
In step 1, which relates to the calculation of the branch metrics, the branch metric X(Sn-1, Sn) is calculated for each state transition (branch) beginning in state S.n A A 1 and ending in state S n from the estimated probabilities P(Unm) of the receiving symbols unm in accordance with equation 2: M M fP(a,) m= 1 m= 1 In step 2 is effected the recursive calculation of the backward state metrics AB(Sn) for each step n beginning with n N up to step n L+ 1 in accordance with equation 3: AB(S" 1X(S 1
S"
for n= N,N-1, L+1 Herein, S'n, S"n are states of the convolutional decoder which precede the state Sn.1 in the backward recursion for x n O(S'n) and x n respectively. Before the beginning of the backward recursion in step n N, the backward state metrics AB(SN) are to have initial values; that is to say, AB(SN 0) the "one" value and all the other state metrics AB(SN 0) the "zero" value. During the backward recursion, the 2
L-
1 backward state metrics AB(Sn) are stored in each Lth step.
In step 3 is effected a recursive calculation of the forward state metrics AF(Sn) for each step n, beginning with n 1 up to step n N in accordance with equation 4: AF(Sn) AF(S',n-l) Sn) AF(S"ln- 1) S,) for n ,N Herein, S'n-1, S"n_ 1 are states of the convolutional decoder which precede the state S n in the forward recursion for Xn.L+1 O(S'n-1) and xn-L+1 1 respectively.
Before the beginning of the forward recursion in step n 1, the forward state metrics AF(So) are to obtain initial values; that is AF(So 0) the "one" value, and all the other state metrics AF(So 0) the "zero" value.
In step 4, the calculation of the soft-output values is made. During the forward recursion are then calculated in each Lth step i.e. for n L, 2L, 3L, etc. the soft-output values qn for the previous L symbols to x n-L+1; that is, for the symbols to
A
XnL+2 in accordance with equation and for the symbol E AF(S,)-AB P.n= 11 Ax,_-1 for v= 0, L-2 XnL+1 in 01a) E (Sn S- accordance with equation 6: E Sn) .Az(S,) L P(_Lx Ola) E AF(S- X(S_ 1
S
n
-AB(S
n The sub-optimum algorithm will be described in the following. The separate steps for calculating the soft-output values for the sub-optimum algorithm correspond to those of the exact algorithm, except that probabilities in the formulas are to be replaced by logarithmic probabilities or log-likelihood ratios, multiplications by additions and additions by maximization.
In step 1, for calculating the branch metrics, the branch metric X(Sn- 1 Sn) is calculated for each state transition (branch) which commences in state Sn.
1 and ends in state A A A Sn from the log-likelihood ratios gnm g(unm) log(P(unm) 1)/P(unm) of the
A
received symbols unm in accordance with equation 7: M t c(an, 0) 1 E c(a )'gm with I c(lnm= 1) 1 m=l nm 1 In step 2, for determining the backward recursion, a recursive calculation is performed of the backward state metrics AB(Sn) for each step n beginning with n N up to the step n L+ 1 in accordance with equation 8: AB(S,1) max X(Sn,-1, (S 1 for n N, N- L+1 Herein, S'n, S" are states of the convolutional decoder which precede the state Sn-1 during the backward recursion for x n O(S'n) or xn respectively. Before the beginning of the backward recursion in step n N, the backward state metrics AB(SN) are to obtain the initial values; that is to say, AB(SN 0) the "zero" value and all the other state metrics AB(SN o 0) a larger negative value (for example -10,000). During the backward recursion, the 2 L-1 backward state metrics AB(Sn) are stored in each L h step.
In step 3, for determining the forward recursion, the recursive calculation is made of the forward state metrics AF(Sn) for each step n, in accordance with equation 9, beginning with n 1 up to the step n N.
max (A(S' 1
+X(S"
1 for n N Herein, S'n- 1 S"n-1 are states of the convolutional decoder which precede the state Sn during the forward recursion for Xn-L+1 O(S'n-1) or Xn-L+l 1 Before the beginning of the forward recursion in step n 1, the forward state metrics AF(So) are to obtain initial values; that is to say, AF(So 0) the "zero" value and all the other state metrics AF S o 0) a larger negative value (for example -10,000).
In step 4, for calculating the soft-output values, the soft-output values qn for the A A preceding L symbols x n to XnL+ 1 are calculated during the forward recursion in each L th step A A i.e. for n L, 2L, 3L, etc.; that is to say, for the symbols x n tO Xn-L+2 in accordance with equation Salog(,= 1 1 max for P(,-v 01 1 max Sal 0
A
and for the symbol Xn.L+ 1 in accordance with equation (11): a-lo 1 max n-L,1 a P( L+=O 1 =1 max
S
+AB(S))
S.-IIa-L*I 1 0 Herein, a is a proportionality constant. The binary symbols x n to be decoded are implicitly represented by the sign of the soft-output values qn: Xn 1 for qn 0 xn 0 for qn 0 -1 There may be observed that the two algorithms are "symmetrical" with respect to the forward and backward recursion; i.e. first the forward recursion can be effected by storing the forward state metrics in each L th step, and then the backward recursion via a calculation of the soft-output values.
In the following, the combination of the sub-optimum soft-output algorithm with the conventional Viterbi algorithm will be described: For the sub-optimum algorithm a further saving on both the memory requirement and the calculation effort can be achieved if soft-output values are only needed for part of the bits of a block. By re-sorting the bits at the beginning and/or at the end of a block, they can be placed so that the possibility arises that the complete soft-output algorithm is limited to only these bits. For the remaining bits it is then possible to omit the storage of the accumulated metrics from the backward recursion as well as the backward recursion itself. Instead, a survivor or path memory is to be used for these bits during the forward recursion, to be able to decode the bits, which corresponds to the conventional Viterbi algorithm. This is to say that the two algorithms may be combined, because the calculation of the accumulated metrics during the forward recursion is identical for both algorithms.
If the soft-output bits occur at the end of a block i.e. if soft-output values are only to be calculated for the last NL symbols of a block, the following steps are to be executed: 1. Execution of the backward recursion of the soft-output algorithm for the last NL symbols of a block including storage of the backward state metrics in each L h step.
2. Application of the conventional Viterbi algorithm including survivor or path memory to the first N-NL symbols of the block.
3. Execution of the forward recursion of the soft-output algorithm for the last N 1 symbols of the block including a calculation of the soft-output values in each Lth step. The forward recursion then utilizes the accumulated metrics from the conventional Viterbi algorithm of step 2 as initial values.
4. Decision on the first N-NL symbols of the block based on the information of the last NL decoded symbols and of the survivor memory, just like the conventional Viterbi algorithm.
If the soft-output bits occur at the beginning of a block i.e. if soft-output values are to be calculated only for the first NF symbols of a block, the opportunity may be seized that the conventional Viterbi algorithm, instead of being realized by a forward recursion, may as well be realized by a backward recursion. By changing the directions of recursion relative to the preceding case (soft-output values at the end of a block), there are the following steps: 1. Execution of the forward recursion of the soft-output algorithm for the first NF symbols of a block including storage of the forward state metrics in each L th step.
2. Application of the conventional Viterbi algorithm (realization by backward recursion) including survivor or path memory to the last N-NF symbols of the block.
3. Execution of the backward recursion for the first NF symbols of the block including a calculation of the soft-output values in each L th step. The backward recursion then utilizes the accumulated metrics from the conventional Viterbi algorithm of step 2 as initial values.
4. Decision on the last N-NF symbols of the block based on the information of the first NF decoded symbols and on the survivor or path memory, just like the conventional Viterbi algorithm.
If the soft-output bits occur at the beginning and at the end of a block i.e. softoutput values are to be calculated for the first NF and the last NL symbols of a block, the following steps are to be executed: 1. Execution of the backward recursion of the soft-output algorithm for the last NL symbols of a block including storage of the backward state metrics in each Lth step.
2. Execution of the backward recursion of the soft-output algorithm for the first NF symbols of a block including the storage of the backward state metrics in each Lth step. The backward recursion then needs to have a leader routine of about 5.L steps (without a storage of the metrics), so that secure values for the backward state metrics are available when the first part is reached.
3. Execution of the forward recursion of the soft-output algorithm for the first NF symbols of the block including a calculation of the soft-output values in each Lth step.
4. Application of the conventional Viterbi algorithm including survivor or path memory to the middle part of the block formed by N-NFNL symbols. The conventional Viterbi algorithm then utilizes the accumulated metrics of the forward recursion of step 3 as initial values.
Execution of the forward recursion of the soft-output algorithm for the last NL symbols of the block including a calculation of the soft-output values in each L th step. The forward recursion then utilizes the accumulated metrics of the conventional Viterbi algorithm of step 4 as initial values.
6. Decision on the middle part of the block made of N-NF-NL symbols based on the information of the last NL decoded symbols and of the survivor or path memory, just like the conventional Viterbi algorithm.
These and other aspects of the invention will be apparent from and elucidated with reference to the embodiments described hereinafter.
In the drawings: Fig. 1 shows an illustrative embodiment for a digital radio transmission system, Fig. 2 shows a channel model for a digital radio transmission system, Fig. 3 shows an illustrative embodiment for a convolutional encoder, Fig. 4 shows a diagram with state transitions, Fig. 5 shows diagrams of bit error rate (BER) plotted against the soft-output values of the convolutional decoder for a) the exact algorithm and b) the sub-optimum algorithm, Figs. 6 and 7 show each a diagram for demonstrating the degradation of the softoutput values in the case of partial decoding, Fig. 8 shows a further diagram with state transitions, Figs. 9a) to c) give representations for demonstrating the algorithms, and Figs. 10a), b) give a comparison of the effort and simplifications, respectively.
Fig. 1 shows a basic circuit diagram of a radio transmission system operating, for example, according to the GSM standard, in which a digital transmit signal x is transmitted in the form of a coded digital signal u by a transmitter, for example, of a radio base station.
Between the transmitter 1 and a receiver 2 there is a radio transmission channel 7. The receiver has, for example, a receiving section (not further shown in the Figure) with a sample-and-hold element and an A/D converter. Furthermore, at the receiving end there are, for example, a mobile station, an equalizer 3, a decoding device 5 (channel decoder), a voice or data decoder 5 as well as a loudspeaker 6. In the illustrative embodiment shown in Fig. 1, the decoding device according to the invention is shown at the receiving end formed, for example, by a mobile station. The decoding device according to the invention, however, may also be arranged in the receiver of a radio base station.
For an explanation of the algorithm, a transmission system shown in Fig. 2 is considered. A binary source 10 generates binary vectors x (xl, x 2 XNL+1, XN-L+2 0, xN 0) of length N with xiE where the last L-l bits have zeros (tail bits), so that the encoder 11 and decoder 13 return to zero after each block. The convolutional encoder 11 generates from each input symbol x n an output symbol u n (Unl, nM) of length M, with unm E so that the vector u (u 1 l, uM nm, N, UNM) is produced.
The discrete-time channel model is to include not only the transmission medium but also the transmitting-end and receiving-end components such as modulator, demodulator and
A
equalizer, as appropriate. There is assumed that it produces for each symbol unm an estimate A A A gnm g(unm) P(unm) for the probability with which the symbol unm was transmitted. The A A convolutional decoder is to produce for each decoded symbol x n an estimate qn q(xn) for A A. A the probability P(x n u) with which the symbol x n was transmitted. Assuming a memoryless disturbing process, the symbol-by-symbol MAP algorithm optimally satisfies this condition; that is to say, the bit error probability in the decoded output sequence is minimized and 1-qn
A
represents the estimate of the bit error probability for the decoded symbol x n
A
The algorithm is based on the maximization of the a posteriori probability for x,, A A provided that the sequence u was received; that is to say, x n is to be selected for all n, so that the following holds according to equation 12: P(ijfi) max P(x,Ii) To avoid scaling problems, generally the probability ratio qn according to equation 13 is used as a soft-output value: S= P(=II 01) With binary symbols x n which are equally likely, equation 13 may be transformed into equation 14: SP(alx) 0|1) E P(ax) V xlx,= 0 This is to be interpreted as follows: For each position n, all possible vectors x having the
A
symbol x n 1 on the nth position are run through and the probabilities P(u I x) are formed for these vectors and summed. The same is repeated for x n 0 and the ratio is formed from the two sum probabilities.
Equation 14 can be realized efficiently for all positions n while taking into account the permissible state transitions of the convolutional code by a forward and backward recursion The forward and backward state metrics AF(Sn) and AB(Sn) are used as subsidiary quantities which can be calculated recursively in accordance with equation 15 (cf.
Fig. 4): AF(S,) AF(S"n-1)- (S"n-'Sn) AB(Sn-1) 1 .(Sn- 1 S"n) Herein, Sn, Sn-i are states of the convolutional decoder in step n and n-1, respectively.
S'n-1, S"n-I are states of the convolutional decoder which precede the state S n in the forward recursion for Xn-L+1 O(S'n-1) and Xn-L+1 respectively.
S'n, S"n are states of the convolutional decoder which precede the state Sn- 1 during the backward recursion for x n 0(S'n) and x n 1(S"n), respectively.
X(Sn.-,Sn) transition probability (branch metric) for the state transition from Sn.1 to S n The branch metrics X(Sn.1,Sn) are the result from the probabilities that have been estimated by, for example, the equalizer (here forming part of the channel) for the symbols nl unM which, according to the coding standard, belong to the state transition (Sn.I,Sn) (equation 16): M M X(Sn- 1 S) I= P(an) 1 gn m 1 m- 1 Via the forward and backward state metrics, the soft-output values qn appear from equation 17: E -AB(S n ll) s, lx,= n P( n= 01) E AF(Sn)-A(Sn) SI x= 0 The states S n may be represented in binary notation by the binary symbols xn: Sn-1 n-2,xn- 1 Sn=(xn-L+2* txn- 1 ,xn) respectively The summation of all the states S n I xn 1 means that only those states are to be summed that contain the symbol x n 1. This accordingly holds for S n I xn 0. The individual steps for calculating the soft-output values qn according to equation 17 thus look as follows: 1. Calculation of the branch metrics X(Sn- 1
S
n from the channel(equalizer)-estimated
A
probabilities gnm of the received symbols unin in accordance with equation 16.
2. Recursive calculation and storage of the backward state metrics AB(Sn) in accordance with equation 3. Recursive calculation of the forward state metrics AF(Sn) in accordance with equation 4.
4. Calculation of the soft-output values q. in accordance with equation 17.
Discarding the numerical problems which occur when probabilities are multiplied, the backward state metrics are to be stored for this algorithm and saved until the calculation of the soft-output values; that is to say, N.2L1 memory locations are to be reserved for this purpose if N is the block length and L the influence length of the convolutional code. Then there is to be shown that the backward state metrics AB(Sk) are to be stored only in each L t step; i.e. the memory requirement can be reduced by the factor L. If the summation in equation 17 is considered of S n I Xn 1 and Sn I xn 0 in the next step n+1, that is, if one tries to replace the magnitudes AF(Sn) and AB(Sn) in the expressions by AF(Sn+1) and AB(Sn+I), it may be shown by an industrious piece of work that the coherence shown in the following equation 18 holds: E E S.Ix,- 1 S.IIxl= 1 S E E AF(Sf.l)A,(Sn+I) S.lx,= 0 S..ilx= 0 that is to say, by appropriate summation in step n+1, not only the soft-output value for the current symbol xn+1, but also for the preceding symbol x n can be calculated. This result may be generalized for the L-2 previous symbols (equation 19): P(1 liE AF(S,)A (Sn) P (x n_ 11« E slx qf-v Oli) E AF(Sn) AB(S) for v= 0, L-2 S,Ij_, 0 The soft-output value of the symbol xn-L+1 which no longer occurs in the state S n but in the state Sn-1, can be calculated during the forward recursion in step n as follows (equation AF(Sn-_) (Sn_I, Sn) 'A(Sn) n-L+1 1n- +1=Ol) C (Sn-PS S,)-A(Sn) SRIl-,It= 0 Thus, it is possible via equations 19 and 20 to calculate L soft-output values without additional computation effort when the forward recursion is calculated in step n. Equation (9) makes an indirect calculation AB(Sn-1) from AB(Sn), it is true, but the intermediate quantities AF(Sn-1).(Sn-1, Sn) must be formed for the forward recursion anyway, so that the computation effort is as great as in equation 19.
Incidentally, a further interesting coherence which can be derived from equation 18 should be pointed out. There is not only equality between the two terms, but also between the numerators and denominators of the two terms, so that the addition of a numerator and denominator equation leads to the following result: E AF(S)-AB(S.) AF(S1)-AB(S 1) C s, The sum of the products of the forward and backward state metrics is equally large in each step n. Therefore, it is sufficient for the calculation of the soft-output values in equations 19 and 20 to calculate e.g. only the numerator. The denominator is then the difference between C and the numerator.
A disadvantage of this algorithm is that probabilities are to be multiplied, which generally rapidly leads to numerical problems. This disadvantage is usually encountered by using log-likelihood ratios according to equation 22: g, log 1) 0) Multiplications are then changed into additions. The problem of adding together probabilities can substantially be solved by a maximization of the logarithms; that is to say, log(P 1
+P
2 max(logP 1 ,logP2). The largest error occurs for P 1 =logP 2 and its value is log2.
If the two operations of addition and multiplication are compared with maximization and addition, the same calculation standards are determined (isomorphism). Especially the associative and distributive law also holds for maximization and addition.
If, therefore, log-likelihood ratios instead of probabilities are used, equations 15 to 21 will further hold if the additions are replaced by maximization and the multiplications by additions. The most important equations are summarized here once again.
Herein, c is the proportionality constant. Also equation (10) accordingly holds; that is to say, the maximum of the sum of forward and backward state metrics is equally large in each step n.
M c( 0 1
X(S
3 with c 1) 1 AF(S.) max (AF(y., 1 1 AF(S" 1 A,(s.
1 max A(S" s)) =a -log 1 1 4) max for ,L-2 =01) 1 max a P log max log max S._llx._L, -O max max C s. S,.1 This result is understandable when one realizes that the maximum value of equation (13) represents the sum of all the branch metrics of the maximum probability path in the trellis diagram, where AF(Sn) contains the first n and AB(Sn) contains the last N-n branch metrics.
The effort of the described soft-output algorithm is about twice as high as with the conventional Viterbi algorithm, because the trellis diagram is to be worked through in forward and backward directions. The path memory and the consequent operations, however, are omitted completely. Instead, several operations for calculating the soft-output values are added.
The maximization when maximum likelihood ratios are used is an approximation compared with the original algorithm. This approximation has no tangible effect on the bit error probability of the hard-decision bits, because the differences between a maximum likelihood symbol estimate and a maximum likelihood sequence estimate are not significant.
Conversely, larger differences are to be expected for the soft-output values. To answer this question, a simulation is made in which a memoryless bit error source produces not only a bit error sequence but also ideal soft-output values
A
g'nm log(pnm/(l-pnm)), where pnm represents the bit error probability for the bit unm. The soft-output values qn of the convolutional decoder are then to reflect the bit error probabilities for the decoded bits. Fig. 5 shows the curve of the simulated bit error probabilities in response to the soft-output values (here log-likelihood ratios) of the convolutional decoder together with the theoretical curve. Whereas the bit error probability in the exact decoding algorithm corresponds to the theoretical curve but for minor statistical deviations, systematic deviations from the theoretical curve occur in the sub-optimum algorithm especially with small signal-to-noise ratios (S/N 3 dB). However, starting from a signal-to-noise ratio of about 4 dB, a good correspondence with the nominal curve can be established even with the sub-optimum algorithm. These differences of quality in the softoutput values, however, do not permit any direct conclusion with respect to losses to be expected in concrete applications.
When the log-likelihood values are used, the symbol-by-symbol MAP algorithm changes into a maximum likelihood sequence estimate; i.e. the hard-decision bits from the soft-output values are identical with those of the suitable Viterbi algorithm with maximum path memory. Since the calculation of the forward state metrics is identical for the two algorithms, there is an attractive possibility of combining the two algorithms if soft-output values are desired only for selected bits. For example, the bits of a voice transmission with RELP or CELP encoding have different significances, which leads to the consideration of calculating soft-output values only for the most significant bits. At any rate, it is then possible to omit storing the backward state metrics for the part of the hard-decision bits.
The combination of the algorithms turns out to be the simplest when the most significant bits are placed at the end of a block as is provided, for example, in the currently used GSM half-rate voice channel. Soft-output values are calculated there for the last encoded 25 bits of a speech block comprising 98 coded bits in all. In this case it is possible for the first 73 bits to use the conventional Viterbi algorithm (with hard decision) and use the soft-output algorithm only for the last 25 bits. With an influence length of L 7, there are then 64. [25/7] 256 memory locations for the backward metrics. In that case the computation effort is increased by only about 30% compared with the suitable Viterbi algorithm.
If the most significant bits occur both at the beginning and at the end of a block, as occurs in the coding scheme of the GSM full-rate voice channel, the backward recursion may be limited to the front and back part of the block. For the front part of the block the backward recursion, however, is to start slightly earlier (be advanced) to obtain reliable softoutput values when the front part is reached. It should be pointed out that the decoded output sequence (hard-decision bits) and also the state sequence in the decoder are already known from the forward recursion. Therefore, at the start of the backward recursion, the start metric of the state that is to be passed through advantageously obtains the zero value, whereas all the other state metrics obtain a large negative value. This ensures that the output sequence decoded from the soft-output values corresponds to the decoded output sequence from the forward recursion; i.e. the bit error probability of the hard-decision bits remains unchanged due to the incomplete soft-output decoding.
Figs. 6 and 7 illustrate the degradation of the soft-output values with incomplete soft-output decoding as a function of the advance if the backward recursion, for example for the front part, starts in the middle of the block. In Fig. 6 Aq represents the deviation of the soft-output values between incomplete and complete soft-output decoding. It shows the probability that the deviation Aq lies within a range of 6 in dependence on the advance of the backward recursion. The average soft-output value is here 12.44. The lower curve (6 0.1) quasi represents the case where the soft-output values correspond to each other.
Fig. 7 is based on a system with an external repetition code and an internal convolutional code with soft-output decoding, in which a multiplex scheme provides that the output bits of the repetition decoder always occupy the bit position in the code word of the internal convolutional decoder in which a soft-output decoding starts. For this arrangement Fig. 7 shows the position-dependent BER according to the repetition decoder (soft-output majority decision) in dependence on the advance for the backward recursion.
The exact symbol-by-symbol MAP algorithm is basically unsuitable for fixed point DSP's due to numerical problems. Conversely, the sub-optimum variant represents an efficient soft-output algorithm which is primarily suitable for signal sequences with a block structure. The version with reduced memory locations allows of an implementation of the algorithm in currently available standard DSPs, for moderate block lengths of up to several hundred bits. Furthermore, the combined use with the conventional Viterbi algorithm is possible if soft-output values are necessary only for a part of the block, to save on further memory requirements and computational efforts.
18 THE CLAIMS DEFINING THE INVENTION ARE AS FOLLOWS:- 1. A digital transmission system comprising: a transmitting device including a coding device for coding a digital transmit signal; at least a transmit channel for transmitting the coded digital signal; and a decoding device for forming a decoded digital signal via an estimate assigned to respective symbols of the decoded digital signal for a probability with which the respective symbol was sent, wherein forward state metrics and backward state metrics to be stored are used for calculating the estimates, and the backward state metrics are stored only in each Ld h step, where L is the influence length of the convolutional code used in the decoding device.
2. The transmission system as claimed in claim 1, characterized in that a 15 combination of a symbol-by-symbol Maximum A posteriori Probability (MAP) algorithm and Viterbi algorithm is made such that soft-output values are calculated only for the most significant bits of the decoded signal.
3. The transmission system as claimed in either of claims 1 or 2, characterized in that at the start of a backward recursion a start metric of a 20 state that is to be passed through obtains a zero value, whereas all the other state metrics obtain a large negative value.
The transmission system as claimed in any one of claims 1 to 3, characterized in that the most significant bits of the transmit signal occur both at a beginning and at an end of a block, and in that backward recursion 25 is limited to a front and back part of the block.
The transmission system as claimed in any one of claims 1 to 4, characterized in that as a result of a respective summation in a step n+l, a soft-output value is calculated both for a current symbol and for a preceding symbol x,.
6. The transmission system as claimed in any one of claims 1 to 4, characterized in that as a result of a respective summation in step n+ 1 a softoutput value is calculated both for a current symbol and for a preceding symbol x, while there is a generalization for L-2 previous symbols.
7. A radio station, more particularly a radio base station or mobile station comprising a decoding device for forming a decoded digital signal from a received coded digital signal via an estimate assigned to respective symbols

Claims (7)

  1. 8. The radio station as claimed in claim 7, characterized in that a combination of a symbol-by-symbol MAP algorithm and of a Viterbi algorithm is used so that soft-output values are calculated only for the most significant bits of the decoded symbol.
  2. 9. The radio station as claimed in either claim 7 or 8, characterized in that at the start of a backward recursion a start metric of the state that is to be passed through obtains a zero value, whereas all the other state metrics obtain a large negative value. 15 10. The radio station as claimed in either claim 8 or 9, characterized in that the most significant bits of a transmit signal occur both at a beginning and at an end of a block and that the backward recursion is limited to a front and a back part of the block.
  3. 11. Radio station according to any one of claims 8 to 10, characterized in 20 that as a result of a respective summation in a step n+ 1 a soft-output value is determined both for an actual symbol and for a preceding symbol x,. S12. The digital transmission system according to claim 1, wherein a combination of a first algorithm and a Viterbi algorithm is made such that soft-output values are calculated only for selected bits of the decoded digital 25 signal.
  4. 13. The digital transmission system according to claim 1, wherein at the S. start of a backward recursion a start metric of a state that is to be passed through obtains a first value, whereas all other state metrics obtain a predetermined value.
  5. 14. The radio station according to claim 7, wherein a combination of a first algorithm and a Viterbi algorithm is made such that soft-output values are calculated only for selected bits of the decoded digital signal. The radio station according to claim 7, wherein at the start of a backward recursion a start metric of a state that is to be passed through obtains a first value, whereas all other state metrics obtain a predetermined value.
  6. 16. A digital transmission system substantially as hereinbefore described and with reference to the accompanying drawings.
  7. 17. A radio station, more particularly a radio base station or mobile station substantially as hereinbefore described and with reference to the accompanying drawings. Dated this Sixth day of November 1998 PHILIPS ELECTRONICS NV Patent Attorneys for the Applicant: F B RICE CO S S. S C ABSTRACT: Soft-output decoding transmission system with reduced memory requirement. The symbol-by-symbol MAP algorithm represents an optimum variant among the decoding algorithms of convolutional codes in the sense that the bit error probability for the decoded output sequence is minimized when assuming a memoryless disturbing process. Furthermore, this algorithm is basically a soft-output algorithm whose soft-output values correspond to the bit error probabilities of the decoded bits, provided that the soft-decision input values represent the bit error probabilities of the input bits. In addition to the numerical problems when probabilities are used, there is a disadvantage that the accumulated backward metrics which are calculated during the backward recursion must be stored. This document describes a variant which reduces the memory requirement for the backward metrics by the factor L where L is the influence length of the convolutional code. There is shown that the results can be transferred to a sub-optimum algorithm which utilizes log-likelihood ratios. In that case, it is even possible to have a further saving on memory requirement and computational effort when soft-output values are only needed for selected bits. The soft- output algorithm may then be restricted to the number of soft-output bits, whereas the conventional Viterbi algorithm is used for the remaining bits.
AU36184/95A 1994-10-25 1995-10-24 Soft-output decoding transmission system with reduced memory requirement Ceased AU701259B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE4437984A DE4437984A1 (en) 1994-10-25 1994-10-25 Transmission system with soft output decoding
DE4437984 1994-10-25
PCT/IB1995/000912 WO1996013105A1 (en) 1994-10-25 1995-10-24 Transmission system with soft output decoding and reduced storage capacity requirement

Publications (2)

Publication Number Publication Date
AU3618495A AU3618495A (en) 1996-05-15
AU701259B2 true AU701259B2 (en) 1999-01-21

Family

ID=6531568

Family Applications (1)

Application Number Title Priority Date Filing Date
AU36184/95A Ceased AU701259B2 (en) 1994-10-25 1995-10-24 Soft-output decoding transmission system with reduced memory requirement

Country Status (5)

Country Link
EP (1) EP0737389B1 (en)
JP (1) JP3506713B2 (en)
AU (1) AU701259B2 (en)
DE (2) DE4437984A1 (en)
WO (1) WO1996013105A1 (en)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19717546B4 (en) * 1996-12-05 2014-05-15 Deutsche Telekom Ag Method and apparatus for decoding in a CDMA transmission system for demodulating a received signal which is in serial code chaining
US6377610B1 (en) * 1997-04-25 2002-04-23 Deutsche Telekom Ag Decoding method and decoding device for a CDMA transmission system for demodulating a received signal available in serial code concatenation
DE59810360D1 (en) * 1997-09-18 2004-01-15 Siemens Ag FAST DECODING OF PARTLY RECEIVED FOLDING-ENCODED DATA
US6530059B1 (en) 1998-06-01 2003-03-04 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communication Research Centre Tail-biting turbo-code encoder and associated decoder
EP1099313B1 (en) 1998-12-01 2004-04-07 Siemens Aktiengesellschaft Soft decision decoding of a scheduled convolutional code
US6343368B1 (en) 1998-12-18 2002-01-29 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for fast maximum a posteriori decoding
ATE242945T1 (en) * 1998-12-18 2003-06-15 Ericsson Telefon Ab L M METHOD AND SYSTEM FOR FAST MAXIMUM A POSTERIORI DECODING
DE19902100C2 (en) 1999-01-20 2003-05-22 Infineon Technologies Ag Method and device for decoding convolutional codes
US6678843B2 (en) 1999-02-18 2004-01-13 Interuniversitair Microelektronics Centrum (Imec) Method and apparatus for interleaving, deinterleaving and combined interleaving-deinterleaving
EP1030457B1 (en) * 1999-02-18 2012-08-08 Imec Methods and system architectures for turbo decoding
EP1156588B1 (en) * 1999-03-01 2007-05-09 Fujitsu Limited Method and apparatus for maximum a posteriori probability decoding
DE10001856A1 (en) 2000-01-18 2001-08-09 Infineon Technologies Ag Method for decoding a data signal
US6580769B1 (en) * 2000-02-14 2003-06-17 Motorola, Inc. Method and apparatus for backward recursion next state generation in recursive convolutional decoding
GB2360858B (en) * 2000-03-20 2004-08-18 Motorola Inc High-speed maximum a posteriori (MAP) architecture with optimized memory size and power consumption
JP2001352256A (en) * 2000-06-08 2001-12-21 Sony Corp Decoder and decoding method
DE10213882B4 (en) * 2002-03-27 2006-11-23 Siemens Ag Method for decoding a data sequence encrypted using a binary convolutional code
CN1643798A (en) 2002-03-27 2005-07-20 西门子公司 Method for decoding data sequence that has been encoded with the help of a binary convolution code
DE10240444A1 (en) * 2002-09-02 2004-03-11 Siemens Ag Bit-by-bit calculation of the probability of correctly transmitting bits of a symbol over a transmission channel
CN104617960A (en) * 2014-12-30 2015-05-13 成都天奥信息科技有限公司 Viterbi decoding method applied to maritime satellite telephone

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0391354A2 (en) * 1989-04-03 1990-10-10 Deutsches Zentrum für Luft- und Raumfahrt e.V. Method of generalizing the Viterbi-algorithm and apparatus to carry out the method
DE4224214A1 (en) * 1992-07-22 1994-01-27 Deutsche Forsch Luft Raumfahrt Source controlled channel encoding method - expanding Viterbi algorithm to increase or decrease some states to give priority to certain information bits with apriori or aposteriori information.

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0391354A2 (en) * 1989-04-03 1990-10-10 Deutsches Zentrum für Luft- und Raumfahrt e.V. Method of generalizing the Viterbi-algorithm and apparatus to carry out the method
DE4224214A1 (en) * 1992-07-22 1994-01-27 Deutsche Forsch Luft Raumfahrt Source controlled channel encoding method - expanding Viterbi algorithm to increase or decrease some states to give priority to certain information bits with apriori or aposteriori information.

Also Published As

Publication number Publication date
EP0737389B1 (en) 2003-08-13
AU3618495A (en) 1996-05-15
JP3506713B2 (en) 2004-03-15
DE59510764D1 (en) 2003-09-18
DE4437984A1 (en) 1996-08-14
JPH09507634A (en) 1997-07-29
WO1996013105A1 (en) 1996-05-02
EP0737389A1 (en) 1996-10-16

Similar Documents

Publication Publication Date Title
AU701259B2 (en) Soft-output decoding transmission system with reduced memory requirement
US6028899A (en) Soft-output decoding transmission system with reduced memory requirement
Anderson et al. Tailbiting MAP decoders
Bauer et al. Symbol-by-symbol MAP decoding of variable length codes
US5933462A (en) Soft decision output decoder for decoding convolutionally encoded codewords
US6192501B1 (en) High data rate maximum a posteriori decoder for segmented trellis code words
EP1383246B1 (en) Modified Max-LOG-MAP Decoder for Turbo Decoding
US6999531B2 (en) Soft-decision decoding of convolutionally encoded codeword
JPH0824270B2 (en) Convolutional encoder and maximum likelihood decoder
US6128765A (en) Maximum A posterior estimator with fast sigma calculator
US20130007568A1 (en) Error correcting code decoding device, error correcting code decoding method and error correcting code decoding program
JP3741616B2 (en) Soft decision output decoder for convolutional codes
KR100390416B1 (en) Method for decoding Turbo
US6868518B2 (en) Look-up table addressing scheme
WO2002029977A2 (en) A decoder for trellis-based channel encoding
US7913153B2 (en) Arithmetic circuit
Lou Viterbi decoder design for the IS-95 CDMA forward link
US6886127B2 (en) Implementation of a turbo decoder
JP2004349901A (en) Turbo decoder and dynamic decoding method used therefor
US7031406B1 (en) Information processing using a soft output Viterbi algorithm
US6580769B1 (en) Method and apparatus for backward recursion next state generation in recursive convolutional decoding
US7489744B2 (en) Turbo decoding method and apparatus for wireless communications
Luna et al. Iterative maximum-likelihood trellis decoding for block codes
Ahmed et al. Viterbi algorithm performance analysis for different constraint length
KR100436434B1 (en) Turbo decoder that have a state metric, and Calculation method by Using it

Legal Events

Date Code Title Description
HB Alteration of name in register

Owner name: ON="KONINKLIJKE" PHILIPS ELECTRONICS N.V.; FT="FORMER"