CBG

Code Block Group

Physical Layer
Introduced in Rel-14
CBG is a retransmission unit in 5G NR, grouping multiple code blocks for HARQ feedback. It enables partial retransmissions, reducing overhead and latency by retransmitting only erroneous groups instead of the entire transport block. This improves spectral efficiency and reliability, especially for large data packets.

Description

A Code Block Group (CBG) is a fundamental concept in the 5G New Radio (NR) physical layer, specifically within the Hybrid Automatic Repeat Request (HARQ) process for error control. In NR, a Transport Block (TB), which is the basic unit of data for transmission over the air interface, is segmented into smaller Code Blocks (CBs) before channel coding. A CBG is a collection of one or more of these Code Blocks. The primary function of CBG-based transmission is to enable more granular retransmissions. Instead of signaling HARQ feedback (ACK/NACK) and performing retransmissions at the granularity of an entire Transport Block, the network can operate at the CBG level. This means the receiver can identify and request retransmission of only those specific CBGs that contained errors, rather than the entire TB.

The operation involves several key components and procedures. During initial transmission, the gNB (base station) transmits a TB, which is segmented into CBs, and these CBs are logically grouped into CBGs based on configuration. The number of CBGs per TB is configurable by RRC signaling, with a maximum defined per specification (e.g., up to 8 CBGs for a TB in some configurations). Each CBG is independently channel coded. The receiver (UE) performs decoding and generates HARQ feedback in the form of a CBG-based ACK/NACK bitmap. This bitmap indicates the success (ACK) or failure (NACK) of each individual CBG. The gNB processes this feedback and schedules retransmissions specifically for the NACKed CBGs. The retransmitted CBGs may use the same or different redundancy versions (RVs) as defined in the HARQ process.

Architecturally, CBG processing is integrated into the physical downlink shared channel (PDSCH) and physical uplink shared channel (PUSCH) handling within the gNB and UE protocol stacks, primarily in the MAC and physical layers. The configuration, including whether CBG-based transmission is enabled and the number of CBGs, is determined by RRC and can be adapted based on channel conditions. The Downlink Control Information (DCI) formats include fields to indicate the CBG Transmission Information (CBGTI) and CBG Flushing Information (CBGFI), which manage which CBGs are being transmitted and whether previous soft buffer content should be flushed. This mechanism is crucial for managing the soft buffer memory in the receiver, as it stores log-likelihood ratios for incremental redundancy combining.

CBG's role in the network is to enhance the efficiency of the HARQ process, which is critical for achieving the high reliability and low latency targets of 5G, particularly for enhanced Mobile Broadband (eMBB) and Ultra-Reliable Low-Latency Communications (URLLC) services. By reducing the amount of data that needs to be retransmitted when only part of a TB is corrupted, CBG-based retransmission minimizes air interface resource consumption, reduces latency for error recovery, and improves overall throughput and spectral efficiency. It represents a significant evolution from the LTE approach, where retransmissions were primarily TB-based, offering finer control and better performance in challenging radio conditions.

Purpose & Motivation

CBG-based transmission was introduced in 5G NR to address limitations of the Transport Block (TB)-based HARQ used in LTE. In LTE, if any part of a TB failed decoding, the entire TB—potentially a large data unit—had to be retransmitted. This was inefficient, especially as TB sizes grew larger with higher data rates in 5G. Retransmitting an entire TB consumed excessive time and radio resources, increasing latency and reducing spectral efficiency, which was detrimental for latency-sensitive services like URLLC and for maintaining high throughput in poor signal conditions.

The primary problem CBG solves is the granularity of retransmissions. By grouping code blocks, it allows the system to identify and retransmit only the corrupted subsets of data. This partial retransmission capability significantly reduces the overhead and delay associated with error recovery. Historically, the motivation came from the need to support diverse 5G use cases with stringent requirements. For eMBB, large TBs are common, and CBG prevents small errors from triggering large retransmissions. For URLLC, minimizing latency is paramount, and faster error correction via targeted retransmissions is critical.

Furthermore, CBG enables more efficient use of the UE's soft buffer memory for HARQ combining. Instead of storing soft bits for an entire TB for potential retransmission, the UE can manage memory per CBG, allowing for better performance with limited buffer sizes. This addresses practical implementation constraints. The creation of CBG was driven by 3GPP's goal to design a more flexible and efficient air interface for NR, learning from LTE's experiences and anticipating the needs of future high-speed, low-latency applications.

Key Features

  • Enables partial retransmissions at Code Block Group granularity instead of full Transport Block retransmission
  • Configurable number of CBGs per Transport Block via RRC signaling for flexibility
  • Uses CBG-based ACK/NACK feedback bitmap for precise error indication
  • Includes DCI fields (CBGTI, CBGFI) for dynamic control of retransmissions and soft buffer management
  • Reduces HARQ retransmission latency and improves spectral efficiency
  • Supports both downlink (PDSCH) and uplink (PUSCH) channels

Evolution Across Releases

Rel-14 Initial

CBG was initially introduced in 3GPP Release 14 as part of the early 5G NR study item (under TR 38.802/889/912). The initial architecture defined the concept of grouping code blocks for HARQ retransmissions, establishing the basic framework for partial retransmissions to improve efficiency. It specified the motivation and high-level procedures for CBG-based transmission and reception.

In NR's first specification release, CBG was fully standardized in the physical layer protocols (TS 38.212, 38.213, 38.214). Detailed procedures for CBG-based transmission, including DCI formats with CBGTI/CBGFI fields, HARQ-ACK codebook design for CBG feedback, and configuration via RRC were defined. This enabled implementation for both downlink and uplink, supporting up to 8 CBGs per TB.

Enhancements included optimizations for URLLC, such as refining CBG operation for low-latency HARQ processes. Improvements to reliability and performance in industrial IoT scenarios were addressed. The specifications were updated for better alignment with multi-TRP (Transmission Reception Point) and carrier aggregation deployments involving CBG.

Further enhancements focused on efficiency and support for advanced features like integrated access and backhaul (IAB). Refinements to CBG configuration and feedback mechanisms for operation in non-terrestrial networks (NTN) were introduced, considering longer delays. Performance optimizations for diverse deployment scenarios were included.

Continued evolution as part of 5G-Advanced, with potential optimizations for AI/ML-based radio link adaptation and enhanced MIMO. CBG mechanisms were reviewed for better support of extreme mobility and energy efficiency, ensuring compatibility with new network architectures and use cases.

Ongoing studies and potential specification refinements for future 5G-Advanced and 6G preparatory work. Focus includes further latency reduction, support for higher frequency bands, and integration with novel duplexing and waveform techniques, ensuring CBG remains efficient for next-generation applications.

Defining Specifications

SpecificationTitle
TS 38.212 3GPP TR 38.212
TS 38.213 3GPP TR 38.213
TS 38.214 3GPP TR 38.214
TS 38.802 3GPP TR 38.802
TS 38.889 3GPP TR 38.889
TS 38.912 3GPP TR 38.912