0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

5G通信算法:LDPC译码算法详解

FPGA技术江湖 来源:FPGA算法工程师 作者:FPGA算法工程师 2023-04-27 09:09 次阅读

LDPC码在IEEE802.16e、IEEE802.11n、IEEE802.11ac、IEEE802.11ad以及5G等高吞吐量系统中得到了广泛的应用。

信道编解码作为整个通信系统中最难实现的一部分,众多高校、研究院所、企业,投入了大量的人力资源进行研究与实现。

在信道编解码技术中,译码主要分为硬判决译码和软判决译码。

LDPC硬判决译码算法主要分为:消息传递(Message-Passing,MP)算法、比特翻转(Bit Flipping, BF)算法和Gallager A、B算法。比特翻转算法中,先求取HCT,如果为0则停止译码,否则翻转参与校验失败校验方程最多的变量节点对应的比特,再计算HCT如此迭代直到HCT=0或达到设定迭代次数。Gallager A、B算法算法过程参考其博士论文。硬判决译码性能较差,使用软判决可显著提高译码性能。

LDPC软判决译码基于置信度传播(BP)算法(或叫做和积SP算法),通过在变量节点VN和校验节点CN之间传播和更新置信度信息来达到译码收敛的效果。通过BP算法,又衍生出最小和算法,以及归一化最小和算法,偏置最小和算法。

一切算法研究,需要从脑海理论到落地实践,通过仿真验证,再到工程应用,才能将知识转变为财富。

01

MP译码算法

消息传递(MP)算法是迭代解码算法,在VN和CN之间来回传递消息,直到进程停止。消息标记的Mi表示已知bit值为0或1,e表示已删除位。

在LDPC译码中,用Bj符号表示H的奇偶校验方程中的bit集合(每一行中1的位置集合),用Ai符号表示码的第i位的奇偶校验方程(每一列中1的位置集合)。

考虑下面的奇偶校验矩阵:

06745e8a-e48c-11ed-ab56-dac502259ad0.png

对于上面的奇偶校验矩阵,我们得到:

067c90b4-e48c-11ed-ab56-dac502259ad0.png

基于(Binary Erasure Channel,BEC)的LDPC译码处理过程如下:

06848148-e48c-11ed-ab56-dac502259ad0.png

02

BF译码算法

收到符号硬解码成1和0组成一个二进制向量y。在每个迭代中,计算所有检查和,以及涉及每一个n bit向量y不满足奇偶检验的数量。接下来,如果y的比特包含最大数量的未满足奇偶校验,则将其翻转。该过程将重复进行,直到所有校验和都满足或达到预定的迭代次数。

比特翻转译码算法的步骤如下:

06952854-e48c-11ed-ab56-dac502259ad0.png

03

BP(SP)算法

和积算法类似于前一节中描述的比特翻转算法,但表示每个判决(无论位值是1还是0)的消息现在都是概率。比特翻转译码接受接收比特的初始硬判定作为输入,和积算法是接受接收位的概率作为输入的软判定消息传递算法。在LDPC译码器操作之前,输入信道或接收比特的概率是已知的,因此它们也被称为接收比特的先验概率。在和积解码器中,节点之间传递的外部信息也是概率。校验节点j与比特节点i之间的外部信息用Eji表示; Eji给出了bit ci为1时使奇偶校验方程j满足的概率。如果第i位不包含在j中,则无法定义Eji,因为在检查节点j和第i bit之间没有外部信息。

奇偶校验方程中奇数个bit 是1的概率是:

06a54072-e48c-11ed-ab56-dac502259ad0.png

也就是bit ci为1时奇偶校验方程满足的概率。bit ci为0时满足奇偶校验方程的概率为

06adeace-e48c-11ed-ab56-dac502259ad0.png

二元变量的度量用以下对数似然比(LLR)表示:

06b27382-e48c-11ed-ab56-dac502259ad0.png

其中,log就是loge,L(x)符号提供了x的硬判决,并且模|L(x)|决定了判决的可靠性。将LLR转化为概率:

06b66fa0-e48c-11ed-ab56-dac502259ad0.png

