基于查找表的wpan中qc-ldpc串行编码器的制造方法
【技术领域】
[0001] 本发明涉及无线个人通信领域,特别涉及一种WPAN系统中QC-LDPC码编码器的串 行实现方法。
【背景技术】
[0002] 由于在传输信道中存在的各种失真和噪声会对发送信号产生干扰,接收端不可避 免地会出现数字信号产生误码的情况。为了降低误码率,需要采用信道编码技术。
[0003] 低密度奇偶校验(Low-Density Parity-Check, LDPC)码以其逼近Shannon限的优 异性能成为信道编码领域的研宄热点。准循环LDPC(Quasic-LDPC,QC-LDPC)码是一种特殊 的LDPC码,其编码可采用移位寄存器加累加器(Shift-Register-Adder-Accumulator,SR AA)加以实现。
[0004] SRAA法是利用生成矩阵G进行编码。QC-LDPC码的生成矩阵G是由aXt个bXb 阶循环矩阵Gi^d彡i彡a,1彡j彡t)构成的阵列,t = a+c。与信息向量对应的一部分 生成矩阵是单位矩阵,与校验向量对应的其余部分生成矩阵是高密度矩阵。串行SRAA法完 成一次编码需要ab+t个时钟周期,需要(t+c)b个寄存器、cb个二输入与门和cb个二输入 异或门。此外,还需要acb比特ROM存储循环矩阵的首行。
[0005] WPAN是无线个人区域网的英文简称,英文全称是Wireless Personal Area Network。WPAN标准采用了四种不同码率的QC-LDPC码。对于这四种QC-LDPC码,均有t = 32和b = 21。图1给出了不同码率n下的参数a和C0
[0006] WPAN系统中QC-LDPC低速编码的现有解决方案是采用串行SRAA法,四种QC-LDPC 码所需的编码时间分别是368、452、536和620个时钟周期。逻辑资源需要1008个寄存器、 336个二输入与门和336个二输入异或门,这是由码率n = 1/2对应的参数决定的。此外, 四种QC-LDPC码共需16800比特ROM存储循环矩阵的首行。当采用硬件实现时,需要较多 的存储器和寄存器,势必会造成设备成本高,功耗大。
【发明内容】
[0007] 针对WPAN系统多码率QC-LDPC码低速编码的现有实现方案中存在的资源需求量 大缺点,本发明提供了一种基于查找表的串行编码方法,能在保持编码速度不变的前提下, 减少资源需求。
[0008] 如图2所示,WPAN系统中多种QC-LDPC码的串行编码器主要由4部分组成:寄存 器、索引编码器、查找表和b位二输入异或门。整个编码过程分4步完成:第1步,清零寄存 器R a+1~Rt,为索引编码器配置信息向量S对应的码率n ;第2步,输入信息比特ek,寄存器 札~1^串行左移1次缓冲ek,向查找表的块行号控制端输入块行号P = [k/b]+l,查找表 根据索引T选择输出,b位二输入异或HA1将查找表的第1个b位输出端与寄存器R a+1串 行循环左移1次的结果相加,和存回寄存器Ra+1,其中,〇彡k〈aXb,l彡P彡a,l彡1彡c, 符号[k/b]表示不大于k/b的最大整数;第3步,以1为步长递增改变k的取值,重复第2 步aXb - 1次,直到整个信息向量s输入完毕,此时,寄存器&~Ra存储的是信息向量s =(S1, S2,…,sa),寄存器Ra+1~R t存储的是校验向量p=(p p2,…,p。);第4步,并行输 出码字V = (s, p)。
[0009] 本发明提供的QC-LDPC串行编码器兼容多码率,能在保持编码速度不变的前提下 有效减少资源需求,从而达到降低硬件成本和功耗的目的。
[0010] 关于本发明的优点与精神可通过接下来的发明详述及附图得到进一步的了解。
【附图说明】
[0011] 图1给出了不同码率n下的参数a和C ;
[0012] 图2是WPAN标准中兼容四种码率的QC-LDPC码串行编码器整体结构;
[0013] 图3给出了索引编码器的输出T与信息比特、码率n和生成矩阵G的块行号P 之间的关系;
[0014] 图4比较了传统的串行SRAA法与本发明的资源消耗。
【具体实施方式】
[0015] 下面结合附图和具体实施例对本发明作进一步说明,但不作为对本发明的限定。
[0016] QC-LDPC码是一类特殊的LDPC码,它的生成矩阵G和校验矩阵H都是由循环矩阵 构成的阵列,具有分段循环特点,故被称为准循环LDPC码。从行的角度看,循环矩阵的每一 行都是上一行(首行是末行)循环右移一位的结果;从列的角度看,循环矩阵的每一列都是 前一列(首列是末列)循环下移一位的结果。循环矩阵的行向量构成的集合与列向量构成 的集合完全相同,因此,循环矩阵完全可由它的首行或首列来表征。QC-LDPC码的生成矩阵 G是由aXt个bXb阶循环矩阵G iJl彡i彡a,1彡j彡t)构成的阵列:
[0017]
[0018] G (或H)的连续b行和b列分别被称为块行和块列。
[0019] 对于WPAN系统,生成矩阵G对应码字V = (s,p),G的前a块列对应的是信息向量 S= Gtl, ep后c块列对应的是校验向量p。以b比特为一段,信息向量s被等分 为a段,即s = (S1, S2,…,sa);校验向量p被等分为c段,即p = (P1, p2,…,p。)。WPAN标 准采用了四种不同码率的QC-LDPC码,均有t = 32和b = 21,图1给出了不同码率n下的 参数a和C0
[0020] 由式(1)和循环矩阵的特点,图2给出了适用于WPAN系统中四种码率QC-LDPC码 的串行编码器,它主要由寄存器、索引编码器、查找表和b位二输入异或门四种功能模块组 成。寄存器札~R a用于缓存信息向量S= (S1, S2,…,Sa),寄存器Ra+1~Rt用于计算和存 储校验向量P= (P1, P2,…,P。)。索引编码器形成查找表的索引T,以简化查找表的使用。 b位二输入异或门Ai~A。将查找表的第1~c个b位输出值分别累加到寄存器R a+1~R t 中。
[0021] 索引编码器的输出T取决于三个输入:信息比特、码率n和生成矩阵G的块行号 P (1彡P彡a)。如果当前输入的信息比特是0,那么T = 〇;否则,根据码率n和块行号 P 计算 T。当 rI =1/2 时,T = P ;当 q = 5/8 时,T = 16+P ;当 n = 3/4 时,T = 36+P;当n = 7/8时,T = 60+P。码率n有四种,故可用2比特来表示;块行号P的 最大值是28,故可用5比特来表示;T的最大值是88,故可用7比特来表示。图3给出了 索引编码器的输出T与三个控制量之间的关系。
[0022] 查找表根据索引T进行输出。如果T =〇,那么查找表输出全零;如果 I < T < 16,那么查找表输出n = 1/2的生成矩阵第T块行、第a+1~t块列中所有循 环矩阵的首行;如果17< T <36,那么查找表输出n =5/8的生成矩阵第T-16块行、第 a+1~t块列中所有循环矩阵的首行;如果37< T <60,那么查找表输出n =3/4的生 成矩阵第t-36块行、第a+1~t块列中所有循环矩阵的首行;否则,查找表