前向纠错码无速率Zigzag双向贪婪解码方法技术

技术编号:38265315 阅读:20 留言:0更新日期:2023-07-27 10:23
本发明专利技术属于通信技术领域,具体是信道编码中纠删码技术,涉及一种前向纠错码率Zigzag双向贪婪解码方法,现有方法对都是将无速率Zigzag解码方法拆分成无速率解码方法和Zigzag解码方法,导致可行解集过小,影响无速率Zigzag解码效率;本方法首先扩大可行解范围,提高无速率解码算法和Zigzag解码算法的耦合性,然后从编码数据包头部和尾部同时进行解码,提高解码实时性,最后进一步利用贪心思想最大化每次判断后解码数据位的个数。本发明专利技术在保证适用于所有无速率Zigzag方法的前提下,通过调整解码结构和特殊的解码流程,大幅度提高无速率Zigzag解码过程的中间符号恢复概率和降低整体解码开销。降低整体解码开销。降低整体解码开销。

【技术实现步骤摘要】
前向纠错码无速率Zigzag双向贪婪解码方法


[0001]本专利技术属于通信
,具体是信道编码中纠删码技术,涉及一种前向纠错码率Zigzag双向贪婪解码方法。

技术介绍

[0002]随着5G网络的全面升级,数据传输的业务量爆发式增长。但是数据包在网络中传输时由于各种原因会被丢弃,如网络拥塞和网络重路由引起的丢包,信道干扰引起的数据包传输不完整而丢包等。前向纠错码是一种在网络传输中应对丢包的技术。考虑实际的流媒体业务的场景,在丢包多、时延大的场景下,适当加入前向纠错编码可以大量节省超时重传的等待时间,从而提高流媒体的服务质量。但是5G终端一般都是移动设备(如手机、嵌入式设备等),这些设备的CPU计算能力和功耗都是有限的,所以需要结合有限的硬件条件设计合适的前向纠错码编解码算法。
[0003]有学者提出了一种Zigzag解码方法,该解码方法是一种数据位级解码方法,通过遍历的方式从每个编码数据包中寻找可解数据位并进行解码,计算复杂度为O(K3L)。有学者提出了另外一类无速率Zigzag码,分块Zigzag喷泉码,以略微加长的编码数据包为代价,使每个完整的Zigzag块中涉及的编码数据包都可以直接利用低复杂度的Zigzag解码算法解码。通过构造更多能够Zigzag解码的子集,使得解码过程中具有较低的缓冲区占用率,更适用于有限硬件条件下的多播和广播场景。如果能够进一步提高无速率Zigzag解码方法的中间符号回复概率,可以进一步降低解码方法的缓冲空间占用并降低整体解码开销,使其能够更有效的应用于流媒体服务当中。r/>
技术实现思路

[0004]本专利技术的内容是提供一种前向纠错码率Zigzag双向贪婪解码方法,其能够针对无速率Zigzag解码中可解子集范围过小,解码实时性有待提高的问题。该方法适用于无速率Zigzag编码方法。
[0005]根据本专利技术的前向纠错码无速率Zigzag双向贪婪解码方法,其包括以下步骤:
[0006]1)初始化,等待接收编码数据包;
[0007]2)判断是否收到编码数据包;
[0008]3)根据收到的编码数据包c
*
(z),得到对应解码移位向量δ
*
;得到对应编码数据包度d
*

[0009]4)去除编码数据包中已知的完整原始数据包,得到数据包级处理后的编码数据包c
p
(z);
[0010]5)去除编码数据包中已经解码的原始数据包的数据位,得到数据位级处理后的编码数据包y
p
(z),将y
p
(z)放入缓存中,并将移位向量保存为T
p

[0011]6)判断y
p
(z)中是否有符合条件的原始数据包序号q
*

[0012]7)头部解码:解码的数据位的长度p'为编码
数据包序号,q'为原始数据包序号,得到对应k'个数据位数据包序号,q'为原始数据包序号,得到对应k'个数据位表示移位关系,Ω
k'
运算表示次数最低的k'个项,更新序号为q'的原始数据包未被解码的数据位η
q'
(z)=η
q'
(z)

Ω
k'

