多进制LDPC—EMS译码算法

通过对EMS算法的详细分析可以发现,消息向量之间的运算只保存部分最大值运算结果,而且运算过程中只需要根据数值之间大小比较的结果做出判决。决定译码结果的是消息向量中数值之间的相对大小,消息向量中单个值的大小并不影响译码结果。初始消息也一样,即[L[0],......,L[q-1]]与[L[0]-M,......,L[q-1]-M]作为初始消息向量是等效的。

EMS算法步骤:

1.初始化分为3步   a. 根据接收消息计算消息向量的LLR向量L[k],k={0.q-1}。 b. 对向量L进行排序,按降序排列为Ls。c. 对Ls向量整体减去Ls[0],排序后Ls[0]为向量中的最大值。Ls都减去Ls[0]后,初始值向量中除了Ls[0]=0外其余取值均为负值。 注意:在排序的过程中,向量中每一个分量对应的与元素,即索引值,要根据排序过程做出相应位置的改变。

2. 置换步骤  U[a]=U[j],其中a=h*j,其中h是校验方程中矩阵H对应位置的取值。h为非零元素。

校验节点更新采用前向-后向过程。EMS译码算法中变量节点和校验节点的更新都采用前向-后向运算过程,只是他们的单步运算实现过程不同。

3. 校验节点更新   校验节点的更新实际上是一个搜索最大值的过程。设向量A和B为单步运算的两个输入消息变量,其值按降序排列。AB为运算结果,相对应的与元素分别为Aq,Bq, ABq。单步运算的结果为:AB[i]=max(A[p]+B(j))。输出结果向量AB为降序排列,且ABq中的域元素各不相同。具体的排序算法如下:


                
  • 7
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 23
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值