CN104980167A - 基于求和阵列的cdr中qc-ldpc并行编码器 - Google Patents
基于求和阵列的cdr中qc-ldpc并行编码器 Download PDFInfo
- Publication number
- CN104980167A CN104980167A CN201510346193.0A CN201510346193A CN104980167A CN 104980167 A CN104980167 A CN 104980167A CN 201510346193 A CN201510346193 A CN 201510346193A CN 104980167 A CN104980167 A CN 104980167A
- Authority
- CN
- China
- Prior art keywords
- matrix
- kinds
- register
- vector
- block
- 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.)
- Pending
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明涉及一种解决CDR系统中四种不同码率QC-LDPC码并行编码的方案,其特征在于,所述系统的QC-LDPC码的并行编码器主要由寄存器、求和阵列、选择扩展器和b位二输入异或门四部分组成。本发明提供的QC-LDPC并行编码器兼容多码率,能在保持编码速度不变的条件下有效减少资源需求,具有控制简单、资源消耗少、功耗小、成本低等优点。
Description
技术领域
本发明涉及数字广播领域,特别涉及一种CDR系统中QC-LDPC码编码器的并行实现方法。
背景技术
由于在传输信道中存在的各种失真和噪声会对发送信号产生干扰,接收端不可避免地会出现数字信号产生误码的情况。为了降低误码率,需要采用信道编码技术。
低密度奇偶校验(Low-Density Parity-Check,LDPC)码以其逼近Shannon限的优异性能成为信道编码领域的研究热点。准循环LDPC(Quasic-LDPC,QC-LDPC)码是一种特殊的LDPC码,其编码可采用移位寄存器加累加器(Shift-Register-Adder-Accumulator,SRAA)加以实现。
SRAA法是利用生成矩阵G进行编码。QC-LDPC码的生成矩阵G是由a×t个b×b阶循环矩阵Gi,j(1≤i≤a,1≤j≤t)构成的阵列,t=a+c。与信息向量对应的一部分生成矩阵是单位矩阵,与校验向量对应的其余部分生成矩阵是高密度矩阵。假设a不是素数,可被分解为a=ux(u≤x),其中,u不等于1,x不等于a。那么,u路并行SRAA法完成一次编码需要bx+t个时钟周期,需要(uc+t)b个寄存器、ucb个二输入与门和ucb个二输入异或门。此外,还需要acb比特ROM存储循环矩阵的首行。
CDR是中国数字广播的英文简称,英文全称是China Digital Radio。CDR标准采用了四种不同码率的QC-LDPC码。对于这四种QC-LDPC码,均有t=36和b=256,所有a的最大公约数是u=3。图1给出了不同码率η下的参数a、c和x。
CDR系统中QC-LDPC高速编码的现有解决方案是采用u=3路并行SRAA法,四种QC-LDPC码所需的编码时间分别是804、1060、1572和2340个时钟周期。逻辑资源需要29952个寄存器、20736个二输入与门和20736个二输入异或门,这是由码率η=1/4对应的参数决定的。此外,四种QC-LDPC码共需281088比特ROM存储循环矩阵的首行。当采用硬件实现时,需要较多的存储器和寄存器,势必会造成设备成本高,功耗大。
发明内容
针对CDR系统多码率QC-LDPC码高速编码的现有实现方案中存在的资源需求量大缺点,本发明提供了一种基于求和阵列的并行编码方法,能在保持编码速度不变的前提下,减少资源需求。
如图2所示,CDR系统中多码率QC-LDPC码的并行编码器主要由4部分组成:寄存器、求和阵列、选择扩展器和b位二输入异或门。整个编码过程分4步完成:第1步,输入信息向量s,保存至寄存器R1~Ra,清零寄存器Ra+1~Rt,并为选择扩展器Ml配置s对应的码率η,其中,1≤l≤c;第2步,寄存器R1~Ra串行左移1次,为求和阵列并行输入向量(s1,k,s2,k,…,su,k),所有选择扩展器的控制端输入数值ρ=[(k-1)/b]+1,所有选择扩展器分别从求和阵列的输出端中选择一部分并扩展成b个,共同构成向量(s1,k,s2,k,…,su,k)与码率η对应的子块首行矩阵Fρ的乘积,b位二输入异或门Al将乘积的第l段b比特与寄存器Ra+l串行循环左移1次的结果相加,和存回寄存器Ra+l,其中,1≤k≤bx,1≤ρ≤x,1≤l≤c,符号[(k-1)/b]表示不大于(k-1)/b的最大整数;第3步,以1为步长递增改变k的取值,重复第2步bx-1次,完成后,寄存器R1~Ra存储的是信息向量s=(s1,s2,…,sa),寄存器Ra+1~Rt存储的是校验向量p=(p1,p2,…,pc);第4步,并行输出码字v=(s,p)。
本发明提供的QC-LDPC并行编码器兼容多码率,能在保持编码速度不变的前提下有效减少资源需求,从而达到降低硬件成本和功耗的目的。
关于本发明的优点与精神可通过接下来的发明详述及附图得到进一步的了解。
附图说明
图1给出了不同码率η下的参数a、t和x;
图2是CDR系统中兼容四种码率QC-LDPC码的并行编码器整体结构;
图3是求和阵列的构成示意图;
图4给出了各种多输入异或门的数量;
图5比较了传统的u路并行SRAA法与本发明的资源消耗。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,但不作为对本发明的限定。
QC-LDPC码是一类特殊的LDPC码,它的生成矩阵G和校验矩阵H都是由循环矩阵构成的阵列,具有分段循环特点,故被称为准循环LDPC码。从行的角度看,循环矩阵的每一行都是上一行(首行是末行)循环右移一位的结果;从列的角度看,循环矩阵的每一列都是前一列(首列是末列)循环下移一位的结果。循环矩阵的行向量构成的集合与列向量构成的集合完全相同,因此,循环矩阵完全可由它的首行或首列来表征。QC-LDPC码的生成矩阵G是由a×t个b×b阶循环矩阵Gi,j(1≤i≤a,1≤j≤t)构成的阵列:
G(或H)的连续b行和b列分别被称为块行和块列。假设gi,j(1≤i≤a,a+1≤j≤t)是循环矩阵Gi,j的首行,那么可按照如下方式定义a×bc阶块首行矩阵F:
F是由生成矩阵G后c块列中所有循环矩阵的首行构成的,可视为由bc个a维列向量组成的。假设a不是素数,可被分解为a=ux(u≤x),其中,u不等于1,x不等于a。那么,块首行矩阵F的第u(ρ-1)+1~uρ(1≤ρ≤x)行构成了一个u×bc阶矩阵,称之为子块首行矩阵,记作Fρ。Fρ可视为由bc个u维列向量构成的。
对于CDR系统,生成矩阵G对应码字v=(s,p),G的前a块列对应的是信息向量s,后c块列对应的是校验向量p。以b比特为一段,信息向量s被等分为a段,即s=(s1,s2,…,sa);校验向量p被等分为c段,即p=(p1,p2,…,pc)。对于第i(1≤i≤a)段信息向量si,有si=(si,1,si,2,…,si,b)。CDR标准采用了四种不同码率的QC-LDPC码,均有t=36和b=256,所有a的最大公约数是u=3。图1给出了不同码率η下的参数a、c和x。
由式(1)、(2)和循环矩阵的特点,图2给出了适用于CDR系统中四种码率QC-LDPC码的并行编码器,它主要由寄存器、求和阵列、选择扩展器和b位二输入异或门四种功能模块组成。
寄存器R1~Ra用于缓存信息向量s=(s1,s2,…,sa),寄存器Ra+1~Rt用于计算和存储校验向量p=(p1,p2,…,pc)。
求和阵列对并行输入的u位信息比特s1,k,s2,k,…,su,k(1≤k≤bx)进行求和,具体而言,是从中选取m(1≤m≤u)个不同的元素进行模2加。由排列组合知识可知,穷举可得到2u-1=7个不同的求和表达式。7个求和表达式可用7个多输入异或门加以实现。多输入异或门的输入端数目范围是1~3,当只有一个输入端时,单输入异或门实际上是直连线。综上,求和阵列有u=3个输入端和7个输出端,其内部由7个多输入异或门组成,如图3所示。图4给出了各种多输入异或门的数量,它们总共相当于5个二输入异或门。
选择扩展器Ml(1≤l≤c)受控于码率η和子块首行矩阵Fρ的下标ρ(1≤ρ≤x)。ρ与向量(s1,k,s2,k,…,su,k)(1≤k≤bx)的关系为ρ=[(k-1)/b]+1(符号[(k-1)/b]表示不大于(k-1)/b的最大整数)。选择扩展器Ml在求和阵列运算结果的基础上,根据码率η完成向量(s1,k,s2,k,…,su,k)(1≤k≤bx)与子块首行矩阵Fρ(1≤ρ≤x)的并行乘法。选择扩展器Ml从求和阵列的输出端中选择一部分并扩展成b个,以构成向量(s1,k,s2,k,…,su,k)与子块首行矩阵Fρ乘积的第l段b比特,选择方式完全取决于码率为η的子块首行矩阵Fρ的bc个列向量。
b位二输入异或门Al(1≤l≤c)将向量(s1,k,s2,k,…,su,k)(1≤k≤bx)与子块首行矩阵Fρ乘积的第l段b比特累加到寄存器Ra+l中。
本发明提供了一种可变码率QC-LDPC码的并行编码方法,结合CDR系统中多码率QC-LDPC码的并行编码器(如图2所示),其编码步骤描述如下:
第1步,输入信息向量s,保存至寄存器R1~Ra,清零寄存器Ra+1~Rt,并为选择扩展器Ml配置s对应的码率η,其中,1≤l≤c;
第2步,寄存器R1~Ra串行左移1次,为求和阵列并行输入向量(s1,k,s2,k,…,su,k),所有选择扩展器的控制端输入数值ρ=[(k-1)/b]+1,所有选择扩展器分别从求和阵列的输出端中选择一部分并扩展成b个,共同构成向量(s1,k,s2,k,…,su,k)与码率η对应的子块首行矩阵Fρ的乘积,b位二输入异或门Al将乘积的第l段b比特与寄存器Ra+l串行循环左移1次的结果相加,和存回寄存器Ra+l,其中,1≤k≤bx,1≤ρ≤x,1≤l≤c,符号[(k-1)/b]表示不大于(k-1)/b的最大整数;
第3步,以1为步长递增改变k的取值,重复第2步bx-1次,完成后,寄存器R1~Ra存储的是信息向量s=(s1,s2,…,sa),寄存器Ra+1~Rt存储的是校验向量p=(p1,p2,…,pc);
第4步,并行输出码字v=(s,p)。
从以上步骤不难看出,整个编码过程共需bx+t个时钟周期,这与传统的u路并行SRAA法完全相同。
图5比较了传统的u路并行SRAA法与本发明的资源消耗。注意,这里将选择扩展器的基本选择单元视为一个二输入与门。从图5可清楚看到,与并行SRAA法相比,本发明的优势是无需存储器,使用了较少的寄存器、异或门和与门,耗费量分别是并行SRAA法的31%、33%和33%。
综上可见,与传统的u路并行SRAA法相比,本发明保持了编码速度,具有控制简单、资源消耗少、功耗小、成本低等优点。
以上所述的实施例,只是本发明较优选的具体实施方式,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。
Claims (3)
1.一种适合于CDR系统采用的四种不同码率QC-LDPC码的并行编码器,CDR是中国数字广播的英文简称,英文全称是China Digital Radio,QC-LDPC码的生成矩阵G是由a×t个b×b阶循环矩阵Gi,j构成的阵列,其中,a、t和b皆为正整数,t=a+c,1≤i≤a,1≤j≤t,四种不同码率η分别是1/4、1/3、1/2、3/4,对于这四种不同码率QC-LDPC码,均有t=36和b=256,四种不同码率对应的参数a分别是9、12、18、27,四种不同码率对应的参数c分别是27、24、18、9,四种a的最大公约数是u=3,a=ux,四种不同码率对应的参数x分别是3、4、6、9,F是由生成矩阵G后c块列中所有循环矩阵的首行构成的a×(b×c)阶块首行矩阵,F可视为由b×c个a维列向量组成的矩阵,F的第u×(ρ-1)+1~u×ρ行构成了u×(b×c)阶子块首行矩阵Fρ,Fρ可视为由b×c个u维列向量构成的矩阵,其中,1≤ρ≤x,生成矩阵G对应码字v=(s,p),G的前a块列对应的是信息向量s,后c块列对应的是校验向量p,以b比特为一段,信息向量s被等分为a段,即s=(s1,s2,…,sa),第i段信息向量si=(si,1,si,2,…,si,b),校验向量p被等分为c段,即p=(p1,p2,…,pc),其特征在于,所述编码器包括以下部件:
寄存器R1~Rt,寄存器R1~Ra用于缓存信息向量s=(s1,s2,…,sa),寄存器Ra+1~Rt用于计算和存储校验向量p=(p1,p2,…,pc);
求和阵列,有7个输出端,它对并行输入的u位信息比特s1,k,s2,k,…,su,k进行组合求和,具体而言,是从中选取m个不同的元素进行模2加,其中,1≤k≤bx,1≤m≤u;
选择扩展器M1~Mc,在求和阵列运算结果的基础上,根据码率η完成向量(s1,k,s2,k,…,su,k)与子块首行矩阵Fρ的并行乘法,其中,1≤ρ≤x,ρ=[(k-1)/b]+1,符号[(k-1)/b]表示不大于(k-1)/b的最大整数;
b位二输入异或门A1~Ac,Al将向量(s1,k,s2,k,…,su,k)与子块首行矩阵Fρ乘积的第l段b比特累加到寄存器Ra+l中,其中,1≤l≤c。
2.如权利要求1所述的并行编码器,其特征在于,所述选择扩展器Ml根据码率η和子块首行矩阵Fρ的下标ρ从求和阵列的输出端中选择一部分并扩展成b个,以构成向量(s1,k,s2,k,…,su,k)与子块首行矩阵Fρ乘积的第l段b比特,选择方式完全取决于码率η对应的子块首行矩阵Fρ的b×c个列向量,其中,1≤l≤c。
3.一种适合于CDR系统采用的四种不同码率QC-LDPC码的并行编码方法,CDR是中国数字广播的英文简称,英文全称是China Digital Radio,QC-LDPC码的生成矩阵G是由a×t个b×b阶循环矩阵Gi,j构成的阵列,其中,a、t和b皆为正整数,t=a+c,1≤i≤a,1≤j≤t,四种不同码率η分别是1/4、1/3、1/2、3/4,对于这四种不同码率QC-LDPC码,均有t=36和b=256,四种不同码率对应的参数a分别是9、12、18、27,四种不同码率对应的参数c分别是27、24、18、9,四种a的最大公约数是u=3,a=ux,四种不同码率对应的参数x分别是3、4、6、9,F是由生成矩阵G后c块列中所有循环矩阵的首行构成的a×(b×c)阶块首行矩阵,F可视为由b×c个a维列向量组成的矩阵,F的第u×(ρ-1)+1~u×ρ行构成了u×(b×c)阶子块首行矩阵Fρ,Fρ可视为由b×c个u维列向量构成的矩阵,其中,1≤ρ≤x,生成矩阵G对应码字v=(s,p),G的前a块列对应的是信息向量s,后c块列对应的是校验向量p,以b比特为一段,信息向量s被等分为a段,即s=(s1,s2,…,sa),第i段信息向量si=(si,1,si,2,…,si,b),校验向量p被等分为c段,即p=(p1,p2,…,pc),其特征在于,所述编码方法包括以下步骤:
第1步,输入信息向量s,保存至寄存器R1~Ra,清零寄存器Ra+1~Rt,并为选择扩展器Ml配置s对应的码率η,其中,1≤l≤c;
第2步,寄存器R1~Ra串行左移1次,为求和阵列并行输入向量(s1,k,s2,k,…,su,k),所有选择扩展器的控制端输入数值ρ=[(k-1)/b]+1,所有选择扩展器分别从求和阵列的输出端中选择一部分并扩展成b个,共同构成向量(s1,k,s2,k,…,su,k)与码率η对应的子块首行矩阵Fρ的乘积,b位二输入异或门Al将乘积的第l段b比特与寄存器Ra+l串行循环左移1次的结果相加,和存回寄存器Ra+l,其中,1≤k≤bx,1≤ρ≤x,1≤l≤c,符号[(k-1)/b]表示不大于(k-1)/b的最大整数;
第3步,以1为步长递增改变k的取值,重复第2步bx-1次,完成后,寄存器R1~Ra存储的是信息向量s=(s1,s2,…,sa),寄存器Ra+1~Rt存储的是校验向量p=(p1,p2,…,pc);
第4步,并行输出码字v=(s,p)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510346193.0A CN104980167A (zh) | 2015-06-20 | 2015-06-20 | 基于求和阵列的cdr中qc-ldpc并行编码器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510346193.0A CN104980167A (zh) | 2015-06-20 | 2015-06-20 | 基于求和阵列的cdr中qc-ldpc并行编码器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104980167A true CN104980167A (zh) | 2015-10-14 |
Family
ID=54276323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510346193.0A Pending CN104980167A (zh) | 2015-06-20 | 2015-06-20 | 基于求和阵列的cdr中qc-ldpc并行编码器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104980167A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108540139A (zh) * | 2018-04-17 | 2018-09-14 | 国家新闻出版广电总局广播科学研究院 | 一种通用的准循环ldpc码编码器的fpga实现方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102857236A (zh) * | 2012-09-27 | 2013-01-02 | 苏州威士达信息科技有限公司 | 基于求和阵列的cmmb中ldpc编码器和编码方法 |
CN102857238A (zh) * | 2012-09-27 | 2013-01-02 | 苏州威士达信息科技有限公司 | 基于求和阵列的深空通信中ldpc编码器和编码方法 |
CN102891687A (zh) * | 2012-09-27 | 2013-01-23 | 苏州威士达信息科技有限公司 | 基于求和阵列的qc-ldpc并行编码器和编码方法 |
US8812930B1 (en) * | 2010-04-27 | 2014-08-19 | Marvell International Ltd. | Parallel encoder for low-density parity-check (LDPC) codes |
EP2879295A1 (en) * | 2012-07-27 | 2015-06-03 | Panasonic Corporation | Transmission method, reception method, transmitter, and receiver |
-
2015
- 2015-06-20 CN CN201510346193.0A patent/CN104980167A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8812930B1 (en) * | 2010-04-27 | 2014-08-19 | Marvell International Ltd. | Parallel encoder for low-density parity-check (LDPC) codes |
EP2879295A1 (en) * | 2012-07-27 | 2015-06-03 | Panasonic Corporation | Transmission method, reception method, transmitter, and receiver |
CN102857236A (zh) * | 2012-09-27 | 2013-01-02 | 苏州威士达信息科技有限公司 | 基于求和阵列的cmmb中ldpc编码器和编码方法 |
CN102857238A (zh) * | 2012-09-27 | 2013-01-02 | 苏州威士达信息科技有限公司 | 基于求和阵列的深空通信中ldpc编码器和编码方法 |
CN102891687A (zh) * | 2012-09-27 | 2013-01-23 | 苏州威士达信息科技有限公司 | 基于求和阵列的qc-ldpc并行编码器和编码方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108540139A (zh) * | 2018-04-17 | 2018-09-14 | 国家新闻出版广电总局广播科学研究院 | 一种通用的准循环ldpc码编码器的fpga实现方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102932009B (zh) | 基于查找表的dtmb中qc-ldpc并行编码方法 | |
CN102857236B (zh) | 基于求和阵列的cmmb中ldpc编码器和编码方法 | |
CN102857324B (zh) | 基于查找表的深空通信中ldpc串行编码器和编码方法 | |
CN102932007B (zh) | 高度并行的深空通信中qc-ldpc编码器和编码方法 | |
CN102857238B (zh) | 基于求和阵列的深空通信中ldpc编码器和编码方法 | |
CN102843152B (zh) | 基于并行滤波的cmmb中ldpc编码器和编码方法 | |
CN102843150B (zh) | 一种低延时的qc-ldpc并行编码器和编码方法 | |
CN102843151A (zh) | 一种低延时的cmmb中ldpc并行编码器和编码方法 | |
CN102882532B (zh) | 循环右移累加基的cmmb中ldpc编码器和编码方法 | |
CN102857239B (zh) | 基于查找表的cmmb中ldpc串行编码器和编码方法 | |
CN102916706B (zh) | 高度并行的cmmb中qc-ldpc编码器和编码方法 | |
CN102843146A (zh) | 一种低延时的深空通信中ldpc并行编码器和编码方法 | |
CN102932008B (zh) | 基于查找表的深空通信中qc-ldpc并行编码方法 | |
CN102868495B (zh) | 基于查找表的近地通信中ldpc串行编码器和编码方法 | |
CN102891687B (zh) | 基于求和阵列的qc-ldpc并行编码器和编码方法 | |
CN102932011A (zh) | 基于查找表的cmmb中qc-ldpc并行编码方法 | |
CN102970046B (zh) | 高度并行的近地通信中qc-ldpc编码器和编码方法 | |
CN102882531B (zh) | 基于求和阵列的dtmb中ldpc编码器和编码方法 | |
CN102938652B (zh) | 基于查找表的qc-ldpc码的并行编码器和编码方法 | |
CN102932013B (zh) | 基于查找表的近地通信中qc-ldpc并行编码方法 | |
CN102857237B (zh) | 一种低延时的近地通信中ldpc并行编码器和编码方法 | |
CN104980167A (zh) | 基于求和阵列的cdr中qc-ldpc并行编码器 | |
CN104980165A (zh) | 一种低延时的wpan中qc-ldpc并行编码器 | |
CN102843148B (zh) | 基于查找表的qc-ldpc串行编码器和编码方法 | |
CN104980171A (zh) | 基于求和阵列的wpan中qc-ldpc并行编码器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20151014 |
|
WD01 | Invention patent application deemed withdrawn after publication |