There are many excellent web resources for
the coding enthusiast. We won't attempt to provide a comprehensive list
here, just a few of our favorites:
A most remarkable and readable book on
"modern" error control theory can be found
here. Buy
this book and read every page, you will be very glad you did. You'll
want to check out the
rest of David
J.C. MacKay's interesting and informative site as well.
Basic papers
in coding theory
This is a short
list of what are arguably the most important technical and scientific
papers in coding theory. Warning: many of these references are not for
the novice!
1. Shannon, C.
E., "A Mathematical Theory of Communication," Bell Sys. Tech. J., 27,
379-423, 623-656 (1948).
2. Reed, I. S.,
and G. Solomon, "Polynomial Codes over Certain Finite Fields," J. SIAM,
8, 300-304 (1960)
3. Viterbi, A.
J., "Error Bounds for Convolutional Codes and an Asymptotically Optimum
Decoding Algorithm," IEEE Trans. Inf. Theory, IT-13, 260-269 (1967).
4. Bose, R. C.,
and D. K. Ray-Chaudhuri, "On a Class of Error Correcting Binary Group
Codes," Inf. Control, 3, 68-79 (1960).
5. Hocquenghem,
A., "Codes correcteurs d'erreurs," Chiffres, 2, 147-156 (1959).
6. C. Berrou,
A. Glavieux, and P. Thitimajshima, "Near Shannon limit error-correcting
coding and decoding: Turbo-codes," Proc. IEEE Int. Conf. on Commun.
(Geneva, Switzerland) 1064-1070, May 1993.
7. R. M.
Pyndiah, "Near-optimum decoding of product codes: block turbo codes,"
IEEE Transactions on Communications, vol. 46, August, 1998, pp.
1003-1010.
8. L.R.
Bahl, J. Cocke,
F. Jelinek , J. Raviv. "Optimal Decoding of Linear Codes for
Minimizing Symbol Error Rate." IEEE Transactions on Information
Theory,
IT-20, pp. 284-287, March 1974
Basic texts
in coding theory
There are quite
a few significant and excellent textbooks on coding theory. We list a
few of the most important here.
S. Lin and D. J. Costello, Error Control
Coding. Englewood Cliffs, NJ: Prentice Hall, 1982.
A. M. Michelson and A. H. Levesque,
Error Control Techniques for Digital Communication. New York: John
Wiley & Sons, 1985.
W. W. Peterson and E. J. Weldon, Jr.,
Error Correcting Codes, 2 nd ed. Cambridge, MA: The MIT
Press, 1972.
V. Pless, Introduction to the Theory of
Error-Correcting Codes, 3rd ed. New York: John Wiley &
Sons, 1998.
C. Schlegel and L. Perez, Trellis Coding.
Piscataway, NJ: IEEE Press, 1997
S. B. Wicker, Error Control Systems for
Digital Communication and Storage . Englewood Cliffs, NJ: Prentice
Hall, 1995.
Other
references:
Other papers are:
G. D. Forney, Jr., "Convolutional Codes II: Maximum-Likelihood
Decoding," Information Control, vol. 25, June, 1974, pp. 222-226.
K. S. Gilhousen et. al., "Coding Systems Study for High Data Rate
Telemetry Links," Final Contract Report, N71-27786, Contract No.
NAS2-6024, Linkabit Corporation, La Jolla, CA, 1971.
J. A. Heller and I. M. Jacobs, Viterbi Decoding for Satellite and
Space Communications," IEEE Transactions on Communication Technology,
vol. COM-19, October, 1971, pp. 835-848.
K. J. Larsen, "Short Convolutional Codes with Maximal Free Distance
for Rates 1/2, 1/3, and 1/4," IEEE Transactions on Information Theory,
vol. IT-19, May, 1973, pp. 371-372.
J. P. Odenwalder, "Optimum Decoding of Convolutional Codes," Ph. D.
Dissertation, Department of Systems Sciences, School of Engineering and
Applied Sciences, University of California at Los Angeles, 1970.
C. Gumas, "Turbo codes rev up error-correcting performance," (Part
1), PE&IN, January, 1998, pp. 61-66.
C. Gumas, "Turbo codes build on classic error-correcting codes and
boost performance," (Part 2), PE&IN, February, 1998, pp. 54-63.
C. Gumas, "Turbo Codes propel new concepts for superior codes," (Part
3), PE&IN, March, 1998, pp. 65-70.
C. Gumas, "Win, place, or show, Turbo Codes enter the race for next
generation error-correcting systems," (Part 4), PE&IN, April, 1998, pp.
54-62.
A. Burr, "Turbo-codes: the ultimate error control codes?"
Electronics and Communication Engineering Journal, August, 2001, pp.
155-165.
C. Berrou, "Some clinical aspects of turbo codes," International
Symposium on Turbo Codes, September, 1997, pp. 26-31.
S. Benedetto and G. Montorsi, "Design of parallel concatenated
convolutional codes," IEEE Transactions on Communications, vol.
44, May, 1996.
S. Benedetto, D. Divsalar, G. Montorsi, and F. Pollara, "Algorithm
for continuous decoding of turbo codes," Electronic Letters, vol.
32 no. 4, February, 1996.
link1
link2
link3
link4
link5
link6
link7
link8
Visit the
Viterbi Algorithm Workshop and try it out.
Dr. Robert H. Morelos-Zaragoza, currently
at the University of Tokyo, has a comprehensive
page listing links to source code for
error-control coding programs in C and links to other pages with
more information on error-control coding. Reed-Solomon,
convolutional/Viterbi, BCH, and Golay codes and Galois-field
calculators are among the topics covered.
Phil Karn, KA9Q, has published the source
code for his Reed-Solomon, Viterbi, and Fano decoders. His main FEC
code page is
here . Phil recently released the source
code for
Viterbi and
Reed-Solomon decoders designed to take
advantage of the Intel® SIMD instruction sets. His
Viterbi decoder reaches speeds of 14 Mbps running on a 1.8 GHz Intel®
Pentium® 4 Processor. Phil also has a descriptive
page on convolutional code decoders for
amateur radio. Includes the Fano sequential decoding algorithm as
well as the Viterbi algorithm.
There is a very useful web page on turbo
codes at this
JPL site maintained by Fabrizio Pollara
and Dariush Divsalar. It contains detailed information about turbo
codes with emphasis on deep-space applications, and contains a good
bibliography on turbo codes as well as links to other turbo coding
research sites. They also have links to commercial turbo codec
providers. Another extensive bibliography on turbo coding can be
found at this University of Virginia
site .