CN109936380B - 无需后向迭代的qc-ldpc编码方法 - Google Patents
无需后向迭代的qc-ldpc编码方法 Download PDFInfo
- Publication number
- CN109936380B CN109936380B CN201910240637.0A CN201910240637A CN109936380B CN 109936380 B CN109936380 B CN 109936380B CN 201910240637 A CN201910240637 A CN 201910240637A CN 109936380 B CN109936380 B CN 109936380B
- Authority
- CN
- China
- Prior art keywords
- vector
- calculating
- matrix
- equally divided
- segments
- 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.)
- Active
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
本发明提供了一种无需后向迭代的QC‑LDPC编码方法,利用稀疏校验矩阵,分六步完成。本发明提供的QC‑LDPC编码方法将后向迭代运算转化为直接乘法,具有编码速度快、吞吐量大等优点。当校验矩阵中的下三角子矩阵等于单位矩阵时,后向迭代运算可被去掉,编码步骤可简化为四步。
Description
技术领域
本发明涉及信道编码领域,特别涉及一种通信系统中QC-LDPC码的基于校验矩阵的编码方法。
背景技术
准循环低密度奇偶校验(Quasi-Cyclic Low-Density Parity-Check,QC-LDPC)码具有实现复杂度低、可并行译码等优点,已在DTMB、CCSDS空间通信和IEEE多个标准中得到广泛应用。
QC-LDPC码的校验矩阵H是由r×c个b×b阶循环矩阵Hj,k构成的阵列,其中,1≤j≤r,1≤k≤c,c=u+r。通常,Hj,k要么是全零矩阵,要么是单位矩阵的循环右移版本。H的连续b行和b列分别被称为块行和块列,因此H有r块行和c块列。通信系统通常采用系统形式的QC-LDPC码,码字v=[s p],其中,s是信息向量,p是校验向量。以连续b比特为一段,s被等分为u段,p被等分为r段,即s=(s1,s2,…,su),p=(p1,p2,…,pr)。
目前,QC-LDPC码的常用编码方法是基于H的,这是因为H是稀疏的,运算量小。对H进行行列交换,将其变换成近似下三角形状,如图1所示。A由(r-g)×u个循环矩阵构成,B由(r-g)×g个循环矩阵构成,L是由(r-g)×(r-g)个循环矩阵构成的下三角子矩阵,C由g×u个循环矩阵构成,D由g×g个循环矩阵构成,E由g×(r-g)个循环矩阵构成。令p=[px py],其中,px=(p1,p2,…,pg),py=(pg+1,pg+2,…,pr)。上述矩阵和向量满足如下关系:
px Τ=Φ(EL-1AaΤ+CaΤ) (1)
py Τ=L-1(AaΤ+Bpx Τ) (2)
其中,上标Τ和-1分别表示转置和逆,Φ=(EL-1B+D)-1也是由循环矩阵构成的阵列,且通常是高密度的。
上述编码方法涉及矩阵L-1与向量的乘法,矩阵L-1通常是高密度的而不是稀疏的。该乘法运算可通过两种方法实现:第一种是高密度矩阵L-1与向量直接相乘,缺点是运算量大、速度慢;第二种是利用L的下三角特性进行后向迭代计算,缺点是串行运算、速度慢。总之,矩阵L-1与向量的乘法存在运算速度慢的问题。
发明内容
通信系统中QC-LDPC编码器的现有实现方案存在运算速度慢的缺点,针对该技术问题,本发明提供了一种无需后向迭代的QC-LDPC编码方法。
如图2所示,通信系统中无需后向迭代的QC-LDPC编码过程分6步完成:第1步,用fT=AsT计算向量f;第2步,用qT=LfT计算向量q;第3步,用xT=EqT+CsT计算向量x;第4步,用px T=ΦxT计算向量px;第5步,用yT=fT+Bpx T计算向量y;第6步,用py T=LyT计算向量py,从而得到校验向量p=[px py]。
本发明提供的QC-LDPC编码方法兼容多码率,能提高编码速度,提高吞吐量。
关于本发明的优势与方法可通过下面的发明详述及附图得到进一步的了解。
附图说明
图1是近似下三角校验矩阵的结构示意图;
图2是无需后向迭代的QC-LDPC编码过程;
图3是无需后向迭代的QC-LDPC编码过程的一种特殊情况。
具体实施方式
下面结合附图对本发明的较佳实施例作详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围作出更为清楚明确的界定。
在将校验矩阵H变换成近似下三角形状时,通过适当的行交换和列交换操作,可使下三角子矩阵L具有如下结构:
其中,I是[(r-g)/2×b]×[(r-g)/2×b]阶单位矩阵,0是[(r-g)/2×b]×[(r-g)/2×b]阶全零矩阵,F是由[(r-g)/2]×[(r-g)/2]个b×b阶循环矩阵构成的稀疏矩阵,r-g是偶数。因为LL-1=I,又因为在模2加运算法则下
所以L=L-1。因此,式(1)和(2)可改写为
px Τ=Φ(ELAaΤ+CaΤ) (5)
py Τ=L(AaΤ+Bpx Τ) (6)
令fT=AsT,qT=LfT,xT=EqT+CsT,px T=ΦxT,yT=fT+Bpx T和py T=LyT。以连续b比特为一段,向量f被等分为r-g段,即f=(f1,f2,…,fr–g),向量q被等分为r-g段,即q=(q1,q2,…,qr–g),向量x被等分为g段,即x=(x1,x2,…,xg),向量y被等分为r-g段,即y=(y1,y2,…,yr–g)。令f'=(f1,f2,…,f(r–g)/2)和f"=(f(r–g)/2+1,f(r–g)/2+2,…,fr–g),则f=[f'f"]。令q'=(q1,q2,…,q(r–g)/2)和q"=(q(r–g)/2+1,q(r–g)/2+2,…,qr–g),则q=[q'q"]。由式(3)和qT=LfT可知,
显然,LfT的核心运算是Ff'T,F的阶次仅为L的一半,因此,LfT的运算量很低。类似地,由式(3)和py T=LyT可知,LyT的运算量也很低。
根据上述讨论,本发明提供了一种无需后向迭代的QC-LDPC编码方法,适用于通信系统中的QC-LDPC码,其编码步骤如图2所示,具体描述如下:
第1步,用fT=AsT计算向量f;
第2步,用qT=LfT计算向量q;
第3步,用xT=EqT+CsT计算向量x;
第4步,用px T=ΦxT计算向量px;
第5步,用yT=fT+Bpx T计算向量y;
第6步,用py T=LyT计算向量py,从而得到校验向量p=[px py]。
综上可见,与现有的QC-LDPC编码方法相比,本发明将L-1fT变换为LfT、将L-1yT变换为LyT,即将后向迭代运算变换为直接乘法,且在核心运算中F的阶次仅为L的一半。因此,本发明具有编码速度快的优点。
注意,当L中的F等于全零矩阵时,L为[(r-g)×b]×[(r-g)×b]阶单位矩阵,qT=LfT=fT,py T=LyT=yT,它们分别等价于q=f,py=y。也就是说,后向迭代运算完全被去掉了。此时,r-g不必是偶数,奇数亦可,且编码步骤变得简单,如图3所示,具体描述如下:
第1步,用fT=AsT计算向量f,从而得到q=f;
第2步,用xT=EqT+CsT计算向量x;
第3步,用px T=ΦxT计算向量px;
第4步,用yT=fT+Bpx T计算向量y,从而得到py=y,也就得到校验向量p=[px py]。
2015年,CCSDS将JPL实验室提出的(512,256)、(256,128)和(128,64)三种QC-LDPC超短码作为未来上行链路信道编码的实验研究方案。对于这三种码,码率都是1/2,r=4,c=8,b分别是64、32和16,校验矩阵分别如下:
其中,In表示单位矩阵I的每行数据循环右移n位得到的循环矩阵,1≤n<b。
对校验矩阵H(512,256)、H(256,128)和H(128,64)进行相同的块行交换操作:将最后一块行放到矩阵的最上方,作为第一块行。这样得到的矩阵都是近似下三角形状,g=r-g=2,三种下三角子矩阵分别是:
上述三式都满足式(3)的结构。因此,这三种QC-LDPC超短码都可以采用图2所示的编码方法。
对于校验矩阵H(512,256)、H(256,128)和H(128,64),若取g=3,r-g=1,则它们中的下三角子矩阵均为:
L(512,256)=L(256,128)=L(128,64)=I (14)
显然,此时这三种QC-LDPC超短码都可以采用图3所示的编码方法。
综上可见,本发明提供的QC-LDPC编码方法还具有兼容多码率的优点。
以上所述,仅为本发明的具体实施方式之一,但本发明的保护范围并不局限于此,任何熟悉本领域的技术人员在本发明所揭露的技术范围内,可不经过创造性劳动想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书所限定的保护范围为准。
Claims (2)
1.一种无需后向迭代的QC-LDPC编码方法,QC-LDPC码的校验矩阵H是由r×c个b×b阶循环矩阵构成的阵列,其中,c=u+r,r、c、b和u都是正整数,通过行列交换将H变换成近似下三角形状,并划分为6个子矩阵,A由(r-g)×u个循环矩阵构成,B由(r-g)×g个循环矩阵构成,下三角子矩阵L由(r-g)×(r-g)个循环矩阵构成,C由g×u个循环矩阵构成,D由g×g个循环矩阵构成,E由g×(r-g)个循环矩阵构成,其中,g是正整数,Φ=(EL-1B+D)-1由g×g个循环矩阵构成,其中,上标-1表示逆,满足L=L-1,其中,I是[(r-g)/2×b]×[(r-g)/2×b]阶单位矩阵,0是[(r-g)/2×b]×[(r-g)/2×b]阶全零矩阵,F是由[(r-g)/2]×[(r-g)/2]个b×b阶循环矩阵构成的稀疏矩阵,r-g是偶数,以连续b比特为一段,信息向量s被等分为u段,即s=(s1,s2,…,su),校验向量p被等分为r段,即p=(p1,p2,…,pr),px=(p1,p2,…,pg),py=(pg+1,pg+2,…,pr),p=[px py],向量f被等分为r-g段,即f=(f1,f2,…,fr–g),向量q被等分为r-g段,即q=(q1,q2,…,qr–g),向量x被等分为g段,即x=(x1,x2,…,xg),向量y被等分为r-g段,即y=(y1,y2,…,yr–g),其特征在于,所述编码方法包括以下步骤:
第1步,用fT=AsT计算向量f,其中,上标T表示转置;
第2步,用qT=LfT计算向量q;
第3步,用xT=EqT+CsT计算向量x;
第4步,用px T=ΦxT计算向量px;
第5步,用yT=fT+Bpx T计算向量y;
第6步,用py T=LyT计算向量py,从而得到校验向量p=[px py]。
2.如权利要求1所述的一种无需后向迭代的QC-LDPC编码方法,其特征在于,当L中的F等于全零矩阵时,L为[(r-g)×b]×[(r-g)×b]阶单位矩阵,q=f,py=y,r-g不必是偶数,奇数亦可,编码步骤简化为:
第1步,用fT=AsT计算向量f,从而得到q=f;
第2步,用xT=EqT+CsT计算向量x;
第3步,用px T=ΦxT计算向量px;
第4步,用yT=fT+Bpx T计算向量y,从而得到py=y,也就得到校验向量p=[px py]。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910240637.0A CN109936380B (zh) | 2019-03-28 | 2019-03-28 | 无需后向迭代的qc-ldpc编码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910240637.0A CN109936380B (zh) | 2019-03-28 | 2019-03-28 | 无需后向迭代的qc-ldpc编码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109936380A CN109936380A (zh) | 2019-06-25 |
CN109936380B true CN109936380B (zh) | 2023-01-24 |
Family
ID=66988535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910240637.0A Active CN109936380B (zh) | 2019-03-28 | 2019-03-28 | 无需后向迭代的qc-ldpc编码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109936380B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1801630A (zh) * | 2005-11-24 | 2006-07-12 | 上海交通大学 | 基于优化搜索矩阵lu分解的ldpc码编码方法 |
CN106411324A (zh) * | 2016-03-30 | 2017-02-15 | 联想(北京)有限公司 | 信息处理方法及存储设备 |
CN106656210A (zh) * | 2017-01-03 | 2017-05-10 | 重庆邮电大学 | 一种基于完备循环差集的可快速编码的Type‑II QC‑LDPC码构造方法 |
WO2018202143A1 (en) * | 2017-05-05 | 2018-11-08 | Mediatek Inc. | Improved qc-ldpc codes |
CN109379086A (zh) * | 2018-10-11 | 2019-02-22 | 西安电子科技大学 | 低复杂度的码率兼容的5g ldpc编码方法和编码器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10382069B2 (en) * | 2015-08-11 | 2019-08-13 | Apple Inc. | Data encoding by efficient inversion of a parity-check sub-matrix |
-
2019
- 2019-03-28 CN CN201910240637.0A patent/CN109936380B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1801630A (zh) * | 2005-11-24 | 2006-07-12 | 上海交通大学 | 基于优化搜索矩阵lu分解的ldpc码编码方法 |
CN106411324A (zh) * | 2016-03-30 | 2017-02-15 | 联想(北京)有限公司 | 信息处理方法及存储设备 |
CN106656210A (zh) * | 2017-01-03 | 2017-05-10 | 重庆邮电大学 | 一种基于完备循环差集的可快速编码的Type‑II QC‑LDPC码构造方法 |
WO2018202143A1 (en) * | 2017-05-05 | 2018-11-08 | Mediatek Inc. | Improved qc-ldpc codes |
CN109379086A (zh) * | 2018-10-11 | 2019-02-22 | 西安电子科技大学 | 低复杂度的码率兼容的5g ldpc编码方法和编码器 |
Non-Patent Citations (2)
Title |
---|
Efficient Encoding of Quasi-Cyclic Low-Density Parity-Check Codes;Tingting Liang等;《2018 IEEE 3rd Advanced Information Technology, Electronic and Automation Control Conference (IAEAC)》;20181216;全文 * |
一种高速RS码与LDPC级联码编码器设计及硬件实现;施展;《中国优秀硕士学位论文全文数据库信息科技辑》;20101215;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109936380A (zh) | 2019-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10320419B2 (en) | Encoding method, decoding method, encoding device and decoding device for structured LDPC | |
AU2017355038B2 (en) | Method and apparatus for encoding and decoding LDPC codes | |
EP2957038B1 (en) | Design for lifted ldpc codes having high parallelism, low error floor, and simple encoding principle | |
US20160173132A1 (en) | Construction of Structured LDPC Convolutional Codes | |
US9973212B2 (en) | Decoding algorithm with enhanced parity check matrix and re-encoding scheme for LDPC code | |
CN109586732B (zh) | 中短码ldpc编解码系统和方法 | |
CA2798963A1 (en) | Apparatus and method for layered decoding in a communication system using low-density partiy-check codes | |
US20170047948A1 (en) | Data encoding by efficient inversion of a parity-check sub-matrix | |
EP2951925B1 (en) | Ldpc code design and encoding apparatus enabling the adjustment of code rate and codelength | |
WO2013026291A1 (zh) | 分组交织的准循环扩展并行编码ldpc码的编码方法和编码器 | |
CA3068497C (en) | Design method and apparatus for quasi-cyclic low-density parity-check | |
US9104589B1 (en) | Decoding vectors encoded with a linear block forward error correction code having a parity check matrix with multiple distinct pattern regions | |
CN104868926B (zh) | 一种ldpc码型的构造方法及系统 | |
CN108809327B (zh) | Ldpc译码方法 | |
CN109936380B (zh) | 无需后向迭代的qc-ldpc编码方法 | |
CN105871385B (zh) | 一种ldpc卷积码构造方法 | |
US10727869B1 (en) | Efficient method for packing low-density parity-check (LDPC) decode operations | |
CN108809324B (zh) | Ldpc译码方法 | |
Genga et al. | A low complexity encoder construction for systematic quasi-cyclic LDPC codes | |
US11075650B1 (en) | Sub-matrix reduction for quasi-cyclic LDPC codes | |
CN112583420B (zh) | 一种数据处理方法和译码器 | |
CN110324048B (zh) | 一种通信调制系统中ra-ldpc-cc的编码方法及编码器 | |
EP2951926B1 (en) | Ldpc code design and encoding apparatus for their application | |
CN108809325B (zh) | Ldpc译码器 | |
CN109150192B (zh) | 一种ldpc码字结构及码字编码方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |