IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 7, JULY 2003

1073

Transactions Papers An Efficient Hybrid Decoding Algorithm for Reed–Solomon Codes Based on Bit Reliability Ta-Hsiang Hu and Shu Lin, Life Fellow, IEEE

Abstract—This paper presents a computationally efficient hybrid reliability-based decoding algorithm for Reed–Solomon (RS) codes. This hybrid decoding algorithm consists of two major components, a reencoding process and a successive erasure-and-error decoding process for both bit and symbol levels. The reencoding process is to generate a sequence of candidate codewords based on the information provided by the codeword decoded by an algebraic decoder and a set of test error patterns. Two criteria are used for testing in the decoding process to reduce the decoding computational complexity. The first criterion is devised to reduce the number of reencoding operations by eliminating the unlikely error patterns. The second criterion is to test the optimality of a generated candidate codeword. Numerical results show that the proposed decoding algorithm can achieve either a near-optimum error performance or an asymptotically optimum error performance. Index Terms—Hybrid decoding, Reed–Solomon (RS) codes, softdecision decoding.

I. INTRODUCTION

R

EED–SOLOMON (RS) codes [1] have been widely used for error control in both digital communication and digital data-storage systems. These codes are generally decoded with algebraic decoding algorithms based on the hard decisions of the received symbols, such as the Berlekamp–Massey algorithm [2], [3] and the Euclidean algorithm [4], to maintain simple decoding complexity. As the demand of very high reliability (or very low error probability) for data transmission and storage increases, soft-decision decoding of RS codes for improving their error performance becomes a subject of great interest for both coding theorists and communication and storage engineers. Soft-decision decoding that gives the best error performance is the maximum-likelihood decoding (MLD). However, the complexity of an MLD decoder for an RS code grows expo-

Paper approved by V. K. Bhargava, the Editor for Coding and Communication Theory of the IEEE Communications Society. Manuscript received May 17, 2001; revised July 23, 2002. This work was supported in part by the National Science Foundation under Grant CCR-0096191 and Grant CCR-0117891, and in part by NASA under Grant NAG 5-10480. T.-H. Hu is with the Department of Electrical Engineering, Chung Cheng Institute of Technology—National Defense University, Ta-Hsi, Tao-Yuan, Taiwan 33509, R.O.C. (e-mail: [email protected]). S. Lin is with the Department of Electrical and Computer Engineering, University of California, Davis, Davis, CA 95616-5294 USA (e-mail: [email protected]). Digital Object Identifier 10.1109/TCOMM.2003.814212

nentially with the size of the code alphabet and the dimension (or codimension) of the code. Therefore, implementation of an MLD decoder for an RS code with large code symbol alphabet and code block length is practically impossible. Over the years, some soft-decision decoding algorithms for RS codes with reduced decoding complexity have been proposed [5]–[11]. These decoding algorithms are devised to trade the error performance of MLD for the reduction of decoding complexity. Most of these decoding algorithms are reliability-based decoding algorithms. These reliability-based algorithms generate a sequence of candidate codewords using an algebraic decoder based on the input symbol reliability measures (soft information), and then choose the candidate codeword with the best metric with respect to the received sequence as the decoded codeword. Among these reliability-based decoding algorithms for RS codes, the most well-known algorithms are the generalized minimum distance (GMD) decoding algorithm [11] and the Chase algorithm [13]. The GMD algorithm is very simple to implement, even though this simple algorithm is proved to be a bounded distance decoding (or asymptotically optimum). However, it performs far from MLD for a practical range of signal-to-noise ratios (SNRs). In fact, it performs only slightly better than the algebraic decoding [16]. The Chase-II algorithm is also proved to be a bounded distance decoding. It performs much better than the GMD algorithm, however, it requires a computational complexity that grows exponentially with the minimum distance of the code to be decoded. To trade off the good performance of the Chase-II algorithm with the simple decoding complexity of the GMD, a combination of these two algorithms, called the Chase–GMD algorithm, has recently been proposed [16]. However, to achieve large coding gain over the algebraic decoding for long RS codes, this algorithm still requires very large computational complexity. Soft-decision decoding algorithms other than reliability-based decoding algorithms in general require much larger decoding complexity. In this paper, we present an efficient hybrid reliability-based decoding algorithm for RS codes represented by their binary images. This decoding algorithm consists of two major components: a reencoding process and a successive bit-and-symbol, erasure-and-error decoding (SBSEED) process. The reencoding process is devised to generate a sequence of candidate codewords for testing, based on the knowledge provided by the code-

0090-6778/03$17.00 © 2003 IEEE

1074

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 7, JULY 2003

word decoded by an algebraic decoder and a set of test error patterns. Two criteria are used for testing in the decoding process to reduce the decoding complexity. One criterion is devised to reduce the number of reencoding operations by eliminating the unlikely test error patterns. The other criterion is devised to test the optimality of a newly generated candidate codeword. By eliminating the unlikely test error patterns, we reduce the number of candidate codewords to be generated for the optimality testing, and hence, reduce the decoding computational complexity. Numerical results show that the proposed hybrid decoding algorithm for RS codes can achieve either near-optimum error performance or asymptotically optimum error performance with a significant reduction in decoding complexity. The paper is organized as follows. Section II gives a brief discussion of binary expansion of an RS code and some background information on the set of error patterns to be tested for achieving a near-optimum error performance using the reliability-based order- reprocessing decoding proposed in [14]. Section III presents the reencoding process to generate candidate codewords for testing based on a set of likely error patterns. Criteria for eliminating unlikely test error patterns before reencoding operations and optimality testing of a candidate codeword are derived. In Section IV, the SBSEED process is introduced. Section V presents the proposed hybrid decoding algorithm for RS codes. Some numerical results are given in Section VI. Finally, Section VII concludes the paper.

II. BINARY IMAGES OF RS CODES Let be an RS code over with min. For binary transmission, this imum distance code must be expanded into binary with symbols from GF(2). be a basis of . Let Let be a codeword in with . Every code symbol of can be expressed as , where GF(2). Then for , can be uniquely represented by the binary -tuple . Let be a mapping which -tuple: maps the codeword into the following binary

(1)

be the generator matrix of the RS code . Then the generator of is matrix of the binary image

.. . .. .

(3)

.. .

III. THE REENCODING PROCESS Suppose a codeword in is transmitted over an additive white Gaussian noise (AWGN) channel using binary phase-shift be keying (BPSK) signaling. Let the soft-decision (unquantized) received sequence at the output of the matched filter of the receiver. The magnitude is used as a measure of the reliability of the th received is, the more symbol position in . The larger the value is. We order the symbols of reliable the received symbol based on their reliability values to obtain a new vector such that the first positions are the most reliable independent (MRI) positions , and the other and are ordered as positions are the least reliable positions and are [14]. Let ordered as denote such a symbol position permutation. Then . denote the matrix obtained by permuting columns Let based on the permutation . After elementary row of , denoted , we obtain a operations performed on in systematic form generator matrix (4) is an identity matrix and is an parity check matrix. be the binary hard-decision Let sequence obtained from the soft-decision received sequence based on the hard-decision function. Permuting the symbol positions of based on , we obtain

where

(5) is called the binary expansion of the codeword with -tuples, respect to the basis . The set of binary , is called the binary image of with respect code with minimum distance to , which is a linear at least . depends on the choice of . A good choice . But how to choose to obtain a of results in a larger larger than is unknown and is a challenging problem. Let

