[发明专利]基于Zigzag拓展贪心轮转解码的喷泉码方法在审
申请号: | 202210553920.0 | 申请日: | 2022-05-20 |
公开(公告)号: | CN115085866A | 公开(公告)日: | 2022-09-20 |
发明(设计)人: | 杨堃;谢磊;王匡;陆志成 | 申请(专利权)人: | 杭州信熵科技有限公司 |
主分类号: | H04L1/00 | 分类号: | H04L1/00;H04L1/12 |
代理公司: | 杭州君度专利代理事务所(特殊普通合伙) 33240 | 代理人: | 陈炜 |
地址: | 310056 浙江省杭州市滨江区长河街道江二*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 zigzag 拓展 贪心 轮转 解码 喷泉 方法 | ||
1.基于Zigzag拓展贪心轮转解码的喷泉码方法,包括编码方法和解码方法,其特征在于,所述的编码方法具体是:
步骤(A)编码端收到一个原始数据包分组,包含K个原始数据包s1,s2,…,sK,每个原始数据包的长度为L;
将每个原始数据包用一个基于GF(2)有限域的多项式表达,编号为i的原始数据包z为比特位置偏移符号,si,l表示编号为i的原始数据包的第l个数据位,i∈{1,…,K},l∈{1,…,L};
步骤(B)根据解码端反馈的当前解码情况β,决定编码数据包度dm,当前解码情况β为当前已经完整解码的原始数据包所占的比例:
m为变量;
从原始数据包分组中随机选择dm个不同的原始数据包
步骤(C)根据预先设定的分布生成dm个移位向量然后得到最终dm个移位向量,最小移位向量
步骤(D)将选取的dm个编码数据包根据生成的dm个移位向量通过移位异或生成编码数据包c(z),并发送给解码端:
如β<1则返回步骤(B)继续编码,直至β=1编码结束;
所述的解码方法具体是:
步骤(1)解码初始化,包括:
初始化K个原始数据包x1,x2,…,xK为空;
初始化未被完全解码的原始数据包集合
初始化第j个原始数据包未被解码的数据位ηj(z):=1+z+…+zL-1,j=1,2,…,K;
初始化当前接收的编码数据包序号
初始化所有缓存的编码数据包序号的集合为空;
初始化已经完整解码的原始数据包的序号的集合为空;
步骤(2)判断是否收到编码数据包;如果没有收到则等待接收,否则执行步骤(3);
步骤(3)根据收到的编码数据包c*(z),得到对应解码移位向量其中每个元素表示对应的原始数据包移位;得到对应编码数据包度d*;
步骤(4)去除编码数据包中已知的完整原始数据包,得到数据包级处理后的编码数据包如果数据包级处理后的编码数据包的度dp>2或者dp=0,返回步骤(2),否则执行步骤(5);
步骤(5)去除编码数据包中已经解码的原始数据包的数据位,得到数据位级处理后的编码数据包将yp(z)放入缓存中,并将移位向量保存为Tp;Tp=[tp,1,tp,2,…,tp,K]=δ*;
步骤(6)判断yp(z)中是否有符合条件的原始数据包序号q*:
运算符号ω表示最低项的次数;
如果有符合条件的原始数据包序号,返回步骤(2);否则,初始化解码顺序队列K*为空,并将编码数据包序号p和原始数据包序号q*作为一个元素(p,q*)添加到轮转解码顺序队列K*的尾部,并将p作为参数p'、q*作为参数q',执行步骤(7);
步骤(7)可以解码的数据位的长度p'为编码数据包序号,q'为原始数据包序号;得到对应k'个数据位是序号为p'的编码数据包中最低次数的k'个未知数据位,其中Ωk'运算表示次数最低的k'个项;
步骤(8)更新序号为q'的原始数据包
更新序号为q'的原始数据包未被解码的数据位ηq'(z)=ηq'(z)-Ωk'(ηq'(z));
去除所有编码数据包中该k'个数据位的信息,更新所有缓存的编码数据包
如果ηq'(z)为空,说明该原始数据包已经完全被解码,执行步骤(9),否则执行步骤(10);
步骤(9)更新未被完全解码的原始数据包集合更新已经完整解码的原始数据包的序号的集合
步骤(10)寻找所有编码数据包中符合条件的原始数据包序号和编码数据包序号
如果存在符合条件的和则将和作为参数,执行步骤(11);如果不存在,执行步骤(15);
步骤(11)判断解码顺序队列K*的头部元素(p1,q1)是否等于原始数据包序号和编码数据包序号组成的元素如果执行步骤(12);否则将元素添加到轮转解码顺序队列K*的尾部,并将作为参数p'、作为参数q',执行步骤(7);
步骤(12)计算序号为p1的编码数据包可以解码的数据位长度
步骤(13)依次从解码顺序队列K*中读取元素(P,Q),解码序号为P的原始数据包中D个数据位是序号为P的编码数据包中最低次数的D个未知数据位;更新序号为Q原始数据包更新序号为Q的原始数据包未被解码的数据位ηQ(z)=ηQ(z)-ΩD(ηQ(z));去除所有编码数据包中该D个数据位的信息,更新所有缓存的编码数据包直到解码顺序队列K*中包含的所有原始数据包被完全解码;
步骤(14)更新未被完全解码的原始数据包集合更新已经完整解码的原始数据包的序号的集合为解码顺序队列K*中所有所有原始数据包的序号的集合;
步骤(15)向接收端反馈当前解码情况,当前已经完整解码的原始数据包所占的比例
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州信熵科技有限公司,未经杭州信熵科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210553920.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种集成电路加工贴片工艺、系统
- 下一篇:一种水利施工用疏浚清淤装置