CN105356890B - 一种基于重要性采样技术的ldpc码打孔方法 - Google Patents
一种基于重要性采样技术的ldpc码打孔方法 Download PDFInfo
- Publication number
- CN105356890B CN105356890B CN201510859069.4A CN201510859069A CN105356890B CN 105356890 B CN105356890 B CN 105356890B CN 201510859069 A CN201510859069 A CN 201510859069A CN 105356890 B CN105356890 B CN 105356890B
- Authority
- CN
- China
- Prior art keywords
- node
- ldpc code
- check
- drilling method
- set omega
- 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
Landscapes
- Error Detection And Correction (AREA)
Abstract
本发明中的基于重要性采样技术的LDPC码打孔方法首先利用重要性采样技术搜索出LDPC码译码过程中陷入陷阱集的错误比特位置,然后将这些错误比特位置做为一个新的选择标准,加入到之前的打孔方法中,由新设计的打孔方法构造的不同速率的码字,该LDPC码打孔方法可以适应各种信道的打孔方法,以改善LDPC码的误码率性能,在瀑布区和错误平层区都有较好的译码性能,能有效地降低了打孔码字的错误平层。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种基于重要性采样技术的LDPC码打孔方法。
背景技术
通信信道的信道状态通常是随时间时刻变化的。传统的信道编码是采用固定的码率来传输信息,这种做法是不合适的。当信道状态变差时,可能会造成传输误码率的增高;当信道状态变好时,可能会造成传输速率过慢,资源的浪费。通过自适应编码调制技术可有效的克服此缺点。自适应编码调制技术可以动态适应信道的变化,从而提高传输速率和传输可靠性,逼近Shannon容量限。即在信道状态较差时,用低码率码字和低阶调制模式传输。信道状态变好时,采用高码率码字和高阶调制模式传输。自适应编码调制技术实施的关键就是构造一系列码率不同的码字。构造不同码率的码字是通过速率兼容技术来实现的。速率兼容技术可以实现的码率从低到高,或者从高到低的灵活变换,打孔是速率兼容技术的一种,其原理为,给定一个低码率母码码字,然后通过删除码字中部分校验位比特,从而来提高传输码字的码率。例如,一个给定码长为n比特的码字,传输的信息比特数为k,则该码的码率为R=k/n,将其作为母码进行打孔操作,假设一共删除了d个校验比特,则升高后的码率为R′=k/(n-d)。
2006年Ha.J首次提出一种分组排序算法。由于LDPC码主要通过迭代译码。分组排序算法选择出具有不同的迭代恢复次数的节点来打孔,根据选择的节点的个数,来构造不同码率的LDPC码。首先,把LDPC校验矩阵展开成树图形式。再根据节点在树图上的结构,把所有的节点分成n组(分别为1步可恢复节点,2步可恢复节点,...,k步可恢复节点,...),如图1所示。1步可恢复节点就是在迭代译码过程中,只需要一次迭代,就能通过(被)传递来的信息所纠正。最后将每一组的所有节点通过特定的规则排列顺序。所有的节点就变成了一个有序的序列,从第1组排列到第n组。根据需要构造的码率,从这个序列的开始端来选择打孔节点。
分组排序算法是在树图的基础上来选择打孔节点。所有的打孔节点在译码恢复的过程中,都是按照已经设计好的树图来恢复,即在迭代译码过程中,通过树图中的未打孔节点传递给打孔节点正确信息,来纠正打孔节点。算法在选择打孔节点时,尽量较多地选择1步可恢复节点或者2步可恢复节点。这种恢复步长较短的节点,会将大量有效的校验信息集中自己身上。由于大量的有效校验信息被集中在这些节点附近,那么剩余的较长恢复步长的节点周围的有效校验信息就很少。这就造成了译码恢复时,较长恢复步长的节点译码错误的概率较大,因此,分组排序算法在选择待删除节点时,形成了一种贪婪选择的模式,即局部最优化,但整体的译码性能并不是很好。
近些年来,出现的打孔方法都是在分组排序算法的基础上改进的,有些算法增加了一些内部结构的搜索,例如停止集,环外来信息度等等。这些新的打孔方法在性能上有所提高,但方法只局限于某种特定信道,后者忽视了信道的影响。
发明内容
本发明的目的在于克服了上述分组排序方法性能较差的缺点,提出了一种可以适应各种信道的打孔方法,以改善LDPC码的误码率性能,并有效地降低了打孔码字错误平层的一种基于重要性采样技术的LDPC码打孔方法。
一种基于重要性采样技术的LDPC码打孔方法,包括以下步骤:
1)对LDPC码在某一信道下,进行仿真,找到LDPC码的性能曲线进入错误平层时的信噪比阈值;
3)在此信噪比阈值下,利用重要采样技术,对LDPC码进行错误冲击,并记录下造成LDPC码译码错误的节点位置和错误次数;
3)根据步骤2)记录的错误次数,由大到小,对相应的节点进行排序。这些节点都是对LDPC码译码性能危害较大的点。随着此序列的顺序,节点危害性逐步降低。将此序列分成m组,分别为Sm,Sm-1,…,S1;
4)依据目标码率R′,计算需要删除的校验比特个数,其中N为母码的长度,K为信息位长度;
5)按照一定规则选择出符合要求的节点,构成集合Ω2;
6)如果集合Ω2与集合Sm的交集不为空,则在它们的交集中随机选择一个节点作为打孔节点,否则就持续寻找集合Ω2与集合Sm-1的交集。如果直到集合Ω2与集合S1的交集也为空,就在集合Ω2中随机选择一个节点作为打孔节点;
7)重复操作步骤5)、6),直至符合删除比特的个数Np,达到目标码率。
在本发明的较佳实施例中,所述步骤5)中按照一定规则选择出符合要求的节点,
构成集合Ω2,按如下步骤进行:
a)把所有的连接打孔节点最少的校验节点存入到集合C*;
b)把集合C*中所有的校验节点中,每个校验节点展开的恢复树中未打孔节点数量最少的校验节点存入到集合C′中;
c)把与集合C′中的校验节点相连的所有变量节点存入到集合Ω中;
d)把集合Ω中,与每个变量节点相连同一个校验节点的打孔节点总数最少的变量节点存入到集合Ω1中;
e)把集合Ω1中,与每个变量节点相连的校验节点,以这些校验节点展开的恢复树中的未打孔节点总数之和最少的变量节点存入到集合Ω2中。
在本发明的较佳实施例中,所述步骤7)中按如下步骤进行:
a)从所有变量节点Vj,j∈{1,…,n}中删除步骤6)所选择的那个节点;
b)将Np的值减一。如果Np为零,则方法结束,否则重复步骤3)、步骤4)、步骤5)。
本发明中的基于重要性采样技术的LDPC码打孔方法首先利用重要性采样技术搜索出LDPC码译码过程中陷入陷阱集的错误比特位置,然后将这些错误比特位置做为一个新的选择标准,加入到之前的打孔方法中,由新设计的打孔方法构造的不同速率的码字,该LDPC码打孔方法可以适应各种信道的打孔方法,以改善LDPC码的误码率性能,在瀑布区和错误平层区都有较好的译码性能,能有效地降低了打孔码字的错误平层。
附图说明
图1是分组排序方法分组示意图;
图2是本发明对规则LDPC码打孔方案与传统方法***误码率仿真结果的对比示意图;
图3是本发明对非规则LDPC码打孔方案与传统方法***误码率仿真结果的对比示意图。
具体实施方式
下面结合附图对本发明做进一步的说明,
对于一个码长为N,信息位长为K的母码,其校验矩阵为Hm×n,(m=N-K,n=N),本发明的具体实现步骤如下:
步骤1,对LDPC码在高斯信道下,进行仿真,找到LDPC码的性能曲线进入错误平层时的信噪比阈值x;
步骤2,利用重要采样技术,对LDPC码进行错误冲击,冲击信号为n bit高斯噪声,即在LDPC码编码调制后的码字上,加入n bit高斯噪声,测试其译码性能。信噪比设定为信噪比阈值x。错误冲击次数设定为200万次。在接收端观察经过错误冲击后的LDPC译码状态,并记录下每个节点的译码错误次数Ti。
步骤3,根据步骤2记录的错误次数,由大到小,对相应的节点进行排序。这些节点都是对LDPC码译码性能危害较大的点。如果所有错误节点的错误次数最大的为Tmax。将此序列分成m组,分别为Sm,Sm-1,…,S1,节点的错误次数Ti属于范围((x-1)*Tmax/m,x*Tmax/m]时,将节点存入集合Sx。即,集合S1对应的范围为(0,Tmax/m],集合Sm对应的范围为((m-1)Tmax/m,Tmax]。
步骤4,依据目标码率,计算需要删除的信息比特个数。
设R′为打孔后的目标码率,Np为需要删除的校验比特总个数,根据码率定义易得:
R′=K/(N-Np) (1)
根据(1)式,计算需要删除的信息比特总个数为:
步骤5,按照一定规则选择出符合要求的节点,构成集合Ω2。
5a.校验矩阵中所有的行Ci,i∈{1,…,m}(每一行称为一个校验节点)。把每个校验节点所相连被打孔的变量节点个数记为F(c)。将F(c)最小的校验节点存入到集合C*;
5b.以每个校验节点c展开的恢复树中未打孔的变量节点个数记为U(c)。把集合C*中所有的校验节点中,U(c)最小的校验节点存入到集合C′中;
5c.把与集合C′中的校验节点相连的所有变量节点v存入到集合Ω中;
5d.对于一个变量节点v,与它连接相同的校验节点c的打孔变量节点的个数记为H(v)。把集合Ω中,H(v)最小的变量节点存入到集合Ω1中;
5e.对于一个变量节点v,与它相连的所有校验节点的U(c)值的总和记为K(v)。把集合Ω1中,K(v)最小的变量节点存入到集合Ω2中。
步骤6,如果集合Ω2与集合Sm的交集不为空,则在它们的交集中随机选择一个节点作为打孔节点,否则就持续寻找集合Ω2与集合Sm-1的交集。如果直到集合Ω2与集合S1的交集也为空,就在集合Ω2中随机选择一个节点作为打孔节点v*。
步骤7,重复操作步骤5)、6),直至符合删除比特的个数Np,达到目标码率。
7.a从所有变量节点Vj,j∈{1,…,n}中删除步骤6)所选择的那个节点。
7.b将Np的值减一。如果Np为零,则方法结束。否则重复步骤3)、步骤4)、步骤5)。
本发明的效果可以通过以下仿真进一步说明:
本发明仿真选用码长1008比特、码率0.5的规则LDPC码和非规则LDPC码,在AWGN信道下进行***误码率性能仿真,选用了0.5、0.6、0.7、0.8和0.9等多种码率,仿真的结果如图2和图3所示。
由图2可见,本发明用在非规则LDPC码,与传统的打孔方法相比,在瀑布区和错误平层区都获得较好的性能提升。尤其是在错误平层区域,该通信***最大获得了0.4dB的增益。
由图3可见,本发明在规则LDPC码,与传统的打孔方法相比,在瀑布区和错误平层区都获得较好的性能提升。尤其是在错误平层区域,该通信***最大获得了0.2dB的增益。
综上所述,该基于重要性采样技术的LDPC码打孔方法首先利用重要性采样技术搜索出LDPC码译码过程中陷入陷阱集的错误比特位置,然后将这些错误比特位置做为一个新的选择标准,加入到之前的打孔方法中,由新设计的打孔方法构造的不同速率的码字,该LDPC码打孔方法可以适应各种信道的打孔方法,以改善LDPC码的误码率性能,在瀑布区和错误平层区都有较好的译码性能,能有效地降低了打孔码字的错误平层。
上述仅为本发明的一个具体实施例,但本发明的设计构思并不局限于此,凡利用此构思对本发明进行非实质性的改动,均应属于侵犯本发明保护范围的行为。
Claims (3)
1.一种基于重要性采样技术的LDPC码打孔方法,其特征在于:包括以下步骤:
1)对LDPC码在某一信道下,进行仿真,找到LDPC码的性能曲线进入错误平层时的信噪比阈值;
2)在此信噪比阈值下,利用重要采样技术,对LDPC码进行错误冲击,并记录下造成LDPC码译码错误的节点位置和错误次数;
3)根据步骤2)记录的错误次数,由大到小,对相应的节点进行排序,这些节点都是对LDPC码译码性能危害较大的点,随着此序列的顺序,节点危害性逐步降低,将此序列分成m组,分别为Sm,Sm-1,…,S1;
4)依据目标码率R′,计算需要删除的校验比特个数其中N为母码的长度,K为信息位长度;
5)按照一定规则选择出符合要求的节点,构成集合Ω2;
6)如果集合Ω2与集合Sm的交集不为空,则在它们的交集中随机选择一个节点作为打孔节点,否则就持续寻找集合Ω2与集合Sm-1的交集,如果直到集合Ω2与集合S1的交集也为空,就在集合Ω2中随机选择一个节点作为打孔节点;
7)重复操作步骤5)、6),直至符合删除比特的个数Np,达到目标码率。
2.根据权利要求1所述的基于重要性采样技术的LDPC码打孔方法,其特征在于:所述步骤5)中按照一定规则选择出符合要求的节点,构成集合Ω2,按如下步骤进行:
a)把所有的连接打孔节点最少的校验节点存入到集合C*;
b)把集合C*中所有的校验节点中,每个校验节点展开的恢复树中未打孔节点数量最少的校验节点存入到集合C′中;
c)把与集合C′中的校验节点相连的所有变量节点存入到集合Ω中;
d)把集合Ω中,与每个变量节点相连同一个校验节点的打孔节点总数最少的变量节点存入到集合Ω1中;
e)把集合Ω1中,与每个变量节点相连的校验节点,以这些校验节点展开的恢复树中的未打孔节点总数之和最少的变量节点存入到集合Ω2中。
3.根据权利要求1所述的基于重要性采样技术的LDPC码打孔方法,其特征在于:
所述步骤7)按如下步骤进行:
a)从所有变量节点Vj,j∈{1,…,n}中删除步骤6)所选择的那个节点;
b)将Np的值减一:如果Np为零,则方法结束,否则重复步骤3)、步骤4)、步骤5)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510859069.4A CN105356890B (zh) | 2015-11-30 | 2015-11-30 | 一种基于重要性采样技术的ldpc码打孔方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510859069.4A CN105356890B (zh) | 2015-11-30 | 2015-11-30 | 一种基于重要性采样技术的ldpc码打孔方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105356890A CN105356890A (zh) | 2016-02-24 |
CN105356890B true CN105356890B (zh) | 2019-03-12 |
Family
ID=55332788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510859069.4A Active CN105356890B (zh) | 2015-11-30 | 2015-11-30 | 一种基于重要性采样技术的ldpc码打孔方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105356890B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106464421B (zh) * | 2014-04-30 | 2019-10-18 | 华为技术有限公司 | 一种数据发送方法和装置 |
CN108347295B (zh) * | 2017-01-25 | 2021-03-05 | 华为技术有限公司 | 一种数据传输方法及装置 |
CN112187402B (zh) * | 2019-07-05 | 2024-05-17 | 北京京东振世信息技术有限公司 | 一种数据处理的方法、装置和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1645752A (zh) * | 2005-01-21 | 2005-07-27 | 清华大学 | 一种Turbo码与多维调制级联的***编译码方案 |
CN1808955A (zh) * | 2005-01-23 | 2006-07-26 | 中兴通讯股份有限公司 | 基于非正则低密度奇偶校验码的编译码器及其生成方法 |
CN101227193A (zh) * | 2008-02-02 | 2008-07-23 | 中国科学院计算技术研究所 | 一种低密度校验码的编解码装置和方法 |
CN102118231A (zh) * | 2011-04-13 | 2011-07-06 | 厦门大学 | 多边类型低密度奇偶校验码的码率自适应编码方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101286858B1 (ko) * | 2009-12-21 | 2013-07-17 | 한국전자통신연구원 | 저밀도 패리티 검사 부호를 위한 고속 복호 방법 |
-
2015
- 2015-11-30 CN CN201510859069.4A patent/CN105356890B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1645752A (zh) * | 2005-01-21 | 2005-07-27 | 清华大学 | 一种Turbo码与多维调制级联的***编译码方案 |
CN1808955A (zh) * | 2005-01-23 | 2006-07-26 | 中兴通讯股份有限公司 | 基于非正则低密度奇偶校验码的编译码器及其生成方法 |
CN101227193A (zh) * | 2008-02-02 | 2008-07-23 | 中国科学院计算技术研究所 | 一种低密度校验码的编解码装置和方法 |
CN102118231A (zh) * | 2011-04-13 | 2011-07-06 | 厦门大学 | 多边类型低密度奇偶校验码的码率自适应编码方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105356890A (zh) | 2016-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101217925B1 (ko) | 높은 쓰루풋 어플리케이션을 위한 harq 레이트 호환가능 저 밀도 패리티-체크 (ldpc) 코드 | |
CN105490684B (zh) | 一种有限长ldpc码的打孔算法 | |
KR100943623B1 (ko) | 저밀도 패러티 검사 부호의 천공기법 | |
TWI594583B (zh) | 硬決定輸入之一般化低密度同位檢查軟解碼 | |
CN105356890B (zh) | 一种基于重要性采样技术的ldpc码打孔方法 | |
US10742239B2 (en) | Method for decoding a polar code with inversion of unreliable bits | |
US7979777B2 (en) | Apparatus, method and program for decoding | |
WO2007126328A1 (en) | Multi-theshold message passing decoding of low density parity check codes using the min-sum principle | |
CN109067408A (zh) | 一种原模图ldpc码的设计方法 | |
CN111480324B (zh) | 用于检测相互干扰的信息流的装置和方法 | |
KR20210102484A (ko) | 데이터 처리 방법 및 디바이스 | |
CN103731157B (zh) | 准循环低密度校验码的联合构造方法 | |
CN108206722B (zh) | 高码率数据发送方法和装置 | |
Liang et al. | Raptor-like rateless spinal codes using outer systematic polar codes for reliable deep space communications | |
CN1905374A (zh) | 非对称低密度校验码编译码方法 | |
KR20090063922A (ko) | 통신 시스템에서 신호 수신 장치 및 방법 | |
CN109525252A (zh) | 基于简化三阶关键集合的极化码串行抵消列表译码方法 | |
Shokrollahi | Capacity-approaching codes on the q-ary symmetric channel for large q | |
KR20090065411A (ko) | 그룹 단위 복호화를 위한 전처리 장치 및 그 방법 | |
Hareedy et al. | The weight consistency matrix framework for general non-binary LDPC code optimization: Applications in flash memories | |
CN109120376A (zh) | 基于极化码级联的低复杂度crc设计方法 | |
Bocharova et al. | Improved redundant parity-check based BP decoding of LDPC codes | |
CN117459076B (zh) | 基于mp译码ldpc纠删码译码方法、***、设备及可存储介质 | |
CN101188427B (zh) | 纠错增强的置信度传播译码方法 | |
KR20050107627A (ko) | 가변 길이 에러 정정 코드 구축 방법 및 디바이스 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |