CN101814923A - 一种喷泉码解码方法及装置 - Google Patents

一种喷泉码解码方法及装置 Download PDF

Info

Publication number
CN101814923A
CN101814923A CN200910005378A CN200910005378A CN101814923A CN 101814923 A CN101814923 A CN 101814923A CN 200910005378 A CN200910005378 A CN 200910005378A CN 200910005378 A CN200910005378 A CN 200910005378A CN 101814923 A CN101814923 A CN 101814923A
Authority
CN
China
Prior art keywords
algorithm
raptor
decoding
grouping
sign indicating
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
CN200910005378A
Other languages
English (en)
Other versions
CN101814923B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN 200910005378 priority Critical patent/CN101814923B/zh
Publication of CN101814923A publication Critical patent/CN101814923A/zh
Application granted granted Critical
Publication of CN101814923B publication Critical patent/CN101814923B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明涉及编解码技术,公开了一种喷泉码解码方法及装置,其中,喷泉码解码方法包括:接收L个Raptor码分组;使用BP算法对所述L个Raptor码分组进行解码;如果对所述L个Raptor码分组使用BP算法解码失败,对所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。使用本发明实施例提供的技术方案,可以提高Raptor码分组的解码成功率。

Description

一种喷泉码解码方法及装置
技术领域
本发明涉及一种喷泉码解码方法及装置,具体涉及一种Raptor码解码方法及装置。
背景技术
喷泉编码是指将k个原始分组生成任意数量的编码分组,而只要接收方收到其中任意个编码分组(分组数大于k),即可以高概率成功恢复全部原始分组。因此,喷泉编码器类似于一个喷泉,它将源文件编码成许多数据包向外发送。如果有用户希望接收一个k个原始分组的源文件,那么只要接收到数据包的总量略大于k,就可以通过解码算法恢复出原始文件。由于这个特点,数字喷泉码在纠删除错误方面不会受删除概率影响。特别是在广播和多播传输中,具有抗信道衰落等优点,因此在无线通信和数据存储等方面得到广泛的应用。
Raptor码是一种应用比较广泛的喷泉码,Raptor码在二进制删除信道(BEC)下编解码复杂度都是线性的,但是,它需要接收端收到比原始分组K大一些的编码分组L,才能实现高概率的解码,其中L=K(1+ε),其中ε是冗余度系数,可以根据需要调整。目前Raptor码的建议解码算法是信息传播(BP:Belief Propagation)算法,是一类通过不同节点之间的信息转移来实现解码的算法。在流媒体,数字视频广播(DVB)等针对大数据量的业务里面,由于分组较长,使用BP算法解码的解码效率比较高。
在对现有技术的研究中,发明人发现:现有技术对Raptor码仅采用BP算法进行解码,解码成功率受到BP算法本身的限制。
发明内容
本发明实施例提供了一种喷泉码解码方法及装置,使用本发明实施例提供的技术方案,可以提高Raptor码分组的解码成功率。
本发明实施例的目的是通过以下技术方案实现的:
本发明实施例提供了一种喷泉码解码方法,包括:
接收L个Raptor码分组;
使用BP算法对所述L个Raptor码分组进行解码;
如果对所述L个Raptor码分组使用BP算法解码失败,对所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用高斯消元(GE:GaussianElimination)算法进行解码。
本发明实施例还提供了一种喷泉码解码装置,包括:
接收单元,用于接收L个Raptor码分组;
BP解码单元,用于使用BP算法对所述L个Raptor码分组进行解码;
GE解码单元,用于在所述BP解码单元对所述L个Raptor码分组使用BP算法解码失败时,对所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
从本发明实施例提供的以上技术方案可以看出,由于本发明实施例可以在采用BP算法解码失败时,对采用BP算法解码失败的Raptor码分组采用GE算法进行解码,从而提高对Raptor码分组进行解码的成功率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中喷泉码解码方法实施例一的流程图;
图2为本发明实施例中喷泉码解码方法实施例二的流程图;
图3为本发明实施例中喷泉码解码方法实施例三的流程图;
图4为本发明实施例中喷泉码解码方法实施例四的流程图;
图5为本发明实施例中喷泉码解码方法实施例五的流程图;
图6为本发明实施例中喷泉码解码装置实施例一的流程图;
图7为本发明实施例中喷泉码解码装置实施例二的流程图;
图8为本发明实施例中喷泉码解码装置实施例三的流程图;
图9为本发明实施例中喷泉码解码装置实施例四的流程图;
图10为本发明实施例中喷泉码解码装置实施例五的流程图;
图11为本发明实施例中喷泉码解码装置实施例六的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
先介绍本发明实施例提供的喷泉码解码方法,图1描述了喷泉码解码方法实施例一的流程,包括:
101、接收L个Raptor码分组(symbols);
L的大小根据原始分组K以及冗余度系数ε确定;
102、使用BP算法对L个Raptor码分组进行解码;
103、判断是否解码成功;如果是,成功解码,结束;如果否,进入104;
104、对L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用高斯消元(GE:Gaussian Elimination)算法进行解码;结束。
GE算法是解线性方程组的最常用算法,GE算法先把线性方程组写成矩阵形式,通过矩阵的行(列)变换把矩阵转换成上三角或者下三角矩阵,然后通过回代来求解每一个未知量的值,GE算法对Raptor码分组的解码成功率比较高,尤其对分组较短的Raptor码分组的解码成功率更高。
从上可知,本实施例可以在采用BP算法解码失败时,对采用BP算法解码失败的Raptor码分组采用解码成功率比较高的GE算法进行解码,从而提高对Raptor码分组进行解码的成功率。
进一步,为了提高解码成功率,喷泉码解码方法实施例一可以在对L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码前进一步执行如下步骤:
判断对L个Raptor码分组中采用BP算法解码失败的Raptor码分组的数量是否小于GE成功解码值;如果小于GE成功解码值,才对L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。GE成功解码值是预先设置的一个基准值,当采用BP算法解码失败的Raptor码分组的数量小于GE成功解码值时,则可以确保L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法的解码时间可接受,从而在解码时间可接受的条件下提高解码成功率;该值是经验值,该值的大小可以根据需要进行设置。有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
图2描述了本发明实施例提供的喷泉码解码方法实施例二的流程,包括:
201、接收L个Raptor码分组后,启动解码;
202、判断L是否大于BP成功解码值;如果是,进入204;如果否,进入203;
由于采用BP算法比采用GE算法所需要的时间要少,因此可以预先设置BP成功解码值,在接收的Raptor码分组的数量大于BP成功解码值时,采用BP算法解码所需要的时间比用GE算法解码所需要的时间要少;而在接收的Raptor码分组的数量小与或等于BP成功解码值时,采用BP算法解码所需要的时间比用GE算法解码所需要的时间差不多,此时为了提高解码成功率,可以直接使用GE算法解码;该值是经验值,该值的大小可以根据需要进行设置。
203、采用GE算法解码;结束;
如果L个分组构成的矩阵的秩为L,则可以采用GE算法成功解码;如果矩阵的秩小于L,则不管采用BP算法还是使用GE算法都会解码失败。
204、采用BP算法解码;
采用BP算法解码,如果L个分组构成的矩阵的秩为L,且解码过程中每一步都存在度为1的节点,则能够解码成功。
205、判断是否解码成功;如果是,结束;如果否,进入206;
206、判断对L个Raptor码分组中采用BP算法解码失败的Raptor码分组的数量是否小于GE成功解码值;如果是,进入207;如果否,此时采用GE算法复杂度太大,解码时间不可接受,作为解码失败放弃,结束;
如果L个分组构成的矩阵的秩为L,但是解码过程中存在度不为1的节点,此时,可以判断对L个Raptor码分组中采用BP算法解码失败的Raptor码分组的数量是否小于GE成功解码值,如果小于GE成功解码值,则说明剩余的矩阵的维度已经比较小了,此时可以采取用GE算法对剩余的矩阵进一步求解。
207、对L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
由于在BP算法解码失败的基础上进行GE算法继续解码,因此是使用GE算法对BP算法解码失败的Raptor码分组进行解码,此时可以对BP算法解码失败的Raptor码分组的关联二部图要重新生成关联矩阵。
从上可知,本实施例可以直接根据接收的Raptor码分组的数量选择相应的解码方案,可以在不增加解码时间的基础上采用解码成功率比较高的GE算法进行解码,从而提高解码成功率。
图3描述了本发明实施例提供的喷泉码解码方法实施例三的流程,包括:
301、接收L个Raptor码分组后,启动解码;
302、判断L是否大于BP成功解码值;如果是,进入307;如果否,进入303;
303、采用GE算法解码;
304、判断是否解码成功;如果是,结束;如果否,进入305;
305、发送反馈消息(NACK),接收反馈的Raptor码分组;
在解码失败时可以向Raptor码分组发送端发送反馈消息,Raptor码分组发送端接收到反馈消息后,继续发送一定数量的Raptor码分组,发送的数量根据网络的情况预先设定;
306、对反馈的Raptor码分组与采用GE算法解码失败的Raptor码分组结合的Raptor码分组使用GE算法解码;结束;
在接收到反馈的Raptor码分组后,将新接收的Raptor码分组加入到GE算法解码失败的Raptor码分组中,结合新的二部图矩阵;此时,具体可以采用修正的GE算法对结合得到的二部图矩阵。由于在对一个矩阵使用GE算法进行三角化处理后,矩阵可能不是满秩的,就会存在三角化后矩阵的某些对角线元素为0的情况,此时0所对应的源数据是无法解码的,因此在有反馈的系统中,可以使用接收的反馈的Raptor码分组改进原来的二部图矩阵,以使得新的矩阵是满秩的。由于最初的L个Raptor码分组构成的二部图矩阵已经三角化处理过了,此时新加入的反馈的Raptor码分组就在原来三角化后的基础上进行新的矩阵;在原有三角化矩阵基础上添加新的若干行来生成新的三角化矩阵的算法,称为改进的GE算法。
307、采用BP算法解码;
308、判断是否解码成功;如果是,结束;如果否,进入309;
309、发送反馈消息,接收反馈的Raptor码分组;
310、对反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组的结合使用BP算法解码;
311、判断是否解码成功;如果是,结束;如果否,进入312;
312、判断反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组结合的Raptor码分组中采用BP算法解码失败的Raptor码分组的数量是否小于GE成功解码值;如果是,进入313;如果否,结束;
313、对反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组结合的Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
本实施例中,如果采用BP算法解码失败后,对反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组的结合的Raptor码分组继续使用BP算法解码;在实际应用中,也可以对反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组的结合使用GE算法解码;也可以在采用BP算法解码失败后,不进行反馈,直接对L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
从上可知,本实施例可以直接根据接收的Raptor码分组的数量选择相应的解码方案,可以在不增加解码时间的基础上采用解码成功率更高的GE算法进行解码,从而提高解码成功率;并且在解码失败时,可以获取反馈的Raptor码分组,进而使用反馈的Raptor码分组进行解码,进一步提高解码成功率。
图4描述了本发明实施例提供的喷泉码解码方法实施例四的流程,包括:
401、接收L个Raptor码分组后,启动解码;
402、采用BP算法解码;
403、判断是否解码成功;如果是,结束;如果否,进入404;
404、判断对L个Raptor码分组中采用BP算法解码失败的Raptor码分组的数量是否小于GE成功解码值;如果是,进入405;如果否,结束;
405、对L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
从上可知,本实施例可以在采用BP算法解码失败时,对采用BP算法解码失败的Raptor码分组采用解码成功率比较高的GE算法进行解码,从而提高对Raptor码分组进行解码的成功率;并且可以有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
图5描述了本发明实施例提供的喷泉码解码方法实施例五的流程,包括:
501、接收L个Raptor码分组后,启动解码;
502、采用BP算法解码;
503、判断是否解码成功;如果是,结束;如果否,进入504;
504、判断对L个Raptor码分组中采用BP算法解码失败的Raptor码分组的数量是否小于GE成功解码值;如果是,进入505;如果否,进入509;
505、对L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码;
506、判断是否解码成功;如果是,结束;如果否,进入507;
507、发送反馈消息,接收反馈的Raptor码分组;
508、对反馈的Raptor码分组与采用GE算法解码失败的Raptor码分组结合的Raptor码分组使用GE算法解码;结束。
509、发送反馈消息,接收反馈的Raptor码分组;
510、对反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组结合的Raptor码分组使用BP算法解码;
511、判断是否解码成功;如果是,结束;如果否,进入512;
512、判断反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组结合的Raptor码分组中采用BP算法解码失败的Raptor码分组的数量是否小于GE成功解码值;如果是,进入313;如果否,结束;
513、对反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组结合的Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
从上可知,本实施例可以直接根据接收的Raptor码分组的数量选择相应的解码方案,可以在不增加解码时间的基础上采用解码成功率更高的GE算法进行解码,从而提高解码成功率;并且在解码失败时,可以获取反馈的Raptor码分组,进而使用反馈的Raptor码分组进行解码,进一步提高解码成功率;并且可以有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
再介绍本发明实施例提供的喷泉码解码装置,图6描述了Raptor解码装置实施例一的结构,包括:
接收单元601,用于接收L个Raptor码分组;
BP解码单元602,用于使用BP算法对接收单元601接收的L个Raptor码分组进行解码;
GE解码单元603,用于在BP解码单元601对接收单元601接收的L个Raptor码分组解码失败时,对BP解码单元602解码失败的Raptor码分组使用GE算法进行解码。
从上可知,喷泉码解码装置的本实施例可以在采用BP算法解码失败时,对采用BP算法解码失败的Raptor码分组采用解码成功率比较高的GE算法进行解码,从而提高对Raptor码分组进行解码的成功率。
进一步,如图6所示,本发明实施例提供的喷泉码解码装置实施例一还可以包括:
判断单元604,用于在BP解码单元602对L个Raptor码分组解码失败时,判断BP解码单元602解码失败的Raptor码分组的数量是否小于GE成功解码值;
此时GE解码单元603,仅用于在判断单元604判断BP解码单元602解码失败的Raptor码分组的数量小于GE成功解码值时,对BP解码单元602解码失败的Raptor码分组使用GE算法进行解码。从而可以有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
本发明实施例提供的喷泉码解码装置实施例二的结构如图7所示,包括:
接收单元701,用于接收L个Raptor码分组;接收反馈的Raptor码分组;
BP解码单元702,用于使用BP算法对接收单元701接收的L个Raptor码分组进行解码;
GE解码单元703,用于在BP解码单元702对接收单元701接收的L个Raptor码分组解码失败时,对BP解码单元702解码失败的Raptor码分组使用GE算法进行解码;对接收单元701接收的反馈的Raptor码分组与采用GE算法解码失败的Raptor码分组的结合使用GE算法解码;
发送单元704,用于在GE解码单元703对BP解码单元702解码失败的Raptor码分组使用GE算法解码失败时,发送反馈消息。
从上可知,喷泉码解码装置的本实施例可以在采用BP算法解码失败时,对采用BP算法解码失败的Raptor码分组采用解码成功率比较高的GE算法进行解码,从而提高对Raptor码分组进行解码的成功率;并且在解码失败时,可以获取反馈的Raptor码分组,进而使用反馈的Raptor码分组进行解码,进一步提高解码成功率。
进一步,如图7所示,本发明实施例提供的喷泉码解码装置实施例二还可以包括:
判断单元705,用于在BP解码单元702对L个Raptor码分组解码失败时,判断BP解码单元702解码失败的Raptor码分组的数量是否小于GE成功解码值;
此时GE解码单元703,仅用于在判断单元705判断BP解码单元702解码失败的Raptor码分组的数量小于GE成功解码值时,对BP解码单元702解码失败的Raptor码分组使用GE算法进行解码。从而可以有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
本发明实施例提供的喷泉码解码装置实施例三的结构如图8所示,包括:
接收单元801,用于接收L个Raptor码分组;接收反馈的Raptor码分组;
BP解码单元802,用于使用BP算法对接收单元801接收的L个Raptor码分组进行解码;对接收单元801接收的反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组的结合使用BP算法解码;
发送单元803,用于在所述BP解码单元对接收单元801接收的L个Raptor码分组解码失败时,发送反馈消息;
GE解码单元804,用于在BP解码单元802对接收单元801接收的反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组的结合使用BP算法解码失败时,对接收单元801接收的反馈的Raptor码分组与采用BP算法解码失败的Raptor码分组结合的码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
从上可知,喷泉码解码装置的本实施例可以在采用BP算法解码失败时,对采用BP算法解码失败的Raptor码分组采用解码成功率比较高的GE算法进行解码,从而提高对Raptor码分组进行解码的成功率;并且在解码失败时,可以获取反馈的Raptor码分组,进而使用反馈的Raptor码分组进行解码,进一步提高解码成功率。
进一步,如图8所示,本发明实施例提供的喷泉码解码装置实施例三还可以包括:
判断单元805,用于在BP解码单元802对L个Raptor码分组解码失败时,判断BP解码单元802解码失败的Raptor码分组的数量是否小于GE成功解码值;
此时GE解码单元804,仅用于在判断单元805判断BP解码单元802解码失败的Raptor码分组的数量小于GE成功解码值时,对BP解码单元802解码失败的Raptor码分组使用GE算法进行解码。从而可以有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
本发明实施例提供的喷泉码解码装置实施例四的结构如图9所示,包括:
接收单元901,用于接收L个Raptor码分组;接收反馈的Raptor码分组;
BP解码单元902,用于使用BP算法对接收单元901接收的L个Raptor码分组进行解码;
发送单元903,用于在BP解码单元902对接收单元901接收的L个Raptor码分组解码失败时,发送反馈消息;
GE解码单元904,用于对接收单元901接收的反馈的Raptor码分组与BP解码单元902解码失败的Raptor码分组的结合使用GE算法解码。
从上可知,喷泉码解码装置的本实施例可以在采用BP算法解码失败时,对采用BP算法解码失败的Raptor码分组采用解码成功率比较高的GE算法进行解码,从而提高对Raptor码分组进行解码的成功率;并且在解码失败时,可以获取反馈的Raptor码分组,进而使用反馈的Raptor码分组进行解码,进一步提高解码成功率。
进一步,如图9所示,本发明实施例提供的喷泉码解码装置实施例四还可以包括:
判断单元905,用于在BP解码单元902对L个Raptor码分组解码失败时,判断BP解码单元902解码失败的Raptor码分组的数量是否小于GE成功解码值;
此时GE解码单元904,仅用于在判断单元905判断BP解码单元902解码失败的Raptor码分组的数量小于GE成功解码值时,对BP解码单元902解码失败的Raptor码分组使用GE算法进行解码。从而可以有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
本发明实施例提供的喷泉码解码装置实施例五的结构如图10所示,包括:
接收单元1001,用于接收L个Raptor码分组;
判断单元1002,用于判断L是否大于BP成功解码值;
BP解码单元1003,用于在判断单元1002判断L大于BP成功解码值时,使用BP算法对接收单元1001接收的L个Raptor码分组进行解码;
GE解码单元1004,用于在判断单元1002判断L小于或等于BP成功解码值时,使用GE算法对接收单元1001接收的L个Raptor码分组进行解码。
从上可知,喷泉码解码装置的本实施例可以直接根据接收的Raptor码分组的数量选择相应的解码方案,可以在不增加解码时间的基础上采用解码成功率比较高的GE算法进行解码,从而提高解码成功率。
进一步,本发明实施例提供的喷泉码解码装置五所包括的判断单元1002,还可以用于在BP解码单元1003对L个Raptor码分组解码失败时,判断BP解码单元1003解码失败的Raptor码分组的数量是否小于GE成功解码值;
此时GE解码单元1004,仅用于在判断单元1002判断BP解码单元1003解码失败的Raptor码分组的数量小于GE成功解码值时,对BP解码单元1003解码失败的Raptor码分组使用GE算法进行解码。从而可以有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
本发明实施例提供的喷泉码解码装置实施例六的结构如图11所示,包括:
接收单元1101,用于接收L个Raptor码分组;接收反馈的Raptor码分组;
判断单元1102,用于判断L是否大于BP成功解码值;
BP解码单元1103,用于在判断单元1102判断L大于BP成功解码值时,使用BP算法对接收单元1101接收的L个Raptor码分组进行解码;
GE解码单元1104,用于在判断单元1102判断L小于或等于BP成功解码值时,使用GE算法对接收单元1101接收的L个Raptor码分组进行解码;对接收单元1101接收的反馈的Raptor码分组与采用GE算法解码失败的Raptor码分组的结合使用GE算法解码;
发送单元1105,用于在GE解码单元1104对接收单元1101接收的L个Raptor码分组解码失败时,发送反馈消息。
从上可知,喷泉码解码装置的本实施例可以直接根据接收的Raptor码分组的数量选择相应的解码方案,可以在不增加解码时间的基础上采用解码成功率比较高的GE算法进行解码,从而提高解码成功率;并且在解码失败时,可以获取反馈的Raptor码分组,进而使用反馈的Raptor码分组进行解码,进一步提高解码成功率;并且可以有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
进一步,本发明实施例提供的喷泉码解码装置六所包括的判断单元1102,还可以用于在BP解码单元1103对L个Raptor码分组解码失败时,判断BP解码单元1103解码失败的Raptor码分组的数量是否小于GE成功解码值;
此时GE解码单元1104,仅用于在判断单元1102判断BP解码单元1103解码失败的Raptor码分组的数量小于GE成功解码值时,对BP解码单元1103解码失败的Raptor码分组使用GE算法进行解码。从而可以有选择地对BP算法解码失败的Raptor码分组采用GE算法进行解码,减少不必要的资源使用,提高系统资源的利用效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上对本发明实施例所提供的一种喷泉码解码方法及装置进行了详细介绍,以上实施例的说明只是用于帮助理解本发明的方法及其思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (14)

