无线通信与编码实验 您所在的位置:网站首页 峰值平均功率比的概念 无线通信与编码实验

无线通信与编码实验

#无线通信与编码实验| 来源: 网络整理| 查看: 265

在这里插入图片描述

MATLAB实现OFDM系统降峰均比

(峰值-平均功率比 Peak to Average Power Ratio, PAPR)

在OFDM系统中,经过IFFT运算之后所有的子载波相加,时域的发射信号会有很高的峰值。与单载波系统相比,OFDM系统具有很高的PAPR。高PAPR既降低了发射机功率放大器的效率,也降低了数/模转换器和模/数转换器的信号量化噪声比(SQNR),是OFDM系统中最不利的因素之一。

PAPR太高会导致一些问题:

增大峰值功率:OFDM系统的高PAPR会导致时域信号存在很高的峰值功率,这会导致在发射过程中需要更大的功率放大器,增加了系统的成本和能耗。 减小功率放大器的工作范围:由于峰值功率很高,OFDM系统的功率放大器的工作范围被限制在高功率区域,这可能导致功率放大器的非线性失真增加,从而引起误码率的增加。 多径信道中的失真:高PAPR的信号更容易受到多径信道的影响,因为多径信道会导致不同的子载波在接收端相位和幅度不同,从而导致码间干扰(ICI)和峰坑失真(PMD)等问题。 信号峰值过高导致了动态范围不足:当信号峰值过高时,ADC(模数转换器)或DAC(数字模拟转换器)的动态范围可能不足以表示整个信号,从而导致失真或降低解调性能。

(待补充)

峰值-平均包络功率比(PMEPR)是复基带信号包络的最大功率与平均功率之比

峰值包络功率(PEP)是复基带的最大功率,在平均功率归一化的条件下,PMEPR等于PEP

峰值-平均功率比(PAPR)是复通频带信号的最大功率与最小功率之比

峰值-平均功率比(PAPR)是一种衡量复通信号功率分布不均匀性的指标,其定义式为: 在这里插入图片描述

其中, s ( t ) s(t) s(t) 是一个周期为 T T T 的连续时间复信号, ∣ s ( t ) ∣ max ⁡ |s(t)|_{\max} ∣s(t)∣max​ 是其幅度的最大值。PAPR 越大,表示信号功率分布越不均匀,需要更大的动态范围才能传输信号,这会增加传输的复杂性和成本。

OFDM系统中需要采用一些技术来控制PAPR,以改善系统性能,例如:部分传输序列(Partial Transmit Sequence, PTS)、选择性 mapping、幅度调制和调制指数优化等。

限幅方法是最简单的PAPR减小(无法完全解决)方法,它把发射信号的最大幅度限制在一个预先指定的水平,但是它具有一些缺点:

