Channel decoder and method of channel decoding

Abstract: There is disclosed a channel decoder for data encoded by serially concatenated outer and inner codes in which the outer code is a rate 1:2 repetition code operative to encode a data bit b n as two identical coded bits bcoded,n0,bcoded,n1 and in which the coded bits are interleaved. The decoder comprises a soft input soft output (SISO) inner decoder for which the input and output information are log likelihood ratios, input information being the log likelihood ratios of the encoded data and outer extrinsic information. Means are provided for subtracting feedback outer extrinsic information from the inner decoder output information to produce inner extrinsic information. Means are also provided for swapping the log likelihood ratios L n0 ,L n1 , in the inner extrinsic information, corresponding to one information bit b n to produce the feed back extrinsic information. The coder is operative iteratively with outer extrinsic information produced by previous iterations. The pairs, corresponding to one data bit b n , of log likelihood ratios L n0 ,L n1 of the inner extrinsic information are summed, and a hard decision is based on the summed log likelihood ratios. The arrangement is especially simple compared with other decoders proposed in the prior art, especially when it is realised that the means for swapping can perform the swap without separate steps of deinterleaving and interleaving.

Description: This invention relates to channel decoders and to methods of channel decoding. Channel coding is used to make the transmitted digital information signal more robust against noise. For this the information bit sequence is encoded at the transmitter by a channel encoder and decoded at the receiver by a channel decoder. In the encoder redundant information is added to the information bit sequence in order to facilitate the decoder to perform error correction. For example, in a systematic channel encoding scheme the redundant information is added to the information bit sequence just as additional inserted, 'coded' bits. Hence, the encoded signal consists of both information and coded bits. In a non-systematic encoding scheme the outgoing bits are all coded bits, and there are no 'naked' information bits anymore. The number of incoming bits (information bits) to the encoder is smaller than the number of outgoing bits (information bits plus inserted coded bits, or all coded bits). The ratio of incoming/outgoing bits is called the 'code rate R' (typ.R=1:2). For example, prominent channel codes are block codes and convolutional codes; the latter ones can be recursive or non-recursive. Concatenated coding schemes apply (at least) two parallel or serially concatenated encoders. By this, the same information sequence gets encoded twice, either in a parallel or in a serial fashion. There are iterative decoding algorithms for either parallel or serially concatenated coding systems (Benedetto, S., Divsalar, D., Montorsi, G., and Pollara, F. 'Serial concatentation of interleaved codes: performance analysis, design and iterative decoding', IEEE Trans.Inf.Theory, 1998, 44,(3), pp.909-926). Divsalar ,Jin and McEliece introduced a special class of serial concatenated codes with an outer repetition code of rate 1/q with q ≥ 3, and an inner rate-1 recursive convolutional code, the so-called repeat-and-accumulate (RA) codes which are decoded with an iterative message passing algorithm (Divsalar, D., Jin, H. and McEliece J. 'Coding theorems for "turbo-like" codes', Proc., 36th Annual Allerton Conf. on Comm., Control and Computing, Monticello, II, USA, 23-25 Sept. 1998, pages 201-210). 'Figure 1 shows a genuine serially concatenated coding scheme. The transmission is done on a block-by-block basis. The signal sequence is encoded twice at the transmitter in a serial manner. The binary signal from the digital source (e.g. an analog to digital converter with analog input signal from a microphone) is first encoded by an outer encoder (code rate Ro). The output of the outer encoder is passed through a bit interleaver which changes the order of the incoming bit symbols to make the signal appear more random to the following processing stages. After the interleaver the signal is encoded a second time by an 'inner encoder' (code rate R1). The overall code rate of the transmitted signal is Ro . R1. Correspondingly, at the receiver the signal is first decoded by the inner decoder, deinterleaved, and decoded by the outer decoder. From the outer decoder soft values are fed back as additional 'a priori' input to the inner decoder. The soft values are reliability values of the quality of the decoded signal. The feedback of these values helps to reduce the bit error rate of the hard decision values 0,1 at the output of the outer decoder in further, iterative decoding steps. The iterative decoding of a particular transmitted sequence is stopped with an arbitrary termination criterion, e.g. after a fixed number of iterations, or until a certain bit error rate is reached. It should be noted that the 'a priori' soft value input to the inner decoder is set to zero for the very first decoding of the transmitted bit sequence ('0 th iteration'). Furthermore, the hard decisions on the information bits need to be calculated only once for each sequence, namely in the final pass (last iteration) through the outer decoder. In general the inner and outer binary codes can be of any type: Systematic, or non-systematic, block or convolutional codes, recursive, or non-recursive. At the receiver the two decoders are soft-in/soft-out decoders (SISO-decoder). A soft value represents the reliability on the bit decision of the respective bit symbol (whether 0 or 1 was sent). A soft-in decoder accepts soft reliability values for the incoming bit symbols. A soft-out decoder provides soft reliability output values on the outgoing bit symbols. The soft-out reliability values are usually more accurate than the soft-in reliability values since they can be improved during the decoding process based on the redundant information that is added with each encoding step at the transmitter. The best performance as a SISO-decoder provides the A Posteriori Probability calculator (APP) (L. Bahl, J. Cocke, F.Jelinek, J. Raviv, "Optimal decoding of linear codes for minimizing symbol error rate", IEEE Trans.lT., vol, 20, pp. 284-287, March 1974), tailored to the respective channel code. Several faster, but sub-optimal algorithms exist, e.g. the SOVA (soft output Viterbi algorithm) (J. Hagenauer, P. Hoeher, "A Viterbi algorithm with soft-decision outputs and its applications", in Proc. IEEE Globecom 1989, Dallas, Texas, pp. 47.1.1-457.1.7, Nov.1989) In the iterative decoding path 'outer extrinsic information' is passed through the bit interleaver and fed back as a priori knowledge to the inner decoder. The 'outer extrinsic' information is the difference of the soft input/soft output values at the outer decoder and depicts the new, statistically independent information (at least for the first iteration) gained by the outer decoding process. Correspondingly, the inner decoder provides 'inner extrinsic' information and channel information (Fig. 1). Against this background the invention recognises that there are special advantages to be had from a particular coding arrangement. In accordance with the invention, there is provided a channel decoder for data encoded by serially concatenated outer and inner codes in which the outer code is a rate 1:2 repetition code operative to encode a data bit b n as two identical coded bits b coded,n0 , b coded,n1 and in which the coded bits are interleaved, the decoder comprising a soft input soft output (SISO) inner decoder for which the input and output information are log likelihood ratios, input information being the log likelihood ratios of the encoded data and outer extrinsic informatidn; means for subtracting feedback outer extrinsic information from the inner decoder output information to produce inner extrinsic information; means for swapping the log likelihood ratios L n0 ,L n1 , in the inner extrinsic information, corresponding to one information bit b n to produce the feed back extrinsic information, said decoder being operative iteratively with outer extrinsic information produced by previous iterations; means for summing the pairs, corresponding to one data bit b n , of log likelihood ratios L n0 ,L n1 of the inner extrinsic information; and means for making a hard decision based on the summed log likelihood ratios. The arrangement is especially simple compared with other decoders proposed in the prior art, especially when it is realised that the means for swapping can perform the swap without separate steps of deinterleaving and interleaving. It is normally arranged for the first iteration to set the feedback outer extrinsic information at zero. The invention also extends to a method for decoding channel information containing data encoded by serially concatenated outer and inner codes in which the outer code is a rate 1:2 repetition code operative to encode a data bit b n as two identical coded bits b coded,n0 ,b coded,n1 and in which the coded bits are interleaved, comprising decoding channel information being the log likelihood ratios of received encoded data using outer extrinsic information to produce inner decoded log likelihood ratio information; subtracting feedback outer extrinsic information from the inner decoded log likelihood ratio information to produce inner extrinsic information; swapping the log likelihood ratios L n0 ,L n1 , in the inner extrinsic information, corresponding to one information bit b n to produce the feed back extrinsic information, performing said decoding iteratively with outer extrinsic information produced by previous iterations; summing the pairs, corresponding to one data bit b n , of log likelihood ratios L n0, L n1 of the inner extrinsic information; and making a hard decision based on the summed log likelihood ratios. An embodiment of the invention will now be described, by way of example, with reference to the accompanying drawings, in which: Figure 1 is a block diagram of a prior art serially concatenated coder and decoder with iterative decoding; Figure 2 is a block diagram of a serially concatenated coder and a decoder embodying the invention; Figure 3 is a block diagram showing a simplified arrangement of the decoder of Figure 2; and Figure 4 is a block diagram showing a further simplification of the decoder of Figure 3. Referring to Figure 2 of the drawings, a source of binary data 2 supplies data to an outer rate 1:2 repetition encoder 4. For each data bit input b n to the encoder 4 there are two identical output coded bits b coded,n0 ,b coded,n1 . The coded bits in a block of data are interleaved by an interleaver 6 according to a predetermined pattern so that the block appears more random to the following stages. The interleaved bits are then coded by another encoder 8. The coded information output from the inner encoder 8, is transmitted through a medium where it is degraded by additive noise. The degraded coded information received through the medium is input to a soft in soft out (SISO) inner decoder 10 with outer extrinsic information, both in the form of log likelihood ratios. Initially the extrinsic information is set to zero representing an equal likelihood of the bit being zero or one. The feed back outer extrinsic information (in the form of log likelihood ratios) is subtracted by an adder 12 from the inner decoder output information (also in the form of log likelihood ratios) to provide inner extrinsic values to an input of a deinterleaver 14. The output of the deinterleaver represents inner intrinsic information from the inner decoder and channel information. This is input to a rate 1:2 repetition decoder 16. An output of the outer decoder 16 provides soft values on coded bits in the form of log likelihood ratios. The inner extrinsic information is subtracted from these by a summer 18 to provide outer extrinsic values. These are interleaved by an interleaver 20 to provide the outer extrinsic information. The decoders operate iteratively, so that for the second iteration, the outer extrinsic information from the first iteration is used, and so on. After some predetermined criterion is met the iterations are terminated and soft values on information bits (in the form of log likelihood ratios) are output to a discriminator to make a hard decision on each bit. The criterion could be a predetermined number of iterations, e.g. 4, or when the change in values between an iteration and the next is less than a threshold. In L-value notation the L 0coded = L 1coded = L coded = L 0 + L 1 L value notation is explained in (J. Hagenauer, "The Turbo Principle: Tutorial Introduction and State of the Art", Symposium on Turbo Codes, Brest, France, September 1997). L 0 and L 1 are the two input L-values to the decoder (since the code rate is 1:2, there are two values for each "repetition code"- codeword). For the rate 1:2 repetition code it turns out that L info = L coded . To recover the desired bit information one needs to take the hard decision (sign) on the L info - values at the output of the decoder. Most importantly, the extrinsic output values (which are fed back to the inner decoder during the iterative decoding process) are calculated as L 0.extr = L 0.coded - L 0 = L 1 L 1,extr = L 0.coded - L 1 = L 0 Hence, the extrinsic decoder output values can be obtained by just exchanging ("swapping") the two input values L 0 and L 1 per "repetition code" - codeword. Figure 3 shows how this may be used to simplify the outer decoder. Here the outer repetition decoder 16 and summer 18 are replaced by an adder 24 and buffer 26. The buffer 26 stores two consecutive values from the inner extrinsic information, with values L n0 ,L n1 corresponding to one data bit b n . These are added in the adder 24 to provide the soft values on information bits input to the discriminator 22. The values are also input to a buffer 28 from which they are read in reverse order (swapped) to provide the stream of outer extrinsic values input to the deinterleaver 20. A further simplification is shown in Figure 4. Here the buffer 28, deinterleaver 14, swapper 28 and interlever 20 of Figure 3 are combined in a single unit (interlever 30) which directly swaps those values L n0 ,L n1 corresponding to one data bit b n , from the inner extrinsic values output from the adder 12, without first deinterleaving them. It is particularly attractive to use an inner rate 1:2 recursive systematic code, punctured to obtain a rate 1 inner code (half of the inner encoded bits are removed). Together with the outer rate 1:2 repetition code this results in an overall code rate of 1:2. Note that no redundancy is added in the inner encoder. The number of incoming bits is the same as the number of outgoing bits at the inner encoder. The puncturing pattern to remove half of the encoded bits at the output of the inner encoder is arbitrary, but must be known to the receiver. However, there are two constraints: 1. At time instant k one can either remove the information but l k or the associated parity bit p k , but not both. 2. There must always be some parity bits remaining in the encoded sequence, otherwise iterative decoding is not possible. Examples of puncturing patterns to obtain a rate 1 code from a rate 1:2 mother code: 1. Remove all information bits, such that the encoded bit sequence consists of solely parity bits. p 0 , p 1 , p 2 , p 3 ... 2. Remove half of the information bits, and half of the parity bits. l 0 , p 1 , i 2 , p 3 , ... 3. Remove 2/3 of the information bits, and 1/3 of the parity bits. l 0 , p 1 , p 2 , i 3 , p 4 , p 5 ... The different puncturing patterns 1., 2., 3. and 4. result in different bit error rate BER) behaviour of the concatenated code if decoded iteratively. The fewer information bits are involved, the later the turbo cliff (in terms of signal-to-noise-ratio), but the lower the bit error rate floor.

