一种LDPC自适应译码方法及LDPC自适应译码器与流程

文档序号:22885694发布日期:2020-11-10 18:00阅读:124来源:国知局
一种LDPC自适应译码方法及LDPC自适应译码器与流程

本发明涉及移动通信技术领域,尤其涉及一种ldpc自适应译码方法及ldpc自适应译码器。



背景技术:

ldpc(lowdensityparitycheckcode,低密度奇偶校验码)是基于稀疏矩阵的线性分组码,其相对应的校验矩阵包含绝大多数0而极少数1。ldpc码遵循迭代信息传递的译码过程,其译码算法主要分为硬判决和软判决。硬判决译码算法的运算复杂度低,译码性能也较低,软判决译码算法的运算复杂度高,译码性能也较高。在实际应用中,往往需要针对不同质量的信道选择合适的译码方法,而一旦信道质量随信道环境变化而变化,选择的ldpc译码方法可能难以适应不同质量的信道,限制了译码效率。



技术实现要素:

为了克服现有技术的缺陷,本发明提供一种ldpc自适应译码方法及ldpc自适应译码器,能够根据不同质量的信道自适应切换译码算法,兼顾译码运算量和译码性能,从而提高译码效率。

为了解决上述技术问题,第一方面,本发明一实施例提供一种ldpc自适应译码方法,包括:

根据待译码数据中每一比特的对数似然比确定硬判决序列,并根据所述硬判决序列和校验矩阵计算错误伴随图样;

根据所述错误伴随图样,以及每一所述比特与校验方程的校验结果,统计每一所述比特不满足的校验方程个数;

当最大所述不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对所述待译码数据进行译码;

当最大所述不满足的校验方程个数大于等于所述预设门限值时,采用软判决译码算法对所述待译码数据进行译码。

进一步地,所述根据待译码数据中每一比特的对数似然比确定硬判决序列,具体为:

计算所述待译码数据中每一比特的对数似然比,并当所述比特的对数似然比大于0时,将所述硬判决序列对应元素的值设置为0,当所述比特的对数似然比小于等于0时,将所述硬判决序列对应元素的值设置为1。

进一步地,所述硬判决序列为z=(z1,z2,...,zn);

其中,i∈(1,2,...,n),yi表示所述待译码数据中第i个比特的对数似然比,si表示所述待译码数据,ci表示所述待译码数据中第i个比特,p(ci=0|si)表示所述待译码数据中第i个比特被判断为0的概率,p(ci=1|si)表示所述待译码数据中第i个比特被判断为1的概率。

进一步地,所述根据所述硬判决序列和校验矩阵计算错误伴随图样,具体为:

将所述硬判决序列与所述校验矩阵相乘,得到所述错误伴随图样。

进一步地,所述错误伴随图样为j=(j1,j2,...,jn)=z*h;

其中,z表示所述硬判决序列,z=(z1,z2,...,zn),h表示所述校验矩阵,m∈(1,2,...,n),jm表示错误图样值,jm=1表示所述硬判决序列不满足第m个所述校验方程,jm=0表示所述硬判决序列满足第m个所述校验方程。

进一步地,所述当最大所述不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对所述待译码数据进行译码,具体为:

翻转与最大所述不满足的校验方程个数对应的所述比特的值,得到新的待译码数据,并根据所述新的待译码数据计算新的错误伴随图样;

当所述新的错误伴随图样等于0或当前迭代次数达到最大迭代次数时停止译码,否则重新根据所述硬判决序列和所述校验矩阵计算所述错误伴随矩阵。

进一步地,所述当最大所述不满足的校验方程个数大于等于所述预设门限值时,采用软判决译码算法对所述待译码数据进行译码,具体为:

对变量节点进行初始化,并在迭代过程中计算校验节点传递给相邻所述变量节点的可靠信息和所述变量节点传递给相邻所述校验节点的可靠信息,以计算每一所述变量节点的可靠信息;

根据所述变量节点的可靠信息确定对应所述比特的估计值,并当所述比特的估计值满足奇偶校验方程或当前迭代次数达到最大迭代次数时停止译码,否则重新根据所述硬判决序列和所述校验矩阵计算所述错误伴随矩阵。

第二方面,本发明的实施例提供一种ldpc自适应译码器,包括:

错误伴随图样计算模块,用于根据待译码数据中每一比特的对数似然比确定硬判决序列,并根据所述硬判决序列和校验矩阵计算错误伴随图样;