q'
(z)),执行下一步;尾部解码:解码的数据位的长度得到对应k'个数据位得到对应k'个数据位运算表示次数最高的k'个项,更新序号为q'的原始数据包未被解码的数据位执行下一步;
[0013]8)更新序号为q'的原始数据包x
q'
(z);去除所有编码数据包中k'个数据位的信息,更新所有缓存的编码数据包y
p**
(z);如果η
q'
(z)为空,说明该原始数据包已经完全被解码,执行步骤(9),否则执行步骤(10);
[0014]9)更新未被完全解码的原始数据包集合更新已经完整解码的原始数据包的序号的集合如果为空,结束解码,表示解码已经完成,输出原始数据包;
[0015]10)寻找所有编码数据包中符合条件的原始数据包序号和编码数据包序号
[0016]作为优选,步骤1)中,初始化的步骤为:初始化未被完全解码的原始数据包集合初始化所有编码数据包序号的集合初始化K个原始数据包x(z),初始化第j个原始数据包未被解码的数据位η
j
(z),初始化当前接收的编码数据包序号p=1;初始化所有缓存的编码数据包序号的集合为空;初始化已经完整解码的原始数据包的序号的集合为空。
[0017]作为优选,步骤2)中,如果没有收到编码数据包则等待接收,如果有则进行下一步。
[0018]作为优选,步骤4)中,如果数据包级处理后的编码数据包的度d
p
=0,返回步骤(2),否则执行下一步。
[0019]作为优选,步骤6)中,如果符合条件并将p作为参数p'、q
*
作为参数q',执行下一步的头部解码;如果符合条件并将p作为参数p'、q
*
作为参数q',执行下一步的尾部解码;如果不存在p=p+1重新回到步骤(2);p为当前接收的编码数据包序号;其中,ω()表达最低次数项的次数,表达最高次数项的次数。
[0020]作为优选,步骤10)中,如果符合并将作为参数p'、作为参数q',执行步骤7)的头部解码;如果符合并将作为参数p'、作为参数q',执行步骤7)的尾部解码;如果不存在p=p+1,重新回到步骤2),等待接收新的编码数据包。
[0021]本专利技术方法包括解码器初始化、数据包级预处理、数据位级预处理、Zigzag双向贪婪解码算法。本专利技术方法在保证无速率Zigzag成功解码的前提下,利用特殊的解码过程提高无速率解码方法和Zigzag解码方法的耦合性,相对于现有的无速率Zigzag解码方法,提
高中间符号回复率的同时降低缓存需要的空间,从而降低整体解码方法开销。
附图说明
[0022]图1为实施例中一种前向纠错码率Zigzag双向贪婪解码方法的流程图。
具体实施方式
[0023]为进一步了解本专利技术的内容,结合附图和实施例对本专利技术作详细描述。应当理解的是,实施例仅仅是对本专利技术进行解释而并非限定。
[0024]实施例
[0025]如图1所示,本实施例提供了一种前向纠错码率Zigzag双向贪婪解码方法,编码端对接收到的原始数据包分组进行Zigzag编码,原始数据包分组具有K个原始数据包,编码后得到的编码数据包由从K个原始数据包按照鲁棒孤波度分布随机选择的原始数据包移位异或得到;其中第j个原始数据包多项式表达第i个编码数据包多项式表达解码端首先初始化解码器,等待收取编码数据包,每收到编码数据包即进行缓存解码;L为原始数据包长度,z无实际物理意义,只是用多项式的方式表达每个数据位的信息,通过z的阶数确定数据位序号;r为增加的数据位长度。
[0026]具体如下:
[0027]1)初始本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.前向纠错码无速率Zigzag双向贪婪解码方法,其特征在于:包括以下步骤:1)初始化,等待接收编码数据包;2)判断是否收到编码数据包;3)根据收到的编码数据包c
*
(z),得到对应解码移位向量δ
*
;得到对应编码数据包度d
*
;4)去除编码数据包中已知的完整原始数据包,得到数据包级处理后的编码数据包c
p
(z);5)去除编码数据包中已经解码的原始数据包的数据位,得到数据位级处理后的编码数据包y
p
(z),将y
p
(z)放入缓存中,并将移位向量保存为T
p
;6)判断y
p
(z)中是否有符合条件的原始数据包序号q
*
;7)头部解码:解码的数据位的长度p'为编码数据包序号,q'为原始数据包序号,得到对应k'个数据位包序号,q'为原始数据包序号,得到对应k'个数据位表示移位关系,Ω
k'
运算表示次数最低的k'个项,更新序号为q'的原始数据包未被解码的数据位η
q'
(z)=η
q'
(z)

Ω
k'

q'
(z),执行下一步;尾部解码:解码的数据位的长度得到对应k'个数据位得到对应k'个数据位运算表示次数最高的k'个项,更新序号为q'的原始数据包未被解码的数据位执行下一步;8)更新序号为q'的原始数据包x
q'
(z);去除所有编码数据包中k'个数据位的信息,更新所有缓存的编码数据包y
p
**(z);如果η
q'
(z)为空,说明该原始数据包已经完全被解码,执行步骤(9),否则执行步骤(10);9)更新...

【专利技术属性】
技术研发人员:毛光辉王伟平潘民强
申请(专利权)人:浙江红苹果电子有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1