Papers
Topics
Authors
Recent
Search
2000 character limit reached

SC-PCC Decoder: Efficient Iterative Threshold Decoding

Updated 28 April 2026
  • PCCC decoders are low-complexity iterative threshold decoders for turbo-like code constructions that use convolutional self-orthogonal component codes (CSOCs) for robust error correction.
  • Spatial coupling divides information blocks into staggered sub-blocks, enabling sliding-window iterative decoding to attain near-MAP threshold performance with reduced latency.
  • The SC-PCC architecture achieves significant coding gains and hardware efficiency by combining APP threshold decoding with scalable linear complexity and parallel processing.

A Parallel-Concatenated Code (PCC) decoder, and specifically its spatially coupled variant (SC-PCC), constitutes a class of low-complexity iterative threshold decoders designed for turbo-like code constructions. When equipped with convolutional self-orthogonal component codes (CSOCs) and suboptimal a posteriori probability (APP) threshold decoding, the SC-PCC decoder approaches the maximum a posteriori (MAP) performance threshold and achieves significant coding gains with reduced power, latency, and implementation complexity relative to optimal algorithms (Cummins et al., 2021).

1. Code Structure and Spatial Coupling

SC-PCCs are constructed using parallel concatenation of two CSOCs, each encoding a distinct permutation of the input. Each CSOC is a rate-Rc=kk+1R_c = \frac{k}{k+1} systematic convolutional code defined by constraint length ν=k(m+1)\nu = k(m+1) and memory mm. Self-orthogonality ensures that for each information error bit el(i)e^{(i)}_l, there are JJ parity-check equations Aj(i)A_j^{(i)}, with no other error bit involved in more than one check. This structure guarantees a threshold decoding error-correction capability of J/2\lfloor J/2 \rfloor.

Example parameterization for a rate-$2/3$ CSOC:

  • k=2k=2, m=13m=13, ν=k(m+1)\nu = k(m+1)0
  • Generator sequences (octal):
    • ν=k(m+1)\nu = k(m+1)1
    • ν=k(m+1)\nu = k(m+1)2
  • ν=k(m+1)\nu = k(m+1)3, code rate ν=k(m+1)\nu = k(m+1)4

Spatial coupling is realized by dividing each information block ν=k(m+1)\nu = k(m+1)5 (length ν=k(m+1)\nu = k(m+1)6) into ν=k(m+1)\nu = k(m+1)7 sub-blocks, forming a “coupled source matrix” ν=k(m+1)\nu = k(m+1)8 such that each column is constructed from staggered sub-blocks across time and coupling depth. The matrix is zero-padded at boundaries, facilitating coupling across ν=k(m+1)\nu = k(m+1)9 blocks. Parallel interleaving and demultiplexing generate a permuted matrix mm0.

At encoder output, for each time mm1, both mm2 and mm3 are encoded by their respective CSOCs (each terminated by mm4 zeros), resulting in parity outputs mm5 and mm6 concatenated with the systematic output mm7: mm8 The overall SC-PCC code rate is mm9 for el(i)e^{(i)}_l0.

2. APP Threshold Decoding of CSOCs

Threshold decoding for CSOCs involves syndrome formation, LLR computation, and weighted thresholding:

  1. Syndrome Formation: For each received symbol el(i)e^{(i)}_l1, a hard decision el(i)e^{(i)}_l2 is made. The error bit el(i)e^{(i)}_l3 is computed. The syndrome is:

el(i)e^{(i)}_l4

  1. LLR (Reliability Factor):

el(i)e^{(i)}_l5

where el(i)e^{(i)}_l6 includes any a priori LLR from external decoder feedback.

  1. Self-Orthogonal Check Weighting: For each check el(i)e^{(i)}_l7, the extrinsic weight is formed:

el(i)e^{(i)}_l8

using the box-plus operation.

  1. Threshold Decision Rule: The decoded estimate is:

el(i)e^{(i)}_l9

where the full LLR argument includes self-orthogonal check extrinsic weight sums.

3. Sliding-Window Iterative Decoding Algorithm