校验方程个数统计模块,用于根据所述错误伴随图样,以及每一所述比特与校验方程的校验结果,统计每一所述比特不满足的校验方程个数;

硬判决译码模块,用于当最大所述不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对所述待译码数据进行译码;

软判决译码模块,用于当最大所述不满足的校验方程个数大于等于所述预设门限值时,采用软判决译码算法对所述待译码数据进行译码。

进一步地,所述根据待译码数据中每一比特的对数似然比确定硬判决序列,具体为:

计算所述待译码数据中每一比特的对数似然比,并当所述比特的对数似然比大于0时,将所述硬判决序列对应元素的值设置为0,当所述比特的对数似然比小于等于0时,将所述硬判决序列对应元素的值设置为1。

进一步地,所述根据所述硬判决序列和校验矩阵计算错误伴随图样,具体为:

将所述硬判决序列与所述校验矩阵相乘,得到所述错误伴随图样。

本发明的实施例,具有如下有益效果:

通过根据待译码数据中每一比特的对数似然比确定硬判决序列,并根据硬判决序列和校验矩阵计算错误伴随图样,然后根据错误伴随图样以及每一比特与校验方程的校验结果,统计每一比特不满足的校验方程个数,当最大不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对待译码数据进行译码,当最大不满足的校验方程个数大于等于所述预设门限值时,采用软判决译码算法对所述待译码数据进行译码,最终实现自适应切换译码算法。相比于现有技术,本发明的实施例从所有比特对应的不满足的校验方程个数中筛选最大值,即最大不满足的校验方程个数,根据最大不满足的校验方程个数与预设门限值的比较结果选择采用硬判决译码算法或软判决译码算法,能够根据不同质量的信道自适应切换译码算法,兼顾译码运算量和译码性能,从而提高译码效率。

附图说明

图1为本发明第一实施例中的一种ldpc自适应译码方法的流程示意图;

图2为本发明第一实施例中的一种ldpc自适应译码方法的另一流程示意图;

图3为本发明第二实施例中的一种ldpc自适应译码器的结构示意图。

具体实施方式

下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,文中的步骤编号,仅为了方便具体实施例的解释,不作为限定步骤执行先后顺序的作用。

第一实施例:

如图1-2所示,第一实施例提供一种ldpc自适应译码方法,包括步骤s1~s4:

s1、根据待译码数据中每一比特的对数似然比确定硬判决序列,并根据硬判决序列和校验矩阵计算错误伴随图样;

s2、根据错误伴随图样,以及每一比特与校验方程的校验结果,统计每一比特不满足的校验方程个数;

s3、当最大不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对待译码数据进行译码;

s4、当最大不满足的校验方程个数大于等于预设门限值时,采用软判决译码算法对待译码数据进行译码。

作为示例性地,在步骤s1中,获取接收端译码器输入的待译码数据,根据待译码数据中每一比特的对数似然比确定硬判决序列,同时推算发射端生成的校验矩阵,根据硬判决序列和校验矩阵计算错误伴随图样。

在优选的实施例当中,根据待译码数据中每一比特的对数似然比确定硬判决序列,具体为:计算待译码数据中每一比特的对数似然比,并当比特的对数似然比大于0时,将硬判决序列对应元素的值设置为0,当比特的对数似然比小于等于0时,将硬判决序列对应元素的值设置为1。

在本实施例的一优选实施方式中,硬判决序列为z=(z1,z2,...,zn);其中,i∈(1,2,...,n),yi表示待译码数据中第i个比特的对数似然比,si表示待译码数据,ci表示待译码数据中第i个比特,p(ci=0|si)表示待译码数据中第i个比特被判断为0的概率,p(ci=1|si)表示待译码数据中第i个比特被判断为1的概率。

在优选的实施例当中,根据硬判决序列和校验矩阵计算错误伴随图样,具体为:将硬判决序列与校验矩阵相乘,得到错误伴随图样。

在本实施例的一优选实施方式中,错误伴随图样为j=(j1,j2,...,jn)=z*h;其中,z表示硬判决序列,z=(z1,z2,...,zn),h表示校验矩阵,m∈(1,2,...,n),jm表示错误图样值,jm=1表示硬判决序列不满足第m个校验方程,jm=0表示硬判决序列满足第m个校验方程。

作为示例性地,在步骤s2中,根据错误伴随图样,以及每一比特与校验方程的校验结果,统计每一比特不满足的校验方程个数,以从所有比特对应的不满足的校验方程个数中筛选最大值作为最大不满足的校验方程个数。其中,统计公式为ei表示待译码数据中第i个比特对应的不满足的校验方程个数,ci表示待译码数据中第i个比特,jm表示错误图样值。

