一种译码器及其实现译码的方法技术

技术编号:20164353 阅读:95 留言:0更新日期:2019-01-19 00:17
本发明专利技术公开了一种译码器及其实现译码的方法,译码器至少包括:用于缓存来自信道的接收码字的缓存单元;存储单元,用于将压缩后的校验消息存储到校验消息压缩表,用以在两次迭代之间传递迭代信息;计算单元,用于在所述译码器的初始状态,利用缓存的所述接收码字初始化校验消息;以及,将存储单元中的校验消息转换为变量消息,根据得到的变量消息和缓存的接收码字完成迭代译码的计算,在计算得到的总变量消息校验无效时,将计算后的变量消息转换为压缩格式的校验消息;并在计算得到的总变量消息无效时,继续进行迭代译码的计算。通过本发明专利技术,压缩了传统同类设计中对存储器规模的需求,由于内存需求的缩小,从而节省了实现成本。

【技术实现步骤摘要】
一种译码器及其实现译码的方法
本专利技术涉及但不限于编解码技术,尤指一种译码器及其实现译码的方法。
技术介绍
一般通信系统如图1所示,在发射侧,按处理流程可分为以下几个部分:信源处理、比特域处理、符号域处理、发射电路;在接收侧,按照与上述相反的方向依次处理。在信道编码领域,主要存在两种编码方式,一种是卷积码,另一种是线性分组码。长期以来,卷积码凭借其简单的结构和可接受的良好性能得到了广泛应用,而传统的线性分组码,诸如BCH码、里所(RS,Reed-solomon)码等由于在同等硬件条件下性能弱于卷积码而仅在特定领域得到一些应用。其中,BCH码是一类最重要的循环码,能纠正多个随机错误,BCH码是1959年由Bose、Chaudhuri及Hocquenghem各自独立发现的二元线性循环码,人们用她们的名字字头命名为BCH码。RS码又是一种前向纠错的信道编码,对由校正过采样数据所产生的多项式有效。进入20世纪90年代以后,上述两大编码方式都产生了突破性成果,一个是由卷积码衍生出来的Turbo码,另一个是由传统线性分组码衍生出来的低密度奇偶校验码(LDPC,LowDensityParityCheckcode)被重新发现。这两种信道编码的显著优点是:可以获得非常接近香农定理的性能(香农定理是1948年由信息论之父克拉德·香农推导得到的通信性能的理论极限)。因而,这两种编码也被称为现代信道编码,而将卷积码和BCH码等编码归为经典信道编码。对比上述两种编码的特点,Turbo码的译码速度较慢,因而在追求通信速率的协议如802.11,3GPP5G标准中并未采用。而LDPC码的译码速度是可以灵活设计的,从而达到硬件资源和速度的平衡,因而被多种协议采纳为可选方案或必选方案。LDPC的基本原理大致包括:首先设计一个校验矩阵H,设其大小为m*n,要求编码C与校验矩阵H满足公式(1)所示的关系:C*HT=0(1)公式(1)中,(.)T表示转置运算,0表示m*1个0组成的向量。校验矩阵H为表示一种LDPC编码特性的矩阵。n表示信息位通过编码器输出的码字的长度,m表示信息位通过编码器后,在码字中附加的比特位的长度。编码过程是已知信息位S求编码C的过程。由于是系统码,编码C可以看作是由信息位S和校验位P简单拼接而成,如公式(2)所示。由于信息位S是已知的,求编码C的过程其实就是求未知向量P的过程。C=(S|P)(2)公式(2)中,信息位S为LDPC编码器的输入,设其大小为1*k,其中,k表示编码器输入的信息位的长度。校验位P为信息位通过编码器后,在码字中附加的比特位,用于在信道传输后对S进行纠错,设其大小为1*m。从公式(2)可见,码字C为信息位通过编码器输出的一帧比特位。同时将校验矩阵H看成A和B两部分,A的大小是k*m,B的大小是m*m,校验矩阵H和A、B的关系如公式(3)所示:H=(A|B)(3)根据公式(2)和公式(3),公式1可变形为如公式(4)所示:由公式(4)可知,求校验位P需要已知AB-1,其中(.)-1表示求逆计算。一般称AB-1为生成矩阵,用G表示。在已知校验矩阵H的前提下,生成矩阵G就可以算出,从而可以得到校验位P,进而得到编码C,就完成了编码过程。校验矩阵H是整个编译码系统中最重要的参数,校验矩阵H决定了整个编解码系统的抗误码性能,抗误码性能虽然在上述编码过程中并未体现,但在译码过程中将显现。校验矩阵H的m行即为m个线性方程,从信道上接收的码字C将在译码器中被代入这些方程并被逐次的迭代算法所纠正。LDPC从其被视为研究热点到大面积应用,已经历20年时间。相关技术中,校验矩阵构造方法的几何构造法中有一个大类称为准循环LDPC(QC-LDPC,Quasi-CyclicLDPC),由于其可以用较少的硬件代价而进行较长码字的编解码而受到重视,目前,所有在标准中应用的LDPC均属于这一大类。另外,诸如girth消去法、密度进化的方法并不与QC-LDPC互斥,即这几种方法可以共同使用从而构造性能优异的校验矩阵。除校验矩阵外,编译码器的设计也是重要的研究方向。由于译码器对硬件存储资源的消耗大,且在高速应用中对吞吐率非常敏感,成为设计改良的重中之重。
技术实现思路
为了解决上述技术问题,本专利技术提供一种译码器及其实现译码的方法,能够节省对硬件存储资源的消耗,从而节约成本。为了达到本专利技术目的,本专利技术提供了一种译码器,包括:用于缓存来自信道的接收码字的缓存单元、存储单元,及计算单元;其中,存储单元,用于将压缩后的校验消息存储到校验消息压缩表,用以在两次迭代之间传递迭代信息;计算单元,用于在所述译码器的初始状态,利用缓存的所述接收码字初始化校验消息;其中,校验消息包括校验方程的所有变量消息的最小值、次小值、最小值出现的序号,以及每变量消息的符号;以及,将所述校验消息转换为变量消息,根据得到的变量消息和缓存的接收码字完成迭代译码的计算,将计算后的变量消息转换为压缩格式的校验消息;并在计算得到的总变量消息无效时,继续进行迭代译码的计算。可选地,还包括:判决单元、校验单元;其中,判决单元,用于通过硬判决得到最终的译码结果比特流并输出;校验单元,用于判断所述判决单元的输出是否有效,如果校验无效,向所述计算单元输出表示继续进行迭代译码的计算的第一控制信号;相应地,所述计算单元中计算得到的总变量消息无效具体包括:在接收到所述第一控制信号,继续进行迭代译码的计算。可选地,所述校验单元还用于:在判断所述判决单元的输出无效时,将迭代计算次数加一,如果迭代计算次数达到预先设置的迭代次数上限阈值或校验通过,向所述计算单元输出表示停止迭代译码的计算的第二控制信号。本专利技术还提供了一种实现译码的方法,包括:缓存来自信道的接收码字,并初始化校验消息;在译码器的初始状态,利用缓存的所述接收码字初始化校验消息;其中,校验消息包括校验方程的所有变量消息的最小值、次小值、最小值出现的序号,以及每变量消息的符号;将所述校验消息压缩后存储到校验消息压缩表;将校验消息转换为变量消息,根据得到的变量消息和缓存的接收码字完成迭代译码的计算;对计算得到的总变量消息进行判决,将计算后的变量消息转换为压缩的校验消息并存储到校验消息压缩表;并在计算得到的总变量消息无效时,继续进行迭代译码的计算。可选地,在所述在校验判决结果无效时,所述方法还包括:将迭代计算次数加一,继续进行所述迭代译码的计算,直至迭代计算次数达到预先设置的迭代次数上限阈值或计算得到的总变量消息有效。可选地,所述根据得到的变量消息和缓存的接收码字完成迭代译码的计算包括:对于变量x,使用所述校验消息压缩表恢复变量x在第y个校验方程上的校验消息;其中,变量x是总变量的第x个,且属于第y个校验方程的第v个相关变量;将变量x在所有校验方程中的校验消息全部恢复;计算变量x对应的总变量消息和每个校验方程对应的迭代变量消息;将总变量消息用于判决跳出依据,将迭代变量消息用于更新所述校验消息压缩表;针对下一个变量(x+1)执行上述步骤,直至完成所有变量的更新。可选地,所述使用所述校验消息压缩表恢复变量x在第y个校验方程上的校验消息的值为:校验消息的符号为:正数和零用0表示,负数用1表示;其中,XOR()表示对集合中的所有元素求异或;其中本文档来自技高网
...

