CN106850137B - 一种lt码度分布设计方法及装置 - Google Patents
一种lt码度分布设计方法及装置 Download PDFInfo
- Publication number
- CN106850137B CN106850137B CN201710000638.9A CN201710000638A CN106850137B CN 106850137 B CN106850137 B CN 106850137B CN 201710000638 A CN201710000638 A CN 201710000638A CN 106850137 B CN106850137 B CN 106850137B
- Authority
- CN
- China
- Prior art keywords
- data packet
- distribution
- source data
- coded data
- degree
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Error Detection And Correction (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种LT码度分布设计方法及装置,能够减小误比特率和译码开销,提高译码效率。所述方法包括:基于PMRSD度分布的分布函数,确定待编码源数据包的包号;根据源数据包的总数K、编码数据包的总数N及待编码源数据包的包号,生成编码生成矩阵GK×N;将源数据包与GK×N进行模二相乘,得到编码数据包并向接收端发送所述编码数据包;在接收端生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若有,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,且使译码计数器count加1;令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0,当count=K时,完成译码。本发明涉及通信技术领域。
Description
技术领域
本发明涉及通信技术领域,特别是指一种LT码度分布设计方法及装置。
背景技术
现有的LT编码中度分布的设计方法主要集中在Luby提出的鲁棒孤子度分布(Robust Solition Distribution,RSD)的基础上进行改进和修正。除此之外还有一些利用二进制指数分布(Binary Exponential Distribution,BED)修正的正态分布、利用反馈修改度分布函数、联合度分布和新开关度分布来作为LT编码的度分布函数。
LT码的译码方法主要有两种:置信传播法(Belief Propagation,BP)和高斯消元法(Gauss Elimination,GE)。由于GE的译码方法复杂度较高,因此在LT译码中通常采用BP译码法,采用BP译码有一个必要条件就是要保证在译码过程中总有度值为1的编码包存在,否则就会译码中断,需要接收更多的编码数据包来进行下一步译码。
采用RSD进行LT编码时,其产生的编码数据包的度值较大,在译码时可能会由于缺少足够多的度值较小的编码数据包,而不能通过迭代的方法产生度值为1的编码包,从而导致译码中断,为了能够成功译码则需要接收更多的编码数据包,这就导致了接收端冗余增大即译码开销增加。
采用BED进行LT编码,根据BED度分布函数可知,其可以确保能够生成足够多的度值较小的编码数据包,以保证在进行BP译码时总有度值为1的编码数据包存在,但由于其大部分编码数据包的度值较小,编码数据包可能没有覆盖原始数据的全部信息,因此,会导致原始数据遗漏,从而增加误比特率。为了减小误比特率,在收端进行译码时,则需要接收大量的编码数据包来保证编码数据包覆盖全部的原始数据,这就是以增加开销为代价来减小误比特率。
发明内容
本发明要解决的技术问题是提供一种LT码度分布设计方法及装置,以解决现有技术所存在的译码开销大的问题。
为解决上述技术问题,本发明实施例提供一种LT码度分布设计方法,包括:
S1,基于预设的PMRSD度分布的分布函数,确定待编码源数据包si的包号i;
S2,根据源数据包的总数K、编码数据包的总数N及确定的所述待编码源数据包si的包号i,生成编码生成矩阵GK×N,其中,在GK×N中,每一列对应一个编码数据包cj,每一列的第i个元素为1,其他元素为0,i为确定的待编码源数据包si的包号;
S3,将K个源数据包s1,s2,……,sK与GK×N进行模二相乘,得到N个编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN;
S4,在接收端接收编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若GK×N中有度值d=1的列,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令度值d=1的点(i,j)=0,且使译码计数器count加1,其中,i表示GK×N中的行,j表示GK×N中的列;
S5,令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0;
S6,判断count是否等于源数据包的总数K,若count=K,则完成译码;否则,则返回S4继续接收编码数据包进行译码。
进一步地,所述S1包括:
根据预设的PMRSD度分布的分布函数通过二分法确定度值d;
根据确定的度值d,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
进一步地,所述预设的PMRSD度分布的分布函数表示为:
其中,d=1,2,……,K
其中,d=1,2,……,K
其中,pmrsd(d)为预设的PMRSD度分布的分布函数,p(d)为Poisson分布的分布函数,mrsd(d)为Moved-RSD分布的分布函数,d为度值,q为当前编码数据包的个数,β为度分布转换点,K为源数据包的总数,λ为随机选取度值的平均概率,e为自然对数的底,ρ(d)为修正后的理想度分布的分布函数,τ(d)为一个正整数,n为第一峰值点,b为第一峰值系数,δ为未能成功译出全部源数据包的概率,R为在译码过程中产生度值d为1的编码数据包个数。
进一步地,所述根据确定的度值d,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i包括:
利用随机函数生成d个随机数,确定每个随机数落到的概率区间,其中,随机数的值在[0,1]之间;
根据d个随机数各自落到的概率区间,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
进一步地,所述S4还包括:
若GK×N中没有度值d=1的列,则继续接收编码数据包进行译码。
本发明实施例还提供一种LT码度分布设计装置,包括:
确定模块,用于基于预设的PMRSD度分布的分布函数,确定待编码源数据包si的包号i;
生成模块,用于根据源数据包的总数K、编码数据包的总数N及确定的所述待编码源数据包si的包号i,生成编码生成矩阵GK×N,其中,在GK×N中,每一列对应一个编码数据包cj,每一列的第i个元素为1,其他元素为0,i为确定的待编码源数据包si的包号;
编码模块,用于将K个源数据包s1,s2,……,sK与GK×N进行模二相乘,得到N个编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN;
译码模块,用于在接收端接收编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若GK×N中有度值d=1的列,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令度值d=1的点(i,j)=0,且使译码计数器count加1,其中,i表示GK×N中的行,j表示GK×N中的列;还用于令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0;
判断模块,用于判断count是否等于源数据包的总数K,若count=K,则完成译码;否则,则返回所述译码模块继续接收编码数据包进行译码。
进一步地,所述确定模块包括:
确定单元,用于根据预设的PMRSD度分布的分布函数通过二分法确定度值d;
记录单元,用于根据确定的度值d,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
进一步地,所述预设的PMRSD度分布的分布函数表示为:
其中,d=1,2,……,K
其中,d=1,2,……,K
其中,pmrsd(d)为预设的PMRSD度分布的分布函数,p(d)为Poisson分布的分布函数,mrsd(d)为Moved-RSD分布的分布函数,d为度值,q为当前编码数据包的个数,β为度分布转换点,K为源数据包的总数,λ为随机选取度值的平均概率,e为自然对数的底,ρ(d)为修正后的理想度分布的分布函数,τ(d)为一个正整数,n为第一峰值点,b为第一峰值系数,δ为未能成功译出全部源数据包的概率,R为在译码过程中产生度值d为1的编码数据包个数。
进一步地,所述记录单元包括:
确定子模块,用于利用随机函数生成d个随机数,确定每个随机数落到的概率区间,其中,随机数的值在[0,1]之间;
记录子模块,用于根据d个随机数各自落到的概率区间,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
进一步地,所述译码模块,还用于若GK×N中没有度值d=1的列,则继续接收编码数据包进行译码。
本发明的上述技术方案的有益效果如下:
上述方案中,基于预设的PMRSD度分布的分布函数,确定待编码源数据包si的包号i;根据源数据包的总数K、编码数据包的总数N及确定的所述待编码源数据包si的包号i,生成编码生成矩阵GK×N,其中,在GK×N中,每一列对应一个编码数据包cj,每一列的第i个元素为1,其他元素为0,i为确定的待编码源数据包si的包号;将K个源数据包s1,s2,……,sK与GK×N进行模二相乘,得到N个编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN;在接收端接收编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若GK×N中有度值d=1的列,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令度值d=1的点(i,j)=0,且使译码计数器count加1,其中,i表示GK×N中的行,j表示GK×N中的列;令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0,当count=K时,完成译码,这样,能够减小误比特率和译码开销,提高译码效率。
附图说明
图1为本发明实施例提供的LT码度分布设计方法的流程示意图;
图2为本发明实施例提供的基于PMRSD度分布的LT编码方法流程示意图;
图3为本发明实施例提供的基于PMRSD度分布的LT译码方法流程示意图;
图4为本发明实施例提供的编码生成矩阵GK×N的变换示意图;
图5为本发明实施例提供的基于PMRSD度分布与新开关度分布的LT码,在接收端接收编码数据包比例与成功译码比例关系示意图;
图6为本发明实施例提供的基于PMRSD度分布与新开关度分布的LT码,在发送端发送不同源数据包个数与译码开销的关系示意图;
图7为本发明实施例提供的基于PMRSD度分布与新开关度分布的LT码,在发送端发送不同源数据包个数与译码效率的关系示意图;
图8为本发明实施例提供的LT码度分布设计装置的结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的译码开销大的问题,提供一种LT码度分布设计方法及装置。
实施例一
参看图1所示,本发明实施例提供的LT码度分布设计方法,包括:
S101,基于预设的PMRSD度分布的分布函数,确定待编码源数据包si的包号i;
S102,根据源数据包的总数K、编码数据包的总数N及确定的所述待编码源数据包si的包号i,生成编码生成矩阵GK×N,其中,在GK×N中,每一列对应一个编码数据包cj,每一列的第i个元素为1,其他元素为0,i为确定的待编码源数据包si的包号;
S103,将K个源数据包s1,s2,……,sK与GK×N进行模二相乘,得到N个编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN;
S104,在接收端接收编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若GK×N中有度值d=1的列,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令度值d=1的点(i,j)=0,且使译码计数器count加1,其中,i表示GK×N中的行,j表示GK×N中的列;
S105,令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0;
S106,判断count是否等于源数据包的总数K,若count=K,则完成译码;否则,则返回S104继续接收编码数据包进行译码。
本发明实施例所述的LT码度分布设计方法,基于预设的PMRSD度分布的分布函数,确定待编码源数据包si的包号i;根据源数据包的总数K、编码数据包的总数N及确定的所述待编码源数据包si的包号i,生成编码生成矩阵GK×N,其中,在GK×N中,每一列对应一个编码数据包cj,每一列的第i个元素为1,其他元素为0,i为确定的待编码源数据包si的包号;将K个源数据包s1,s2,……,sK与GK×N进行模二相乘,得到N个编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN;在接收端接收编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若GK×N中有度值d=1的列,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令度值d=1的点(i,j)=0,且使译码计数器count加1,其中,i表示GK×N中的行,j表示GK×N中的列;令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0,当count=K时,完成译码,这样,能够减小误比特率和译码开销,提高译码效率。
本实施例中,设源数据包的总数为K,s1,s2,……,sK表示源数据包表示;编码数据包的总数为N,c1,c2,……,cN表示编码数据包。
本实施例所述的LT码度分布设计方法,主要包括:在发送端,基于PMRSD度分布的LT编码方法和在接收端,基于PMRSD度分布的LT译码方法,如图2所示,所述在发送端,基于PMRSD度分布的LT编码方法具体可以包括如下步骤:
步骤11,确定PMRSD度分布的分布函数。
本实施例中,可以基于新开关度分布,将Poisson(泊松)分布和滑动鲁棒孤子度分布(Moved-RSD)分布进行结合,设计一种新的度分布即PMRSD度分布,其中,所述PMRSD度分布的分布函数表示为:
其中,p(d)为Poisson分布的分布函数,mrsd(d)为Moved-RSD分布的分布函数,d为度值,q为当前编码数据包的个数,0≤q≤N,β为度分布转换点;若当前编码数据包的个数q≤βK,在发送端进行LT编码时按照Poisson度分布来产生度值进行编码;若当前编码数据包的个数q>βK,在发送端进行LT编码时按照Moved-RSD度分布来产生度值进行编码;
本实施例中,Poisson分布的分布函数p(d)可以表示为:
其中d=1,2,……,K
其中,K为源数据包的总数,d为度值,λ为随机选取度值的平均概率,e为自然对数的底,e=2.7182818……。
本实施例中,Moved-RSD分布的分布函数mrsd(d)可以表示为:
其中d=1,2,……,K
其中,ρ(d)为修正后的理想度分布的分布函数,τ(d)为一个正整数;ρ(d)可以表示为:
其中,n为第一峰值点。b为第一峰值系数,b取值范围为0<b≤1;τ(d)可以表示为:
其中,c为一个常数,c取值范围为:0<c<1;δ为接收一定数量的编码包后,未能成功译出全部源数据包的概率,一般取值为0.7;R为在译码过程中产生度值d为1的编码数据包个数,参数c和δ保证了R大约为:
本实施例中,在仿真实验中参数c、δ、n、b、β、λ分别可以设置为:c=0.03,δ=0.7,n=145,b=0.7,β=0.01,λ=2。
步骤12,根据预设的PMRSD度分布的分布函数通过二分法确定度值d。
本实施例中,根据确定的PMRSD度分布的分布函数,并利用随机函数生成一个[0,1]之间的随机数r通过二分法确定度值d,其中,d的值是在[1,K]之间并且d是服从PMRSD度分布的随机整数,度值d是用于确定当前编码数据包需要的待编码源数据包的个数。
步骤13,根据已经确定的度值d,确定d个待编码源数据包si,并记录这d个待编码源数据包si的包号i。
本实施例中,所述根据已经确定的度值d,确定d个待编码源数据包si,并记录这d个待编码源数据包si的包号i包括:
利用随机函数生成d个随机数,确定每个随机数落到的概率区间,其中,随机数的值在[0,1]之间;
根据d个随机数各自落到的概率区间,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
本实施例中,设源数据包的总数为K,选择每个源数据包的概率为1/K;概率区间为K个,概率区间的数目是按照K的值预先设定好的,假设K=5,则源数据包可以表示为s1,s2,s3,s4,s5;选择每个源数据包的概率为1/K=1/5=0.2,则选择s1的概率区间为(0,0.2],包号为1;选择s2的概率区间为(0.2,0.4],包号为2;选择s3的概率区间为(0.4,0.6],包号为3;选择s4的概率区间为(0.6,0.8],包号为4;选择s5的概率区间为(0.8,1],包号为5。
步骤14,根据源数据包的总数K,编码数据包的总数N,待编码源数据包si的包号i,确定编码生成矩阵GK×N。
本实施例中,GK×N为一个K行N列的矩阵,每一列对应一个编码数据包cj,在GK×N中的元素的值只有0和1,在GK×N中每一列的1的个数的总和(其中,每一列的1的个数的总和称为列重)与d的值相等,具体每一列哪个元素为1,由待编码源数据包si的包号i确定。
步骤15,将源数据包s1,s2,……,sK与编码生成矩阵GK×N进行模二相乘,得到编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN,LT码编码结束。
本实施例中,如图3所示,所述在接收端,基于PMRSD度分布的LT译码方法具体可以包括如下步骤:
步骤21,在接收端,接收发送端发送的编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,根据生成的编码生成矩阵GK×N查找度值d=1的情况,也就是说,判断生成的GK×N中是否有列重为1的列。
本实施例中,接收端的编码生成矩阵GK×N可以参照发送端生成编码生成矩阵GK×N的方法生成,但是,接收端生成的编码生成矩阵GK×N的列与当前接收到的编码数据包的个数保持一致;也就是说,在译码过程中,接收端的编码生成矩阵GK×N的列不是固定的,但是列的总数是一定的,列的总数为N,因此,接收端生成的编码生成矩阵也可以表示为GK×N。
本实施例中,如4(a)所示,GK×N中第2、7列的列重都为1,也就是说编码数据包c2和c7的度值d=1。
步骤22,若GK×N中有度值d=1的列,令编码生成矩阵GK×N中d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令d=1的点(i,j)=0,且使译码计数器count加1;若GK×N中没有度值d=1的列,则继续接收发送端发送的编码数据包返回步骤21进行译码。
本实施例中,i代表GK×N中的行,j代表GK×N中的列,如图4(a)所述,GK×N中d=1的点为(3,2)和(6,7),则令s3=c2,s6=c7,并且令G[3,2]=0,G[6,7]=0。
本实施例中,若GK×N中没有度值d=1的列,则继续接收发送端发送的编码数据包进行译码,继续接收编码数据包会增加编码生成矩阵GK×N的列,因此继续接收编码数据包后,还需继续判断GK×N中是否有度值d=1的列。
步骤23,令与si相关联的编码数据包的值等于原编码数据包的值与si的异或,并在GK×N中将与si相关联的元素的值置为0。
本实施例中,如图4(b)所示,与s3相关的编码数据包为c3,因此,G[3,3]=0;与s6相关联的编码数据包为c1,c4,c6,因此 G[6,1]=0,G[6,4]=0,G[6,6]=0。
步骤24,判断count是否等于源数据包的总数K,若count=K,则完成译码;否则,则返回S4继续接收编码数据包进行译码。
本实施例中,可以参考图4(c)-图4(f)进行译码,完成译码后,对基于PMRSD度分布的误比特率、译码开销、译码效率进行说明:
图5为基于本实施例PMRSD度分布与新开关度分布的LT码,在接收端接收编码数据包比例与成功译码比例关系示意图,如图5所示,虽然前半段基于新开关度分布的LT译码成功比例大于基于本实施例PMRSD度分布的LT译码成功比例,但是在接收比例为1.3时,基于本实施例PMRSD度分布的LT码已实现完全译码,而基于新开关度分布的LT码译码刚完成90%,因此,基于本实施例PMRSD度分布的误比特率要低于基于新开关度分布的LT译码的误比特率。
图6为基于本实施例PMRSD度分布与新开关度分布的LT码,在发送端发送不同源数据包个数与译码开销的关系示意图,如图6所示,说明基于本实施例PMRSD度分布的LT译码开销小于基于新开关度分布的LT译码开销。
图7为基于本实施例PMRSD度分布与新开关度分布的LT码,在发送端发送不同源数据包个数与译码效率的关系示意图,如图7所示,说明基于本实施例PMRSD度分布的LT译码效率大于基于新开关度分布的LT译码效率。
综上,基于本实施例PMRSD度分布的LT码,减小了误比特率和译码开销,提高了译码效率。
实施例二
本发明还提供一种LT码度分布设计装置的具体实施方式,由于本发明提供的LT码度分布设计装置与前述LT码度分布设计方法的具体实施方式相对应,该LT码度分布设计装置可以通过执行上述方法具体实施方式中的流程步骤来实现本发明的目的,因此上述LT码度分布设计方法具体实施方式中的解释说明,也适用于本发明提供的LT码度分布设计装置的具体实施方式,在本发明以下的具体实施方式中将不再赘述。
参看图8所示,本发明实施例还提供一种LT码度分布设计装置,包括:
确定模块11,用于基于预设的PMRSD度分布的分布函数,确定待编码源数据包si的包号i;
生成模块12,用于根据源数据包的总数K、编码数据包的总数N及确定的所述待编码源数据包si的包号i,生成编码生成矩阵GK×N,其中,在GK×N中,每一列对应一个编码数据包cj,每一列的第i个元素为1,其他元素为0,i为确定的待编码源数据包si的包号;
编码模块13,用于将K个源数据包s1,s2,……,sK与GK×N进行模二相乘,得到N个编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN;
译码模块14,用于在接收端接收编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若GK×N中有度值d=1的列,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令度值d=1的点(i,j)=0,且使译码计数器count加1,其中,i表示GK×N中的行,j表示GK×N中的列;还用于令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0;
判断模块15,用于判断count是否等于源数据包的总数K,若count=K,则完成译码;否则,则返回所述译码模块继续接收编码数据包进行译码。
本发明实施例所述的LT码度分布设计装置,基于预设的PMRSD度分布的分布函数,确定待编码源数据包si的包号i;根据源数据包的总数K、编码数据包的总数N及确定的所述待编码源数据包si的包号i,生成编码生成矩阵GK×N,其中,在GK×N中,每一列对应一个编码数据包cj,每一列的第i个元素为1,其他元素为0,i为确定的待编码源数据包si的包号;将K个源数据包s1,s2,……,sK与GK×N进行模二相乘,得到N个编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN;在接收端接收编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若GK×N中有度值d=1的列,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令度值d=1的点(i,j)=0,且使译码计数器count加1,其中,i表示GK×N中的行,j表示GK×N中的列;令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0,当count=K时,完成译码,这样,能够减小误比特率和译码开销,提高译码效率。
在前述LT码度分布设计装置的具体实施方式中,进一步地,所述确定模块包括:
确定单元,用于根据预设的PMRSD度分布的分布函数通过二分法确定度值d;
记录单元,用于根据确定的度值d,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
在前述LT码度分布设计装置的具体实施方式中,进一步地,所述预设的PMRSD度分布的分布函数表示为:
其中,d=1,2,……,K
其中,d=1,2,……,K
其中,pmrsd(d)为预设的PMRSD度分布的分布函数,p(d)为Poisson分布的分布函数,mrsd(d)为Moved-RSD分布的分布函数,d为度值,q为当前编码数据包的个数,β为度分布转换点,K为源数据包的总数,λ为随机选取度值的平均概率,e为自然对数的底,ρ(d)为修正后的理想度分布的分布函数,τ(d)为一个正整数,n为第一峰值点,b为第一峰值系数,δ为未能成功译出全部源数据包的概率,R为在译码过程中产生度值d为1的编码数据包个数。
在前述LT码度分布设计装置的具体实施方式中,进一步地,所述记录单元包括:
确定子模块,用于利用随机函数生成d个随机数,确定每个随机数落到的概率区间,其中,随机数的值在[0,1]之间;
记录子模块,用于根据d个随机数各自落到的概率区间,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
在前述LT码度分布设计装置的具体实施方式中,进一步地,所述译码模块,还用于若GK×N中没有度值d=1的列,则继续接收编码数据包进行译码。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种LT码度分布设计方法,其特征在于,包括:
S1,基于预设的PMRSD度分布的分布函数,确定待编码源数据包si的包号i;其中,PMRSD度分布是将Poisson分布和Moved-RSD分布进行结合,得到的新的度分布,Poisson表示泊松,Moved-RSD表示滑动鲁棒孤子度分布;
S2,根据源数据包的总数K、编码数据包的总数N及确定的所述待编码源数据包si的包号i,生成编码生成矩阵GK×N,其中,在GK×N中,每一列对应一个编码数据包cj,每一列的第i个元素为1,其他元素为0,i为确定的待编码源数据包si的包号;
S3,将K个源数据包s1,s2,……,sK与GK×N进行模二相乘,得到N个编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN;
S4,在接收端接收编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若GK×N中有度值d=1的列,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令度值d=1的点(i,j)=0,且使译码计数器count加1,其中,i表示GK×N中的行,j表示GK×N中的列;
S5,令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0;
S6,判断count是否等于源数据包的总数K,若count=K,则完成译码;否则,则返回S4继续接收编码数据包进行译码。
2.根据权利要求1所述的LT码度分布设计方法,其特征在于,所述S1包括:
根据预设的PMRSD度分布的分布函数通过二分法确定度值d;
根据确定的度值d,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
3.根据权利要求1或2所述的LT码度分布设计方法,其特征在于,所述预设的PMRSD度分布的分布函数表示为:
其中,d=1,2,……,K
其中,d=1,2,……,K
其中,pmrsd(d)为预设的PMRSD度分布的分布函数,p(d)为Poisson分布的分布函数,mrsd(d)为Moved-RSD分布的分布函数,d为度值,q为当前编码数据包的个数,β为度分布转换点,K为源数据包的总数,λ为随机选取度值的平均概率,e为自然对数的底,ρ(d)为修正后的理想度分布的分布函数,τ(d)为一个正整数,n为第一峰值点,b为第一峰值系数,δ为未能成功译出全部源数据包的概率,R为在译码过程中产生度值d为1的编码数据包个数。
4.根据权利要求2所述的LT码度分布设计方法,其特征在于,所述根据确定的度值d,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i包括:
利用随机函数生成d个随机数,确定每个随机数落到的概率区间,其中,随机数的值在[0,1]之间;
根据d个随机数各自落到的概率区间,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
5.根据权利要求1所述的LT码度分布设计方法,其特征在于,所述S4还包括:
若GK×N中没有度值d=1的列,则继续接收编码数据包进行译码。
6.一种LT码度分布设计装置,其特征在于,包括:
确定模块,用于基于预设的PMRSD度分布的分布函数,确定待编码源数据包si的包号i;其中,PMRSD度分布是将Poisson分布和Moved-RSD分布进行结合,得到的新的度分布,Poisson表示泊松,Moved-RSD表示滑动鲁棒孤子度分布;
生成模块,用于根据源数据包的总数K、编码数据包的总数N及确定的所述待编码源数据包si的包号i,生成编码生成矩阵GK×N,其中,在GK×N中,每一列对应一个编码数据包cj,每一列的第i个元素为1,其他元素为0,i为确定的待编码源数据包si的包号;
编码模块,用于将K个源数据包s1,s2,……,sK与GK×N进行模二相乘,得到N个编码数据包c1,c2,……,cN,向接收端发送编码数据包c1,c2,……,cN;
译码模块,用于在接收端接收编码数据包,并根据当前接收到的编码数据包的个数,生成编码生成矩阵GK×N,判断生成的GK×N中是否有度值d=1的列,若GK×N中有度值d=1的列,令GK×N中度值d=1的点(i,j)对应的源数据包si等于接收到的编码数据包cj,并在GK×N中令度值d=1的点(i,j)=0,且使译码计数器count加1,其中,i表示GK×N中的行,j表示GK×N中的列;还用于令与si相关联的编码数据包cj的值等于原编码数据包cj的值与si的异或,在GK×N中将与si相关联的元素的值置为0;
判断模块,用于判断count是否等于源数据包的总数K,若count=K,则完成译码;否则,则返回所述译码模块继续接收编码数据包进行译码。
7.根据权利要求6所述的LT码度分布设计装置,其特征在于,所述确定模块包括:
确定单元,用于根据预设的PMRSD度分布的分布函数通过二分法确定度值d;
记录单元,用于根据确定的度值d,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
8.根据权利要求6或7所述的LT码度分布设计装置,其特征在于,所述预设的PMRSD度分布的分布函数表示为:
其中,d=1,2,……,K
其中,d=1,2,……,K
其中,pmrsd(d)为预设的PMRSD度分布的分布函数,p(d)为Poisson分布的分布函数,mrsd(d)为Moved-RSD分布的分布函数,d为度值,q为当前编码数据包的个数,β为度分布转换点,K为源数据包的总数,λ为随机选取度值的平均概率,e为自然对数的底,ρ(d)为修正后的理想度分布的分布函数,τ(d)为一个正整数,n为第一峰值点,b为第一峰值系数,δ为未能成功译出全部源数据包的概率,R为在译码过程中产生度值d为1的编码数据包个数。
9.根据权利要求7所述的LT码度分布设计装置,其特征在于,所述记录单元包括:
确定子模块,用于利用随机函数生成d个随机数,确定每个随机数落到的概率区间,其中,随机数的值在[0,1]之间;
记录子模块,用于根据d个随机数各自落到的概率区间,确定d个待编码源数据包si,并记录所述待编码源数据包si的包号i。
10.根据权利要求6所述的LT码度分布设计装置,其特征在于,所述译码模块,还用于若GK×N中没有度值d=1的列,则继续接收编码数据包进行译码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710000638.9A CN106850137B (zh) | 2017-01-03 | 2017-01-03 | 一种lt码度分布设计方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710000638.9A CN106850137B (zh) | 2017-01-03 | 2017-01-03 | 一种lt码度分布设计方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106850137A CN106850137A (zh) | 2017-06-13 |
CN106850137B true CN106850137B (zh) | 2019-08-13 |
Family
ID=59117777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710000638.9A Active CN106850137B (zh) | 2017-01-03 | 2017-01-03 | 一种lt码度分布设计方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106850137B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108123780B (zh) * | 2018-01-31 | 2021-01-08 | 南京航空航天大学 | 一种16qam系统lt编码调制方法 |
CN109005010B (zh) * | 2018-07-24 | 2020-04-07 | 北京科技大学 | 一种用于深空衰落信道环境的lt码编码方法 |
CN110212924B (zh) * | 2019-07-05 | 2020-10-09 | 中国人民解放军火箭军工程大学 | 一种lt码编解码方法及系统 |
CN113612586B (zh) * | 2021-08-24 | 2022-05-13 | 北京理工大学 | 一种lt码和多连接结合的低时延信道编码方法 |
CN116366074B (zh) * | 2023-03-17 | 2024-02-09 | 武汉大学 | 基于二元扩域及提高满度比的lt码混合编解码方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148665A (zh) * | 2011-05-25 | 2011-08-10 | 电子科技大学 | 一种lt码的译码方法 |
CN102523072A (zh) * | 2011-12-20 | 2012-06-27 | 清华大学 | 具有检错纠错功能的lt码编译码方法 |
CN102638332A (zh) * | 2012-03-22 | 2012-08-15 | 西安电子科技大学 | 一种改进的lt译码方法 |
CN103346858A (zh) * | 2013-06-03 | 2013-10-09 | 哈尔滨工业大学深圳研究生院 | 基于叠加度的系统lt码编译方法 |
WO2015099266A1 (ko) * | 2013-12-24 | 2015-07-02 | 포항공과대학교 산학협력단 | 분산 lt 부호의 차수 분포 최적화 방법 |
CN105262564A (zh) * | 2015-09-09 | 2016-01-20 | 哈尔滨工业大学深圳研究生院 | 一种分布式喷泉码的二维度分布设计方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8301974B2 (en) * | 2008-10-22 | 2012-10-30 | Samsung Electronics Co., Ltd. | System and method for low complexity raptor codes for multimedia broadcast/multicast service |
US9116827B2 (en) * | 2013-08-30 | 2015-08-25 | Tata Consultancy Services Limited | System and method for optimizing luby transform (LT) codes to facilitate data transmission over communication network |
-
2017
- 2017-01-03 CN CN201710000638.9A patent/CN106850137B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148665A (zh) * | 2011-05-25 | 2011-08-10 | 电子科技大学 | 一种lt码的译码方法 |
CN102523072A (zh) * | 2011-12-20 | 2012-06-27 | 清华大学 | 具有检错纠错功能的lt码编译码方法 |
CN102638332A (zh) * | 2012-03-22 | 2012-08-15 | 西安电子科技大学 | 一种改进的lt译码方法 |
CN103346858A (zh) * | 2013-06-03 | 2013-10-09 | 哈尔滨工业大学深圳研究生院 | 基于叠加度的系统lt码编译方法 |
WO2015099266A1 (ko) * | 2013-12-24 | 2015-07-02 | 포항공과대학교 산학협력단 | 분산 lt 부호의 차수 분포 최적화 방법 |
CN105262564A (zh) * | 2015-09-09 | 2016-01-20 | 哈尔滨工业大学深圳研究生院 | 一种分布式喷泉码的二维度分布设计方法 |
Non-Patent Citations (3)
Title |
---|
"LT码的度分布设计及译码算法研究";王新泽;《中国优秀硕士学位论文全文数据库信息科技辑》;20140201;全文 |
"喷泉码度分布优化和LT码译码算法研究";周琳凯;《中国优秀硕士学位论文全文数据库信息科技辑》;20120401;全文 |
"基于LT码度分布的自适应不等差错保护编码算法研究";王雅娴;《中国优秀硕士学位论文全文数据库信息科技辑》;20131201;全文 |
Also Published As
Publication number | Publication date |
---|---|
CN106850137A (zh) | 2017-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106850137B (zh) | 一种lt码度分布设计方法及装置 | |
KR100227351B1 (ko) | 디지탈 통신용 에러 제어 방법 및 에러 제어 장치 | |
US7774687B2 (en) | Method and system for LDPC code erasure decoding | |
EP3614589B1 (en) | Information transmission method, decoding method and device | |
TWI557747B (zh) | 記憶體控制模組與方法以及錯誤更正碼編/解碼電路與方法 | |
JP2000068862A (ja) | 誤り訂正符号化装置 | |
KR20230079159A (ko) | 외부 블록 코드 및 내부 편극 조정 컨볼루션 코드가 있는 직렬 연접 코드 | |
JP7282895B2 (ja) | データの再送復号方法、装置、システム及び通信装置 | |
CN114731166A (zh) | 空间耦合fec编码方法和使用gel码的分量码的设备 | |
CN112737729A (zh) | 数据传输方法、装置、计算机设备及存储介质 | |
JP4191054B2 (ja) | 優先順位付けされたデータを有するシステムにおける誤り制御符号化のためのダイバーシチ方式 | |
CN104468022B (zh) | 一种传输格式组合的译码方法及装置 | |
CN112996099A (zh) | 抗时隙删除的极化时隙aloha的发送与接收方法 | |
CN112165338A (zh) | 一种卷积码随机交织序列交织关系的估计方法 | |
CN101001089B (zh) | 一种纠错码解码中的钱搜索方法及装置 | |
CN110061747A (zh) | 一种极化码的基于阈值的比特反转译码方法 | |
CN109981114A (zh) | 使用关键集的极化码连续消除反转优化译码方法 | |
EP0571019B1 (en) | Extended error protected communication system | |
CN102325003B (zh) | 数据错误检测的方法及设备 | |
CN113541698B (zh) | 编码、译码方法、装置及设备 | |
CN110995288B (zh) | 一种rm码的分析方法和装置 | |
CN111277830B (zh) | 一种编码方法、解码方法及装置 | |
CN111527705B (zh) | 用于解码器重用的信道码构造 | |
CN113242045A (zh) | 一种极化码的高效译码方法、译码装置及计算机可读存储介质 | |
JP3252477B2 (ja) | 誤り訂正符復号化方法、誤り訂正符復号化装置、誤り訂正復号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |