编码方法及装置、译码方法及装置与流程

文档序号:13807890阅读:188来源:国知局
编码方法及装置、译码方法及装置与流程

本发明涉及通信领域,具体而言,涉及一种编码方法及装置、译码方法及装置。



背景技术:

数字通信系统的发射端通常包括信源、信道编码器和调制器等部分,接收端通常包括解调器、信道译码器和信宿,如图1所示。信道编码器用于给信息比特按照一定的规则引入冗余信息以便接收端信道译码器能够在一定程度上纠正信息在信道上传输时发生的误码。

ldpc码是一种基于稀疏校验矩阵的线性分组码,正是利用它的校验矩阵的稀疏性,才能实现低复杂度的编译码,从而使得ldpc码走向实用化。

ldpc奇偶校验矩阵的图形表示形式是二分图。二分图和校验矩阵之间具有一一对应的关系,一个m*n的奇偶校验矩阵h定义了每个具有n比特的码字满足m个奇偶校验集的约束。一个二分图包括n个变量节点和m个奇偶校验节点。当第m个校验涉及到第n个比特位,即h中第m行第n列的元素hm,n=1时,将有一根连线连接校验节点m和变量节点n。二分图中,任何同一类的节点之间都不会有连接,并且二分图中的总边数和校验矩阵中非零元素的个数相等。

一类特殊ldpc码由于具有结构化的特征,逐渐成为主流应用。设这种ldpc码的奇偶校验矩阵h为(m×z)×(n×z)矩阵,它是由m×n个分块矩阵构成,每个分块矩阵都是z×z的基本置换矩阵的不同幂次,基本置换矩阵为单位阵时,它们都是单位阵的循环移位矩阵(文中默认为右移)。具有如下的形式:

如果

如果是大于或者等于0的整数,定义在这里p是一个z×z的标准置换矩阵,如下所示:

通过这样的幂次就可以唯一标识每一个分块矩阵,单位矩阵的幂次可用0表示,矩阵一般用-1来表示。这样,如果将h的每个分块矩阵都用它的幂次代替,就得到一个m×n的幂次矩阵hb。这里,定义hb是h的基础矩阵,h称为hb的扩展矩阵。在实际编码时,z=码长/基础矩阵的列数n,称为扩展因子。

例如,矩阵

可以用下面的参数z和一个2×4的基础矩阵hb扩展得到:

z=3和

因此,也可以说这类ldpc码的编码器是由基础矩阵hb,扩展因子z及所选择的基本置换矩阵唯一生成的。

ldpc编码的码率与奇偶校验矩阵或者基础矩阵的大小有关,例如一个m行n列的奇偶校验矩阵或者基础矩阵,对应的ldpc编码码率为r=(n-m)/n。

例如,矩阵1

是一个4行12列的基础矩阵,该矩阵对应的ldpc码的编码码率是2/3;

矩阵2

是一个8行16列的基础矩阵,该矩阵对应的ldpc码的编码码率是1/2;

而矩阵3

是一个16行24列的基础矩阵,该矩阵对应的ldpc码的编码码率是1/3。可见,低码率的ldpc码的与奇偶校验矩阵或者基础矩阵通常需要具有更多的行数m。

ldpc码有很多译码算法,其中,信息传递算法(messagepassingalgorithm)或者置信度传播算法(beliefpropagationalgorithm,bp算法)是ldpc码的主流和基础算法,目前出现了很多改进的有效译码算法。一种被工业界经常使用的译码算法是分层置信度传播算法(layeredbeliefpropagationalgorithm,layered-bp算法),layered-bp算法具有迭代次数少,算法收敛快的优势,但是基于layered-bp算法的译码器硬件时延与奇偶校验矩阵或者基础矩阵的码率有关,码率越低,矩阵的行数越多,并行度越小,时延越大,吞吐量越低。还有一种典型的译码算法被称为全并行译码算法,全并行译码算法具有并行度高,时延小,吞吐量高的优势,但是基于全并行算法的译码器硬件的复杂度也与奇偶校验矩阵或者基础矩阵的码率有关,码率越低,矩阵越大,硬件复杂度越高,硬件实现的难度就越大。

通过上面的说明可以看到,增加ldpc码的奇偶校验矩阵或者基础矩阵的行数,虽然可以获得更低的编码码率,但是也会使得译码器的译码时延或者复杂度相应增加。

针对相关技术中,低码率的ldpc编码方式会增加译码器的译码时延和硬件复杂度的问题,目前尚未有合理的解决方案。



技术实现要素:

本发明提供了一种编码方法及装置、译码方法及装置,以至少解决相关技术中,低码率的ldpc编码方式会增加译码器的译码时延和硬件复杂度的问题。

根据本发明的一个方面,提供了一种编码方法,包括:

采用码率为r1的低密度奇偶校验码ldpc对待编码的初始比特序列进行编码,得到编码后的第一比特序列;其中,0≤r1≤1;

对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列;

将第一比特序列和第二比特序列级联,获得码率为r2的目标比特序列;其中,0≤r2≤r1≤1。

可选地,对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列之前,所述方法还包括:

将所述第一比特序列分为t个比特序列片段,其中,所述比特序列片段的数目t与所述码率r1之间存在以下关系:

t是大于1的正整数,j是正整数,运算符表示取整操作。

可选地,对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列,包括:

选取步骤:从所述t个比特序列片段中选取t1个比特序列片段;

确定步骤:将所述t1个比特序列片段中对应位置上的比特进行线性组合,得到比特序列片段d1,其中,1<t1≤t;

重复执行上述选取步骤和确定步骤,生成w个比特序列片段{d1,d2,…,dw},其中w为正整数;

级联步骤:将所述w个比特序列片段级联,得到所述第二比特序列。

可选地,将所述t1个比特序列片段中对应位置上的比特进行线性组合,包括以下至少之一:

对所述t1个比特序列片段中对应位置上的比特进行二进制相加;

对所述t1个比特序列片段中的至少两个比特序列片段先进行交织,然后对所述t1个比特序列片段中对应位置上的比特进行二进制相加。

可选地,从所述第一比特序列的t个比特序列片段中选取t1个比特序列片段,包括以下至少之一:

根据编码端和译码端的预先约定进行选取;

根据编码端向译码端发送的信令的指示进行选取;

根据译码端向编码端发送的信令的指示进行选取。

可选地,所述比特序列片段的数目w根据t、r1、r2确定。

可选地,所述第二比特序列的比特序列片段的数目w根据以下公式确定:

其中,运算符表示取整操作。

可选地,所述第二比特序列的比特长度l2根据l1、r1、r2确定,其中,l1是所述第一比特序列的比特长度。

可选地,所述第二比特序列的比特长度l2根据以下公式确定:

其中,运算符表示取整操作。

可选地,当所述r1=1/3,r2=1/5,且所述第一比特序列包括3个比特序列片段{p1,p2,p3}时,所述方法还包括:

对所述比特序列片段p1和p2进行线性组合,并且对所述比特序列片段p1和p3进行线性组合,得到第二比特序列;

将第一比特序列和第二比特序列级联,获得码率r2=1/5的目标比特序列。

根据本发明的另一个方面,还提供了一种译码方法,包括:采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码,得到待编码的初始比特序列,其中,0≤r2≤r1≤1,所述目标比特序列,由第一比特序列和第二比特序列级联形成;所述第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得;所述第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得。

根据本发明的另一个方面,还提供了一种编码装置,包括:

第一编码模块:用于采用码率为r1的低密度奇偶校验码ldpc对待编码的初始比特序列进行编码,得到编码后的第一比特序列;其中,0≤r1≤1;

第二编码模块,用于对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列;

第三编码模块,用于将第一比特序列和第二比特序列级联,获得码率为r2的目标比特序列;其中,0≤r2≤r1≤1。

可选地,所述第二编码模块还用于:

将所述第一比特序列分为t个比特序列片段,其中,所述比特序列片段的数目t与所述码率r1之间存在以下关系:

t是大于1的正整数,j是正整数,运算符表示取整操作。

可选地,所述第二编码模块包括:

选取单元,用于从所述第一比特序列的t个比特序列片段中选取t1个比特序列片段;

组合单元,用于将所述t1个比特序列片段中对应位置上的比特进行线性组合,得到比特序列片段d1,其中1<t1≤t;

级联单元,用于将所述选取单元和组合单元生成的w个比特序列片段{d1,d2,…,dw}级联,得到所述第二比特序列,其中w为正整数。

可选地,所述组合单元还用于以下至少之一:

对所述t1个比特序列片段中对应位置上的比特进行二进制相加;

对所述t1个比特序列片段中的至少两个比特序列片段先进行交织,然后对所述t1个比特序列片段中对应位置上的比特进行二进制相加。

可选地,所述组合单元还用于:

根据编码端和译码端的预先约定,从所述第一比特序列的t个比特序列片段中选取t1个比特序列片段;

根据编码端向译码端发送的信令的指示,从所述第一比特序列的t个比特序列片段中选取t1个比特序列片段;

根据译码端向编码端发送的信令的指示,从所述第一比特序列的t个比特序列片段中选取t1个比特序列片段。

可选地,所述第二比特序列的比特序列片段的数目w根据根据t、r1、r2确定。

可选地,所述第二比特序列的比特序列片段的数目w根据以下公式确定:

其中,运算符表示取整操作。

可选地,所述第二比特序列的比特长度l2根据l1、r1、r2确定,其中,l1是所述第一比特序列的比特长度。

可选地,所述第二比特序列的比特长度l2根据以下公式确定:

其中,运算符表示取整操作。

可选地,当所述r1=1/3,r2=1/5,且所述第一比特序列包括3个比特序列片段{p1,p2,p3}时:

所述组合单元还用于,对所述比特序列片段p1和p2进行线性组合,并且对所述比特序列片段p1和p3进行线性组合,得到第二比特序列;

所述级联单元还用于,将第一比特序列和第二比特序列级联,获得码率r2=1/5的目标比特序列。

根据本发明的另一个方面,还提供了一种译码装置,包括:

译码模块,用于采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码,其中,0≤r2≤r1≤1,且:

所述目标比特序列,由第一比特序列和第二比特序列级联形成;

所述第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得;

所述第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得。

根据本发明的另一个方面,还提供了一种编码装置,包括第一处理器和用于存储所述第一处理器可执行的指令的第一存储器,当所述指令被所述第一处理器执行时,执行以下操作:

采用码率为r1的低密度奇偶校验码ldpc对待编码的初始比特序列进行编码,得到编码后的第一比特序列,其中,0≤r1≤1;

对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列;

将第一比特序列和第二比特序列级联,获得码率为r2的目标比特序列,其中,0≤r2≤r1≤1。

可选地,对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列之前,所述第一处理器还用于执行以下操作:

将所述第一比特序列分为t个比特序列片段,其中,所述比特序列片段的数目t与所述码率r1之间存在以下关系:

t是大于1的正整数,j是正整数,运算符表示取整操作。

可选地,所述第一处理器还用于执行以下操作:

选取步骤:从所述t个比特序列片段中选取t1个比特序列片段;

组合步骤:将所述t1个比特序列片段中对应位置上的比特进行线性组合,得到比特序列片段d1,其中,1<t1≤t;

重复执行上述选取步骤和组合步骤,生成w个比特序列片段{d1,d2,…,dw},其中w为正整数;

将所述w个比特序列片段级联,得到所述第二比特序列。

可选地,所述第一处理器从所述第一比特序列的t个比特序列片段中选取t1个比特序列片段,包括以下至少之一的操作:

根据编码端和译码端的预先约定进行选取;

根据编码端向译码端发送的信令的指示进行选取;

根据译码端向编码端发送的信令的指示进行选取。

根据本发明的另一个方面,还提供了一种译码装置,其特征在于,包括第二处理器和用于存储所述第二处理器可执行的指令的第二存储器,当所述指令被所述第二处理器执行时,执行以下操作:

采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码得到待编码的初始比特序列,其中,0≤r2≤r1≤1,所述目标比特序列,由第一比特序列和第二比特序列级联形成,所述第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得,所述第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得。

通过本发明,采用低码率r1的ldpc对初始比特序列进行编码,得到第一比特序列后进行分段,然后将第一比特序列中的至少两个比特序列片段进行线性组合获得第二比特序列,然后由第一比特序列和第二比特序列级联形成更低码率为r2的目标比特序列,其中0≤r2≤r1≤1,这样在目标比特序列的传递过程中码率为更低的r2,保证了传播速度,而在译码阶段,由于目标比特序列是由第一比特序列和第二比特序列级联获得,译码器直接采用码率为r1的ldpc进行译码即可,解决了相关技术中,低码率的ldpc编码方式会增加译码器的译码时延和硬件复杂度的问题,实现了获得低码率ldpc编码的同时,不会增加译码器的译码时延和硬件复杂度的技术效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是相关技术中通信系统发射端和接收端的拓扑图;

图2是根据本发明实施例1的编码方法的流程图;

图3是根据本发明实施例1的译码方法的流程图;

图4是根据本发明实施例2的编码装置的结构框图(一);

图5是根据本发明实施例2的编码装置的结构框图(二);

图6是根据本发明实施例2的译码装置的结构框图;

图7是根据本发明实施例3的编码装置的结构框图;

图8是根据本发明实施例3的译码装置的结构框图;

图9是根据本发明优选实施例2的编码方法的示意图;

图10是根据本发明优选实施例3的编码方法的示意图;

图11是根据本发明优选实施例4的编码方法的示意图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例1

根据本发明实施例,提供了一种编码方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图2是根据本发明实施例1的编码方法的流程图。如图2所示,本实施例提供了一种编码方法,包括:

s201,采用码率为r1的低密度奇偶校验码ldpc对待编码的初始比特序列进行编码,得到编码后的第一比特序列;其中,0≤r1≤1;

s203,对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列;

s205,将第一比特序列和第二比特序列级联,获得码率为r2的目标比特序列;其中,0≤r2≤r1≤1。

通过上述步骤,采用低码率r1的ldpc对初始比特序列进行编码,得到第一比特序列后进行分段,然后将第一比特序列中的至少两个比特序列片段进行线性组合获得第二比特序列,然后由第一比特序列和第二比特序列级联形成更低码率为r2的目标比特序列,其中0≤r2≤r1≤1,这样在目标比特序列的传递过程中码率为更低的r2,保证了传播速度,而在译码阶段,由于目标比特序列是由第一比特序列和第二比特序列级联获得,译码器直接采用码率为r1的ldpc进行译码即可,解决了相关技术中,产生低码率的ldpc编码,会增加译码器的译码时延和硬件复杂度的问题,实现了获得低码率ldpc编码的同时,不会增加译码器的译码时延和硬件复杂度的技术效果。

