International Symposium on Information Theory and its Applications, ISITA2004 Parma, Italy, October 10–13, 2004 On the Calculation Method of Input-Output Weight Distribution of Terminated Convolutional Codes Hideki YOSHIKAWA Suzuka National College of Technology Suzuka-shi, Mie, 510-0294 Japan E-mail: hyoshi@info.suzuka-ct.ac.jp Abstract In this paper, first, the calculation method of inputoutput weight distribution of terminated convolutional codes is shown. Next, it is shown that generalized weight distribution can be obtained since the constraint length is two or three. Furthermore, some analytical results of terminated convolutional codes are shown as function of the number of information symbols, and application for error performance evaluation is demonstrated. 1. INTRODUCTION The weight distribution of error correcting codes can be used to compute the error performance bounds for the performance evaluation of any linear block codes. As any terminated convolutional code can be represented by an equivalent block code if the convolutional encoders are forced to the all-zero state by zerotail terminating at end of each block. Although it is not easy to calculate the weight distribution, generally, the bounding technique can be applied for the performance evaluation for any convolutional codes. The simple calculation method of the weigh distribution of terminated convolutional codes based on the state transition matrix of encoder was already shown[1]. But the complexity depends on the codeword length. In [2], it is shown that the low-term weight distribution of terminated convolutional codes can be obtained, directly, for d ≤ h ≤ 2d − 1, where h is weight of codeword, and d is minimum free Hamming distance of the convolutional code. In this case, the low-term weight distribution can be expressed as a linear function of x which is the number of information bits. Therefore, we can apply the bounding technique for the performance evaluation of convolutional code when any distribution can be derived directly by x. In this paper, first, the calculation method of inputoutput weight distribution of terminated convolutional codes is presented. Next, it is shown that generalized weight distribution can be obtained since the constraint length is two or three even if h ≥ 2d. In this case, the weight distribution can be given by a function of only input-output weight and x. The input-output weight distribution expressed as a function of x is useful for the performance evaluation of serial concatenated code and parallel concatenated convolutional codes[3, 4]. 2. CALCULATION METHOD OF WEIGHT DISTRIBUTION OF TERMINATED CONVOLUTIONAL CODES Let us assume a rate 1/2 binary convolutional codes of constraint length L. We can define a state transition matrix[1] of the encoder P to be a 2L−1 × 2L−1 matrix with i − jth element given by Pi,j = W w H h where w and h are Hamming weights of input information bits and encoder’s output, respectively. For example, the matrix P of 4-state non-systematic convolutional encoder with generating polynomial [1+D+D2 , 1+D2 ] are given by 0 1 W H2 0 0 0 H WH . P = (1) H2 W 0 0 0 0 H WH Let A(W, H, x) denote the number of codewords with weight h generated by information bits of weight w in the (2(x+L−1), x) linear binary block code obtained by terminating with L − 1 tail zeros after x information bits. In this case, the the input-output weight enumerating function (IOWEF), A(W, H, x) can be expressed by A(W, H, x) = IP x+L−1 I T = x n Aw,h W w H h . w=0 h=0 (2) where Aw,h represents the number of codewords with output codeword weight h generated by input information bits of weight w, I = (1, 0, . . . , 0), and the superscript T denotes transpose. The low-weight terms 852 of the weight distribution A(W, h, x)|W =1 can be obtained as a linear function of x[2]. For d ≤ h ≤ 2d − 1, A(1, h, x) can be expressed by Nh x − ah where Nh is the number of paths of output weight h in the trellis diagram that remerge with the all-0 path at x+L−1. Although this value can be obtained by a transfer function of convolutional code, the matrix approach is applied because it is hard to calculate the transfer function for longer constraint length. Here, let us consider the output weight distribution. In order to obtain Nh , let us define a matrix Q to be a matrix which is removed the element of remergence to all-0 path in P [5]. Consider P in (1) for example, the matrix Q can be written as 0 1 W H2 0 0 0 H WH . Q= (3) 0 W 0 0 0 0 H WH as a function of x. Using this coefficient, the conditional weight enumerating function (CWEF) is given by n Aw,h (x)H h . (7) Â(w, H, x) = The number of paths with output weight h that diverge from all-0 at the origin x = 0 and remerge only once, vh,x can be obtained by as a generalized formula. By substituting above equation in (6) and w = h − 2 for ch,k = 0, the IOWEF coefficient Aw,h (x) can be expressed as x − w + 1 if w = h − 2 (2) Âw,h (x) = . 0 otherwise V (H, x) = IQx+L−2 P I T = n vh,x H h . (4) h=0 Hence, the number of paths with weight h that diverge from all-0 at the origin x = 0 and remerge only once at x = k + L − 1, These path is defined as single error event[4]. For performance evaluation of terminated convolutional codes, the weight distribution, i.e, weightenumerating function (WEF) needs the number of single error event. But for h ≥ 2d, the number of codewords, A(W, H, x) in (2) includes not only single error events but also multiple error events[2, 4]. Here, a coefficient ch,k is defined as the number of paths with weight h that the length of single error events is k + L − 1. This can be obtained by ch,k = vh,k − vh,k−1 . By this coefficient, the number of codewords with weight h by single error events, Â(W, h, x) can be generalized as follows lh,max Â(W, h, x) = ch,k (x − k + 1) (5) k=1 where lh,max is a maximum length of single error events of weight h. The expression is valid even for h ≥ 2d. From (5), the IOWEF coefficient Aw,h in (2) is given by 1 ∂ w Â(W, h, x) Âw,h (x) = (6) w! ∂W w W =0 h=0 3. ANALYTICAL RESULTS In this section, some analytical weight distributions are presented as functions of x. At first, it is shown that the weight distribution can be obtained by generalized formulas for L = 2, 3. Example 1 For the convolutional code with L = 2 given by the generating polynomial[1, 1+D], we see that ch,k = W h−2 only if h − 2 = k, and ch,k = 0 otherwise, By (5), the output weight distribution is given by Â(2) (W, h, x) = (x − h + 3)W h−2 Example 2 For the convolutional code with L = 3 given by the generating + D + D2 , 1 + D2 ], h−4 h−5 polynomial[1 we obtain ch,k = k−h+4 W . From (5), the output weight distribution is given by (3) A (W, h, x) = h−5 q=0 h−5 (x − h − q + 5)W h−4 q as a generalized formula. By substituting above equation in (6) and w = h − 4 for ch,k = 0, the IOWEF coefficient Aw,h (x) can be expressed as w−1 w−1 (x − w − q + 1) if w = h − 4 (3) q Âw,h (x) = . q=0 0 otherwise For L ≥ 4, the input-output weight distribution can be derived as a function of x from (5)(6) when cj,k can be obtained. In Table 1-4, the coefficients cj,k and IOWEF coefficients Âw,h are listed where G means generator polynomial of convolutional code denoted by the octal form. 4. APPLICATION FOR THE UNION BOUND OF BIT ERROR PROBABILITY For binary transmission with maximum likelihood decoding over additive white Gaussian noise(AWGN) 853 Table 1: The coefficients ch,k for L = 4, G = [17, 13] k\h 1 2 3 4 5 6 7 8 9 10 6 0 7 W 0 W3 W3 0 0 0 0 0 0 4 W2 0 0 0 0 0 0 0 0 2 lh,max 8 0 0 9 0 0 0 0 2 W W4 W4 2W 4 0 0 0 0 6 3W 3 + W 5 W5 3W 5 3W 5 0 0 8 Table 2: The coefficients ch,k for L = 5, G = [35, 23] k\h 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 10 0 0 0 W2 W4 4 2W + W 6 5W 4 + W 6 4W 6 5W 6 5W 6 10 0.1 Upper Bound (L=2) Upper Bound (L=3) Upper Bound (L=4) Upper Bound (L=5) Simulation (L=2) Simulation (L=3) Simulation (L=4) Simulation (L=5) Bit Error Probability 0.01 lh,max 7 W 0 0 W3 0 0 0 0 0 0 0 0 0 0 0 4 8 0 W2 0 0 W4 0 0 W6 0 0 0 0 0 0 0 8 9 0 0 W3 0 0 2W 5 0 0 W7 0 0 0 0 0 0 9 10 0 0 W2 W2 + W4 W2 2W 4 4 2W + 2W 6 2W 4 W6 6 W + W8 W6 0 0 0 0 11 11 0 0 0 W3 2W 3 + W 5 2W 3 4W 5 5 4W + 2W 7 4W 5 3W 7 7 4W + W 9 4W 7 W9 2W 9 2W 9 15 0.001 eight distribution are independent for medium to high signal-to-noise power ratio per information bits, Eb /No . 0.0001 5. CONCLUSIONS 1e-05 1e-06 0 1 2 3 4 5 6 7 Eb/No (dB) Figure 1: Analytical bounds for terminated convolutional codes. channel, the bit error probability of (n, x) linear block codes can be upper-bounded as x n w hREb Aw,k erfc (8) Pb ≤ x No w=1 8 In this paper, the calculation method of inputoutput weight distribution of terminated convolutional codes is shown. As the results, it is shown that the weight distribution of terminated convolutional codes can be given by function of only the input-output weight, w, h, and the number of information bits x. Furthermore, generalized weight distribution of terminated convolutional codes with constraint length two or three are shown. Because of the computational complexity not depend on codeword length, it is useful for application of error performance evaluation. It is expected that this analytical technique can be applied for concatenated codes, or a class of turbo codes based on terminated convolutional codes. h=d where erfc(x) is the complementary error function, R is the code rate, and Eb /No is the signal-to-noise power ratio per information bit[3]. Above bound can be applied for the error performance evaluation of terminated convolutional codes. The obtained upper bound by analytical inputoutput distribution is plotted in Fig.1. In this figure, x is set to 1024, and curves come from the theoretical approach in (8) and the points come from the computer simulations, respectively. In these results, it is concluded clearly that high-weight coefficients in the w References [1] J.K. Wolf and A.J. Viterbi, “On the weight distribution of linear block codes formed from convolutional codes,” IEEE Trans. Commun., vol. 44, pp. 1049-1051, Sept. 1996. [2] M.P.C. Fossorier, S. Lin, and D.J. Costello, “On the weight distribution of terminated convolutional codes,” IEEE Trans. Inform. Theory, vol. 45, pp. 1646-1648, Jul. 1999. 854 Table 3: h\w 1 6 0 7 x 8 0 0 9 10 0 11 0 0 12 13 0 14 0 0 15 16 0 0 17 18 0 19 0 IOWEF 2 x−1 0 x−2 0 x−3 0 0 0 0 0 0 0 0 0 coefficients Âw,k (x) 3 4 0 0 2x − 5 0 0 4x − 17 3x − 12 0 0 8x − 44 3x − 13 0 0 9x − 56 x−6 0 0 5x − 36 0 0 0 x−9 0 0 0 0 0 0 for L = 4. 5 0 0 0 8x − 48 0 20x − 142 0 26x − 207 0 19x − 168 0 7x − 71 0 x − 12 Table 4: IOWEF coefficients Âw,k (x) for L = 5. h\w 7 8 9 10 11 12 13 14 15 16 17 18 19 1 x 0 0 0 0 0 0 0 0 0 0 0 0 2 0 x−1 0 3x − 9 0 0 0 0 0 0 0 0 0 3 x−3 0 x−2 0 5x − 21 0 9x − 54 0 0 0 0 0 0 4 0 x−4 0 7x − 39 0 8x − 41 0 21x − 153 0 27x − 243 0 0 0 5 0 0 2x − 10 0 13x − 88 0 36x − 300 0 42x − 348 0 82x − 842 0 81x − 972 [3] S. Benedetto, D. Divsalar, G. Montorsi, and F. Pollara, “Serial concatenation of interleaved codes: performance analysis, design, and iterative decoding,” IEEE Trans. Inform. Theory, vol. 44, pp. 909-928, May 1998. [4] O.Y. Takeshita, M.P.C. Fossorier, and D.J. Costello, Jr., “A new technique for computing the weight spectrum of turbo-codes,” IEEE Commun. Letters, vol. 3, Aug. pp.251-253, Aug. 1999. [5] H. Yoshikawa, “On the calculation method of weight distribution of terminated convolutional codes, ” Proc. ICC2004, CT12-8, Paris, France, Jun. 2004. 855