Knowledge (XXG)

Convolutional code

Source 📝

741: 753: 1827: 1979: 776: 838: 2568: 808: 2066: 36: 441: 2620: 1854: 2289: 2192: 385:
simply by not transmitting a portion of code symbols. The performance of a punctured convolutional code generally scales well with the amount of parity transmitted. The ability to perform economical soft decision decoding on convolutional codes, as well as the block length and code rate flexibility
2571:
A turbo code with component codes 13, 15. Turbo codes get their name because the decoder uses feedback, like a turbo engine. Permutation means the same as the interleaving. C1 and C2 are recursive convolutional codes. Recursive and non-recursive convolutional codes are not so much different in BER
303:
Convolutional codes are often described as continuous. However, it may also be said that convolutional codes have arbitrary block length, rather than being continuous, since most real-world convolutional encoding is performed on blocks of data. Convolutionally encoded block codes typically employ
156:
The ability to perform economical maximum likelihood soft decision decoding is one of the major benefits of convolutional codes. This is in contrast to classic block codes, which are generally represented by a time-variant trellis and therefore are typically hard-decision decoded. Convolutional
1819:
is not really a memory cell because it represents a current value). We will designate such a state as "10". According to an input bit the encoder at the next turn can convert either to the "01" state or the "11" state. One can see that not all transitions are possible for (e.g., a decoder can't
2534:
For example, if we want to make a code with rate 2/3 using the appropriate matrix from the above table, we should take a basic encoder output and transmit every first bit from the first branch and every bit from the second one. The specific order of transmission is defined by the respective
827: 2033:
algorithm is the best known. Unlike Viterbi decoding, sequential decoding is not maximum likelihood but its complexity increases only slightly with constraint length, allowing the use of strong, long-constraint-length codes. Such codes were used in the
2207:
In fact, predefined convolutional codes structures obtained during scientific researches are used in the industry. This relates to the possibility to select catastrophic convolutional codes (causes larger number of errors).
2624: 148:
function to a data stream. The sliding application represents the 'convolution' of the encoder over the data, which gives rise to the term 'convolutional coding'. The sliding nature of the convolutional codes facilitates
2918:
Bhaskar, Vidhyacharan, and Laurie L. Joiner. "Performance of punctured convolutional codes in asynchronous CDMA communications under perfect phase-tracking conditions." Computers & Electrical Engineering 30.8 (2004):
988: 1857:
Theoretical bit-error rate curves of encoded QPSK (recursive and non-recursive, soft decision), additive white Gaussian noise channel. Curves are small distinguished due to approximately the same free distances and
1395: 1671: 2914:
Fiebig, U-C., and Patrick Robertson. "Soft-decision and erasure decoding in fast frequency-hopping systems with convolutional, turbo, and Reed-Solomon codes." IEEE Transactions on Communications 47.11 (1999):
1522: 2678:
3rd Generation Partnership Project (September 2012). "3GGP TS45.001: Technical Specification Group GSM/EDGE Radio Access Network; Physical layer on the radio path; General description". Retrieved 2013-07-20.
1935: 2925:
Chen, Yuh-Long, and Che-Ho Wei. "Performance evaluation of convolutional codes with MPSK on Rician fading channels." IEE Proceedings F-Communications, Radar and Signal Processing. Vol. 134. No. 2. IET,
1951:
Free distance can be interpreted as the minimal length of an erroneous "burst" at the output of a convolutional decoder. The fact that errors appear as "bursts" should be accounted for when designing a
1830:
Img.6. A trellis diagram for the encoder on Img.1. A path through the trellis is shown as a red line. The solid lines indicate transitions where a "0" is input and the dashed lines where a "1" is input.
2045:
Both Viterbi and sequential decoding algorithms return hard decisions: the bits that form the most likely codeword. An approximate confidence measure can be added to each bit by use of the
2911:
Chen, Qingchun, Wai Ho Mow, and Pingzhi Fan. "Some new results on recursive convolutional codes and their applications." Information Theory Workshop, 2006. ITW'06 Chengdu. IEEE. IEEE, 2006.
798:
The example encoder in Img. 2. is an 8-state encoder because the 3 registers will create 8 possible encoder states (2). A corresponding decoder trellis will typically use 8 states as well.
1132: 1205: 801:
Recursive systematic convolutional (RSC) codes have become more popular due to their use in Turbo Codes. Recursive systematic codes are also referred to as pseudo-systematic codes.
576:) and wait for the next input bit. If there are no remaining input bits, the encoder continues shifting until all registers have returned to the zero state (flush bit termination). 2296:
Convolutional code with any code rate can be designed based on polynomial selection; however, in practice, a puncturing procedure is often used to achieve the required code rate.
1268: 2185: 2126: 153:
decoding using a time-invariant trellis. Time invariant trellis decoding allows convolutional codes to be maximum-likelihood soft-decision decoded with reasonable complexity.
1590: 1439: 1730: 2195:
Theoretical bit-error rate curves of encoded QPSK (soft decision), additive white Gaussian noise channel. Longer constraint lengths produce more powerful codes, but the
740: 1767: 355: 298: 2265: 1033: 795:
Recursive codes are typically systematic and, conversely, non-recursive codes are typically non-systematic. It isn't a strict requirement, but a common practice.
383: 267: 221: 2885: 2203:
with constraint lengths, limiting these more powerful codes to deep space missions where the extra performance is easily worth the increased decoder complexity.
752: 193: 580: 444:
Stages of channel coding in GSM. Block encoder and Parity check – error detection part. Convolutional encoder and Viterbi decoder – error correction part.
2922:
Modestino, J., and Shou Mui. "Convolutional code performance in the Rician fading channel." IEEE Transactions on Communications 24.6 (1976): 592-606.
402:
determined that convolutional codes could be maximum-likelihood decoded with reasonable complexity using time invariant trellis based decoders — the
2940: 2687:
Halonen, Timo, Javier Romero, and Juan Melero, eds. GSM, GPRS and EDGE performance: evolution towards 3G/UMTS. John Wiley & Sons, 2004. p. 430
820: 869: 2584:
with much less decoding complexity than the Viterbi algorithm on the long convolutional codes that would be required for the same performance.
789:
because the input data is also used in the output symbols (Output 2). Codes with output symbols that do not include the input data are called
734:
Non-systematic convolutional codes are more popular due to better noise immunity. It relates to the free distance of the convolutional code.
2867: 1279: 540:
is fed into the leftmost register. Using the generator polynomials and the existing values in the remaining registers, the encoder outputs
1598: 53: 2742: 1454: 2585: 1953: 465: 2589: 2039: 1961: 845:
Useful as constituent code in low error rate turbo codes for applications such as satellite links. Also suitable as SCCC outer code.
469: 2019: 1888: 398:. It was thought that convolutional codes could be decoded with arbitrary quality at the expense of computation and delay. In 1967, 119: 2836: 2657: 417:
around 1991. These codes proved especially useful for iterative processing including the processing of concatenated codes such as
100: 2635: 2050: 1987: 72: 2908:
Francis, Michael. "Viterbi Decoder Block Decoding-Trellis Termination and Tail Biting." Xilinx XAPP551 v2. 0, DD (2005): 1-21.
2629: 57: 2572:
performance, however, recursive type of is implemented in Turbo convolutional codes due to better interleaving properties.
2038:
of the early 1970s to Jupiter and Saturn, but gave way to shorter, Viterbi-decoded codes, usually concatenated with large
2011: 1046:, which is closely related to the generator polynomial. An impulse response is connected with a transfer function through 816: 79: 2581: 2015: 495:, each holding one input bit. Unless otherwise specified, all memory registers start with a value of 0. The encoder has 779:
Img.2. Rate 1/2 8-state recursive systematic convolutional encoder. Used as constituent code in 3GPP 25.212 Turbo Code.
477: 2882: 2731: 2719: 1834:
An actual encoded sequence can be represented as a path on this graph. One valid path is shown in red as an example.
2788: 86: 2605: 1841:: if a received sequence doesn't fit this graph, then it was received with errors, and we must choose the nearest 46: 1059: 429: 239:
because channel coding inserts redundancy in the input bits. The memory is often called the "constraint length"
2709:
Moon, Todd K. "Error correction coding." Mathematical Methods and Algorithms. Jhon Wiley and Son (2005). p. 508
2539: 2292:
Convolutional codes with 1/2 and 3/4 code rates (and constraint length 7, Soft decision, 4-QAM / QPSK / OQPSK).
2042:
codes that steepen the overall bit-error-rate curve and produce extremely low residual undetected error rates.
1782: 1769:. For instance, in the first example the constraint length is 3, and in the second the constraint length is 4. 1138: 461: 68: 2799: 1882:) of a convolutional code is the number of errors that can be corrected by the code. It can be calculated as 452:
Convolutional codes are used extensively to achieve reliable data transfer in numerous applications, such as
2580:, a new class of iterated short convolutional codes that closely approach the theoretical limits imposed by 425: 2230: 1682: 1211: 2764: 2753: 2131: 2072: 1957: 579: 445: 145: 141: 2312:) code. It is achieved by deleting of some bits in the encoder output. Bits are deleted according to a 1940:
Since a convolutional code doesn't use blocks, processing instead a continuous bitstream, the value of
1826: 1533: 1788: 448:
and Deinterleaving – code words separation increasing in time domain and to avoid bursty distortions.
2234: 2026: 1991: 1978: 1944:
applies to a quantity of errors located relatively near to each other. That is, multiple groups of
1401: 775: 500: 2779:
The Telecommunications and Data Acquisition Progress Report 42-63, March–April 1981 (1981): 33-39.
2700:
The Telecommunications and Data Acquisition Progress Report 42-63, March–April 1981 (1981): 33-39.
1690: 2669:
Eberspächer J. et al. GSM-architecture, protocols and services. John Wiley & Sons, 2008. p.97
2200: 1983: 492: 304:
termination. The arbitrary block length of convolutional codes can also be contrasted to classic
133: 93: 544:
symbols. These symbols may be transmitted or punctured depending on the desired code rate. Now
2856: 2046: 2007: 1982:
Bit error ratio curves for convolutional codes with different options of digital modulations (
1973: 1528: 1043: 811:
Img. 3. Two-state recursive systematic convolutional (RSC) code. Also called an 'accumulator.'
545: 403: 2877: 1739: 318: 157:
codes are often characterized by the base code rate and the depth (or memory) of the encoder
2811: 1871: 583:
Img.1. Rate 1/3 non-recursive, non-systematic convolutional encoder with constraint length 3
457: 2776: 276: 2889: 2226: 2212: 2035: 1778: 785: 772:
encoder. Here's an example of a recursive one and as such it admits a feedback structure:
530: 504: 424:
Using the "convolutional" terminology, a classic convolutional code might be considered a
150: 2244: 2014:
performance and is highly parallelizable. Viterbi decoders are thus easy to implement in
1016: 360: 246: 198: 2697: 308:, which generally have fixed block lengths that are determined by algebraic properties. 2297: 2283: 2054: 837: 407: 399: 312: 273:
in the polynomial or the maximum possible number of states of the encoder (typically:
160: 2934: 2812:"Convert convolutional code polynomials to trellis description – MATLAB poly2trellis" 453: 414: 2241:
of 15 and a rate of 1/6; this code performs about 2 dB better than the simpler
2852: 2639: 2267:
code at a cost of 256× in decoding complexity (compared to Voyager mission codes).
826: 2824: 2567: 2270:
The convolutional code with a constraint length of 2 and a rate of 1/2 is used in
2211:
An especially popular Viterbi-decoded convolutional code, used at least since the
1798:
Imagine that the encoder (shown on Img.1, above) has '1' in the left memory cell (
807: 2593: 2065: 2030: 2025:
Longer constraint length codes are more practically decoded with any of several
1047: 855: 395: 35: 17: 1994:
Algorithms. (Exact and Approximate) over additive white Gaussian noise channel.
2577: 2562: 2196: 1956:
with an inner convolutional code. The popular solution for this problem is to
1845:(fitting the graph) sequence. The real decoding algorithms exploit this idea. 1039: 473: 440: 418: 305: 243:, where the output is a function of the current input as well as the previous 406:. Other trellis-based decoder algorithms were later developed, including the 2853:
The on-line textbook: Information Theory, Inference, and Learning Algorithms
1999: 386:
of convolutional codes, makes them very popular for digital communications.
2872: 1853: 983:{\displaystyle y_{i}^{j}=\sum _{k=0}^{\infty }h_{k}^{j}x_{i-k}=(x*h^{j}),} 428:(FIR) filter, while a recursive convolutional code might be considered an 2722:." Mathematical Methods and Algorithms. Jhon Wiley and Son (2005).- p.508 2543: 507: 2873:
Fundamentals of Convolutional Decoders for Better Digital Communications
2002:
exist for decoding convolutional codes. For relatively small values of
2069:
Shift-register for the (7, ) convolutional code polynomial. Branches:
1390:{\displaystyle H_{1}(z)={\frac {1+z^{-1}+z^{-3}}{1-z^{-2}-z^{-3}}},\,} 460:(e.g., in GSM, GPRS, EDGE and 3G networks (until 3GPP Release 7)) and 1960:
data before convolutional encoding, so that the outer block (usually
269:
inputs. The depth may also be given as the number of memory elements
2743:
Estimate BER for Hard and Soft Decision Viterbi Decoding (MathWorks)
841:
Img. 5. Sixteen-state recursive systematic convolutional (RSC) code.
1666:{\displaystyle \operatorname {polydeg} (f)=\max(\deg(P),\deg(Q))\,} 2316:. The following puncturing matrices are the most frequently used: 2288: 2287: 2190: 2064: 1977: 1852: 1825: 836: 825: 806: 774: 476:
such constructions were the most efficient, coming closest to the
439: 2576:
Simple Viterbi-decoded convolutional codes are now giving way to
1517:{\displaystyle m=\max _{i}\operatorname {polydeg} (H_{i}(1/z))\,} 830:
Img. 4. Four-state recursive systematic convolutional (RSC) code.
2191: 2053:(MAP) soft decisions for each bit can be obtained by use of the 1948:
errors can usually be fixed when they are relatively far apart.
727:
systematic repeats the structure of the message before encoding
644:. Therefore, output bits are calculated (modulo 2) as follows: 311:
The code rate of a convolutional code is commonly modified via
144:
that generates parity symbols via the sliding application of a
2547: 2271: 1930:{\displaystyle t=\left\lfloor {\frac {d-1}{2}}\right\rfloor .} 1053:
Transfer functions for the first (non-recursive) encoder are:
315:. For example, a convolutional code with a 'mother' code rate 29: 2777:"Performance of concatenated codes for deep space missions." 1820:
convert from "10" state to "00" or even stay in "10" state).
2698:"Performance of concatenated codes for deep space missions." 2553:
Punctured convolutional codes are also called "perforated".
533:— one for each adder (see figure below). An input bit 1273:
Transfer functions for the second (recursive) encoder are:
853:
A convolutional encoder is called so because it performs a
2862: 849:
Impulse response, transfer function, and constraint length
746:
A short illustration of non-systematic convolutional code.
723:
Convolutional codes can be systematic and non-systematic:
413:
Recursive systematic convolutional codes were invented by
2765:
Digital modulation: Approximate LLR Algorithm (MathWorks)
2328:
Free distance (for NASA standard K=7 convolutional code)
1042:. Every output of an encoder can be described by its own 2187:. All of the math operations should be done by modulo 2. 819:
code implementation and as inner constituent code for
758:
A short illustration of systematic convolutional code.
2538:
Punctured convolutional codes are widely used in the
2247: 2134: 2075: 1891: 1742: 1693: 1601: 1536: 1457: 1404: 1282: 1214: 1141: 1062: 1019: 872: 363: 321: 279: 249: 201: 163: 2837:
Role of recursive convolutional codes in turbo codes
2658:
Role of recursive convolutional codes in turbo codes
834:
Useful for SCCC's and multidimensional turbo codes.
231:is the data rate of output channel encoded stream. 2754:
Digital modulation: Exact LLR Algorithm (MathWorks)
503:(a modulo 2 adder can be implemented with a single 357:may be punctured to a higher rate of, for example, 60:. Unsourced material may be challenged and removed. 2259: 2179: 2120: 1929: 1761: 1724: 1665: 1584: 1516: 1433: 1389: 1262: 1199: 1126: 1027: 982: 804:Other RSC codes and example applications include: 377: 349: 292: 261: 215: 187: 2775:Butman, S. A., L. J. Deutsch, and R. L. Miller. 2696:Butman, S. A., L. J. Deutsch, and R. L. Miller. 1823:All possible transitions can be shown as below: 1620: 1465: 394:Convolutional codes were introduced in 1955 by 27:Type of error-correcting code using convolution 2859:, discusses convolutional codes in Chapter 48. 2732:LLR vs. Hard Decision Demodulation (MathWorks) 2839:." Electronics Letters 31.11 (1995): 858-859. 2789:Global system for mobile communications (GSM) 2660:." Electronics Letters 31.11 (1995): 858-859. 8: 730:non-systematic changes the initial structure 2892:, discusses convolutional codes on page 48. 2308:rate code from a "basic" low-rate (e.g., 1/ 1127:{\displaystyle H_{1}(z)=1+z^{-1}+z^{-2},\,} 488:To convolutionally encode data, start with 195:. The base code rate is typically given as 2883:Information Theory and Coding (TU Ilmenau) 2800:Punctured Convolutional Coding (MathWorks) 2557:Turbo codes: replacing convolutional codes 2246: 2171: 2152: 2139: 2133: 2112: 2093: 2080: 2074: 1902: 1890: 1874:between different encoded sequences. The 1758: 1741: 1721: 1710: 1698: 1692: 1662: 1600: 1581: 1564: 1535: 1513: 1499: 1487: 1468: 1456: 1430: 1409: 1403: 1386: 1371: 1355: 1334: 1318: 1305: 1287: 1281: 1259: 1247: 1219: 1213: 1200:{\displaystyle H_{2}(z)=z^{-1}+z^{-2},\,} 1196: 1184: 1168: 1146: 1140: 1123: 1111: 1095: 1067: 1061: 1020: 1018: 959: 931: 921: 916: 906: 895: 882: 877: 871: 367: 362: 339: 325: 320: 284: 278: 248: 205: 200: 162: 120:Learn how and when to remove this message 2835:Benedetto, Sergio, and Guido Montorsi. " 2656:Benedetto, Sergio, and Guido Montorsi. " 2566: 2318: 578: 468:with a hard-decision code, particularly 2649: 1964:) code can correct most of the errors. 859:of the input stream with the encoder's 821:serial concatenated convolutional codes 736: 464:. These codes are often implemented in 2018:hardware and in software on CPUs with 1038:A convolutional encoder is a discrete 768:The encoder on the picture above is a 2863:The Error Correcting Codes (ECC) Page 7: 2588:with an outer algebraic code (e.g., 1849:Free distance and error distribution 1837:This diagram gives us an idea about 1263:{\displaystyle H_{3}(z)=1+z^{-2}.\,} 58:adding citations to reliable sources 2010:is universally used as it provides 2274:as an error correction technique. 2180:{\displaystyle h^{2}=133_{o}=_{b}} 2121:{\displaystyle h^{1}=171_{o}=_{b}} 1009:is an impulse response for output 907: 615:) of 3. Generator polynomials are 611:) encoder with constraint length ( 548:all register values to the right ( 436:Where convolutional codes are used 25: 1795:binary cells will have 2 states. 764:Recursive and non-recursive codes 2623: This article incorporates 2618: 2596:inherent to turbo code designs. 1585:{\displaystyle f(z)=P(z)/Q(z)\,} 751: 739: 34: 2636:General Services Administration 227:is the raw input data rate and 45:needs additional citations for 2941:Error detection and correction 2300:is a technique used to make a 2168: 2161: 2109: 2102: 1718: 1704: 1659: 1656: 1650: 1638: 1632: 1623: 1614: 1608: 1578: 1572: 1561: 1555: 1546: 1540: 1510: 1507: 1493: 1480: 1421: 1415: 1299: 1293: 1231: 1225: 1158: 1152: 1079: 1073: 974: 968: 965: 946: 182: 164: 1: 2278:Punctured convolutional codes 2047:Soft output Viterbi algorithm 2040:Reed–Solomon error correction 1805:), and '0' in the right one ( 1787:A convolutional encoder is a 1434:{\displaystyle H_{2}(z)=1.\,} 1968:Decoding convolutional codes 1725:{\displaystyle H_{i}(1/z)\,} 1040:linear time-invariant system 2476: 2428: 2392: 2362: 2338: 2327: 2061:Popular convolutional codes 587:The figure below is a rate 2957: 2606:Quantum convolutional code 2560: 2548:Digital Video Broadcasting 2281: 2215:, has a constraint length 1971: 1776: 1001:is a sequence from output 2878:Convolutional codes (MIT) 2592:) addresses the issue of 2199:of the Viterbi algorithm 2029:algorithms, of which the 430:Infinite impulse response 2540:satellite communications 2535:communication standard. 1783:Trellis coded modulation 462:satellite communications 2720:Error correction coding 2201:increases exponentially 1762:{\displaystyle K=m+1\,} 783:The example encoder is 426:Finite impulse response 350:{\displaystyle n/k=1/2} 2631:Federal Standard 1037C 2625:public domain material 2573: 2293: 2261: 2231:Mars Exploration Rover 2204: 2188: 2181: 2122: 1995: 1931: 1859: 1831: 1763: 1726: 1681:is the maximum of the 1667: 1586: 1518: 1435: 1391: 1264: 1201: 1128: 1029: 997:is an input sequence, 984: 911: 842: 831: 812: 780: 584: 510:, where the logic is: 484:Convolutional encoding 449: 379: 351: 294: 263: 217: 189: 2570: 2291: 2262: 2194: 2182: 2123: 2068: 1981: 1932: 1876:correcting capability 1856: 1829: 1764: 1727: 1668: 1587: 1519: 1436: 1392: 1265: 1202: 1129: 1035:denotes convolution. 1030: 985: 891: 840: 829: 810: 778: 582: 531:generator polynomials 458:mobile communications 443: 380: 352: 295: 293:{\displaystyle 2^{v}} 264: 218: 190: 142:error-correcting code 2245: 2132: 2073: 2051:Maximum a posteriori 1889: 1789:finite state machine 1740: 1691: 1599: 1534: 1455: 1402: 1280: 1212: 1139: 1060: 1017: 870: 410:decoding algorithm. 361: 319: 277: 247: 199: 161: 69:"Convolutional code" 54:improve this article 2868:Matlab explanations 2260:{\displaystyle K=7} 2027:sequential decoding 1028:{\displaystyle {*}} 926: 887: 378:{\displaystyle 7/8} 262:{\displaystyle K-1} 216:{\displaystyle n/k} 2888:2017-08-30 at the 2574: 2542:, for example, in 2325:Puncturing matrix 2294: 2257: 2205: 2189: 2177: 2118: 2022:instruction sets. 2012:maximum likelihood 1996: 1927: 1860: 1832: 1791:. An encoder with 1759: 1722: 1683:polynomial degrees 1663: 1582: 1514: 1473: 1431: 1387: 1260: 1197: 1124: 1025: 980: 912: 873: 843: 832: 813: 781: 585: 450: 375: 347: 290: 259: 213: 185: 146:boolean polynomial 138:convolutional code 2857:David J.C. MacKay 2582:Shannon's theorem 2532: 2531: 2525: 2524: 2465: 2464: 2417: 2416: 2381: 2380: 2351: 2350: 2314:puncturing matrix 2008:Viterbi algorithm 1974:Viterbi algorithm 1954:concatenated code 1918: 1870:) is the minimal 1734:constraint length 1529:rational function 1464: 1381: 1044:transfer function 861:impulse responses 524:1+1 = 0 520:1+0 = 1 516:0+1 = 1 512:0+0 = 0 404:Viterbi algorithm 313:symbol puncturing 134:telecommunication 130: 129: 122: 104: 16:(Redirected from 2948: 2840: 2833: 2827: 2822: 2816: 2815: 2808: 2802: 2797: 2791: 2786: 2780: 2773: 2767: 2762: 2756: 2751: 2745: 2740: 2734: 2729: 2723: 2716: 2710: 2707: 2701: 2694: 2688: 2685: 2679: 2676: 2670: 2667: 2661: 2654: 2644: 2643: 2638:. Archived from 2622: 2621: 2477: 2429: 2393: 2363: 2339: 2319: 2266: 2264: 2263: 2258: 2240: 2237:to Saturn use a 2219:of 7 and a rate 2218: 2186: 2184: 2183: 2178: 2176: 2175: 2157: 2156: 2144: 2143: 2127: 2125: 2124: 2119: 2117: 2116: 2098: 2097: 2085: 2084: 1936: 1934: 1933: 1928: 1923: 1919: 1914: 1903: 1872:Hamming distance 1768: 1766: 1765: 1760: 1731: 1729: 1728: 1723: 1714: 1703: 1702: 1680: 1672: 1670: 1669: 1664: 1591: 1589: 1588: 1583: 1568: 1523: 1521: 1520: 1515: 1503: 1492: 1491: 1472: 1447: 1440: 1438: 1437: 1432: 1414: 1413: 1396: 1394: 1393: 1388: 1382: 1380: 1379: 1378: 1363: 1362: 1343: 1342: 1341: 1326: 1325: 1306: 1292: 1291: 1269: 1267: 1266: 1261: 1255: 1254: 1224: 1223: 1206: 1204: 1203: 1198: 1192: 1191: 1176: 1175: 1151: 1150: 1133: 1131: 1130: 1125: 1119: 1118: 1103: 1102: 1072: 1071: 1034: 1032: 1031: 1026: 1024: 1012: 1008: 1004: 1000: 996: 989: 987: 986: 981: 964: 963: 942: 941: 925: 920: 910: 905: 886: 881: 755: 743: 643: 633: 624: 610: 609: 603: 596: 595: 591: 525: 521: 517: 513: 493:memory registers 384: 382: 381: 376: 371: 356: 354: 353: 348: 343: 329: 299: 297: 296: 291: 289: 288: 272: 268: 266: 265: 260: 242: 238: 234: 230: 226: 222: 220: 219: 214: 209: 194: 192: 191: 188:{\displaystyle } 186: 125: 118: 114: 111: 105: 103: 62: 38: 30: 21: 18:Convolution code 2956: 2955: 2951: 2950: 2949: 2947: 2946: 2945: 2931: 2930: 2929: 2904: 2899: 2897:Further reading 2890:Wayback Machine 2849: 2844: 2843: 2834: 2830: 2823: 2819: 2810: 2809: 2805: 2798: 2794: 2787: 2783: 2774: 2770: 2763: 2759: 2752: 2748: 2741: 2737: 2730: 2726: 2718:Moon, Todd K. " 2717: 2713: 2708: 2704: 2695: 2691: 2686: 2682: 2677: 2673: 2668: 2664: 2655: 2651: 2628: 2619: 2617: 2614: 2602: 2565: 2559: 2334: 2286: 2280: 2243: 2242: 2238: 2227:Mars Pathfinder 2216: 2213:Voyager program 2167: 2148: 2135: 2130: 2129: 2108: 2089: 2076: 2071: 2070: 2063: 2036:Pioneer program 1976: 1970: 1904: 1898: 1887: 1886: 1851: 1818: 1811: 1804: 1785: 1779:Trellis (graph) 1775: 1773:Trellis diagram 1738: 1737: 1694: 1689: 1688: 1678: 1597: 1596: 1532: 1531: 1527:where, for any 1483: 1453: 1452: 1445: 1405: 1400: 1399: 1367: 1351: 1344: 1330: 1314: 1307: 1283: 1278: 1277: 1243: 1215: 1210: 1209: 1180: 1164: 1142: 1137: 1136: 1107: 1091: 1063: 1058: 1057: 1015: 1014: 1010: 1006: 1002: 998: 994: 955: 927: 868: 867: 851: 791:non-systematic. 766: 759: 756: 747: 744: 718: 711: 704: 696: 689: 682: 674: 667: 660: 653: 641: 635: 631: 625: 622: 616: 605: 599: 598: 593: 589: 588: 575: 568: 561: 554: 539: 523: 519: 515: 511: 486: 438: 392: 359: 358: 317: 316: 280: 275: 274: 270: 245: 244: 240: 236: 232: 228: 224: 197: 196: 159: 158: 126: 115: 109: 106: 63: 61: 51: 39: 28: 23: 22: 15: 12: 11: 5: 2954: 2952: 2944: 2943: 2933: 2932: 2928: 2927: 2923: 2920: 2916: 2912: 2909: 2905: 2903: 2900: 2898: 2895: 2894: 2893: 2880: 2875: 2870: 2865: 2860: 2848: 2847:External links 2845: 2842: 2841: 2828: 2817: 2803: 2792: 2781: 2768: 2757: 2746: 2735: 2724: 2711: 2702: 2689: 2680: 2671: 2662: 2648: 2647: 2646: 2645: 2642:on 2022-01-22. 2613: 2610: 2609: 2608: 2601: 2598: 2561:Main article: 2558: 2555: 2530: 2529: 2526: 2523: 2522: 2519: 2516: 2513: 2510: 2507: 2504: 2500: 2499: 2496: 2493: 2490: 2487: 2484: 2481: 2474: 2470: 2469: 2466: 2463: 2462: 2459: 2456: 2453: 2450: 2446: 2445: 2442: 2439: 2436: 2433: 2426: 2422: 2421: 2418: 2415: 2414: 2411: 2408: 2404: 2403: 2400: 2397: 2390: 2386: 2385: 2382: 2379: 2378: 2375: 2371: 2370: 2367: 2360: 2356: 2355: 2352: 2349: 2348: 2344: 2343: 2336: 2330: 2329: 2326: 2323: 2284:Punctured code 2279: 2276: 2256: 2253: 2250: 2174: 2170: 2166: 2163: 2160: 2155: 2151: 2147: 2142: 2138: 2115: 2111: 2107: 2104: 2101: 2096: 2092: 2088: 2083: 2079: 2062: 2059: 2055:BCJR algorithm 1988:16-QAM, 64-QAM 1969: 1966: 1938: 1937: 1926: 1922: 1917: 1913: 1910: 1907: 1901: 1897: 1894: 1850: 1847: 1816: 1809: 1802: 1774: 1771: 1757: 1754: 1751: 1748: 1745: 1736:is defined as 1720: 1717: 1713: 1709: 1706: 1701: 1697: 1675: 1674: 1661: 1658: 1655: 1652: 1649: 1646: 1643: 1640: 1637: 1634: 1631: 1628: 1625: 1622: 1619: 1616: 1613: 1610: 1607: 1604: 1580: 1577: 1574: 1571: 1567: 1563: 1560: 1557: 1554: 1551: 1548: 1545: 1542: 1539: 1525: 1524: 1512: 1509: 1506: 1502: 1498: 1495: 1490: 1486: 1482: 1479: 1476: 1471: 1467: 1463: 1460: 1442: 1441: 1429: 1426: 1423: 1420: 1417: 1412: 1408: 1397: 1385: 1377: 1374: 1370: 1366: 1361: 1358: 1354: 1350: 1347: 1340: 1337: 1333: 1329: 1324: 1321: 1317: 1313: 1310: 1304: 1301: 1298: 1295: 1290: 1286: 1271: 1270: 1258: 1253: 1250: 1246: 1242: 1239: 1236: 1233: 1230: 1227: 1222: 1218: 1207: 1195: 1190: 1187: 1183: 1179: 1174: 1171: 1167: 1163: 1160: 1157: 1154: 1149: 1145: 1134: 1122: 1117: 1114: 1110: 1106: 1101: 1098: 1094: 1090: 1087: 1084: 1081: 1078: 1075: 1070: 1066: 1023: 991: 990: 979: 976: 973: 970: 967: 962: 958: 954: 951: 948: 945: 940: 937: 934: 930: 924: 919: 915: 909: 904: 901: 898: 894: 890: 885: 880: 876: 850: 847: 765: 762: 761: 760: 757: 750: 748: 745: 738: 732: 731: 728: 721: 720: 716: 709: 702: 697: 694: 687: 680: 675: 672: 665: 658: 651: 639: 629: 620: 573: 566: 559: 552: 537: 485: 482: 437: 434: 432:(IIR) filter. 400:Andrew Viterbi 391: 388: 374: 370: 366: 346: 342: 338: 335: 332: 328: 324: 287: 283: 258: 255: 252: 212: 208: 204: 184: 181: 178: 175: 172: 169: 166: 128: 127: 42: 40: 33: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 2953: 2942: 2939: 2938: 2936: 2924: 2921: 2917: 2913: 2910: 2907: 2906: 2901: 2896: 2891: 2887: 2884: 2881: 2879: 2876: 2874: 2871: 2869: 2866: 2864: 2861: 2858: 2854: 2851: 2850: 2846: 2838: 2832: 2829: 2826: 2821: 2818: 2813: 2807: 2804: 2801: 2796: 2793: 2790: 2785: 2782: 2778: 2772: 2769: 2766: 2761: 2758: 2755: 2750: 2747: 2744: 2739: 2736: 2733: 2728: 2725: 2721: 2715: 2712: 2706: 2703: 2699: 2693: 2690: 2684: 2681: 2675: 2672: 2666: 2663: 2659: 2653: 2650: 2641: 2637: 2633: 2632: 2626: 2616: 2615: 2611: 2607: 2604: 2603: 2599: 2597: 2595: 2591: 2587: 2586:Concatenation 2583: 2579: 2569: 2564: 2556: 2554: 2551: 2549: 2545: 2541: 2536: 2527: 2520: 2517: 2514: 2511: 2508: 2505: 2502: 2501: 2497: 2494: 2491: 2488: 2485: 2482: 2479: 2478: 2475: 2472: 2471: 2467: 2460: 2457: 2454: 2451: 2448: 2447: 2443: 2440: 2437: 2434: 2431: 2430: 2427: 2424: 2423: 2419: 2412: 2409: 2406: 2405: 2401: 2398: 2395: 2394: 2391: 2388: 2387: 2383: 2376: 2373: 2372: 2368: 2365: 2364: 2361: 2358: 2357: 2353: 2346: 2345: 2341: 2340: 2337: 2332: 2331: 2324: 2321: 2320: 2317: 2315: 2311: 2307: 2303: 2299: 2290: 2285: 2277: 2275: 2273: 2268: 2254: 2251: 2248: 2236: 2235:Cassini probe 2232: 2228: 2224: 2222: 2214: 2209: 2202: 2198: 2193: 2172: 2164: 2158: 2153: 2149: 2145: 2140: 2136: 2113: 2105: 2099: 2094: 2090: 2086: 2081: 2077: 2067: 2060: 2058: 2056: 2052: 2048: 2043: 2041: 2037: 2032: 2028: 2023: 2021: 2017: 2013: 2009: 2005: 2001: 1993: 1989: 1985: 1980: 1975: 1967: 1965: 1963: 1959: 1955: 1949: 1947: 1943: 1924: 1920: 1915: 1911: 1908: 1905: 1899: 1895: 1892: 1885: 1884: 1883: 1881: 1877: 1873: 1869: 1865: 1864:free distance 1855: 1848: 1846: 1844: 1840: 1835: 1828: 1824: 1821: 1815: 1808: 1801: 1796: 1794: 1790: 1784: 1780: 1772: 1770: 1755: 1752: 1749: 1746: 1743: 1735: 1715: 1711: 1707: 1699: 1695: 1686: 1684: 1653: 1647: 1644: 1641: 1635: 1629: 1626: 1617: 1611: 1605: 1602: 1595: 1594: 1593: 1575: 1569: 1565: 1558: 1552: 1549: 1543: 1537: 1530: 1504: 1500: 1496: 1488: 1484: 1477: 1474: 1469: 1461: 1458: 1451: 1450: 1449: 1427: 1424: 1418: 1410: 1406: 1398: 1383: 1375: 1372: 1368: 1364: 1359: 1356: 1352: 1348: 1345: 1338: 1335: 1331: 1327: 1322: 1319: 1315: 1311: 1308: 1302: 1296: 1288: 1284: 1276: 1275: 1274: 1256: 1251: 1248: 1244: 1240: 1237: 1234: 1228: 1220: 1216: 1208: 1193: 1188: 1185: 1181: 1177: 1172: 1169: 1165: 1161: 1155: 1147: 1143: 1135: 1120: 1115: 1112: 1108: 1104: 1099: 1096: 1092: 1088: 1085: 1082: 1076: 1068: 1064: 1056: 1055: 1054: 1051: 1049: 1045: 1041: 1036: 1021: 977: 971: 960: 956: 952: 949: 943: 938: 935: 932: 928: 922: 917: 913: 902: 899: 896: 892: 888: 883: 878: 874: 866: 865: 864: 862: 858: 857: 848: 846: 839: 835: 828: 824: 822: 818: 809: 805: 802: 799: 796: 793: 792: 788: 787: 777: 773: 771: 770:non-recursive 763: 754: 749: 742: 737: 735: 729: 726: 725: 724: 715: 708: 701: 698: 693: 686: 679: 676: 671: 664: 657: 650: 647: 646: 645: 638: 628: 619: 614: 608: 602: 581: 577: 572: 565: 558: 551: 547: 543: 536: 532: 529: 509: 506: 502: 498: 494: 491: 483: 481: 479: 478:Shannon limit 475: 471: 467: 466:concatenation 463: 459: 455: 454:digital video 447: 442: 435: 433: 431: 427: 422: 420: 416: 415:Claude Berrou 411: 409: 405: 401: 397: 389: 387: 372: 368: 364: 344: 340: 336: 333: 330: 326: 322: 314: 309: 307: 301: 285: 281: 256: 253: 250: 235:is less than 210: 206: 202: 179: 176: 173: 170: 167: 154: 152: 147: 143: 140:is a type of 139: 135: 124: 121: 113: 102: 99: 95: 92: 88: 85: 81: 78: 74: 71: –  70: 66: 65:Find sources: 59: 55: 49: 48: 43:This article 41: 37: 32: 31: 19: 2902:Publications 2831: 2820: 2806: 2795: 2784: 2771: 2760: 2749: 2738: 2727: 2714: 2705: 2692: 2683: 2674: 2665: 2652: 2640:the original 2630: 2594:error floors 2590:Reed–Solomon 2575: 2552: 2546:systems and 2537: 2533: 2313: 2309: 2305: 2301: 2295: 2269: 2225: 2220: 2210: 2206: 2044: 2024: 2003: 1997: 1962:Reed–Solomon 1950: 1945: 1941: 1939: 1879: 1875: 1867: 1863: 1861: 1842: 1838: 1836: 1833: 1822: 1813: 1806: 1799: 1797: 1792: 1786: 1733: 1687: 1676: 1526: 1443: 1272: 1052: 1037: 992: 860: 854: 852: 844: 833: 814: 803: 800: 797: 794: 790: 784: 782: 769: 767: 733: 722: 713: 706: 699: 691: 684: 677: 669: 662: 655: 648: 636: 626: 617: 612: 606: 600: 586: 570: 563: 556: 549: 541: 534: 527: 496: 489: 487: 470:Reed–Solomon 451: 446:Interleaving 423: 412: 393: 310: 302: 155: 137: 131: 116: 107: 97: 90: 83: 76: 64: 52:Please help 47:verification 44: 2578:turbo codes 2335:(No perf.) 1984:QPSK, 8-PSK 1048:Z-transform 856:convolution 815:Useful for 474:turbo codes 472:. Prior to 419:turbo codes 396:Peter Elias 306:block codes 2915:1646-1654. 2825:Turbo code 2612:References 2563:Turbo code 2322:Code rate 2298:Puncturing 2282:See also: 2197:complexity 2000:algorithms 1972:See also: 1958:interleave 1777:See also: 1732:, and the 823:(SCCC's). 786:systematic 623:= (1,1,1), 80:newspapers 1909:− 1648:⁡ 1630:⁡ 1606:⁡ 1478:⁡ 1373:− 1365:− 1357:− 1349:− 1336:− 1320:− 1249:− 1186:− 1170:− 1113:− 1097:− 1022:∗ 953:∗ 936:− 908:∞ 893:∑ 642:= (1,0,1) 632:= (0,1,1) 569:moves to 555:moves to 546:bit shift 499:modulo-2 456:, radio, 254:− 2935:Category 2919:573-592. 2886:Archived 2600:See also 2544:Intelsat 2233:and the 2223:of 1/2. 1998:Several 1921:⌋ 1900:⌊ 1858:weights. 1839:decoding 508:XOR gate 223:, where 110:May 2015 2165:1011011 2106:1111001 1843:correct 1685:of the 1603:polydeg 1475:polydeg 1444:Define 604:⁄ 592:⁄ 526:), and 505:Boolean 390:History 151:trellis 94:scholar 2006:, the 1990:) and 993:where 634:, and 501:adders 96:  89:  82:  75:  67:  2926:1987. 2855:, by 2627:from 1677:Then 101:JSTOR 87:books 2473:7/8 2425:5/6 2389:3/4 2359:2/3 2031:Fano 2020:SIMD 2016:VLSI 1862:The 1812:). ( 1781:and 1013:and 817:LDPC 408:BCJR 136:, a 73:news 2354:10 2333:1/2 2272:GSM 2150:133 2091:171 1992:LLR 1645:deg 1627:deg 1621:max 1466:max 1448:by 300:). 132:In 56:by 2937:: 2634:. 2550:. 2528:3 2521:0 2518:1 2515:0 2512:1 2509:1 2506:1 2503:1 2498:1 2495:0 2492:1 2489:0 2486:0 2483:0 2480:1 2468:4 2461:0 2458:1 2455:0 2452:1 2449:1 2444:1 2441:0 2438:1 2435:0 2432:1 2420:5 2413:0 2410:1 2407:1 2402:1 2399:0 2396:1 2384:6 2377:1 2374:1 2369:0 2366:1 2347:1 2342:1 2229:, 2128:, 2057:. 2049:. 1986:, 1810:−1 1592:, 1428:1. 1050:. 1005:, 863:: 717:−1 712:+ 705:= 695:−1 690:+ 683:= 673:−1 668:+ 661:+ 654:= 574:−1 562:, 522:, 518:, 514:, 480:. 421:. 2814:. 2310:n 2306:n 2304:/ 2302:m 2255:7 2252:= 2249:K 2239:K 2221:r 2217:K 2173:b 2169:] 2162:[ 2159:= 2154:o 2146:= 2141:2 2137:h 2114:b 2110:] 2103:[ 2100:= 2095:o 2087:= 2082:1 2078:h 2004:k 1946:t 1942:t 1925:. 1916:2 1912:1 1906:d 1896:= 1893:t 1880:t 1878:( 1868:d 1866:( 1817:1 1814:m 1807:m 1803:0 1800:m 1793:n 1756:1 1753:+ 1750:m 1747:= 1744:K 1719:) 1716:z 1712:/ 1708:1 1705:( 1700:i 1696:H 1679:m 1673:. 1660:) 1657:) 1654:Q 1651:( 1642:, 1639:) 1636:P 1633:( 1624:( 1618:= 1615:) 1612:f 1609:( 1579:) 1576:z 1573:( 1570:Q 1566:/ 1562:) 1559:z 1556:( 1553:P 1550:= 1547:) 1544:z 1541:( 1538:f 1511:) 1508:) 1505:z 1501:/ 1497:1 1494:( 1489:i 1485:H 1481:( 1470:i 1462:= 1459:m 1446:m 1425:= 1422:) 1419:z 1416:( 1411:2 1407:H 1384:, 1376:3 1369:z 1360:2 1353:z 1346:1 1339:3 1332:z 1328:+ 1323:1 1316:z 1312:+ 1309:1 1303:= 1300:) 1297:z 1294:( 1289:1 1285:H 1257:. 1252:2 1245:z 1241:+ 1238:1 1235:= 1232:) 1229:z 1226:( 1221:3 1217:H 1194:, 1189:2 1182:z 1178:+ 1173:1 1166:z 1162:= 1159:) 1156:z 1153:( 1148:2 1144:H 1121:, 1116:2 1109:z 1105:+ 1100:1 1093:z 1089:+ 1086:1 1083:= 1080:) 1077:z 1074:( 1069:1 1065:H 1011:j 1007:h 1003:j 999:y 995:x 978:, 975:] 972:i 969:[ 966:) 961:j 957:h 950:x 947:( 944:= 939:k 933:i 929:x 923:j 918:k 914:h 903:0 900:= 897:k 889:= 884:j 879:i 875:y 719:. 714:m 710:1 707:m 703:3 700:n 692:m 688:0 685:m 681:2 678:n 670:m 666:0 663:m 659:1 656:m 652:1 649:n 640:3 637:G 630:2 627:G 621:1 618:G 613:k 607:n 601:m 597:( 594:3 590:1 571:m 567:0 564:m 560:0 557:m 553:1 550:m 542:n 538:1 535:m 528:n 497:n 490:k 373:8 369:/ 365:7 345:2 341:/ 337:1 334:= 331:k 327:/ 323:n 286:v 282:2 271:v 257:1 251:K 241:K 237:k 233:n 229:k 225:n 211:k 207:/ 203:n 183:] 180:K 177:, 174:k 171:, 168:n 165:[ 123:) 117:( 112:) 108:( 98:· 91:· 84:· 77:· 50:. 20:)

Index

Convolution code

verification
improve this article
adding citations to reliable sources
"Convolutional code"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
telecommunication
error-correcting code
boolean polynomial
trellis
block codes
symbol puncturing
Peter Elias
Andrew Viterbi
Viterbi algorithm
BCJR
Claude Berrou
turbo codes
Finite impulse response
Infinite impulse response

Interleaving
digital video
mobile communications

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.