【技术保护点】
1.一种译码器,其特征在于,包括:用于缓存来自信道的接收码字的缓存单元、存储单元,及计算单元;其中,存储单元,用于将压缩后的校验消息存储到校验消息压缩表,用以在两次迭代之间传递迭代信息;计算单元,用于在所述译码器的初始状态,利用缓存的所述接收码字初始化校验消息;其中,校验消息包括校验方程的所有变量消息的最小值、次小值、最小值出现的序号,以及每变量消息的符号;以及,将所述校验消息转换为变量消息,根据得到的变量消息和缓存的接收码字完成迭代译码的计算,将计算后的变量消息转换为压缩格式的校验消息;并在计算得到的总变量消息无效时,继续进行迭代译码的计算。

【技术特征摘要】
1.一种译码器,其特征在于,包括:用于缓存来自信道的接收码字的缓存单元、存储单元,及计算单元;其中,存储单元,用于将压缩后的校验消息存储到校验消息压缩表,用以在两次迭代之间传递迭代信息;计算单元,用于在所述译码器的初始状态,利用缓存的所述接收码字初始化校验消息;其中,校验消息包括校验方程的所有变量消息的最小值、次小值、最小值出现的序号,以及每变量消息的符号;以及,将所述校验消息转换为变量消息,根据得到的变量消息和缓存的接收码字完成迭代译码的计算,将计算后的变量消息转换为压缩格式的校验消息;并在计算得到的总变量消息无效时,继续进行迭代译码的计算。2.根据权利要求1所述的译码器,其特征在于,还包括:判决单元、校验单元;其中,判决单元,用于通过硬判决得到最终的译码结果比特流并输出;校验单元,用于判断所述判决单元的输出是否有效,如果校验无效,向所述计算单元输出表示继续进行迭代译码的计算的第一控制信号;相应地,所述计算单元中计算得到的总变量消息无效具体包括:在接收到所述第一控制信号,继续进行迭代译码的计算。3.根据权利要求2所述的译码器,其特征在于,所述校验单元还用于:在判断所述判决单元的输出无效时,将迭代计算次数加一,如果迭代计算次数达到预先设置的迭代次数上限阈值或校验通过,向所述计算单元输出表示停止迭代译码的计算的第二控制信号。4.一种实现译码的方法,其特征在于,包括:缓存来自信道的接收码字,并初始化校验消息;在译码器的初始状态,利用缓存的所述接收码字初始化校验消息;其中,校验消息包括校验方程的所有变量消息的最小值、次小值、最小值出现的序号,以及每变量消息的符号;将所述校验消息压缩后存储到校验消息压缩表;将校验消息转换为变量消息,根据得到的变量消息和缓存的接收码字完成迭代译码的计算;对计算得到的总变量消息进行判决,将计算后的变量消息转换为压缩的校验消息并存储到校验消息压缩表;并在计算得到的总变量消息无效时,继续进行迭代译码的计算。5.根据权利要求4所述的方法,其特征在于,在所述在校验判决结果无效时,所述方法还包括:将迭代计算次数加一,...

【专利技术属性】
技术研发人员:白栎旸程晨孙远航李彧
申请(专利权)人:深圳市中兴微电子技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1