IEEE TRANSACTIONS ON VEHICULAR TECHNOLOGY, VOL. 56, NO. 6, NOVEMBER 2007 3495 Shortened Turbo Product Codes: Encoding Design and Decoding Algorithm Changlong Xu, Member, IEEE, Ying-Chang Liang, Senior Member, IEEE, and Wing Seng Leon, Member, IEEE Abstract—Shortened turbo product codes (TPCs) have al- ready been adopted in many standards. In this paper, we study shortened TPCs from two aspects, namely encoding design and decoding algorithm. To obtain different encoding block sizes, shortened–extended Hamming codes are used as the component codes of product codes in the IEEE 802.16 Standard. To design a good structure for the shortened TPC, we compute the undetected error probability of its corresponding component codes. The com- ponent codes are shortened–extended Hamming codes, and their optimal generator polynomials are selected in terms of their unde- tected error probability. For the decoding algorithm, we present an efficient Chase decoding algorithm for shortened TPCs in flat fading channels. In the proposed scheme, the reliability factor used in Pyndiah’s scheme is not needed; thus, the decoding complexity is greatly reduced by avoiding the normalization operation of the whole code word at each iteration. Simulation results are also presented to verify the performance of the proposed algorithm. Index Terms—Block codes, Chase decoding algorithm, product codes, shortened codes. I. I NTRODUCTION P RODUCT CODES were first invented by Elias in 1954 [1], [2]. However, the decoding performance was poor at that time because of the use of hard-input–hard-output decoder [3], [4]. After Berrou introduced parallel concatenated convo- lutional turbo codes (CTC) [5], [6], Pyndiah proposed a novel efficient decoding algorithm for product codes in 1994 [7], [8]. It implements iterative decoding of product codes using a soft-input–soft-output (SISO) decoder based on the Chase algorithm [9], followed by reliability calculations to obtain soft decisions from the hard output of the decoder. Thus, product codes are called turbo product codes (TPCs) or block turbo codes accordingly. Compared with CTC, TPC can also achieve a performance that is close to the Shannon capacity limit but with low decoding complexity and high code rate [7]. Because of that, TPC has been adopted in many standards, such as IEEE 802.16 [10], satellite communication systems [11], and digital storage systems [12]. The interested reader is referred to [13]–[16] for more information about TPC. To support flexible and high code rate, a shortened TPC has been proposed. Considering the decoding complexity, the Manuscript received January 11, 2006; revised January 3, 2007 and April 8, 2007. The review of this paper was coordinated by Dr. M. Valenti. The authors are with the Institute for Infocomm Research, Singapore 119613 (e-mail: clxu@i2r.a-star.edu.sg; ycliang@i2r.a-star.edu.sg; wsleon@ i2r.a-star.edu.sg). Color versions of one or more of the figures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identifier 10.1109/TVT.2007.901931 component codes are usually chosen as extended Hamming codes for the TPC and shortened–extended Hamming codes for the shortened TPC. In general, there exist several code definitions that generate equivalent Hamming codes with the same code word length. For instance, all primitive polynomi- als of degree m generate equivalent (2 m - 1, 2 m - m - 1, 3) Hamming codes [17]. The equivalent codes have equal weight distributions and equal undetected error probabilities for the designed Hamming codes. This means that the TPC codes constructed by these equivalent Hamming codes also have equal weight distributions as well as equal undetected error probabilities. However, the undetected error characteristics of the shortened TPC may differ significantly from each other. Among the equivalent TPC codes of a given block size, the best shortened codes are the codes that have minimum undetected error probability. Unfortunately, it is impossible to obtain the undetected error probabilities of TPC codes because there are no existing algorithms to calculate the weight distributions of TPC and shortened TPC codes so far. In this paper, we will utilize another criteria to decide the best shortened TPC codes. In the work of Pyndiah, Chase algorithm is applied on the rows (or columns) of TPC in order to obtain extrinsic informa- tion of each bit position for the iterative decoder [7]. Recently, several algorithms have been proposed to reduce the complexity of this kind of TPC decoder [18], [19]. However, none of them have discussed the decoding algorithm for the shortened TPC. In this paper, we propose an efficient Chase decoding algorithm for the shortened TPC over flat fading channels. The proposed algorithm does not require the reliability factor as Pyndiah’s scheme; thus, the decoding complexity is greatly reduced due to the omission of the normalization operation of the whole code word at each iteration. The rest of this paper is organized as follows: In Section II, encoding design of TPC is investigated, and the best component codes of the shortened–extended TPC used in the IEEE 802.16 Standard are presented. In Section III, the Chase decoding al- gorithm for the shortened–extended TPC in flat fading channels is discussed. Simulation results are provided in Section IV, and conclusions are given in Section V. II. ENCODING DESIGN OF THE SHORTENED TPC An (n, k) linear code consisting of k information bits and n - k check bits may be shortened into a linear code (n - l, k - l) by setting the first l bits to zero. The l bits are not transmitted, and the n - k check bits are computed in the usual manner as in the original code. The shortened (n - l, k - l) 0018-9545/$25.00 © 2007 IEEE