本实施例的优选方案中,对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列之前,需要先将第一比特序列分为t个比特序列片段,其中,比特序列片段的数目t与码率r1之间存在以下关系:

t是大于1的正整数,j是正整数,运算符表示向上、向下或者舍入等取整操作。

本实施例的另一优选方案中,对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列,具体包括以下步骤:

选取步骤:从t个比特序列片段中选取t1个比特序列片段;

确定步骤:将t1个比特序列片段中对应位置上的比特进行线性组合,得到比特序列片段d1,其中,1<t1≤t;

重复执行上述选取步骤和确定步骤,生成w个比特序列片段{d1,d2,…,dw},其中w为正整数;

级联步骤:将所述w个比特序列片段级联,得到所述第二比特序列。

需要说明的是,上述确定步骤中将所述t1个比特序列片段中对应位置上的比特进行线性组合,可以通过下述任一方式实现:

对所述t1个比特序列片段中对应位置上的比特进行二进制相加;

对所述t1个比特序列片段中的至少两个比特序列片段先进行交织,然后对所述t1个比特序列片段中对应位置上的比特进行二进制相加。

当然,比特序列片段中对应位置上的比特进行线性组合,也可以通过其他方式实现,任何在本实施例的基础上等同替换或引申的方式,都在本实施例的保护范围内,本实施例对此不作限定。

本实施例的另一个优选方案中,对如何从第一比特序列的t个比特序列片段中,选取t1个比特序列片段以及选取哪几个比特序列片段进行具体的说明,主要包括但不限于以下方式:

可以根据编码端和译码端的预先约定进行选取;也可以根据编码端向译码端发送的信令的指示进行选取;也可以根据译码端向编码端发送的信令的指示进行选取。

本实施例中提及的比特序列片段的数目w根据t、r1、r2确定。根据以下公式确定:

其中,运算符表示取整操作。

本实施例中提及的第二比特序列的比特长度l2根据l1、r1、r2确定,具体根据以下公式确定:

其中,l1是所述第一比特序列的比特长度,运算符表示取整操作。

本实施例的一个优选实施例中,可以采用码率为1/3的ldpc码对待编码的比特序列o进行编码,得到编码后的比特序列p;然后将比特序列p分为3个比特序列片段{p1,p2,p3};然后对比特序列片段p1和p2进行线性组合,并且对比特序列片段p1和p3进行线性组合,得到比特序列q;将比特序列p和比特序列q级联,获得码率为1/5的比特序列s。

通过上述优选实施例可以看出,在比特序列s的传递过程中码率为1/5,保证了传播速度,而在译码阶段,由于比特序列s是由比特序列p和比特序列q级联获得,译码器直接采用码率为1/3的ldpc进行译码即可,解决了相关技术中,产生低码率的ldpc编码,会增加译码器的译码时延和硬件复杂度的问题,实现了获得低码率ldpc编码的同时,不会增加译码器的译码时延和硬件复杂度的技术效果。

需要说明的是,上述编码方法的执行主体可以是编码器,也可以是其他的具有编码功能的设备,本实施例对此不作限定。

为了更好地理解本发明,本实施例还提供了一种译码方法。图3是根据本发明实施例1的译码方法的流程图。如图3所示,本译码方法包括:

s301,采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码得到待编码的初始比特序列,其中,0≤r2≤r1≤1,

所述目标比特序列,由第一比特序列和第二比特序列级联形成;

所述第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得;

所述第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得。

通过上述步骤,采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码,其中,0≤r2≤r1≤1,目标比特序列,由第一比特序列和第二比特序列级联形成;第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得;第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得。由于目标比特序列是由第一比特序列和第二比特序列级联获得,译码器直接采用码率为r1的ldpc进行译码即可,解决了相关技术中,产生低码率的ldpc编码,会增加译码器的译码时延和硬件复杂度的问题,实现了获得低码率ldpc编码的同时,不会增加译码器的译码时延和硬件复杂度的技术效果。

需要说明的是,上述译码方法的执行主体可以是译码器,也可以是其他的具有译码功能的设备,本实施例对此不作限定。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。

实施例2

在本实施例中还提供了一种编码装置,应用于编码设备,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图4是根据本发明实施例2的编码装置的结构框图(一),如图4所示,本编码装置包括:

第一编码模块40:用于采用码率为r1的低密度奇偶校验码ldpc对待编码的初始比特序列进行编码,得到编码后的第一比特序列;其中,0≤r1≤1;

第二编码模块42,连接第一编码模块30,用于对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列;

