(0) Polar Code系列博客符号使用规范

Polar 系列博客符号使用规范

这份文档服务于当前 Polar 码博客系列,目标是让后续文章在公式、变量、集合、上下标和工程指标上保持一致。它不是论文符号表,也不覆盖当前博客计划之外的扩展码型。

后续写正文、推导、图注、伪代码和 C++ 解释时,优先遵守这里的约定。

0. 总原则

  1. 全文默认采用 0-based 索引。长度为 N 的序列下标范围统一写作 [0,N-1]
  2. 所有比特序列默认写成行向量,使用下划线表示向量,例如 \underline{u}_0^{N-1}
  3. 标量使用斜体小写或大写,例如 i,N,K,R。矩阵使用粗体大写,例如 \mathbf{G}_N。集合使用花体大写,例如 \mathcal{A}
  4. 二元域统一写作 \mathbb{F}_2=\{0,1\}。二元加法统一写作 \oplus,不要在二元域内用普通加号代替异或。
  5. 估计值统一使用 hat。标量写作 \hat{u}_i,向量写作 \hat{\underline{u}}_0^{N-1}。不要混用 \underline{\hat{u}}
  6. 对数似然比和路径度量中的对数默认使用自然对数 \ln。信息量、容量相关公式若需要以 bit 为单位,使用 \log_2
  7. 正文第一次引入任何符号时必须给出含义、取值域和维度。尤其是集合、向量、矩阵和排序序列。

1. 基础集合与向量

1.1 码长、信息长度和码率

符号含义备注
NPolar 码长常取 N=2^n
n极化递归阶数n=\log_2 N
K进入 Polar 编码器的信息比特数若加入 CRC,需说明是否包含 CRC
R码率R=K/N

推荐写法:

R=\frac{K}{N},\qquad N=2^n

1.2 区间和索引集合

整数闭区间统一写作:

[l,u]=\{l,l+1,\dots,u\}

当没有特别说明时,\mathcal{A}^c 的补全集默认为 [0,N-1]

\mathcal{A}^c=[0,N-1]\setminus\mathcal{A}

如果补集不是相对于 [0,N-1] 定义,必须先显式给出全集。例如可先定义全集为 \mathcal{U},再写 \mathcal{S}^c=\mathcal{U}\setminus\mathcal{S}。不要让读者靠上下文猜补集范围。

1.3 向量与子向量

长度为 N 的向量统一写作:

\underline{a}_0^{N-1}=(a_0,a_1,\dots,a_{N-1})

连续子向量写作:

\underline{a}_i^j=(a_i,a_{i+1},\dots,a_j),\qquad 0\le i\le j\le N-1

由集合抽取的子向量写作 \underline{a}_{\mathcal{A}}。默认按照集合元素的升序排列抽取:

\underline{a}_{\mathcal{A}}=(a_{i_0},a_{i_1},\dots,a_{i_{|\mathcal{A}|-1}}), \quad i_0<i_1<\cdots<i_{|\mathcal{A}|-1}

如果文章需要按照可靠性顺序、5G 预定义可靠性序列或其它顺序抽取,必须另外定义排序序列。

2. 编码链路基础符号

2.1 信息、极化输入、码字和观测

符号取值域含义
\underline{m}_0^{K-1}\mathbb{F}_2^K原始信息向量,若包含 CRC 需说明
\underline{u}_0^{N-1}\mathbb{F}_2^N极化变换输入向量
\underline{c}_0^{N-1}\mathbb{F}_2^N二元码字向量
\underline{x}_0^{N-1}\mathbb{R}^NBPSK 调制后的发送符号
\underline{y}_0^{N-1}\mathbb{R}^N信道输出观测向量
\underline{\lambda}_0^{N-1}\mathbb{R}^N原始信道 LLR 向量

