?? deturbo_new.m
字號(hào):
function [hard_out,soft_out]=deturbo_new(in,alphain)
%****************************************************************
% 內(nèi)容概述:turbo解碼器,in是RSC編碼器輸出
% 與一般的解碼器相比,這個(gè)子解碼器多出了對(duì)是否第一個(gè)子解碼器的判斷
% 如果是第一個(gè)子解碼器,輸出的外部信息中包含了輸入系統(tǒng)信息比特
% 提供給第二個(gè)子解碼器使用時(shí)不需要將系統(tǒng)位刪除,只需和后驗(yàn)信息
% 一同交織后交給第二個(gè)子解碼器,這樣就省掉了專門需要對(duì)系統(tǒng)信息進(jìn)行的交織!!
% 利用硬件化的方式實(shí)現(xiàn)TURBO碼的p-MAX-LOG-MAP譯碼
% 生成矩陣按照3GPP標(biāo)準(zhǔn)為[1 1 0 1;1 0 1 1]
% 未使用另外一個(gè)譯碼器反饋的外部信息
% 輸入為經(jīng)過高斯信道的RSC軟輸入,而輸出為軟輸出
% 創(chuàng) 建 人:朱殿榮/QQ:235347/MSN:njzdr@msn.com
% 單 位:南京郵電大學(xué),通信工程系
% 創(chuàng)建時(shí)間:2005年7月18日
% 修改時(shí)間:
% 參考文獻(xiàn):《數(shù)字通信--基礎(chǔ)與應(yīng)用》
% 《High performace parallelised 3GPP Turbo Decoder》
% 《改進(jìn)的Turbo碼算法及其FPGA實(shí)現(xiàn)過程的研究》,天津大學(xué),張寧,趙雅興
% 版權(quán)聲明:任何人均可復(fù)制、傳播、修改此文件,同時(shí)需保留原始版權(quán)信息。
%****************************************************************
L_seq=length(in);
in1=in(1:2,:);
in2(1,:)=in(1,alphain);
in2(2,:)=in(3,:);
iter_lim=1; % 迭代次數(shù)
for it=1:iter_lim
%---component decoder1
is_com1=1;
if it==1
a_p1(1:L_seq)=0;
[so1,ep1] = com_decoder_new(a_p1,in1,is_com1);
else
a_p1(alphain)=ep2;
[so1,ep1] = com_decoder_new(a_p1,in1,is_com1);
end
%---component decoder2
is_com1=0;
a_p2=ep1(alphain);
[so2,ep2] = com_decoder_new(a_p2,in2,is_com1);
end
% 解碼結(jié)束,輸出--------------------
soft_out(alphain)=so2;
for i=1:L_seq
if soft_out(i)>=0
hard_out(i)=1;
else
hard_out(i)=-1;
end
end
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -