• 大小: 1.65MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-31
  • 语言: Matlab
  • 标签:

资源简介

MIMO OFDM Simulator: OFDM.m: OFDM Simulator (outer function) create_channel.m: Generates a Rayleigh fading frequency-selective channel, parametrized by the antenna configuration, the OFDM configuration, and the power-delay profile. svd_decompose_channel.m: Since full channel knowledge is assumed, transmission is across parallel singular value modes. This function decomposes the channel into these modes. BitLoad.m: Apply the bit-loading algorithm to achieve the desired bit and energy allocation for the current channel instance. ComputeSNR.m: Given the subcarrier gains, this simple function generates the SNR values of each channel (each singular value on each tone is a separate channel). chow_algo.m: Apply Chow's algorithm to generate a particular bit and energy allocation. EnergyTableInit.m: Given the SNR values, form a table of energy increments for each channel. campello_algo.m: Apply Campello's algorithm to converge to the optimal bit and energy allocation for the given channel conditions. ResolvetheLastBit.m: An optimal bit-loading of the last bit requires a unique optimization. modulate.m: Modulate the random input sequence according to the bit allocations for each channel. ENC2.mat: BPSK Modulator ENC4.mat: 4-QAM Modulator (Gray coded) ENC16.mat: 16-QAM Modulator (Gray coded) ENC64.mat: 64-QAM Modulator (Gray coded) ENC256.mat: 256-QAM Modulator (Gray coded) precode.m: Precode the transmitted vector at each time instance by filtering the modulated vector with the right-inverse of the channel's right singluar matrix. ifft_cp_tx_blk.m: IFFT block of the OFDM system. channel.m: Apply the channel to the OFDM frame. fft_cp_rx_blk.m: FFT block of the OFDM system. shape.m: Complete the diagonalization of the channel by filtering the received vector with the left-inverse of the channel's left singular matrix. demodulate.m: Perform a nearest neighbor search knowing the transmit constellation used.

资源截图

代码片段和文件信息

function [transmit_signal training] = add_training(transmit_signalPrefixRatio...
    N_subcN_used Idx_usedcp_len N_Tx_antN_tran_sym)

% 1024点FFT的前导序列
% 多条天线的训练序列(同步帧)各两个OFDM符号
training = zeros(N_subcN_tran_symN_Tx_ant);
% 产生伪随机序列,放在训练OFDM符号的导频位置.
PN_seq = mseq(10 [1 2 6 10] ones(110) N_Tx_ant*3);
PN_seq = 2*PN_seq - 1;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 产生第1个训练OFDM符号
Repeat = 8; % 为保证在时域上重复Repeat次 在频域上两个有数据的子载波间插(Repeat-1)个零
for ant = 1:N_Tx_ant
    real_part = PN_seq( (ant-1)*N_Tx_ant + 11:N_used/Repeat ); % 截取PN序列
    imag_part = PN_seq( (ant-1)*N_Tx_ant + 21:N_used/Repeat );
    
    tran_tmp1 =  sqrt(Repeat/2) * ( real_part + j * imag_part );
    tmp1 = [ tran_tmp1 ; zeros(Repeat-1N_used/Repeat) ];
    tmp2 = reshape(tmp1 N_used 1);
    tmp3 = [ tmp2(1:N_used/2) ; flipud(tmp2(N_used/2 + 1:end))];
    training(Idx_used1ant) = tmp3;
end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 产生第2个训练OFDM符号 在偶数的子载波上放伪随机序列

Repeat = 2;
for ant = 1:N_Tx_ant
    tran_tmp1 = PN_seq( 2*N_Tx_ant + ant1:N_used/Repeat ); % 截取PN序列    
    tmp1 = [ tran_tmp1 ; zeros(Repeat-1N_used/Repeat) ];
    tmp2 = reshape(tmp1 N_used 1);
    tmp3 = [ tmp2(1:N_used/2) ; flipud(tmp2(N_used/2 + 1:end))];
    training(Idx_used2ant) = tmp3;
end


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 产生时域训练序列

syn_frame = sqrt(N_subc) * ifft( fftshift( training  1 ) );
cp = syn_frame(N_subc - cp_len + 1:N_subc ::);
training_frame = [cp;syn_frame];
training_frame = reshape(training_frame[1 (N_subc + cp_len)*N_tran_sym N_Tx_ant]);

transmit_signal = [ training_frame transmit_signal ];


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1908  2004-04-06 12:20  LTE\add_training.m

     文件       6578  2009-07-27 12:34  LTE\adpt_mod_para.asv

     文件       6578  2009-07-27 12:37  LTE\adpt_mod_para.m

     文件       1386  2004-04-06 12:16  LTE\demodulator.m

     文件       3027  2004-03-23 15:57  LTE\demodu_sym.m

     文件        780  2009-07-28 11:44  LTE\gausnoise.m

     文件       6062  2009-07-28 15:09  LTE\main.asv

     文件       6094  2009-07-30 18:24  LTE\main.m

     文件       2874  2009-07-27 22:24  LTE\modulator.asv

     文件       2874  2009-07-27 22:27  LTE\modulator.m

     文件       2138  2009-07-27 22:24  LTE\modu_sym.asv

     文件       2138  2009-07-27 22:27  LTE\modu_sym.m

     文件       1241  2004-04-05 13:36  LTE\mseq.m

     文件       1102  2009-07-27 18:34  LTE\ofdm_demod.asv

     文件       1123  2009-07-28 09:15  LTE\ofdm_demod.m

     文件       1415  2009-07-27 22:14  LTE\ofdm_mod.asv

     文件       1415  2009-07-27 22:18  LTE\ofdm_mod.m

     文件        497  2009-07-28 15:25  LTE\performance_eval.m

     文件        491  2009-07-27 18:05  LTE\pilot_insert.m

     文件    1713109  2009-08-03 18:52  LTE\saved_data.mat

     文件       1010  2009-07-27 22:49  LTE\stbc_code_TX.asv

     文件       1010  2009-07-27 22:49  LTE\stbc_code_TX.m

     文件       1303  2009-07-28 10:54  LTE\stbc_decode_TX2RX2.asv

     文件       1305  2009-07-28 10:59  LTE\stbc_decode_TX2RX2.m

     文件       1576  2009-07-27 22:49  LTE\st_coding.asv

     文件       1576  2009-07-27 22:49  LTE\st_coding.m

     文件       2755  2009-07-28 09:49  LTE\st_decoding.asv

     文件       2818  2009-07-28 10:06  LTE\st_decoding.m

     文件       1283  2009-07-27 11:23  LTE\user_bit_gen.m

     目录          0  2009-08-03 18:59  LTE

............此处省略5个文件信息

评论

共有 条评论

相关资源