资源简介
MATLAB软件中,用于实现harq技术重传,已经通过测试,可以运行
代码片段和文件信息
function [soft_outex_info]=constituent_decoder_max(inapp)
%****************************************************************
% 内容概述:子译码器。
% 利用硬件化的方式实现TURBO码的MAX-LOG-MAP译码
% 生成矩阵按照3GPP标准为[1 1 0 1;1 0 1 1]
% 输入为经过高斯信道的RSC软输入,而输出为软输出和外部信息
% 创 建 人:朱殿荣/QQ:235347/MSN:njzdr@msn.com
% 单 位:南京邮电大学,通信工程系
% 创建时间:2005年7月23日
% 修改时间:2006年3月10日
% 参考文献:《数字通信--基础与应用》
% 《改进的Turbo码算法及其FPGA实现过程的研究》天津大学,张宁,赵雅兴
% K.K.Loo T.Alukaidey S.A.Jimaa “High Performance Parallelized
% 3GPP Turbo Decoder” Personal Mobile Communications
% Conference 2003. 5th European (Conf. Publ. No. 492)
% 版权声明:任何人均可复制、传播、修改此文件,同时需保留原始版权信息。
%****************************************************************
x=in(1:); %输入系统位
y=in(2:); %输入校验位
in_length=length(in);
%---初始化&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
Infty = -128;
d=zeros(82in_length); %分支量度,8种可能状态,输入为0或者1
%D(Sik)
a=Infty*ones(8in_length); %前向分支量度,A(Sk)
a(11)=0; %寄存器状态由全零开始
b=Infty*ones(8in_length+1);%后向分支量度,B(Sk)
b(1in_length+1)=0; %寄存器状态由全零结束
%---计算分支度量和LLR&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
for k=1:in_length
d(12k)=x(k)+y(k)+app(k);
d(22k)=d(12k);
d(72k)=d(12k);
d(82k)=d(12k);
d(32k)=x(k)+app(k);
d(42k)=d(32k);
d(52k)=d(32k);
d(62k)=d(32k);
d(31k)=y(k);
d(41k)=d(31k);
d(51k)=d(31k);
d(61k)=d(31k);
if k>1
a(1k)=max(a(1k-1)(a(2k-1)+d(22k-1)));
a(2k)=max((a(4k-1)+d(41k-1))(a(3k-1)+d(32k-1)));
a(3k)=max((a(5k-1)+d(51k-1))(a(6k-1)+d(62k-1)));
a(4k)=max(a(8k-1)(a(7k-1)+d(72k-1)));
a(5k)=max(a(2k-1)(a(1k-1)+d(12k-1)));
a(6k)=max((a(3k-1)+d(31k-1))(a(4k-1)+d(42k-1)));
a(7k)=max((a(6k-1)+d(61k-1))(a(5k-1)+d(52k-1)));
a(8k)=max(a(7k-1)(a(8k-1)+d(82k-1)));
end
if k==in_length
b(1k)=max(b(1k+1)(b(5k+1)+d(12k)));
b(2k)=max(b(5k+1)(b(1k+1)+d(22k)));
b(3k)=max((b(6k+1)+d(31k))(b(2k+1)+d(32k)));
b(4k)=max((b(2k+1)+d(41k))(b(6k+1)+d(42k)));
b(5k)=max((b(3k+1)+d(51k))(b(7k+1)+d(52k)));
b(6k)=max((b(7k+1)+d(61k))(b(3k+1)+d(62k)));
b(7k)=max(b(8k+1)(b(4k+1)+d(72k)));
b(8k)=max(b(4k+1)(b(8k+1)+d(82k)));
%计算LLR--------------------------------------
l(k)=max([...
(a(1k)+d(12k)+b(5k+1))(a(2k)+d(22k)+b(1k+1))...
(a(3k)+d(32k)+b(2k+1))(a(4k)+d(42k)+b(6k+1))...
(a(5k)+d(52k)+b(7k+1))(a(6k)+d(62k)+b(3k+1))...
(a(7k)+d(72k)+b(4k+1))(a(8k)+d(82k)+b(8k+1))...
])-max([...
(a(1k)+b(1k+1))(a(2k)+b(5k+1))...
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-03-04 13:51 delay-of-relay-HARQ\
文件 4645 2006-04-09 11:29 delay-of-relay-HARQ\constituent_decoder_max.m
文件 756 2008-10-12 13:14 delay-of-relay-HARQ\CrcDecode.m
文件 569 2012-06-19 03:14 delay-of-relay-HARQ\CrcEncode.m
文件 1734 2009-07-08 17:44 delay-of-relay-HARQ\decoder_all_algorithm.m
文件 11596 2011-06-16 23:17 delay-of-relay-HARQ\different_yima_CQI_menxian.m
文件 1050 2006-03-10 08:59 delay-of-relay-HARQ\encode_bit.m
文件 2796 2011-06-14 14:47 delay-of-relay-HARQ\encoderm.m
文件 3944 2006-04-09 10:55 delay-of-relay-HARQ\interleaver_3GPP.m
文件 13465 2011-06-21 13:00 delay-of-relay-HARQ\main.m
文件 704 2008-07-12 20:07 delay-of-relay-HARQ\QpskInverseMapping.m
文件 1533 2011-02-04 14:09 delay-of-relay-HARQ\QpskMapping.m
文件 467 2008-10-06 09:11 delay-of-relay-HARQ\RayleighCH.m
文件 1860 2012-06-12 19:49 delay-of-relay-HARQ\rsc_encode.m
文件 1063 2011-06-14 17:12 delay-of-relay-HARQ\turbo.m
评论
共有 条评论