一种基于扩展汉明码的二维乘积码编码装置及编码方法_2

文档序号:8284306阅读:来源:国知局
l?3*k内,输出的编码信息由信息位寄存器中的数据与行校验寄存器中的数据合并而成的并行η比特数据;在计数范围3*k+l?n+2*k内,输出的编码信息由列校验寄存器和双重校验寄存器中的数据合并而成的并行η比特数据。
[0027]有益效果:本发明的基于扩展汉明码的二维乘积码编码装置和编码方法,采用寄存器组代替RAM存储器进行数据的存储和读取,避免了因RAM进行数据的存储与读取时所带来的编码延时;同时,根据乘积码的码字参数进行寄存器的大小及个数的设定,并结合相应的时序调度算法,实现了行列编码同步进行,缩短了编码延时,并且实现了双重编码和编码输出的同步,进一步缩短了整个编码控制过程的延时,提高了编码电路吞吐率。
【附图说明】
[0028]图1为无线通信系统的框架示意图;
[0029]图2为二维乘积码的编码矩阵示意图;
[0030]图3为本发明的基于扩展汉明码的二维乘积码编码装置图;
[0031]图4为实施例中基于(8,4)扩展汉明码的二维乘积码编码装置图;
[0032]图5 (a)为实施例中基于(8,4)扩展汉明码的乘积码编码信息存储矩阵;图5 (b)为图5(a)中存储矩阵的编码输出时序图。
【具体实施方式】
[0033]下面结合实施例对本发明作更进一步的说明。
[0034]图1中,无线通信系统的发射端对信源的原始信号先进行信道编码,再进行调制映射,并通过数模转换,最后利用天线发送射频信号,接收端的天线接收射频信号,随后进行模数转换和解调映射,最后进行相应地信道解码最终得到发射信号信息,本发明中仅涉及信道编码部分,即图中的乘积码编码,采用扩展汉明码作为子码进行编码。
[0035]对于子码均为同一扩展汉明码的二维乘积码,在编码时,假设其子码码字参数为(n,k,d),其中n = T, m为正整数,k = n-1-m,表示信息比特位数,d = 4表示最小码子距离,为固定值,实际应用中m多大于2。由于扩展汉明码也为线性分组码的一种,因此其编码可以由生成矩阵完成,先将待编码的原始信息进行分组,每组k bit,记为S,则S编码之后的信息N = S*G,G为生成矩阵,N为含有校验位的η比特编码信息。
[0036]子码编码完毕后,由原来的k bit长度变为η比特长度,在组成编码码字时,k bit原始信息放在前面,后面是(n-k)bit的校验信息。因此,对于由子码参数为(n,k,d)的扩展汉明码构成的二维乘积码,其存储矩阵的大小为n*n。
[0037]图2中,矩阵的行代表二维乘积码的行码,列代表列码,矩阵主要包括四大部分:信息矩阵,行校验矩阵,列校验矩阵和双重校验矩阵,分别对应相应的数据信息。
[0038]乘积码在编码时,可以按照先行后列也可以按照先列后行的编码方式。本发明中采用行列信息位同步编码,然后进行校验位编码的方式,可以缩短行列其中之一的编码延时,进而提尚编码效率。
[0039]图3中,基于扩展汉明码的二维乘积码编码装置,包括:信息输入缓存模块、编码控制电路模块、编码信息存储电路模块和子码编码逻辑电路模块,子码编码逻辑电路模块内部主要包括可重构行码编码运算电路和可重构列码编码运算电路。
[0040]在进行编码之前,编码原始?目息首先送入?目息输入缓存模块,经过此电路将编码原始信息转换为编码数据流送入编码信息存储电路。编码原始信息的位宽可能与乘积码的子码参数不一样,所以需要利用缓存将其转换为与乘积码子码参数,即子码信息位长度相一致的位宽数据流。信息输入缓存由一个可变位宽FIFO构成,其大小可以由编码原始信息的总量而定。在所有的编码原始信息存储完毕之后,信息输入缓存按k bit位宽,输出编码数据流至编码信息存储电路模块,同时输出编码使能信号至编码控制电路模块。
[0041]编码控制电路模块内部有一个计数器,在编码使能信号有效后启动,其计数范围为I?(n+2k),(n+2k)个时钟周期循环计数一次,每循环计数一次,代表当前编码和输出完成一次。编码输出完毕后,计数器为O,即可进入下一次的信息输入和编码。
[0042]子码编码逻辑电路模块内部主要包括可重构行码编码运算电路和可重构列码编码运算电路,由于行码列码采用同一扩展汉明码,因此二者电路结构相同,均为同一扩展汉明码的编码运算电路,该电路可完成码长小于η的任意扩展汉明码的编码。
[0043]编码信息存储电路模块包括以下部分:(I)四个选择器:选择器1,选择器2,选择器3,选择器4; (2)k个k位的信息位寄存器,即信息位寄存器组;(3)k个(n-k)位的行校验寄存器,即行校验寄存器组;(4) k个(n-k)位的列校验寄存器,即列校验寄存器组;(5)(n-k)个(n-k)位的双重校验寄存器,即双重校验寄存器组。每个寄存器的输入端都连接相应选择器的输出。编码数据流先送入选择器1,选择器I根据编码控制电路的选择器I控制信号和地址控制信号将编码数据流存入相应信息位寄存器。在所有的信息位数据存储完毕,亦即信息位寄存器组存满之后,开始进行校验位的编码。编码完毕之后,编码控制电路从编码信息存储电路中取出整个码字按行输出编码完整信息。
[0044]整个装置的时序调度流程如下:
[0045]第I步:编码原始信息输入位宽变换FIFO,FIFO存储完毕之后,按照码字参数k比特进行编码数据流的并行输出,至编码信息存储电路模块,同时输出编码使能信号至编码控制电路模块。
[0046]第2步:编码使能信号有效后,编码控制电路启动其内部的计数器,计数范围为I?(n+2*k),进行编码阶段控制,编码信息存储电路模块根据编码控制器的选择器控制信号和地址控制信号进行相应数据的存储,并输出编码之后的信息,其具体的时序调度控制操作如下:
[0047](I)计数值为I?k:依次将编码数据流存入信息位寄存器I至信息位寄存器k。
[0048](2)计数值为k+Ι?2*k:启动子码编码逻辑电路模块,将信息位寄存器I?k数据作为行信息数据流依次送至行码编码运算电路进行编码,行校验数据流依次存储至行校验寄存器I?行校验寄存器k ;同时,将信息位寄存器I?k的最高位(共k比特)、次高位(共k比特)直至最低位(共k比特)的比特数据取出,且信息位寄存器I的比特位为最高位,信息位寄存器k的相同比特位为最低位合并,作为列信息数据流依次送至列码编码运算电路进行编码,列校验数据流依次存储至列校验寄存器I?列校验寄存器k。
[0049](3)计数值为2*k+l?(n+k):在此期间有两个操作同时进行。
[0050]操作一:行码编码运算电路继续工作,列码编码运算电路停止工作。同时,每计数一次将列校验寄存器I?k的最高位(共k比特)、次高位(共k比特)直至最低位(共k比特)作为行信息数据流送入行码编码运算电路,并将行校验信息流依次存入双重校验寄存器I?双重校验寄存器n-k。
[0051]操作二:在此计数范围内,同步进行编码信息的输出,即将信息位寄存器I与行校验寄存器1,前者作为高位后者作为低位,合并为一个η比特的编码数据送至编码控制电路,编码控制电路输编码信息,同时编码输出使能有效。
[0052](4)计数值为(η+k+l)?(n+2*k):此时,编码信息已输出(η-k)组,每组η比特,在此计数范围内,继续讲编码信息存储电路中的编码信息输出。在计数范围为(2*k+l?3*k)内,输出的信息为由信息位寄存器中的数据与行校验寄存器中的内容组合而成,而计数值在(3*k+l?n+2*k)时,输出的则为由列校验寄存器和双重校验寄存器中的数据合并的而成的并行η比特数据。其合成准则是这样的:计数到3*k+l时,将列校验寄存器I?k的最高位即第k位依次取出,以列校验寄存器I的第k位为最高位,列校验寄存器k的第k位为最低位组成k比特信息Cl,Cl作为高位与双重校验寄存器I组成η比特信息,输出至编码控制电路,并由其输出编码信息。计数到3*k+2时,将列校验寄存器I?k的次高位即第k-Ι位依次取出,以列校验寄存器I的第k-Ι位为最高位,列校验寄存器k的第k-Ι位为最低位组成k比特信息C2,C2作为高位与双重校验寄存器2的比特信息组成η比特信息,输出至编码控制电路,并由其输出编码信息。依次类推,直至列校验寄存器组的最低位比特信息与双重校验寄存器组(n-k)的比特信息组成η比特信息输出。
[0053]以上即为编码装置的工作流程,编码运算电路在计数值为(2*k?n+2*k_l)之间时,编码输出使能有效,其余时间为无效。
[0054]由上可以看出,本发明的编码装置完成一整个周期的编码只需要(n+2*k)个时钟周期,在此时间之内即可完成n*n比特的数据的输出。
[0055]本实施例中,以编码信息的子码码长η = 8,信息位长度k = 4为例,图4为行码与列码均为(8,4)扩展
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1