作为示例性地,在步骤s3中,当最大不满足的校验方程个数emax小于预设门限值δ时,采用硬判决译码算法对待译码数据进行译码。其中,预设门限值可根据大量仿真及实际测试结果设置得到。硬判决译码算法的基本思想是:若某个比特不满足的校验方程个数最多,则该比特出错概率越大,对该比特进行翻转,即0转变为1,1转变为0,然后再继续进行译码,直到全部译码成功或者达到迭代的最大次数。

在优选的实施例当中,当最大不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对待译码数据进行译码,具体为:翻转与最大不满足的校验方程个数对应的比特的值,得到新的待译码数据,并根据新的待译码数据计算新的错误伴随图样;当新的错误伴随图样等于0或当前迭代次数达到最大迭代次数时停止译码,否则重新根据硬判决序列和校验矩阵计算错误伴随矩阵。

可以理解的是,当最大不满足的校验方程个数emax小于预设门限值δ时,对与最大不满足的校验方程个数emax对应的比特值进行翻转,即0转变为1,1转变为0,得到新的待译码数据,并根据新的待译码数据计算新的错误伴随图样j=z*h,以在新的错误伴随图样等于0,即j=z*h=0时,判决译码成功,停止译码,或者在当前迭代次数达到最大迭代次数时,停止译码,否则重新根据硬判决序列和校验矩阵计算错误伴随矩阵,直至当前错误伴随图样等于0或当前迭代次数达到最大迭代次数。

作为示例性地,在步骤s4中,当最大不满足的校验方程个数emax大于等于预设门限值δ时,采用软判决译码算法对待译码数据进行译码。软判决译码算法的基本思想是:ldpc校验矩阵的每一行代表一个奇偶校验方程,每个变量节点传递给所有与之相邻的校验节点一个可靠信息,即信道传递过来的值,然后每个校验节点处理可靠信息并返回一个新的可靠信息给与之相邻的变量节点,最后判断是否满足奇偶校验方程,这样完成一次信息传递和迭代过程,当某次判决译码成功或当前迭代次数达到最大迭代次数时停止译码,否则进行下一迭代过程。

在优选的实施例当中,当最大不满足的校验方程个数大于等于预设门限值时,采用软判决译码算法对待译码数据进行译码,具体为:对变量节点进行初始化,并在迭代过程中计算校验节点传递给相邻变量节点的可靠信息和变量节点传递给相邻校验节点的可靠信息,以计算每一变量节点的可靠信息;根据变量节点的可靠信息确定对应比特的估计值,并当比特的估计值满足奇偶校验方程或当前迭代次数达到最大迭代次数时停止译码,否则重新根据硬判决序列和校验矩阵计算错误伴随矩阵。

可以理解的是,初始化变量节点j的概率,定义变量节点j传递给校验节点i的可靠信息为:

其中,p(ci=1|si)表示待译码数据中第i个比特被判断为1的概率,p(ci=0|si)表示待译码数据中第i个比特被判断为0的概率,表示发送序列的第i位为1的先验概率,qij(0)(0)表示发送序列的第i位为0的先验概率,上标(0)表示迭代次数。

在迭代过程中计算校验节点i传递给相邻变量节点j的可靠信息,计算公式为:

其中,n(i)表示校验节点i的集合,集合中的校验节点i均与变量节点j相邻,上标(l)和(l-1)均表示迭代次数。

在迭代过程中计算变量节点j传递给相邻校验节点i的可靠信息,计算公式为:

其中,m(j)表示变量节点j的集合,集合中的变量节点j均与校验节点i相邻。kij为校正因子,使得满足条件

计算各变量节点的可靠信息,计算公式为:

其中,kj为校正因子,使得满足条件

则对应比特的估计值为ci=1,否则为ci=0。当该比特的估计值满足奇偶校验方程,或者当前迭代次数达到预先设置的最大迭代次数时,停止译码,否则重新根据硬判决序列和校验矩阵计算错误伴随矩阵,直至当前估计值满足奇偶校验方程或当前迭代次数达到最大迭代次数。

本实施例通过根据待译码数据中每一比特的对数似然比确定硬判决序列,并根据硬判决序列和校验矩阵计算错误伴随图样,然后根据错误伴随图样以及每一比特与校验方程的校验结果,统计每一比特不满足的校验方程个数,当最大不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对待译码数据进行译码,当最大不满足的校验方程个数大于等于所述预设门限值时,采用软判决译码算法对所述待译码数据进行译码,最终实现自适应切换译码算法。本实施例从所有比特对应的不满足的校验方程个数中筛选最大值,即最大不满足的校验方程个数,根据最大不满足的校验方程个数与预设门限值的比较结果选择采用硬判决译码算法或软判决译码算法,能够根据不同质量的信道自适应切换译码算法,兼顾译码运算量和译码性能,从而提高译码效率。

第二实施例:

第二实施例提供一种ldpc自适应译码器,包括:错误伴随图样计算模块21,用于根据待译码数据中每一比特的对数似然比确定硬判决序列,并根据硬判决序列和校验矩阵计算错误伴随图样;校验方程个数统计模块22,用于根据错误伴随图样,以及每一比特与校验方程的校验结果,统计每一比特不满足的校验方程个数;硬判决译码模块23,用于当最大不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对待译码数据进行译码;软判决译码模块24,用于当最大不满足的校验方程个数大于等于预设门限值时,采用软判决译码算法对待译码数据进行译码。

作为示例性地,通过错误伴随图样计算模块21,接收输入的待译码数据,根据待译码数据中每一比特的对数似然比确定硬判决序列,同时推算发射端生成的校验矩阵,根据硬判决序列和校验矩阵计算错误伴随图样。

在优选的实施例当中,根据待译码数据中每一比特的对数似然比确定硬判决序列,具体为:计算待译码数据中每一比特的对数似然比,并当比特的对数似然比大于0时,将硬判决序列对应元素的值设置为0,当比特的对数似然比小于等于0时,将硬判决序列对应元素的值设置为1。

在本实施例的一优选实施方式中,硬判决序列为z=(z1,z2,...,zn);其中,i∈(1,2,...,n),yi表示待译码数据中第i个比特的对数似然比,si表示待译码数据,ci表示待译码数据中第i个比特,p(ci=0|si)表示待译码数据中第i个比特被判断为0的概率,p(ci=1|si)表示待译码数据中第i个比特被判断为1的概率。

在优选的实施例当中,根据硬判决序列和校验矩阵计算错误伴随图样,具体为:将硬判决序列与校验矩阵相乘,得到错误伴随图样。

在本实施例的一优选实施方式中,错误伴随图样为j=(j1,j2,...,jn)=z*h;其中,z表示硬判决序列,z=(z1,z2,...,zn),h表示校验矩阵,m∈(1,2,...,n),jm表示错误图样值,jm=1表示硬判决序列不满足第m个校验方程,jm=0表示硬判决序列满足第m个校验方程。

作为示例性地,通过校验方程个数统计模块22,根据错误伴随图样,以及每一比特与校验方程的校验结果,统计每一比特不满足的校验方程个数,以从所有比特对应的不满足的校验方程个数中筛选最大值作为最大不满足的校验方程个数。其中,统计公式为ei表示待译码数据中第i个比特对应的不满足的校验方程个数,ci表示待译码数据中第i个比特,jm表示错误图样值。

作为示例性地,通过硬判决译码模块23,当最大不满足的校验方程个数emax小于预设门限值δ时,采用硬判决译码算法对待译码数据进行译码。其中,预设门限值可根据大量仿真及实际测试结果设置得到。硬判决译码算法的基本思想是:若某个比特不满足的校验方程个数最多,则该比特出错概率越大,对该比特进行翻转,即0转变为1,1转变为0,然后再继续进行译码,直到全部译码成功或者达到迭代的最大次数。

在优选的实施例当中,当最大不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对待译码数据进行译码,具体为:翻转与最大不满足的校验方程个数对应的比特的值,得到新的待译码数据,并根据新的待译码数据计算新的错误伴随图样;当新的错误伴随图样等于0或当前迭代次数达到最大迭代次数时停止译码,否则重新根据硬判决序列和校验矩阵计算错误伴随矩阵。

可以理解的是,当最大不满足的校验方程个数emax小于预设门限值δ时,对与最大不满足的校验方程个数emax对应的比特值进行翻转,即0转变为1,1转变为0,得到新的待译码数据,并根据新的待译码数据计算新的错误伴随图样j=z*h,以在新的错误伴随图样等于0,即j=z*h=0时,判决译码成功,停止译码,或者在当前迭代次数达到最大迭代次数时,停止译码,否则重新根据硬判决序列和校验矩阵计算错误伴随矩阵,直至当前错误伴随图样等于0或当前迭代次数达到最大迭代次数。

