资源简介
OFDM仿真中采用循环码(论文附录)、汉明码(m文件中)两种编码方式,采用QPSK调制解调,高斯信道,包含仿真的各种结果图,代码中包含注释,峰均比抑制方式采用限幅法的一种(中频噪声成形),压缩包中为完整的m文件和论文
代码片段和文件信息
clear all; clc; close all;
carrier=52;
numb_ifft=100;
numb_cp=25;
symb_ofdm=6;
bit_symb=2;
snr=15;
symbol_rate=250000;
bit_rate=symbol_rate.*bit_symb;
sum_bit=carrier*symb_ofdm*bit_symb;
MAX_SYMBOLS= 6;
ITERATE_NUM=2
PAPR_Orignal = zeros(1MAX_SYMBOLS); %%记录每个OFDM符号的PAPR,原始的
PAPR_NS = zeros(ITERATE_NUMMAX_SYMBOLS); %经过NS算法的
for nSymbol=1:MAX_SYMBOLS
signal=rand(1sum_bit)<0.5;
figure(1)
subplot(211)
plot(signal)
xlabel(‘time‘)
ylabel(‘amplitude‘)
grid on %********完成待传数据*******
%%%%%循环码信源编码
m = 3;
n = 2^m-1; %定义码长
k = n-m; %信息位长
p=cyclpoly(nk) %循环码生成多项式,n=7,k=4
code = encode(signalnk‘cyclic‘p); %编码函数,对信号进行差错编码
signal_p=reshape(code9112);%*****实现串并转换**
for k=1:carrier+39
for n=1:bit_symb*symb_ofdm/2
imp=signal_p(k2*n);
rlp=signal_p(k2*n-1);
if(imp==0)&&(rlp==0)
d(kn)=exp(i*5*pi/4);
end
if(rlp==0)&&(imp==1)
d(kn)=exp(i*3*pi/4);
end
if(rlp==1)&&(imp==0)
d(kn)=exp(i*7*pi/4);
end
if(rlp==1)&&(imp==1)
d(kn)=exp(i*pi/4);
end
end
end
sci=real(d);
scq=imag(d);
figure(2)
for m=1:bit_symb*symb_ofdm/2
scatter(sci(:m)scq(:m)‘r‘)
hold on
grid on %****完成QPSK调制****
end
QPSKdata=reshape(d1546);
% 降低峰均比
K = length(QPSKdata); % SIZE OF OFDM Symbol
IF = 2; % Interpolation factor (Oversampling factor)
Nf = K*IF;
CR=4;
% SIZE OF FFT
ITERATE_NUM = 2; %限幅次数
Index = randi(length(QPSKdata)-11K)+1; %随机生成QPSK的相位的序号,比如1表示12表示-1,3表示j
X =QPSKdata(Index(1:)); %原始信号的相位(频域)
XX = [X(1:K/2) zeros(1Nf-K) X(K/2+1:K)];
x = ifft(XX[]2); % 时域的信号xk
Signal_Power = abs(x.^2); %计算信号功率
Peak_Power = max(Signal_Power[]2); %求最大功率
Mean_Power = mean(Signal_Power2); %求平均功率
PAPR_Orignal(nSymbol) = 10*log10(Peak_Power./Mean_Power); %信号的PAPR
for nIter=1:ITERATE_NUM
% 限幅
x_orig=x;%延迟匹配原始信号
x_tmp = x(Signal_Power>CR*Mean_Power); %削波限幅
x_tmp = sqrt(CR*Mean_Power)*x_tmp./abs(x_tmp);
x(Signal_Power>CR*Mean_Power) = x_tmp;
nois=x_orig-x;%匹配延时减去一次限幅,噪声信号
% > 噪声程序滤波器
XX = fft(nois[]2);
XX(K/2+(1:Nf-K)) = zeros(1Nf-K); %滤波
noise_filter = ifft(XX[]2);
x=x_orig-noise_filter ;%从原始信号中,消去限幅信号
% 计算NS算法后的PAPR
dout=[x(1:K/2) x(K/2+K+1:2*K)]
Signal_Power = abs(x.^2);
Peak_Power = max(Signal_Power[]2);
Mean_Power = mean(Signal_Power2);
PAPR_NS(nIternSymbol) = 10*log10(Peak_Power./Mean_Power);
end
houd=reshape(dout916);
ifft_signal=ifft(houdnumb_ifft);
ifft_rlsig=real(ifft_signal);
ifft_imsig=imag(ifft_signal);
ifft_signal_con=ifft_signal‘;
figure(3)
for f=1:symb_ofdm
subplot(23f)
plot(0:numb_ifft
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 737151 2018-11-08 12:07 移动通信课设.docx
文件 6483 2018-11-05 20:32 Uzaoshengchengxing.m
相关资源
- 基于自适应压扩法降低OFDM系统的峰均
- 链路预算模型及matlab实现.zip
- OFDM系统MATLAB仿真.zip
- 多份OFDM仿真的MATLAB仿真代码,以及相
- 完整LTE下MIMO OFDM仿真
- matlab建蜂窝小区
- 基于 802.11a 的 OFMD 仿真实验 MATLAB 实现
- MIMO-OFDM无线通信技术及MATLAB实现中文
- 基于MATLAB的移动通信信道建模与仿真
- 2019_OFDM仿真源代码_Matlab_附解释_完整
- OFDM仿真的星座图
- MIMO-OFDM无线通信matlab代码
- OFDM峰均比经典算法matlab程序.rar
- 基于MATLAB的OFDM系统仿真及峰均比抑制
- 基于MATLAB的OFDM系统仿真及峰均比抑制
- OFDM峰均比限幅clipping抑制matlab仿真程
- 利用pts降低papr的matlab代码
- OFDM仿真(多径瑞利信道).rar
- 降低OFDM峰均比的matlab仿真
- OFDM中降低峰均比的PTS算法
- 降低峰均比的PTS程序
- matlabcode(与瑞利信道相关的OFDM仿真)
- MIMO_OFDM.m
- GMSK matlab仿真代码
-
ofdm仿真simuli
nk - ACE算法降低OFDM系统降低峰均比
- multipath_code.zip 试设计一完整的移动通
- 多径衰落信道下OFDM仿真原创-constell
评论
共有 条评论