本文中我们介绍一些经典的 feedback codes. 主要是 the SK scheme and the modulo-SK scheme.
Introduction
在点对点信道中,shannon早已证明加入feedback信道不会影响前向信道的capacity,但是the SK scheme证明了如果发送端有无噪的feedback信息,那么前向编码将会变得异常简单而且能够在有限码长时大大提升误码率性能。但是不幸的是,一旦feedback有一丁点儿噪声,the SK scheme does not work! 前人也有一些工作致力于解决noisy feedback的问题,但是他们的方法繁杂而差。
本文的motivation就是,存不存在简单的编码方案使得 the SK scheme 在noisy feedback 时照样work. 当然,如果我们的目的是approaching capacity 这个任务不太容易做到. 即, 提出一种码长
N
N
N 无限的编码方案使得 Pe goes to 0 且 rate 接近capacity
C
=
1
2
log
2
(
1
+
SNR
)
C=\frac{1}{2}\log_2(1+\text{SNR})
C=21log2(1+SNR).
Instead, 本文考虑的setup是: 给定一个target Pe (很小), 怎么设计一个方案使得capacity gap最小, where
capacity gap
=
其达到 Pe 所需的 SNR
−
optimal Shannon scheme 达到 Pe 所需的 SNR
\text{capacity gap}=\text{其达到 Pe 所需的 SNR}-\text{optimal Shannon scheme 达到 Pe 所需的 SNR}
capacity gap=其达到 Pe 所需的 SNR−optimal Shannon scheme 达到 Pe 所需的 SNR
注意这里没有定义码长。对于本文提出的MSK scheme, 一般码长很短就能达到 target Pe。对于 optimal Shannon scheme,码长可以是无限。更严谨的定义参见下一个section Setup中
Γ
\Gamma
Γ 的定义。
我们的设计基于以下的观察:
- Noiseless feedback, the SK scheme 的capacity gap 与 N N N 成反比,因此, N N N 不用很大就能接近 capacity. Comment: 这个描述有点歧义,因为毕竟它Pe没有到0而capacity的定义是无误码传输的最大速度。作者的描述是在Pe很小时这一点点差距由rate distortion function决定,可以忽略。
- The SK scheme 可以大致这么描述: 给定一串bits, node A 第一次传输用PAM编码即用一个标量表示这一串数发送给node B. 在接下来的传输中,node A通过无噪反馈完全知道node B的estimation error,于是每次传输都把node B estimation error scale之后node B。使用这种方法可以指数的降低node B估计误差的variance. The SK scheme 需要发送端完全已知node B的估计误差,因此只适用于noiseless feedback。但是noisy feedback时,我们可以让node B发送自己当前对message的estimate。注意,noiseless feedback时,passive, active feedback 没有差别.
- 假设使用SK scheme且feedback 是 noisy的。那么,在每一次交互中,node B 知道的是PAM value + estimation error; 而node A 知道 PAM value。 因此,node B编码的问题是一个JSCC问题 with side info at node A. 因此,node B需要做的就是怎么样exploit node A的side info从而把estimation error 尽可能好传输给node A via the noisy feedback channel. 一个简单的利用方法便是使用 modulo arithmetic。
- 按照以上方式,node A 便可以知道 nodeB 的estimation error 和feedback channel 带来的噪声。由于modulo这个operation是线性的,这个噪声可以被push到forward channel上去。
总之本文提出的scheme可以简单归纳如下
- node A 首先对自己的信息编码并用PAM发送。
在接下来的传输中,
- node B 每次都计算自己对 bitstream 的 linear estimate,scale the estimate,modulo一个固定的区间,再反馈给A。
- node A 对收到的信号进行modulo operation 得到B 的 estimation error (当然是noisy的), scale the noisy error, 再发给node B.
经过一些interactions, node B使用minimum distance rule进行decode.
Setup
我们考虑两个nodes A and B connected via 2 channels。 两个信道都是AWGN可以分别表示为
Y
n
=
X
n
+
Z
n
Y_n=X_n+Z_n
Yn=Xn+Zn
Y
~
n
=
X
~
n
+
Z
~
n
\widetilde{Y}_n=\widetilde{X}_n+\widetilde{Z}_n
Y
n=X
n+Z
n
其中噪声的power分别是
σ
2
\sigma^2
σ2 和
σ
~
2
\widetilde{\sigma}^2
σ
2. Nodes A, B各自有一个power constraint
P
P
P 和
P
~
\widetilde{P}
P
. 前后向SNR分别定义为
SNR
=
P
σ
2
,
SNR
~
=
P
~
σ
~
2
,
Δ
SNR
=
SNR
~
SNR
\text{SNR}=\frac{P}{\sigma^2},~~~~\tilde{\text{SNR}}=\frac{\widetilde{P}}{\widetilde{\sigma}^2},~~~~\Delta\text{SNR}=\frac{\tilde{\text{SNR}}}{\text{SNR}}
SNR=σ2P, SNR~=σ
2P
, ΔSNR=SNRSNR~
Nodes A and B 分别有一个函数
φ
\varphi
φ and
φ
~
\widetilde{\varphi}
φ
来决定
X
n
X_n
Xn 和
X
~
n
\widetilde{X}_n
X
n:
X
n
=
φ
(
W
,
Y
~
n
−
1
)
,
X
~
n
=
φ
(
Y
~
n
)
X_n=\varphi(W,\widetilde{Y}^{n-1}),~~~~\widetilde{X}_n=\varphi(\widetilde{Y}^{n})
Xn=φ(W,Y
n−1), X
n=φ(Y
n)
一对 φ \varphi φ and φ ~ \widetilde{\varphi} φ 决定了传输策略的 rate R = log M N R=\frac{\log M}{N} R=NlogM 和 Pe.
AWGN信道的Shannon capacity定义为
Pe
→
0
\text{Pe}\to0
Pe→0 时无误码传输的最大速率,这是所有可能schemes的上界,不管有没有feedback,不管
N
N
N 多长,不管编译码算法多复杂。
C
=
1
2
log
(
1
+
SNR
)
(1)
C=\frac{1}{2}\log(1+\text{SNR})\tag{1}
C=21log(1+SNR)(1)
即,任意给定一个 SNR, 搜遍所有策略最多能做到 rate 是
C
C
C. Conversely, 任意给定一个 rate
R
R
R, 要想达到它所需要的 SNR最小得是
2
2
R
−
1
2^{2R}-1
22R−1. 由此我们可以定义 capacity gap
Γ
=
SNR
2
2
R
−
1
\Gamma=\frac{\text{SNR}}{2^{2R}-1}
Γ=22R−1SNR
Preliminaries
Uncoded PAM
PAM 是很经典的调制方式。Uncoded PAM 就只传输一次
N
=
1
N=1
N=1, 那么给定
M
M
M 个消息(即
log
M
\log M
logM 个bits), rate
R
=
log
M
R=\log M
R=logM 也就是 bits 个数。我们可以把这
R
R
R 个bits映射到 a set of
2
R
2^R
2R amplitudes
{
±
1
η
,
±
3
η
,
.
.
.
,
±
(
2
R
−
1
)
η
}
\{\pm 1\eta,\pm 3\eta, ..., \pm(2^R-1)\eta\}
{±1η,±3η,...,±(2R−1)η}.
其中
η
\eta
η 是一个归一化因子使得这些幅值的均方是1, 此时
η
=
3
2
2
R
−
1
\eta=\sqrt{\frac{3}{2^{2R}-1}}
η=22R−13
注:如果功率限制是 P P P, 那就set: η = η P \eta=\eta\sqrt{P} η=ηP.
对于PAM来说,它的 Pe 取决于噪声超过两个amplitudes距离的一半的概率:
P
e
<
2
Q
(
P
η
σ
)
=
2
Q
(
3
SNR
2
2
R
−
1
)
(2)
P_e<2Q\left(\frac{\sqrt{P}\eta}{\sigma} \right)=2Q\left(\sqrt{\frac{3\text{SNR}}{2^{2R}-1}}\right)\tag{2}
Pe<2Q(σPη)=2Q(22R−13SNR)(2)
即,PAM 的 Pe 取决于信道 SNR 和 bits个数
R
R
R 即星座图的size。SNR 越小 或者
R
R
R 越大都会导致星座图之间距离越近,Pe 增大。取反函数我们有
R
>
1
2
log
(
1
+
SNR
Γ
0
(
P
e
)
)
(3)
R>\frac{1}{2}\log\left(1+\frac{\text{SNR}}{\Gamma_0(P_e)}\right)\tag{3}
R>21log(1+Γ0(Pe)SNR)(3)
其中 Γ 0 ( P e ) = 1 3 [ Q − 1 ( P e 2 ) ] 2 (4) \Gamma_0(P_e)=\frac{1}{3}\left[Q^{-1}\left(\frac{P_e}{2}\right)\right]^2\tag{4} Γ0(Pe)=31[Q−1(2Pe)]2(4) 就是 capacity gap。这个很好理解,(2) 式指的是给定了 SNR 和 bit 个数 R, uncoded PAM 至少能做到 P e P_e Pe;而(3)式的意思是给定 S N R SNR SNR 和一个target P e P_e Pe, 你至少能传输 R R R 个bits。那么比较rate R R R in (3) 和 Shannon capacity in (1), uncoded PAM 达到 P e P_e Pe 和 R R R 所需的 SNR 比 (1) 多了 Γ 0 ( P e ) \Gamma_0(P_e) Γ0(Pe) 倍,即capacity gap. 举个例子,若想achieve P e = 1 0 − 6 P_e=10^{-6} Pe=10−6, capacity gap of uncoded PAM is Γ 0 , dB = 9 dB \Gamma_{0,\text{dB}}=9~\text{dB} Γ0,dB=9 dB.
需要提及的是,如果使用 Gray labeling/mapping, P e P_e Pe 很小时,BER 和 SER 的关系是 P b = P e / R . P_b=P_e/R. Pb=Pe/R.
The SK scheme
下面我们来看一下 the SK scheme。
The SK scheme with active feedback
我们考虑 noiseless feedback, the SK scheme with active feedback 的伪代码如下:

csdn加的水印很讨厌,不过我们来大概解释一下就清楚了。首先 Initialization阶段node A直接把自己的 message 映射成一个PAM 星座 Θ \Theta Θ, 并且scale一下就发送给node B。而node B收到 Y 1 Y_1 Y1 后就尝试解 Θ \Theta Θ, 得到 Θ ^ 1 \hat{\Theta}_1 Θ^1.
Remark: 这里其实有一个精度问题,就是当 K K K 很长时, Θ \Theta Θ的表示对精度的要求非常高,这在电脑中不是问题,但是在无线发送和接收芯片中会是一个问题,即表示不了那么多位导致truncation,而truncation相当于加了非高斯的噪声,而且这个噪声和数据本身相关。
紧接着就开始迭代:
- node B 每次都把自己当前对 Θ \Theta Θ 的估计 Θ ^ n \hat{\Theta}_n Θ^n 发送给 node A.
- 由于feedback 信道无噪,node A 可以算出nodeB当前的estiamtion error ε n \varepsilon_n εn.
- 于是 node A 把 ε n \varepsilon_n εn scale 一下发送给 node B.
- node B 收到 Y n Y_n Yn: 先估计 ε n {\varepsilon}_n εn by ε ^ n = β n + 1 Y n , \hat{\varepsilon}_n=\beta_{n+1}Y_{n}, ε^n=βn+1Yn,这便是被水印掩盖的第一个公式; 再更新 Θ ^ n + 1 = Θ ^ n − ε ^ n \hat{\Theta}_{n+1}=\hat{\Theta}_{n}-\hat{\varepsilon}_n Θ^n+1=Θ^n−ε^n
当第 N N N 次交互结束,node B decode the PAM constellation by minimum-distance decoding.