作为示例性地,通过软判决译码模块24,当最大不满足的校验方程个数emax大于等于预设门限值δ时,采用软判决译码算法对待译码数据进行译码。软判决译码算法的基本思想是:ldpc校验矩阵的每一行代表一个奇偶校验方程,每个变量节点传递给所有与之相邻的校验节点一个可靠信息,即信道传递过来的值,然后每个校验节点处理可靠信息并返回一个新的可靠信息给与之相邻的变量节点,最后判断是否满足奇偶校验方程,这样完成一次信息传递和迭代过程,当某次判决译码成功或当前迭代次数达到最大迭代次数时停止译码,否则进行下一迭代过程。

在优选的实施例当中,当最大不满足的校验方程个数大于等于预设门限值时,采用软判决译码算法对待译码数据进行译码,具体为:对变量节点进行初始化,并在迭代过程中计算校验节点传递给相邻变量节点的可靠信息和变量节点传递给相邻校验节点的可靠信息,以计算每一变量节点的可靠信息;根据变量节点的可靠信息确定对应比特的估计值,并当比特的估计值满足奇偶校验方程或当前迭代次数达到最大迭代次数时停止译码,否则重新根据硬判决序列和校验矩阵计算错误伴随矩阵。

可以理解的是,初始化变量节点j的概率,定义变量节点j传递给校验节点i的可靠信息为:

其中,p(ci=1|si)表示待译码数据中第i个比特被判断为1的概率,p(ci=0|si)表示待译码数据中第i个比特被判断为0的概率,表示发送序列的第i位为1的先验概率,qij(0)(0)表示发送序列的第i位为0的先验概率,上标(0)表示迭代次数。

在迭代过程中计算校验节点i传递给相邻变量节点j的可靠信息,计算公式为:

其中,n(i)表示校验节点i的集合,集合中的校验节点i均与变量节点j相邻,上标(l)和(l-1)均表示迭代次数。

在迭代过程中计算变量节点j传递给相邻校验节点i的可靠信息,计算公式为:

其中,m(j)表示变量节点j的集合,集合中的变量节点j均与校验节点i相邻。kij为校正因子,使得满足条件

计算各变量节点的可靠信息,计算公式为:

其中,kj为校正因子,使得满足条件

则对应比特的估计值为ci=1,否则为ci=0。当该比特的估计值满足奇偶校验方程,或者当前迭代次数达到预先设置的最大迭代次数时,停止译码,否则重新根据硬判决序列和校验矩阵计算错误伴随矩阵,直至当前估计值满足奇偶校验方程或当前迭代次数达到最大迭代次数。

本实施例通过错误伴随图样计算模块21,根据待译码数据中每一比特的对数似然比确定硬判决序列,并根据硬判决序列和校验矩阵计算错误伴随图样,然后通过校验方程个数统计模块22,根据错误伴随图样以及每一比特与校验方程的校验结果,统计每一比特不满足的校验方程个数,通过硬判决译码模块23,当最大不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对待译码数据进行译码,通过软判决译码模块24,当最大不满足的校验方程个数大于等于所述预设门限值时,采用软判决译码算法对所述待译码数据进行译码,最终实现自适应切换译码算法。本实施例从所有比特对应的不满足的校验方程个数中筛选最大值,即最大不满足的校验方程个数,根据最大不满足的校验方程个数与预设门限值的比较结果选择采用硬判决译码算法或软判决译码算法,能够根据不同质量的信道自适应切换译码算法,兼顾译码运算量和译码性能,从而提高译码效率。

综上所述,实施本发明的实施例,具有如下有益效果:

通过根据待译码数据中每一比特的对数似然比确定硬判决序列,并根据硬判决序列和校验矩阵计算错误伴随图样,然后根据错误伴随图样以及每一比特与校验方程的校验结果,统计每一比特不满足的校验方程个数,当最大不满足的校验方程个数小于预设门限值时,采用硬判决译码算法对待译码数据进行译码,当最大不满足的校验方程个数大于等于所述预设门限值时,采用软判决译码算法对所述待译码数据进行译码,最终实现自适应切换译码算法。本发明的实施例从所有比特对应的不满足的校验方程个数中筛选最大值,即最大不满足的校验方程个数,根据最大不满足的校验方程个数与预设门限值的比较结果选择采用硬判决译码算法或软判决译码算法,能够根据不同质量的信道自适应切换译码算法,兼顾译码运算量和译码性能,从而提高译码效率。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

本领域普通技术人员可以理解实现上述实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1