重要约束:

  • \underline{y} 只表示接收观测,不表示 LLR。
  • 若需要写“一串 LLR”,优先使用 \underline{\lambda},不要写 \underline{y}
  • 码字比特和 BPSK 符号要区分:c_i\in\mathbb{F}_2x_i\in\mathbb{R}

BPSK 映射统一写作:

x_i=1-2c_i,\qquad c_i\in\{0,1\}

BI-AWGN 信道统一写作:

y_i=x_i+z_i,\qquad z_i\sim\mathcal{N}(0,\sigma^2)

对应的二元输入转移概率可写作:

W(y_i\mid c_i)= \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left(-\frac{(y_i-(1-2c_i))^2}{2\sigma^2}\right)

原始信道 LLR 统一写作:

\lambda_i =\ln\frac{W(y_i\mid 0)}{W(y_i\mid 1)} =\frac{2y_i}{\sigma^2}

3. Polar 码符号

3.1 信息集合和冻结集合

信息集合统一写作 \mathcal{A},冻结集合写作 \mathcal{A}^c

|\mathcal{A}|=K,\qquad |\mathcal{A}^c|=N-K

编码输入向量满足:

\underline{u}_{\mathcal{A}}=\underline{m}_0^{K-1}, \qquad \underline{u}_{\mathcal{A}^c}=\underline{0}

3.2 极化核和生成矩阵

二阶极化核统一写作:

\mathbf{F}_2= \begin{bmatrix} 1 & 0\\ 1 & 1 \end{bmatrix}

生成矩阵统一写作 \mathbf{G}_N。若文章不讨论 bit-reversal 细节,可先写:

\mathbf{G}_N=\mathbf{F}_2^{\otimes n}

若文章需要讨论 bit-reversal,则写作:

\mathbf{G}_N=\mathbf{B}_N\mathbf{F}_2^{\otimes n}

其中 \mathbf{B}_N 是比特反转置换矩阵。采用哪一种约定必须在该篇文章第一次出现 \mathbf{G}_N 时说明。

编码公式统一写作:

\underline{c}_0^{N-1}=\underline{u}_0^{N-1}\mathbf{G}_N

不要用 g_i 表示 \mathbf{G}_N 的第 i 行,以免和 SC 译码的 g(\cdot) 函数混淆。若必须表示第 i 行,写作:

\boldsymbol{\gamma}_i=\mathbf{G}_N[i,:]

对应行重写作:

r(i)=w_H(\boldsymbol{\gamma}_i)=2^{w_H(i)}

这里第一个 w_H(\boldsymbol{\gamma}_i) 表示向量汉明重量,第二个 w_H(i) 表示整数 i 的二进制展开中 1 的个数。正文中要明确这两个对象不同。

3.3 合成信道和极化子信道

基础二元输入信道写作:

W:\mathcal{X}\to\mathcal{Y},\qquad \mathcal{X}=\{0,1\}

长度 N 的合成向量信道写作:

W_N:\mathcal{X}^N\to\mathcal{Y}^N

i 个极化子信道写作:

W_N^{(i)}(\underline{y}_0^{N-1},\underline{u}_0^{i-1}\mid u_i) = \sum_{\underline{u}_{i+1}^{N-1}\in\mathcal{X}^{N-i-1}} \frac{1}{2^{N-1}} W_N(\underline{y}_0^{N-1}\mid\underline{u}_0^{N-1})

二阶分裂信道可写作 W^-W^+,仅用于 N=2 的局部推导或递归解释。

4. 信道可靠性与构造

4.1 对称容量和 Bhattacharyya 参数

对称容量统一写作:

I(W)=\sum_{y\in\mathcal{Y}}\sum_{x\in\mathcal{X}}\frac{1}{2}W(y\mid x)\log_2\!\left(\frac{W(y\mid x)}{\frac{1}{2}W(y\mid 0)+\frac{1}{2}W(y\mid 1)}\right)

Bhattacharyya 参数统一写作:

Z(W)=\sum_{y\in\mathcal{Y}}\sqrt{W(y\mid 0)W(y\mid 1)}

解释:

  • I(W) 越大,信道越可靠。
  • Z(W) 越小,信道越可靠。
  • 写排序时必须说明是“降序”还是“升序”。

4.2 子信道 LLR

i 个极化子信道的后验 LLR 统一写作:

L_N^{(i)}(\underline{y}_0^{N-1},\hat{\underline{u}}_0^{i-1})=\ln\!\left(\frac{W_N^{(i)}(\underline{y}_0^{N-1},\hat{\underline{u}}_0^{i-1}\mid 0)}{W_N^{(i)}(\underline{y}_0^{N-1},\hat{\underline{u}}_0^{i-1}\mid 1)}\right)

如果只讨论当前位的数值,可简写为 L_N^{(i)}。但第一次简写前必须说明它依赖 \underline{y}_0^{N-1}\hat{\underline{u}}_0^{i-1}

GA 构造中,子信道 LLR 均值统一写作:

\mu_i=\mathbb{E}\!\left[L_N^{(i)}\right]

若需要强调它是 W_N^{(i)} 的可靠性度量,可写作:

\mathcal{L}(W_N^{(i)})=\mu_i

4.3 可靠性排序

可靠性排序序列统一写作:

\boldsymbol{\pi}=(\pi_0,\pi_1,\dots,\pi_{N-1})

若按照可靠性从高到低排序,则满足:

\mu_{\pi_0}\ge \mu_{\pi_1}\ge\cdots\ge \mu_{\pi_{N-1}}

信息集合可写作:

\mathcal{A}=\{\pi_0,\pi_1,\dots,\pi_{K-1}\}

注意:集合 \mathcal{A} 本身无序;如果后续需要使用可靠性顺序,继续使用 \boldsymbol{\pi},不要暗示集合自带顺序。

4.4 design-SNR

构造时采用的设计信噪比统一写作 \rho_{\mathrm{des}}。如果文章使用 E_b/N_0,写作:

\rho_{\mathrm{des}}=\left(E_b/N_0\right)_{\mathrm{des}}

实际仿真信噪比写作 \rho_{\mathrm{sim}}。不要把 design-SNR 和仿真 SNR 混为一个符号。

5. SC、SCL 与 CA-SCL 译码符号

5.1 SC 递归函数

SC 译码的两个 LLR 更新函数统一写作 f(\cdot)g(\cdot)。为避免和列表宽等符号混淆,函数输入用 \alpha,\beta 表示:

f(\alpha,\beta) =2\tanh^{-1}\left(\tanh\frac{\alpha}{2}\tanh\frac{\beta}{2}\right)

min-sum 近似写作:

f(\alpha,\beta)\approx \operatorname{sgn}(\alpha)\operatorname{sgn}(\beta) \min(|\alpha|,|\beta|)

右分支更新函数写作:

g(\alpha,\beta,\hat{u}) =\beta+(1-2\hat{u})\alpha

这里的 g(\cdot) 专用于 SC 译码函数。不要再把 \mathbf{G}_N 的行向量或其它对象写成类似 g_i 的形式。

5.2 判决与估计

单比特估计写作 \hat{u}_i。完整估计序列写作:

\hat{\underline{u}}_0^{N-1}

SC 判决规则可写作:

\hat{u}_i= \begin{cases} 0, & i\in\mathcal{A}^c,\\ 0, & i\in\mathcal{A},\ L_N^{(i)}\ge 0,\\ 1, & i\in\mathcal{A},\ L_N^{(i)}<0. \end{cases}

如果文章采用相反的 LLR 定义 \ln(P(1)/P(0)),必须整篇同步修改判决规则。默认不采用相反定义。

5.3 SCL 路径和列表宽

列表最大宽度,统一写作:

L_{\max}

当前存活路径索引集合写作 \mathcal{S}_i。路径编号统一使用 \ell,不要使用容易和数字 1 混淆的 l