当需要将概率相乘时,只需要加LLR,从而降低和积译码器的复杂性。这使得概率的对数表示有了好处。从校验节点j06bc9f10-e48c-11ed-ab56-dac502259ad0.jpg到比特节点i06bc9f10-e48c-11ed-ab56-dac502259ad0.jpg的外部信息表示为LLR:

06c79b68-e48c-11ed-ab56-dac502259ad0.png

从而有:

06cc6dc8-e48c-11ed-ab56-dac502259ad0.png

其中:

06dff082-e48c-11ed-ab56-dac502259ad0.png

运用关系式

06e8a9f2-e48c-11ed-ab56-dac502259ad0.png

于是得到:

06ede67e-e48c-11ed-ab56-dac502259ad0.png

或者,运用关系式

06f5ba7a-e48c-11ed-ab56-dac502259ad0.png

则有

06fe8c04-e48c-11ed-ab56-dac502259ad0.png

由于存在tanh和tanh-1函数的乘积,上述方程在数值上具有挑战性。

考虑Mj,i'其符号和大小(或bit值和bit可靠性):

0707267a-e48c-11ed-ab56-dac502259ad0.png

于是有

07104926-e48c-11ed-ab56-dac502259ad0.png

然后我们可以得到:

071657f8-e48c-11ed-ab56-dac502259ad0.png

上式产生了一种新的形式:

071d2b00-e48c-11ed-ab56-dac502259ad0.png

0721b8aa-e48c-11ed-ab56-dac502259ad0.png

每个比特节点都可以连接输入LLR,Li,以及每个连接的检查节点的LLR。第i位的总LLR就是这些LLR的和:

0729a07e-e48c-11ed-ab56-dac502259ad0.png

07357a02-e48c-11ed-ab56-dac502259ad0.png

对于所有的j,i,有Hj,i=1。因此,yi代表实际接收到的信道值,即不是有效值。对于不同的信道,Li可以计算:

BEC:

073ece2c-e48c-11ed-ab56-dac502259ad0.png

BSE:

07456156-e48c-11ed-ab56-dac502259ad0.png

BI-AWGNC:

0752c3f0-e48c-11ed-ab56-dac502259ad0.png

瑞利信道:

07591200-e48c-11ed-ab56-dac502259ad0.png

对数域和积译码算法总结如下:

075f5f5c-e48c-11ed-ab56-dac502259ad0.png

07698932-e48c-11ed-ab56-dac502259ad0.png

04

Min-Sum算法

Min-Sum算法是对数域和积译码算法的简化,主要考虑到和积译码算法在硬件实现上的复杂性,进而采用了一种近似算法。

077aa758-e48c-11ed-ab56-dac502259ad0.png

归一化最小和译码算法的实现采用分层置信传播算法,是对上式(4-26)的修正,乘一个取值范围0~1的缩放因子。

偏置最小和译码算法,则是在归一化最小和译码算法的基础上,减去一个偏置因子。





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 解码器
    +关注

    关注

    9

    文章

    1073

    浏览量

    40158
  • LDPC
    +关注

    关注

    1

    文章

    66

    浏览量

    30963
  • 5G
    5G
    +关注

    关注

    1340

    文章

    47808

    浏览量

    554324
  • 5G通信
    +关注

    关注

    4

    文章

    225

    浏览量

    20086
  • LDPC译码
    +关注

    关注

    0

    文章

    2

    浏览量

    1094

原文标题:5G通信算法:LDPC译码算法详解

文章出处:【微信号:HXSLH1010101010,微信公众号:FPGA技术江湖】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是Turbo 码的迭代译码算法?当前Turbo译码算法有哪些?有哪些形式的Turbo 码?

    什么是Turbo码的迭代译码算法?Turbo 码获得优异性能的第二个重要因素是应用了基于最大后验概率准则 (MAP) 的迭代译码算法。当前Turbo
    发表于 05-30 16:24

    基于FPGA的Viterbi译码算法该怎么优化?

    由于卷积码优良的性能,被广泛应用于深空通信、卫星通信和2G、3G移动通信中。卷积码有三种译码方法
    发表于 11-01 08:05

    如何利用5G WiFi波束成形和LDPC技术提高无线连接性能?

    如何利用5G WiFi波束成形和LDPC技术提高无线连接性能?
    发表于 05-21 06:37

    IEEE 802.16e中LDPC译码器的实现

    面向IEEE 802.16e 中 LDPC 码,分析了各种译码算法译码性能,归一化最小(NMS)算法具备较高
    发表于 08-05 08:46 24次下载

    基于LDPC译码软信息的迭代载波恢复

    基于LDPC译码软信息的迭代载波恢复:针对较低信噪比(≤2 dB)下载波恢复难题,该文提出了基于LDPC 软信息的迭代载波恢复算法。该算法
    发表于 10-29 13:03 18次下载

    基于可靠性更新的低复杂度B译码算法

    基于可靠性更新的低复杂度B译码算法:基于部分符号更新策略的BP (Belief Propagation)译码算法减少了LDPC (Low-D
    发表于 10-29 13:09 16次下载

    准循环LDPC码的两种典型快速译码算法研究

    该文从译码速率、硬件实现的复杂度和误码率3 个方面对比研究了两种典型的高速译码算法:Turbo 型和积算法与并行加权比特翻转算法。以准循环
    发表于 11-25 15:26 9次下载

    LDPC译码

    LDPC译码LDPC码是一种线性分组奇偶校验码,它采用基于因子图的置信传播(Belief Propagation,BP)迭代译码算法进行
    发表于 03-01 17:36 1841次阅读
    <b class='flag-5'>LDPC</b>编<b class='flag-5'>译码</b>

    基于最小和高效LDPC译码算法

    针对低密度奇偶校验(LDPC)译码算法性能低的问题,提出一种基于最小和的高效译码算法。该算法从概
    发表于 05-18 18:54 0次下载
    基于最小和高效<b class='flag-5'>LDPC</b><b class='flag-5'>译码</b><b class='flag-5'>算法</b>

    近地应用CCSDS标准LDPC码动态补偿译码算法研究

    提出了一种新的动态补偿最小和译码算法,并将本算法和修正最小和译码算法进行了性能比较。仿真结果显示,动态补偿最小和
    发表于 10-08 15:05 27次下载
    近地应用CCSDS标准<b class='flag-5'>LDPC</b>码动态补偿<b class='flag-5'>译码</b><b class='flag-5'>算法</b>研究

    LDPC码低复杂度译码算法研究

    在描述置信传播(BP)译码算法基础上, 研究和分析了两种降低复杂度的译码算法。Min.Sum 算法主要讨论了简化校验节点的消息更新运算,并应
    发表于 03-31 15:22 7次下载
    <b class='flag-5'>LDPC</b>码低复杂度<b class='flag-5'>译码</b><b class='flag-5'>算法</b>研究

    LDPC码的LLR BP算法研究

    LDPC译码时,使用LLR BP算法其校验节点的计算复杂度十分高,而且当LDPC码中有许多的短环时,译码性能也会降低。基于以上的这些问题提
    发表于 07-06 16:44 42次下载
    对<b class='flag-5'>LDPC</b>码的LLR BP<b class='flag-5'>算法</b>研究

    一种基于改进线性规划的LDPC码混合译码算法

    一种基于改进线性规划的LDPC码混合译码算法_陈紫强
    发表于 01-07 16:52 0次下载

    非规则LDPC译码改进算法概述及DSP的实现分析

    为了降低非规则低密度奇偶校验(low-densityparity-check,LDPC)码译码算法的复杂度,提出一种适合数字信号处理嚣(digital signal processor,DSP)实现
    发表于 10-20 10:41 0次下载
    非规则<b class='flag-5'>LDPC</b>码<b class='flag-5'>译码</b>改进<b class='flag-5'>算法</b>概述及DSP的实现分析

    求解LDPC码回路的算法

    1996年LDPC(低密度奇偶校验,Low-Density Parity-Check)码是性能限与香农限仅差0.0045 dB的一种差错控制码,译码采用SPA(和积算法),但其性能受Tanner图中
    发表于 12-26 11:09 0次下载