1.一种喷泉码解码方法,其特征在于,包括:
接收L个Raptor码分组;
使用信息传播BP算法对所述L个Raptor码分组进行解码;
如果对所述L个Raptor码分组使用BP算法解码失败,对所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用高斯消元GE算法进行解码。
2.如权利要求1所述的喷泉码解码方法,其特征在于,对所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码前进一步包括:
判断对所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组的数量是否小于GE成功解码值;
如果小于GE成功解码值,执行对所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
3.如权利要求1或2所述的喷泉码解码方法,其特征在于,如果对所述采用BP算法解码失败的Raptor码分组使用GE算法解码失败,该方法还包括:
发送反馈消息;
接收反馈的Raptor码分组;
对所述反馈的Raptor码分组与所述采用GE算法解码失败的Raptor码分组的结合使用GE算法解码。
4.如权利要求1所述的喷泉码解码方法,其特征在于,如果对所述L个Raptor码分组使用BP算法解码失败,该方法进一步包括:
发送反馈消息;
接收反馈的Raptor码分组;
对所述反馈的Raptor码分组与所述采用BP算法解码失败的Raptor码分组的结合使用BP算法解码;
如果对所述结合的Raptor码分组使用BP算法解码失败,对所述结合的Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
5.如权利要求1所述的喷泉码解码方法,其特征在于,如果对所述L个Raptor码分组使用BP算法解码失败,该方法进一步包括:
发送反馈消息;
接收反馈的Raptor码分组;
对所述反馈的Raptor码分组与所述采用BP算法解码失败的Raptor码分组的结合使用GE算法解码。
6.如权利要求1所述的喷泉码解码方法,其特征在于,接收L个Raptor码分组后进一步包括:
判断所述L是否大于BP成功解码值;
如果大于BP成功解码值,执行所述使用BP算法对所述L个Raptor码分组进行解码的步骤;否则,使用GE算法对所述L个Raptor码分组进行解码。
7.如权利要求6所述的喷泉码解码方法,其特征在于,如果使用GE算法对所述L个Raptor码分组解码失败,该方法还包括:
发送反馈消息;
接收反馈的Raptor码分组;
对所述反馈的Raptor码分组与所述采用GE算法解码失败的Raptor码分组的结合使用GE算法解码。
8.一种喷泉码解码装置,其特征在于,包括:
接收单元,用于接收L个Raptor码分组;
BP解码单元,用于使用BP算法对所述L个Raptor码分组进行解码;
GE解码单元,用于在所述BP解码单元对所述L个Raptor码分组使用BP算法解码失败时,对所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
9.如权利要求8所述的喷泉码解码装置,其特征在于,还包括:
判断单元,用于在所述BP解码单元对L个Raptor码分组使用BP算法解码失败时,判断所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组的数量是否小于GE成功解码值;
所述GE解码单元,用于在所述判断L个Raptor码分组中采用BP算法解码失败的Raptor码分组的数量小于GE成功解码值时,对所述L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
10.如权利要求8或9所述的喷泉码解码装置,其特征在于,还包括:
发送单元,用于在所述GE解码单元对L个Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法解码失败时,发送反馈消息;
所述接收单元,还用于接收反馈的Raptor码分组;
所述GE解码单元,还用于对所述反馈的Raptor码分组与所述采用GE算法解码失败的Raptor码分组的结合使用GE算法解码。
11.如权利要求8所述的喷泉码解码装置,其特征在于,还包括:
发送单元,用于在所述BP解码单元对所述L个Raptor码分组使用BP算法解码失败时,发送反馈消息;
所述接收单元,还用于接收反馈的Raptor码分组;
所述BP解码单元,还用于对所述反馈的Raptor码分组与所述采用BP算法解码失败的Raptor码分组的结合使用BP算法解码;
所述GE解码单元,还用于在所述BP解码单元对所述结合的Raptor码分组使用BP算法解码失败时,对所述结合的Raptor码分组中采用BP算法解码失败的Raptor码分组使用GE算法进行解码。
12.如权利要求8所述的喷泉码解码装置,其特征在于,还包括:
发送单元,用于在所述BP解码单元对所述L个Raptor码分组使用BP算法解码失败时,发送反馈消息;
所述接收单元,还用于接收反馈的Raptor码分组;
所述GE解码单元,用于对所述反馈的Raptor码分组与所述采用BP算法解码失败的Raptor码分组的结合使用GE算法解码。
13.如权利要求8所述的喷泉码解码装置,其特征在于,还包括:
判断单元,用于判断所述L是否大于BP成功解码值;
所述BP解码单元,用于在所述判断单元判断L大于BP成功解码值时,使用BP算法对所述L个Raptor码分组进行解码;
所述GE解码单元,用于在所述判断单元判断L小于或等于BP成功解码值时,使用GE算法对所述L个Raptor码分组进行解码。
14.如权利要求13所述的喷泉码解码装置,其特征在于,还包括:
发送单元,用于在所述GE解码单元对所述L个Raptor码分组使用GE算法解码失败时,发送反馈消息;
所述接收单元,还用于接收反馈的Raptor码分组;
所述GE解码单元,还用于对所述反馈的Raptor码分组与所述采用GE算法解码失败的Raptor码分组的结合使用GE算法解码。
CN 200910005378 2009-02-20 2009-02-20 一种喷泉码解码方法及装置 Expired - Fee Related CN101814923B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910005378 CN101814923B (zh) 2009-02-20 2009-02-20 一种喷泉码解码方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910005378 CN101814923B (zh) 2009-02-20 2009-02-20 一种喷泉码解码方法及装置