Claims: A channel decoder for data encoded by serially concatenated outer and inner codes in which the outer code is a rate 1:2 repetition code operative to encode a data bit b n as two identical coded bits b coded,n0 ,b coded,n1 and in which the coded bits are interleaved, the decoder comprising a soft input soft output (SISO) inner decoder (10) for which the input and output information are log likelihood ratios, input information being the log likelihood ratios of the encoded data and outer extrinsic information; means (12) for subtracting feedback outer extrinsic information from the inner decoder output information to produce inner extrinsic information; means (28) for swapping the log likelihood ratios L n0 ,L n1 , in the inner extrinsic information, corresponding to one information bit b n to produce the feedback extrinsic information, said decoder being operative iteratively with outer extrinsic information produced by previous iterations; means (24) for summing the pairs, corresponding to one data bit b n , of log likelihood ratios L n0 ,L n1 of the inner extrinsic information; and means (22) for making a hard decision based on the summed log likelihood ratios. A decoder as claimed in claim 1, arranged for the first iteration to set the feedback outer extrinsic information at zero. A decoder as claimed in claim 1 or 2, wherein the means for swapping performs the swap without separate steps of deinterleaving and interleaving. A method for decoding channel information containing data encoded by serially concatenated outer and inner codes in which the outer code is a rate 1:2 repetition code operative to encode a data bit b n as two identical coded bits b coded,n0 ,b coded,n1 and in which the coded bits are interleaved, comprising the method steps of decoding channel information being the log likelihood ratios of received encoded data using outer extrinsic information to produce inner decoded log likelihood ratio information; subtracting feedback outer extrinsic information from the inner decoded log likelihood ratio information to produce inner extrinsic information; swapping the log likelihood ratios L n0 ,L n1 , in the inner extrinsic information, corresponding to one information bit b n to produce the feedback extrinsic information, performing said decoding iteratively with outer extrinsic information produced by previous iterations; summing the pairs, corresponding to one data bit b n , of log likelihood ratios L n0 ,L n1 of the inner extrinsic information; and making a hard decision based on the summed log likelihood ratios. A method as claimed in claim 4, wherein for the first iteration the feedback outer extrinsic information is set at zero. A method as claimed in claim 4 or 5, wherein the de-interleaving, swapping and interleaving steps are performed in a single step without separate steps of deinterleaving and interleaving.

Inventors: TEN BRINK STEPHEN, TEN BRINK, STEPHEN
Applicants: LUCENT TECHNOLOGIES INC, LUCENT TECHNOLOGIES INC.
Application year: 1999
Main classification: H03M13
IPC codes: H03M13, H04L1