CN104506199A - 一种模拟喷泉码的低复杂度译码方法 - Google Patents

一种模拟喷泉码的低复杂度译码方法 Download PDF

Info

Publication number
CN104506199A
CN104506199A CN201410713012.9A CN201410713012A CN104506199A CN 104506199 A CN104506199 A CN 104506199A CN 201410713012 A CN201410713012 A CN 201410713012A CN 104506199 A CN104506199 A CN 104506199A
Authority
CN
China
Prior art keywords
centerdot
iteration
prime
node
check
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410713012.9A
Other languages
English (en)
Other versions
CN104506199B (zh
Inventor
罗骥
刘强
史治平
田佳佳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201410713012.9A priority Critical patent/CN104506199B/zh
Publication of CN104506199A publication Critical patent/CN104506199A/zh
Application granted granted Critical
Publication of CN104506199B publication Critical patent/CN104506199B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Error Detection And Correction (AREA)

Abstract

本发明涉及通信领域中的一种联合编码调制技术,尤其涉及一种模拟喷泉码(Analog Fountain Code,AFC)的低复杂度译码方法。本发明在译码过程中,独立进行水平迭代和垂直迭代,设置迭代终止次数,避免迭代不收敛或者过度迭代的情况,降低译码的复杂度。本发明与现有技术相比,水平迭代的复杂度降低,即对于生成矩阵G中的每一行都少求了(L-2)·4+4=4·L-4次线性卷积。如果有m个符号进行传输,则将减少m·(4·L-4)次线性卷积的计算。

Description

一种模拟喷泉码的低复杂度译码方法
技术领域
本发明涉及通信领域中的一种联合编码调制技术,尤其涉及一种模拟喷泉码(Analog Fountain Code,AFC)的低复杂度译码方法。
背景技术
现有的通信系统大多采用速率兼容的编码RCC和相对固定的调制方式来组合出若干种编码调制方式。在信道条件好的时候,使用高阶调制方式。在信道条件差的时候,使用低阶调制方式。例如,在信道条件差的时候,为了保证传输数据的准确性,降低误码率,往往采用低码率(比如1/2码率)的LDPC码进行编码,再用低阶调制方式(比如QPSK)调制以后进行传输,这时传输的速率低。然而,信道的情况是变化的,如果信道情况变好,就需要将信道情况变好这一信息反馈给发射机,发射机接收到反馈的信息以后,选择一个高码率(比如5/6码率)的LDPC码进行编码,然后选择一种高阶调制方式进行调制(比如128QAM,1024QAM),最后再进行传输,因为这时信道条件好,误码率也很低,传输的速率高。也就是说,发射机要适应当前的信道条件,这就需要信道反馈信息来选择适当的编码调制方式。所以,传统的编码调制方式可以提供的调整的码率是有限个,在现有技术的情况下,不能平滑地进行码率调整,因为可选的码率和调制方式只有预先设定的几种。
学术界提出了速率兼容调制的方法(RCM)。RCM是一种特殊的AFC,该技术不需要信道信息反馈,同时还可以实现平滑的速率自适应。由于良好的联合编码调制的设计理念,该技术表现出了良好的性能,与802.11a中的自适应编码调制技术相比,获得了80%的吞吐量增益,比采用Turbo码和Raptor码的HARQ系统分别获得了28.8%和43.8%的性能增益。
但是,对于AFC的译码,目前仅仅只有文献“Seamless Rate Adaptation for WirelessNetworking”给出了一种BP译码算法。然而,这种BP译码算法存在一些问题:没有迭代停止,这样很可能会出现收敛以后,继续迭代译码的情况,这样会大大增加译码时间;另外,由于AFC编码后的符号是实数,使用原BP算法译码的复杂度相对较高,在一些场景使用的时候,有必要对译码算法进行改进,以降低译码复杂度。
发明内容
本发明针对现有现有技术的不足,提出了一种模拟喷泉码的低复杂度译码方法。该方法使水平迭代的复杂度降低了大约一半。同时,加入了迭代停止准则,使得在速率损失不大的情况下,大大降低了译码的复杂度。译码器使用足够多的符号数就能成功译码。
一种模拟喷泉码的低复杂度译码方法,具体步骤如下:
S1、初始化信息:令二进制信息序列I={I1,I2,.....,IN}中每个元素为1或-1的概率为0.5,经过BPSK调制后,则有p(bj=-1)=p(bj=1)=0.5, 所述p(bj=-1)=p(bj=1)=0.5表示第j个信息符号bj初始时为1或-1的概率均为0.5,所述表示初始时,除了第i个校验节点以外,其它校验节点判定该信息符号bj为1或-1的概率,表示第t次迭代以后,除了第i个校验节点以外,其它校验节点判定bj为1或-1的概率。其中,j=1,2,3,...,N,N为码长,即生成矩阵G的列数;
S2、初始化迭代次数Tc,令Tc=0,其中,Tc≤Tmax,Tmax为最大迭代次数;
S3、进行迭代,所述迭代包括水平迭代和垂直迭代,其中,
水平迭代具体如下:
Ⅰ、接收端接收实数符号向量u'=(u'1,u'2,.....,u'M),其中M是传输的符号数。对于第i个符号ui'(1≤i≤M),计算与ui'相邻的bj等于-1的后验概率为计算与ui'相邻的bj等于1的后验概率为其中,1≤j≤L,L为检验节点的度;
Ⅱ、表示第t次迭代以后,除了第i个校验节点以外,其它校验节点判定bj为-1或1的概率。
Ⅲ、利用Ⅱ所述更新节点k1和k2的后验信息 r ik 2 t ( - 1 ) , r ik 2 t ( 1 ) ;
Ⅳ、令 U jk 12 = u i ′ - w k 1 · b k 1 - w k 2 · b k 2 , w k 1 ≠ w k 2 计算后验概率:
U jk 12 = u i ′ - w k 1 - w k 2 , b k 1 = b k 2 = 1
U jk 12 = u i ′ + w k 1 + w k 2 , b k 1 = b k 2 = - 1
U jk 12 = u i ′ - w k 1 + w k 2 , b k 1 = b k 2 = - 1
U jk 12 = u i ′ + w k 1 - w k 2 , b k 1 = - 1 , b k 2 = 1 ,
其中,为,为生成矩阵G的第i行中任意两个绝对值不相等的权重,即任意两个不相等的非零元素的大小;
Ⅴ、得到:
r ik 1 t ( - 1 ) = p ( b k 1 = - 1 | u i ′ ) = p ( U jk 12 = u i ′ + w k 1 + w k 2 ) + p ( U jk 12 = u i ′ + w k 1 - w k 2 ) ,
r ik 1 t ( 1 ) = p ( b k 1 = 1 | u i ′ ) = p ( U jk 12 = u i ′ - w k 1 - w k 2 ) + p ( U jk 12 = u i ′ - w k 1 + w k 2 ) ;
以同样的方式计算所有的后验信息。
Ⅵ、计算U的分布 P ( U jk ) = &CircleTimes; i t , 0 < t < L , t &NotEqual; j , k P ( w t &CenterDot; b i t ) &CircleTimes; P ( e i ) , 其中,是卷积运算,P(ei)~N(0,σ2);
垂直迭代具体如下:
计算 q ji t ( - 1 ) = C ji &CenterDot; ( 1 - p j ) &CenterDot; &Pi; k &Element; T l \ i r kj t ( - 1 ) q ji t ( 1 ) = C ji &CenterDot; ( 1 - p j ) &CenterDot; &Pi; k &Element; T j \ i r kj t ( 1 ) , 其中,Cji是标准化因子,Tj是生成矩阵G中校验节点连接变量节点j的索引集合,所述Cji用以确保 q ji t ( - 1 ) + q ji t ( 1 ) = 1 成立;
S4、若迭代次数Tc<Tmax,则令Tc=Tc+1,返回步骤S3;
S5、当迭代次数Tc>T0时,计算 num ( t ) = sum ( ( sign ( log ( q j t ( - 1 ) / q j t ( 1 ) ) ) + 1 ) / 2 ) , 其中, q j t ( - 1 ) = C j &CenterDot; ( 1 - p j ) &CenterDot; &Pi; k &Element; T j r kj t ( - 1 ) , q j t ( 1 ) = C j &CenterDot; p j &CenterDot; &Pi; k &Element; T j r kj t ( 1 ) , 所述Cj用以确保成立,
若num(t+1)-num(t)≤qp·N则认为迭代收敛,终止迭代,
若num(t+1)-num(t)>qp·N,则令Tc=Tc+1,返回步骤S3,
其中,T0为经验常数,qp为停止因子,qp为经验常数,t和t+1表示当前迭代和后一次迭代;
S6、如果bj=-1;否则bj=1,得到译出的序列b;
S7、将S6所述序列b经过解映射,即BPSK解调,完成译码。
进一步地,S2所述Tmax≥T0
进一步地,S5所述T0=8。
进一步地,S5所述停止因子qp=0.0005。
本发明的有益效果是:
本发明与现有技术相比,水平迭代的复杂度降低,即对于生成矩阵G中的每一行都少求了(L-2)·4+4=4·L-4次线性卷积。如果有m个符号进行传输,则将减少m·(4·L-4)次线性卷积的计算。
现有技术在译码过程中迭代不能停止,需要在while循环结束以后才能计算判决信息进行判决。本发明设置迭代终止次数,能避免迭代不收敛或者过度迭代的情况,降低译码的复杂度。
附图说明
图1为本发明比特到符号映射的加权二分图。
图2为本发明的系统框图。
图3为本发明与现有BP译码方法的仿真对比曲线图。
具体实施方式
下面结合实施例和附图,详细说明本发明的技术方案。
实施例1、
设置码长N=3448,生成矩阵G为随机矩阵:
如图1所示,二进制比特序列I经过BPSK调制,得到序列其中,b∈(-1,1),N为生成矩阵G的码长。
于是,基于生成矩阵G,得到用于传输的符号所述符号u直接用于调制信号幅度,其中,M为传输的符号数,即生成矩阵G的行数,1≤m≤M。
符号u通过标准的AWGN信道模型后得到u'=G·b+e,其中,高斯白噪声e(m)服从高斯分布N(0,δ2)。
为了充分利用星座图的平面(即同向相位和正交相位),提高传输效率,每两个连续的符号组成一个调制信号。所述调制信号表示为其中,k=0,1,…M/2-1。
调制信号s(k)通过AWGN信道,得到调制信号向量s'。
接收端将收到的调制信号向量s'还原为实数符号向量u',进行译码,即寻找 b ^ = arg b &Element; GF ( 2 N ) max P ( b | u &prime; ) 的最优解。
译码过程具体如下:
S1、初始化信息:令二进制信息序列I={I1,I2,.....,IN}中每个元素为1或-1的概率为0.5,经过BPSK调制后,则有p(bj=-1)=p(bj=1)=0.5,表示第j个信息符号bj初始时为1或-1的概率均为表示初始时,除了第i个校验节点以外,其它校验节点判定该信息符号bj为1或-1的概率,就表示第t次迭代以后,除了第i个校验节点以外,其它校验节点判定bj为1或-1的概率。其中,j=1,2,3,...,N,N为码长,即生成矩阵G的列数;
S2、初始化迭代次数Tc,令Tc=0,其中,Tc≤Tmax,Tmax为最大迭代次数,Tmax≥T0
S3、进行迭代,所述迭代包括水平迭代和垂直迭代,其中,
水平迭代具体如下:
Ⅰ、接收端接收实数符号向量u'=(u'1,u'2,.....,u'M),其中M是传输的符号数。对于第i个符号ui'(1≤i≤M),计算与ui'相邻的bj等于-1的后验概率为计算与ui'相邻的bj等于1的后验概率为其中,1≤j≤L,L为检验节点的度;
Ⅱ、表示第t次迭代以后,除了第i个校验节点以外,其它校验节点判定bj为-1或1的概率。
Ⅲ、利用Ⅱ所述更新节点k1和k2的后验信息 r ik 2 t ( - 1 ) , r ik 2 t ( 1 ) ;
Ⅳ、令 U jk 12 = u i &prime; - w k 1 &CenterDot; b k 1 - w k 2 &CenterDot; b k 2 , w k 1 &NotEqual; w k 2 计算后验概率:
U jk 12 = u i &prime; - w k 1 - w k 2 , b k 1 = b k 2 = 1
U jk 12 = u i &prime; + w k 1 + w k 2 , b k 1 = b k 2 = - 1
U jk 12 = u i &prime; - w k 1 + w k 2 , b k 1 = b k 2 = - 1
U jk 12 = u i &prime; + w k 1 - w k 2 , b k 1 = - 1 , b k 2 = 1 ,
其中,为,为生成矩阵G的第i行中任意两个绝对值不相等的权重,即任意两个不相等的非零元素的大小,例如可以取
Ⅴ、得到:
r ik 1 t ( - 1 ) = p ( b k 1 = - 1 | u i &prime; ) = p ( U jk 12 = u i &prime; + w k 1 + w k 2 ) + p ( U jk 12 = u i &prime; + w k 1 - w k 2 ) ,
r ik 1 t ( 1 ) = p ( b k 1 = 1 | u i &prime; ) = p ( U jk 12 = u i &prime; - w k 1 - w k 2 ) + p ( U jk 12 = u i &prime; - w k 1 + w k 2 ) ;
以同样的方式计算所有的后验信息。
Ⅵ、计算U的分布 P ( U jk ) = &CircleTimes; i t , 0 < t < L , t &NotEqual; j , k P ( w t &CenterDot; b i t ) &CircleTimes; P ( e i ) , 其中,是卷积运算,P(ei)~N(0,σ2)。
垂直迭代具体如下:
计算 q ji t ( - 1 ) = C ji &CenterDot; ( 1 - p j ) &CenterDot; &Pi; k &Element; T l \ i r kj t ( - 1 ) q ji t ( 1 ) = C ji &CenterDot; ( 1 - p j ) &CenterDot; &Pi; k &Element; T j \ i r kj t ( 1 ) , 其中,Cji是标准化因子,Tj是生成矩阵G中校验节点连接变量节点j的索引集合,所述Cji用以确保 q ji t ( 0 ) + q ji t ( 1 ) = 1 成立。
S4、若迭代次数Tc<Tmax,则令Tc=Tc+1,返回步骤S3。
S5、当迭代次数Tc>T0时,计算 q j t ( 1 ) = C j &CenterDot; p j &CenterDot; &Pi; k &Element; T j r kj t ( 1 ) ,
所述Cj用以确保成立;
进一步计算 num ( t ) = sum ( ( sign ( log ( q j t ( - 1 ) / q j t ( 1 ) ) ) + 1 ) / 2 ) ,
若num(t+1)-num(t)≤qp·N则认为迭代收敛,终止迭代,
若num(t+1)-num(t)>qp·N,则令Tc=Tc+1,返回步骤S3,
其中,T0为经验常数,T0=8,qp为停止因子,qp为经验常数,qp=0.0005,t和t+1表示当前迭代和后一次迭代。
S6、如果bj=-1;否则bj=1,得到译出的序列b。
S7、将S6所述序列b经过解映射,即BPSK解调,完成译码。
实施例2、
设置码长N=3448,构造生成矩阵G:
G = A 1 B a D a 2 D a 3 2 &CenterDot; I a 4 - 2 &CenterDot; I a 5 - 1 &CenterDot; I a 6 I a 7 2 &CenterDot; I b - 2 &CenterDot; I ab I a 2 b - 1 &CenterDot; I a 3 b 4 &CenterDot; I a 4 b - 4 &CenterDot; I a 5 b 7 &CenterDot; I a 6 b - 7 &CenterDot; I a 7 b - 7 &CenterDot; I b 2 7 &CenterDot; I ab 2 2 &CenterDot; I a 2 b 2 - 2 &CenterDot; I a 3 b 2 I a 4 b 2 - 1 &CenterDot; I a 5 b 2 - 4 &CenterDot; I a 6 b 2 4 &CenterDot; I a 7 b 2 - 4 &CenterDot; I b 3 4 &CenterDot; I ab 3 - 7 &CenterDot; I a 2 b 3 7 &CenterDot; I a 3 b 3 2 &CenterDot; I a 4 b 3 - 2 &CenterDot; I a 5 b 3 - 1 &CenterDot; I a 6 b 3 I a 7 b 3 - 1 &CenterDot; I b 4 I ab 4 - 4 &CenterDot; I a 2 b 4 4 &CenterDot; I a 3 b 4 - 7 &CenterDot; I a 4 b 4 7 &CenterDot; I a 5 b 4 2 &CenterDot; I a 6 b 4 - 2 &CenterDot; I a 7 b 4 2 &CenterDot; I b 5 - 2 &CenterDot; I ab 5 - 1 &CenterDot; I a 2 b 5 I a 3 b 5 - 4 &CenterDot; I a 4 b 5 4 &CenterDot; I a 5 b 5 - 7 &CenterDot; I a 6 b 5 7 &CenterDot; I a 7 b 5 7 &CenterDot; I b 6 - 7 &CenterDot; I ab 6 - 2 &CenterDot; I a 2 b 6 2 &CenterDot; I a 3 b 6 I a 4 b 6 - 1 &CenterDot; I a 5 b 6 4 &CenterDot; I a 6 b 6 - 4 &CenterDot; I a 7 b 6 I b 7 - 1 &CenterDot; I ab 7 4 &CenterDot; I a 2 b 7 - 4 &CenterDot; I a 3 b 7 7 &CenterDot; I a 4 b 7 - 7 &CenterDot; I a 5 b 7 - 2 &CenterDot; I a b b 7 2 &CenterDot; I a 7 b 7 , 其中,所述生成矩阵G的长度为N,即生成矩阵G是一个N×N的矩阵,所述生成矩阵G第i行表示一个校验节点,记作ui,所述生成矩阵G的第j列代表一个信息符号,记作bj,若生成矩阵G的第i行第j列的元素不为0,则说明ui和bj相连,所述生成矩阵G中1/8的校验节点度为12,7/8的校验节点度为8,1/2的变量节点度为8,1/2的变量节点度为9.,Ix表示431×431的单位矩阵循环右移x位,A,B,C,D是大小为431×431的双对角矩阵, A = 4 1 4 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; 1 4 1 4 , B = - 4 - 1 - 4 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; - 1 - 4 - 1 - 4 ,
C = 7 1 7 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; 1 7 1 7 , D = - 7 - 1 - 7 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; - 1 - 7 - 1 - 7 .
如图1所示,二进制比特序列I经过BPSK调制,得到序列其中,b∈(-1,1),N为生成矩阵G的码长。
于是,基于生成矩阵G,得到用于传输的符号所述符号u直接用于调制信号幅度,其中,M为传输的符号数,即生成矩阵G的行数,1≤m≤M。
符号u通过标准的AWGN信道模型后得到u'=G·b+e,其中,高斯白噪声e(m)服从高斯分布N(0,δ2)。
为了充分利用星座图的平面(即同向相位和正交相位),提高传输效率,每两个连续的符号组成一个调制信号。所述调制信号表示为其中,k=0,1,…M/2-1。
调制信号s(k)通过AWGN信道,得到调制信号向量s'。
接收端将收到的调制信号向量s'还原为实数符号向量u',进行译码,即寻找 b ^ = arg b &Element; GF ( 2 N ) max P ( b | u &prime; ) 的最优解。
译码过程具体如下:
S1、初始化信息:令二进制信息序列I={I1,I2,.....,IN}中每个元素为1或-1的概率为0.5,经过BPSK调制后,则有p(bj=-1)=p(bj=1)=0.5,表示第j个信息符号bj初始时为1或-1的概率均为表示初始时,除了第i个校验节点以外,其它校验节点判定该信息符号bj为1或-1的概率,就表示第t次迭代以后,除了第i个校验节点以外,其它校验节点判定bj为1或-1的概率。其中,j=1,2,3,...,N,N为码长,即生成矩阵G的列数;
S2、初始化迭代次数Tc,令Tc=0,其中,Tc≤Tmax,Tmax为最大迭代次数,Tmax≥T0
S3、进行迭代,所述迭代包括水平迭代和垂直迭代,其中,
水平迭代具体如下:
Ⅰ、接收端接收实数符号向量u'=(u'1,u'2,.....,u'M),其中M是传输的符号数。对于第i个符号ui'(1≤i≤M),计算与ui'相邻的bj等于-1的后验概率为计算与ui'相邻的bj等于1的后验概率为其中,1≤j≤L,L为检验节点的度;
Ⅱ、表示第t次迭代以后,除了第i个校验节点以外,其它校验节点判定bj为-1或1的概率。
Ⅲ、利用Ⅱ所述更新节点k1和k2的后验信息其中1≤k1,k2≤L;
Ⅳ、令 U jk 12 = u i &prime; - w k 1 &CenterDot; b k 1 - w k 2 &CenterDot; b k 2 , w k 1 &NotEqual; w k 2 计算后验概率:
U jk 12 = u i &prime; - w k 1 - w k 2 , b k 1 = b k 2 = 1
U jk 12 = u i &prime; + w k 1 + w k 2 , b k 1 = b k 2 = - 1
U jk 12 = u i &prime; - w k 1 + w k 2 , b k 1 = b k 2 = - 1
U jk 12 = u i &prime; + w k 1 - w k 2 , b k 1 = - 1 , b k 2 = 1 ,
其中,为,为生成矩阵G的第i行中任意两个绝对值不相等的权重,即任意两个不相等的非零元素的大小,例如可以取
Ⅴ、得到:
r ik 1 t ( - 1 ) = p ( b k 1 = - 1 | u i &prime; ) = p ( U jk 12 = u i &prime; + w k 1 + w k 2 ) + p ( U jk 12 = u i &prime; + w k 1 - w k 2 ) ,
r ik 1 t ( 1 ) = p ( b k 1 = 1 | u i &prime; ) = p ( U jk 12 = u i &prime; - w k 1 - w k 2 ) + p ( U jk 12 = u i &prime; - w k 1 + w k 2 ) ;
以同样的方式计算所有的后验信息。
Ⅵ、计算U的分布 P ( U jk ) = &CircleTimes; i t , 0 < t < L , t &NotEqual; j , k P ( w t &CenterDot; b i t ) &CircleTimes; P ( e i ) , 其中,是卷积运算,P(ei)~N(0,σ2)。
垂直迭代具体如下:
计算 q ji t ( - 1 ) = C ji &CenterDot; ( 1 - p j ) &CenterDot; &Pi; k &Element; T l \ i r kj t ( - 1 ) q ji t ( 1 ) = C ji &CenterDot; ( 1 - p j ) &CenterDot; &Pi; k &Element; T j \ i r kj t ( 1 ) , 其中,Cji是标准化因子,Tj是生成矩阵G中校验节点连接变量节点j的索引集合,所述Cji用以确保 q ji t ( - 1 ) + q ji t ( 1 ) = 1 成立。
S4、若迭代次数Tc<Tmax,则令Tc=Tc+1,返回步骤S3。
S5、当迭代次数Tc>T0时,计算 q j t ( 1 ) = C j &CenterDot; p j &CenterDot; &Pi; k &Element; T j r kj t ( 1 ) ,
进一步计算 num ( t ) = sum ( ( sign ( log ( q j t ( - 1 ) / q j t ( 1 ) ) ) + 1 ) / 2 ) ,
若num(t+1)-num(t)≤qp·N则认为迭代收敛,终止迭代,
若num(t+1)-num(t)>qp·N,则令Tc=Tc+1,返回步骤S3,
其中,T0为经验常数,T0=8,qp为停止因子,qp为经验常数,qp=0.0005,t和t+1表示当前迭代和后一次迭代。
S6、如果bj=-1;否则bj=1,得到译出的序列b。
S7、将S6所述序列b经过解映射,即BPSK解调,完成译码。
如图3所示,本发明方法与现有BP译码方法相比,速率的的损失仅仅为0.3—0.5bit/s/HZ,但是复杂度却大大降低了。现有BP译码方法是利用L-1个节点的消息来更新另一个节点的后验信息本发明方法利用L-2个节点的消息来更新另外两个节点的后验信息。这样,水平迭代的复杂度降低了大约一半。即对于G中的每一行,少求了(L-2)·4+4=4·L-4次线性卷积,如果用m个符号进行译码,那么将减少m·(4·L-4)次线性卷积。
对于实施例2所述生成矩阵G来说,生成矩阵G中1/8的校验节点度为12,7/8的校验节点度为8。假设我们用1000个符号进行译码,且这1000个符号对应的校验节点度均为8,即m=1000,L=8。此时,译码的一次迭代将减少1000×(4×8-4)=28000次线性卷积的计算。现有技术在译码过程中迭代不能停止,需要在while循环结束以后才能计算判决信息进行判决。本发明设置迭代终止次数,能避免迭代不收敛或者过度迭代的情况,降低译码的复杂度。

Claims (4)

1.一种模拟喷泉码的低复杂度译码方法,其特征在于,包括如下步骤:
S1、初始化信息:令二进制信息序列I={I1,I2,.....,IN}中每个元素为1或-1的概率为0.5,经过BPSK调制后,则有 p ( b j = - 1 ) = p ( b j = 1 ) = 0.5 , q ji ( 0 ) ( - 1 ) = 1 - p j , q ji ( 0 ) ( 1 ) = p j , 所述p(bj=-1)=p(bj=1)=0.5表示第j个信息符号bj初始时为1或-1的概率均为0.5,所述表示初始时,除了第i个校验节点以外,其它校验节点判定该信息符号bj为1或-1的概率,表示第t次迭代以后,除了第i个校验节点以外,其它校验节点判定bj为1或-1的概率,其中,j=1,2,3,...,N,N为码长,即生成矩阵G的列数;
S2、初始化迭代次数Tc,令Tc=0,其中,Tc≤Tmax,Tmax为最大迭代次数;
S3、进行迭代,所述迭代包括水平迭代和垂直迭代,其中,
水平迭代具体如下:
Ⅰ、接收端接收实数符号向量u'=(u'1,u'2,.....,u'M),其中M是传输的符号数,对于第i个符号u′i,计算与u′i相邻的bj等于-1的后验概率为计算与u′i相邻的bj等于1的后验概率为其中,1≤j≤L,L为检验节点的度,1≤i≤M;
Ⅱ、表示第t次迭代以后,除了第i个校验节点以外,其它校验节点判定bj为-1或1的概率;
Ⅲ、利用Ⅱ所述更新节点k1和k2的后验信息 r ik 2 t ( - 1 ) , r ik 2 t ( 1 ) ;
Ⅳ、令 U jk 12 = u i &prime; - w k 1 &CenterDot; b k 1 - w k 2 &CenterDot; b k 2 , w k 1 &NotEqual; w k 2 计算后验概率:
U jk 12 = u i &prime; - w k 1 - w k 2 , b k 1 = b k 2 = 1
U jk 12 = u i &prime; + w k 1 + w k 2 , b k 1 = b k 2 = - 1
U jk 12 = u i &prime; - w k 1 + w k 2 , b k 1 = b k 2 = - 1
U jk 12 = u i &prime; + w k 1 - w k 2 , b k 1 = - 1 , b k 2 = 1 ,
其中,为,为生成矩阵G的第i行中任意两个绝对值不相等的权重,即任意两个不相等的非零元素的大小;
Ⅴ、得到:
r ik 1 t ( - 1 ) = p ( b k 1 = - 1 | u i &prime; ) = p ( U jk 12 = u i &prime; + w k 1 + w k 2 ) + p ( U jk 12 = u i &prime; + w k 1 - w k 2 ) ,
r ik 1 t ( 1 ) = p ( b k 1 = 1 | u i &prime; ) = p ( U jk 12 = u i &prime; - w k 1 - w k 2 ) + p ( U jk 12 = u i &prime; - w k 1 + w k 2 ) ;
Ⅵ、计算U的分布 P ( U jk ) = { &CircleTimes; i t , 0 < t < L , t &NotEqual; j , k P ( w t &CenterDot; b i t ) } &CircleTimes; P ( e i ) , 其中,是卷积运算,P(ei)~N(0,σ2);
垂直迭代具体如下:
计算 q jt t ( - 1 ) = C jt &CenterDot; ( 1 - p j ) &CenterDot; &Pi; k &Element; T l \ i r kj t ( - 1 ) q ji t ( 1 ) = C ji &CenterDot; p j &CenterDot; &Pi; k &Element; T j \ i r kj t ( 1 ) , 其中,Cji是标准化因子,Tj是生成矩阵G中校验节点连接变量节点j的索引集合,所述Cji用以确保 q ji t ( - 1 ) + q ji t ( 1 ) = 1 成立;
S4、若迭代次数Tc<Tmax,则令Tc=Tc+1,返回步骤S3;
S5、当迭代次数Tc>T0时,计算 num ( t ) = sum ( ( sign ( log ( q j t ( - 1 ) / q j t ( 1 ) ) ) + 1 ) / 2 ) , 其中, q j t ( - 1 ) = C j &CenterDot; ( 1 - p j ) &CenterDot; &Pi; k &Element; T j r kj t ( - 1 ) , q j t ( 1 ) = C j &CenterDot; p j &CenterDot; &Pi; k &Element; T j r kj t ( 1 ) , 所述Cj用以确保成立,
若num(t+1)-num(t)≤qp·N则认为迭代收敛,终止迭代,
若num(t+1)-num(t)>qp·N,则令Tc=Tc+1,返回步骤S3,
其中,T0为经验常数,qp为停止因子,qp为经验常数,t和t+1表示当前迭代和后一次迭代;
S6、如果bj=-1;否则bj=1,得到译出的序列b;
S7、将S6所述序列b经过解映射,即BPSK解调,完成译码。
2.根据权利要求1所述的一种模拟喷泉码的低复杂度译码方法,其特征在于:S2所述Tmax≥T0
3.根据权利要求1所述的一种模拟喷泉码的低复杂度译码方法,其特征在于:S5所述T0=8。
4.根据权利要求1所述的一种模拟喷泉码的低复杂度译码方法,其特征在于:S5所述停止因子qp=0.0005。
CN201410713012.9A 2014-11-28 2014-11-28 一种模拟喷泉码的低复杂度译码方法 Active CN104506199B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410713012.9A CN104506199B (zh) 2014-11-28 2014-11-28 一种模拟喷泉码的低复杂度译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410713012.9A CN104506199B (zh) 2014-11-28 2014-11-28 一种模拟喷泉码的低复杂度译码方法

Publications (2)

Publication Number Publication Date
CN104506199A true CN104506199A (zh) 2015-04-08
CN104506199B CN104506199B (zh) 2017-06-09

Family

ID=52947923

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410713012.9A Active CN104506199B (zh) 2014-11-28 2014-11-28 一种模拟喷泉码的低复杂度译码方法

Country Status (1)

Country Link
CN (1) CN104506199B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106506113A (zh) * 2016-10-11 2017-03-15 哈尔滨工业大学深圳研究生院 一种面向Ka频段通信的自适应模拟喷泉码的实现方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101510783A (zh) * 2009-03-26 2009-08-19 北京理工大学 一种基于有限域的多进制喷泉编码和译码方法
CN101582744A (zh) * 2009-06-19 2009-11-18 重庆邮电大学 一种基于迭代方法的rs喷泉码的编译码方法
CN103001739A (zh) * 2012-11-27 2013-03-27 上海交通大学 适用于无线广播系统的喷泉码译码方法
CN103793197A (zh) * 2013-12-27 2014-05-14 天津航天中为数据系统科技有限公司 一种喷泉码编译码方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101510783A (zh) * 2009-03-26 2009-08-19 北京理工大学 一种基于有限域的多进制喷泉编码和译码方法
CN101582744A (zh) * 2009-06-19 2009-11-18 重庆邮电大学 一种基于迭代方法的rs喷泉码的编译码方法
CN103001739A (zh) * 2012-11-27 2013-03-27 上海交通大学 适用于无线广播系统的喷泉码译码方法
CN103793197A (zh) * 2013-12-27 2014-05-14 天津航天中为数据系统科技有限公司 一种喷泉码编译码方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
何秀慧 等: "一种改进的LT码置信传播译码", 《计算机工程与应用》 *
余国华 等: "Raptor码译码算法的改进方案", 《通信技术》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106506113A (zh) * 2016-10-11 2017-03-15 哈尔滨工业大学深圳研究生院 一种面向Ka频段通信的自适应模拟喷泉码的实现方法
CN106506113B (zh) * 2016-10-11 2019-08-09 哈尔滨工业大学深圳研究生院 一种面向Ka频段通信的自适应模拟喷泉码的实现方法

