基于Matlab的CDMA通信系统分析及仿真.doc_第1页
基于Matlab的CDMA通信系统分析及仿真.doc_第2页
基于Matlab的CDMA通信系统分析及仿真.doc_第3页
基于Matlab的CDMA通信系统分析及仿真.doc_第4页
基于Matlab的CDMA通信系统分析及仿真.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程论文题 目: 基于Matlab CDMA多址技术的仿真 学生姓名: 苏未然 学生学号: 1008030130 系 别: 电气信息工程学院 专 业: 电子信息工程 年 级 : 10级 指导教师: 王丽 电气信息工程学院制 2013年4月目录绪 论.3第1章 CDMA通信系统分析及仿真.41.1 整体仿真框图.41.2 信源.51.3 伪随机序列生成器.61.4 扩频.71.5 编码和调制.81.6 接收端.9第2章 仿真系统.10 2.1 信源 .10 2.2 编码.102.3 扩频.112.4 调制与解调.112.5 误码计算.11第3章 实验结果与总结.12 3.2 多用户在相同信道环境下的仿真.12参考文献.13仿真结果.14设计的代码.16绪 论利用MATLAB平台的SIMULINK可视化仿真功能,结合CDMA的实际通信情况,利用MATLAB组建出完整的CDMA通信系统,完成整体设计方案,实现完整的发送到接收的端到端的CDMA无线通信系统的建模、仿真和分析, 介绍了CDMA的主要环节(包括扩频技术、差错控制技术、调制技术、信道等)的参数设置。单用户在不同信道环境下,信道的噪声对结果影响很大,噪声功率越大,系统的误码率越大。多用户在相同信道环境下的仿真时,由于是采用了噪声功率为0.01W的信道传输环境,所以在单用户情况下误码率为0,而增加了用户数之后,误码率也随之增加。可见,信号在传输过程中,除了受到信道噪声的影响外,还存在多址接入干扰、单频干扰、窄带干扰、跟踪式干扰等,主要是多址接入干扰。20世纪60年代以来,随着民用通信事业的发展,频带拥挤问题日益突出。CDMA(Code DivisionMultiple Access,码分多址)通信,在使用相同频率资源的情况下,理论上CDMA移动网比模拟网容量大20倍,实际使用中比模拟网大10倍,比GSM要大45倍,所以在通信领域中起着非常重要的作用。CDMA的基本原理是利用互相正交(或尽可能正交)的不同编码,分配给不同用户调制信号,实现多用户同时使用同一频率接入系统和网络的通信。由于利用互相正交(或尽可能正交)的编码去调制信号,会将原信号的频谱带宽扩展,因此,这种通信方式,又称为扩频通信。本论文所完成的CDMA通信仿真系统,是结合CDMA的实际通信情况,利用MATLAB组建出完整的CDMA通信系统,完成整体设计方案,实现完整的发送到接收的端到端的CDMA无线通信系统的建模、仿真和分析。第1章 CDMA通信系统分析及仿真1.1 整体仿真框图本论文在CDMA通信原理的基础上,得出CDMA通信系统的仿真框图(图2-1)。 图1-1 CDMA通信系统的仿真框图1.2 信源二进制贝努利序列产生器产生一个二进制序列,并且这个二进制序列中的0和1服从贝努利分布。本文使用4个二进制贝努利信号发生器,以子系统形式封装于输入信号中。产生器的产生是由一个随机信号器与一个常数进行判决,输出的二进制再进行抽样整形,从而输出符合参数设置的而进驻。输入信号抽样的时间均为1,即码元宽度为1,选择产生一维向量。1.3 伪随机序列生成器扩频通信系统中,伪随机序列与正交编码是十分重要的技术。主要包括m序列,Gold序列,Walsh码序列等。Walsh码序列比较复杂,正交性较好,主要用于CDMA IS-95系统中。而Gold序列可以比m序列产生更多的地址吗,更适合于大型的通信系统。在本设计中,主要是对简单的CDMA系统进行仿真,所以选用m序列作为扩频序列,而且有4个用户。4个m序列分别的4级,5级,6级和7级,周期分别为15,31,63和127。扩频序列发生器的主要参数为生成多项式,试验采用的数值分别为:1 1 0 0 1、1 1 0 0 0 1、1 1 0 0 0 0 1、1 0 1 0 1 0 1 1。抽样时间设置为0.1,即码元宽度为0.1。1.4 扩频本文是采用直接序列扩频方式实现多址接入。在仿真中,将原信号与伪随机序列相乘,从而实现扩频。但由于输入信号和m序列都是单极性的二进制数,所以在进入乘法器进行扩频之前,还要对它们进行单/双变换,变成双极性信号。图22分别给出了原信号波形、扩频序列波形和扩频后的信号波形。本系统的扩频倍数为10a.原信号波形b.扩频序列波形c. 扩频后的信号波形图12 直接序列扩频方式1.5 编码和调制1.5.1 BCH编码仿真框图如23所示。模型采用(7,4)BCH码,要求送入编码器的是维数为4的矢量,编码器的输出是维数为7的矢量,即为每个信息组添加了3位校验码元,由图24得知,只进行差错控制编码,而没有经过扩频的信号,在给定的高斯信道中传输,随着码源传输的时间增加,误码率会比较高。图13 BCH码的仿真框图图14 BCH码的误码率曲线误码率计算公式 10log10(power_signal/power_noise)The AWGN Channel (高斯白噪声信道)模块可以在输入信号中加入实信号噪声或复合信号噪声。当输入信号是实信号时,此模块在输入信号中加入实高斯白噪声,并输出实信号。当输入信号是复合信号时,此模块在输入信号中加入复合的高斯白噪声,并输出符合信号。次模块从输入信号中得到抽样时间。 这个模块用DSP Blockset(数字信号处理)模块中的Random Source(随机信号源)模块来产生噪声。The Initial seed(初始种子)参数用来初始化信号发生器。The Initial seed(初始种子)即可以是标量也可以是矢量。这个标量或矢量的长度要与信道匹配。1.5 M-PSK仿真图25给出的是M=16时M-PSK的仿真框图,信号调制后的频谱和相位星座图分别如图26和图27所示。本文中4个调制器的相数M分别为16,32,32,40。由星座图可以得知,将每个输入信号都对应于一个点,点与点之间的相位差为360/16=22.5。1.5信道信道中的噪声直接影响着信号的传输质量。根据信道中噪声的特点,可将信道划分为:加性高斯白噪声信道(Additive White Guassion Noise,AWGN)、二进制对称信道、多径瑞利衰落信道和伦琴衰落信道等,我们在仿真中采用的是AWGN信道。图28中的正弦波功率设置为1 W,曲线表明,当SNR是-20 dB时,噪声功率是100 W;SNR是20 dB时,噪声功率是0.01 W。可见,为了得到比较优的性能,应合理设置输入信噪比。图15 MPSK仿真模型图图16 MPSK信号频谱图图17 MPSK信号星座图图18 SNR与噪声功率的关系 1.6. 接收端M-PSK解调器的参数设置与M-PSK调制器相同,译码器的参数设置与编码器相对应。解扩过程要求使用的伪随机码与发送端扩频用的伪随机码不仅码字相同,而且相位相同。多用户情况下,由于信号互相叠加,所以解扩后的信号不再是二进制信号,因为存在多用户干扰,所以在进入接收端进行误码统计之前,必须经过滤波和判决。为了减少噪声影响,在解扩之后加入低通滤波器。根据发送信号的频谱,该滤波器的分子系数和分母系数分别设置为0.0004 0.0017 0.0025 0.0017 0.0004和1.0000-3.1811 3.8623-2.1130 0.4385,初始条件为0。滤波器幅频、相频特性曲线如图29所示。发送信号与接收机恢复出的信号同时送入误码仪(Error-rate meter)模块进行比较,误码仪可计算和显示误码率和误比特率。图19滤波器特性第2章 仿真系统本系统主要包括信号源输入、扩频序列发生器、扩频解扩、编码译码、调制解调、信道、接收判决、误码计算等。为了简化模型,使用了子系统将其中的一些模块进行了封装。设计中,使用了递加的方法,可以实现多个不同用户按不同情况接入,图31为整体仿真框图。图31 整体仿真框图 2.1 信源本文使用4个二进制贝努利信号发生器,以子系统形式封装于输入信号中。产生器的产生是由一个随机信号器与一个常数进行判决,输出的二进制再进行抽样整形,从而输出符合参数设置的而进驻。输入信号抽样的时间均为1,即码元宽度为1,选择产生一维向量。2.2 编码编码主要包括m序列,Gold序列,Walsh码序列等。Walsh码序列比较复杂,正交性较好,主要用于CDMA IS-95系统中。而Gold序列可以比m序列产生更多的地址吗,更适合于大型的通信系统。在本设计中,主要是对简单的CDMA系统进行仿真,所以选用m序列作试验采用的数值分别为:1 1 0 0 1、1 1 0 0 0 1、1 1 0 0 0 0 1、1 0 1 0 1 0 1 1。抽样时间设置为0.1,即码元宽度为0.1。2.3 扩频本文是采用直接序列扩频方式实现多址接入。在仿真中,将原信号与伪随机序列相乘,从而实现扩频。但由于输入信号和m序列都是单极性的二进制数,所以在进入乘法器进行扩频之前,还要对它们进行单/双变换,变成双极性信号。图22分别给出了原信号波形、扩频序列波形和扩频后的信号波形。本系统的扩频倍数为10。2.4 调制与解调本文采用MPLK调制与解调。2.5 误码计算滤波器幅频、相频特性曲线如图29所示。发送信号与接收机恢复出的信号同时送入误码仪(Error-rate meter)模块进行比较,误码仪可计算和显示误码率和误比特率。第3章 实验结果与总结3.1 单用户在不同信道环境下的仿真由表1可以分析出,在信道传输过程中,信道的噪声对结果影响很大,在噪声功率为100W的情下,误码率偏高。降低噪声功率后,误码率也明显减小。可见,在单用户情况下,CDMA通信系统的码率主要取决于信道中的噪声。3.2 多用户在相同信道环境下的仿真仿真条件:用户数从1到4,由于本系统采用了递加的方法,所以可以在同一个系统中观察到从1个用户一直到4个用户的四种不同情况下的仿真。由表2的仿真结果可以看出,由于是采用了噪声功率为0.01W的信道传输环境,所以在单用户情况下误码率为0,而增加了用户数之后,误码率也随之增加。可见,信号在传输过程中,除了受到信道噪声的影响外,还存在多址接入干扰、单频干扰、窄带干扰、跟踪式干扰等,主要是多址接入干扰。表31 单用户在不同信道环境下的仿真用户数传送信息量/bit误码数噪声功率/W抗干扰方式 误码率11000444100直扩0.4441100034510直扩0.345110001611直扩0.16111000230.1直扩0.0231100000.01直扩0表32多用户在相同信道环境下的仿真用户数传送信息量/bit误码数噪声功率/W抗干扰方式 误码率1100000.01直扩0110001830.01直扩0.183110001760.01直扩0.176110002230.01直扩0.223参考文献1 刘学勇,编著.通信系统建模与仿真(电子工业出版社)2 邓薇,编著.MATALB函数速查手册(人民邮电出版社)3 William C.Y.Lee,著.移动通信工程理论和应用(第二版)(人民邮电出版社)4 王华奎,李艳萍等编著.移动通信原理与技术(清华大学出版社)仿真结果经过信道后的信道频谱信号经过信道后的星座图可以看出信号经过信道后,星座点的位置变得杂乱无章,如果不进行信道补偿,则系统的误码率会大大增加。 补偿信道后的星座图可以看出,经过信道补偿后星座点的位置得到进一步集中。设计的代码1M序列function mout = mseq(n, taps, inidata, num) % *% n : m序列的阶数n% taps : 反馈寄存器的连接位置% inidata : 寄存器的初始值序列 % num : 输出的m序列的个数% mout : 输出的m序列,如果num1,则每一行为一个m序列if nargin 1 %如果要输出多个m序列,生成其他m if shiftr 0 outregi(:,1:shiftr) = inregi(:,v-shiftr+1:v); %循环移位 outregi(:,1+shiftr:v) = inregi(:,1:v-shiftr);elseif shiftr 0 outregi(:,1:v+shiftr) = inregi(:,1-shiftr:v); outregi(:,v+shiftr+1:v) = inregi(:,1:-shiftr);end *2、Gold序列:function gout = goldseq(m1, m2, num) % *% m1 : m序列1% m2 : m序列2% num : 生成的Gold序列个数% gout : 生成的Gold序列输出% * if nargin 1 % 用户数大于1时,所有用户数据相加 out1=sum(out1.); else out1=out1.; end sigma = sqrt(0.5 * spow * sr / br * 10(-EbNo(indx)/10); % 根据信噪比计算高斯白噪声方差 y=; for ii=1:user y(ii,:)=out1+sigma(ii).*(randn(1,length(out1)+j*randn(1,length(out1); % 加入高斯白噪声(AWGN) end y=rcosflt(y.,sr,Fs*sr,Fs/filter,rrcfilter); % 通过脉冲成形滤波器进行滤波 y=downsample(y,Fs); % 降采样 for ii=1:user y1(:,ii)=y(2*delay+1:end-2*delay,ii); end yd = despread(y1.,code); % 数据解扩 demodata = qamdemod(yd,M); % 4-QAM 解调 demodata=graycode(demodata+1); % Gray编码逆映射 err,ber(indx)=biterr(data,demodata,log2(M); % 统计误比特率 end主程序中spread函数的代码:%扩频函数function out = spread(data, code)switch nargincase 0 , 1 %如果输入参数个数不对,提示错误 error(缺少输入参数);end hn,vn = size(data);hc,vc = size(code);if hn hc %如果扩频码数小于输入的待扩频的数据序列,提示错误 error(缺少扩频码序列);end out = zeros(hn,vn*vc); for ii=1:hn out(ii,:) = reshape(code(ii,:).*data(ii,:),1,vn*vc);end解扩函数despread的代码:%信号解扩 function out = despread(data, code)switch nargin %如果输入参数个数不对,提示错误case 0 , 1 error(缺少输入参数);end hn,vn = size(data);hc,vc = size(code); out = zeros(hc,vn/vc); for ii=1:hc xx=reshape

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论