Content deleted Content added
→top: Fix a wikilink - the name is singular |
Citation bot (talk | contribs) Removed parameters. | Use this bot. Report bugs. | Suggested by Headbomb | Category:CS1 maint: DOI inactive as of June 2024 | #UCB_Category 289/305 |
||
(38 intermediate revisions by 23 users not shown) | |||
Line 1:
'''Serial concatenated convolutional codes''' ('''SCCC''') are a class of [[forward error correction]] (FEC) codes highly suitable for [[Turbo code|turbo]] (iterative) decoding.<ref name="Minoli2008">{{cite book|last=Minoli|first=Daniel|title=Satellite Systems Engineering in an IPv6 Environment |chapter=5 Error Correction Techniques §5.1.4 Turbo Codes |chapter-url=https://books.google.com/books?id=4yJi1UQDPp8C&pg=PA152|accessdate=4 June 2014|date=2008 |publisher=CRC Press|isbn=9781420078695|pages=152–}}</ref><ref name="RyanLin2009">{{cite book|last1=Ryan|first1=William|last2=Lin|first2=Shu|title=Channel Codes: Classical and Modern |chapter=7.3 Serial-Concatenated Convolutional Codes |chapter-url=https://books.google.com/books?id=0gwqxBU_t-QC&pg=PA320|accessdate=4 June 2014|date=2009 |publisher=Cambridge University Press|isbn=9781139483018|pages=320–}}</ref> Data to be transmitted over a noisy channel may first be encoded using an SCCC. Upon reception, the coding may be used to remove any errors introduced during transmission. The decoding is performed by repeated decoding and [de]interleaving of the received symbols.
SCCCs typically include an [[inner code]], an [[outer code]], and a linking interleaver. A distinguishing feature of SCCCs is the use of a recursive [[convolutional code]] as the inner code. The recursive inner code provides the 'interleaver gain' for the SCCC, which is the source of the excellent performance of these codes.
Prior forms of [[Concatenated error correction code|serial concatenated codes]] typically did not use recursive inner codes. Additionally, the constituent codes used in prior forms of serial concatenated codes were generally too complex for reasonable soft-in-soft-out ([[Soft-in soft-out decoder|SISO]]) decoding.
▲'''Serial concatenated convolutional codes (SCCC)''' were analyzed in the 1990's in a series of publications from NASA's [[Jet Propulsion Laboratory]] (JPL). This research yielded a form of turbo-like serial concatenated codes that 1) were iteratively ('turbo') decodable with reasonable complexity, and 2) gave error correction performance comparable with the [[turbo codes]]. The analysis of SCCCs was spawned in part by the earlier discovery of [[turbo codes]] in 1993.
Serial concatenated convolutional codes have not found
▲SCCCs typically include an inner code, an outer code, and a linking interleaver. A distinguishing feature of SCCCs is the use of a recursive [[convolutional code]] as the inner code. The recursive inner code provides the 'interleaver gain' for the SCCC, which is the source of the excellent performance of these codes.
US patent 6,023,783 covers some forms of SCCCs. The patent expired on May 15, 2016.<ref>{{cite patent |url=https://www.google.com/patents/US6023783 |country=US |number=6023783 |invent1=Dariush Divsalar |invent2=Fabrizio Pollara |status=Expired |title=Hybrid concatenated codes and iterative decoding |gdate=2000-02-08}}</ref>
▲Prior forms of [[Concatenated error correction code|serial concatenated codes]] typically did not use recursive inner codes. Additionally, the constituent codes used in prior forms of serial concatenated codes were generally too complex for reasonable soft-in-soft-out ([[Soft-in soft-out decoder|SISO]]) decoding. SISO decoding is considered essential for turbo decoding.
▲Serial concatenated convolutional codes have not found wide spread commercial use, although they were proposed for communications standards such as [[DVB-S2]]. Nonetheless, the analysis of SCCCs has provided insight into the performance and bounds of all types of iterative decodable codes including [[turbo codes]] and [[LDPC]] codes.
== History ==
Serial concatenated convolutional codes were first analyzed
Additional analysis of SCCCs was done in "Coding Theorems for 'Turbo-Like' Codes" by D. Divsalar, Hui Jin, and Robert J. McEliece.<ref>{{cite web|url=http://www.mif.vu.lt/~skersys/vsd/turbo/Allerton98.pdf |title=Coding Theorems for "Turbo-Like" Codes
|first1=Dariush |last1=Divsalar |first2=Hui |last2=Jin |first3=Robert J. |last3=McEliece |publisher=Jet Propulsion Laboratory, California Institute of Technology |date=1998 |accessdate=2014-06-04}}</ref> This paper analyzed repeat-accumulate (RA) codes which are the serial concatenation of an inner two-state recursive convolutional code (also called an 'accumulator' or parity-check code) with a simple repeat code as the outer code, with both codes linked by an interleaver. SCCC codes were further analyzed in
== Example Encoder ==
Line 29 ⟶ 25:
Fig 1 is an example of a SCCC.
[[File:
The example encoder is
A recursive inner convolutional code is preferable for turbo decoding of the SCCC. The inner code may be punctured to a rate as high as 1/1 with reasonable performance.
Line 37 ⟶ 33:
== Example Decoder ==
An example of an
[[File:
The SCCC decoder includes two soft-in-soft-out (SISO) decoders and an interleaver. While shown as separate units, the two SISO decoders may share all or part of their circuitry. The SISO decoding may be done is serial or parallel fashion, or some combination thereof. The SISO decoding is typically done using [[Maximum a posteriori]] (MAP) decoders using the [[BCJR]] algorithm.
== Performance ==
SCCCs provide performance comparable to other iteratively decodable codes including turbo codes and [[LDPC]] codes. They are noted for having slightly worse performance at lower SNR environments (i.e. worse waterfall region), but slightly better performance at higher SNR environments (i.e. lower error floor).
== See also ==
Line 63 ⟶ 51:
* [[BCJR algorithm]]
* [[Low-density parity-check code]]
* [[Repeat-accumulate code]]
* [[Turbo equalizer]]
Line 70 ⟶ 59:
== External links ==
*{{cite journal |first=Dave |last=Forney |date=2009 |journal=Scholarpedia |volume=4 |issue=2 |page=8374 |title=Concatenated codes|doi=10.4249/scholarpedia.8374 |bibcode=2009SchpJ...4.8374F |doi-access=free }}
[[Category:Data]]
[[Category:Error detection and correction]]
[[Category:Encodings]]
▲[http://www.mif.vu.lt/~skersys/vsd/turbo/ryan_chapter.pdf "Concatenated Convolutional Codes and Iterative Decoding", Willian E. Ryan]
|