Publications (2)

Publication Number Publication Date
CN101814923A true CN101814923A (zh) 2010-08-25
CN101814923B CN101814923B (zh) 2013-09-11

Family

ID=42622058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910005378 Expired - Fee Related CN101814923B (zh) 2009-02-20 2009-02-20 一种喷泉码解码方法及装置

Country Status (1)

Country Link
CN (1) CN101814923B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102237966A (zh) * 2011-07-11 2011-11-09 哈尔滨工业大学深圳研究生院 基于度2和高度编码包的喷泉码解码方法
CN102244922A (zh) * 2011-08-08 2011-11-16 浙江大学 加性白高斯噪声信道下适用于Raptor Codes的功率控制方法
CN102833051A (zh) * 2012-08-24 2012-12-19 北京理工大学 基于反馈的喷泉编码广播方法
CN103347202A (zh) * 2013-06-19 2013-10-09 兰州大学 一种无线通信系统中的ewf码译码方法
CN104104727B (zh) * 2014-07-24 2017-05-17 中国传媒大学 一种基于Raptor码的大文件传输方法
CN107332647A (zh) * 2017-06-12 2017-11-07 华南理工大学 一种Raptor码的高效HARQ方法
WO2018210002A1 (zh) * 2017-05-19 2018-11-22 中兴通讯股份有限公司 干扰处理方法和装置
CN109274462A (zh) * 2018-09-30 2019-01-25 东北大学 一种基于改进在线喷泉码的图像传输方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101179279B (zh) * 2007-11-27 2012-11-07 浙江大学 适合于加性白高斯噪声信道的无速率码编译码方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102237966A (zh) * 2011-07-11 2011-11-09 哈尔滨工业大学深圳研究生院 基于度2和高度编码包的喷泉码解码方法
CN102244922A (zh) * 2011-08-08 2011-11-16 浙江大学 加性白高斯噪声信道下适用于Raptor Codes的功率控制方法
CN102244922B (zh) * 2011-08-08 2014-05-07 浙江大学 加性白高斯噪声信道下适用于Raptor Codes的功率控制方法
CN102833051B (zh) * 2012-08-24 2014-12-10 北京理工大学 基于反馈的喷泉编码广播方法
CN102833051A (zh) * 2012-08-24 2012-12-19 北京理工大学 基于反馈的喷泉编码广播方法
CN103347202B (zh) * 2013-06-19 2016-05-11 兰州大学 一种无线通信系统中的ewf码译码方法
CN103347202A (zh) * 2013-06-19 2013-10-09 兰州大学 一种无线通信系统中的ewf码译码方法
CN104104727B (zh) * 2014-07-24 2017-05-17 中国传媒大学 一种基于Raptor码的大文件传输方法
WO2018210002A1 (zh) * 2017-05-19 2018-11-22 中兴通讯股份有限公司 干扰处理方法和装置
CN108964721A (zh) * 2017-05-19 2018-12-07 中兴通讯股份有限公司 一种干扰处理方法和装置
CN108964721B (zh) * 2017-05-19 2021-06-18 中兴通讯股份有限公司 一种干扰处理方法和装置
CN107332647A (zh) * 2017-06-12 2017-11-07 华南理工大学 一种Raptor码的高效HARQ方法
CN107332647B (zh) * 2017-06-12 2020-09-22 华南理工大学 一种Raptor码的高效HARQ方法
CN109274462A (zh) * 2018-09-30 2019-01-25 东北大学 一种基于改进在线喷泉码的图像传输方法

