一种基于QC-LDPC的通信方法
技术领域
本发明涉及数字信息传输技术领域,尤其涉及一种基于QC-LDPC的通信方法。
背景技术
在通信领域,通常采用信道编码技术来保证在噪声信道中通信的可靠性。比如,在卫星通信系统中,由于地理和环境因素的影响,存在大量的噪声源。这些通信信道有其理论上的最大通信容量(也就是著名的香农限),该容量可以使用特定信噪比(SNR)条件下的比特速率(bps)来表示。其中一种接近香农限的差错控制编码就是低密度奇偶校验码(LDPC)。目前,LDPC码由于其逼近香农限的纠错性能,得到了众多研究人员的重视和广泛的研究。LDPC码的研究主要集中于三个方面,一是优秀的LDPC码的构造;二是优秀译码算法;三是LDPC码的应用。其中LDPC码的构造是提升LDPC码性能的最根本途径。性能优秀的LDPC码的构造也称为好码构造,倾注了研究人员的众多很有成效的努力,也取得了一系列优秀的技术方案。
LDPC码是一种线性分组码,由N-K行N列的校验矩阵H定义,其中N为码字长度(简称码长),K为信息位长度,M=N-K一般称为校验位长度,对应码率R=K/N。H矩阵由元素0或1组成,它的每一行表示一个校验方程。在Tanner图中称为校验节点,共N-K个;每一列代表一个信息比特,在Tanner图中称为变量节点,共N个;H矩阵中的非零元素表示其所在行的校验节点和所在列的变量节点之间的连接关系,在Tanner图中称为边。LDPC码的列重γ(H)表示校验矩阵H每一列中非零元素的个数,是长度为N的向量。同理LDPC码的行重ρ(H)表示校验矩阵H每一行中非零元素的个数,是长度为M的向量。
准循环LDPC码(QC-LDPC)是LDPC码的一个重要子类,它的校验矩阵和生成矩阵均具有准循环形式。QC-LDPC码的校验矩阵由Mc*Nc个子矩阵组成,其中Mc=M/b,Nc=N/b,b为子矩阵阶数。每个子矩阵都是b*b的方阵,这些方阵或为全零矩阵,或为循环移位矩阵,其特点在于,每一行都是它上一行的右循环移位。QC-LDPC码的循环移位子矩阵一般由单位矩阵平移得到,此时该子矩阵的一行或一列中有且仅有一个非零元素,并由其偏移地址唯一确定。为了描述方便,根据QC-LDPC码H矩阵的准循环结构,首先进行如下解释:
子矩阵:QC-LDPC码的H矩阵由Mc*Nc个子矩阵组成,子矩阵或是单位循环矩阵,或是全零矩阵。
基矩阵T:即QC-LDPC码H矩阵的模板矩阵。T矩阵为Mc*Nc阶矩阵,元素只有0和1两种,其中每个元素1代表H矩阵中的一个循环子矩阵,每个元素0代表一个全零子矩阵。
偏移地址:QC-LDPC码H矩阵中循环子矩阵较单位阵向右偏移的位置p(m,n)定义为编号(m,n)的循环子矩阵的偏移地址,其中m,n仅取基矩阵T中为1的项。
偏移地址矩阵A:当子矩阵阶数b和各循环子矩阵偏移地址确定后,通过将原T矩阵中的非零元素1用p(m,n)+1的值替换,得到Mc*Nc阶矩阵定义为偏移地址矩阵。
通过上述描述可知,确定A矩阵及子矩阵阶数b后,A矩阵与H矩阵一一对应,H矩阵可由A矩阵进行准循环子矩阵扩展后得到。
偏移地址搜索空间:典型的QC-LDPC构造算法通常分为两个步骤,即构造基矩阵T的步骤,以及在基矩阵T的基础上使用偏移地址代替基矩阵T中的非零元素1,以获得偏移地址矩阵A的步骤。对于第二个步骤,偏移地址搜索空间定义为在给定基矩阵T的前提下偏移地址矩阵A所有可取值的个数。对于典型的QC-LDPC构造算法,其搜索复杂度随偏移地址搜索空间增大而增大。
QC-LDPC码H矩阵的行合并、行分裂等定义,与LDPC码H矩阵的行合并、行分裂等定义一致。又由于A矩阵可以作为H矩阵的简化表示形式,QC-LDPC码A矩阵的行合并、行分裂等定义可以由H矩阵的行合并、行分裂等定义简化得到。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何提供一种基于QC-LDPC的通信方法,在获得优良性能的前提下同时保证相对较低的QC-LDPC码搜索复杂度和硬件实现复杂度。
(二)技术方案
为解决上述问题,本发明提供一种基于QC-LDPC的通信方法,包括步骤:S1.构造QC-LDPC码的模板矩阵;S2.根据QC-LDPC码的子矩阵的大小b,构造偏移地址集合p={p1,p2,…,pk},其中,0≤pq<b,1≤q≤k且对i≤j,s≤t,有pi+pj≡ps+pt(mod b)等价于i=s,j=t,其中i、j、s和t为所述偏移地址集合中元素的下标;S3.根据构造的模板矩阵及偏移地址集合,构造QC-LDPC码的偏移地址矩阵,得到QC-LDPC码的校验矩阵H。
优选地,所述步骤S1中构造QC-LDPC码模板矩阵的方法包括:单码率QC-LDPC模板矩阵的PEG构造方法,以及基于行合并、行分裂的多码率QC-LDPC模板矩阵构造方法。
优选地于,所述步骤S2中偏移地址集合P的构造方法包括:数学算法,随机化贪心算法。
优选地于,所述集合P中元素个数受限于数学约束,至多为个。
优选地,所述步骤S3中根据模板矩阵及偏移地址集合构造偏移地址矩阵的方法包括:随机法、贪心法。
优选地,进一步包括步骤:S4.调整偏移地址矩阵A,将一至多个循环行列式子矩阵对应的偏移地址调整为偏移地址集合P中的其他值。
(三)有益效果
本发明提出的基于QC-LDPC的通信方法在性能上与传统LDPC码性能相当,但偏移地址搜索空间从O(bn)降低为O(bn/2),极大地减少搜索复杂度,或在相同计算量下搜索到更优的QC-LDPC码,提升了搜索效率,其中b为子矩阵阶数,n为模板矩阵T中非零元素个数。使用本发明构造的QC-LDPC码具有偏移地址较少的特点,可以进一步提高存储资源的使用效率,减少了硬件资源的占用,降低了硬件实现成本。
附图说明
图1为依照本发明实施例的基于QC-LDPC的通信方法流程示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
实施例1
本发明提出的基于QC-LDPC的通信方法,包括以下步骤:
S1.采用已有编码方法构造QC-LDPC码的模板矩阵;
S2.根据QC-LDPC码的子矩阵的大小b,构造偏移地址集合p={p1,p2,…,pk},其中,0≤pq<b,1≤q≤k且对i≤j,s≤t,有pi+pj≡ps+pt(mod b)等价于i=s,j=t,其中i、j、s和t为所述偏移地址集合中元素的下标;
S3.根据步骤S1中构造的模板矩阵及步骤S2中确定的偏移地址集合,采用已有编码方法构造QC-LDPC码的偏移地址矩阵,并最终得到QC-LDPC码的校验矩阵H。
优选地,上述步骤S1中构造QC-LDPC码模板矩阵的步骤基于已有的编码方法,例如:单码率QC-LDPC模板矩阵的PEG构造方法,基于行合并、行分裂的多码率QC-LDPC模板矩阵构造方法。
优选地,上述步骤S2中偏移地址集合P的构造方法包括:数学算法,随机化贪心算法。集合P中元素个数受限于数学约束,至多为个。
为了进一步优化QC-LDPC码的性能,本方法进一步包括以下步骤:
S4.调整偏移地址矩阵A,将一至多个循环行列式子矩阵的偏移地址调整为偏移地址集合P中的其他值。
实施例2
在上一实施例的基础上,在本实施例偏移地址集合的构造方法上提供了两种构造偏移地址集合的方法,所述偏移地址通过数学方法,随机化贪心算法求取。并例举出b=512及b=256时满足S2所述条件的偏移地址集合。
方法一:数学算法:
对于特定的b,例如b=p(p-1)为例(其中p为质数),通过数学算法直接求出满足S2所述条件偏移地址集合的数学算法包括以下步骤:
S5.选取mod p下的素元g;
S6.构造集合P={t1,t2,...,tp-1},其中ti=(pi+(p-1)gi)modp。
根据数学证明,上述步骤S6中构造的集合P={t1,t2,...,tp-1}即为满足S2所述条件的集合。
方法二:随机化贪心算法:
方法一给出的数学算法中b局限于一些特殊值。对于b取其他值的情况,构造满足S2所述条件集合的贪心算法包括以下步骤:
S7.置集合P为{0,1};
S8.从集合{2,3,…,b-1}中随机选出一个元素i,判断集合Q=P∪{i}是否满足S2所述条件。若满足条件,则将元素i增加至集合P中。否则继续枚举下一个i,直到枚举完毕;
S9.集合P即为所求偏移地址集合。
偏移地址集合举例:
对于b=256及b=512,可以构造如下集合:
P512={0,1,6,25,32,72,100,108,120,130,153,169,187,190,204,231,233,242,246}
P256={0,4,6,20,35,52,59,77,78,86,89,99,122,127}
可以验证,上述两个集合均满足S2所述条件。
同时注意到,这两个集合中的元素均另外满足:pi≤b/2。在兼容多码长LDPC码设计时,若偏移地址集合满足上述特性,则针对长码设计的偏移地址集合亦可用于短码。
实施例3
本实施例单码率QC-LDPC的构造方法,结合上述实施例中的偏移地址及基于EXIT分析的单码率QC-LDPC码构造方法具体的包括以下步骤:
S13.根据EXIT分析和设计目标,构造QC-LDPC码列重分布γ(H);
S14.根据已有单码率LDPC码的构造方法,构造满足列重γ(H)的模板矩阵;
S15.根据码长及模板矩阵获得子矩阵大小b,并结合上述实施例构造满足S2所述条件的偏移地址集合P;
S16.根据已有偏移地址矩阵构造方法结合步骤S15中的偏移地址集合P构造QC-LDPC码的偏移地址矩阵A;
S17.若步骤S16中构造的码无法满足设计要求,则调整偏移地址矩阵A,将一至多个循环行列式子矩阵的偏移地址调整为集合P中的其他值,直到满足设计要求。其中,设计要求包括行重的规则性和四环、六环的数目等。
实施例4
本实施例多码率QC-LDPC的构造方法,结合上述实施例中的偏移地址及基于行合并的多码率QC-LDPC构造方法之后,具体的包括以下步骤:
S18.根据上述单码率QC-LDPC的构造方法,构造设计要求中码率最高的QC-LDPC码;
S19.将最低码率QC-LDPC码的一行或多行根据设计规则分裂,构造更低码率QC-LDPC码;
S20.调整行分裂后QC-LDPC码的偏移地址矩阵A,将A中的一些非零元素调整为零,或将A中的一些零元素所代表的零矩阵调整为循环行列式子矩阵,其偏移地址取为P中的元素,或不进行调整;
S21.在所得的更低码率QC-LDPC码上重复实施S19、S20,直到构造所有码率的QC-LDPC码;
S22.若S18、S19、S20中构造的码无法满足设计要求,则重复执行S18、S19、S20或其中的一些步骤;
优选地,S19所述行分裂的规则包括行重规则、列重规则、四环数目、六环数目。
实施例5
本实施例多码率QC-LDPC的构造结果,结合上述实施例多码率QC-LDPC构造方法,具体如下:
0.8码率QC-LDPC码校验矩阵在给定b后,由偏移地址矩阵确定,由偏移地址矩阵确定。
除前五列以外的元素均为零,前五列为:
在0.8码率基础上进行行分裂得到的0.6码率QC-LDPC码,在给定b后,其校验矩阵H0.6由偏移地址矩阵唯一确定:
在0.6码率基础上进行行分裂得到的0.4码率QC-LDPC码,在给定b后,其校验矩阵H0.4由偏移地址矩阵唯一确定:
通过结合附图对本发明具体实施例的描述,本发明的其它方面及特征对本领域的技术人员而言是显而易见的。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本发明的保护范围。