CN101640543B - 一种ldpc码的编码装置及方法 - Google Patents
一种ldpc码的编码装置及方法 Download PDFInfo
- Publication number
- CN101640543B CN101640543B CN 200810142227 CN200810142227A CN101640543B CN 101640543 B CN101640543 B CN 101640543B CN 200810142227 CN200810142227 CN 200810142227 CN 200810142227 A CN200810142227 A CN 200810142227A CN 101640543 B CN101640543 B CN 101640543B
- Authority
- CN
- China
- Prior art keywords
- matrix
- calculation unit
- input data
- cyclic shift
- toeplitz
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明适用于编码技术领域,提供了一种LDPC码的编码装置及方法,所述编码装置包括:存储单元,用于存储编码信源信息;校验编码计算单元,用于根据具有Toeplitz结构的校验矩阵对寄存器的编码信源信息进行计算,其中,该校验编码单元具有Toeplitz结构的校验矩阵;异或单元,用于将计算后的结果进行异或后输出。本发明通过将校验矩阵进行分块,其中,分块后的校验矩阵具有Toeplitz结构,根据分块后的校验矩阵对接收到的信源信息进行编码,在本发明实施例中,矩阵的逆的对角线值完全一样,方便采用流水线方式工作,具有良好的规律性,稀疏的准循环矩阵结构给编码带来了极大的方便,节省了硬件资源。
Description
技术领域
本发明属于编码技术领域,尤其涉及一种LDPC码的编码装置及方法。
背景技术
低密度奇偶校验码(Low Density Parity Check Code,LDPC)是由RobertG.Gallager博士于1963年提出的一类具有稀疏校验矩阵的线性分组码,不仅有逼近Shannon限的良好性能,而且译码复杂度较低,结构灵活,是近年信道编码领域的研究热点,目前已广泛应用于深空通信、光纤通信、卫星数字视频和音频广播等领域。LDPC码已成为第四代通信系统(4G)强有力的竞争者,而基于LDPC码的编码方案已经被下一代卫星数字视频广播标准数字视频广播(Digital Video Broadcasting,DVB)-S2采纳。
LDPC码是通过校验矩阵定义的一类线性码,为使译码可行,在码长较长时需要校验矩阵满足“稀疏性”,即校验矩阵中1的密度比较低,也就是要求校验矩阵中1的个数远小于0的个数,并且码长越长,密度就要越低。
在构造校验矩阵时,有些是利用随机的计算机搜索方法生成奇偶校验矩阵,有些则是利用代数学和组合理论构造LDPC码,使之具有规律的循环或准循环结构(QC-LDPC),如DTM标准中的校验矩阵就具有准循环结构。
作为线性分组码的一类,LDPC码的生成矩阵是与校验矩阵是正交的,一般的生成矩阵是较复杂,而且是非常不稀疏的。
LDPC码包括生成矩阵和校验矩阵,一般的算法是将待编码的输入信息和生成矩阵相乘得到信息本身和校验位。用G表示生成矩阵,m表示输入信息,p表示校验位,则DTM标准中的LDPC码的生成矩阵Gqc的结构式:
其中:I是b×b阶的单位矩阵,0是b×b循环矩阵。Gij表示长度为127位的循环矩阵。编码器输出的码字信息位在后,校验位在前。
三种不同码率的LDPC码的结构分别为:
1)、码率为0.4的LDPC(7493,3048)码,式子中的参数为k=24,c=35,b=127;
2)、码率为0.6的LDPC(7493,4572)码,式子中的参数为k=36,c=23,b=127;
3)、码率为0.8的LDPC(7493,6096)码,式子中的参数为k=48,c=11,b=127;
具体实施步骤如下:
A、接收待编码k块的信息m=(m0,m1,…,mk-1),每块长度为127位。
B、整数i从0到c-1,整数j从0到k-1
调用127位循环移位模块计算tempj=mj*Gij;
C、完成输出校验位p=(p0,p1,…pc-1)和码字C=(p0,p1,…pc-1,m0,m1,…,mk-1)。
由于LDPC码的生成矩阵是非常不稀疏的,每次计算需要调用127位的循环移位模块高达六十多次。这样,每计算一次码字C需要调用127位循环移位模块k×c×63次,消耗大量的逻辑单元,不符合数字电视信道编码的高速率实时要求标准。
因为LDPC码的校验矩阵具有很大的稀疏性,而生成矩阵和校验矩阵存在正交的关系,即HG′=0,所以生成矩阵可以由校验矩阵得到,利用校验矩阵对信息编码比直接用生成矩阵对信息编码少用了许多硬件资源,减少了计算复杂度。
如DTM标准中LDPC码校验矩阵结构为:
其中是b×b(b=127)的矩阵,三种不同码率的参数c见LDPC码的码率结构,t=k+c=59。
现有技术中,T.Richardson和R.Urbanke提出了RU算法,该算法交换校验矩阵H行列的位置,保持矩阵的稀疏性,利用交换行列后的校验矩阵分两部分进行编码,有效降低了编码的复杂度。经过行列交换的校验矩阵H’具有近似下三角形式,如图1所示。
设信息序列为m,码字为C,根据现有技术可将码字C分为三部分:C=(m,p1,p2),其中m是信息比特序列,长度为k;p1和p2是校验比特序列,长度分别为g和n-k-g;校验比特序列p1、p2分别用两个编码器模块生成得到。
以上RU算法可以利用校验矩阵计算码字,但是目前得到近似下三角校验矩阵H’的方法还不能令人满意。T.J.Rrichdson等人通过GREED算法重排校验矩阵过于复杂,当码长较长时这样的预处理需要消耗很长时间。而且转换后的矩阵结构混乱,不易于硬件的实现,所以这种编码方法也不是一种理想的实现方式。
发明内容
本发明实施例的目的在于提供一种LDPC码的编码装置,旨在解决现有技术中LDPC编码器编码过程复杂,当码长较长时编码时间过长,消耗硬件资源的问题。
本发明实施例是这样实现的,一种LDPC码的编码装置,所述装置包括:
存储单元,用于存储编码信源信息;
校验编码计算单元,用于根据具有Toeplitz结构的校验矩阵对编码信源信息进行计算,其中,该校验编码单元具有Toeplitz结构的校验矩阵;
异或单元,用于将计算后的结果进行异或后输出;
所述校验编码计算单元具体包括:
Toeplitz矩阵计算单元,用于根据具有Toeolitz结构的矩阵对编码信源信息进行计算;
MA矩阵计算单元,用于根据MA矩阵对相应的信息进行计算;
B矩阵计算单元,用于根据B矩阵对相应的信息进行计算;
C矩阵计算单元,用于根据C矩阵对相应的信息进行计算;
其中,所述Toeplitz矩阵为A矩阵的逆、所述矩阵MA=D-CA-1B,所述A矩阵、B矩阵、C矩阵和D矩阵为将校验矩阵M进行分块后的矩阵;
所述MA矩阵计算单元的步骤包括:
M1、记输入数据为[in0 in1…inw-1],首先经过MA矩阵矩阵的逆的计算,得到MA矩阵计算单元参数[m0 m1 m2 m3];
M2、将输入数据in0循环移位m0与输入数据in1循环移位m1异或后,输出R0;
M3、将输入数据in0循环移位m2与输入数据in1循环移位m3异或后,输出R1;
所述B矩阵计算单元的步骤包括:
B1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H获取B矩阵计算单元参数[b0 b1 b2];
B2、将输入数据in0循环移位b0与输入数据in1循环移位b1异或后,输出R0;
B3、将输入数据in1循环移位b2后,输出R1;
B4、将R2,R3,...,Rw-1置0后输出;
所述C矩阵计算单元的步骤包括:
C1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H获取C矩阵计算单元参数[c0 c1 c2];
C2、将输入数据inw-2循环移位c0与输入数据inw-1循环移位c1异或后,输出R0;
C3、将输入数据inw-1循环移位c2后,输出R1;
所述Toeplitz矩阵计算单元的步骤包括:
T1、根据Toeplitz矩阵获取Toeplitz矩阵计算单元参数[t0 t1…tw-1];
T2、整数i从0到w-1,输入数据li,直到第i个位置停止,对数据li进行循环移位t0,t1,…,ti,结果与寄存器R0,R1,…,Ri的数据异或后,再放回R0,R1,…,Ri;
T3、将T2步骤一直进行下去,每进行一次i增加1,结果从R0输出一次,当i等于w的时,跳出循环,结束Toeplitz矩阵计算单元的计算步骤。
本发明实施例的另一目的在于提供一种LDPC码的编码方法,所述方法包括:
存储接收到的编码信源信息;
根据具有Toeplitz结构的矩阵对编码信源信息进行计算;
将计算后的结果进行异或后输出;
根据具有Toeplitz结构的校验矩阵对编码信源信息进行计算时,该校验矩阵包括Toeplitz矩阵计算单元,MA矩阵计算单元,B矩阵计算单元,C矩阵计算单元,其中,所述Toeplitz矩阵为A矩阵的逆、所述矩阵MA=D-CA-1B,所述A矩阵、B矩阵、C矩阵和D矩阵为将校验矩阵M进行分块后的矩阵;
所述MA矩阵计算单元的步骤包括:
M1、记输入数据为[in0 in1…inw-1],首先经过MA矩阵矩阵的逆的计算,得到MA矩阵计算单元参数[m0 m1 m2 m3];
M2、将输入数据in0循环移位m0与输入数据in1循环移位m1异或后,输出R0;
M3、将输入数据in0循环移位m2与输入数据in1循环移位m3异或后,输出R1;
所述B矩阵计算单元的步骤包括:
B1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H获取B矩阵计算单元参数[b0 b1 b2];
B2、将输入数据in0循环移位b0与输入数据in1循环移位b1异或后,输出R0;
B3、将输入数据in1循环移位b2后,输出R1;
B4、将R2,R3,...,Rw-1置0后输出;
所述C矩阵计算单元的步骤包括:
C1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H获取C矩阵计算单元参数[c0 c1 c2];
C2、将输入数据inw-2循环移位c0与输入数据inw-1循环移位c1异或后,输出R0;
C3、将输入数据inw-1循环移位c2后,输出R1;
所述Toeplitz矩阵计算单元的步骤包括:
T1、根据Toeplitz矩阵获取Toeplitz矩阵计算单元参数[t0 t1…tw-1];
T2、整数i从0到w-1,输入数据li,直到第i个位置停止,对数据li进行循环移位t0,t1,…,ti,结果与寄存器R0,R1,…,Ri的数据异或后,再放回R0,R1,…,Ri;
T3、将T2步骤一直进行下去,每进行一次i增加1,结果从R0输出一次,当i等于w的时,跳出循环,结束Toeplitz矩阵计算单元的计算步骤。
本发明实施例通过将校验矩阵进行分块,其中,分块后的校验矩阵具有Toeplitz结构,根据分块后的校验矩阵对接收到的信息进行编码,在本发明实施例中,矩阵的逆的对角线值完全一样,方便采用流水线方式工作,具有良好的规律性,稀疏的准循环矩阵结构给编码带来了极大的方便,节省了硬件资源。
附图说明
图1是现有技术提供的RU算法中经过行列交换的校验矩阵的结构图;
图2是本发明实施例提供的LDPC码的编码装置的结构图;
图3是本发明实施例提供的LDPC码的编码装置中校验编码计算单元执行计算时的结构图;
图4是本发明实施例提供的校验编码计算单元中MA矩阵计算单元的结构图;
图5是本发明实施例提供的校验编码计算单元中B矩阵计算单元的结构图;
图6是本发明实施例提供的校验编码计算单元中C矩阵计算单元的结构图;
图7是本发明实施例提供的校验编码计算单元中Toeplitz矩阵计算单元的结构图;
图8是本发明实施例提供的LDPC码的编码方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例通过将校验矩阵进行分块,其中,分块后的校验矩阵具有Toeplitz结构,根据分块后的校验矩阵对接收到的信息进行编码。
图2示出了本发明实施例提供的LDPC码的编码装置的结构。其中,本发明实施例的存储单元以寄存器为例。
编码信源信息接收单元接收编码信源信息的输入。
编码信源信息处理单元根据H2稀疏矩阵的系数将接收到的编码信源信息按块循环移位得到二进制比特序列分别放到存储单元中,此处以存储单元为寄存器L1和寄存器L2为例。
其中,对H2的解释为:
设LDPC编码器的校验矩阵为H,生成矩阵为G,校验位p,设H=[H1 H2],(p,m)=m*G,
校验编码计算单元根据具有Toeplitz结构的校验矩阵同时对寄存器L1和L2中的数据进行处理。其中,该校验编码单元具有Toeplitz结构的校验矩阵。
其中,在计算H1 -1时,利用矩阵的分块方法,将矩阵分成具有良好性质的带状Toeplitz结构的可逆矩阵,而且保证了矩阵的准循环特性,这样的矩阵逆表达式结构清晰,具有良好的规律性,可以采取流水线并行处理。
在具体实施过程中,具有Toeplitz结构的校验矩阵是通过以下方式获取的:
首先保持准循环结构,将DTM标准中LDPC码校验矩阵Hqc进行按块行变换,一般只需移动一行或一列,使得移动后的矩阵M左上角具有带状对角线值相同的结构。之后,将移动后的M矩阵分成A,B,C,D四块,优选的,使得A块具有带状Toeplitz结构方阵,设A块宽度为127位。
设LDPC编码器的校验矩阵为H,生成矩阵为G,校验位p,设H=[H1 H2],若 为H1矩阵移位分块后的矩阵,由舒尔分解式子可得:(M/A)=D-CA-1B, 设H2m=[L1 L2]=[l0 l1…lc-1 lc], 则有p=H1 -1H2m=M-1*L=[iAL1+iBL2,iCL1+iDL2]=[T1+T5+T8,T3+T6]=[p1,p2]。
其中iA,iB,iC,iD分别为M求逆后对应的矩阵块,求逆方法由舒尔分解得到。分解后的矩阵块保持准循环性质和H矩阵的稀疏性,便于硬件实现,成倍地减少消耗逻辑单元。
在具体实施过程中,该校验编码计算单元包括Toeplitz矩阵计算单元,MA矩阵计算单元,B矩阵计算单元以及C矩阵计算单元。
其中,所述Toeplitz矩阵为A矩阵的逆,A矩阵、B矩阵、C矩阵和D矩阵为将校验矩阵M进行分块后的矩阵,MA为(M/A)矩阵的逆,矩阵MA=D-CA-1B,下面结合图3对校验编码计算单元的工作过程作详细描述:
1)Toeplitz矩阵计算单元计算寄存器L1的数据,得到的二进制比特序列放到寄存器T1中;
2)C矩阵计算单元计算寄存器T1的数据,得到的二进制比特序列放到寄存器T2中;
3)MA矩阵计算单元计算寄存器T2的数据,得到的二进制比特序列放到寄存器T3中;
4)B矩阵计算单元计算寄存器T3的数据,得到的二进制比特序列放到寄存器T4中;
5)Toeplitz矩阵计算单元计算寄存器T4的数据,得到的二进制比特序列放到寄存器T5中;
6)MA矩阵计算单元计算寄存器L2的数据,得到的二进制比特序列放到寄存器T6中;
7)B矩阵计算单元计算寄存器T6的数据,得到的二进制比特序列放到寄存器T7中;
8)Toeplitz矩阵计算单元计算寄存器T7的数据,得到的二进制比特序列放到寄存器T8中;
在将经过以上的计算处理后,异或单元将计算后的结果进行异或后输出,具体描述为:
将寄存器T1中的数据与寄存器T5中的数据进行异或,并结果与寄存器T8中的数据异或,输出二进制比特序列p1;
将寄存器T3中的数据与寄存器T6中的数据进行异或,输出二进制比特序列p2;
最后,异或单元将p1和p2并位处理,输出码字C,编码结束。
MA矩阵计算单元的框架图如图4所示,包括如下3个步骤:
M1、记输入数据为[in0 in1…inw-1],首先经过预处理(M/A)矩阵的逆,得到M矩阵计算单元参数[m0 m1 m2 m3]。
M2、将输入数据in0循环移位m0与输入数据in1循环移位m1异或后,输出R0。
M3、将输入数据in0循环移位m2与输入数据in1循环移位m3异或后,输出R1。
B矩阵计算单元的框架图如图5所示,包括如下4个步骤:
B1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H得到B矩阵计算单元参数[b0 b1 b2]。
B2、将输入数据in0循环移位b0与输入数据in1循环移位b1异或后,输出R0。
B3、将输入数据in1循环移位b2后,输出R1。
B4、将R2,R3,...,Rw-1置0后输出。
C矩阵计算单元的框架图如图6所示,包括如下3个步骤:
C1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H得到C矩阵计算单元参数[c0 c1 c2]。
C2、将输入数据inw-2循环移位c0与输入数据inw-1循环移位c1异或后,输出R0。
C3、将输入数据inw-1循环移位c2后,输出R1。
Toeplitz矩阵计算单元采用流水线方式执行,其框架图如图7所示,包括如下3个步骤:
T1、根据Toeplitz矩阵求逆方法高斯消去法得出求逆后矩阵块系数,记为[t0 t1…tw-1];
T2、整数i从0到w-1,输入数据li,直到第i个位置停止,对数据li进行循环移位t0,t1,…,ti,结果与寄存器R0,R1,…,Ri的数据异或后,再放回R0,R1,…,Ri。
T3、一直下去,每进行一次i增加1,结果从R0输出一次。如果i等于w的时候,跳出循环,结束运算。
在Toeplitz矩阵计算单元,MA矩阵计算单元,B矩阵计算单元以及C矩阵计算单元的计算过程中,均保持为127比特位。由于H矩阵的稀疏性,只需对127比特块平均循环移位4次就可得到Toeplitz矩阵的逆,这样的分块矩阵求逆表达式虽然复杂,但由于矩阵的稀疏性,一次编码过程的计算量只是直接用生成矩阵运算的二十分之一到四十分之一。
譬如,当码率为0.4时,Toeplitz矩阵计算单元平均需要对127比特块循环移位(1+32)×32/2×4=2112次,B矩阵计算单元平均需要对127比特块循环移位7次,C矩阵计算单元平均需要对127比特块循环移位3次,MA矩阵计算单元平均需要对127比特块循环移位2×2×63=252次,稀疏的H2矩阵相乘模块275-3×35=170次,一共需要对127比特块循环移位2112+7+3+252+170=2544次。
当码率为0.6时,Toeplitz矩阵计算单元平均需要对127比特块循环移位(1+21)×21/2×4=924次,B矩阵计算单元平均需要对127比特块循环移位3次,C矩阵计算单元平均需要对127比特块循环移位3次,MA矩阵计算单元平均需要对127比特块循环移位2×2×63=252次,稀疏的H2矩阵相乘模块296-3×23=227次,一共需要对127比特块循环移位924+3+3+252+227=1509次。
当码率为0.8时,Toeplitz矩阵计算单元平均需要对127比特块循环移位(1+9)×9/2×4=180次,B矩阵计算单元平均需要对127比特块循环移位3次,C矩阵计算单元平均需要对127比特块循环移位3次,MA矩阵计算单元平均需要对127比特块循环移位2×2×63=252次,稀疏的H2矩阵相乘模块294-3×11=261次,一共需要对127比特块循环移位180+3+3+252+261=699次。
与现有技术对比,每计算一次码字C需要调用127位循环移位模块k×c×60次,码率为0.4时需要对127比特块循环移位24×35×63=52920次;码率为0.6时需要对127比特块循环移位36×23×63=52164次;码率为0.8时需要对127比特块循环移位48×11×63=33264次。显然,本发明实施例明显的校验的次数,极大地缩短了校验时间,无形中节省了硬件资源。
本发明实施例还提供一种LDPC码的编码方法,请参阅图8。
在步骤S101中,接收编码信源信息的输入。
在步骤S102中,将接收到的编码信源信息根据稀疏矩阵进行处理。
在步骤S103中,存储编码信源信息。
在步骤S104中,根据具有Toeplitz结构的校验矩阵对编码信源信息进行计算,其中,该校验编码单元具有Toeplitz结构的校验矩阵。
其中,校验编码计算单元具体包括:
Toeplitz矩阵计算单元,用于根据具有Toeplitz结构的矩阵对编码信源信息进行计算;
MA矩阵计算单元,用于根据MA矩阵对相应的信息进行计算;
B矩阵计算单元,用于根据B矩阵对相应的信息进行计算;
C矩阵计算单元,用于根据C矩阵对相应的信息进行计算;
具体的各个单元的的处理过程在前文已述,此处不再赘述。
在步骤S105中,将计算后的结果进行异或后输出。
本发明实施例通过将校验矩阵进行分块,其中,分块后的校验矩阵具有Toeplitz结构,根据分块后的校验矩阵对接收到的信息进行编码,在本发明实施例中,矩阵的逆的对角线值完全一样,方便采用流水线方式工作,具有良好的规律性,稀疏的准循环矩阵结构给编码带来了极大的方便,显著节省了硬件资源。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种LDPC码的编码装置,其特征在于,所述装置包括:
存储单元,用于存储编码信源信息;
校验编码计算单元,用于根据具有Toeplitz结构的校验矩阵对编码信源信息进行计算,其中,该校验编码单元具有Toeplitz结构的校验矩阵;
异或单元,用于将计算后的结果进行异或后输出;
所述校验编码计算单元具体包括:
Toeplitz矩阵计算单元,用于根据具有Toeplitz结构的矩阵对编码信源信息进行计算;
MA矩阵计算单元,用于根据MA矩阵对相应的信息进行计算;
B矩阵计算单元,用于根据B矩阵对相应的信息进行计算;
C矩阵计算单元,用于根据C矩阵对相应的信息进行计算;
其中,所述Toeplitz矩阵为A矩阵的逆、所述矩阵MA=D-CA-1B,所述A矩阵、B矩阵、C矩阵和D矩阵为将校验矩阵M进行分块后的矩阵;
所述MA矩阵计算单元的步骤包括:
M1、记输入数据为[in0 in1…imw-1],首先经过MA矩阵矩阵的逆的计算,得到MA矩阵计算单元参数[m0 m1 m2 m3];
M2、将输入数据in0循环移位m0与输入数据in1循环移位m1异或后,输出R0;
M3、将输入数据in0循环移位m2与输入数据in1循环移位m3异或后,输出R1;
所述B矩阵计算单元的步骤包括:
B1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H获取B矩阵计算单元参数[b0 b1 b2];
B2、将输入数据in0循环移位b0与输入数据in1循环移位b1异或后,输出R0;
B3、将输入数据in1循环移位b2后,输出R1;
B4、将R2,R3,…,Rw-1置0后输出;
所述C矩阵计算单元的步骤包括:
C1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H获取C矩阵计算单元参数[c0 c1 c2];
C2、将输入数据inw-2循环移位c0与输入数据inw-1循环移位c1异或后,输出R0;
C3、将输入数据inw-1循环移位c2后,输出R1;
所述Toeplitz矩阵计算单元的步骤包括:
T1、根据Toeplitz矩阵获取Toeplitz矩阵计算单元参数[t0 t1…tw-1];
T2、整数i从0到w-1,输入数据li,直到第i个位置停止,对数据li进行循环移位t0,t1,…,ti,结果与寄存器R0,R1,…,Ri的数据异或后,再放回R0,R1,…,Ri;
T3、将T2步骤一直进行下去,每进行一次i增加1,结果从R0输出一次,当i等于w的时,跳出循环,结束Toeplitz矩阵计算单元的计算步骤。
2.如权利要求1所述的LDPC码的编码装置,其特征在于,所述编码装置还包括:
编码信源信息接收单元,用于接收编码信源信息的输入;
编码信源信息处理单元,用于将接收到的编码信源信息按块循环移位得到二进制比特序列后存储至存储单元。
3.一种LDPC码的编码方法,其特征在于,所述方法包括:
存储编码信源信息;
根据具有Toeplitz结构的校验矩阵对编码信源信息进行计算;
将计算后的结果进行异或后输出;
根据具有Toeplitz结构的校验矩阵对编码信源信息进行计算时,该校验矩阵包括Toeplitz矩阵计算单元,MA矩阵计算单元,B矩阵计算单元,C矩阵计算单元,其中,所述Toeplitz矩阵为A矩阵的逆、所述矩阵MA=D-CA-1B,所述A矩阵、B矩阵、C矩阵和D矩阵为将校验矩阵M进行分块后的矩阵;
所述MA矩阵计算单元的步骤包括:
M1、记输入数据为[in0 in1…inw-1],首先经过MA矩阵矩阵的逆的计算,得到MA矩阵计算单元参数[m0 m1 m2 m3];
M2、将输入数据in0循环移位m0与输入数据in1循环移位m1异或后,输出R0;
M3、将输入数据in0循环移位m2与输入数据in1循环移位m3异或后,输出R1;
所述B矩阵计算单元的步骤包括:
B1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H获取B矩阵计算单元参数[b0 b1 b2];
B2、将输入数据in0循环移位b0与输入数据in1循环移位b1异或后,输出R0;
B3、将输入数据in1循环移位b2后,输出R1;
B4、将R2,R3,...,Rw-1置0后输出;
所述C矩阵计算单元的步骤包括:
C1、记输入数据为[in0 in1…inw-1],根据稀疏的校验矩阵H获取C矩阵计算单元参数[c0 c1 c2];
C2、将输入数据inw-2循环移位c0与输入数据inw-1循环移位c1异或后,输出R0;
C3、将输入数据inw-1循环移位c2后,输出R1;
所述Toeplitz矩阵计算单元的步骤包括:
T1、根据Toeplitz矩阵获取Toeplitz矩阵计算单元参数[t0 t1…tw-1];
T2、整数i从0到w-1,输入数据li,直到第i个位置停止,对数据li进行循环移位t0,t1,…,ti,结果与寄存器R0,R1,…,Ri的数据异或后,再放回R0,R1,…,Ri;
T3、将T2步骤一直进行下去,每进行一次i增加1,结果从R0输出一次,当i等于w的时,跳出循环,结束Toeplitz矩阵计算单元的计算步骤。
4.如权利要求3所述的LDPC码的编码方法,其特征在于,在存储编码信源信息之前,所述方法还包括:
接收编码信源信息的输入;
将接收到的编码信源信息按块循环移位得到二进制比特序列后存储。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810142227 CN101640543B (zh) | 2008-07-31 | 2008-07-31 | 一种ldpc码的编码装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810142227 CN101640543B (zh) | 2008-07-31 | 2008-07-31 | 一种ldpc码的编码装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101640543A CN101640543A (zh) | 2010-02-03 |
CN101640543B true CN101640543B (zh) | 2013-06-05 |
Family
ID=41615365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200810142227 Expired - Fee Related CN101640543B (zh) | 2008-07-31 | 2008-07-31 | 一种ldpc码的编码装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101640543B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102265266B (zh) | 2011-06-01 | 2014-02-19 | 华为技术有限公司 | 一种数据地址编码的方法及装置 |
CN102932004A (zh) * | 2012-11-08 | 2013-02-13 | 苏州威士达信息科技有限公司 | 基于纵向对角存储的qc-ldpc校验矩阵的产生方法 |
CN103067136B (zh) * | 2013-01-11 | 2015-09-23 | 深圳清华大学研究院 | 协同编码的通信方法及系统 |
CN105846830B (zh) * | 2015-01-14 | 2019-07-30 | 北京航空航天大学 | 数据处理装置 |
JP6936854B2 (ja) * | 2017-02-06 | 2021-09-22 | エルジー エレクトロニクス インコーポレイティドLg Electronics Inc. | 行直交(row−orthogonal)構造を用いたLDPC符号の伝送方法及びそのための装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1987800A (zh) * | 2005-12-22 | 2007-06-27 | 三洋电机株式会社 | 编码电路及数字信号处理电路 |
-
2008
- 2008-07-31 CN CN 200810142227 patent/CN101640543B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1987800A (zh) * | 2005-12-22 | 2007-06-27 | 三洋电机株式会社 | 编码电路及数字信号处理电路 |
Non-Patent Citations (1)
Title |
---|
Tong Zhang.Efficient VLSI Architectures for Error-Correcting Coding.《IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY,UNIVERSITY OF MINNESOTA》.2002,摘要部分第1段、第13页第1段. * |
Also Published As
Publication number | Publication date |
---|---|
CN101640543A (zh) | 2010-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101924565B (zh) | Ldpc编码器、解码器、系统及方法 | |
CN101162907B (zh) | 一种利用低密度奇偶校验码实现编码的方法及装置 | |
CN100596029C (zh) | Ldpc码校验矩阵构造方法及利用该方法的编码解码装置 | |
CN101820288B (zh) | 低密度校验码的信息处理方法 | |
CN109586732B (zh) | 中短码ldpc编解码系统和方法 | |
CN101640543B (zh) | 一种ldpc码的编码装置及方法 | |
CN102394660A (zh) | 分组交织的准循环扩展并行编码ldpc码的编码方法和编码器 | |
US9104589B1 (en) | Decoding vectors encoded with a linear block forward error correction code having a parity check matrix with multiple distinct pattern regions | |
CN100555879C (zh) | 一种ldpc码的编码器装置及编码方法 | |
CN109802687A (zh) | 一种基于fpga的qc-ldpc码的高速码率兼容ldpc编码器 | |
CN103916134A (zh) | 低密度奇偶校验码的混叠译码方法及多核协同混叠译码器 | |
KR100669152B1 (ko) | 저밀도 패리티 검사 코드의 부호화 장치 및 방법 | |
CN101594152B (zh) | 实现水平运算和垂直运算同时运行的ldpc码译码方法 | |
CN101800627B (zh) | 一种多码率兼容的高速ldpc编码器的硬件实现 | |
CN102739259A (zh) | 一种用于cmmb激励器中的基于fpga的ldpc编码方法 | |
CN102412844B (zh) | 一种ira类ldpc码的译码方法及译码装置 | |
CN100486119C (zh) | 一种结构化的ldpc编码方法 | |
CN1973440A (zh) | Ldpc编码器、解码器、系统及方法 | |
CN100557983C (zh) | 一种准循环低密度奇偶校验码编码器和校验位生成方法 | |
CN101075812A (zh) | 一种并行级联结构的系统形式低密度码的构造方法 | |
CN103036577B (zh) | 一种低复杂度的低密度奇偶校验ldpc码编码电路结构 | |
CN101789795B (zh) | 基于多码率原模图ldpc码的编码方法及编码器 | |
CN107911123B (zh) | 针对深空应用的一类低密度奇偶校验码的编码方法 | |
CN110730003B (zh) | 一种ldpc编码方法及ldpc编码器 | |
CN113285725A (zh) | 一种qc-ldpc编码方法及编码器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1140323 Country of ref document: HK |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1140323 Country of ref document: HK |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130605 |
|
CF01 | Termination of patent right due to non-payment of annual fee |