Also Published As

Publication number Publication date
CN101814923B (zh) 2013-09-11

Similar Documents

Publication Publication Date Title
CN101814923B (zh) 一种喷泉码解码方法及装置
US9118353B2 (en) System and method for communicating with low density parity check codes
CN101453297B (zh) 低密度生成矩阵码的编码方法和装置、及译码方法和装置
US8737519B2 (en) Apparatus and method for channel coding in a communication system
EP1214793B9 (en) Group chain reaction encoder with variable number of associated input data for each output group code
US8301974B2 (en) System and method for low complexity raptor codes for multimedia broadcast/multicast service
EP1241795A2 (en) Method and system for transmitting and receiving information using chain reaction codes
WO2014044072A1 (zh) 混合极性码的生成方法和生成装置
WO2017112744A1 (en) Improved joint fountain coding and network coding for loss-tolerant information spreading
US9136981B2 (en) Block aggregation of objects in a communication system
RU2461970C2 (ru) Способ и устройство для приема данных
CN101414833B (zh) 低密度生成矩阵码的编码方法及装置
CN102484483A (zh) 设定迭代译码的迭代次数的方法、迭代译码装置及方法
CN101459490B (zh) 一种数据传输方法及装置
US9264181B2 (en) Communication system, method and receiver applicable thereto
CN113098661B (zh) 一种基于喷泉码的卫星信道下的文件传输方法
CN101286745B (zh) 一种交织编码方法及装置
Cunche et al. Optimizing the error recovery capabilities of LDPC-staircase codes featuring a Gaussian Elimination decoding scheme
Roca et al. Rs+ ldpc-staircase codes for the erasure channel: Standards, usage and performance
US9455750B2 (en) Source block size selection
KR20150033863A (ko) 비이진 ldpc 부호를 사용하는 수신기에서 데이터를 복호하는 방법 및 장치
WO2009089695A1 (fr) Procédé et équipement de transmission de données
CN101162966A (zh) 一种将纠错码技术用于数据传输的方法及系统
CN102263606A (zh) 信道数据编码、解码方法及装置
Hayajneh Overlapped fountain coding: Design and analysis

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130911