限幅会引起带内信号失真:限幅会将信号的动态范围缩小,可能导致信号失真和码间干扰,从而使BER性能下降限幅会引起带外辐射,从而导致对邻道的干扰对限幅的信号滤波可以降低带外辐射,但这会使峰值再次增大,使得滤波后的信号可能超过限幅规定的限幅电平 % PDF_of_clipped_and_filtered_OFDM_signal.m % 高版本matlab应该都可以正常运行 clear,clc CR = 1.2; %限幅比:限幅点平与OFDM信号RMS之比 b=2; % 每一QPSK符号的比特数 N=128; % FFT大小 Ncp=32; % CP长度 fs=1e6; % 采样频率 L=8; % 过采样因子(以生成L倍的过采样离散时间信号) Tsym=1/(fs/N); % 采样频率 Ts=1/(fs*L); % 采样周期 fc=2e6; wc=2*pi*fc; % 载波频率 t=[0:Ts:2*Tsym-Ts]/Tsym; t0=t((N/2-Ncp)*L); f=[0:fs/(N*2):L*fs-fs/(N*2)]-L*fs/2; Fs=8; % 滤波器采样频率 Norder=104; % 采样阶数 dens=20; % 密度因子 FF=[0 1.4 1.5 2.5 2.6 Fs/2]; % 阻带/通带/阻带频率边缘向量 WW=[10 1 10]; % 加权向量 h = firpm(Norder,FF/(Fs/2),[0 0 1 1 0 0],WW,{dens}); % BPF系数 X = mapper(b,N); X(1) = 0; % QPSK调制 x=IFFT_oversampling(X,N,L); % IFFT和过采样 x_b=add_CP(x,Ncp*L); % 添加CP x_b_os=[zeros(1,(N/2-Ncp)*L), x_b, zeros(1,N*L/2)]; % 过采样 %x_p = upconv_fin(2*fc,x_b_os,t); x_p = sqrt(2)*real(x_b_os.*exp(j*2*wc*t)); % 从基带到通频带 %norm(x_p-x_p1) x_p_c = clipping(x_p,CR); %X_p_c_f = filtering(h,x_p_c); X_p_c_f= fft(filter(h,1,x_p_c)); %norm(X_p_c_f-X_p_c_f1) %X_p_c_f = BPF_using_FFT(x_p_c,[1.5 2.5],8); x_p_c_f = ifft(X_p_c_f); %x_b_c_f = dwconv_fin(2*fc,x_p_c_f,t); x_b_c_f = sqrt(2)*x_p_c_f.*exp(-j*2*wc*t); % 从通频带到基带 figure(1); clf nn=(N/2-Ncp)*L+[1:N*L]; nn1=N/2*L+[-Ncp*L+1:0]; nn2=N/2*L+[0:N*L]; subplot(221) plot(t(nn1)-t0, abs(x_b_os(nn1)),'k:'); hold on; plot(t(nn2)-t0, abs(x_b_os(nn2)),'k-'); axis([t([nn1(1) nn2(end)])-t0 0 max(abs(x_b_os))]); title(['含CP的基带信号']); xlabel('t (符号间隔归一化)'); ylabel('abs(x''[m])'); subplot(223) XdB_p_os = 20*log10(abs(fft(x_b_os))); plot(f,fftshift(XdB_p_os)-max(XdB_p_os),'k'); xlabel('频率[Hz]'); ylabel('PSD[dB]'); axis([f([1 end]) -100 0]); subplot(222) [pdf_x_p,bin]=hist(x_p(nn),50); bar(bin,pdf_x_p/sum(pdf_x_p),'k'); xlabel('x'); ylabel('pdf'); title(['未限幅的通频带信号']); subplot(224) XdB_p = 20*log10(abs(fft(x_p))); plot(f,fftshift(XdB_p)-max(XdB_p),'k'); xlabel('频率[Hz]'); ylabel('PSD[dB]'); axis([f([1 end]) -100 0]); % 带内波动和带外辐射,通过功率谱密度PSD观察 figure(2); clf subplot(221)% 限幅后的信号幅度低于限幅电平 [pdf_x_p_c,bin] = hist(x_p_c(nn),50); bar(bin,pdf_x_p_c/sum(pdf_x_p_c),'k'); title(['限幅的通频带信号, CR=' num2str(CR)]); xlabel('x'); ylabel('pdf'); subplot(223) XdB_p_c = 20*log10(abs(fft(x_p_c))); plot(f,fftshift(XdB_p_c)-max(XdB_p_c),'k'); xlabel('频率[Hz]'); ylabel('PSD[dB]'); axis([f([1 end]) -100 0]); subplot(222)% 滤波后信号峰值超过限幅电平 [pdf_x_p_c_f,bin] = hist(x_p_c_f(nn),50); bar(bin,pdf_x_p_c_f/sum(pdf_x_p_c_f),'k'); title(['限幅和滤波后的通频带信号, CR=' num2str(CR)]); xlabel('x'); ylabel('pdf'); subplot(224) XdB_p_c_f = 20*log10(abs(X_p_c_f)); plot(f,fftshift(XdB_p_c_f)-max(XdB_p_c_f),'k'); xlabel('频率[Hz]'); ylabel('PSD[dB]'); axis([f([1 end]) -100 0]); % 限幅后的带外频谱增大了,但滤波后的带外频谱减小了 figure(3); clf subplot(221) stem(h,'k'); xlabel('抽头数'); ylabel('滤波器系数 h[n]');%等波纹通频带FIR滤波器脉冲响应 axis([1, length(h), min(h), max(h)]); subplot(222) HdB = 20*log10(abs(fft(h,length(X_p_c_f)))); plot(f,fftshift(HdB),'k'); xlabel('频率[Hz]'); ylabel('频率响应 H[dB]');%频率响应 axis([f([1 end]) -100 0]); subplot(223) [pdf_x_p_c_f,bin] = hist(abs(x_b_c_f(nn)),50); bar(bin,pdf_x_p_c_f/sum(pdf_x_p_c_f),'k'); title(['限幅和滤波后的基带信号, CR=' num2str(CR)]); xlabel('|x|'); ylabel('pdf'); subplot(224) XdB_b_c_f = 20*log10(abs(fft(x_b_c_f))); plot(f,fftshift(XdB_b_c_f)-max(XdB_b_c_f),'k'); xlabel('频率[Hz]'); ylabel('PSD[dB]'); axis([f([1 end]) -100 0]);

仿真结果:

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

注意:由于官方删除了modem.pskmod、modem.qammod等函数(在高版本matlab中已无法运行这些函数),我对mapper函数做了修改,从而出现了比较大的缺陷,原mapper()函数的功能是 “如果给定N,那么生成N个2^b-PSK/QAM随即调制符号;否则,为[0,2 ^ b - 1]生成2 ^ b-PSK/QAM符号” ,原mapper函数见文章末尾,而这里直接暴力的进行QPSK调制,没有考虑多种情况。

function [modulated_symbols,Mod] = mapper(b,N)%mapper.m %如果给定N,那么生成N个2^-PSK/QAM随机调制符号 A=1; M=2^b;%调制阶数 Mod='QPSK'; modulated_symbols = pskmod(randi([0 M-1],N,1),M,pi/M)*A; end %------------------------------------------------------- function y=add_CP(x,Ncp)%add_CP.m % 添加循环前缀 y = [x(:,end-Ncp+1:end) x]; end %------------------------------------------------------- function [x_clipped,sigma]=clipping(x,CL,sigma)%clipping.m % if nargin


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有