PCCC

Parallel Concatenated Convolutional Code

Physical Layer
Introduced in R99
PCCC, commonly known as Turbo Coding, is a powerful forward error correction (FEC) scheme used in 3GPP wireless standards. It employs two parallel convolutional encoders separated by an interleaver to generate redundant parity bits. This structure enables near-Shannon-limit performance, dramatically improving data reliability and spectral efficiency in channels with high noise and interference.

Description

Parallel Concatenated Convolutional Code (PCCC), universally recognized as the foundation of Turbo Coding, is a sophisticated channel coding scheme. Its architecture is built around the parallel concatenation of two identical, simple recursive systematic convolutional (RSC) encoders. The key innovation is an interleaver (Π) placed before the second encoder. The input data sequence (block of k bits) is fed directly to the first RSC encoder and also to the interleaver, which pseudo-randomly reorders the bits. The scrambled sequence is then input to the second RSC encoder.

This process produces three output sequences: the original systematic bits (unchanged input bits) and two sets of parity bits—one from each encoder. These are then multiplexed and transmitted. The decoder employs an iterative feedback mechanism, typically using the BCJR (Bahl, Cocke, Jelinek, Raviv) or MAP (Maximum A Posteriori) algorithm implemented in a structure with two soft-input soft-output (SISO) decoders. Each SISO decoder corresponds to one of the constituent encoders. They exchange probabilistic information (extrinsic information) about each bit in an iterative loop. The first decoder uses the received systematic bits and its parity bits, along with initial estimates, to produce soft outputs. These outputs, after subtracting the input information (to form extrinsic info), are interleaved and fed as a priori information to the second decoder. The second decoder processes the interleaved systematic bits and the second set of parity bits, along with this new information, to produce refined soft outputs. This extrinsic information is then de-interleaved and fed back to the first decoder for the next iteration. This iterative exchange allows the decoders to progressively correct each other's uncertainties, converging on a highly reliable estimate of the original data after several iterations.

Its role in the network is fundamental at the physical layer of the air interface. In 3G UMTS, it is the primary channel coding scheme for high-speed data channels (e.g., DCH, HS-DSCH). In LTE, it is used for the Physical Downlink Shared Channel (PDSCH), Physical Uplink Shared Channel (PUSCH), and the Physical Broadcast Channel (PBCH). By providing extremely robust error correction, PCCC allows the system to operate at higher code rates (less redundancy) for a given target error rate, or to maintain reliable communication at much lower signal-to-noise ratios. This directly translates to higher data throughput, greater cell coverage, and improved performance at cell edges, which are critical for delivering consistent user experience.

Purpose & Motivation

PCCC was developed to solve the fundamental challenge of approaching the Shannon limit—the theoretical maximum capacity of a noisy channel—with practical computational complexity. Before its invention in 1993, convolutional codes and Reed-Solomon codes were standard, but their performance fell short of the Shannon limit by several decibels. Closing this gap required either excessively complex codes or lower spectral efficiency. PCCC/Turbo coding provided a breakthrough, achieving performance within 0.5 dB of the limit with manageable iterative decoding, making high-efficiency digital communication over very noisy channels feasible.

The primary problem it addresses is the reliable transmission of high-speed digital data over the inherently unreliable and interference-prone wireless radio channel. For 3G UMTS, which promised multimedia and internet services, traditional coding was insufficient to deliver the required quality of service for packet data. PCCC enabled the Wideband CDMA (W-CDMA) air interface to support variable and high data rates with robust link performance. Its adoption was motivated by the need for a coding scheme that could adapt to rapidly changing channel conditions (fast fading) while maintaining a good bit error rate (BER) without requiring excessive transmit power, which would cause more interference.

Furthermore, PCCC provided the necessary performance margin to support advanced radio features like Hybrid ARQ (HARQ). In HARQ, incremental redundancy is transmitted if the first decoding fails. The iterative nature of Turbo decoding synergizes perfectly with HARQ, as each retransmission provides additional parity bits that can be seamlessly incorporated into the iterative decoding process, leading to powerful joint combining gains. This combination became a cornerstone for high-speed downlink and uplink packet access (HSDPA/HSUPA) in 3G and was carried forward as a fundamental technology in LTE and 5G NR, enabling the high spectral efficiency that defines modern mobile broadband.