第三编码模块44,连接第二编码模块32,用于将第一比特序列和第二比特序列级联,获得码率为r2的目标比特序列;其中,0≤r2≤r1≤1。

通过上述编码装置,第一编码模块40采用码率为r1的低密度奇偶校验码ldpc对待编码的初始比特序列进行编码,得到编码后的第一比特序列;第二编码模块42对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列;第三编码模块44将第一比特序列和第二比特序列级联,获得码率为r2的目标比特序列,通过上述技术方案,解决了相关技术中,产生低码率的ldpc编码,会增加译码器的译码时延和硬件复杂度的问题,实现了获得低码率ldpc编码的同时,不会增加译码器的译码时延和硬件复杂度的技术效果。

本实施例的优选实施方式中,第二编码模块还用于将第一比特序列分为t个比特序列片段,其中,比特序列片段的数目t与码率r1之间存在以下关系:

t是大于1的正整数,j是正整数,运算符表示取整操作。

图5是根据本发明实施例2的编码装置的结构框图(二)。如图5所示,在本实施例的一个优选实施方式中,第二编码模块32包括:

选取单元420,用于从第一比特序列的t个比特序列片段中选取t1个比特序列片段;

组合单元422,用于将t1个比特序列片段中对应位置上的比特进行线性组合,得到比特序列片段d1,其中1<t1≤t;

级联单元424,用于将选取单元和组合单元生成的w个比特序列片段{d1,d2,…,dw}级联,得到第二比特序列,其中w为正整数。

需要说明的是,上述确定步骤中将所述t1个比特序列片段中对应位置上的比特进行线性组合,可以通过下述任一方式实现:

对所述t1个比特序列片段中对应位置上的比特进行二进制相加;

对所述t1个比特序列片段中的至少两个比特序列片段先进行交织,然后对所述t1个比特序列片段中对应位置上的比特进行二进制相加。

当然,比特序列片段中对应位置上的比特进行线性组合,也可以通过其他方式实现,任何在本实施例的基础上等同替换或引申的方式,都在本实施例的保护范围内,本实施例对此不作限定。

本实施例的另一个优选方案中,对如何从第一比特序列的t个比特序列片段中,选取t1个比特序列片段以及选取哪几个比特序列片段进行具体的说明,主要包括但不限于以下方式:

可以根据编码端和译码端的预先约定进行选取;也可以根据编码端向译码端发送的信令的指示进行选取;也可以根据译码端向编码端发送的信令的指示进行选取。

本实施例中提及的比特序列片段的数目w根据t、r1、r2确定。根据以下公式确定:

其中,运算符表示取整操作。

本实施例中提及的第二比特序列的比特长度l2根据l1、r1、r2确定,具体根据以下公式确定:

其中,l1是所述第一比特序列的比特长度,运算符表示取整操作。

本实施例的一个优选实施例中,还提供了一种编码装置,包括:

第四编码模块,用于采用码率为1/3的低密度奇偶校验码ldpc对待编码的比特序列o进行编码,得到编码后的比特序列p;

划分模块,将所述比特序列p分为3个比特序列片段{p1,p2,p3};

第五编码模块,用于对所述比特序列片段p1和p2进行线性组合,并且对所述比特序列片段p1和p3进行线性组合,得到比特序列q;

第六编码模块,用于将比特序列p和比特序列q级联,获得码率为1/5的比特序列s。

为了更好地理解本发明,本实施例还提供了一种译码装置。图6是根据本发明实施例2的译码装置的结构框图。如图6所示,本译码装置包括:

译码模块60,用于采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码得到待编码的初始比特序列,其中,0≤r2≤r1≤1,且:

所述目标比特序列,由第一比特序列和第二比特序列级联形成;

所述第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得;

所述第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得。

通过上述装置,译码模块采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码得到待编码的初始比特序列,其中,目标比特序列,由第一比特序列和第二比特序列级联形成;所述第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得;所述第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得。通过上述技术方案解决了相关技术中,产生低码率的ldpc编码,会增加译码器的译码时延和硬件复杂度的问题,实现了获得低码率ldpc编码的同时,不会增加译码器的译码时延和硬件复杂度的技术效果。

需要说明的是,本发明上述实施例中各个模块及单元可以应用于的实体至少包括编码器或译码器,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器(处理器位于上述编码器或译码器中)中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

实施例3

为了更好地理解本发明上述实施例的技术方案,本发明实施例还提供了一种实体编码装置。图7是根据本发明实施例3的编码装置的结构框图。如图7所示,该实体编码装置包括第一处理器70和用于存储所述第一处理器70可执行的指令的第一存储器72,当所述指令被所述第一处理器70执行时,执行以下操作:

采用码率为r1的低密度奇偶校验码ldpc对待编码的初始比特序列进行编码,得到编码后的第一比特序列,其中,0≤r1≤1;

对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列;