\ell\in\mathcal{S}_i,\qquad |\mathcal{S}_i|\le L_{\max}

\ell 条路径在第 i 位之后的路径度量写作:

PM_\ell^{(i)}

当前路径上用于判决第 i 位的 LLR 数值写作 \Lambda_{i,\ell}。路径上的候选判决写作 \hat{u}_{i,\ell}

路径度量更新统一写作:

PM_\ell^{(i)} =PM_\ell^{(i-1)} +\ln\left(1+\exp\left(-(1-2\hat{u}_{i,\ell})\Lambda_{i,\ell}\right)\right)

解释口径:

  • PM 越小,路径越可靠。
  • SCL 剪枝保留 PM 最小的至多 L_{\max} 条路径。
  • 列表宽度不要写作 L,因为 L_N^{(i)} 已经用于 LLR。

5.4 CA-SCL

CRC 辅助的 SCL 统一写作 CA-SCL。CRC 校验函数若需要符号化,可写作:

\operatorname{CRC}(\hat{\underline{m}})=0

候选路径集合中通过 CRC 的路径集合写作 \mathcal{S}_{\mathrm{CRC}}。若 \mathcal{S}_{\mathrm{CRC}}\neq\varnothing,从其中选 PM 最小的路径;否则从全部存活路径中选 PM 最小的路径。

6. 仿真、rate matching 与 5G 符号

6.1 误码率和块错误率

比特错误率统一写作 BER:

\mathrm{BER} = \frac{N_{\mathrm{bit,err}}}{N_{\mathrm{bit,total}}}

块错误率统一写作 BLER:

\mathrm{BLER} = \frac{N_{\mathrm{blk,err}}}{N_{\mathrm{blk,total}}}

如果引用资料使用 FER,本系列优先解释为 BLER 的同义口径,并在第一次出现时说明:

\mathrm{FER}\equiv\mathrm{BLER}

6.2 仿真信噪比和噪声方差

仿真横轴若使用 E_b/N_0,写作 \rho_{\mathrm{sim}}

\rho_{\mathrm{sim}}=E_b/N_0

若需要从 \rho_{\mathrm{sim}} 推出 AWGN 噪声方差,必须说明码率 R、BPSK 能量归一化方式和 dB/线性值转换。不要直接把 dB 数值代入线性公式。

dB 到线性值的转换写作:

\rho_{\mathrm{lin}}=10^{\rho_{\mathrm{dB}}/10}

6.3 rate matching

rate matching 统一保留英文写法,第一次出现时解释为“速率匹配”。后续三种操作统一写作:

术语含义推荐符号
puncturing打孔\mathcal{R}_{\mathrm{pun}}
shortening缩短\mathcal{R}_{\mathrm{short}}
repetition重复\mathcal{R}_{\mathrm{rep}}

发送到物理信道的 rate-matched 序列长度统一写作 E。Polar 长度仍为 N。不要把 EN 混用:

\underline{e}_0^{E-1} = \operatorname{RateMatch}(\underline{c}_0^{N-1})

其中 \underline{e}_0^{E-1} 表示 rate matching 后的发送比特序列。

6.4 5G NR 相关写法

5G NR 文章中,若需要区分原始载荷、CRC 后长度、Polar 码长和 rate matching 输出长度,统一使用:

符号含义
ACRC 添加前的原始 payload 比特数
L_{\mathrm{CRC}}CRC 长度
K_{\mathrm{enc}}CRC 添加后进入 Polar 编码链路的信息长度
NPolar 长度
Erate matching 后的输出长度

推荐写法:

K_{\mathrm{enc}}=A+L_{\mathrm{CRC}}

5G 预定义可靠性序列写作 \boldsymbol{\pi}_{\mathrm{5G}}。如果文章只讲一般构造方法,仍使用 \boldsymbol{\pi}

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