The SC-PCC decoding algorithm employs a windowed message-passing procedure:

  • A window size JJ0 is selected, targeting block JJ1.
  • The received data for JJ2 contiguous blocks is demultiplexed into coupled channel inputs for the two parallel streams.
  • Two APP threshold decoders process their respective streams, exchanging extrinsic LLRs per block via turbo-style iterations.

The schedule is divided into vertical iterations (JJ3 forward sweeps per block) and horizontal iterations (JJ4 full forward-reverse sweeps). For each target block,

JJ5

component decoder calls are made. Hard decisions are output after JJ6 horizontal iterations or on successful CRC.

Pseudocode (verbatim from (Cummins et al., 2021)):

k=2k=27

4. Latency, Memory, and Complexity

Latency

  • Encoding: Requires buffering JJ7 input blocks, leading to latency JJ8.
  • Decoding: Windowed decoding of size JJ9 adds latency Aj(i)A_j^{(i)}0. Minimum window for Aj(i)A_j^{(i)}1 is Aj(i)A_j^{(i)}2.

Memory

  • Encoder memory: Aj(i)A_j^{(i)}3; for uncoupled PCC: Aj(i)A_j^{(i)}4.
  • Decoder memory: Buffer for extrinsic LLRs Aj(i)A_j^{(i)}5, interleaver Aj(i)A_j^{(i)}6, syndrome/channel value registers per component Aj(i)A_j^{(i)}7; total Aj(i)A_j^{(i)}8.

Computational Complexity

  • For block length Aj(i)A_j^{(i)}9, average nonzero taps per generator J/2\lfloor J/2 \rfloor0 with J/2\lfloor J/2 \rfloor1:
Operation Per Component Decoder
Multiplications J/2\lfloor J/2 \rfloor2
Additions J/2\lfloor J/2 \rfloor3
Box-plus ops J/2\lfloor J/2 \rfloor4

Total for sliding window: J/2\lfloor J/2 \rfloor5

No BCJR trellis is employed, so the complexity scales linearly in J/2\lfloor J/2 \rfloor6. Parallelism is possible by decoding J/2\lfloor J/2 \rfloor7 information bits simultaneously ahead of syndrome updates.

5. Performance and Threshold Saturation

Performance evaluation in (Cummins et al., 2021) demonstrates:

  • For rate J/2\lfloor J/2 \rfloor8 (J/2\lfloor J/2 \rfloor9), SC-PCC ($2/3$0) achieves a $2/3$1 gain over standard PCC at BER $2/3$2 with similar complexity and latency.
  • For rate $2/3$3 ($2/3$4), SC-PCC ($2/3$5) exhibits a $2/3$6 improvement at BER $2/3$7, and increasing $2/3$8 to $2/3$9 yields k=2k=20 gain.

Spatial coupling leads to threshold saturation: the iterative decoder’s waterfall region approaches the MAP threshold of the base PCC ensemble, and increases in coupling memory (k=2k=21) or decoding window (k=2k=22) further advance performance at the cost of higher latency and memory demands. A window k=2k=23 is generally sufficient to exploit most coupling gains. Excessively large k=2k=24 can degrade LLR reliability due to edge effects, which may be mitigated by LLR scaling or optimized message-passing schedules.

6. Hardware and Implementation Considerations

The SC-PCC decoder enables efficient VLSI design due to several attributes:

  • Linear complexity in constraint length k=2k=25, avoiding the computational intensity of BCJR-based trellis decoding.
  • High natural parallelism, as k=2k=26 information bits are independently threshold-decoded prior to syndrome updates.
  • Hardware operations are restricted to additions, comparisons, and box-plus computations, precluding the need for exponentiation or division, resulting in reduced power consumption.

7. Significance and Broader Impact

The SC-PCC decoder with CSOC components and APP threshold decoding achieves notable coding gains over uncoupled PCCs at equivalent complexity and latency by leveraging spatial coupling. The resulting threshold saturation phenomenon demonstrates that performance can approach theoretical MAP limits using practical, scalable decoding rules. This framework highlights the utility of spatial coupling in enhancing the performance of turbo-like constructions while maintaining architectural efficiency (Cummins et al., 2021).

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to PCCC Decoder.