CN103929272B - Cmmb中部分并行输入的右移累加准循环矩阵乘法器 - Google Patents
Cmmb中部分并行输入的右移累加准循环矩阵乘法器 Download PDFInfo
- Publication number
- CN103929272B CN103929272B CN201410164215.7A CN201410164215A CN103929272B CN 103929272 B CN103929272 B CN 103929272B CN 201410164215 A CN201410164215 A CN 201410164215A CN 103929272 B CN103929272 B CN 103929272B
- Authority
- CN
- China
- Prior art keywords
- matrix
- generator polynomial
- quasi
- multiplier
- cmmb
- 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.)
- Expired - Fee Related
Links
Landscapes
- Error Detection And Correction (AREA)
- Complex Calculations (AREA)
Abstract
本发明提供了一种CMMB中部分并行输入的右移累加准循环矩阵乘法器,用于实现CMMB标准多码率QC‑LDPC近似下三角编码中向量m与准循环矩阵F的乘法运算,该乘法器包括1个对向量段循环右移的256位移位寄存器、5个预先存储矩阵F中所有循环矩阵生成多项式的生成多项式查找表、5个对移位寄存器内容和生成多项式比特进行标量乘的256位二进制乘法器、5个对乘积和累加器内容进行模2加的256位二进制加法器、5个256位累加器。本发明提供的部分并行输入乘法器兼容所有码率,具有寄存器少、结构简单、功耗小、成本低、工作频率高、吞吐量大等优点。
Description
技术领域
本发明涉及信道编码领域,特别涉及一种CMMB标准多码率QC-LDPC近似下三角编码中部分并行输入的右移累加准循环矩阵乘法器。
背景技术
低密度奇偶校验(Low-Density Parity-Check,LDPC)码是高效的信道编码技术之一,而准循环LDPC(Quasi-Cyclic LDPC,QC-LDPC)码是一种特殊的LDPC码。QC-LDPC码的生成矩阵G和校验矩阵H都是由循环矩阵构成的阵列,具有分段循环的特点,故被称为QC-LDPC码。循环矩阵的首行是末行循环右移1位的结果,其余各行都是其上一行循环右移1位的结果,因此,循环矩阵完全由其首行来表征。通常,循环矩阵的首行被称为它的生成多项式。
当采用近似下三角编码方法对QC-LDPC码进行编码时,通过行列交换,校验矩阵H变换成近似下三角形状HALT,它由6个子矩阵组成如下:
其中,L是下三角矩阵。HALT对应码字vALT=(s,p,q),矩阵A和C对应向量s,矩阵B和D对应一部分校验向量p,矩阵L和E则对应余下的校验向量q。计算部分校验向量p的方法如下:
p=s(C+EL-1A)Τ((D+EL-1B)-1)Τ(2)其中,上标-1和Τ分别表示对矩阵求逆和转置。令
m=s(C+EL-1A)Τ (3)
F=((D+EL-1B)-1)Τ (4)
则向量m和矩阵F满足如下关系:
p=mF (5)
矩阵F是由如下u×u个b×b阶循环矩阵Fi,j(0≤i<u,0≤j<u)构成的准循环矩阵:
F的连续b行和b列分别被称为块行和块列。由式(6)可知,F有u块行和u块列。令fi,j是循环矩阵Fi,j的生成多项式。
令向量m=(e0,e1,…,eu×b-1),部分校验向量p=(d0,d1,…,du×b-1)。以b比特为一段,向量m和部分校验向量p均被等分为u段,即m=(m0,m1,…,mu-1)和p=(p0,p1,…,pu-1)。由式(5)可知,部分校验向量的第j段pj满足
pj=m0F0,j+m1F1,j+…+miFi,j+…+mu-1Fu-1,j (7)
其中,0≤i<u,0≤j<u。令分别是生成多项式fi,j循环右移n位和循环左移n位的结果,其中,0≤n≤b。那么,式(7)等号右边的第i项可展开为
式(5)涉及向量与准循环矩阵的乘法,目前广泛采用的是基于u个I型移位寄存器加累加器(Type-I Shift-Register-Adder-Accumulator,SRAA-I)电路的方案。图1是单个SRAA-I电路的功能框图,向量m逐位串行送入该电路。当用SRAA-I电路计算校验段pj(0≤j<u)时,生成多项式查找表预先存储准循环矩阵F的第j块列的所有生成多项式,累加器被清零初始化。当第0个时钟周期到来时,移位寄存器从生成多项式查找表加载F的第0块行、第j块列的生成多项式比特e0移入电路,并与移位寄存器的内容进行标量乘,乘积与累加器的内容0模2加,和存回累加器。当第1个时钟周期到来时,移位寄存器循环右移1位,内容变为比特e1移入电路,并与移位寄存器的内容进行标量乘,乘积与累加器的内容模2加,和存回累加器。上述右移-乘-加-存储过程继续进行下去。当第b-1个时钟周期结束时,比特eb-1已移入电路,此时累加器存储的是部分和m0F0,j,这是向量段m0对pj的贡献。当第b个时钟周期到来时,移位寄存器从生成多项式查找表加载F的第1块行、第j块列的生成多项式重复上述右移-乘-加-存储过程。当向量段m1完全移入电路时,累加器存储的是部分和m0F0,j+m1F1,j。重复上述过程,直到整个向量m全部串行移入电路。此时,累加器存储的是校验段pj。使用u个SRAA-I电路能构成图2所示的准循环矩阵串行乘法器,它在u×b个时钟周期内同时求出u个校验段。该方案需要2×u×b个寄存器、u×b个二输入与门和u×b个二输入异或门,还需要u个u×b比特ROM存储循环矩阵的生成多项式。
CMMB标准采用了码率η=0.5和0.75两种QC-LDPC码,均有b=256。对于码率η=0.5和0.75,u分别是5和3。
为兼容2种码率,CMMB标准多码率QC-LDPC近似下三角编码中准循环矩阵乘法的现有解决方案是基于5个SRAA-I电路。该方案有两个缺点:一是需要2560个寄存器,导致电路的功耗大、成本高;二是串行输入向量比特,并行加载生成多项式,需要1281根连接线。如此多的连线会造成乘法器的电路结构复杂、工作频率低、吞吐量小。
发明内容
CMMB标准多码率QC-LDPC近似下三角编码中准循环矩阵乘法的现有实现方案存在功耗大、成本高、电路结构复杂、工作频率低、吞吐量小的缺点,针对这些技术问题,本发明提供了一种基于右移累加的部分并行输入乘法器。
如图4所示,CMMB标准多码率QC-LDPC近似下三角编码中部分并行输入的右移累加准循环矩阵乘法器主要由5部分组成:移位寄存器、生成多项式查找表、b位二进制乘法器、b位二进制加法器和累加器。乘法过程分5步完成:第1步,清零累加器R0,R1,…,R4;第2步,移位寄存器输入向量段mi(0≤i<u);第3步,生成多项式查找表L0,L1,…,L4分别输出码率η准循环矩阵F第i块行中第0,1,…,4块列的生成多项式比特,这些生成多项式比特分别通过b位二进制乘法器M0,M1,…,M4与移位寄存器的内容进行标量乘,b位二进制乘法器M0,M1,…,M4的乘积分别通过b位二进制加法器A0,A1,…,A4与累加器R0,R1,…,R4的内容相加,b位二进制加法器A0,A1,…,A4的和分别存入累加器R0,R1,…,R4;第4步,移位寄存器循环右移一位,重复第3步b次;第5步,以1为步长递增改变i的取值,重复第2~4步u次,直到整个向量m输入完毕,此时,累加器R0,R1,…,Ru-1存储的分别是校验段p0,p1,…,pu-1,它们构成了部分校验向量p=(p0,p1,…,pu-1)。
本发明提供的部分并行输入准循环矩阵乘法器结构简单,兼容CMMB标准中所有码率的QC-LDPC码,能在保持速度的条件下,减少寄存器和连线,降低功耗和成本,提高工作频率和吞吐量。
关于本发明的优势与方法可通过下面的发明详述及附图得到进一步的了解。
附图说明
图1是I型移位寄存器加累加器SRAA-I电路的功能框图;
图2是由u个SRAA-I电路构成的准循环矩阵乘法器;
图3是II型移位寄存器加累加器SRAA-II电路的功能框图;
图4是由5个SRAA-II电路构成的一种基于右移累加的部分并行输入准循环矩阵乘法器。
具体实施方式
下面结合附图对本发明的较佳实施例作详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围作出更为清楚明确的界定。
令生成多项式fi,j=(fi,j,0,fi,j,1,…,fi,j,b-1),则Fi,j可视为单位矩阵循环右移版本的加权和,即
Fi,j=fi,j,0Ir(0)+fi,j,1Ir(1)+…+fi,j,b-1Ir(b-1) (9)
那么,式(7)等号右边的第i项可展开为
与式(8)相比,式(10)的显著优点是分段并行输入向量m,串行加载生成多项式fi,j。式(10)是一个右移-乘-加-存储的过程,其实现用II型移位寄存器加累加器(Type-IIShift-Register-Adder-Accumulator,SRAA-II)电路。图3是SRAA-II电路的功能框图,向量m以b比特为一段并行送入该电路。当用SRAA-II电路计算校验段pj(0≤j<u)时,生成多项式查找表预先存储准循环矩阵F的第j块列的所有生成多项式,累加器被清零初始化。当第0个时钟周期到来时,向量段m0移入移位寄存器,生成多项式查找表输出F的第0块行、第j块列的生成多项式f0,j的第0个比特f0,j,0,并与移位寄存器的内容进行标量乘,乘积与累加器的内容0模2加,和存回累加器。当第1个时钟周期到来时,移位寄存器循环右移1位,内容变为生成多项式查找表输出f0,j的第1个比特f0,j,1,并与移位寄存器的内容进行标量乘,乘积与累加器的内容模2加,和存回累加器。上述右移-乘-加-存储过程继续进行下去。当第b-1个时钟周期结束时,生成多项式查找表已输出f0,j的最后一个比特f0,j,b-1,此时累加器存储的是部分和m0F0,j,这是向量段m0对pj的贡献。当第b个时钟周期到来时,向量段m1移入移位寄存器,重复上述右移-乘-加-存储过程。当生成多项式查找表已输出f1,j的最后一个比特f1,j,b-1时,累加器存储的是部分和m0F0,j+m1F1,j。重复上述过程,直到整个向量m全部并行移入电路。此时,累加器存储的是校验段pj。
图4给出了由5个SRAA-II电路构成的一种基于右移累加的部分并行输入准循环矩阵乘法器,由移位寄存器、生成多项式查找表、b位二进制乘法器、b位二进制加法器和累加器五种功能模块组成。移位寄存器对向量段mi(0≤i<u)循环右移。生成多项式查找表L0,L1,…,L4分别预存所有码率准循环矩阵F第0,1,…,4块列中的所有循环矩阵生成多项式。生成多项式查找表L0,L1,…,L4输出的生成多项式比特分别与移位寄存器的内容进行标量乘,这5个标量乘法分别通过b位二进制乘法器M0,M1,…,M4完成。b位二进制乘法器M0,M1,…,M4的乘积分别与累加器R0,R1,…,R4的内容相加,这5个模2加法分别通过b位二进制加法器A0,A1,…,A4完成。b位二进制加法器A0,A1,…,A4的和分别存入累加器R0,R1,…,R4。
生成多项式查找表L0,L1,…,L4存储所有码率准循环矩阵F中的循环矩阵生成多项式。L0~L2分别存储2种码率F的第0~2块列中的所有生成多项式,对于任一块列,依次存储第0,1,…,u-1块行对应的生成多项式。L3、L4分别存储η=0.5码率F的第3、4块列中的所有生成多项式,对于任一块列,依次存储第0,1,…,u-1块行对应的生成多项式。
本发明提供了一种基于右移累加的部分并行输入准循环矩阵乘法,它兼容CMMB标准中2种码率QC-LDPC码,其乘法步骤描述如下:
第1步,清零累加器R0,R1,…,R4;
第2步,移位寄存器输入向量段mi(0≤i<u);
第3步,生成多项式查找表L0,L1,…,L4分别输出码率η准循环矩阵F第i块行中第0,1,…,4块列的生成多项式比特,这些生成多项式比特分别通过b位二进制乘法器M0,M1,…,M4与移位寄存器的内容进行标量乘,b位二进制乘法器M0,M1,…,M4的乘积分别通过b位二进制加法器A0,A1,…,A4与累加器R0,R1,…,R4的内容相加,b位二进制加法器A0,A1,…,A4的和分别存入累加器R0,R1,…,R4;
第4步,移位寄存器循环右移一位,重复第3步b次;
第5步,以1为步长递增改变i的取值,重复第2~4步u次,直到整个向量m输入完毕,此时,累加器R0,R1,…,Ru-1存储的分别是校验段p0,p1,…,pu-1,它们构成了部分校验向量p=(p0,p1,…,pu-1)。
从以上步骤不难看出,整个计算过程共需u×b个时钟周期,与现有的基于5个SRAA-I电路的乘法方案完全相同。
CMMB标准中准循环矩阵乘法器的现有解决方案需要2560个寄存器、1280个二输入与门和1280个二输入异或门,而本发明需要1536个寄存器、1280个二输入与门和1280个二输入异或门。两种乘法方案耗费相同数量的与门和异或门,但本发明节约了40%的寄存器。
现有解决方案需要1281根线连接移位寄存器和生成多项式查找表,而本发明只需要261根连接线。
综上可见,对于CMMB标准多码率QC-LDPC近似下三角编码中的准循环矩阵乘法器,与现有解决方案相比,本发明保持了相同的速度,节约了40%的寄存器,极大地简化了电路连线,具有结构简单、功耗小、成本低、工作频率高、吞吐量大等优点。
以上所述,仅为本发明的具体实施方式之一,但本发明的保护范围并不局限于此,任何熟悉本领域的技术人员在本发明所揭露的技术范围内,可不经过创造性劳动想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书所限定的保护范围为准。
Claims (4)
1.一种CMMB中部分并行输入的右移累加准循环矩阵乘法器,当采用近似下三角编码方法对CMMB标准多码率QC-LDPC码进行编码时涉及向量m与准循环矩阵F的乘法运算,矩阵F分为u块行和u块列,是由u×u个b×b阶循环矩阵Fi,j构成的阵列,fi,j是循环矩阵Fi,j的生成多项式,其中,b、i、j和u均为非负整数,0≤i<u,0≤j<u,CMMB标准采用了2种不同码率η的QC-LDPC码,η分别是0.5、0.75,对于这2种不同码率QC-LDPC码,均有b=256,2种不同码率对应的参数u分别是5、3,以b比特为一段,向量m被等分为u段,即m=(m0,m1,…,mu-1),部分校验向量p被等分为u段,即p=(p0,p1,…,pu-1),其特征在于,所述乘法器包括以下部件:
b位移位寄存器对向量段进行循环右移;
生成多项式查找表L0,L1,…,L4,分别预存所有码率准循环矩阵F中第0,1,…,4块列的循环矩阵生成多项式;
b位二进制乘法器M0,M1,…,M4,分别对移位寄存器的内容和生成多项式查找表L0,L1,…,L4的输出比特进行标量乘;
b位二进制加法器A0,A1,…,A4,分别对b位二进制乘法器M0,M1,…,M4的乘积和累加器R0,R1,…,R4的内容进行模2加;
累加器R0,R1,…,R4,分别存储b位二进制加法器A0,A1,…,A4的结果以及最终的校验段p0,p1,…,p4。
2.根据权利要求1所述的一种CMMB中部分并行输入的右移累加准循环矩阵乘法器,其特征在于,所述生成多项式查找表L0~L2分别存储2种码率F的第0~2块列中的所有生成多项式,对于任一块列,依次存储第0,1,…,u-1块行对应的生成多项式。
3.根据权利要求1所述的一种CMMB中部分并行输入的右移累加准循环矩阵乘法器,其特征在于,所述生成多项式查找表L3、L4分别存储η=0.5码率F的第3、4块列中的所有生成多项式,对于任一块列,依次存储第0,1,…,u-1块行对应的生成多项式。
4.一种CMMB中部分并行输入的右移累加准循环矩阵串行乘法方法,当采用近似下三角编码方法对CMMB标准多码率QC-LDPC码进行编码时涉及向量m与准循环矩阵F的乘法运算,矩阵F分为u块行和u块列,是由u×u个b×b阶循环矩阵Fi,j构成的阵列,fi,j是循环矩阵Fi,j的生成多项式,其中,b、i、j和u均为非负整数,0≤i<u,0≤j<u,CMMB标准采用了2种不同码率η的QC-LDPC码,η分别是0.5、0.75,对于这2种不同码率QC-LDPC码,均有b=256,2种不同码率对应的参数u分别是5、3,以b比特为一段,向量m被等分为u段,即m=(m0,m1,…,mu-1),部分校验向量p被等分为u段,即p=(p0,p1,…,pu-1),其特征在于,所述乘法方法包括以下步骤:
第1步,清零累加器R0,R1,…,R4;
第2步,移位寄存器输入向量段mi(0≤i<u);
第3步,生成多项式查找表L0,L1,…,L4分别输出码率η准循环矩阵F第i块行中第0,1,…,4块列的生成多项式比特,这些生成多项式比特分别通过b位二进制乘法器M0,M1,…,M4与移位寄存器的内容进行标量乘,b位二进制乘法器M0,M1,…,M4的乘积分别通过b位二进制加法器A0,A1,…,A4与累加器R0,R1,…,R4的内容相加,b位二进制加法器A0,A1,…,A4的和分别存入累加器R0,R1,…,R4;
第4步,移位寄存器循环右移一位,重复第3步b次;
第5步,以1为步长递增改变i的取值,重复第2~4步u次,直到整个向量m输入完毕,此时,累加器R0,R1,…,Ru-1存储的分别是校验段p0,p1,…,pu-1,它们构成了部分校验向量p=(p0,p1,…,pu-1)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410164215.7A CN103929272B (zh) | 2014-04-23 | 2014-04-23 | Cmmb中部分并行输入的右移累加准循环矩阵乘法器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410164215.7A CN103929272B (zh) | 2014-04-23 | 2014-04-23 | Cmmb中部分并行输入的右移累加准循环矩阵乘法器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103929272A CN103929272A (zh) | 2014-07-16 |
CN103929272B true CN103929272B (zh) | 2019-02-22 |
Family
ID=51147364
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410164215.7A Expired - Fee Related CN103929272B (zh) | 2014-04-23 | 2014-04-23 | Cmmb中部分并行输入的右移累加准循环矩阵乘法器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103929272B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103236850A (zh) * | 2013-04-19 | 2013-08-07 | 荣成市鼎通电子信息科技有限公司 | 基于循环左移的深空通信中准循环矩阵串行乘法器 |
CN103248372A (zh) * | 2013-04-19 | 2013-08-14 | 荣成市鼎通电子信息科技有限公司 | 基于循环左移的准循环ldpc串行编码器 |
CN103268217A (zh) * | 2013-04-19 | 2013-08-28 | 荣成市鼎通电子信息科技有限公司 | 基于循环左移的准循环矩阵串行乘法器 |
CN103268215A (zh) * | 2013-04-19 | 2013-08-28 | 荣成市鼎通电子信息科技有限公司 | 基于循环左移的cmmb中准循环矩阵串行乘法器 |
-
2014
- 2014-04-23 CN CN201410164215.7A patent/CN103929272B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103236850A (zh) * | 2013-04-19 | 2013-08-07 | 荣成市鼎通电子信息科技有限公司 | 基于循环左移的深空通信中准循环矩阵串行乘法器 |
CN103248372A (zh) * | 2013-04-19 | 2013-08-14 | 荣成市鼎通电子信息科技有限公司 | 基于循环左移的准循环ldpc串行编码器 |
CN103268217A (zh) * | 2013-04-19 | 2013-08-28 | 荣成市鼎通电子信息科技有限公司 | 基于循环左移的准循环矩阵串行乘法器 |
CN103268215A (zh) * | 2013-04-19 | 2013-08-28 | 荣成市鼎通电子信息科技有限公司 | 基于循环左移的cmmb中准循环矩阵串行乘法器 |
Also Published As
Publication number | Publication date |
---|---|
CN103929272A (zh) | 2014-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105099467A (zh) | Qc-ldpc码的编码方法及编码装置 | |
CN103902509A (zh) | Wpan中全并行输入的循环左移准循环矩阵乘法器 | |
CN103268215A (zh) | 基于循环左移的cmmb中准循环矩阵串行乘法器 | |
CN103929199A (zh) | Dtmb中全并行输入的循环左移准循环矩阵乘法器 | |
CN103929272B (zh) | Cmmb中部分并行输入的右移累加准循环矩阵乘法器 | |
CN101662291B (zh) | 编码装置和方法 | |
CN103929191A (zh) | 深空通信中部分并行输入的累加左移准循环矩阵乘法器 | |
CN103905060A (zh) | Wpan中部分并行输入的累加左移准循环矩阵乘法器 | |
CN107592958B (zh) | 不同码长下使用一个多比率指数表和一个扩展因子的多比率的ldpc编码和解码 | |
CN103916135A (zh) | 近地通信中全并行输入的循环左移qc-ldpc编码器 | |
CN103929207A (zh) | Cmmb中部分并行输入的右移累加qc-ldpc编码器 | |
CN103236852B (zh) | 无乘法运算的dtmb中准循环矩阵串行乘法器 | |
CN103905056A (zh) | Cmmb中部分并行输入的累加左移准循环矩阵乘法器 | |
CN103888150A (zh) | 全并行输入的循环左移准循环矩阵乘法器 | |
CN103905055A (zh) | 部分并行输入的右移累加qc-ldpc编码器 | |
CN103929196A (zh) | Wpan中全并行输入的循环左移qc-ldpc编码器 | |
CN103929194A (zh) | Wpan中部分并行输入的右移累加qc-ldpc编码器 | |
CN103905157B (zh) | 深空通信中部分并行输入的累加左移qc-ldpc编码器 | |
CN103929189A (zh) | 近地通信中部分并行输入的累加左移qc-ldpc编码器 | |
CN103929200A (zh) | Cdr中全并行输入的循环左移qc-ldpc编码器 | |
CN103902508A (zh) | 部分并行输入的累加左移准循环矩阵乘法器 | |
CN103929193A (zh) | 部分并行输入的累加左移qc-ldpc编码器 | |
CN103905059A (zh) | Cdr中部分并行输入的右移累加qc-ldpc编码器 | |
CN103905058A (zh) | 部分并行输入的右移累加准循环矩阵乘法器 | |
CN103235711A (zh) | 基于查找表的准循环矩阵高速乘法器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190222 Termination date: 20200423 |
|
CF01 | Termination of patent right due to non-payment of annual fee |