RSC

Recursive Systematic Convolutional Coder

Physical Layer →
Introduced in Rel-4 Also in: Security, Core Network, Radio Access Network

RSC is a convolutional code used for forward error correction in 3GPP systems that adds redundant bits in a recursive systematic form to improve data reliability over noisy channels.

Category
Physical Layer
Introduced
Rel-4
Where
Services › IMS
Also touches
3 segments
Specifications
11 specs
RSC Description Purpose Related Classification Detected Changes Specifications

Description

Recursive Systematic Convolutional (RSC) coder is a forward error correction (FEC) component employed in 3GPP radio access technologies, notably in UMTS (3G) and aspects of LTE. It operates as a convolutional encoder that generates parity bits from input data streams, characterized by its recursive structure and systematic output—meaning the input bits are directly included in the encoded stream alongside parity bits. This design enhances error correction capabilities while maintaining compatibility with iterative decoding algorithms like the Viterbi algorithm or turbo decoding. In 3GPP specifications, RSC is often used within turbo coding schemes, where two RSC encoders work in parallel with an interleaver to produce highly reliable codes.

The architecture of RSC in 3GPP systems involves integration into the physical layer's channel coding chain. For instance, in UMTS as defined in TS 25.212, RSC encoders are part of the turbo code for data channels, processing transport blocks before modulation and transmission. The encoder consists of shift registers and feedback loops, with parameters such as constraint length and generator polynomials specified to optimize performance for varying channel conditions. Key components include the encoder itself, interleavers for scrambling data sequences, and puncturing units to adjust code rates by selectively removing parity bits, thus balancing redundancy and spectral efficiency.

In operation, RSC works by taking a stream of information bits and passing them through linear feedback shift registers. The recursive nature means the encoder's state depends on previous inputs via feedback, which improves distance properties of the code, making it more resilient to errors. The systematic aspect ensures that the original data is transparently available, simplifying decoding. At the receiver, soft-decision decoders exploit this structure to correct bit errors caused by noise, interference, or fading. RSC's role is critical in achieving the high data rates and low latency required for voice, video, and data services, as it minimizes retransmissions and enhances overall link reliability.

Purpose & Motivation

RSC was introduced in 3GPP Release 4 for UMTS to address the need for more efficient error correction compared to non-recursive convolutional codes used in earlier 2G systems. Previous codes, like those in GSM, had limited performance gains and required higher signal-to-noise ratios for acceptable error rates. RSC, particularly when combined in turbo codes, offered near-Shannon-limit performance, enabling reliable communication over hostile radio channels with lower power consumption and improved spectral efficiency.

The creation of RSC was motivated by the increasing demand for high-speed data services in 3G networks, such as video calling and mobile internet. Traditional codes could not support the higher data rates without excessive overhead or degraded quality. RSC's recursive systematic form allowed for better iterative decoding, making it suitable for turbo coding implementations that significantly boosted throughput and coverage. This advancement was crucial for meeting the performance targets of UMTS and later LTE, supporting features like adaptive modulation and coding (AMC) and hybrid ARQ (HARQ).

Furthermore, RSC's adoption enabled more robust mobility and handover scenarios, as it provided consistent error protection across varying channel conditions. Its flexibility in code rate adjustment via puncturing allowed dynamic adaptation to link quality, optimizing resource usage. As 3GPP evolved, RSC continued to be relevant in LTE for certain control channels and legacy support, though newer codes like LDPC and polar codes have since taken prominence in 5G NR for data channels. Nonetheless, RSC remains a foundational technology in the history of cellular error correction.

Classification

Part ofFEC
Related approachesHARQ

Release Timeline

Detected Changes Across Releases

from 3GPP Change Requests

Specific changes extracted from the „Change history“ tables of 3GPP specifications (17 CRs across 3 releases). Complements the general historical overview above with the evidence-based evolution of this function.

Rel-17 3 changes

In Release 17, the RSC function was enhanced to explicitly support multi-hop relay services, introducing new associated indicators and parameters. Specifically, for both UE-to-Network and UE-to-UE relay services, an RSC can now be configured with a multihop indicator and a defined maximum number of hops. Furthermore, each RSC is associated with a UE-to-Network or UE-to-UE Relay Layer indicator to specify whether it offers Layer-2 or Layer-3 relay service.

  • RSC Determination by a Layer-3 Remote UE TS 23.304CR0080
  • CP-PRUK is associated with the RSC TS 24.554CR0193
  • Correction to authorization based on RSC TS 33.503CR0010
Rel-18 12 changes

In Release 18, the RSC (Recursive Systematic Convolutional Coder) function was expanded with new capabilities specifically for ProSe (Proximity Services) relay operations. Key introductions included dedicated emergency RSCs for UE-to-UE and layer-2 relay services, along with explicit RSC to traffic type mapping rules for both UE-to-UE (U2U) and Layer 3 U2U relay. Furthermore, the specifications were enhanced to clarify RSC usage during relay discovery, reselection, and for supporting multi-hop connectivity with defined maximum hop counts per RSC.

  • RSC for UE-to-UE relaying TS 23.304CR0170
  • RRC Establishment cause when RSC is dedicated for Emergency for layer-2 relay TS 24.501CR5326
  • Provisioning RSC dedicated for emergency service TS 24.554CR0334
  • Emergency RSC TS 24.555CR0036
  • Use of emergency RSC TS 23.304CR0303
  • Clarification on RSC usage during relay discovery and relay reselection TS 23.304CR0334

+ 6 more changes

Rel-19 2 changes

In Release 19, the RSC function was enhanced to support new multi-hop and relay-specific capabilities. Specifically, new parameters were introduced, including a multi-hop indicator per RSC and a maximum number of hops per RSC, to govern bounded routing for end UEs. Furthermore, the RSC could now be explicitly associated with Layer-3 UE-to-UE relay services, enabling its use in procedures like associating a DNS entry with the relay path.

  • End UE RSC-Bounded Routing TS 23.304CR0553
  • Associating the DNS entry with the used RSC for layer-3 UE-to-UE relay TS 24.554CR0714

Explore further

Broader topics and technologies where RSC plays a role.

Defining Specifications

3GPP specifications that define or reference RSC, with the latest known release. Sourced from the 3GPP document catalog — see methodology.

SpecificationTitleRelease
TS 23.289 vk10 Mission Critical services over 5G System Rel-20
TS 23.304 vk00 5G Proximity Services (ProSe) Stage 2 Rel-20
TS 24.501 vj50 5G NAS Protocols Specification Rel-19
TS 24.554 vj40 5G Proximity Services (ProSe) Protocols Rel-19
TS 24.555 vj30 5G ProSe UE Policies Specification Rel-19
TS 25.212 vj00 UTRA FDD Layer 1 Multiplexing & Channel Coding Rel-19
TS 25.222 vj00 UTRA TDD Multiplexing & Channel Coding Rel-19
TS 29.163 vj00 Interworking between 3GPP IM CN and CS networks Rel-19
TS 33.303 vj00 ProSe Security Specification for EPS Rel-19
TS 33.503 vj20 Security for Proximity Services (ProSe) in 5G Rel-19
TR 33.740 vi10 Security and Privacy Aspects of Proximity Based Services in 5G System Phase 2 Rel-18
Patrick Zandl

About the author: Patrick Zandl (b. 1974)

Telecommunications specialist, technology journalist (founder of the Mobil server), and developer who has been running since 2025 — the largest Czech-language resource on AI-assisted programming. Formerly Chief Wizard Architect at Prusa3D and head of development for Turris at CZ.NIC; currently a consultant and instructor on AI implementation in companies.