where denotes concatenation, and the superscripts and deMRI positions and the other non-MRI note the positions. Then (6) , where denotes the inverse permutais a codeword in . Let be an error pattern of tion of . Note that with weight . Form the following codeword: length (7)

.. .

(2)

, which is called the corresponding codeword of . For in the ordered statistic decoding with -order reprocessing [14],

HU AND LIN: AN EFFICIENT HYBRID DECODING ALGORITHM FOR REED–SOLOMON CODES BASED ON BIT RELIABILITY

the total number of error patterns to be added to candidate codewords for testing is

to generate

1075

Let (12)

(8) . The metric is called the correlation discrepancy of . Let and be the permuted vectors obtained from , , and the per, mutation . Then it is clear that , and . For an and its corresponding error pattern can codeword generated by (7), the index set be expressed as Then

To achieve near-optimum error performance with the ordered must be , where denotes statistic decoding, the smallest integer greater than or equal to [14]. For large , the number of candidate codewords to be generated can be very large, and hence, the computational complexity of the reprocessing ordered statistic decoding with orderfor an RS code can be enormous. As an example, consider the . Binary expansion of this (31,21,11) RS code over code based on a polynomial basis gives a (155,105,11) binary . To decode this binary image image code. Set code with order-3 reprocessing ordered statistic decoding, a total of 187 460 candidate codewords must be generated and then compute their correlation metrics for comparison. The computational complexity is quite large, even for such a short RS code. The number of candidate codewords to be generated (or the computational complexity) for ordered statistic decoding with order- reprocessing remains the same, even as the SNR increases. Among all the candidate codewords generated, many of them are unlikely codewords with respect to a given received sequence. If these unlikely candidate codewords can be avoided (not to be generated), computational complexity can be significantly reduced. In the following, we will derive a criterion to test whether a test error pattern will generate a likely codeword with respect to the received sequence. If the test indicates that the test error pattern will generate an unlikely codeword, then this error pattern will be eliminated without encoding it into its corresponding candidate codeword. This elimination results in reducing one encoding operation and the real-number additions required to compute the correlation metric of a codeword.

(13) and

where and

. To simplify the notations, let . Then (14)

be two candidate codewords. If Let and than , then

is more likely

(15) It follows from (14) and (15) that we have the following inequality:

(16)

A. A Criterion for Examining Test Error Patterns be an -tuple over GF(2). Let The correlation metric between and , called the correlation metric of , is given by

be the codeword obtained by decoding the hardLet decision received sequence with algebraic decoding. Then the and , denoted , Hamming distance between . From this fact, we have must be at least

(9) (17)

The maximum correlation that can be achieved for a given received sequence is Furthermore (10)

For two binary

-tuples and , define the following index set: (11)

(18)

1076

Let received sequence least reliable positions in

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 7, JULY 2003

. For the permuted , the indexes in are the . Define the following index set: (19)

According to (18), we obtain

(20) Then the following inequality holds:

B. A Criterion for Optimality Test When a new candidate codeword is generated, if it can be determined to be the most likely codeword with respect to a given received sequence, (i.e., the codeword with the largest correlation metric), then we can terminate the decoding process. We reorder the symbol positions of in the order of descending reliabilities. This reordering, denoted , results in a received such that sequence . In the following, we derive a sufficient be the condition for such an optimality test. Let that have been generated by the candidate codewords in reencoding process, where is most currently generated candidate codeword. Let be the candidate codeword such that (26)

(21)

Then the Hamming distance between

and

is

It follows from (16) and (21) that we have the following inequality: (22) is more This inequality basically says that if the codeword likely than the codeword , the error pattern which produces based on (7) must satisfy the inequality of (22). If the error does not satisfies this inequality, its corresponding pattern codeword cannot be more likely than the codeword . Based on this fact, it can be used as a criterion for testing whether an error pattern is to produce a candidate codeword which is more likely than an existing candidate codeword. Criterion 1: (Likelihood Examination): Suppose a sequence of candidate codewords have been generated during the execution of the ordered statistic decoding [14]. Let be the candidate codeword in the sequence that has the least correlation discrep. If a hard-decision decoded codeword based ancy . If on algebraic decoding is available, we set is not available, we set . Suppose is the next error pattern to be tested on whether it should be used to generate a . Determine the candidate codeword. Form where index set

(27) From (27), we easily see that (28) (29) It follows from (27) and (28) that (30) denotes the largest integer less than . where be the currently Criterion 2: (Optimality Condition): Let be the candigenerated candidate codeword and be the codeword date codeword generated prior to . Let that has the smallest discrepancy . among be the candidate codeword for which Let (31) If

is available, set (32)

Otherwise, set

(23)

(33)

Form If (24) (34)

Test the inequality (25) satisfies the above inequality, it then generates its correIf sponding codeword based on (7). If does not satisfies the inequality of (25), then remove from consideration and test the next error pattern in the test error pattern set. Elimination of test error patterns based on the above criterion can reduce the number of candidate codewords to be generated for testing, and reduce the computational complexity of the ordered statistic decoding.

is the most likely codeword, whose proof is similar to then those in [17] and [18]. Hence, the inequality of (34) provides an optimality condition. This condition is less stringent than the optimality conditions given in [17] and [18]. C. Decoding Procedure Involved in Reencoding Process The reencoding process consists of three major functions: 1) test an error pattern for likelihood; 2) produce a candidate codeword based on an accepted test error pattern; and 3) test the op-

HU AND LIN: AN EFFICIENT HYBRID DECODING ALGORITHM FOR REED–SOLOMON CODES BASED ON BIT RELIABILITY

Fig. 1.

1077

Configuration of the proposed hybrid decoder.

timality of a candidate codeword. The reencoding process contains the following steps:

1) Use (6) to produce the first candi, compute and store date codeword . Set its correlation discrepancy . 2) Use the optimality criterion to check is optimal. If yes, go to Step 9. if 3) Generate a new test error pattern with weight . is 4) Use Criterion 1 to check whether likely. If yes, go to Step 5, else go to Step 7. cor5) Produce the candidate codeword and compute its correresponding to lation discrepancy 6) Check whether . If yes, , , and go to set Step 2. Otherwise, go to Step 7. 7) Check if all the error patterns with have been generated. If no, go weight to Step 3, otherwise, go to Step 8. . Check whether all the 8) Set error patterns in the predetermined error set have been tested. If no, go to Step 3, otherwise, go to Step 9. 9) Terminate the reencoding process.

IV. SBSEED OF RS CODES Using the reencoding process to generate candidate codewords for decoding an RS code, we need the knowledge of an alfor error pattern testing and gebraically decoded codeword optimality testing. This codeword can be obtained by carrying out both bit-level and symbol-level decodings of a received seof quence. Suppose a codeword in the binary image is transmitted over an AWGN channel using an RS code is the soft-deBPSK signaling and be the cision received sequence. Let hard-decision received sequence obtained from . The received sequence is then decoded at both bit level and symbol level, based on bit and symbol reliabilities, respectively, using erasure-and-error algebraic decoding methods. For bit-level erasure-and-error decoding, we first permute the components of , based on the permutation (defined in Section III-B), to ob, which is the hard-detain cision received sequence corresponding to . Erase least reand by filling the liable bits of . Form two sequences with zeros and ones, respectively. Deerased positions of and based on an algebraic decoding algorithm. Let code and be the decoded codewords, respectively. Compute and and between and the Euclidean distances between , respectively. Take the codeword that is closer to . Let denote this codeword. Then is taken as the decoded codeword for erased positions. The successive bit-level erasure-and-error decoding algorithm proposed in [11], [12] is decodings with carried out by performing . Each decoding may produce a candidate

1078

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 7, JULY 2003

codeword. Among the candidate codewords produced, the one with the smallest distance from is taken as the decoded codeword at bit level, denoted . For symbol-level decoding, we first collect the bits of into symbols based on the binary expansion given in Section II, and each symbol consists of elbe the received sequence ements. Let and each in symbol form, where is the hard-decision output obtained from . The reliais taken as [19] bility measure of symbol (35) Erase least reliable symbols in and decode the resultant sequence using the erasure-and-error decoding algorithm given in least reli[20] and [21]. Successively erasing erasure-and-error able symbols in and performing decodings, we obtain a sequence of candidate codewords in the RS code . The one with the largest correlation metric with is taken as the decoded codeword at symbol level, denoted . If both bit-level and symbol-level decodings are successful, we have two decoded codewords and . The one with the larger correlation with the received sequence is taken as the final decoded codeword. Since these two erasure-and-error decodings are performed independently, they can be implemented in parserved as allel to reduce the decoding time. The codeword in a reference for the reencoding process is generated as both erasure-and-error decodings. V. A HYBRID SCHEME FOR DECODING RS CODES The proposed hybrid scheme for decoding RS codes is an integration of the reencoding process and the SBSEED process described in Sections III and IV, respectively, as shown in Fig. 1. The received sequence corresponding to the transmitted codeof an RS code is sent into word in the binary image the SBSEED processor and the reencoding processor simultaneously. The SBSEED processor decodes into a codeword based on bit and symbol reliabilities using two algebraic generated in algebraic decoding decoders. The codeword is the other input to the reencoding processor. The reencoding processor then generates a sequence of candidate codewords in . This sequence of candidate codewords is generated based on a set of test error patterns and the information provided by . The set of test error patterns consists of

(36)

-tuples of weights up to , where is binary is tested for its a designed parameter. Each error pattern likelihood based on the likelihood criterion (Criterion 1). Only a likely error pattern is used to generate a candidate codeword. When a candidate codeword is generated, it is tested for optimality based on the optimality criterion (Criterion 2). If a candidate codeword satisfies the optimality condition, it is the most likely codeword for the received sequence. Then the entire deis coding process is terminated and the decoded codeword generated. If all the error patterns in have been tested and no

candidate codeword satisfies the optimality criterion, then the decoded codeword is chosen among the candidate codewords, which is with the largest correlation metric. Finally, is compared with , and the one with the larger correlation metric with is chosen as the solution codeword. Criterion 1, in general, removes many test error patterns for generating unlikely candidate codewords. As a result, it reduces the number of encoding operations and the number of real-number computations required to compute their correlation discrepancies for optimality test. Furthermore, the application of Criterion 2 may result in an early termination of the decoding process, and hence, reduces the number of computations. If the parameter is properly chosen, the proposed hybrid decoding scheme for RS codes can achieve near-optimum performance with a significant reduction of computational complexity by applying Criterion 1 and Criterion 2 for testing error patterns and candidate code, the above decoding is MLD. For this case, words. If . Consequently, the the number of error patterns in is number of candidate codewords to be generated grows expo, even though Criterion 1 rejects many error nentially with patterns, and Criterion 2 may terminate the decoding before the error patterns in are exhausted. This makes the implementation of the proposed hybrid decoder practically impossible. In [14], it was shown that near-optimum decoding can be achieved using ordered statistic decoding with by setting reprocessing. Using this value of , the number orderof error patterns in is drastically reduced. Using Criterion 1 and Criterion 2, the number of candidate codewords to be generated will be reasonably small for practical implementation of and are the proposed hybrid decoding, provided that not too large. In the following, we show that can be further reduced with only a small degradation in error performance. A. Asymptotical Behavior , , and denote the error probabilities of the Let hybrid decoding, SBSEED, and the reencoding process, respec, the error probatively. It was shown in [14] that for large bility in the least reliable positions (LRPs) is almost independent be the from that in the most reliable positions (MRPs). Let error probability of MLD. Then (37) which is the error correcting capability of Let . In [14], it was shown that as approaches a binary image of the reencoding process is zero, the error probability given by (38) With the similar proof in [15], the error probability by

is given (39)

It follows from (37)–(39) that

is upper bounded by (40)

HU AND LIN: AN EFFICIENT HYBRID DECODING ALGORITHM FOR REED–SOLOMON CODES BASED ON BIT RELIABILITY

Fig. 2.

Error performance of RS(15,11,5) code with BPSK transmission.

Fig. 3.

1079

Error performance of RS(15,9,7) code with BPSK transmission.

Consequently, the asymptotic error performance of the proposed hybrid decoding algorithm is approximated by (41) To achieve such asymptotic error performance, the following condition:

must satisfy

(42) Therefore, for the proposed hybrid decoding algorithm for RS codes, we may choose (43)

VI. NUMERICAL RESULTS AND COMPARISON The proposed hybrid scheme has been applied to decode the expanded based binary images of some RS codes over on a polynomial basis. The complexity of the decoding scheme is measured by the average number of candidate codewords gen, and the averated during the decoding process, denoted erage number of error patterns used in the decoding process, denoted . The proposed decoding scheme is compared to the hybrid ordered-statistic decoding (HOSD) scheme for binary linear block codes proposed in [15], in which is chosen to . Figs. 2–5 depict the error performances of some be RS codes decoded with MLD, the proposed hybrid decoding algorithm, the HOSD scheme proposed in [15], the GMD decoding and algebraic decoding. We see that the performances of MLD, the proposed hybrid decoding, and the HOSD scheme are within 0.3 dB difference. However, their decoding complexities are quite different. The computational complexity of MLD is very large compared to the two hybrid decoding schemes. Tables I–IV compare the decoding complexities of the two hybrid decoding schemes. We see that the complexity of the proposed hybrid decoding scheme is much smaller than that of the HOSD scheme proposed in [15] for SNRs greater than 1 dB. For ex. The biample, consider the (31,25,7) RS code over

Fig. 4. Error performance of RS(31,25,7) code with BPSK transmission.

nary image of this RS code expanded based on the polynomial where is a primitive element in basis is a (155,125,7) code. From Fig. 4, we see that the proposed hybrid decoding performance is very close to the HOSD scheme, within 0.2 dB at the bit-error rate (BER) of 10 . However, from Table III, we see that the proposed hybrid decoding scheme requires a much smaller computational complexity. For dB, the HOSD requires examining 7875 example, for error patterns and generating 7875 candidate codewords, on average, to make a decoding decision. However, the proposed hybrid decoding algorithm requires generating only 115.5 candidate codewords using 115.5 error patterns. Also from the figures, we see that both the proposed hybrid decoding and the HOSD outperform the GMD decoding by 1.7 to 2.2 dB at the BER of 10 . The GMD decoding has less than 1-dB coding gain over the algebraic decoding at the BER of 10 . VII. CONCLUSION In this paper, we have proposed a computationally effective reliability-based hybrid decoding scheme for the binary images of RS codes. The proposed decoding scheme employs two pro-

1080

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 7, JULY 2003

TABLE IV COMPARISON C

OF DECODING COMPLEXITY IN PROCESS OF DECODING (155; 105; 11), A BINARY IMAGE OF RS(31,21,11)

formance with a significant reduction in decoding complexity, compared with MLD and the hybrid decoding proposed in [15]. REFERENCES Fig. 5.

Error performance of RS(31,21,11) code with BPSK transmission.

COMPARISON C

OF DECODING (60; 44; 5), A

