Sequential stack decoding of binary Reed-Muller codes - CiteSeerX

0 downloads 0 Views 182KB Size Report
stack algorithm to decode binary Reed-Muller codes which is based on the GC structure of these codes. A key problem of sequential decoding is the estimation ...
3rd ITG Conference on Source and Channel Coding, January 2000, Munich, Germany

63

Sequential stack decoding of binary Reed-Muller codes Norbert Stolte, Ulrich Sorger, Gunther Sessler Institute of Network and Signal Theory Darmstadt University of Technology (TUD) e-mail: [email protected]

Abstract |

In this paper we propose a sequential stack algorithm to decode binary Reed-Muller codes which is based on the GC structure of these codes. A key problem of sequential decoding is the estimation of errors in the unexplored part of the code tree which in case of convolutional codes is traditionally done using the Fano-metric. We show that with proper defined soft values it is possible to calculate for each element in the stack a lower bound on the squared Euclidean distance between the received sequence and all codewords containing the element. This value can be used as a metric to evaluate the elements in the stack. It is further shown how this metric can be improved by lower bounding the metric increase in future decoding steps. The influence of this improvement on the necessary stack size is demonstrated by simulation results which underline the performance of sequential decoding of binary ReedMuller codes. I. I NTRODUCTION Since many years it is known that generalized code concatenation [1] is an effective way to construct long and powerful codes with good error correcting properties. But decoding of generalized concatenated (GC) codes remains a difficult problem if it is desired to decode significantly more than half the minimum distance of the code. Recently developed ”Turbo” decoding algorithms in which the estimates of different decoders are exchanged and iterated show that if the correction regions are extended over half of the minimum distance the error probability at the decoder output benefits in a large degree. Nevertheless, for many GC codes also of moderate length no algorithms with acceptable complexity are known to achieve soft-decision maximum likelihood (SDML) decoding or close to SDML decoding performance. It is known that if the code trellis is too large for Viterbidecoding, the sequential decoding algorithm may be used to reduce the average decoding time and the storage requirements while preserving close to maximum likelihood decoding performance. Sequential stack decoding, proposed by Zigangirov [2] and Jelinek [3], might be one candidate to achieve this goal. Also Cabral, Costello and Chevillat mentioned in [4] that especially in case of codes with moderate length sequential decoding might be a possible alternative to ”Turbo” decoding In [7] it was shown that binary Reed-Muller (RM) codes of length 2m can be obtained from RM codes of length

2m?1 and the (u; u  v) construction. Schnabel and Bossert [5] showed that this construction can be viewed as generalized multiple concatenation (GMC) of binary block codes of length 2. They also introduced a soft-decision decoding algorithm which is applicable also for long RM codes and which fulfills the soft-decision bounded-distance decoding bound. In [6] this algorithm was improved and extended to list-decoding and so quasi SDML decoding performance was achieved for RM codes of length  64. We propose a joint sequential stack algorithm to decode binary RM codes which is based on the GMC structure of the code and which combines the stacks of each of the outer decoders to form one large stack. The paper is organized as follows: In section 2 a short review of RM codes is given and we show another derivation of the soft input values already defined in [5]. In the following section the stack algorithm is explained and it is shown how the soft values can be used to calculate a lower bound on the Euclidean distance between the received sequence and all codewords containing a certain stack element. This value can be used as metric to evaluate the elements in the stack. Some simulation results for the codes RM(3; 7) and RM(3; 8) are shown in section 4 to underline the performance which is achievable with stack decoding. The last section provides some concluding remarks. II. C ONSTRUCTION

OF

RM CODES AND

SOFT VALUES

In the following we assume BPSK transmission over an additive white Gaussian noise (AWGN) channel. The transmitted codeword denoted by t = (c1 ; c2 ; : : : ; cn ) 2 RM(r; m), ci 2 f+1; ?1g, n = 2m is corrupted by = noise and at the receiver the real valued sequence (y1 ; y2 ; : : : ; yn) is observed. In [5] the GMC structure of RM codes was described. It was shown that if according to [1] the binary code B (0) = f = (b1 ; b2) j bi 2 f+1; ?1gg of length 2 is partitioned (1) (1) into two sets B+1 and B?1 with

c

y

b

(1) B+1 = f(+1; +1); (?1; ?1)g (1) B?1 = f(+1; ?1); (?1; +1)g

and if C (1) = RM(r ? 1; m ? 1) and C (2) are applied to the enumeration, i.e.

= RM(r; m ? 1)

bi = (ci ; ci  ci ) ; i = 1; 2; : : : ; 2m? (2)

(2)

(1)

1

3rd ITG Conference on Source and Channel Coding, January 2000, Munich, Germany

b b

b

then the obtained GC code ( 1 ; 2 ; : : : ; n=2 ) is the code RM(r; m). In this construction the code C (1) labels the set B(1) ,  2 f+1; ?1g whereas the codeword (;) 2 B(1) ,  2 f+1; ?1g is labeled by C (2) . This corresponds to the well known (u; u  v ) construction already given in [7] for RM codes. Since C (1) and C (2) are RM codes, they again can be viewed as GC codes and the same partitioning can be applied. This construction can be repeated several times until the outer code is the repetition code RM(0; m0 ) or the code with distance 1, RM(m0 ; m0 ) either. The maximum likelihood (ML) receiver decides for the codeword ML which minimizes the squared Euclidean distance X

b

^c

dE 2 (c) =

i

(yi ? ci )2

y and c, i.e. ^cML = arg c2 minr;m dE (c):

between the received sequence

2

RM(

)

A lower bound on the minimal squared Euclidean distance dE 2 min = dE 2 ( ML ) prior to decoding can be calculated since the transmitted symbols ci are two-valued, hence

^c

dE 2 min 

X

i

(yi ? sign(yi ))2 = dE 2 bias :

(1)

c

y

dE 2 (c) = dE 2 bias +

X

^c

fi j ci 6=sign(yi )g

4  jyi j:

(2)

Soft-decision bounded-distance decoding can be done by decoding only the outer codes C (1) and C (2) . From the (u; u  v)-construction results a rule to get estimates c~(1) i (1) of the code symbols ci ,

c~(1) i = sign(y2i?1  y2i ) (1) (1) which is the same as setting c~i to  of the set B to which (0) ~ the most likely vector bi 2 B belongs, i.e. 8