将第一比特序列和第二比特序列级联,获得码率为r2的目标比特序列,其中,0≤r2≤r1≤1。

通过本编码装置,第一处理器70采用码率为r1的低密度奇偶校验码ldpc对待编码的初始比特序列进行编码,得到编码后的第一比特序列,其中,0≤r1≤1;对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列;将第一比特序列和第二比特序列级联,获得码率为r2的目标比特序列,通过上述技术方案,解决了相关技术中,产生低码率的ldpc编码,会增加译码器的译码时延和硬件复杂度的问题,实现了获得低码率ldpc编码的同时,不会增加译码器的译码时延和硬件复杂度的技术效果。

本发明实施例的优选实施方式中,对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列之前,所述第一处理器还用于执行以下操作:

将所述第一比特序列分为t个比特序列片段,其中,所述比特序列片段的数目t与所述码率r1之间存在以下关系:

t是大于1的正整数,j是正整数,运算符表示取整操作。

优选的,第一处理器还用于执行以下操作:

选取步骤:从所述t个比特序列片段中选取t1个比特序列片段;

组合步骤:将所述t1个比特序列片段中对应位置上的比特进行线性组合,得到比特序列片段d1,其中,1<t1≤t;

重复执行上述选取步骤和组合步骤,生成w个比特序列片段{d1,d2,…,dw},其中w为正整数;

将所述w个比特序列片段级联,得到所述第二比特序列。

优选的,将所述t1个比特序列片段中对应位置上的比特进行线性组合,包括以下至少之一:

对所述t1个比特序列片段中对应位置上的比特进行二进制相加;

对所述t1个比特序列片段中的至少两个比特序列片段先进行交织,然后对所述t1个比特序列片段中对应位置上的比特进行二进制相加。

优选的,所述第一处理器从所述第一比特序列的t个比特序列片段中选取t1个比特序列片段,包括以下至少之一的操作:

根据编码端和译码端的预先约定进行选取;

根据编码端向译码端发送的信令的指示进行选取;

根据译码端向编码端发送的信令的指示进行选取。

优选的,所述比特序列片段的数目w根据t、r1、r2确定。

优选的,所述第二比特序列的比特序列片段的数目w根据以下公式确定:

其中,运算符表示取整操作。

优选的,所述第二比特序列的比特长度l2根据l1、r1、r2确定,其中,l1是所述第一比特序列的比特长度。

优选的,所述第二比特序列的比特长度l2根据以下公式确定:

其中,运算符表示取整操作。

优选的,当所述r1=1/3,r2=1/5,且所述第一比特序列包括3个比特序列片段{p1,p2,p3}时,所述方法还包括:

对所述比特序列片段p1和p2进行线性组合,并且对所述比特序列片段p1和p3进行线性组合,得到第二比特序列;

将第一比特序列和第二比特序列级联,获得码率r2=1/5的目标比特序列。

为了更好地理解本发明上述实施例的技术方案,本发明实施例还提供了一种实体译码装置。图8是根据本发明实施例3的译码装置的结构框图。如图8所示,本实施例的译码装置包括:第二处理器80和用于存储所述第二处理器80可执行的指令的第二存储器82,当所述指令被所述第二处理器80执行时,执行以下操作:

采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码得到待编码的初始比特序列,其中,0≤r2≤r1≤1,所述目标比特序列,由第一比特序列和第二比特序列级联形成,所述第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得,所述第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得。

通过上述译码装置,第二处理器80采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码得到待编码的初始比特序列,其中,0≤r2≤r1≤1,所述目标比特序列,由第一比特序列和第二比特序列级联形成,所述第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得,所述第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得,通过上述技术方案,解决了相关技术中,产生低码率的ldpc编码,会增加译码器的译码时延和硬件复杂度的问题,实现了获得低码率ldpc编码的同时,不会增加译码器的译码时延和硬件复杂度的技术效果。

需要说明的是,上述实体编码装置和实体译码装置可以是芯片、单片机等处理装置,也可以是编码器、译码器等实体设备,本实施例对此不作限定。

为了更好地理解本发明,本实施例提供了一些优选实施例进行说明。

优选实施例1

本发明实施例,提供了一种低密度奇偶校验码的编码方法。该方法包括:

步骤1:待编码的第一比特序列i(相当于上述实施例的初始比特序列),采用编码码率为r1的低密度奇偶校验码进行编码,得到编码后的第二比特序列c(相当于上述实施例的第一比特序列);其中,0≤r1≤1;

步骤2:第二比特序列c中的全部或部分比特序列片段进行线性组合,得到第三比特序列d(相当于上述实施例的第二比特序列);

步骤3:将第二比特序列c和第三比特序列d级联,组成编码码率为r2的第四比特序列e(相当于上述实施例的目标比特序列);其中,0≤r2≤r1≤1。

其中,所述第二比特序列c中的全部或部分比特序列分段是指所述的第二比特序列c可以分为t个比特序列片段{c1,c2,……ct},其中,所述比特序列片段的数目t与所述编码码率r1之间存在如下关系如下关系:

其中,j是正整数,运算符表示向上、向下或者舍入等取整操作。

对所述的第二比特序列c的全部或部分比特序列进行线性组合得到第三比特序列d的方法包括:

从所述第二比特序列c的t个比特序列片段{c1,c2,……ct}中选取t1个比特序列片段,将所述t1个比特序列片段中对应位置上的比特进行线性组合,得到新的比特序列片段d1,其中t1≤t;从t个比特序列片段{c1,c2,……ct}中选取t2个比特序列片段,将所述t2个比特序列片段中对应位置上的比特进行线性组合,得到新的比特序列片段d2,其中t2≤t;依此类推,直到生成w个新的比特序列片段{d1,d2,…,dw}。将w个新的比特序列片段级联,得到第三比特序列d。

进一步地,对所述多个比特序列片段中对应位置上的比特进行线性组合是指,对所述多个比特进行二进制相加(也可以称为“异或”);或者,对所述多个比特序列片段中的部分比特序列片段先进行交织,然后对所述多个比特序列片段中对应位置上的比特进行二进制相加(异或)。

进一步地,所述用于生成新的比特序列片段di的ti个(其中1≤i≤w)比特序列片段,可以是发送端和接收端预先约定,或者,由发送端通过信令通知接收端,或者,由接收端通过信令通知发送端。

进一步地,所述第三比特序列d的比特序列片段的数目w可以由目标码率r2确定。具体地,

其中r1是所述第二比特序列c的编码码率,t是第二比特序列c的比特序列片段数目,运算符表示向上、向下或者舍入等取整操作。

进一步地,所述第三比特序列d的长度l2(比特)可以由目标码率r2确定。具体地

其中r1是所述第二比特序列c的编码码率,l1是第二比特序列c的长度(比特),运算符表示向上、向下或者舍入等取整操作。

优选实施例2

图9是根据本发明优选实施例2的编码方法的示意图。如图9所示,对于编码码率为r1的低密度奇偶校验码,可以通过如下方法得到编码码率为r2的低密度奇偶校验码,在本实施例中,假设r1=1/3,r2=1/5。

对待编码的第一比特序列i,假设第一比特序列i的长度为1000比特,利用编码码率为r1=1/3的低密度奇偶校验码的奇偶校验矩阵或者基础矩阵(例如16行24列的基础校验矩阵)编码生成第二比特序列c,第二比特序列c的长度为l1=3000比特。其中,第二比特序列c可以分为

个比特序列片段{c1,c2,c3},这里j的取值为j=1。其中c1是信息比特序列片段,c2和c3是校验比特序列片段。c1,c2,和c3的长度都是1000比特。

对第二比特序列c中的部分或全部比特序列片段进行线性组合得到第三比特序列d。其中,第三比特序列d中包含

个比特序列片段{d1,d2},每个比特序列片段的长度为1000比特。并且第三比特序列d的长度为

比特。

具体地,发送端和接收端根据预先约定的规则,从所述第二比特序列c的t=3个比特序列片段{c1,c2,c3}中选取t1=2个比特序列片段c1和c2,其中c1是信息比特序列片段,c2是校验比特序列片段,将所述2个比特序列片段中对应位置上的比特进行二进制累加,得到新的比特序列片段d1;从所述第二比特序列c的t=3个比特序列片段{c1,c2,c3}中选取t2=2个比特序列片段c1和c3,其中c1是信息比特序列片段,c3是校验比特序列片段,将所述2个比特序列片段中对应位置上的比特进行二进制累加,得到新的比特序列片段d2;将新的比特序列d1和d2级联,就得到第三比特序列d={d1,d2}。

将第二比特序列c和第三比特序列d级联,得到编码码率为r2=1/5的第四比特序列e={c,d}。

优选实施例3

图10是根据本发明优选实施例3的编码方法的示意图。如图10所示,对于编码码率为r1的低密度奇偶校验码,可以通过如下方法得到编码码率为r2的低密度奇偶校验码,在本实施例中,假设r1=1/3,r2=1/6。

对待编码的第一比特序列i,假设第一比特序列i的长度为1000比特,利用编码码率为r1=1/3的低密度奇偶校验码的奇偶校验矩阵或者基础矩阵(例如16行24列的基础校验矩阵)编码生成第二比特序列c,第二比特序列c的长度为l1=3000比特。其中,第二比特序列c可以分为

个比特序列片段{c1,c2,c3},这里j的取值为j=1。其中c1是信息比特序列片段,c2和c3是校验比特序列片段。c1,c2,和c3的长度都是1000比特。

对第二比特序列c中的部分或全部比特序列片段进行线性组合得到第三比特序列d。其中,第三比特序列d中包含

个比特序列片段{d1,d2,d3},每个比特序列片段的长度为1000比特。并且第三比特序列d的长度为

比特。

具体地,发送端和接收端根据预先约定的规则,从所述第二比特序列c的t=3个比特序列片段{c1,c2,c3}中选取t1=2个比特序列片段c1和c2,其中c1是信息比特序列片段,c2是校验比特序列片段,将所述2个比特序列片段中的c2比特序列片段进行交织,然后将所述2个比特序列片段(其中包含交织后的比特序列片段c2和未交织的比特序列片段c1)中对应位置上的比特进行二进制累加,得到新的比特序列片段d1;从所述第二比特序列c的t=3个比特序列片段{c1,c2,c3}中选取t2=2个比特序列片段c1和c3,其中c1是信息比特序列片段,c3是校验比特序列片段,将所述2个比特序列片段中对应位置上的比特进行二进制累加,得到新的比特序列片段d2;从所述第二比特序列c的t=3个比特序列片段{c1,c2,c3}中选取t3=3个比特序列片段c1,c2,和c3,其中c1是信息比特序列片段,c2和c3是校验比特序列片段,将所述3个比特序列片段中的c3比特序列片段进行交织,然后将所述3个比特序列片段(其中包含交织后的比特序列片段c3和未交织的比特序列片段c1和c2)中对应位置上的比特进行二进制累加,得到新的比特序列片段d3;将新的比特序列d1,d2和d3级联,就得到第三比特序列d={d1,d2,d3}。

将第二比特序列c和第三比特序列d级联,得到编码码率为r2=1/6的第四比特序列e={c,d}。

优选实施例4

图11是根据本发明优选实施例4的编码方法的示意图。如图11所示,对于编码码率为r1的低密度奇偶校验码,可以通过如下方法得到编码码率为r2的低密度奇偶校验码,在本实施例中,假设r1=2/3,r2=1/3。

对待编码的第一比特序列i,假设第一比特序列i的长度为1000比特,利用编码码率为r1=2/3的低密度奇偶校验码的奇偶校验矩阵或者基础矩阵(例如4行12列的基础校验矩阵)编码生成第二比特序列c,第二比特序列c的长度为l1=1500比特。其中,第二比特序列c可以分为

个比特序列片段{c1,c2,c3},这里j的取值为j=2。其中c1和c2是信息比特序列片段,c3是校验比特序列片段。c1,c2,和c3的长度都是500比特。

对第二比特序列c中的部分或全部比特序列片段进行线性组合得到第三比特序列d。其中,第三比特序列d中包含

个比特序列片段{d1,d2,d3},每个比特序列片段的长度为500比特。并且第三比特序列d的长度为

比特。

具体地,发送端和接收端根据预先约定的规则,从所述第二比特序列c的t=3个比特序列片段{c1,c2,c3}中选取t1=2个比特序列片段c1和c2,其中c1是信息比特序列片段,c2是校验比特序列片段,将所述2个比特序列片段中对应位置上的比特进行二进制累加,得到新的比特序列片段d1;从所述第二比特序列c的t=3个比特序列片段{c1,c2,c3}中选取t2=2个比特序列片段c1和c3,其中c1是信息比特序列片段,c3是校验比特序列片段,将所述2个比特序列片段中对应位置上的比特进行二进制累加,得到新的比特序列片段d2;从所述第二比特序列c的t=3个比特序列片段{c1,c2,c3}中选取t3=2个比特序列片段c2和c3,其中c2和c3是校验比特序列片段,将所述2个比特序列片段中的c3比特序列片段进行交织,然后将所述2个比特序列片段(其中包含交织后的比特序列片段c3和未交织的比特序列片段c2)中对应位置上的比特进行二进制累加,得到新的比特序列片段d3;将新的比特序列d1,d2和d3级联,就得到第三比特序列d={d1,d2,d3}。

将第二比特序列c和第三比特序列d级联,得到编码码率为r2=1/3的第四比特序列e={c,d}。

实施例4

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的编码方法和译码方法所执行的程序代码。

可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

s1,采用码率为r1的低密度奇偶校验码ldpc对待编码的初始比特序列进行编码,得到编码后的第一比特序列;其中,0≤r1≤1;

s2,对第一比特序列中的至少两个比特序列片段进行线性组合,得到第二比特序列;

s3,将第一比特序列和第二比特序列级联,获得码率为r2的目标比特序列;其中,0≤r2≤r1≤1。

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:

s1,采用码率为r1的低密度奇偶校验码ldpc对码率为r2的目标比特序列进行译码得到待编码的初始比特序列,其中,0≤r2≤r1≤1,且:

所述目标比特序列,由第一比特序列和第二比特序列级联形成;

所述第一比特序列,由待编码的初始比特序列通过码率为r1的ldpc进行编码获得;

所述第二比特序列,由第一比特序列中的至少两个比特序列片段进行线性组合获得。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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