TABLE I COMPLEXITY IN PROCESS OF DECODING BINARY IMAGE OF RS(15,11,5)

TABLE II COMPARISON C

OF DECODING COMPLEXITY IN PROCESS OF DECODING (60; 36; 7), A BINARY IMAGE OF RS(15,9,7)

TABLE III COMPARISON C

OF DECODING COMPLEXITY IN PROCESS OF DECODING (155; 125; 7), A BINARY IMAGE OF RS(31,25,7)

cesses to generate candidate codewords and two criteria to test the likelihood of error patterns and the optimality of candidate codewords to achieve a near-optimum (or suboptimal) error per-

[1] S. B. Wicker and V. K. Bhargava, Reed–Solomon Codes and Their Applications. Piscataway, NJ: IEEE Press, 1994. [2] E. B. Berlekamp, Algebraic Coding Theory. New York: McGraw-Hill, 1968. [3] J. L. Massey, “Shift register synthesis and BCH decoding,” IEEE Trans. Inform. Theory, vol. IT-15, pp. 122–127, Jan. 1969. [4] Y. Sugiyama, M. Kasahara, S. Hirasawa, and T. NameKawa, “A method for solving key equation for decoding goppa codes,” Inform. Contr., vol. 27, pp. 87–99, 1975. [5] E. R. Berlekamp, “Bounded distance +1 soft-decision Reed–Solomon decoding,” IEEE Trans. Inform. Theory, vol. 42, pp. 704–720, May 1996. [6] R. Kotter, “Fast generalized minimum-distance decoding of algebraicgeometry Reed–Solomon codes,” IEEE Trans. Inform. Theory, vol. 42, pp. 721–737, May 1996. [7] D. J. Taipale and M. J. Seo, “An efficient soft-decision Reed–Solomon decoding algorithm,” IEEE Trans. Inform. Theory, vol. 40, pp. 1130–1140, July 1994. [8] U. K. Sorger, “A new Reed–Solomon code decoding algorithm based on Newton’s interpolation,” IEEE Trans. Inform. Theory, vol. 39, pp. 358–365, Mar. 1993. [9] N. Kamiya, “On acceptance criterion for efficient successive errors-anderasure decoding of Reed–Solomon and BCH codes,” IEEE Trans. Inform. Theory, vol. 43, pp. 1477–1488, Sept. 1997. [10] E. Berlekamp and J. Ramsey, “Readable erasures improve the performance of Reed–Solomon codes,” IEEE Trans. Inform. Theory, vol. IT-24, pp. 384–386, Sept. 1978. [11] G. D. Forney, Jr., “Generalized minimum distance decoding,” IEEE Trans. Inform. Theory, vol. IT-12, pp. 125–131, Apr. 1966. [12] , Concatenated Codes. Cambridge, MA: MIT Press, 1966. [13] D. Chase, “A new class for decoding block codes with channel measurement information,” IEEE Trans. Inform. Theory, vol. IT-18, pp. 170–182, Jan. 1972. [14] M. P. C. Fossorier and S. Lin, “Soft-decision decoding of linear block codes based on ordered statistics algorithm,” IEEE Trans. Inform. Theory, vol. 41, pp. 1379–1396, Sept. 1995. [15] , “Complementary reliability-based decodings of binary linear block codes,” IEEE Trans. Inform. Theory, vol. 43, pp. 1667–1672, Sept. 1997. [16] H. Tang, Y. Liu, M. P. C. Fossorier, and S. Lin, “On combining Chase-2 and GMD decoding algorithm for nonbinary block codes,” IEEE Commun. Lett., vol. 5, pp. 209–211, May 2001. [17] T. Kaneko, T. Nishijima, H. Inazumi, and S. Hirasawa, “An efficient maximum-likelihood decoding algorithm for linear block codes with algebraic decoder,” IEEE Trans. Inform. Theory, vol. 40, pp. 320–327, Mar. 1994. [18] H. T. Moorthy, S. Lin, and T. Kasami, “Soft-decision decoding of binary linear block codes based on an iterative search algorithm,” IEEE Trans. Inform. Theory, vol. 43, pp. 1030–1040, May 1997. [19] J. Hagenauer and P. Hoeher, “A Viterbi algorithm with soft-decision outputs and its applications,” in Proc. IEEE Globecom Conf., Dallas, TX, Nov. 1989, pp. 47.1.1–47.1.7. [20] H. Shahri and K. K. Tzeng, “On error-and-erasure decoding of cyclic codes,” IEEE Trans. Inform. Theory, vol. 38, pp. 489–496, Mar. 1992. [21] R. E. Blahut, Theory and Practice of Error Control Codes. Reading, MA: Addison-Wesley, 1983.

HU AND LIN: AN EFFICIENT HYBRID DECODING ALGORITHM FOR REED–SOLOMON CODES BASED ON BIT RELIABILITY

Ta-Hsiang Hu received the B.S.E.E. degree from Chung Cheng Institute of Technology, Tao-Yuan, Taiwan, in 1984, the M.S.E.E. degree from Naval Postgraduate School, Monterey, CA, in 1991, and the Ph.D. degree in electrical engineering from the University of Hawaii at Manoa, Honolulu, in 2001. Since 1991, he has been on the faculty of the Department of Electrical Engineering, Chung Cheng Institute of Technology, National Defense University, Tao-Yuan, Taiwan. His current research interests include coding theory, cryptography, and wireless communications.

1081

Shu Lin (S’62–M’65–SM’78–F’80–LF’00) received the B.S.E.E. degree from the National Taiwan University, Taipei, Taiwan, in 1959, and the M.S. and Ph.D. degrees in electrical engineering from Rice University, Houston, TX, in 1964 and 1965, respectively. In 1965, he joined the Faculty of the University of Hawaii, Honolulu, as an Assistant Professor of Electrical Engineering. He became an Associate Professor in 1969 and a Professor in 1973. In 1986, he joined Texas A&M University, College Station, as the Inna Runyon Chair Professor of Electrical Engineering. In 1987, he returned to the University of Hawaii. From 1978 to 1979, he was a Visiting Scientist at the IBM Thomas J. Watson Research Center, Yorktown Heights, NY, where he worked on error control protocols for data communication systems. He spent the academic year of 1996–1997 as a Visiting Professor at the Technical University of Munich, Munich, Germany. He retired from University of Hawaii in 1999 and he is currently a Visiting Professor at the University of California, Davis. He has published numerous technical papers in IEEE TRANSACTIONS and other refereed journals. He is the author of the book, An Introduction to Error-Correcting Codes (Englewood Cliffs, NJ: Prentice-Hall, 1970). He also co-authored (with D. J. Costello) the book, Error Control Coding: Fundamentals and Applications (Englewood Cliffs, NJ: Prentice-Hall, 1982), and (with T. Kasami, T. Fujiwara, and M. Fossorier) the book, Trellises and Trellis-Based Decoding Algorithms, (Boston, MA: Kluwer Academic, 1998). His current research areas include algebraic coding theory, coded modulation, error control systems, and satellite communications. He has served as the Principal Investigator on 25 research grants. Dr. Lin is a Member of the IEEE Information Theory Society and the Communication Society. He served as the Associate Editor for Algebraic Coding Theory for the IEEE TRANSACTIONS ON INFORMATION THEORY from 1976 to 1978, and as the Program Co-Chairman of the IEEE International Symposium of Information Theory held in Kobe, Japan, in June 1988. He was the President of the IEEE Information Theory Society in 1991. In 1996, he was a recipient of the Alexander von Humboldt Research Prize for U.S. Senior Scientists.

1073

Transactions Papers An Efficient Hybrid Decoding Algorithm for Reed–Solomon Codes Based on Bit Reliability Ta-Hsiang Hu and Shu Lin, Life Fellow, IEEE

Abstract—This paper presents a computationally efficient hybrid reliability-based decoding algorithm for Reed–Solomon (RS) codes. This hybrid decoding algorithm consists of two major components, a reencoding process and a successive erasure-and-error decoding process for both bit and symbol levels. The reencoding process is to generate a sequence of candidate codewords based on the information provided by the codeword decoded by an algebraic decoder and a set of test error patterns. Two criteria are used for testing in the decoding process to reduce the decoding computational complexity. The first criterion is devised to reduce the number of reencoding operations by eliminating the unlikely error patterns. The second criterion is to test the optimality of a generated candidate codeword. Numerical results show that the proposed decoding algorithm can achieve either a near-optimum error performance or an asymptotically optimum error performance. Index Terms—Hybrid decoding, Reed–Solomon (RS) codes, softdecision decoding.

I. INTRODUCTION

R

EED–SOLOMON (RS) codes [1] have been widely used for error control in both digital communication and digital data-storage systems. These codes are generally decoded with algebraic decoding algorithms based on the hard decisions of the received symbols, such as the Berlekamp–Massey algorithm [2], [3] and the Euclidean algorithm [4], to maintain simple decoding complexity. As the demand of very high reliability (or very low error probability) for data transmission and storage increases, soft-decision decoding of RS codes for improving their error performance becomes a subject of great interest for both coding theorists and communication and storage engineers. Soft-decision decoding that gives the best error performance is the maximum-likelihood decoding (MLD). However, the complexity of an MLD decoder for an RS code grows expo-

Paper approved by V. K. Bhargava, the Editor for Coding and Communication Theory of the IEEE Communications Society. Manuscript received May 17, 2001; revised July 23, 2002. This work was supported in part by the National Science Foundation under Grant CCR-0096191 and Grant CCR-0117891, and in part by NASA under Grant NAG 5-10480. T.-H. Hu is with the Department of Electrical Engineering, Chung Cheng Institute of Technology—National Defense University, Ta-Hsi, Tao-Yuan, Taiwan 33509, R.O.C. (e-mail: [email protected]). S. Lin is with the Department of Electrical and Computer Engineering, University of California, Davis, Davis, CA 95616-5294 USA (e-mail: [email protected]). Digital Object Identifier 10.1109/TCOMM.2003.814212

nentially with the size of the code alphabet and the dimension (or codimension) of the code. Therefore, implementation of an MLD decoder for an RS code with large code symbol alphabet and code block length is practically impossible. Over the years, some soft-decision decoding algorithms for RS codes with reduced decoding complexity have been proposed [5]–[11]. These decoding algorithms are devised to trade the error performance of MLD for the reduction of decoding complexity. Most of these decoding algorithms are reliability-based decoding algorithms. These reliability-based algorithms generate a sequence of candidate codewords using an algebraic decoder based on the input symbol reliability measures (soft information), and then choose the candidate codeword with the best metric with respect to the received sequence as the decoded codeword. Among these reliability-based decoding algorithms for RS codes, the most well-known algorithms are the generalized minimum distance (GMD) decoding algorithm [11] and the Chase algorithm [13]. The GMD algorithm is very simple to implement, even though this simple algorithm is proved to be a bounded distance decoding (or asymptotically optimum). However, it performs far from MLD for a practical range of signal-to-noise ratios (SNRs). In fact, it performs only slightly better than the algebraic decoding [16]. The Chase-II algorithm is also proved to be a bounded distance decoding. It performs much better than the GMD algorithm, however, it requires a computational complexity that grows exponentially with the minimum distance of the code to be decoded. To trade off the good performance of the Chase-II algorithm with the simple decoding complexity of the GMD, a combination of these two algorithms, called the Chase–GMD algorithm, has recently been proposed [16]. However, to achieve large coding gain over the algebraic decoding for long RS codes, this algorithm still requires very large computational complexity. Soft-decision decoding algorithms other than reliability-based decoding algorithms in general require much larger decoding complexity. In this paper, we present an efficient hybrid reliability-based decoding algorithm for RS codes represented by their binary images. This decoding algorithm consists of two major components: a reencoding process and a successive bit-and-symbol, erasure-and-error decoding (SBSEED) process. The reencoding process is devised to generate a sequence of candidate codewords for testing, based on the knowledge provided by the code-

0090-6778/03$17.00 © 2003 IEEE

1074

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 7, JULY 2003

word decoded by an algebraic decoder and a set of test error patterns. Two criteria are used for testing in the decoding process to reduce the decoding complexity. One criterion is devised to reduce the number of reencoding operations by eliminating the unlikely test error patterns. The other criterion is devised to test the optimality of a newly generated candidate codeword. By eliminating the unlikely test error patterns, we reduce the number of candidate codewords to be generated for the optimality testing, and hence, reduce the decoding computational complexity. Numerical results show that the proposed hybrid decoding algorithm for RS codes can achieve either near-optimum error performance or asymptotically optimum error performance with a significant reduction in decoding complexity. The paper is organized as follows. Section II gives a brief discussion of binary expansion of an RS code and some background information on the set of error patterns to be tested for achieving a near-optimum error performance using the reliability-based order- reprocessing decoding proposed in [14]. Section III presents the reencoding process to generate candidate codewords for testing based on a set of likely error patterns. Criteria for eliminating unlikely test error patterns before reencoding operations and optimality testing of a candidate codeword are derived. In Section IV, the SBSEED process is introduced. Section V presents the proposed hybrid decoding algorithm for RS codes. Some numerical results are given in Section VI. Finally, Section VII concludes the paper.

II. BINARY IMAGES OF RS CODES Let be an RS code over with min. For binary transmission, this imum distance code must be expanded into binary with symbols from GF(2). be a basis of . Let Let be a codeword in with . Every code symbol of can be expressed as , where GF(2). Then for , can be uniquely represented by the binary -tuple . Let be a mapping which -tuple: maps the codeword into the following binary

(1)

be the generator matrix of the RS code . Then the generator of is matrix of the binary image

.. . .. .

(3)

.. .

III. THE REENCODING PROCESS Suppose a codeword in is transmitted over an additive white Gaussian noise (AWGN) channel using binary phase-shift be keying (BPSK) signaling. Let the soft-decision (unquantized) received sequence at the output of the matched filter of the receiver. The magnitude is used as a measure of the reliability of the th received is, the more symbol position in . The larger the value is. We order the symbols of reliable the received symbol based on their reliability values to obtain a new vector such that the first positions are the most reliable independent (MRI) positions , and the other and are ordered as positions are the least reliable positions and are [14]. Let ordered as denote such a symbol position permutation. Then . denote the matrix obtained by permuting columns Let based on the permutation . After elementary row of , denoted , we obtain a operations performed on in systematic form generator matrix (4) is an identity matrix and is an parity check matrix. be the binary hard-decision Let sequence obtained from the soft-decision received sequence based on the hard-decision function. Permuting the symbol positions of based on , we obtain

where

(5) is called the binary expansion of the codeword with -tuples, respect to the basis . The set of binary , is called the binary image of with respect code with minimum distance to , which is a linear at least . depends on the choice of . A good choice . But how to choose to obtain a of results in a larger larger than is unknown and is a challenging problem. Let

where denotes concatenation, and the superscripts and deMRI positions and the other non-MRI note the positions. Then (6) , where denotes the inverse permutais a codeword in . Let be an error pattern of tion of . Note that with weight . Form the following codeword: length (7)

.. .

(2)

, which is called the corresponding codeword of . For in the ordered statistic decoding with -order reprocessing [14],

HU AND LIN: AN EFFICIENT HYBRID DECODING ALGORITHM FOR REED–SOLOMON CODES BASED ON BIT RELIABILITY

the total number of error patterns to be added to candidate codewords for testing is

to generate

1075

Let (12)

(8) . The metric is called the correlation discrepancy of . Let and be the permuted vectors obtained from , , and the per, mutation . Then it is clear that , and . For an and its corresponding error pattern can codeword generated by (7), the index set be expressed as Then

To achieve near-optimum error performance with the ordered must be , where denotes statistic decoding, the smallest integer greater than or equal to [14]. For large , the number of candidate codewords to be generated can be very large, and hence, the computational complexity of the reprocessing ordered statistic decoding with orderfor an RS code can be enormous. As an example, consider the . Binary expansion of this (31,21,11) RS code over code based on a polynomial basis gives a (155,105,11) binary . To decode this binary image image code. Set code with order-3 reprocessing ordered statistic decoding, a total of 187 460 candidate codewords must be generated and then compute their correlation metrics for comparison. The computational complexity is quite large, even for such a short RS code. The number of candidate codewords to be generated (or the computational complexity) for ordered statistic decoding with order- reprocessing remains the same, even as the SNR increases. Among all the candidate codewords generated, many of them are unlikely codewords with respect to a given received sequence. If these unlikely candidate codewords can be avoided (not to be generated), computational complexity can be significantly reduced. In the following, we will derive a criterion to test whether a test error pattern will generate a likely codeword with respect to the received sequence. If the test indicates that the test error pattern will generate an unlikely codeword, then this error pattern will be eliminated without encoding it into its corresponding candidate codeword. This elimination results in reducing one encoding operation and the real-number additions required to compute the correlation metric of a codeword.

(13) and

where and

. To simplify the notations, let . Then (14)

be two candidate codewords. If Let and than , then

is more likely

(15) It follows from (14) and (15) that we have the following inequality:

(16)

A. A Criterion for Examining Test Error Patterns be an -tuple over GF(2). Let The correlation metric between and , called the correlation metric of , is given by

be the codeword obtained by decoding the hardLet decision received sequence with algebraic decoding. Then the and , denoted , Hamming distance between . From this fact, we have must be at least

(9) (17)

The maximum correlation that can be achieved for a given received sequence is Furthermore (10)

For two binary

-tuples and , define the following index set: (11)

(18)

1076

Let received sequence least reliable positions in

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 7, JULY 2003

. For the permuted , the indexes in are the . Define the following index set: (19)

According to (18), we obtain

(20) Then the following inequality holds:

B. A Criterion for Optimality Test When a new candidate codeword is generated, if it can be determined to be the most likely codeword with respect to a given received sequence, (i.e., the codeword with the largest correlation metric), then we can terminate the decoding process. We reorder the symbol positions of in the order of descending reliabilities. This reordering, denoted , results in a received such that sequence . In the following, we derive a sufficient be the condition for such an optimality test. Let that have been generated by the candidate codewords in reencoding process, where is most currently generated candidate codeword. Let be the candidate codeword such that (26)

(21)

Then the Hamming distance between

and

is

It follows from (16) and (21) that we have the following inequality: (22) is more This inequality basically says that if the codeword likely than the codeword , the error pattern which produces based on (7) must satisfy the inequality of (22). If the error does not satisfies this inequality, its corresponding pattern codeword cannot be more likely than the codeword . Based on this fact, it can be used as a criterion for testing whether an error pattern is to produce a candidate codeword which is more likely than an existing candidate codeword. Criterion 1: (Likelihood Examination): Suppose a sequence of candidate codewords have been generated during the execution of the ordered statistic decoding [14]. Let be the candidate codeword in the sequence that has the least correlation discrep. If a hard-decision decoded codeword based ancy . If on algebraic decoding is available, we set is not available, we set . Suppose is the next error pattern to be tested on whether it should be used to generate a . Determine the candidate codeword. Form where index set

(27) From (27), we easily see that (28) (29) It follows from (27) and (28) that (30) denotes the largest integer less than . where be the currently Criterion 2: (Optimality Condition): Let be the candigenerated candidate codeword and be the codeword date codeword generated prior to . Let that has the smallest discrepancy . among be the candidate codeword for which Let (31) If

is available, set (32)

Otherwise, set

(23)

(33)

Form If (24) (34)

Test the inequality (25) satisfies the above inequality, it then generates its correIf sponding codeword based on (7). If does not satisfies the inequality of (25), then remove from consideration and test the next error pattern in the test error pattern set. Elimination of test error patterns based on the above criterion can reduce the number of candidate codewords to be generated for testing, and reduce the computational complexity of the ordered statistic decoding.

is the most likely codeword, whose proof is similar to then those in [17] and [18]. Hence, the inequality of (34) provides an optimality condition. This condition is less stringent than the optimality conditions given in [17] and [18]. C. Decoding Procedure Involved in Reencoding Process The reencoding process consists of three major functions: 1) test an error pattern for likelihood; 2) produce a candidate codeword based on an accepted test error pattern; and 3) test the op-

HU AND LIN: AN EFFICIENT HYBRID DECODING ALGORITHM FOR REED–SOLOMON CODES BASED ON BIT RELIABILITY

Fig. 1.

1077

Configuration of the proposed hybrid decoder.

timality of a candidate codeword. The reencoding process contains the following steps:

1) Use (6) to produce the first candi, compute and store date codeword . Set its correlation discrepancy . 2) Use the optimality criterion to check is optimal. If yes, go to Step 9. if 3) Generate a new test error pattern with weight . is 4) Use Criterion 1 to check whether likely. If yes, go to Step 5, else go to Step 7. cor5) Produce the candidate codeword and compute its correresponding to lation discrepancy 6) Check whether . If yes, , , and go to set Step 2. Otherwise, go to Step 7. 7) Check if all the error patterns with have been generated. If no, go weight to Step 3, otherwise, go to Step 8. . Check whether all the 8) Set error patterns in the predetermined error set have been tested. If no, go to Step 3, otherwise, go to Step 9. 9) Terminate the reencoding process.

IV. SBSEED OF RS CODES Using the reencoding process to generate candidate codewords for decoding an RS code, we need the knowledge of an alfor error pattern testing and gebraically decoded codeword optimality testing. This codeword can be obtained by carrying out both bit-level and symbol-level decodings of a received seof quence. Suppose a codeword in the binary image is transmitted over an AWGN channel using an RS code is the soft-deBPSK signaling and be the cision received sequence. Let hard-decision received sequence obtained from . The received sequence is then decoded at both bit level and symbol level, based on bit and symbol reliabilities, respectively, using erasure-and-error algebraic decoding methods. For bit-level erasure-and-error decoding, we first permute the components of , based on the permutation (defined in Section III-B), to ob, which is the hard-detain cision received sequence corresponding to . Erase least reand by filling the liable bits of . Form two sequences with zeros and ones, respectively. Deerased positions of and based on an algebraic decoding algorithm. Let code and be the decoded codewords, respectively. Compute and and between and the Euclidean distances between , respectively. Take the codeword that is closer to . Let denote this codeword. Then is taken as the decoded codeword for erased positions. The successive bit-level erasure-and-error decoding algorithm proposed in [11], [12] is decodings with carried out by performing . Each decoding may produce a candidate