Key Features

  • Parallel concatenation of two recursive systematic convolutional (RSC) encoders
  • Use of a pseudo-random interleaver to scramble data between encoders
  • Iterative decoding using two soft-input soft-output (SISO) decoders
  • Exchange of extrinsic information between decoders to refine bit estimates
  • Performance near the Shannon limit with practical complexity
  • Generates systematic output plus two streams of parity bits for transmission

Evolution Across Releases

R99 Initial

Introduced PCCC (Turbo Coding) as the mandatory channel coding scheme for all high-speed data channels in the UMTS W-CDMA air interface. Defined the 8-state constituent RSC encoder polynomials, code rate 1/3, and specified the internal interleaver design based on prime number theory for flexible block sizes.

Minor clarifications and corrections to the Turbo coding specifications. Ensured stability and interoperability in early 3G network deployments for packet-switched data services.

Enhanced support for High-Speed Downlink Packet Access (HSDPA), where Turbo coding is used on the HS-DSCH channel. Optimized the interaction between Turbo coding and the Hybrid ARQ (HARQ) processes with incremental redundancy, a key feature for high throughput.

Extended Turbo coding application to Enhanced Uplink (HSUPA) for the E-DCH channel. Further refinements to the coding chain to support the higher data rates and improved latency requirements of HSUPA.

Preparatory work for LTE, investigating potential enhancements. Maintained Turbo coding as a core component for HSPA Evolution, supporting higher-order modulation (64QAM) and MIMO.

Specified Turbo coding as the primary channel code for the shared data channels (PDSCH, PUSCH) in the new LTE radio interface. Defined a new, highly flexible Quadratic Permutation Polynomial (QPP) interleaver to support a wide range of transport block sizes efficiently and enable high-speed parallel decoder implementations.

No major changes to the core Turbo coding algorithm. Focus on deployment and optimization of LTE, ensuring robust performance for multicast/broadcast services (eMBMS) which also utilize Turbo coding.

Enhanced support for LTE-Advanced features like carrier aggregation. Ensured the Turbo coding chain performed efficiently with the larger aggregated transport blocks and maintained low latency.

Continued optimizations for heterogeneous networks and coordinated multipoint (CoMP) transmission, where reliable channel coding is critical for cell-edge performance.

Investigated and compared Turbo coding with potential new codes like LDPC for future systems. Maintained Turbo coding for LTE enhancements in machine-type communication.

Specified the continued use of LTE Turbo coding for LTE-M (Cat-M1) and NB-IoT devices, often with repetition for coverage extension. Optimized decoder implementations for low-power IoT devices.

Further enhancements for LTE in licensed-assisted access (LAA) and vehicle-to-everything (V2X) communication, relying on the proven robustness of Turbo coding in challenging environments.

For 5G NR, a major evolution occurred: Turbo coding was replaced by LDPC coding for data channels and Polar coding for control channels. However, PCCC/Turbo coding remained specified for LTE-based 5G radio (NG-RAN in EN-DC) and for some NR control information where it was carried over.

Turbo coding is maintained for legacy LTE carrier components within 5G networks and for specific NR uplink control information formats. Focus shifted to the evolution of new codes, with Turbo coding in a maintenance role.

Continued support for Turbo coding in LTE-M and NB-IoT evolution for massive IoT. Performance studies for integrated access and backhaul (IAB) using LTE links.

Turbo coding remains a stable, mature technology within the 3GPP specifications for all existing LTE and legacy NR use cases. No significant changes, ensuring backward compatibility for deployed networks.

Ongoing maintenance specification. Turbo coding is a foundational technology that continues to underpin billions of LTE connections worldwide, with specifications kept stable for interoperability.

Defining Specifications

SpecificationTitle
TS 21.905 3GPP TS 21.905
TS 25.212 3GPP TS 25.212
TS 25.222 3GPP TS 25.222
TS 26.267 3GPP TS 26.267