2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > LDPC的密度进化 density evolution

LDPC的密度进化 density evolution

时间:2023-12-09 13:22:29

相关推荐

LDPC的密度进化 density evolution

一般译码和密度演进流程分析:

密度进化是对PDF的传递,其threshold是对迭代后的PDF求积分,求出BER后的判断——是否达到设定的BER需求。所以中间迭代的值都是PDF函数(高斯近似理论中,因为AWGN信道的LLR值呈现N(mu,2mu)的分布,所以也假设中间迭代的PDF统计结果依然符合N(mu,2mu)的分布,迭代过程中的PDF使用均值进行计算就可以简化,而EXIT图是基于迭代后的分布的互信息的计算求得)。

规则码的变量和校验节点更新步骤中参与的节点数目都相等,所以更新中PDF的卷积次数相同;不规则码的变量和校验节点更新步骤中参与的节点数目不相等,所以要根据度分布多项式来求迭代后的平均值。

AWGN信道中,变量节点更新时,是高斯变量(LLR)的求和过程,即PDF函数卷积,卷积后的分布均值为参与卷积的PDF均值之和,方差也为PDF方差之和,所以变量节点的更新过程将更新后的PDF均值幅值变大,方差也变大。

校验节点更新时,通过对box-plus 运算的仿真,发现更新后的PDF均值幅度变小,方差也变小。

所以VNU CNU之间迭代时,不断地在对迭代后的PDF进行方差和均值的修正,努力使BER达到threshold。

那么,可不可以从这点出发找到使得BER快速趋于0的PDF运算,然后反向操作找到对应的improved译码过程?)

密度进化流程

(1)设定参数:

给定当前码字,密度进化是在无环假设下进行的根据稀疏校验矩阵度分布进行的 所传递PDF的迭代,所以码字由度分布确定,规则码由度分布常量表示,不规则码由度分布多项式表示;设定目标,即当前码字设计在其工作环境下的ber;信道参数,可以是BEC的删除概率,可以是BSC的转移概率,可以是AWGN的噪声方差,通过调整信道参数来求得满足要求的ber下的信道参数阈值;

(2)迭代步骤:

连续密度进化推导

离散密度进化推导

Regular Density Evolution version 0.1.1

Copyright (C) by Andrew W. Eckford

实现方法:

This package contains MATLAB scripts which implement Richardson and Urbanke's density evolution technique to find the ultimate performance of LDPC codes in memoryless channels.

实现内容:

量化规则LDPC和非规则LDPC的密度进化,当量化步长无限小的时候,也就是Bi-AWGN信道输出时的密度进化了吧。

本代码是基于Richardson and Urbanke2001年发表的IT文章进行的实现——The Capacity of Low-Density Parity-Check Codes Under Message-Passing Decoding,下文提到的box-plus离散算法是他们在CL中提出的——On the Design of Low-Density Parity-Check Codes within 0.0045 dB of the Shannon Limit。

使用例子:

例1:二元对称信道,转移概率8.394%,规则LDPC

% 量化信道输入,输入幅度划分为6001等份chan = zeros(1,6001); % chan(3000)为0均值点,所以chan(3240)是正确概率,chan(2762)是错误转移概率chan(3240) = 91.606; % 注意这里是离散的PMF,概率质量函数,所以sum(value*interval)=1chan(2762) = 8.394;% 量化输入的数据格式,此格式为将输入映射到[-30,30]区间,6000等份量化ext = [-30 0.01 6001];% 中间校验节点复杂函数的量化,后续待研究mapping = [-10 0.0002 50000];% 变量节点重量dv = 3;% 校验节点重量dc = 6;% 迭代次数,在此信道下,该码经过100多次迭代可以达到10^-6的错误率,与 The Capacity of Low-Density Parity-Check Codes Under Message-Passing Decoding 中Table I的结论对应iter = 200;% 目标ber (不断改变DE条件,使得输出的threshold逼近目标)stop_pe = 1e-6;% 函数调用result_pe = de_regular(chan,iter,ext,mapping,stop_pe,dv,dc)% 输出result_pe =0.0839 0.0788 0.0756 0.0730 0.0710

例2:二输入对称AWGN输出信道,规则LDPC

chan = zeros(1,6001);ext = [-30 0.01 6001];% LLR input quantization mapping = [-10 0.0002 50000];% 内部迭代计算PDF时的量化(离散计算) quantizaiton for check node valuesdv = 3;dc = 6;iter = 20;stop_pe = 1e-5;% squre root of variance for Guassnoise=1.0; % 高斯信道的量化,用补误差函数erfc()计算量化值chan=chan_mess(ext,noise);result_pe = de_regular(chan,iter,ext,mapping,stop_pe,dv,dc)

例3 : 二输入对称AWGN输出信道,非规则LDPC

ext = [-30 0.01 6001]; mapping = [-10 0.0002 50000];iter = 100;stop_pe = 1e-5; % 度分布多项式vard(1,:)=[0 0.2895 0.3158 0 0 0.3947];chkd(1,:)=[ 0 0 0 0 0 0.9032 0.0968];% squre root of variance for Guass % 噪声从低到高,步长为ns_stp, 逐步试出符合stop_pe的thresholdns_str_low=0.9; ns_str_high=0.94;ns_stp=0.01; % 包括了信道信息的统计 threshold=threshold_tst(vard,chkd,ns_str_low,ns_str_high,ns_stp,ext,mapping,iter,stop_pe);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。