赞
踩
信道通过信道合并和分裂后,比特信道的容量产生极化现象,一部分子信道的容量趋向于1(“好”信道),另一部分的信道的容量趋向于0(“坏”信道)。因此,我们在“好”信道上发送信息比特,在“坏”信道上发送冻结比特(发端和收端都已知的比特信息)。本文主要介绍Polar的编码过程。
对于给定的比特输入
u
1
N
=
(
u
1
,
u
2
,
.
.
.
,
u
N
)
T
u^{N}_{1}=(u_1,u_2,...,u_N)^T
u1N=(u1,u2,...,uN)T,其中N为码长,则编码后的结果为
x
1
N
=
u
1
N
∗
G
N
x^{N}_{1}=u^{N}_{1}*G_{N}
x1N=u1N∗GN 其中
G
N
G_{N}
GN为
N
×
N
N \times N
N×N的生成矩阵。进一步,对子信道进行选择,假设信道比特选择的子信道集合为
A
A
A,在A中的子信道上传输信息比特;另外
A
c
=
(
1
,
2
,
.
.
.
,
N
)
−
A
A_{c}=(1,2,...,N)-A
Ac=(1,2,...,N)−A,在
A
c
A_c
Ac集合中的子信道传输冻结比特;
G
N
(
A
)
G_N(A)
GN(A)为
G
N
G_N
GN的子信道;用公式可表示为
x
1
N
=
u
A
G
N
(
A
)
⊕
u
A
c
G
N
(
A
c
)
x^{N}_{1}=u_{A}G_{N}(A)\oplus u_{A_{c}}G_{N}(A_{c})
x1N=uAGN(A)⊕uAcGN(Ac) 众所周知,Polar是陪集码的一种特例,因此,以
G
N
G_N
GN为生成矩阵生成的陪集码可以由参数
(
N
,
K
,
A
,
u
A
c
)
(N,K,A,u_{A_c})
(N,K,A,uAc)确定,其中K为信息比特的长度;
N
=
2
n
N=2^{n}
N=2n为所有分裂子信道的数目;K/N即为码率;A为信息比特的索引集合;
A
c
=
(
1
,
2
,
.
.
.
N
)
−
A
A_{c}=(1,2,...N)-A
Ac=(1,2,...N)−A为冻结比特的索引集合;
u
A
c
u_{A_c}
uAc为冻结比特信息,通常我们将冻结比特信息全部置为0。
但在实际中,为了Polar译码的递归便利性,我们采用如下Polar生成矩阵进行编码
G
N
=
B
N
F
⊗
n
G_{N}=B_{N}F^{\otimes n}
GN=BNF⊗n 其中有
B
N
=
R
N
(
I
2
⊗
B
N
/
2
)
B_{N}=R_{N}(I_2 \otimes B_{N/2})
BN=RN(I2⊗BN/2)
B
2
=
I
2
B_{2}=I_{2}
B2=I2
F
⊗
n
=
F
⊗
F
⊗
n
−
1
F^{\otimes n}=F \otimes F^{\otimes n-1}
F⊗n=F⊗F⊗n−1
F
=
[
1
0
1
1
]
F=
根据如下图递归编码结构有
G
N
=
(
I
N
/
2
⊗
F
)
R
N
(
I
2
⊗
G
N
/
2
)
,
N
⩾
2
,
G
1
=
I
1
G_{N}=(I_{N/2} \otimes F)R_{N}(I_{2} \otimes G_{N/2}),N\geqslant 2,G_{1}=I_{1}
GN=(IN/2⊗F)RN(I2⊗GN/2),N⩾2,G1=I1
根据交换律有
(
I
N
/
2
⊗
F
)
R
N
=
R
N
(
F
⊗
I
N
/
2
)
(I_{N/2} \otimes F)R_{N}=R_{N}(F \otimes I_{N/2})
(IN/2⊗F)RN=RN(F⊗IN/2) 对应的信道极化图为
因此,上式可变换为
G
N
=
R
N
(
F
⊗
I
N
/
2
)
(
I
2
⊗
G
N
/
2
)
=
R
N
(
F
⊗
G
N
/
2
)
,
N
⩾
2
G_{N}=R_{N}(F \otimes I_{N/2})(I_{2} \otimes G_{N/2})=R_{N}(F \otimes G_{N/2}),N\geqslant 2
GN=RN(F⊗IN/2)(I2⊗GN/2)=RN(F⊗GN/2),N⩾2 进一步,用
G
N
/
2
=
R
N
/
2
(
F
⊗
G
N
/
4
)
G_{N/2}=R_{N/2}(F \otimes G_{N/4})
GN/2=RN/2(F⊗GN/4)做等量替换,则有
G
N
=
R
N
(
F
⊗
(
R
N
/
2
(
F
⊗
G
N
/
4
)
)
)
=
R
N
(
I
2
⊗
R
N
/
2
)
(
F
⊗
2
⊗
G
N
/
4
)
G_{N}=R_{N}(F \otimes (R_{N/2}(F \otimes G_{N/4})))=R_{N}(I_{2}\otimes R_{N/2})(F^{\otimes 2}\otimes G_{N/4})
GN=RN(F⊗(RN/2(F⊗GN/4)))=RN(I2⊗RN/2)(F⊗2⊗GN/4) 根据性质
(
A
C
)
⊗
(
B
D
)
=
(
A
⊗
B
)
(
C
⊗
D
)
(AC) \otimes (BD)=(A \otimes B)(C \otimes D)
(AC)⊗(BD)=(A⊗B)(C⊗D)并令
A
=
I
2
,
B
=
R
N
/
2
,
C
=
F
,
D
=
F
⊗
G
N
/
4
A=I_{2},B=R_{N/2},C=F,D=F \otimes G_{N/4}
A=I2,B=RN/2,C=F,D=F⊗GN/4,则有
G
N
G_{N}
GN的最终表达式
G
N
=
B
N
F
⊗
n
G_{N}=B_{N}F^{\otimes n}
GN=BNF⊗n 其中
B
N
=
R
N
(
I
2
⊗
R
N
/
2
)
(
I
4
⊗
R
N
/
4
)
⋯
(
I
N
/
2
⊗
R
2
)
B_{N}=R_{N}(I_{2} \otimes R_{N/2})(I_{4} \otimes R_{N/4})\cdots (I_{N/2} \otimes R_{2})
BN=RN(I2⊗RN/2)(I4⊗RN/4)⋯(IN/2⊗R2) 进一步
B
N
B_{N}
BN的化简形式为
B
N
=
R
N
(
I
2
⊗
B
N
/
2
)
B_{N}=R_{N}(I_{2} \otimes B_{N/2})
BN=RN(I2⊗BN/2)
参考文献:Channel Polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels, Erdal Arikan
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。