⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main_stbc_44.asv

📁 stbc在2发2收
💻 ASV
字号:
% 16qam  64qam ; t4*r4系统; 码率= 3/4;
% 添加定点dsp仿真

clear
clc
global Time_length Ofdm_bits Tx_num Rx_num Mod_type table16 table64
global Max_bit_num Max_value Min_value Max_add_value scale_eff st2
snr_min=0;
snr_max=35;
stepsize = 2.5;
Ofdm_bits = 100;       %一个ofdm符号长度
Mod_type = 6;           %qam调制 4=16qam;

%------------------------仿真参数设定-------------------------------------%
Max_bit_num = 8;
scale_eff = 3;           % 加法器缩放系数
Max_value = 2^(Max_bit_num-1);  % Max_value = 2^15
Min_value = -Max_value;
Max_add_value = 2^(2*Max_bit_num-1);

star_index_length = 16;
Tx_num = 4;             %发送天线个数(4)
Rx_num = 4;
Time_length = 4;
pqam_length = Ofdm_bits*Mod_type;

%-------------------------------------------------------------------------%
j=sqrt(-1);
st2 = sqrt(2);
st2 = fix(st2*Max_value)/Max_value;
qam_scale = sqrt(10);
ch_scale = sqrt(4);  % Tx_num = 4
qam_scale = fix(qam_scale*Max_value)/Max_value;
ch_scale = fix(ch_scale*Max_value)/Max_value;
%------------------产生信号源------------------------%
sig_code = zeros(Tx_num,pqam_length);
sig_code = randint(Tx_num-1,pqam_length);
sig_code(4,:) = sig_code(3,:); 
stbc_code = qam_mod(sig_code);


%-----------------------迭代开始 信噪比 由小到大-----------------------------------%
table16 = fix(table16*Max_value);
table64 = fix(table64*Max_value*127/138);
iterative_length = 0;
for snr_db_step =snr_min:stepsize:snr_max    % 信噪比从snr_min--snr_max
    iterative_length = iterative_length+1
    demap_out = zeros(Tx_num,pqam_length);
    demap_int = stbc_decode44(stbc_code,snr_db_step);
demap_out = qam_demod(demap_int);

error_ratio = err_staric(sig_code,demap_out);
    e_record(iterative_length) = error_ratio;
end % snr_db_step =snr_min:snr_max 

xanxis = snr_min:stepsize:snr_max;
if Mod_type == 4
    semilogy(xanxis,e_record,'r*-'); 
elseif Mod_type == 6
        semilogy(xanxis,e_record,'ro-');  
    end
end
grid on;
hold on;








⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -