QAM调制与解调的MATLAB实现及调制性能分析
- 格式:doc
- 大小:199.50 KB
- 文档页数:16
通信原理课程设计报告书课题名称 16QAM 调制与解调 的MATLAB 实现及调制性能分析姓 名学 号 学 院 通信与电子工程学院专 业 通信工程 指导教师李梦醒2012年 01 月 01日※※※※※※※※※ ※※ ※※ ※※2009级通信工程专业通信原理课程设计16QAM调制与解调的MATLAB实现及调制性能分析1 设计目的(1)掌握16QAM调制与解调的原理。
(2)掌握星座图的原理并能熟悉星座图的应用。
(3)熟悉并掌握MATLAB的使用方法。
(4)通过对16QAM调制性能的分析了解16QAM调制相对于其它调制方式的优缺点。
2 设计原理正交振幅调制(Quadrature Amplitude Modulation,QAM)是一种振幅和相位联合键控。
虽然MPSK和MDPSK等相移键控的带宽和功率方面都具有优势,即带宽占用小和比特噪声比要求低。
但是由图1可见,在MPSK体制中,随着8/ 5π8/3π8/π8/7π8/9π8/11π8/13π8/15π图 1 8PSK 信号相位M 的增大,相邻相位的距离逐渐减小,使噪声容限随之减小,误码率难于保证。
为了改善在M 大时的噪声容限,发展出了QAM 体制。
在QAM 体制中,信号的振幅和相位作为两个独立的参量同时受到调制。
这种信号的一个码元可以表示为0()cos() (1)k k k s t A t kT t k T ωθ=+<≤+ (2—1)式中:k=整数;k A 和k θ分别可以取多个离散值。
式(2—1)可以展开为00()cos cos sin sin k k k k k s t A t A t θωθω=- (2—2)令 X k = A k cos k , Y k = -A k sink则式(2—1)变为00()cos sin k k k s t X t Y t ωω=+ (2—3)k X 和k Y 也是可以取多个离散的变量。
从式(2—3)看出,()k s t 可以看作是两个正交的振幅键控信号之和。
基于MATLAB的QAM调制解调实现学生姓名:张平凡指导老师:吴志敏摘要: 此次课程设计的主要内容为利用MATLAB集成环境下的M文件,编写程序来实现QAM的调制解调,,并绘制出解调前后的时域和频域波形及叠加噪声时解调前后的时频波形,根据运行结果和波形来分析该解调过程的正确性及信道对信号传输的影响。
通过此次课设,我加深了关于正交调幅方面的理论知识,加强了MATLAB软件的操作能力,对以后的实验操作打下了基础。
此次课程设计,旨在提高自己的MATLAB软件编程能力,自学能力,对资料的收集.理解以及总结的能力。
在此次课程设计中,我依托MATLAB为平台,编程实现QAM 调制解调的实现,并将相关图形绘制出来,进一步巩固了对课本知识的理解。
关键词: MATLAB; 正交振幅调制; 频谱利用率; 调制与解调;1. 引言在现代通信中,提高频谱利用率一直是人们关注的焦点之一。
近年来,随着通信业务需求的迅速增长,寻找频谱利用率高的数字调制方式已成为数字通信系统设计、研究的主要目标之一。
为了提高其性能,人们对这些数字调制体制不断加以改进提出了多种新的调制解调机体。
这些新的调制解调体制,各有所长分别在不同的方面有其优势。
正交振幅调制QAM(Quadrature Amplitude Modulation)就是一种频谱利用率很高的调制方式,正交振幅调制是二进制的PSK、四进制的QPSK调制的进一步推广,通过相位和振幅的联合控制,可以得到更高频谱效率的调制方式,从而可在限定的频带内传输更高速率的数据【1】。
通信原理通信工程的一门重要的专业课,调制与解调又是通信的精髓,调制就是用基带信号去控制载波信号的某个或几个参量的变化,将信息荷载在其上形成已调信号传输,而解调是调制的反过程,通过具体的方法从已调信号的参量变化中将恢复原始的基带信号,QAM(正交振幅调制)是一种振幅和相位联合键控,在MPSK体制中,随着M 的增大,相位相邻相位的距离逐渐缩小,使噪声容限随之减小,使误码率难于保证,为了改善在M大的噪声容限,发展出了QAM体制【2】。
一、概述QAM (Quadrature Amplitude Modulation) 是一种常见的数字调制技术,用于在通信系统中传输数字数据。
在QAM信号中可能存在频偏,因此需要进行频偏估计和补偿。
FFT (Fast Fourier Transform) 是一种常用的信号处理工具,用于在频域对信号进行分析和处理。
本文将讨论如何利用MATLAB对QAM信号进行FFT频偏估计的方法和步骤。
二、QAM信号的频偏QAM信号经过一定的传输介质后,可能会出现频率偏移,即信号的频率与预期的频率不一致。
这可能导致接收端无法正确解调信号,造成误码率的提高。
需要对QAM信号的频偏进行估计和补偿。
三、FFT频偏估计原理FFT是一种将时域信号转换为频域信号的数学工具。
对于QAM信号,可以通过FFT来分析其频域特性,进而估计频偏。
具体步骤如下:1. 对接收到的QAM信号进行FFT,得到信号在频域上的表示。
2. 分析频域图像,找到信号的主要频率成分。
3. 通过比较主要频率成分的位置和预期的频率位置,计算出频偏值。
四、MATLAB中的FFT频偏估计方法在MATLAB中,可以利用以下步骤对QAM信号进行FFT频偏估计:1. 读取接收到的QAM信号,并进行FFT变换。
2. 绘制信号在频域上的表示,观察频谱图像。
3. 利用MATLAB中的频谱分析函数,如findpeaks等,找到主要频率成分的位置。
4. 计算主要频率成分的位置与预期频率位置的偏移量,得到频偏值。
五、实例演示下面演示一个简单的MATLAB代码,用于对QAM信号进行FFT频偏估计。
```matlab读取接收到的QAM信号received_signal = ...; 读取接收到的QAM信号,具体方法根据实际情况而定进行FFT变换fft_signal = fft(received_signal); 对QAM信号进行FFT变换绘制频域图像f = 1:length(fft_signal);plot(f, abs(fft_signal)); 绘制频域图像寻找频谱峰值[pk, loc] = findpeaks(abs(fft_signal), 'SortStr', 'descend');计算频偏expected_frequency = ...; 预期频率位置,根据QAM信号的参数而定frequency_offset = loc(1) - expected_frequency; 计算频偏值disp(['Frequency offset: ', num2str(frequency_offset)]); 显示频偏值```通过以上MATLAB代码,可以对接收到的QAM信号进行FFT频偏估计,并得到频偏值。
qam调制及误码率matlab标题:QAM调制及误码率Matlab仿真分析摘要:本文旨在介绍正交振幅调制(QAM)的原理和应用领域,并通过Matlab 仿真分析来讨论QAM调制中的误码率。
文章将从QAM调制的基本原理和定义开始,深入探讨其调制方式、调制索引、信道传输、解调算法等关键概念。
接下来,将通过Matlab进行QAM信号的生成和传输效果的仿真模拟,并采用误码率作为性能评估指标,分析调制索引对误码率的影响。
最后,结合仿真结果,我们将对QAM调制技术的应用场景和未来发展进行展望。
关键词:QAM调制;误码率;Matlab仿真;性能评估一、引言正交振幅调制(QAM)是一种常见的调制技术,广泛应用于数字通信、无线传输等领域。
QAM调制既融合了调幅和相位调制的特点,也具备较高的频谱效率和抗噪声能力。
误码率是评估数字通信系统性能的关键指标,通过对QAM调制的误码率进行分析,可以直观地评估系统的可靠性和性能。
二、QAM调制的基本原理和定义1. QAM调制基本原理:QAM调制是将两种不同调制方式(调幅、相位调制)的单一载波合并在一起进行传输的技术。
通过同时调整振幅和相位的方式,在复平面上进行星座点位置映射,实现多位元符号的传输。
2. 正交振幅调制:QAM调制是一种正交振幅调制,它利用正交的基带信号进行调制。
正交性保证了信号之间的相互独立,从而降低了符号间互相干扰的可能性。
三、QAM调制方式和调制索引1. 方式:(1) 4QAM:通过4个正交星座点进行调制,每个星座点代表两个比特传输。
(2) 16QAM:通过16个正交星座点进行调制,每个星座点代表4个比特传输。
(3) 64QAM:通过64个正交星座点进行调制,每个星座点代表6个比特传输。
...2. 调制索引:调制索引是指在特定条件下,每个星座点所对应的载波相对振幅的大小,它决定了星座点的分布密度和调制方式的性能特性。
四、QAM信号的传输过程和解调算法1. 信道传输:QAM信号的传输过程中,会受到各种噪声干扰和衰减等影响,因此信道传输过程需要保证较低的误码率,提高传输的可靠性。
一、设计任务任务:使用 MATLAB 软件,实现对 QAM 系统调制与解调过程的仿真,并分析系统的可靠性。
二、实验内容(1)对原始信号分别进行 4QAM 和 16QAM 调制,画出星座图;(2)采用高斯信道传输信号,画出信噪比为 13dB 时,4QAM 和 16QAM 的接收信号星座图;(3)画出两种调制方式的眼图;(4)解调接收信号,分别绘制 4QAM 和 16QAM 的误码率曲线图,并与理论值进行对比;(5)提交详细的设计报告和实验报告。
三、设计原理QAM 调制原理:QAM 调制是把 2ASK 和 2PSK 两种调制技术结合起来的一种调制技术,使得带宽得到双倍扩展。
QAM 调制技术用两路独立的基带信号对频率相同、相位正交的两个载波进行抑制载波双边带调幅,并将已调信号加在一起进行传输。
nQAM 代表 n 个状态的正交调幅,一般有二进制(4QAM)、四进制(16QAM)、八进制(64QAM)。
我们要得到多进制的 QAM 信号,需将二进制信号转换为 m 电平的多进制信号,然后进行正交调制,最后相加输出。
正交调制及相干解调原理框图如下:QAM 调制说明:MQAM 可以用正交调制的方法产生,本仿真中分别取 M=16 和 4。
M=16 时,进行的是幅度和相位相结合的 16 个信号点的调制。
M=4 时,进行的是幅度和相位相结合的 4 个信号点的调制。
为了观察信道噪声对该调制方式的影响,我们在已调信号中又加入了不同强度的高斯白噪声,并统计其译码误码率。
为了简化程序和得到可靠的误码率,我们在解调时并未从已调信号中恢复载波,而是直接产生与调制时一模一样的载波来进行信号解调。
四、实验步骤:(1)我们整个代码编写为 MQAM 格式,在刚开始时,会询问选择 4QAM 还16QAM,然后开始运行。
(2)首先生成一个随机且长度为 n*k 的二进制比特流。
(3)在 MATLAB 中 16QAM 调制器要求输入的信号为 0~M-1 这 1M 个值,所以需要用函数 reshape 和 bi2de 将二进制的比特流转换为对应的十进制这 M 个值。
姓名:NikeyMATLAB环境下16QAM调制及解调仿真程序说明一、正交调制及相干解调原理框图正交调制原理框图相干解调原理框图二、MQAM调制介绍及本仿真程序的几点说明MQAM可以用正交调制的方法产生,本仿真中取M=16,即幅度和相位相结合的16个信号点的调制。
为了观察信道噪声对该调制方式的影响,我们在已调信号中又加入了不同强度的高斯白噪声,并统计其译码误码率。
为了简化程序和得到可靠的误码率,我们在解调时并未从已调信号中恢复载波,而是直接产生与调制时一模一样的载波来进行信号解调。
三、仿真结果图附源程序代码:clear;clc;echo off;close all;N=10000; %设定码元数量fb=1; %基带信号频率fs=32; %抽样频率fc=4; %载波频率,为便于观察已调信号,我们把载波频率设的较低Kbase=2; % Kbase=1,不经基带成形滤波,直接调制;% Kbase=2,基带经成形滤波器滤波后,再进行调制info=random_binary(N); %产生二进制信号序列[y,I,Q]=qam(info,Kbase,fs,fb,fc); %对基带信号进行16QAM调制y1=y; y2=y; %备份信号,供后续仿真用T=length(info)/fb; m=fs/fb; nn=length(info);dt=1/fs; t=0:dt:T-dt;subplot(211);%便于观察,这里显示的已调信号及其频谱均为无噪声干扰的理想情况%由于测试信号码元数量为10000个,在这里我们只显示其总数的1/10plot(t(1:1000),y(1:1000),t(1:1000),I(1:1000),t(1:1000),Q(1:1000),[0 35],[0 0],'b:'); title('已调信号(In:red,Qn:green)');%傅里叶变换,求出已调信号的频谱n=length(y); y=fft(y)/n; y=abs(y(1:fix(n/2)))*2;q=find(y<1e-04); y(q)=1e-04; y=20*log10(y);f1=m/n; f=0:f1:(length(y)-1)*f1;subplot(223);plot(f,y,'r');grid on;title('已调信号频谱'); xlabel('f/fb');%画出16QAM调制方式对应的星座图subplot(224);constel(y1,fs,fb,fc); title('星座图');SNR_in_dB=8:2:24; %AWGN信道信噪比for j=1:length(SNR_in_dB)y_add_noise=awgn(y2,SNR_in_dB(j)); %加入不同强度的高斯白噪声y_output=qamdet(y_add_noise,fs,fb,fc); %对已调信号进行解调numoferr=0;for i=1:Nif (y_output(i)~=info(i)),numoferr=numoferr+1;end;end;Pe(j)=numoferr/N; %统计误码率end;figure;semilogy(SNR_in_dB,Pe,'red*-');grid on;xlabel('SNR in dB');ylabel('Pe');title('16QAM调制在不同信道噪声强度下的误码率');%产生二进制信源随机序列function [info]=random_binary(N)if nargin == 0, %如果没有输入参数,则指定信息序列为10000个码元 N=10000;end;for i=1:N,temp=rand;if (temp<,info(i)=0; % 1/2的概率输出为0elseinfo(i)=1; % 1/2的概率输出为1endend;function [y,I,Q]=qam(x,Kbase,fs,fb,fc);%T=length(x)/fb; m=fs/fb; nn=length(x);dt=1/fs; t=0:dt:T-dt;%串/并变换分离出I分量、Q分量,然后再分别进行电平映射I=x(1:2:nn-1); [I,In]=two2four(I,4*m);Q=x(2:2:nn); [Q,Qn]=two2four(Q,4*m);if Kbase==2; %基带成形滤波I=bshape(I,fs,fb/4); Q=bshape(Q,fs,fb/4);end;y=I.*cos(2*pi*fc*t)-Q.*sin(2*pi*fc*t); %调制%QAM信号解调function [xn,x]=qamdet(y,fs,fb,fc);dt=1/fs; t=0:dt:(length(y)-1)*dt;I=y.*cos(2*pi*fc*t);Q=-y.*sin(2*pi*fc*t);[b,a]=butter(2,2*fb/fs); %设计巴特沃斯滤波器I=filtfilt(b,a,I);Q=filtfilt(b,a,Q);m=4*fs/fb; N=length(y)/m; n=(.6:1:N)*m; n=fix(n);In=I(n); Qn=Q(n); xn=four2two([In Qn]);%I分量Q分量并/串转换,最终恢复成码元序列xnnn=length(xn); xn=[xn(1:nn/2);xn(nn/2+1:nn)];xn=xn(:); xn=xn';%基带升余弦成形滤波器function y=bshape(x,fs,fb,N,alfa,delay);%设置默认参数if nargin<6; delay=8; end;if nargin<5; alfa=; end;if nargin<4; N=16; end;b=firrcos(N,fb,2*alfa*fb,fs);y=filter(b,1,x);%二进制转换成四进制function [y,yn]=two2four(x,m);T=[0 1;3 2]; n=length(x); ii=1;for i=1:2:n-1;xi=x(i:i+1)+1;yn(ii)=T(xi(1),xi(2));ii=ii+1;end;yn=; y=yn;for i=1:m-1;y=[y;yn];end;y=y(:)'; %映射电平分别为;;;%四进制转换成二进制function xn=four2two(yn);y=yn; ymin=min(y); ymax=max(y); ymax=max([ymax abs(ymin)]); ymin=-abs(ymax); yn=(y-ymin)*3/(ymax-ymin);%设置门限电平,判决I0=find(yn< ; yn(I0)=zeros(size(I0)); I1=find(yn>= & yn<; yn(I1)=ones(size(I1)); I2=find(yn>= & yn<; yn(I2)=ones(size(I2))*2; I3=find(yn>=; yn(I3)=ones(size(I3))*3; %一位四进制码元转换为两位二进制码元T=[0 0;0 1;1 1;1 0]; n=length(yn);for i=1:n;xn(i,:)=T(yn(i)+1,:);end;xn=xn'; xn=xn(:); xn=xn';%画出星座图function c=constel(x,fs,fb,fc);N=length(x); m=2*fs/fb; n=fs/fc;i1=m-n; i=1; ph0=(i1-1)*2*pi/n;while i <= N/m;xi=x(i1:i1+n-1);y=2*fft(xi)/n; c(i)=y(2);i=i+1; i1=i1+m;end;%如果无输出,则作图if nargout<1;cmax=max(abs(c));ph=(0:5:360)*pi/180;plot*cos(ph),*sin(ph),'c');hold on;for i=1:length(c);ph=ph0-angle(c(i));a=abs(c(i))/cmax*;plot(a*cos(ph),a*sin(ph),'r*');end;plot([ ],[0 0],'k:',[0 0],[ ],'k:');hold off; axis equal; axis([ ]);end;。
通信原理课程设计报告书课题名称16QAM 调制与解调的MATLAB 实现及调制性能分析姓 名学 号 学 院 通信与电子工程学院专 业 通信工程 指导教师李梦醒2012年 01 月 01日※※※※※※※※※ ※※ ※※ ※※2009级通信工程专业通信原理课程设计16QAM 调制与解调的MATLAB 实现及调制性能分析1 设计目的(1) 掌握16QAM 调制与解调的原理。
(2) 掌握星座图的原理并能熟悉星座图的应用。
(3) 熟悉并掌握MATLAB 的使用方法。
(4) 通过对16QAM 调制性能的分析了解16QAM 调制相对于其它调制方式的优缺点。
2 设计原理正交振幅调制(Quadrature Amplitude Modulation,QAM )是一种振幅和相位联合键控。
虽然MPSK 和MDPSK 等相移键控的带宽和功率方面都具有优势,即带宽占用小和比特噪声比要求低。
但是由图1可见,在MPSK 体制中,随着8/15π图 1 8PSK 信号相位M 的增大,相邻相位的距离逐渐减小,使噪声容限随之减小,误码率难于保证。
为了改善在M 大时的噪声容限,发展出了QAM 体制。
在QAM 体制中,信号的振幅和相位作为两个独立的参量同时受到调制。
这种信号的一个码元可以表示为0()cos() (1)k k k s t A t kT t k T ωθ=+<≤+ (2—1)式中:k=整数;k A 和k θ分别可以取多个离散值。
式(2—1)可以展开为00()cos cos sin sin k k k k k s t A t A t θωθω=- (2—2)令 X k = A k cosq k , Y k = -A k sinq k8/5π8/3π8/π8/7π8/9π8/11π8/13π则式(2—1)变为00()cos sin k k k s t X t Y t ωω=+ (2—3)k X 和k Y 也是可以取多个离散的变量。
QAM调制与解调实验报告一.实验目的(1)掌握QAM调制与解调原理。
(2)掌握systemview仿真软件使用方法(3)设计16QAM调制与解调仿真电路,观察QAM星座图和眼图。
二、仿真环境SystemView仿真软件三、实验原理(1)QAM调制原理16QAM是用两路独立的正交4ASK信号叠加而成,4ASK是用多电平信号去键控载波而得到的信号。
它是2ASK体制的推广,和2ASK相比,这种体制的优点在于信息传输速率高。
正交幅度调制是利用多进制振幅键控(MASK)和正交载波调制相结合产生的。
16进制的正交振幅调制是一种振幅相位联合键控信号。
16QAM的产生有2种方法:(1)正交调幅法,它是有2路正交的四电平振幅键控信号叠加而成;(2)复合相移法:它是用2路独立的四相位移相键控信号叠加而成。
这里采用正交调幅法。
16QAM正交调制的原理如下图1所示。
图中串/并变换器将速率为Rb的二进制码元序列分为两路,速率为Rb/2.2-4电平变换为Rb/2的二进制码元序列变成速率为RS=Rb/log216的4个电平信号,4电平信号与正交载波相乘,完成正交调制,两路信号叠加后产生16QAM信号.在两路速率为Rb/2的二进制码元序列中,经2-4电平变换器输出为4电平信号,即M=16.经4电平正交幅度调制和叠加后,输出16个信号状态,即16QAM RS=Rb/log216=RB/4.本实验,采用便是这种方式。
(2)QAM解调原理16QAM信号采取正交相干解调的方法解调,解调器首先对收到的16QAM信号进行正交相干解调,一路与tcωcos相乘,一路与tcωsin相乘。
然后经过低通滤波器,低通滤波器LPF滤除乘法器产生的高频分量,获得有用信号,低通滤波器LPF输出经抽样判决可恢复出电平信号。
16QAM正交相干解调如图2所示。
四.实验过程和结果(1)实验框图1.信号源参数设置:码元速率为10hz,level为4,载波设为100hz,恢复定时脉冲设置为100hz。
QAM 调制技术及其MATLAB 仿真杨辉媛 李云红 涂成军(吉首大学物理科学与信息工程学院,湖南 吉首 416000)摘 要 : 文章首先概述了QAM 调制技术的原理,然后重点介绍了QAM 调制技术在有线电视系统中的作用和意义,并且对QAM 的频道设置和输出进行了说明。
文章还利用MATLAB 对基于QAM 的数字通信系统进行仿真, 得到了良好效果的接收星座图和补偿后的星座图、信道估计图、系统BER 分析图。
仿真结果表明这种通过MATLAB 实现的数字通信系统具有较强的可实现性,为实际应用和科学合理地设计正交幅度调制系统,提供了高效的仿真平台。
关键词:调制;QAM ;MATLAB中图分类号:TN914.3 文献标识码:AThe Modulation Technology of QAMAnd The Simulation in MatlabYanghuiyuan Liyunhong Tuchengjun(College of Physics Science and Information Engineering,Jishou University,Jishou,Hunan 416000)Abstract :This article has outlined digital communication system's composition and communications system's quality requirement, and introduced range keying (ASK) modulation, frequency shift keying (FSK) modulation, phase shift keying (PSK) modulation, quadrature amplitude (QAM) modulation covers a wide variety of digital modulation technology, and elaborated the QAM modulating technology mechanism in detail. The QAM modulating technology with emphasis has been Introduced in wired television system's function and the significance, and the determination to the QAM channel establishment and the output has been carried on in this paper. The simulating of QAM system based on MATLAB has provided a efficient simulation platform to design a QAM system practically and scientifically.Key words: Modulation; QAM; MATLAB1 前言调制在DVB 系统(DigitalVideoBroadcastingSystem ,数字视频广播系统)中具有十分重要的作用。
基于matlab的QAM信号性能仿真引言正交振幅调制,这是近年来被国际上移动通信技术专家十分重视的一种信号调制方式。
QAM是数字信号的一种调制方式,在调制过程中,同时以载波信号的幅度和相位来代表不同的数字比特编码,把多进制与正交载波技术结合起来,进一步提高频带利用率。
单独使用振幅和相位携带信息时,不能最充分利用信号平面,这可由矢量图中信号矢量端点的分布直观观察到。
多进制振幅调制时,矢量端点在一条轴上分布;多进制相位调制时,矢量点在一个圆上分布。
随着进制数M的增大,这些矢量端点之间的最小距离也随之减少。
但如果充分利用整个平面,将矢量端点重新合理地分布,则可能在不减小最小距离的情况下,增加信号的端点数。
基于上述概念引出的振幅与相位结合的调制方式被称为数字复合调制方式,一般的复合调制称为幅相键控(APK),2个正交载波幅相键控称为正交振幅调制。
随着通信业迅速的发展,传统通信系统的容量已经越来越不能满足当前用户的要求,而可用频谱资源有限,也不能靠无限增加频道数目来解决系统容量问题。
另外,人们亦不能满足通信单一的语音服务,希望能利用移动电话进行图像等多媒体信息的通信。
但由于图像通信比电话需要更大的信道容量。
高效、可靠的数字传输系统对于数字图像通信系统的实现很重要,正交幅度调制是数字通信中一种经常利用的数字调制技术,尤其是多进制QAM具有很高的频带利用率,在通信业务日益增多使得频带利用率成为主要矛盾的情况下,正交幅度调制方式是一种比较好的选择。
一、现代数字调制技术概述所有无线通信的基础,调制是一个将数据传送到无线电调制是载波用于发射的过程。
如今的大多数无线传输都是数字过程,并且可用的频谱有限,因此调制方式变得前所未有地重要。
如今的调制的主要目的是上将尽可能多的数据压缩到最少的频谱中。
此目标被称为频谱效率,量度数据在分配的带宽中传输的速度。
此度量的单位是比特每秒每赫兹(b/s/Hz)。
现在已现出现了多种用来实现和提高频谱效率的技术,下面将常用的几种数字调制技术进行简单介绍。
通信原理课程设计报告书课题名称 16QAM 调制与解调 的MATLAB 实现及调制性能分析姓 名学 号 学 院 通信与电子工程学院专 业 通信工程 指导教师李梦醒2012年 01 月 01日※※※※※※※※※ ※※ ※※ ※※2009级通信工程专业通信原理课程设计16QAM调制与解调的MATLAB实现及调制性能分析1 设计目的(1)掌握16QAM调制与解调的原理。
(2)掌握星座图的原理并能熟悉星座图的应用。
(3)熟悉并掌握MATLAB的使用方法。
(4)通过对16QAM调制性能的分析了解16QAM调制相对于其它调制方式的优缺点。
2 设计原理正交振幅调制(Quadrature Amplitude Modulation,QAM)是一种振幅和相位联合键控。
虽然MPSK和MDPSK等相移键控的带宽和功率方面都具有优势,即带宽占用小和比特噪声比要求低。
但是由图1可见,在MPSK体制中,随着8/ 5π8/3π8/π8/7π8/9π8/11π8/13π8/15π图 1 8PSK 信号相位M 的增大,相邻相位的距离逐渐减小,使噪声容限随之减小,误码率难于保证。
为了改善在M 大时的噪声容限,发展出了QAM 体制。
在QAM 体制中,信号的振幅和相位作为两个独立的参量同时受到调制。
这种信号的一个码元可以表示为0()cos() (1)k k k s t A t kT t k T ωθ=+<≤+ (2—1)式中:k=整数;k A 和k θ分别可以取多个离散值。
式(2—1)可以展开为00()cos cos sin sin k k k k k s t A t A t θωθω=- (2—2)令 X k = A k cos k , Y k = -A k sink则式(2—1)变为00()cos sin k k k s t X t Y t ωω=+ (2—3)k X 和k Y 也是可以取多个离散的变量。
从式(2—3)看出,()k s t 可以看作是两个正交的振幅键控信号之和。
在式(2—1)中,若k 值仅可以取/4和-/4,A k 值仅可以取+A 和-A ,则此QAM 信号就成为QPSK 信号,如图2所示:图2 4QAM 信号矢量图所以,QPSK 信号就是一种最简单的QAM 信号。
有代表性的QAM 信号是16进制的,记为16QAM ,它的矢量图示于下图中:图3 16QAM 信号矢量图图中用黑点表示每个码元的位置,并且示出它是由两个正交矢量合成的。
类似地,有64QAM 和256QAM 等QAM 信号,如图4、图5所示。
它们总称为MQAM调制。
由于从其矢量图看像是星座,故又称星座调制。
16QAM 信号的产生方法主要有两种。
第一种是正交调幅法,即用两路独立的正交4ASK 信号叠加,形成16QAM 信号,如图6所示。
第二种方法是复合相图4 64QAM 信号矢量图图5 256QAM 信号矢量图图6 正交调幅法移法,它用两路独立的QPSK信号叠加,形成16QAM信号,如图7所示。
图中图7 复合相移法虚线大圆上的4个大黑点表示一个QPSK信号矢量的位置。
在这4个位置上可以叠加上第二个QPSK矢量,后者的位置用虚线小圆上的4个小黑点表示。
3设计过程设计思路由设计原理中可知MQAM调制又称为星座调制,故我们在设计16QAM调制系统时就可以星座图来进行编程。
下面我们就借用如图8所示的星座图设计一个16QAM调制系统。
图8 16QAM星座在图中共有16个点,每个点用4个比特表示,代表调制以后的一个矢量位置(这个点拥有唯一的振幅与相位)。
因此我们可以把横轴看作是实轴,纵轴看作虚轴。
由于每个点与跟它相邻的四个点是等距,且设为2,则每个点都可用一个虚数进行表示。
例如点0000可用-1-j表示,这个虚数的模就是相当于16QAM 信号的振幅,相角就相当于16QAM信号的相位。
所以16QAM的调制过程就可以用如下语句进行描述:if A(1,b:c)==[0 0 0 0]B(k)=-1-1i;elseif A(1,b:c)==[0 0 0 1]B(k)=-3-1i;elseif A(1,b:c)==[0 0 1 0]B(k)=-1-3i;elseif A(1,b:c)==[0 0 1 1]B(k)=-3-3i;elseif A(1,b:c)==[0 1 0 0]B(k)=1-1i;elseif A(1,b:c)==[0 1 0 1]B(k)=1-3i;elseif A(1,b:c)==[0 1 1 0]B(k)=3-1i;elseif A(1,b:c)==[0 1 1 1]B(k)=3-3i;elseif A(1,b:c)==[1 0 0 0]B(k)=-1+1i;elseif A(1,b:c)==[1 0 0 1]B(k)=-1+3i;elseif A(1,b:c)==[1 0 1 0]B(k)=-3+1i;elseif A(1,b:c)==[1 0 1 1]B(k)=-3+3i;elseif A(1,b:c)==[1 1 0 0]B(k)=1+1i;elseif A(1,b:c)==[1 1 0 1]B(k)=3+1i;elseif A(1,b:c)==[1 1 1 0]B(k)=1+3i;elseif A(1,b:c)==[1 1 1 1]B(k)=3+3i;end当调制以后的信号经过信道加噪以后,我们必须对其进行解调。
由于加噪了的缘故,调制以后的信号不再是原来的信号,而应该有不同。
因此在解调时不能简单的将上述过程逆转,即不能由-1-j就判断为0000。
而应该对虚数的实部和虚部设定一个范围后再进行判断。
这个范围边界的选取原理我们可以借用量化的概念,取相邻虚数的实部的平均数和虚部的平均数。
以下为16QAM解调过程的程序语句:if (real(D(n))<-2)&&(imag(D(n))<-2)C(1,d:e)=[0 0 1 1];elseif (real(D(n))<-2)&&(imag(D(n))<0)C(1,d:e)=[0 0 0 1];elseif (real(D(n))<-2)&&(imag(D(n))<2)C(1,d:e)=[1 0 1 0];elseif (real(D(n))<-2)&&(imag(D(n))>=2)C(1,d:e)=[1 0 1 1];elseif (real(D(n))<0)&&(imag(D(n))<-2)C(1,d:e)=[0 0 1 0];elseif (real(D(n))<0)&&(imag(D(n))<0)C(1,d:e)=[0 0 0 0];elseif (real(D(n))<0)&&(imag(D(n))<2)C(1,d:e)=[1 0 0 0];elseif (real(D(n))<0)&&(imag(D(n))>=2)C(1,d:e)=[1 0 0 1];elseif (real(D(n))<2)&&(imag(D(n))<-2)C(1,d:e)=[0 1 0 1];elseif (real(D(n))<2)&&(imag(D(n))<0)C(1,d:e)=[0 1 0 0];elseif (real(D(n))<2)&&(imag(D(n))<2)C(1,d:e)=[1 1 0 0];elseif (real(D(n))<2)&&(imag(D(n))>=2)C(1,d:e)=[1 1 1 0];elseif (real(D(n))>=2)&&(imag(D(n))<-2)C(1,d:e)=[0 1 1 1];elseif (real(D(n))>=2)&&(imag(D(n))<0)C(1,d:e)=[0 1 1 0];elseif (real(D(n))>=2)&&(imag(D(n))<2)C(1,d:e)=[1 1 0 1];elseif(real(D(n))>=2)&&(imag(D(n))>=2)C(1,d:e)=[1 1 1 1];end设计总程序clear all;close all;N=40000;K=4*N;%信息长度L=7*N;W=7*N/4;E=randsrc(1,K,[0,1]);%信源´B=zeros(1,W);%16QAM调制后的信号C=zeros(1,L);%16QAM解调后的信号num=zeros(20,1);%误比特数ber=zeros(20,1);%误比特率for SNR=1:1:20%汉明编码A=encode(E,7,4,'hamming/binary');%16QAM调制过程for k=1:Wb=4*k-3;c=4*k;if A(1,b:c)==[0 0 0 0]B(k)=-1-1i;elseif A(1,b:c)==[0 0 0 1]B(k)=-3-1i;elseif A(1,b:c)==[0 0 1 0]B(k)=-1-3i;elseif A(1,b:c)==[0 0 1 1]B(k)=-3-3i;elseif A(1,b:c)==[0 1 0 0]B(k)=1-1i;elseif A(1,b:c)==[0 1 0 1]B(k)=1-3i;elseif A(1,b:c)==[0 1 1 0]B(k)=3-1i;elseif A(1,b:c)==[0 1 1 1]B(k)=3-3i;elseif A(1,b:c)==[1 0 0 0]B(k)=-1+1i;elseif A(1,b:c)==[1 0 0 1]B(k)=-1+3i;elseif A(1,b:c)==[1 0 1 0]B(k)=-3+1i;elseif A(1,b:c)==[1 0 1 1]B(k)=-3+3i;elseif A(1,b:c)==[1 1 0 0]B(k)=1+1i;elseif A(1,b:c)==[1 1 0 1]B(k)=3+1i;elseif A(1,b:c)==[1 1 1 0]B(k)=1+3i;elseif A(1,b:c)==[1 1 1 1]B(k)=3+3i;endend%信道加噪D=awgn(B,SNR);%16QAM解调过程for n=1:Wd=4*n-3;e=4*n;if (real(D(n))<-2)&&(imag(D(n))<-2)C(1,d:e)=[0 0 1 1];elseif (real(D(n))<-2)&&(imag(D(n))<0)C(1,d:e)=[0 0 0 1];elseif (real(D(n))<-2)&&(imag(D(n))<2)C(1,d:e)=[1 0 1 0];elseif (real(D(n))<-2)&&(imag(D(n))>=2)C(1,d:e)=[1 0 1 1];elseif (real(D(n))<0)&&(imag(D(n))<-2)C(1,d:e)=[0 0 1 0];elseif (real(D(n))<0)&&(imag(D(n))<0)C(1,d:e)=[0 0 0 0];elseif (real(D(n))<0)&&(imag(D(n))<2)C(1,d:e)=[1 0 0 0];elseif (real(D(n))<0)&&(imag(D(n))>=2)C(1,d:e)=[1 0 0 1];elseif (real(D(n))<2)&&(imag(D(n))<-2)C(1,d:e)=[0 1 0 1];elseif (real(D(n))<2)&&(imag(D(n))<0)C(1,d:e)=[0 1 0 0];elseif (real(D(n))<2)&&(imag(D(n))<2)C(1,d:e)=[1 1 0 0];elseif (real(D(n))<2)&&(imag(D(n))>=2)C(1,d:e)=[1 1 1 0];elseif (real(D(n))>=2)&&(imag(D(n))<-2)C(1,d:e)=[0 1 1 1];elseif (real(D(n))>=2)&&(imag(D(n))<0)C(1,d:e)=[0 1 1 0];elseif (real(D(n))>=2)&&(imag(D(n))<2)C(1,d:e)=[1 1 0 1];elseif (real(D(n))>=2)&&(imag(D(n))>=2)C(1,d:e)=[1 1 1 1];endend%汉明译码F=decode(C,7,4,'hamming/binary');%求误比特率[num(SNR,1),ber(SNR,1)]=biterr(F,E);end%误比特数图plot(num);figure%误比特率图plot(ber);系统仿真结果图0.0050.010.0150.020.0250.030.0350.04SNRPe图9 不同SNR下的误比特率4 系统性能分析图10 三种调制方式在AWGN信道中的误码性能比较分析:将QPSK,BPSK,16QAM,FSK四种调制方式,包括理论值与实际值,放在同一个图下,对他们进行对比,可以很清晰地发现,QPSK在信噪比较小时,仿真值和理论值就有了偏离,且两者数值都比较大,当信噪比越来越大时,仿真值成直线几乎没变化,而实际值的Pe值逐渐变小,这种调制方式不是很可取;16QAM的性能跟QPSK相比,在低信噪比时,Pe值较大(还要大于QPSK的),随着信噪比逐渐增大,16QAM的Pe值逐渐减小,且理论值与实际值比较契合,在大信噪比情况下,误码性能略逊与QPSK的;FSK的理论值和实际值在各种信噪比下都比较契合,两者几乎没有大的差距,无论是在低,高信噪比下,性能都要比QPSK的优越一些;BPSK性能最优!理论值与实际值契合得比较理想,而在低,高信噪比情况下,Pe值都是最低的,且随着信噪比逐渐增大,Pe实际值迅速减小,实现起来性能十分优越。