---
title: Circular Buffer Rate Matching for Polar Codes
url: https://www.emergentmind.com/topics/circular-buffer-rate-matching
type: topic
---

# Circular Buffer Rate Matching for Polar Codes

Circular buffer rate matching (CB-RM) is an advanced framework for constructing rate-compatible polar codes, achieving flexible code rates for diverse channel conditions and HARQ applications by integrating puncturing, shortening, and repetition within a unified operational and mathematical paradigm. The approach enables seamless adaptation to single- or multi-transmission channels and provides capacity-achieving, low-complexity solutions for both binary-input and higher-order modulated communication systems [1702.04080, 1901.02287].

## 1. Mathematical Foundations of the Circular-Buffer Operator

At the core of CB-RM, the mother polar codeword $x_1^N$ (with $N=2^n$) is arranged as a $2^q\times2^p$ matrix $X(i,j)$, where $p+q=n$ and $X(i,j)=x_{(i-1)2^p+j}$ for $1\leq i\leq2^q, 1\leq j\leq2^p$. The central operation is the rate-matching map,
\[
\mathcal{R}(x_1^N;L) = (\hat{x}_1, \hat{x}_2, \ldots, \hat{x}_L),
\]
with
\[
\hat{x}_t = X(1 + ((t-1) \bmod 2^q),\; \pi(\lfloor (t-1)/2^q \rfloor + 1)),
\]
where the permutation $\pi$ (derived from the progressive puncturing algorithm or a $2^n$-posequence) determines the column-interleaving order. For all $L$, exactly the worst $\lceil N-L\rceil$ columns in $\pi$ order are excluded (for $L<N$, i.e., puncturing), while $L>N$ (repetition) simply cycles through the codeword with wraparound.

Unified CB-RM, as developed via binary domination, produces the codeword $c_k = x'_{k \bmod N}$ for $k = 0 \ldots M-1$ after applying an interleaver $\pi$ to the encoder output $\mathbf{x}$, ensuring one uniform buffer extraction mechanism for all modes (puncturing, shortening, repetition) [1901.02287].

## 2. Two-Stage Polarization Structure

The encoder is represented as $F_2^{\otimes n} = (F_2^{\otimes q}) \otimes (F_2^{\otimes p})$ with a subsequent bit-reversal operation. This induces a two-stage polarization process:
- Stage 1 applies $2^q$ parallel base codes of length $2^p$, polarizing the input into $N'$ bit-channels $\{\tilde{W}_{2^p}^{(i)}\}$.
- Stage 2 applies $2^p$ parallel transforms to these bit-channels.

In the presence of puncturing, exactly $m$ out of $2^p$ base code channels become zero-capacity, reducing the achievable rate to $(1 - \frac{m}{2^p})I(W)$ in the asymptotic regime. This nested polarization ensures that all derived codes for different rates share a common structure, enabling fully nested, rate-compatible code families [1702.04080].

## 3. Progressive Puncturing Algorithm and Binary Domination

The progressive puncturing algorithm (PPA) selects puncturing patterns iteratively on the base code of length $N'=2^p$. At each step, it identifies the position $j^\ast$ that, when punctured, minimally increases the estimated SC-decoding error probability for information bit-channels. The resulting permutation $\pi$ orders columns (or bits) by vulnerability under puncturing, giving rise to a nested sequence of puncturing sets.

Binary domination provides a formal equivalence and ordering: for indices $i,j$ with binary expansions, $i \preceq j$ (read "$j$ dominates $i$") if $i_t\leq j_t$ for all binary digits. This yields down-sets in the partial order, fundamental to characterizing incapable (for puncturing) or fixed (for shortening) bits:
- If an input $u_j$ becomes incapable, so do all $u_i$ with $i \prec j$.
- For shortening, fixing $u_j=0$ forces all outputs $x_k$ with $j \preceq k$ to zero [1901.02287].

Posequences (topological orderings under $\preceq$) are used not only for defining puncturing order, but also for aligning the design of unified buffer-extraction for both puncturing and shortening.

## 4. Unified Buffer Mapping: Algorithms and Equivalence

The circular buffer rate-matching interleaver is constructed from the chosen posequence $P$, with $\pi(i)=p_i$ for the $i$th entry. The codeword is then extracted as $c_k = x'_{k\bmod N}$ for $k=0,\ldots,M-1$. This methodology unifies:
- Puncturing: Exclude the first $J$ entries of $\pi$ for incapable bits.
- Shortening: Use the last $J$ entries for bits to be fixed, with bitwise complement yielding the equivalent incapable set.

The equivalence of "high-index" and "low-index" bit puncturing is formally established: puncturing either the first or last $J$ entries of a posequence yields (via binary complement) the same incapable pattern, guaranteeing identical code properties. This unification eliminates the need for separate hardware logic or buffer management between puncturing and shortening scenarios [1901.02287].

### Example Table: Posequence and Buffer Extraction

| $N$ | Posequence $P$ | Operation      | Indices Punctured/Shortened | Codeword Extraction       |
|-----|----------------|---------------|----------------------------|--------------------------|
| 8   | (0,1,2,4,3,5,6,7)  | Puncturing    | $\{0,1\}$                   | $c_k = x'_{k},\ k=0..5$  |
| 8   | (0,1,2,4,3,5,6,7)  | Shortening    | $\{6,7\}$                   | $c_k = x'_{k},\ k=0..5$  |

## 5. Bit-Mapping to BICM and Capacity Arguments

CB-RM is naturally extended to bit-interleaved coded modulation (BICM) and higher-order modulations (e.g., $M$-QAM with Gray labeling). Here, $\ell = \log_2 M$ binary subchannels of differing reliability are grouped by the interleaver into $2^p$ compound subchannels. Of these, $2^p - m$ active columns are uniformly mapped; punctured columns serve as zero-capacity channels.

The capacity result, invoking compound polarization, states:
\[
\lim_{N\to\infty}\frac{1}{N}|\text{good channels}| = \left(1 - \frac{m}{2^p}\right)\frac{1}{\ell}\sum_{j=1}^{\ell}I(W_j),
\]
where the rightmost factor is precisely the symmetric BICM capacity. Thus, the CB-RM framework remains capacity-achieving in BICM environments under SC decoding [1702.04080].

## 6. Performance, Complexity, and Implementation

Empirical performance and complexity data indicate:
- Finite-length CBRM-polar codes exhibit BER close to exhaustive-search punctured codes and outperform LTE-Turbo codes (by 0.2–0.4 dB in mid-length settings) and SC-QC-LDPC codes (by >1 dB at high rates).
- HARQ implementations (e.g., IR–HARQ with 16-QAM) gain ≈3 dB over Chase–Combining.
- Encoding and SC-decoding complexity remains $O(N\log N)$, with no additional large table requirements except the puncturing/posequence $\pi$.
- Throughput benefits are observed with unified CB-RM logic due to elimination of per-mode branching and simplified buffer-extraction, yielding modest but measurable increases in practical settings [1702.04080, 1901.02287].

## 7. Significance and Practical Impact

Circular-buffer rate matching provides a unified, provably optimal foundation for constructing versatile polar code families. Its efficient hardware/software compatibility, integrated BICM support, and guaranteed correct incapable/fixed bit patterns by binary domination advance both theoretical understanding and implementation practicality for modern wireless and coded-modulation standards [1702.04080, 1901.02287]. The framework's flexibility, capacity-achieving guarantees, and simplicity of rate adaptation underpin its adoption in systems requiring robust, rate-flexible channel coding.

Source: https://www.emergentmind.com/topics/circular-buffer-rate-matching