1078

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 7, JULY 2003

codeword. Among the candidate codewords produced, the one with the smallest distance from is taken as the decoded codeword at bit level, denoted . For symbol-level decoding, we first collect the bits of into symbols based on the binary expansion given in Section II, and each symbol consists of elbe the received sequence ements. Let and each in symbol form, where is the hard-decision output obtained from . The reliais taken as [19] bility measure of symbol (35) Erase least reliable symbols in and decode the resultant sequence using the erasure-and-error decoding algorithm given in least reli[20] and [21]. Successively erasing erasure-and-error able symbols in and performing decodings, we obtain a sequence of candidate codewords in the RS code . The one with the largest correlation metric with is taken as the decoded codeword at symbol level, denoted . If both bit-level and symbol-level decodings are successful, we have two decoded codewords and . The one with the larger correlation with the received sequence is taken as the final decoded codeword. Since these two erasure-and-error decodings are performed independently, they can be implemented in parserved as allel to reduce the decoding time. The codeword in a reference for the reencoding process is generated as both erasure-and-error decodings. V. A HYBRID SCHEME FOR DECODING RS CODES The proposed hybrid scheme for decoding RS codes is an integration of the reencoding process and the SBSEED process described in Sections III and IV, respectively, as shown in Fig. 1. The received sequence corresponding to the transmitted codeof an RS code is sent into word in the binary image the SBSEED processor and the reencoding processor simultaneously. The SBSEED processor decodes into a codeword based on bit and symbol reliabilities using two algebraic generated in algebraic decoding decoders. The codeword is the other input to the reencoding processor. The reencoding processor then generates a sequence of candidate codewords in . This sequence of candidate codewords is generated based on a set of test error patterns and the information provided by . The set of test error patterns consists of

(36)

-tuples of weights up to , where is binary is tested for its a designed parameter. Each error pattern likelihood based on the likelihood criterion (Criterion 1). Only a likely error pattern is used to generate a candidate codeword. When a candidate codeword is generated, it is tested for optimality based on the optimality criterion (Criterion 2). If a candidate codeword satisfies the optimality condition, it is the most likely codeword for the received sequence. Then the entire deis coding process is terminated and the decoded codeword generated. If all the error patterns in have been tested and no

candidate codeword satisfies the optimality criterion, then the decoded codeword is chosen among the candidate codewords, which is with the largest correlation metric. Finally, is compared with , and the one with the larger correlation metric with is chosen as the solution codeword. Criterion 1, in general, removes many test error patterns for generating unlikely candidate codewords. As a result, it reduces the number of encoding operations and the number of real-number computations required to compute their correlation discrepancies for optimality test. Furthermore, the application of Criterion 2 may result in an early termination of the decoding process, and hence, reduces the number of computations. If the parameter is properly chosen, the proposed hybrid decoding scheme for RS codes can achieve near-optimum performance with a significant reduction of computational complexity by applying Criterion 1 and Criterion 2 for testing error patterns and candidate code, the above decoding is MLD. For this case, words. If . Consequently, the the number of error patterns in is number of candidate codewords to be generated grows expo, even though Criterion 1 rejects many error nentially with patterns, and Criterion 2 may terminate the decoding before the error patterns in are exhausted. This makes the implementation of the proposed hybrid decoder practically impossible. In [14], it was shown that near-optimum decoding can be achieved using ordered statistic decoding with by setting reprocessing. Using this value of , the number orderof error patterns in is drastically reduced. Using Criterion 1 and Criterion 2, the number of candidate codewords to be generated will be reasonably small for practical implementation of and are the proposed hybrid decoding, provided that not too large. In the following, we show that can be further reduced with only a small degradation in error performance. A. Asymptotical Behavior , , and denote the error probabilities of the Let hybrid decoding, SBSEED, and the reencoding process, respec, the error probatively. It was shown in [14] that for large bility in the least reliable positions (LRPs) is almost independent be the from that in the most reliable positions (MRPs). Let error probability of MLD. Then (37) which is the error correcting capability of Let . In [14], it was shown that as approaches a binary image of the reencoding process is zero, the error probability given by (38) With the similar proof in [15], the error probability by

is given (39)

It follows from (37)–(39) that

is upper bounded by (40)

HU AND LIN: AN EFFICIENT HYBRID DECODING ALGORITHM FOR REED–SOLOMON CODES BASED ON BIT RELIABILITY

Fig. 2.

Error performance of RS(15,11,5) code with BPSK transmission.

Fig. 3.

1079

Error performance of RS(15,9,7) code with BPSK transmission.

Consequently, the asymptotic error performance of the proposed hybrid decoding algorithm is approximated by (41) To achieve such asymptotic error performance, the following condition:

must satisfy

(42) Therefore, for the proposed hybrid decoding algorithm for RS codes, we may choose (43)

VI. NUMERICAL RESULTS AND COMPARISON The proposed hybrid scheme has been applied to decode the expanded based binary images of some RS codes over on a polynomial basis. The complexity of the decoding scheme is measured by the average number of candidate codewords gen, and the averated during the decoding process, denoted erage number of error patterns used in the decoding process, denoted . The proposed decoding scheme is compared to the hybrid ordered-statistic decoding (HOSD) scheme for binary linear block codes proposed in [15], in which is chosen to . Figs. 2–5 depict the error performances of some be RS codes decoded with MLD, the proposed hybrid decoding algorithm, the HOSD scheme proposed in [15], the GMD decoding and algebraic decoding. We see that the performances of MLD, the proposed hybrid decoding, and the HOSD scheme are within 0.3 dB difference. However, their decoding complexities are quite different. The computational complexity of MLD is very large compared to the two hybrid decoding schemes. Tables I–IV compare the decoding complexities of the two hybrid decoding schemes. We see that the complexity of the proposed hybrid decoding scheme is much smaller than that of the HOSD scheme proposed in [15] for SNRs greater than 1 dB. For ex. The biample, consider the (31,25,7) RS code over

Fig. 4. Error performance of RS(31,25,7) code with BPSK transmission.

nary image of this RS code expanded based on the polynomial where is a primitive element in basis is a (155,125,7) code. From Fig. 4, we see that the proposed hybrid decoding performance is very close to the HOSD scheme, within 0.2 dB at the bit-error rate (BER) of 10 . However, from Table III, we see that the proposed hybrid decoding scheme requires a much smaller computational complexity. For dB, the HOSD requires examining 7875 example, for error patterns and generating 7875 candidate codewords, on average, to make a decoding decision. However, the proposed hybrid decoding algorithm requires generating only 115.5 candidate codewords using 115.5 error patterns. Also from the figures, we see that both the proposed hybrid decoding and the HOSD outperform the GMD decoding by 1.7 to 2.2 dB at the BER of 10 . The GMD decoding has less than 1-dB coding gain over the algebraic decoding at the BER of 10 . VII. CONCLUSION In this paper, we have proposed a computationally effective reliability-based hybrid decoding scheme for the binary images of RS codes. The proposed decoding scheme employs two pro-

1080

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 7, JULY 2003

TABLE IV COMPARISON C

OF DECODING COMPLEXITY IN PROCESS OF DECODING (155; 105; 11), A BINARY IMAGE OF RS(31,21,11)

formance with a significant reduction in decoding complexity, compared with MLD and the hybrid decoding proposed in [15]. REFERENCES Fig. 5.

Error performance of RS(31,21,11) code with BPSK transmission.

COMPARISON C

OF DECODING (60; 44; 5), A

TABLE I COMPLEXITY IN PROCESS OF DECODING BINARY IMAGE OF RS(15,11,5)

TABLE II COMPARISON C

OF DECODING COMPLEXITY IN PROCESS OF DECODING (60; 36; 7), A BINARY IMAGE OF RS(15,9,7)

TABLE III COMPARISON C

OF DECODING COMPLEXITY IN PROCESS OF DECODING (155; 125; 7), A BINARY IMAGE OF RS(31,25,7)

cesses to generate candidate codewords and two criteria to test the likelihood of error patterns and the optimality of candidate codewords to achieve a near-optimum (or suboptimal) error per-

[1] S. B. Wicker and V. K. Bhargava, Reed–Solomon Codes and Their Applications. Piscataway, NJ: IEEE Press, 1994. [2] E. B. Berlekamp, Algebraic Coding Theory. New York: McGraw-Hill, 1968. [3] J. L. Massey, “Shift register synthesis and BCH decoding,” IEEE Trans. Inform. Theory, vol. IT-15, pp. 122–127, Jan. 1969. [4] Y. Sugiyama, M. Kasahara, S. Hirasawa, and T. NameKawa, “A method for solving key equation for decoding goppa codes,” Inform. Contr., vol. 27, pp. 87–99, 1975. [5] E. R. Berlekamp, “Bounded distance +1 soft-decision Reed–Solomon decoding,” IEEE Trans. Inform. Theory, vol. 42, pp. 704–720, May 1996. [6] R. Kotter, “Fast generalized minimum-distance decoding of algebraicgeometry Reed–Solomon codes,” IEEE Trans. Inform. Theory, vol. 42, pp. 721–737, May 1996. [7] D. J. Taipale and M. J. Seo, “An efficient soft-decision Reed–Solomon decoding algorithm,” IEEE Trans. Inform. Theory, vol. 40, pp. 1130–1140, July 1994. [8] U. K. Sorger, “A new Reed–Solomon code decoding algorithm based on Newton’s interpolation,” IEEE Trans. Inform. Theory, vol. 39, pp. 358–365, Mar. 1993. [9] N. Kamiya, “On acceptance criterion for efficient successive errors-anderasure decoding of Reed–Solomon and BCH codes,” IEEE Trans. Inform. Theory, vol. 43, pp. 1477–1488, Sept. 1997. [10] E. Berlekamp and J. Ramsey, “Readable erasures improve the performance of Reed–Solomon codes,” IEEE Trans. Inform. Theory, vol. IT-24, pp. 384–386, Sept. 1978. [11] G. D. Forney, Jr., “Generalized minimum distance decoding,” IEEE Trans. Inform. Theory, vol. IT-12, pp. 125–131, Apr. 1966. [12] , Concatenated Codes. Cambridge, MA: MIT Press, 1966. [13] D. Chase, “A new class for decoding block codes with channel measurement information,” IEEE Trans. Inform. Theory, vol. IT-18, pp. 170–182, Jan. 1972. [14] M. P. C. Fossorier and S. Lin, “Soft-decision decoding of linear block codes based on ordered statistics algorithm,” IEEE Trans. Inform. Theory, vol. 41, pp. 1379–1396, Sept. 1995. [15] , “Complementary reliability-based decodings of binary linear block codes,” IEEE Trans. Inform. Theory, vol. 43, pp. 1667–1672, Sept. 1997. [16] H. Tang, Y. Liu, M. P. C. Fossorier, and S. Lin, “On combining Chase-2 and GMD decoding algorithm for nonbinary block codes,” IEEE Commun. Lett., vol. 5, pp. 209–211, May 2001. [17] T. Kaneko, T. Nishijima, H. Inazumi, and S. Hirasawa, “An efficient maximum-likelihood decoding algorithm for linear block codes with algebraic decoder,” IEEE Trans. Inform. Theory, vol. 40, pp. 320–327, Mar. 1994. [18] H. T. Moorthy, S. Lin, and T. Kasami, “Soft-decision decoding of binary linear block codes based on an iterative search algorithm,” IEEE Trans. Inform. Theory, vol. 43, pp. 1030–1040, May 1997. [19] J. Hagenauer and P. Hoeher, “A Viterbi algorithm with soft-decision outputs and its applications,” in Proc. IEEE Globecom Conf., Dallas, TX, Nov. 1989, pp. 47.1.1–47.1.7. [20] H. Shahri and K. K. Tzeng, “On error-and-erasure decoding of cyclic codes,” IEEE Trans. Inform. Theory, vol. 38, pp. 489–496, Mar. 1992. [21] R. E. Blahut, Theory and Practice of Error Control Codes. Reading, MA: Addison-Wesley, 1983.

HU AND LIN: AN EFFICIENT HYBRID DECODING ALGORITHM FOR REED–SOLOMON CODES BASED ON BIT RELIABILITY

Ta-Hsiang Hu received the B.S.E.E. degree from Chung Cheng Institute of Technology, Tao-Yuan, Taiwan, in 1984, the M.S.E.E. degree from Naval Postgraduate School, Monterey, CA, in 1991, and the Ph.D. degree in electrical engineering from the University of Hawaii at Manoa, Honolulu, in 2001. Since 1991, he has been on the faculty of the Department of Electrical Engineering, Chung Cheng Institute of Technology, National Defense University, Tao-Yuan, Taiwan. His current research interests include coding theory, cryptography, and wireless communications.

1081

Shu Lin (S’62–M’65–SM’78–F’80–LF’00) received the B.S.E.E. degree from the National Taiwan University, Taipei, Taiwan, in 1959, and the M.S. and Ph.D. degrees in electrical engineering from Rice University, Houston, TX, in 1964 and 1965, respectively. In 1965, he joined the Faculty of the University of Hawaii, Honolulu, as an Assistant Professor of Electrical Engineering. He became an Associate Professor in 1969 and a Professor in 1973. In 1986, he joined Texas A&M University, College Station, as the Inna Runyon Chair Professor of Electrical Engineering. In 1987, he returned to the University of Hawaii. From 1978 to 1979, he was a Visiting Scientist at the IBM Thomas J. Watson Research Center, Yorktown Heights, NY, where he worked on error control protocols for data communication systems. He spent the academic year of 1996–1997 as a Visiting Professor at the Technical University of Munich, Munich, Germany. He retired from University of Hawaii in 1999 and he is currently a Visiting Professor at the University of California, Davis. He has published numerous technical papers in IEEE TRANSACTIONS and other refereed journals. He is the author of the book, An Introduction to Error-Correcting Codes (Englewood Cliffs, NJ: Prentice-Hall, 1970). He also co-authored (with D. J. Costello) the book, Error Control Coding: Fundamentals and Applications (Englewood Cliffs, NJ: Prentice-Hall, 1982), and (with T. Kasami, T. Fujiwara, and M. Fossorier) the book, Trellises and Trellis-Based Decoding Algorithms, (Boston, MA: Kluwer Academic, 1998). His current research areas include algebraic coding theory, coded modulation, error control systems, and satellite communications. He has served as the Principal Investigator on 25 research grants. Dr. Lin is a Member of the IEEE Information Theory Society and the Communication Society. He served as the Associate Editor for Algebraic Coding Theory for the IEEE TRANSACTIONS ON INFORMATION THEORY from 1976 to 1978, and as the Program Co-Chairman of the IEEE International Symposium of Information Theory held in Kobe, Japan, in June 1988. He was the President of the IEEE Information Theory Society in 1991. In 1996, he was a recipient of the Alexander von Humboldt Research Prize for U.S. Senior Scientists.