MATLAB代做  | MATLAB代寫  | MATLAB有償編程
首 頁
當前位置:MATLAB代做|MATLAB代寫|MATLAB有償編程matlab源碼信號處理
淘寶畢業編程-TURBO碼的MATLAB源程序        [↓跳到下載地址]
官方主頁:源碼共享網站:www.kggbzb.tw

聯系方式:客服QQ:1747812398 買代碼源碼軟件站,歡迎咨詢

運行環境:Win9X/2000/XP/2003/

源碼語言:簡體中文

源碼類型:源碼程序 - 信號處理

推薦星級:

更新時間:2016-04-03 08:55:47

源碼簡介

function [out,alphaout]=turbo_mother_interleave(in);
% turbo編碼器
% in 為輸入序列,0 1。
g=[1 0 1 1;
   1 1 0 1;];

% 生成矩陣1+d^2+d^3
%        1+d+d^3
% 3GPP標準生成矩陣
[n,K]=size(g);
m=K-1;
nstates=2^m;
%確定狀態數目
puncture=1;
%是否刪余 1 不刪 0 刪
rate=1/(2+puncture);
%編碼率
seq_temp=1:1:length(in);
alpha=interleaving_3GPP(seq_temp)
%得到3GPP標準交織器
en_output=encoderm_mother_interleave(in,g,alpha,puncture);
%編碼
alphaout=alpha;
% 交織器輸出
out=en_output;
% 編碼輸出

function [out,alphaout]=turbo(in);
% turbo編碼器
% in 為輸入序列,0 1。
g=[1 0 1 1;
   1 1 0 1;];

% 生成矩陣1+d^2+d^3
%        1+d+d^3
% 3GPP標準生成矩陣
[n,K]=size(g);
m=K-1;
nstates=2^m;
%確定狀態數目
puncture=1;
%是否刪余 1 不刪 0 刪
rate=1/(2+puncture);
%編碼率
a=0.8862;
% 信道衰減因子
L_total=length(in)+m;
%幀長
mycount=6;
% 循環迭代次數。
[temp,alpha]=sort(rand(1,L_total));
%得到隨機交織器
en_output=encoderm(in,g,alpha,puncture);
%編碼
alphaout=alpha;
% 交織器輸出
out=en_output;
% 編碼輸出

function out=trellis_simple(in_s,state)

if state==1
    if in_s==-1
        out=-1;
    else
        out=1;
    end
end
if state==2
    if in_s==-1
        out=-1;
    else
        out=1;
    end
end

if state==3
    if in_s==-1
        out=1;
    else
        out=-1;
    end
end

if state==4
    if in_s==-1
        out=1;
    else
        out=-1;
    end
end

clear;
clc;
time_begin=datestr(now);
rate=1/3;           %碼率
m=3;                    %尾比特數
fading_a=1;             %Fading amplitude
snr=0:0.2:2.4;                            %snr的采樣點
EbNoLinear=10.^(snr.*0.1);
iter=[1 2 3 6];                                %迭代次數
ferrlim=10;                              %誤幀限,達到此限即可停止當前SNR點的測試
%num_frame=round(10.^(snr+1));           %測試的幀數;
num_block_size=1024;                    %測試的塊尺寸,指包含尾比特的軟輸入系統系列長度
err_counter=zeros(max(iter),length(snr));        %初始化錯誤比特計數器
nferr= zeros(max(iter),length(snr));             %初始化錯誤幀計數器
ber=zeros(max(iter),length(snr));                 %初始化錯誤比特率

random_in=round(rand(1,num_block_size-m));  %隨機數
[turbod_out,alphain]=turbo(random_in);      %編碼

for ii=1:length(iter)
    for nEN=1:length(snr)
        L_c=4*fading_a*EbNoLinear(nEN)*rate;
        sigma=1/sqrt(2*rate*EbNoLinear(nEN));
        nframe = 0;    % clear counter of transmitted frames
        if nEN==1 | ber(iter(ii),nEN-1)>9.0e-6
            while nferr(iter(ii),nEN)<ferrlim        %nferr:當前迭代次數、snr點的錯誤幀數
                nframe = nframe + 1;
                noice=randn(3,num_block_size);    %噪聲
                soft_in=L_c*(turbod_out+sigma*noice);            %信息噪聲疊加
                [hard_out,soft_out]=deturbo_cap(soft_in,alphain,iter(ii)); %譯碼
                errs=length(find(hard_out(1:num_block_size-m)~=random_in));%當前點錯誤bit數
                if errs>0
                    err_counter(iter(ii),nEN)=err_counter(iter(ii),nEN)+errs;
                    nferr(iter(ii),nEN)=nferr(iter(ii),nEN)+1;
                end
            end
            ber(iter(ii),nEN) = err_counter(iter(ii),nEN)/nframe/(num_block_size-m);%誤比特率
            %fer(iter,nEN) = nferr(iter,nEN)/nframe; %誤幀率
        else
            ber(iter(ii),nEN)=1.0e-7;
        end
        fprintf('迭代次數:%1.0f;snr:%1.2f;誤碼率:%8.4e;\n',...
            iter(ii),snr(nEN),ber(iter(ii),nEN));
        save cap算法06_WYF噪聲_max_log_map.mat snr ber;
    end
end
semilogy(snr,ber(1,:),snr,ber(2,:),snr,ber(3,:),snr,ber(6,:));
xlabel('SNR(dB)');
ylabel('Bit Error Rate');
title('3GPP標準 max-log-map譯碼算法 譯碼性能圖,1024交織長度,WYF噪聲加法');
legend('1次迭代','2次迭代','3次迭代','6次迭代');

time_end=datestr(now);
disp(time_begin);
disp(time_end);


提 示:本站所有源碼只提供瀏覽,需要定制的朋友可以聯系在線客服!
注意:價格根據項目的難易程度來定價格業務咨詢

淘寶畢業編程-TURBO碼的MATLAB源程序 --下載地址

注意:為避免不必要的誤會,本站項目里的源碼只公開部分需要的聯系在線客服

本站長期招聘程序代寫高手,歡迎加入華南地區matlab團隊

想創業卻沒有經驗的人

無論你是否有過網上開店的經驗,都可以隨時聯系在線客服,建立自己獨立的網站
想開網店卻不知道如何入手

淘寶創業成本低而且風險小,如果想開淘寶店的朋友可以聯系在線客服。
想兼職創業,卻不擅長交際與服務的人

在家創業月入5000元。網站程序+百套群發工具+網賺資料+域名+空間+本站終身代理資格,這樣你網賺的條件全具備了。每天3小時管理、推廣、收錢。
缺乏能快速贏利型產品的人

導入多種最新流行營銷軟件+網賺教程,讓入駐者輕松加盟、復制有效成交技巧、快速賺錢。

源碼評論評論內容只代表網友觀點,與本站立場無關!

   評論摘要(共 0 條,得分 0 分,平均 0 分) 查看完整評論

瀏覽說明

* 本站所有源碼全部公開,隨時隨地瀏覽!
* MATLAB軟件如用于商業用途,請購買正版!
* 如果您發現下載鏈接錯誤,請點擊報告錯誤謝謝!
* 站內提供的所有軟件包含破解及注冊碼均是由網上搜集,若侵犯了你的版權利益,敬請來信通知我們!
Copyright © 2008-2014 www.kggbzb.tw. All Rights Reserved.
頁面執行時間:265.62500 毫秒
安微25选5开奖号