一种误比特率估计方法、装置及接收机
技术领域
本发明涉及无线通信系统中的差错控制技术,尤指一种误比特率估计方法、装置及接收机。
背景技术
利用信道编码(纠错码)实现差错控制是无线数字通信中的关键技术之一。传统的信道纠错编码方式主要有卷积码,RS分组码等。低密度奇偶校验(LDPC,Low-Density Parity Check)码是近年的应用热点。
LDPC码是一类具有稀疏校验矩阵的线性分组码,拥有逼近Shannon限的良好性能。利用LDPC码进行译码虽然复杂度比传统的卷积码和RS分组码高,但随着译码算法的改进和大规模集成电路水平的发展,LDPC码的良好性能得到了重视并已开始广泛应用于卫星通信、音视频广播等领域。目前,使用LDPC码作为信道编译码的通信/广播系统包括符合移动多媒体行业标准(CMMB)、数字电视地面广播国家标准(DTTB)、WiMAX802.16e、DVB-S2等的系统。
误比特率(BER,Bit-Error Rate)是衡量无线通信系统中接收机性能和工作状况最重要的指标之一。
常用的BER估计方法是利用发送伪随机序列来进行测量。简单来讲就是,向接收机发送已知的伪随机序列,在接收机另一侧构造出相同的伪随机序列,通过构造出的伪随机序列和经过解调/解码处理后的接收数据进行相关运算后,找出错误译码的比特数目,并进行统计平均,以获得接收机误比特率信息。这种利用发送伪随机序列来进行测试的方法,目前只适合于实验室调试阶段,在实际工作中,由于发送的音视频信息不可能包含伪随机序列,从而无法应用。
由于LDPC码在不同系统中可能与其它分组码级联作为信道编码,例如在CMMB中,LDPC码会与RS码级联,LDPC码作为内码而RS码作为外码。对于这样的系统,目前,另一种常用的BER估计方法是,在RS译码器的译码过程中,检测每个RS数据包(packet)中的错误的字节(byte)数目,如果错误的字节数目在RS码的纠错能力范围之内,则完成译码,否则放弃译码。利用RS译码器提供的误字节率信息来估计BER。这种方法存在以下缺点:首先,RS译码器统计的是误字节的数目,但是一个误字节中错了几个位(bit)并不确定;其次,如果误字节数目超过RS纠错能力,由于RS译码器会放弃译码,因此RS译码器是得不到错误的字节数目,也就无法确定误比特率信息,BER也是没有办法获得的;最后,LDPC码可能和不同的外码级联,或者独自使用,这时只能依赖LDPC译码器自身来完成BER的估计。
除此之外,在申请号为CN200710196638,发明名称为“用于估计在通信系统中所发送的数据的误比特率的装置及相关方法”的在先申请中,提供了一种在解星座映射后,将得到的表征置信度的软判决的值与预设阈值进行比较,利用比较结果即与预设阈值的接近程度来估计BER。这种基于软判决信息来估计BER的方法,判决过程在信道译码之前实现。由于软判决信息与BER的相关性在信道译码后变弱,特别是LDPC码,在信号噪声功率比(SNR)增大时BER急剧下降,因此,在实际应用中该在先申请提供的方法估计出的BER的准确度是不够的。
发明内容
有鉴于此,本发明的主要目的在于提供一种误比特率估计方法,能够准确估计误比特率。
本发明的另一目的在于提供一种误比特率估计装置,能够准确估计误比特率。
本发明的又一目的在于提供一种接收机,能够准确估计误比特率。
为达到上述目的,本发明的技术方案具体是这样实现的:
一种误比特率BER估计方法,该方法包括以下步骤:
A.在LDPC译码中获取不成立的校验式的个数;
B.利用不成立的校验式的个数获取错比特数;
C.根据获得的错比特数估计BER。
步骤A中获取不成立的校验式的个数的方法为:在判断出校验式不成立时,对预设变量进行加一来统计不成立的校验式的个数。
所述步骤B的具体实现为:用函数y=f(x)来获取所述错比特数,其中,函数自变量x为不成立的校验式数目,因变量y代表估计的错比特数;
f(x)为分段抛物线,在不同区间内其值为不同的幂次方乘以不同的缩放因子。
在所述x的较小的区间,使用较小的幂次;在所述x的较大的区间,使用较大的幂次。
所述f(x)为:
其中,函数自变量x表示不成立的校验式的个数,因变量y表示估计出的错误比特数;
其中,x0的取值使得 a0,a1为缩放因子。
所述步骤C具体实现为:对不同LDPC块的错比特数做平均计算来获取BER。
一种误比特率BER估计装置,该装置包括:LDPC译码器、错比特数获取模块和BER估计模块,其中,
LDPC译码器,用于实现LDPC译码,还用于对不成立的校验式进行统计以获取不成立的校验式的个数;
错比特数获取模块,用于根据来自LDPC译码器的不成立的校验式的个数,计算错比特数;
BER估计模块,用于根据来自错比特数获取模块的错比特数估计BER。
所述错比特数获取模块包括接收模块,处理模块和输出模块,其中,
接收模块,用于接收来自LDPC译码器的不成立的校验式的个数;
处理模块,用于以接收到的不成立的校验式的个数为自变量x,根据分段抛物线函数y=f(x)获取所述错比特数y;所述f(x)在不同区间内其值为不同的幂次方乘以不同的缩放因子;
所述输出模块,用于将处理模块获得的错比特数输出给所述BER估计模块。
在所述x的较小的区间,使用较小的幂次;在所述x的较大的区间,使用较大的幂次。
一种接收机,至少包括LDPC译码器、错比特数获取模块和BER估计模块,其中,
LDPC译码器,用于实现LDPC译码,还用于对不成立的校验式进行统计以获取不成立的校验式的个数;
错比特数获取模块,用于根据来自LDPC译码器的不成立的校验式的个数,计算错比特数;
BER估计模块,用于根据来自错比特数获取模块的错比特数估计BER。
所述错比特数获取模块包括接收模块,处理模块和输出模块,其中,
接收模块,用于接收来自LDPC译码器的不成立的校验式的个数;
处理模块,用于以接收到的不成立的校验式的个数为自变量x,根据分段抛物线函数y=f(x)获取所述错比特数y;所述f(x)在不同区间内其值为不同的幂次方乘以不同的缩放因子;
所述输出模块,用于将处理模块获得的错比特数输出给所述BER估计模块。
在所述x的较小的区间,使用较小的幂次;在所述x的较大的区间,使用较大的幂次。
所述f(x)为:
其中,函数自变量x表示不成立的校验式的个数,因变量y表示估计出的错误比特数;
其中,x0的取值使得 a0,a1为缩放因子。
所述LDPC译码器中至少包括计算器,用于统计不成立的校验式的个数。
由上述技术方案可见,本发明这种在LDPC译码中获取不成立的校验式的个数,利用不成立的校验式的个数获取的错比特数来估计BER。由于本发明方法是在译码过程中获取用于估计BER的信息的,该信息与BER的相关性高,从而提高了对BER估计的准确度。本发明还提供一种估计BER的装置及接收机,利用本发明的方法,本发明装置和接收机也实现了对BER的准确估计。
附图说明
图1是本发明估计BER的流程图;
图2是本发明估计BER的实施例的流程图;
图3是利用本发明方法估计的BER与实际BER的仿真曲线比较第一实施例的示意图;
图4是利用本发明方法估计的BER与实际BER的仿真曲线比较第二实施例的示意图;
图5是本发明估计BER的装置的组成结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
图1是本发明估计BER的流程图,如图1所示,本发明方法包括以下步骤:
步骤100:在LDCP译码中获取不成立的校验式的个数。
我们知道,LDPC码是一种基于稀疏校验矩阵的分组码,LDPC的译码是一个迭代的过程,在每次迭代中对校验节点和信息比特节点计算信息传递,更新信息比特节点并提取其硬判决信息以尝试译码。如果所有校验式都成立,则译码成功,停止迭代并输出译码信息;相反如果有至少一个校验式不成立,则认为本次尝试译码失败,继续迭代过程。由于系统吞吐率对译码延迟有要求,迭代不能无限制地进行。当迭代次数达到预设上限而仍有校验式不成立时,LDCP译码过程认为当前LDPC块译码失败,停止迭代并输出最后的硬判决信息,同时给出译码失败指示。LDCP译码过程在译码结束时,只能指示当前LDPC块译码是否成功,如果成功,则当前块所有比特被正确传输和接收;如果指示译码失败,则存在校验式不成立,但无法确定错误比特的具体个数。
因此,本步骤中,在每次迭代中检查校验式是否成立时,对不成立的校验式进行统计以获取不成立的校验式的个数。这样,在当前LDPC块译码结束时,输出译码成功与否指示的同时,输出不成立的校验式的个数(当译码成功时,输出的校验式不成立的个数为0)。
步骤101:利用不成立的校验式的个数获取错比特数。
可以用函数y=f(x)来获取错误比特数,其中函数自变量x为不成立的校验式数目,因变量y代表估计的错误比特数,f(x)可以用分段抛物线来表示,在不同区间内其值为不同的幂次方乘以不同的缩放因子。在x较小的区间,使用较小的幂次;在x较大的区间,则使用较大的幂次。
一种简单的估计错误比特数的实现方法可以利用公式(1)来实现:
其中,函数自变量x表示不成立的校验式的个数,因变量y表示估计出的错误比特数。
公式(1)中,在不同区间内其值为不同的幂次方乘以不同的缩放因子a0,a1,其中x0的取值按照公式(2)获取:
按照公式(2)获得的x0,可以使f(x)曲线的两段抛物线相连;缩放因子a0,a1可以通过仿真或者实验来确定,其选择和LDPC码的校验矩阵有关。
比如,对CMMB 1/2码率的模式,LDPC校验矩阵是一个4608×9216的矩阵,假设选择a0=88,a1=240,根据公式(2)确定出x0=1785。对于CMMB的另一种3/4码率模式,LDPC校验矩阵是一个6912×9216的矩阵,假设选择a0=48,a1=120,根据公式(2)确定出x0=750。
针对不同系统的LDPC码,可以将分段抛物线y=f(x)划分为更多的区间,用更多的幂次方曲线,比如4次方,2.5次方等来连接,从而能取得更准确的估计效果。具体参数的选择可以在仿真或者实验室调试阶段确定。
步骤102:根据获得的错比特数估计BER。
在步骤101中获得错比特数后,可以利用现有方法来估计BER,如对不同LDPC块的错比特数做平均计算来获取BER。
图2是本发明估计BER的实施例的流程图,如图2所示,结合LDPC译码过程具体描述本发明估计BER的方法,具体包括如下步骤:
步骤200~步骤201:初始化信息比特节点先验概率;实现信息传递并更新校验节点和信息比特节点。
本步骤的实现属于现有技术,也是本领域技术人员惯用技术手段,这里不再赘述。
步骤202:统计不成立的校验式的个数。
在现有LDPC译码过程中,会对校验式是否成立进行判断,具体实现属于现有技术而且其如何实现与本发明方法无关,因此,这里不再赘述。本步骤强调的是,在判断出校验式不成立时,对预设变量进行加一来统计不成立的校验式的个数。
步骤203:判断是否所有校验式都成立,如果是,进入步骤206;否则继续执行步骤204。
步骤204:判断迭代次数是否到达上限,如果是,进入步骤206;否则继续执行步骤205。
步骤205:迭代次数加一后返回步骤201。
步骤206:输出译码结果,同时输出不成立的校验式的个数。
完成译码过程后,输出译码是否成功的译码结果,同时输出统计得到的不成立的校验式的个数。
步骤207:利用不成立的校验式的个数获取错比特数。
本步骤的具体实现可参见步骤101,这里不再重述。
步骤208:根据获得的错比特数估计BER。本步骤的具体实现可参见步骤102。
线面仿真实例对本发明的方法进行说明。图3是利用本发明方法估计的BER与实际BER的仿真曲线比较第一实施例的示意图,图3为在仿真CMMB,16QAM,1/2码率模式的仿真条件下,估计的BER和实际BER的比较结果,其中曲线31为实际的BER曲线,曲线32为估计的BER曲线。图4是利用本发明方法估计的BER与实际BER的仿真曲线比较第二实施例的示意图,图4是在AWGN信道、200Hz多普勒频移下的多径信道下获得的估计的BER和实际BER的比较结果,其中曲线41为实际的BER曲线,曲线42为估计的BER曲线。很明显,利用本发明方法估计得到的BER曲线与实际的BER曲线非常接近,表明来本发明估计BER的方法的准确度是很高的。
图5是本发明估计BER的装置的组成结构示意图,如图5所示,包括LDPC译码器、错比特数获取模块和BER估计模块,其中,
LDPC译码器,用于实现LDPC译码,还用于对不成立的校验式进行统计以获取不成立的校验式的个数。其中统计可以通过设置的计数器来实现,具体实现属于本领域技术人员惯用技术手段,这里不再赘述。
错比特数获取模块,用于根据来自LDPC译码器的不成立的校验式的个数,计算错比特数。具体实现方法请参见步骤101,这里不再赘述。
BER估计模块,用于根据来自错比特数获取模块的错比特数估计BER。具体实现方法请参见步骤102,这里不再赘述。
所述错比特数获取模块包括接收模块,处理模块和输出模块,其中,
接收模块,用于接收来自LDPC译码器的不成立的校验式的个数;
处理模块,用于以接收到的不成立的校验式的个数为自变量x,根据分段抛物线函数y=f(x)获取所述错比特数y;所述f(x)在不同区间内其值为不同的幂次方乘以不同的缩放因子;
所述输出模块,用于将处理模块获得的错比特数输出给所述BER估计模块。
在所述x的较小的区间,使用较小的幂次;在所述x的较大的区间,使用较大的幂次。
所述f(x)为: 其中,函数自变量x表示不成立的校验式的个数,因变量y表示估计出的错误比特数;
其中,x0的取值使得 a0,a1为缩放因子。
图5所述本发明装置设置在接收机中,使得接收机实现了准确对BER的估计。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。