CN109547033B - 一种支持任意码长的ldpc码实现方法 - Google Patents
一种支持任意码长的ldpc码实现方法 Download PDFInfo
- Publication number
- CN109547033B CN109547033B CN201811403221.8A CN201811403221A CN109547033B CN 109547033 B CN109547033 B CN 109547033B CN 201811403221 A CN201811403221 A CN 201811403221A CN 109547033 B CN109547033 B CN 109547033B
- Authority
- CN
- China
- Prior art keywords
- bit
- length
- decoding
- bits
- code
- 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
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开了一种支持任意码长的LDPC码实现方法。该方法基于准循环LDPC(QC‑LDPC)码。通过采用适当的补位/删除操作,实现了任意码长的LDPC码的实现方法。该方法实现简单,对原始QC‑LDPC码的性能影响小。最终解决了LDPC码对任意码长的适用性问题,使得LDPC码可应用于码长可变系统并提升了LDPC码的可用度。
Description
技术领域
本发明涉及通信、导航、信息处理等领域,尤其涉及支持任意长度的LDPC码问题。
背景技术
1962年,Gallage提出了一种特殊的线性分组码——低密度奇偶校验码(low-density parity-check codes),简称LDPC码,并提出相应的迭代译码概念。LDPC码是一种码长非常大的线性分组码,LDPC码具有以下优点:具有非常接近香农理论界限的性能;能够实现快速编码;在不同信道上都表现出良好的性能;不需要深度交织就能获得好的误码性能,所以系统的时延比Turbo码短;错误平层大大降低。
LDPC码以其优异的性能正在获得越来越多学者的关注,并在GPS、4GLTE等大型导航、通信系统中获得应用。然而与Turbo码或卷积码相比,LDPC码编码长度与校验矩阵一一对应,无法灵活的进行改变,使其无法应用到一些需要编码长度需要动态可变的系统中。IEEE 802.16e标准中提到了一种准循环LDPC码,基于12×24的校验基矩阵可实现码长以12为步进长度进行动态调整,仍然无法支持任意的码长。在一些通信系统中,其通信的数据量并不固定,因此需要基于信息长度动态分组,动态组帧,而这种情况下LDPC码或得不到应用、或给帧结构设计带来麻烦。LDPC码在码长选择上的诸多限制成为了应用的阻碍。因此研究支持任意码长的LDPC码实现方法是十分必要的。
本发明方法主要针需要可变码长的通信系统或其它需要任意长度LDPC码的系统,针对LDPC码的特点,通过一定的优化设计,可使LDPC码支持任意码长,并且不会出现明显的性能下降。
发明内容
本发明的技术解决的问题是:针对需要任意码长的系统,提出一种支持任意码长的LDPC码实现方法,该方法能够解决LDPC码对不同编码长度的适应性问题。在使用同一个LDPC编译码模块的情况下,实现支持不同长度的编译码。
本发明采用的技术方案为:
一种支持任意码长的LDPC码实现方法,其具体步骤如下:
(1)选取准循环LDPC码QC-LDPC,QC-LDPC码由M×N维校验基矩阵Hb和Z×Z的循环单位矩阵联合构成;
(2)选择同等编码效率不同维度的t个校验基矩阵Hbi,其维度为Mi×Ni,编码效率η=Mi/Ni,针对每个校验基矩阵,构建相应的编码模块和译码模块,其中,i=1,···j,···t,t≥1;
(3)设待编码的信息位长度为k,令k=Zi×Mi+ui,0≤ui<Mi,当存在ui=0时,选择对应的基矩阵Hbi并利用相应的编码模块和译码模块进行编译码处理;当不存在ui=0时,选取(Mj-uj)=min(Mi-ui),选择对应的基矩阵Hbj,执行步骤(4);
(4)在发送端,将待编码的信息位最后补充Mj-uj个0或者1,信息位长度记为K0,并使用相应的编码模块进行编码,编码完成后的码长为n0=k0/η,然后将编码后校验位的最后(n0-k/η)bit删除;在接收端,将接收数据最后补充(n0-k/η)个0或1,再使用相应的译码模块进行译码,得到译码结果,取译码结果前k比特数据即得到原始的信息位。
其中,步骤(4)具体包括以下步骤:
(401)在发送端,将待编码的信息位X=[x1,x2,…xk]的最后补充Mj-uj个0或者1,补充后的信息位Xa总长度变为K0:
(402)将补充0或者1后的待编码信息送入编码模块进行编码,编码后得到:
(403)将编码后信息校验位最后的(n0-k/η)比特删除,得到:
(404)将删减后的数据进行调制、发送、接收和解调得到n位待译码的软判决或硬判决的数据:
(405)将待译码的软判决或硬判决的数据校验位最后补充n0-n位0或1,补位后的数据为n0位,得到:
(406)将补位后的数据送入相应的译码模块进行译码,得到长度为k0的译码结果:
其中前k位即原始信息位,将最后Mj-uj位删除即得到原始信息位:
X=[x1,x2,…xk]。
本发明相比背景技术具有如下优点:
(1)本发明提出的一种支持任意码长的LDPC码实现方法解决了LDPC码对于不同编码长度的适应性问题,使其适用于任意编码长度的系统,提升了LDPC码的适用范围。
(2)本发明提出的一种支持任意码长的LDPC码实现方法,仅仅增加了补0/1单元和删除单元,对于软硬件来说几乎不增加资源开销。无需改变编译码模块,且性能几乎没有降低。
附图说明
图1是本发明的实现流程图。
具体实施方式
下面结合附图1对本发明做进一步的详细的说明。
本发明基于实际中应用最为广泛的准循环LDPC码,解决了LDPC码对于任意编码长度适用性问题。在几乎不降低性能的情况下,实现了任意长度的LDPC码编码,减少了校验矩阵对编码长度的限制。
一种支持任意码长的LDPC码实现方法,其具体过程如下:
图1是本发明方法的实现流程图。本发明方法流程如下:
(1)选取准循环LDPC码QC-LDPC,QC-LDPC码由M×N维校验基矩阵Hb和Z×Z的循环单位矩阵联合构成;
(2)选择同等编码效率不同维度的t个校验基矩阵Hbi,其维度为Mi×Ni,每个校验矩阵支持的码率相同,编码效率η=Mi/Ni,针对每个校验基矩阵,构建相应的编码模块和译码模块;
其中,i=1,···j,···t,t≥1;t越大,整体的编译码性能下降越少,对任意码长的支持越好。
(3)待编码的信息位为X=[x1,x2,…xk],其长度为k,则编码完成后的码长为n=k/η。令k=Zi×Mi+ui,0≤ui<Mi,i=1,…t。当存在uj=0时,则选择第j个校验矩阵,令M=Mj,N=Nj,u=uj,并按照正常的LDPC码编译码处理方法进行编码、调制、解调、译码等即可。当对于任意ui都不等于0时,选择Mi-ui最小的,即:
(Mj-uj)=min(Mi-ui),M=Mj,N=Nj,u=uj
(4)在发送端,将待编码的信息位最后补充Mj-uj个0或者1,信息位长度记为K0,并使用相应的编码模块进行编码,编码完成后的码长为n0=k0/η,然后将编码后校验位的最后(n0-k/η)bit删除;在接收端,将接收数据最后补充(n0-k/η)个0或1,再使用相应的译码模块进行译码,得到译码结果,取译码结果前k比特数据即得到原始的信息位。
具体如下:
(401)在信息位X的最后补充M-u个0或者1,信息位总长度变为K0:
(402)送入编码模块进行编码,编码后得到:
(403)将校验位最后的n0-n比特删除,使得信息位+校验位仍然长为n,如下式所示:
(404)将删减后的数据进行调制、发送、接收、解调得到n位待译码的软判决或硬判决的数据:
(405)在校验位最后补充n0-n位0或1,补位后的数据为n0位,与步骤(4)中编码后的数据相对应:
(406)将补位后的数据送入译码器进行译码,得到长度为k0的译码结果:
其中前k位即原始信息位,将最后Mj-uj位删除即得到结果:
X=[x1,x2,…xk]
基于上述步骤(1)~(6)即可完成任意码长的LDPC码编码。
Claims (2)
1.一种支持任意码长的LDPC码实现方法,其特征在于,包括以下步骤:
(1)选取准循环LDPC码QC-LDPC,QC-LDPC码由M×N维校验基矩阵Hb和Z×Z的循环单位矩阵联合构成;
(2)选择同等编码效率不同维度的t个校验基矩阵Hbi,其维度为Mi×Ni,编码效率η=Mi/Ni,针对每个校验基矩阵,构建相应的编码模块和译码模块,其中,i=1,···j,···t,t≥1;
(3)设待编码的信息位长度为k,令k=Zi×Mi+ui,0≤ui<Mi,当存在ui=0时,选择对应的基矩阵Hbi并利用相应的编码模块和译码模块进行编译码处理;当不存在ui=0时,选取(Mj-uj)=min(Mi-ui),选择对应的基矩阵Hbj,执行步骤(4);
(4)在发送端,将待编码的信息位最后补充Mj-uj个0或者1,信息位长度记为k0,并使用相应的编码模块进行编码,编码完成后的码长为n0=k0/η,然后将编码后校验位的最后(n0-k/η)bit删除;在接收端,将接收数据最后补充(n0-k/η)个0或1,再使用相应的译码模块进行译码,得到译码结果,取译码结果前k比特数据即得到原始的信息位。
2.一种支持任意码长的LDPC码实现方法,其特征在于,步骤(4)具体包括以下步骤:
(401)在发送端,将待编码的信息位X=[x1,x2,…xk]的最后补充Mj-uj个0或者1,补充后的信息位Xa总长度变为k0:
(402)将补充0或者1后的待编码信息送入编码模块进行编码,编码后得到:
(403)将编码后信息校验位最后的(n0-k/η)比特删除,得到:
(404)将删减后的数据进行调制、发送、接收和解调得到n位待译码的软判决或硬判决的数据:
(405)将待译码的软判决或硬判决的数据校验位最后补充n0-n位0或1,补位后的数据为n0位,得到:
(406)将补位后的数据送入相应的译码模块进行译码,得到长度为k0的译码结果:
其中前k位即原始信息位,将最后Mj-uj位删除即得到原始信息位:
X=[x1,x2,…xk]。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811403221.8A CN109547033B (zh) | 2018-11-23 | 2018-11-23 | 一种支持任意码长的ldpc码实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811403221.8A CN109547033B (zh) | 2018-11-23 | 2018-11-23 | 一种支持任意码长的ldpc码实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109547033A CN109547033A (zh) | 2019-03-29 |
CN109547033B true CN109547033B (zh) | 2022-12-09 |
Family
ID=65849563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811403221.8A Active CN109547033B (zh) | 2018-11-23 | 2018-11-23 | 一种支持任意码长的ldpc码实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109547033B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006094012A (ja) * | 2004-09-22 | 2006-04-06 | Toshiba Corp | 符号化方法、復号処理方法および通信装置 |
CN1808955A (zh) * | 2005-01-23 | 2006-07-26 | 中兴通讯股份有限公司 | 基于非正则低密度奇偶校验码的编译码器及其生成方法 |
CN101854228A (zh) * | 2010-04-01 | 2010-10-06 | 华北电力大学(保定) | 一种准循环低密度奇偶校验码的构造方法 |
CN106685586A (zh) * | 2015-11-11 | 2017-05-17 | 华为技术有限公司 | 生成用于在信道中传输的低密度奇偶校验码的方法及设备 |
CN107733439A (zh) * | 2016-08-11 | 2018-02-23 | 电信科学技术研究院 | 一种ldpc编码方法、编码装置及通信设备 |
CN108023673A (zh) * | 2016-11-04 | 2018-05-11 | 清华大学 | 一种多码率多码长ldpc码的构造及编码方法 |
-
2018
- 2018-11-23 CN CN201811403221.8A patent/CN109547033B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006094012A (ja) * | 2004-09-22 | 2006-04-06 | Toshiba Corp | 符号化方法、復号処理方法および通信装置 |
CN1808955A (zh) * | 2005-01-23 | 2006-07-26 | 中兴通讯股份有限公司 | 基于非正则低密度奇偶校验码的编译码器及其生成方法 |
CN101854228A (zh) * | 2010-04-01 | 2010-10-06 | 华北电力大学(保定) | 一种准循环低密度奇偶校验码的构造方法 |
CN106685586A (zh) * | 2015-11-11 | 2017-05-17 | 华为技术有限公司 | 生成用于在信道中传输的低密度奇偶校验码的方法及设备 |
CN107733439A (zh) * | 2016-08-11 | 2018-02-23 | 电信科学技术研究院 | 一种ldpc编码方法、编码装置及通信设备 |
CN108023673A (zh) * | 2016-11-04 | 2018-05-11 | 清华大学 | 一种多码率多码长ldpc码的构造及编码方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109547033A (zh) | 2019-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4555333B2 (ja) | 可変符号化率を有するブロック低密度パリティ検査符号の符号化/復号装置及び方法 | |
JP4361924B2 (ja) | 構造的低密度パリティ検査符号を用いる通信システムにおけるデータ送信/データ受信のための装置及び方法 | |
CN107211033B (zh) | 数据传输的方法和设备 | |
CN110800216A (zh) | 用于通信和广播系统的速率匹配的方法和装置 | |
US20120117440A1 (en) | Low density parity check (ldpc) code | |
US11646818B2 (en) | Method and apparatus for encoding/decoding channel in communication or broadcasting system | |
US20080294963A1 (en) | Method and apparatus for designing low density parity check code with multiple code rates, and information storage medium thereof | |
KR101119302B1 (ko) | 통신 시스템에서 저밀도 패리티 검사 부호 부호화 장치 및방법 | |
CN101889398A (zh) | 在使用低密度奇偶校验码的通信系统中编码和解码信道的方法和装置 | |
CA3043855C (en) | Modulator and modulation method using non-uniform 16-symbol signal constellation for low-density parity check codeword having 2/15 code rate | |
JP2012239240A (ja) | 低密度パリティ検査符号のパリティ検査行列生成方法 | |
JP2001203589A (ja) | Xorコード、これを用いた直列連接符号器及び復号器 | |
KR102549344B1 (ko) | 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치 | |
JP3979105B2 (ja) | 多元接続システム | |
WO2019149180A1 (zh) | 交织方法和交织装置 | |
KR20100065515A (ko) | 저밀도 패리티 검사 행렬 재배열 방법 및 이를 이용하는 장치 | |
JP5696604B2 (ja) | 誤り訂正符号の復号装置、誤り訂正符号の復号方法及び基地局装置ならびに移動局装置 | |
US7573962B1 (en) | Diversity code combining scheme for turbo coded systems | |
KR101503653B1 (ko) | 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호화/복호화 방법 및 장치 | |
JP6970210B2 (ja) | 無線通信システムにおいてldpc符号のパリティ検査行列に基づいて符号化を行う方法及びそれを用いる端末 | |
KR20090093778A (ko) | 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널부호/복호 장치 및 방법 | |
CN109547033B (zh) | 一种支持任意码长的ldpc码实现方法 | |
CN108270448B (zh) | 准循环低密度奇偶校验编码方法及装置 | |
US8627187B2 (en) | Decoding of recursive convolutional codes by means of a decoder for non-recursive convolutional codes | |
CN112737600B (zh) | 译码方法和译码器 |
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 |