Also Published As

Publication number Publication date
CN104506199B (zh) 2017-06-09

Similar Documents

Publication Publication Date Title
AU2009217934B2 (en) Method and apparatus for channel encoding and decoding in a communication system using Low-Density Parity-Check codes
CN102752261B (zh) 基于apsk星座图的星座映射方法、编码调制方法及系统
CN105308867B (zh) 用于对数据进行调制以进行光通信的方法和系统
AU2009217933B2 (en) Method and apparatus for channel encoding and decoding in a communication system using Low-Density Parity-Check codes
CN103765781B (zh) 广播/通信系统中用于发送和接收信息的方法和装置
CN102292917B (zh) 利用二元删除替代信道在awgn信道条件下将比特交织器适配于ldpc码和调制的方法和装置
JP6104405B2 (ja) 光通信のためにデータを変調する方法およびシステム
CN111066252B (zh) 处理ldpc编码数据的方法和装置
CN106230489A (zh) 适用于任意高阶调制的极化码编码调制方法
CN104079380B (zh) 分布式联合信源‑信道叠加编码及联合译码方法
AU2009220393B2 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
CN107294543B (zh) 一种用于生成rc-ldpc码校验矩阵的方法
US9735921B2 (en) Ultra-high speed optical transport employing LDPC-coded modulation with non-uniform signaling
CN106254030B (zh) 无速率Spinal码的双向编译码方法
CN108777605B (zh) 适用于块衰落信道的多链sc-ldpc编码方法
CN104393877A (zh) 基于加权的非规则ldpc码线性规划译码方法
CN101707489A (zh) 基于振荡的多进制ldpc译码方法
CN101262307B (zh) 一种含有星座图旋转调制方式的串行级联编译码系统
US20150128004A1 (en) Constellation mapping for communication systems
CN104935411A (zh) 一种基于分集的无速率码联合度数动态译码方法
CN104954099A (zh) 译码迭代次数约束下累积无率码的优化设计方法
CN103746772B (zh) Ldpc编码调制系统的解调器输出软信息的优化方法
CN104506199A (zh) 一种模拟喷泉码的低复杂度译码方法
CN103346863B (zh) 一种算术域比特交织编码调制方法
CN107070586A (zh) 一种基于低密度格码的中继协作编码方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant