本发明涉及一种欧式几何低密度奇偶校验(euclideangeometry-ldpc,eg-ldpc)码译码器及方法。
背景技术:
低密度奇偶校验码(lowdensityparitycheckcode,ldpc)作为可以逼近香农限的好码受到了广泛的研究与应用。到目前为止,ldpc已经被确定应用于5g移动宽带业务数据信息的长码块编码方案。ldpc的核心思想是将信息分散到一个稀疏的向量空间以获得良好的译码性能。
ldpc发现之初(gallager,1963)因为运算量太大使得当时的运算设备不足以承载被忽略,直到30年后重新进入人们的视线(tanner,1981)(mackay,1999),发现了其良好的编译码性能。构造随机的稀疏矩阵在译码时可以很好的接近香农限,但因为矩阵的随机性使得硬件实现较为复杂。相对于随机ldpc,结构化ldpc可以减少硬件复杂度。其中欧式几何低密度奇偶校验码(euclideangeometry-ldpc,eg-ldpc)(y.kouands.lin,2001)是使用基于有限域上的欧氏几何的线和点来设计实现ldpc的方法。eg-ldpc的生成矩阵和校验矩阵具有代数结构,构造的码字不会产生4环,降低了实现复杂度,有利于硬件实现。但eg-ldpc的h矩阵行列较重,不适用于置信传播算法的使用。而比特翻转(bit-flipping,bf)算法(j.h.kim,2010)(j.t.zhang,2007)和大数逻辑译码(majority-logicdecoding,mld)算法(a,thangaraj,2002)(t.m.n.ngatched,2011)(r.pedro,2013)(h.q.chen,2015)可以很好的利用eg-ldpc的优势来检错和纠错。
ⅰ类2维eg-ldpc作为大数逻辑可译码,对其码字进行译码时,仅需要对eg-ldpc的h矩阵的子矩阵进行循环移位就可以对码字顺序完成校验,因此其硬件实现简单。但对于码长为
技术实现要素:
本发明提出了一种eg-ldpc译码器,目的在于减少译码器的存储占用资源,增加译码器的译码效率。
本发明是这样实现的:一种eg-ldpc译码器,包括:控制器、移位运算器、数据存储器组、h矩阵存储器、接收存储器、数据运算器以及结果运算器。
所述控制器产生数据存储器组的ram读入读出状态及地址、h矩阵存储器和接收存储器的ram读入读出地址。
所述移位运算器接入原始数据,形成数据循环矩阵输入到数据存储器组;所述h矩阵存储器的输出端连接到数据存储器组的地址位;所述数据存储器组的输出端连接数据运算器的输入端;所述数据运算器的输出端接入到结果运算器的输入端;所述结果运算器的输出端接入到接收存储器的输入端。
所述数据存储器组包含有2个ram;所述h矩阵存储器存储h矩阵分向量中1的位置;所述接收存储器接收最终修正数据。
所述移位运算器包含
一种eg-ldpc译码方法步骤包含如下。
第一步,控制器产生数据存储器组中ram读入读出状态及地址,数据运算器进行
第二步,控制器产生h矩阵存储器ram读出地址,其输出向量接入数据存储器组中ram的地址位读出对应数据。其中eg-ldpc的h矩阵子矩阵分向量应当满足:
每个向量的第
确定h矩阵的子矩阵后,h矩阵存储器的ram仅存储每个分向量为1的位置,即ram中每
h矩阵存储器ram的输出产生数据存储器组ram的读取地址,相应的数据循环矩阵的输出向量可以表示为h矩阵子矩阵的分向量中的1循环移位
第三步,数据运算器对于数据循环矩阵输出向量的异或运算应当接收
第四步,控制器产生接收存储器读入地址,结果运算器使用
相加结果
根据相加结果及h矩阵事先存储的分向量判断出错bit位置,出错位置bit与1异或,未出错bit与0异或,数据修正完成,将修正数据向量输入接收存储器。
本发明的优点在于:存储h矩阵中1的位置代替h矩阵子矩阵。对于eg-ldpc,当
使用数据循环矩阵替代h矩阵分向量的循环减少了存储占用资源。
数据循环矩阵的分向量表示h矩阵的分向量中的相应位置bit循环移位
其中
相较于传统大数逻辑译码使用数据向量及h矩阵分向量进行译码实现nmbit/s的吞吐量,需要
附图说明
为了更加清晰的说明本发明的目的和优异性,本发明下面参照附图结合实施例对本发明作进一步说明。
附图1是本发明一种eg-ldpc译码器的电路原理框图;
附图2是传统一步大数逻辑译码原理图。
具体实施方式
结合附图1说明,本发明一种eg-ldpc译码器的较佳实施例,包括:控制器、移位运算器、数据存储器组、h矩阵存储器、接收存储器、数据运算器以及结果运算器。所述移位运算器接入原始数据,形成
所述控制器产生数据存储器组的ram读入读出状态及地址、h矩阵存储器和接收存储器的ram读入读出地址。
所述数据存储器组包含有2个ram;所述h矩阵存储器将h矩阵分向量中1的位置以地址的形式存储;所述接收存储器接收最终修正数据。
其中数据存储器组的数据循环矩阵如公式6所示,其中
所述移位运算器包含
结合附图2说明传统一步大数逻辑译码算法原理如下所示。
在码字长为
每个向量的第
h矩阵子矩阵如公式7所示。
假设错误码字总的错误数量
结合附图2说明,为了减少译码器存储器占用资源,增加译码效率。
一、本发明将h矩阵分向量中1的位置以地址的形式存储。
其中将存储器对h矩阵分向量的存储转换为分向量中对应的1的地址进行存储,每个分向量占用的资源由
所以当
二、本发明用数据循环矩阵替代h矩阵子矩阵的分向量的循环移位。
其中h矩阵子矩阵的
进一步的,数据循环矩阵与h子矩阵单个分向量的计算可以表示为式9,其可以理解为该分向量循环移位
进一步的,因为数据循环矩阵为对称矩阵,所以每一个数据循环矩阵的分向量可以理解为对h矩阵子矩阵的分向量中的数据bit与数据向量循环移位
一种eg-ldpc译码方法的步骤如下所示。
第一步,控制器产生数据存储器组中ram读入读出状态及地址,数据运算器进行
第二步,控制器产生h矩阵存储器ram读出地址,其输出向量接入数据存储器组中ram的地址位读出对应数据。其中,h矩阵子矩阵分向量应当满足:
每个向量的第
确定h矩阵的子矩阵后,h矩阵存储器的ram仅存储每个分向量为1的位置,即ram中每
h矩阵存储器的ram的输出产生数据存储器组ram的读取地址,相应的数据循环矩阵的输出向量可以表示为h矩阵子矩阵的分向量中的1循环移位
第三步,数据运算器对于数据循环矩阵输出的异或运算应当接收
第四步,控制器产生接收存储器读入地址,结果运算器使用
相加结果
根据相加结果及h矩阵事先存储的分向量判断出错bit位置,出错位置bit与1异或,未出错bit与0异或,数据修正完成,将修正数据向量输入接收存储器。
综上所述,本发明的eg-ldpc译码器使用存储h矩阵中1的位置代替h矩阵子矩阵;使用数据循环矩阵替代h矩阵分向量的循环移位;调用h矩阵存储器中
以上详细描述的实施例仅用于说明本发明的具体实施方式,需要说明,上述描述的内容仅具有说明性而非限制,但是本领域技术人员应当理解,可以在形式和细节上对其作不同的改变,而不偏离发明权利要求书所限定的范围。