[发明专利]一种基于系统在线喷泉码的高编码符号度值广播方法有效
申请号: | 201911374501.5 | 申请日: | 2019-12-27 |
公开(公告)号: | CN111050291B | 公开(公告)日: | 2020-12-04 |
发明(设计)人: | 费泽松;黄靖轩;李欢 | 申请(专利权)人: | 北京理工大学 |
主分类号: | H04W4/06 | 分类号: | H04W4/06;H04W28/06;H04L1/00 |
代理公司: | 北京正阳理工知识产权代理事务所(普通合伙) 11639 | 代理人: | 王松 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 系统 在线 喷泉 编码 符号 广播 方法 | ||
1.一种基于系统在线喷泉码的高编码符号度值广播方法,该方法依托的系统包括发送端、信道和接收端;其中,发送端包括信源和编码器,信源共有k个信源符号,记为X1,X2,X3,...,Xk;信道为二元删除信道;接收端的数量为M个,其序号分别为1,2,3,...,i,...M;i为接收端的序号,取值范围为1到M;每个接收端又包括译码器和信宿;所述高编码符号度值广播方法,其特征在于:包括如下步骤:
步骤1:初始化发送端和接收端,具体为:
每个接收端初始化两个空集合:集合Bi和集合Ti,并初始化存储空间MCi,MSi,MDi和MMi为空,初始化m'i=0;发送端初始化l=0和集合Q为空;
其中,i为接收端的序号,取值范围为1,2,3,...,M;集合Bi是第i个接收端所有已经完成译码的信源符号的序号的集合,集合Ti是第i个接收端待处理的编码符号的序号的集合;存储空间MCi用于在第i个接收端存储编码符号和相应的序号列,存储空间MSi用于在第i个接收端存储译码器处理得到的序号列集合,存储空间MDi用于在第i个接收端存储完成译码的信源符号和相应的序号,存储空间MMi用于在第i个接收端存储等待译码的编码符号和相应的序号;m'i是对第i个接收端最优的编码符号度值,l是记录已发送编码符号个数的计数器;集合Q是发送端存储接收端反馈信息的集合;
步骤2:编码器产生第一类编码符号并发送到译码器;
步骤3:接收端i译码器接收、存储步骤2发出的第一类编码符号,并进行相应处理,具体为:
译码器将编码符号CB1l作为序号l对应的信源符号,与序号l一同存储在MDi中;
步骤4:判断l是否等于k,若是跳至步骤5,否则跳至步骤2;
步骤5:接收端译码器统计恢复比例并产生反馈,具体为:
步骤5.1接收端i译码器统计恢复比例βi,再依据下述公式(1),由βi计算mi:
其中,βi是在线喷泉码译码端得到的信源符号占全部信源符号的比例;mi表示对信源符号进行在线喷泉码编码时,理论上最优的所需信源符号的个数;
步骤5.2判断MMi是否为空,若为空,则跳至步骤6,若MMi非空,则判断m'i与mi的关系,并进行如下操作:
5.2A若mi≠m'i,将MMi中的任意一个序号列作为新的N2j,其对应的编码数据包作为新的第二类编码符号CB2j,跳至步骤7;
5.2B若mi=m'i,M个接收端将译码器端计算的mi值分别反馈给发送端编码器;
步骤6:发送端编码器产生第二类在线喷泉码编码符号并发送,具体为:
步骤6.1编码器利用接收到的反馈信息mi(i=1,2,...,M)更新序列Q,记其中最大的mi为mmax;
步骤6.2编码器选择mmax个信源符号异或得到第二类编码符号;
其中,mmax个信源符号异或运算结果记为CB2j,进行异或运算的mmax个信源符号对应的序号列记为下标j表示第j个第二类编码符号;
步骤6.3将步骤6.2输出的第二类编码符号CB2j和其对应的序号列N2j发送给译码器;
步骤7:译码器接收并处理步骤6发送的第二类编码符号,具体为:
步骤7.1接收端i译码器计算集合Bi和序号列N2j的交集Yij,从N2j中减去Yij得到序号列N2’ij,计算N2’ij中序号的个数;
步骤7.2对N2’ij中序号的个数进行判断,若序号的个数为0,则跳至步骤6;否则若序号的个数不为0,则Yij中的所有序号所对应的信源符号依次与CB2j进行异或运算,得到CB2’ij并进行进一步判断N2’ij中的元素个数,操作如下:
7.2A若N2’ij中的元素个数为1,则N2’ij中只有一个序号n2j,其所对应的编码符号为CB2’ij,CB2’ij是一个度值为1的编码符号,跳至步骤8;
7.2B若N2’ij中的元素个数为2,则N2’ij中存在两个序号即N2’ij={n3g1,n3g2},其所对应的编码符号为CB2’ij,记CB2’ij是一个度值为2的编码符号,跳至步骤9;
7.2C若N2’ij中的元素个数不为1或2,则将数据编码符号CB2’ij与其对应的序号N2’ij存储在MMi中,跳至步骤10;
步骤8:接收端i译码器存储并处理度值为1的编码符号,具体为:
步骤8.1译码器将编码符号CB2’ij作为序号n2j对应的信源符号存储到MDi中;
步骤8.2查找MCi中的序号列,将所有含有序号n2j的序号列对应的编码符号依次与CB2’ij进行异或运算,每次运算的结果作为此序号列中另一序号n3gx对应的编码符号的译码结果,存储到MDi中;将所有译码结果对应的序号存入集合Ti中,从MCi中删除译码的序号列和编码符号;
其中,n3gx对应n3g1或n3g2,记N3g={n3g1,n3g2}为度值为2的编码符号所对应的序号列,n3g1和n3g2的范围为1到k;度值为2的编码符号由两个信源符号异或得到;
步骤8.3将集合Ti中的任意一个序号作为新的n2j,将这个序号从Ti中删除,将对应的信源符号作为新的CB2’ij;
步骤8.4执行步骤8.2,再判断集合Ti是否为空集,若集合Ti为空集,则跳至步骤8.5,否则若集合Ti非空,跳至步骤8.3;
步骤8.5译码器查找MSi中的集合,对序号n2j进行判断,若序号n2j属于MSi中的某一集合,则将这个集合中的全部序号存入集合Bi中;否则若序号n2j不属于MSi中的任一集合,则将序号n2j存入集合Bi中,跳至步骤10;
步骤9:接收端i译码器存储并处理度值为2的编码符号,具体为:
步骤9.1接收端i译码器将编码符号CB3g和序号列N3g={n3g1,n3g2}存储在MCi中;
其中,CB3g记为第三类编码符号,由两个原始信息编码数据包异或得到,下标g表示第g个第三类编码符号;
步骤9.2对步骤9.1中存储的N3g中的两个序号进行判断,并进行相应操作:
9.2A若N3g中的序号n3g1和n3g2不属于MSi中的任何一个序号列的集合,则将N3g存储在MSi中;
9.2B若N3g中的一个序号属于MSi中某一序号列集合,则将另一个序号也放入该集合中;
9.2C若N3g中的两个序号分属MSi中的两个序号列集合,则将这两个集合合并;
步骤10:计算并判断所有接收端译码器恢复比例βi(i=1,2,3...,M)是否都等于1,若是,结束本方法,否则跳至步骤5。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911374501.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种防止严寒地区碾压混凝土坝产生裂缝的方法
- 下一篇:跷跷板式过山车