基于Matlab的CDMA通信系统分析及仿真

合集下载

基于MATLAB的CDMA系统仿真分析

基于MATLAB的CDMA系统仿真分析

基于MATLAB的CDMA系统仿真分析【摘要】本设计基于MATLAB仿真软件,完整地实现了CDMA通信系统的建模、仿真和分析过程错误!未找到引用源。

;仿真系统包括了CDMA编码技术、扩频技术、调制技术、信道传输以及解调恢复技术等各个功能模块。

全面的介绍了整个CDMA通信系统的工作原理和工作方式,并介绍了各个模块的参数设置;文章内容包括CDMA的发展现状以及发展趋势、CDMA通信系统的技术优势和应用领域,从而说明CDMA通信系统在的研究价值和潜力。

同时,本文也通过举例简单介绍了MATLAB软件,对用于实现系统模块功能的MATLAB仿真语句有了进一步的了解。

MATLAB软件功能齐全,操作简单,应用广泛。

通过本次设计得出,CDMA系统的抗干扰能力强,单用户的情况下,即使在各种人为和物理噪声的干扰下,依旧可以准确接收到数据。

【关键词】CDMA,MATLAB,仿真,通信系统Analysis of CDMA System Simulation Based on MATLAB【Abstract】Thi s thesis is based on the simulation function of the MATLAB software, using MATLAB language to carry out the modeling, simulation, and analysis of the CDMA communication system. At the same time, the important parts of communication system are introduced in detail, including coding, spread spectrum, decoding, modulation and channel transmission, etc. This thesis also refers to the condition, advantages and development of CDMA system to show its potential and value for research. What’s more, the thesis also using an example to give a brief introduction of the simulation platform of MATLAB software, it is such a powerful, easy operating software that is widely used in many fields. This simulation platform displays the superiority of CDMA effectively, and the result shows that CDMA can receive the accurately data even in a big noise.【Key words】Code Division Multiple Access, communication system, MATLAB, simulation目录第一章绪论 (1)1.1 CDMA的研究背景 (1)1.2 CDMA的发展趋势 (1)1.2.1 CDMA的发展现状 (1)1.2.2 CDMA的发展趋势 (2)1.3 CDMA的研究目的 (3)1.3.1 研究目的 (3)1.3.2 研究思路 (4)第二章 CDMA技术原理 (6)2.1 CDMA 基本模型 (6)2.1.1 卷积编码 (6)2.1.2 交织编码 (7)2.1.3 伪随机码 (7)2.1.4 扩频序列 (8)2.1.5 信号调制 (10)2.1.6 信号解调 (11)2.1.7 维特比译码 (12)2.2 CDMA的技术特点 (12)2.3 CDMA的主要应用优势 (13)第三章 CDMA系统仿真分析 (14)3.1 MATLAB的简介 (14)3.2 调试结果 (15)3.2.1 原始序列 (16)3.2.2 维特比编码序列 (17)3.2.3 交织编码序列 (18)3.2.4 加扰码序列 (19)3.2.5 扩频调制序列 (20)3.2.6 加噪信号 (22)3.2.7 解扩频得到的信号 (24)3.2.8 解扰解交织得到的信号 (24)3.2.9 恢复序列 (25)3.2.10 误码率 (26)3.3仿真结果 (27)总结 (30)参考文献 (31)致谢........................................................ 错误!未定义书签。

第10章 CDMA系统仿真 [详解MATLAB_Simulink通信系统建模与仿真]

第10章 CDMA系统仿真 [详解MATLAB_Simulink通信系统建模与仿真]
第10章 CDMA系统仿真
本章内容
10.1 扩频通信基本原理
• 10.1.1 理论基础 • 10.1.2 扩频通信系统的分类 • 10.1.3 扩频通信的重要参数
10.2 扩频码序列
• 10.2.1 m序列 • 10.2.2 Gold序列
10.3 直接序列扩频通信系统仿真 10.4 cdma 2000通信系统的仿真
10.4.2 cdma2000系统的物理层相关 技术
编码技术:前向链路采用卷积码或Turbo码来 作为前向差错控制
交织技术
扩频码:PN码、Walsh码和准正交函数
前向链路复扩频
复扩频
I
Walsh码
Q
PNI PNQ
+
-
+
-
基带 滤波器
基带 滤波器
I
+ cos 2 fct
在cdma 2000系统中,前向信道和反向信道可以采用多种 传输速率和帧长,这些传输速率和帧长可以划分成不同的 无线配置。cdma 2000前向信道共有9种无线配置(RC) 方式。其中前向链路RC1和RC2是分别对应于IS-95中的两 种传输速率。RC3~RC5对应cdma 2000 1x,RC6~RC9 则对应cdma 2000 3x。
数据输出
+
Q
sin 2 fct
10.4.3 前向基本信道简介
前向基本信道属于前向业务信道,用于给一个指定的基站传 输用户和信令的信息,每一个前向业务信道占用一个前向基 本信道。除配置为RC1和RC2时F-FCH的帧长应为20ms外, 其余7种配置下F-FCH的帧长都有5ms和20ms2种选择。数 据速率和帧长的变化范围都必须以帧为单位,即后一帧和前 一帧的数据速率和帧长可以不一样,但在一帧之内必须是保 持不变的。尽管各帧之间的数据速率可以变化,但调制符号 速率(交织器输入端)必须保持为一个常数,这一点是通过 对不大于7.2kbps的数据速率进行码重复而实现的。前向基 本信道工作在RC1时,传输信息的可变速率有9600,4800, 2400和1200bps,当工作在RC3、RC4、RC6和RC7时,可 变数据速率有9600,4800,2700和1500bps。

基于Matlab的CDMA通信完整系统分析及仿真

基于Matlab的CDMA通信完整系统分析及仿真

__________________________________________________课程论文题目:基于Matlab CDMA多址技术的仿真学生姓名:苏未然学生学号: 1008030130系别:电气信息工程学院专业:电子信息工程年级: 10级指导教师:王丽电气信息工程学院制2013年4月目录绪论 (3)第1章CDMA通信系统分析及仿真 (4)整体仿真框图 (4)信源 (5)1.3伪随机序列生成器 (6)扩频 (7)编码和调制 (8)接收端 (9)仿真系统 (10)2.1 信源 (10)2.2 编码 (10)2.3 扩频 (11)2.4 调制与解调 (11)2.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要大4~5倍,所以在通信领域中起着非常重要的作用。

matlab的simulink的cdma标准系统多用户仿真

matlab的simulink的cdma标准系统多用户仿真

通信系统原理综设实验报告基于Matlab的CDMA系统的仿真设计教师评语:关键字:cdma,matlab,simulink,多用户检测,滤波器,抽样判决器希望你们都能理解这个系统,并且完善它,免费提供给下届师弟师妹。

老师真心坑爹。

Matlab2011,百度网盘mdl文件下载地址:/share/link?shareid=436323079&uk=2148250124一、引言CDMA是指在各发送端使用不相同、相互(准)正交的地址码调制所传送的信息,而在接收端在利用码型的(准)正交性,通过相关检测,从混合信号中选出相应的信号的一种技术。

实现CDMA的理论基础是扩频通信,即在发送端将待发送的数据用伪随机码进行调制,实现频谱扩展,然后进行传输,而在接收端则采用同样的编码进行解扩及相关处理,恢复原始的数据信息。

该实验系统通过对多用户下的DS-CDMA系统进行仿真设计,说明DS-CDMA通信系统的基本实现方式,实现PSK调制与解调,加入信道噪声,并实现多用户检测。

在增加用户的情况下,分别检测系统的误码率。

二、系统框图及分析图1DS-CDMA利用不同的地址码(PN序列)区分用户,地址码与用户数据(信码)相乘后得到扩频信号,经信道传输后,在接受端与本地地址码进行相关检测后,从中将地址码与本地地址码一致的用户数据选出,把不一致的用户除掉。

从而实现了利用正交地址码序列区分用户,体现了码分多址的通信方式。

三、系统具体实现及分析1、扩频设计1.1 基本原理扩频通信技术是一种信息传输方式,其信号所占有的频带宽度远大于所传信息必需的最小带宽;频带的扩展是通过一个独立的码序列来完成,用编码及调制的方法来实现的,与所传信息数据无关;在接收端则用同样的码进行相关同步接收、解扩及恢复所传信息数据。

(1)扩频通信的理论基础①香农公式②公式分析A、在给定的传输速率C不变的条件下,频带宽度W和信噪比S/N是可以互换的。

即可通过增加频带宽度的方法,在较低的信噪比情况下,传输信息。

基于matlab的simulink的cdma系统多用户仿真要点

基于matlab的simulink的cdma系统多用户仿真要点

基于 Matlab 的 Simulink 的 CDMA 系统多用户仿真要点简介CDMA(Code Division Multiple Access)是一种数字无线通信技术,其中多个用户在同一频带上传输数据,每个用户使用唯一的编码序列来区分其他用户的信息。

在CDMA系统中,使用扩频技术将数据编码成宽带信号,然后使用独立的编码序列将它们混合在一起,并在接收端进行解码以恢复原始数据,因此CDMA技术可以提供更高的信道容量。

通过使用基于 Matlab 的 Simulink,可以方便地进行CDMA系统的仿真,并对多个用户进行仿真,以评估系统性能。

要点1. CDMA系统的建模在CDMA系统的仿真过程中,需要首先建立系统模型。

我们可以使用 Simulink 中的 Signal Processing Blockset 来实现CDMA系统模型的建模。

Signal Processing Blockset 中包含了各种信号处理模块,包括滤波器、混合器和解扰器等等,这些模块可以用来构建CDMA系统的传输通道。

2. 多用户仿真在CDMA系统中,多个用户可以同时传输数据,因此我们需要对多个用户进行仿真,并分别评估其性能。

为了实现这个目标,我们可以使用 Signal Processing Blockset 中的 Multiport Switch 模块,将多个用户的数据流合并成一个流,然后通过解码器对其进行解码。

在这个过程中,我们可以使用不同的编码序列对每个用户进行编码,以确保数据的安全性。

3. 性能评估在CDMA系统中,我们可以通过 BER(Bit Error Rate)来评估系统的性能。

在仿真过程中,我们可以通过向系统中注入固定数量的错误比特,并计算接收端出现错误的比特数量来计算BER。

通过多次仿真,可以评估不同编码序列、码元速率、信噪比等因素对系统性能的影响。

在本篇文档中,我们介绍了基于 Matlab 的 Simulink 的 CDMA 系统多用户仿真的要点。

-基于MATLAB的多用户CDMA通信系统设计与仿真

-基于MATLAB的多用户CDMA通信系统设计与仿真

设计题目:基于MATLAB的多用户CDMA通信系统设计与仿真摘要随着科技的不断发展以及人们生活水平的不断提高,人们对于移动通信的需求不断增长,本文设计了目前流行的CDMA系统,可实现数字信号的扩频解扩与调制解制。

本文设计的系统分为单用户通信和多用户通信,二者所用的调制方式不完全相同。

以单用户为例,在系统的信源处产生一个数字信号序列,然后对其进行WALSH 码扩频,再对扩频码进行调制,然后在信道中加入噪声,最后实现解扩和解调。

在本文的最后还对整个CDMA系统进行了优化,设计了其外观界面,将调制方式和原理框图联系到一起,很好的实现了整个CDMA系统的仿真。

关键词:CDMA;扩频;PSK;QPSK;仿真;ABSTRACTWith the continuous development of science and technology and people's standard of living continues to improve, the demamd of mobile communication for people grows continuously, This paper describes the design of the current epidemic of CDMA systems, digital signal spread spectrum modulation and dispreading system solutions. This paper describes the design of the system which is divided into single-user and multi-user communication communication. Two kinds of modulation used in the different ways. A single-user example, the source of the system creats a Department of digital signal sequence, and the system achieve its spread spectrum with WALSH code,then modulates the code of spread spectrum, then joined the channel noise,in the end, peforms the solution to expand and demodulation. At last,in this paper the entire CDMA system optimized design of the interface appearance,makes Modulation and block diagram linked together, achieves good of the whole CDMA System Simulation.Keywords:CDMA; Spread spectrum; PSK;QPSK ; Simulation目录1 绪论 (11.1CDMA发展史 (11.2CDMA的优点及应用前景 (21.3论文结构及课题研究内容 (52 CDMA系统的总体设计思路 (7 2.1系统总体设计结构 (72.2系统的实现原理 (73 系统的相关原理及设计过程 (10 3.1MATLAB简介及仿真方法 (10 3.1.1 MATLAB介绍 (103.1.2 仿真方法论 (133.2扩频技术及其仿真实现 (15 3.2.1扩频技术简介 (163.2.2 扩频的仿真实现 (183.3PSK调制解调与仿真实现 (21 3.3.1 PSK调制解调原理 (213.3.2 PSK的仿真实现 (223.4QPSK调制解调及仿真实现 (24 3.4.1 QPSK调制解调原理 (253.4.2 QPSK的仿真实现 (263.5多用户CDMA通信 (303.5.1 DPSK调制解调原理 (303.5.1 多用户DPSK仿真实现 (314 外观界面设计 (344.1GUI (344.1.1 GUI和GUIDE (344.1.2 使用GUIDE创建GUI界面 (364.2主题界面设计流程 (384.2.1 仿真原理图的设计 (384.2.2 系统界面设计流程 (394.3回调函数 (404.3.1 回调函数原型 (404.3.2 回调函数编程实现各界面互联 (415 总结与展望 (435.1系统不足与改进 (435.2系统升级及展望 (43致谢.............................................. 错误!未定义书签。

基于MATLAB的WCDMA扩频通信系统的仿真设计与分析

基于MATLAB的WCDMA扩频通信系统的仿真设计与分析

基于MATLAB的WCDMA扩频通信系统的仿真设计与分析学院:通信工程学院专业:电子与通信工程姓名:李小瑜学号:1501120442摘要在当今信息快速传递的时代,在频带资源有限的情况下仍要求更高的通信功能和通信资源,而扩频通信技术应用频谱展宽原理使频带利用率大大提高。

随着通信技术的不断发展,第三代移动通信系统已经趋于成熟,扩频通信技术正是其中的关键技术,使得第三代移动通信具有很好的频谱效率和更大系统容量等优点。

本文首先对扩频通信技术的理论基础、基本原理及其优点进行了简单的介绍,然后对WCDMA系统的基本原理以及扩频技术在WCDMA中的应用进行了简单论述,最后通过Simulink对WCDMA扩频通信系统进行了仿真模型的建立并对仿真结果进行了比较分析,实现了信号的扩频、解扩、加扰、解扰、调制、解调等部分。

关键词:扩频WCDMA Simulink 仿真1. 扩频通信技术1.1 扩频通信技术的发展扩频通信技术最先主要应用于军事通信、电子对抗以及导航、测量等各个领域,直到80年代初才被应用于民用通信领域。

为了满足日益增长的民用通信容量的需求和有效地利用频谱资源,各国都纷纷提出在数字峰窝移动通信、卫星移动通信和未来的个人通信中采用扩频技术,扩频技术现已广泛应用于蜂窝电话、数字通信、微波通信、无线定位系统、无线局域网、全球个人通信等系统中。

1.2 扩频通信系统的分类扩频通信按其工作方式的不同,可分为直接序列扩频(DS),跳频(FH),跳时(TH),以及它们的组合方式,如:FH/DS,TH/DS,FH/TH等。

不同的扩频技术,其抗干扰机理和对不同干扰的抵抗能力是不同的。

在民用中应用较为广泛的是直接序列扩频系统和跳频扩频系统。

下面主要对这两种扩频技术进行简单介绍。

(1)直接序列扩频系统直接序列扩频是直接利用具有高码率的扩频码系列采用各种调制方式在发端与扩展信号的频谱,而在收端,用相同的扩频码序去进行解码,把扩展宽的扩频信号还原成原始的信息。

基于MATLAB的CDMA系统RAKE接收机仿真分析

基于MATLAB的CDMA系统RAKE接收机仿真分析

基于MATLAB的CDMA系统RAKE接收机仿真分析CDMA(Code Division Multiple Access)是一种广泛应用于移动通信系统中的多址技术,其中RAKE接收机是一种常用于CDMA系统中的接收机。

在这篇文章中,我们将讨论基于MATLAB的CDMA系统中RAKE接收机的仿真分析。

首先,我们要理解什么是CDMA系统和RAKE接收机。

CDMA系统是一种用于无线通信的多址技术,它允许多个用户同时在相同频带上进行通信,通过使用不同的扩频码将用户之间的通信进行区分。

CDMA系统具有很好的抗干扰性能和较高的频谱利用率,因此被广泛使用于移动通信领域。

RAKE接收机是一种用于CDMA系统中信号接收的技术,它通过采用多个接收分支来接收和合并从不同路径到达的信号,以提高接收信号的质量。

RAKE接收机通常使用一个或多个强旗手路径来提取信号的多径分支,然后将这些分支合并以获得更好的信号质量。

现在,我们将讨论如何使用MATLAB进行CDMA系统中RAKE接收机的仿真分析。

首先,我们需要定义CDMA系统的参数。

这些参数包括扩频码、码片持续时间、符号持续时间、发射功率等。

我们可以使用MATLAB中的变量来定义这些参数。

接下来,我们需要生成CDMA系统中的发送信号。

我们可以使用MATLAB中的随机函数生成多个用户的发送信号,并使用对应的扩频码将其展开。

然后,我们可以将这些发送信号叠加在一起,并将它们传输到信道中。

然后,我们需要建立CDMA系统的信道模型。

在仿真中,我们可以使用MATLAB中的函数来模拟信道的特性,如多径传播和噪声。

我们可以使用瑞利衰落信道模型来模拟多径传播,并将高斯白噪声添加到接收信号中。

接着,我们可以实现RAKE接收机。

在MATLAB中,我们可以使用函数或自定义算法来实现RAKE接收机的功能。

首先,我们需要将接收信号传输到RAKE接收机中的各个分支。

然后,我们可以使用相关器来检测这些分支中的信号,并选择最强的分支作为接收信号的输出。

基于Matlab的CDMA通信系统下行信道的仿真

基于Matlab的CDMA通信系统下行信道的仿真

基于Matlab的CDMA通信系统下行信道的仿真网络财富 Intemet fortune Network World网络天地是网络行为虽然要讲道德,但是大家都不在意,便对自己放松了要求。

三是将网络作为失范行为的先进工具,也能意识到此种行为是不妥的,但却认为难以识破,可以逍遥法外。

四是存在一定的心理问题或精神疾患,无法正确认识和控制自己的网络行为,认识不到网络失范行为的严重后果。

表现在实际中,就是重技术轻伦理,重过程轻后果,重宣泄而轻他人,由此而产生网络行为的“道德感弱化”的现象。

有的大学生因好奇心和好胜心强,炫耀网络技术而导致网络伦理道德失范的行为。

3、高校教育管理工作存在误区一方面,在教育环节上,普遍重视学生网络技能的培养,而相对忽视网络法规、网络道德、网络行为规范方面的教育。

在“计算机基础课程”、“思想道德修养与法律基础”等基础课程中,普遍缺乏网络法规和网络道德方面的教育内容,对大学生的网络行为缺少有效地教育和引导。

另一方面,在管理环节上,缺乏规范化的学生网络行为管理制度,部分高校学生管理者的观念和方式比较陈旧,对学生的网络行为管理重视不够。

四、防范大学生网络伦理道德失范的对策现在的大学生德、智都没有缺失,不能让他们迷失于网络科技。

我们当从技术、伦理道德教育和自律培育等方面防范网络伦理道德的失范行为发生。

1、从技术上加强网络管理和监控,实现对不道德行为的规范首先要建立完善的网络管理和监控体制,实现对大学生道德行为的日常管理和监控的制度化;其次要建设“谁主管,谁负责”的责任体制,建立校园监管机制;再次要运用社会力量,共同实现对大学生网络的管理和监控。

加强网络技术研究,防止网络不道德行为的发生,可以通过防火墙技术中报告、监控、报警和登录到网络逻辑链路等方式把对网络和主机的冲突减少到最低限度。

运用数据加密技术防止重要信息的泄露。

运用掌上指纹扫描仪等现代化技术实现用户的登录。

通过网络通信协议增加网络安全功能,从而有效的防止利用病毒进行网络道德破坏行为的发生。

基于matlab的simulink的cdma系统多用户仿真要点

基于matlab的simulink的cdma系统多用户仿真要点

通信系统原理综设实验报告基于Matlab的CDMA系统的仿真设计教师评语:关键字:cdma,matlab,simulink,多用户检测,滤波器,抽样判决器希望你们都能理解这个系统,并且完善它,免费提供给下届师弟师妹。

老师真心坑爹。

Matlab2011,百度网盘mdl文件下载地址:一、引言CDMA是指在各发送端使用不相同、相互(准)正交的地址码调制所传送的信息,而在接收端在利用码型的(准)正交性,通过相关检测,从混合信号中选出相应的信号的一种技术。

实现CDMA的理论基础是扩频通信,即在发送端将待发送的数据用伪随机码进行调制,实现频谱扩展,然后进行传输,而在接收端则采用同样的编码进行解扩及相关处理,恢复原始的数据信息。

该实验系统通过对多用户下的DS-CDMA系统进行仿真设计,说明DS-CDMA通信系统的基本实现方式,实现PSK调制与解调,加入信道噪声,并实现多用户检测。

在增加用户的情况下,分别检测系统的误码率。

二、系统框图及分析图1DS-CDMA利用不同的地址码(PN序列)区分用户,地址码与用户数据(信码)相乘后得到扩频信号,经信道传输后,在接受端与本地地址码进行相关检测后,从中将地址码与本地地址码一致的用户数据选出,把不一致的用户除掉。

从而实现了利用正交地址码序列区分用户,体现了码分多址的通信方式。

三、系统具体实现及分析1、扩频设计1.1 基本原理扩频通信技术是一种信息传输方式,其信号所占有的频带宽度远大于所传信息必需的最小带宽;频带的扩展是通过一个独立的码序列来完成,用编码及调制的方法来实现的,与所传信息数据无关;在接收端则用同样的码进行相关同步接收、解扩及恢复所传信息数据。

(1)扩频通信的理论基础①香农公式②公式分析A、在给定的传输速率C不变的条件下,频带宽度W和信噪比S/N是可以互换的。

即可通过增加频带宽度的方法,在较低的信噪比情况下,传输信息。

B、扩展频谱换取信噪比要求的降低,正是扩频通信的重要特点,并由此为扩频通信的应用奠定了基础。

基于MATLAB的CDMA信号发生器的设计与仿真

基于MATLAB的CDMA信号发生器的设计与仿真

基于MATLAB的CDMA信号发生器的设计与仿真摘要:本文首先介绍了CDMA技术原理,在应用IS-95标准的链路基础之上,完成CDMA 信号发生器的总体设计和主要模块的设计,最后通过MATLAB软件模拟仿真了CDMA信号发生器工作流程,并对CDMA信号进行了波形仿真。

关键词:CDMA;MATLAB;信号发生器;仿真随着科学技术的不断发展,人们能够随时随刻进行信息交流,不再受到时间和空间的限制。

移动通信技术综合了有线网络和无线网络的传输方式,使人们能够在自由活动中与其他移动终端进行通信,从而有效节约了资源成本,同时提高了工作效率,具有一定的社会效益和经济价值。

一、CDMA技术原理概述(一)码分多址技术在CDMA通信系统中,对用户在信息传输的过程中应用到的信号进行区别不能够完全依靠频率和时隙的不同,而是应该依靠不同的编码序列进行区分(信号的波形)。

CDMA信号从频域和石宇的角度来说是相互重叠的,接收器相关器能够在多个CDMA信号区别出使用预定编码类型的信号,对于其他使用不同编码类型的信号来说,由于与接收机的编码类型不同,所以不能够进行解调,这些信号的存在通常被称为多址干扰[1]。

(二)扩频通信技术扩频是一种传输方式,指的是传输数据信息的信号带宽大于数据信息本身的带宽,频带的扩展与所传输的信息码无关,而是由与数据信息相互独立的扩频码来实现的,在接收端用同步接收来实现解扩频和数据恢复。

通常情况下,一个信息传输速率为9.6kbps的二进制比特流在由扩频通信进行传输时带宽可以达到1.2288MH。

(三)CDMA通信原理在发送端将等待传输的语音数据经过A/D转换成为二进制数据信息,再由高速率的伪随机扩频序列进行调制,将数据信息的频带扩展到较宽的频带,由此,在信道传输中的语音信号的带宽就会大于原始信号的带宽。

由于本地产生的伪码与扩频信号的伪码相同,所以能够将原始的窄带信号还原,从而通过窄带滤波之后恢复语音数据,之后在经过D/A转换将原始语音恢复。

基于MATLAB的CDMA系统仿真

基于MATLAB的CDMA系统仿真

基于MATLAB的CDMA系统仿真姓名:班级:学号:指导老师:日期:作业要求1.分析附录的源程序,逐行给出中文注释,并分析仿真结果。

2.按照下列框图设计一个CDMA系统,并进行仿真。

1.分析附录的源程序,逐行给出中文注释,并分析仿真结果。

%main_IS95_forward.m%此函数用于IS-95前向链路系统的仿真,包括扩%频调制,匹配滤波,RAKE接收等相关通信模块。

%仿真环境: 加性高斯白噪声信道.%数据速率= 9600 KBps%clear allclose allclcdisp('--------------start-------------------');global Zi Zq Zs show R Gi Gqclear j;show = 0; %控制程序运行中的显示SD = 0; % 选择软/硬判决接收%-------------------主要的仿真参数设置------------------BitRate = 9600; %比特率ChipRate = 1228800; %码片速率N = 184; %源数据数MFType = 1; % 匹配滤波器类型--升余弦R = 5;%+++++++++++++++++++Viterbi生成多项式++++++++++++++++++G_Vit = [1 1 1 1 0 1 0 1 1; 1 0 1 1 1 0 0 0 1];%Viterbi生成多项式矩阵K = size(G_Vit, 2); %列数L = size(G_Vit, 1); %行数%++++++++++++++++++++++++++++++++++++++++++++++++++++++%++++++++++++++++++++++Walsh矩阵++++++++++++++++++++++++ WLen = 64; %walsh码的长度Walsh = reshape([1;0]*ones(1, WLen/2), WLen , 1); %32个1 0行%Walsh = zeros(WLen ,1);%++++++++++++++++++++++++++++++++++++++++++++++++++++++%++++++++++++++++++扩频调制PN码的生成多项式++++++++++++++%Gi = [ 1 0 1 0 0 0 1 1 1 0 1 0 0 0 0 1]';%Gq = [ 1 0 0 1 1 1 0 0 0 1 1 1 1 0 0 1]';Gi_ind = [15, 13, 9, 8, 7, 5, 0]'; %i路PN码生成多项式参数Gq_ind = [15, 12, 11, 10, 6, 5, 4, 3, 0]'; %q路PN码生成多项式参数Gi = zeros(16, 1); %16×1的0矩阵Gi(16-Gi_ind) = ones(size(Gi_ind));%根据Gi_ind配置i路PN码生成多项式Zi = [zeros(length(Gi)-1, 1); 1];% I路信道PN码生成器的初始状态Gq = zeros(16, 1); %16×1的0矩阵Gq(16-Gq_ind) = ones(size(Gq_ind)); %根据Gq_ind配置q路PN码生成多项式Zq = [zeros(length(Gq)-1, 1); 1];% Q路信道PN码生成器的初始状态%++++++++++++++++++++++++++++++++++++++++++++++++++++++%+++++++++++++++++++扰码生成多项式++++++++++++++++++++++Gs_ind = [42, 35, 33, 31, 27, 26, 25, 22, 21, 19, 18, 17, 16, 10, 7, 6, 5, 3, 2, 1, 0]'; Gs = zeros(43, 1); %43×1的0矩阵Gs(43-Gs_ind) = ones(size(Gs_ind)); %根据Gs_ind配置扰码生成多项式Zs = [zeros(length(Gs)-1, 1); 1];% 长序列生成器的初始状态%++++++++++++++++++++++++++++++++++++++++++++++++++++++%++++++++++++++++++++++AWGN信道++++++++++++++++++++++++ EbEc = 10*log10(ChipRate/BitRate);%处理增益EbEcVit = 10*log10(L);EbNo = [-2 : 0.5 : 6.5]; %仿真信噪比范围(dB)%EbNo = [-2 : 0.5 : -1.5];%++++++++++++++++++++++++++++++++++++++++++++++++++++++%------------------------------------------------------%-------------------------主程序-------------------------ErrorsB = []; ErrorsC = []; NN = [];if (SD == 1) % 判断软/硬判决接收fprintf('\n SOFT Decision Viterbi Decoder\n\n');elsefprintf('\n HARD Decision Viterbi Decoder\n\n');endfor i=1:length(EbNo) %根据EbNo多次运行fprintf('\nProcessing %1.1f (dB)', EbNo(i));%输出当前EbNo值iter = 0; ErrB = 0; ErrC = 0;while (ErrB <300) & (iter <150)drawnow;%++++++++++++++++++++++发射机+++++++++++++++++++++++TxData = (randn(N, 1)>0);%生成源数据% 速率为19.2Kcps[TxChips, Scrambler] = PacketBuilder(TxData, G_Vit, Gs); %产生IS-95前向链路系统的发送数据包% 速率为1.2288Mcps[x PN MF] = Modulator(TxChips, MFType, Walsh);%实现IS-95前向链路系统的数据调制%++++++++++++++++++++++++++++++++++++++++++++++++++++++%++++++++++++++++++++++++信道+++++++++++++++++++++++++++noise = 1/sqrt(2)*sqrt(R/2)*( randn(size(x)) + j*randn(size(x)))*10^(-(EbNo(i) - EbEc)/20);%生成噪声序列r = x+noise;%加入噪声%++++++++++++++++++++++++++++++++++++++++++++++++++++++%+++++++++++++++++++++++++接收机++++++++++++++++++++++++RxSD = Demodulator(r, PN, MF, Walsh); %软判决,速率为19.2 KcpsRxHD = (RxSD>0); % 定义接收码片的硬判决if (SD)[RxData Metric]= ReceiverSD(RxSD, G_Vit, Scrambler); %软判决else[RxData Metric]= ReceiverHD(RxHD, G_Vit, Scrambler); %硬判决end%++++++++++++++++++++++++++++++++++++++++++++++++++++++if(show)subplot(311); plot(RxSD, '-o'); title('Soft Decisions'); %软判决结果图subplot(312); plot(xor(TxChips, RxHD), '-o'); title('Chip Errors');%RAKE接收机输入符号与发送码相比出错的码subplot(313); plot(xor(TxData, RxData), '-o'); %硬判决接收机与发送数据相比的出错码title(['Data Bit Errors. Metric = ', num2str(Metric)]);pause;endif(mod(iter, 50)==0) %每50次保存一次fprintf('.');save TempResults ErrB ErrC N iter %保存结果endErrB = ErrB + sum(xor(RxData, TxData));%求出错比特数ErrC = ErrC + sum(xor(RxHD, TxChips)); %求出错码数iter = iter+ 1;%迭代次数endErrorsB = [ErrorsB; ErrB]; %存储各EbNo值下的出错比特数ErrorsC = [ErrorsC; ErrC]; %存储各EbNo值下的出错码数NN = [NN; N*iter]; %存储各EbNo值下的总数据码数目save SimData * %保存当前迭代的数据end%+++++++++++++++++++++++++误码率计算++++++++++++++++++++++++PerrB = ErrorsB./NN; %出错比特比例%PerrB1 = ErrorsB1./NN1;PerrC = ErrorsC./NN; %出错码比例Pbpsk= 1/2*erfc(sqrt(10.^(EbNo/10))); %EbNo的余误差PcVit= 1/2*erfc(sqrt(10.^((EbNo-EbEcVit)/10)));%EbNo-EbEcVit的余误差Pc = 1/2*erfc(sqrt(10.^((EbNo-EbEc)/10)));%EbNo-EbEc的余误差%+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++%%+++++++++++++++++++++++++性能仿真显示++++++++++++++++++++++ figure;semilogy(EbNo(1:length(PerrB)), PerrB, 'b-*'); hold on;%信噪比误码率图% %semilogy(EbNo(1:length(PerrB1)), PerrB1, 'k-o'); hold on;% semilogy(EbNo(1:length(PerrC)), PerrC, 'b-o'); grid on;% semilogy(EbNo, Pbpsk, 'b-.^');% %semilogy(EbNo, PcVit, 'k-.x'); ylabel('BER');% semilogy(EbNo, Pc, 'b-.x');xlabel('信噪比/dB');ylabel('误码率');grid on;% legend('Pb of System (HD)', 'Pb of System (SD)', 'Pc before Viterbi of System',% ... 'Pb of BPSK with no Viterbi (theory)', 'Pc on Receiver (theory)');%% legend('Pb of System', 'Pc before Viterbi of System', ...%'Pb of BPSK with no Viterbi (theory)',%'Pc before Viterbi (theory)', 'Pc on Receiver (theory)');%+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++disp('--------------end-------------------');%------------------------------------------------------% ************************beginning of file*****************************%PacketBuilder.mfunction [ChipsOut, Scrambler] = PacketBuilder(DataBits, G, Gs);%此函数用于产生IS-95前向链路系统的发送数据包%+++++++++++++++++++++++variables++++++++++++++++++++++++++++% DataBits 发送数据(二进制形式)% G Viterbi编码生成多项式% Gs 长序列生成多项式(扰码生成多项式)% ChipsOut 输入到调制器的码序列(二进制形式)% Scrambler 扰码%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ global Zs %扰码状态K = size(G, 2); %维特比多项式的长度L = size(G, 1); %每个数据比特的码片数N = 64*L*(length(DataBits)+K-1);% 码片数(9.6 Kbps -> 1.288 Mbps)chips = VitEnc(G, [DataBits; zeros(K-1,1)]); % Viterbi编码% 交织编码INTERL = reshape(chips, 24, 16); % IN:列, OUT:行chips = reshape(INTERL', length(chips), 1); %速率=19.2 KBps% 产生扰码[LongSeq Zs] = PNGen(Gs, Zs, N);%根据生成多项式和输入状态产生长度为N的PN序列Scrambler = LongSeq(1:64:end);%扰码ChipsOut = xor(chips, Scrambler); %加扰%************************end of file***********************************% ************************beginning of file*****************************%VitEnc.mfunction y = VitEnc(G, x);% 此函数根据生成多项式进行Viterbi编码%+++++++++++++++++++++++variables++++++++++++++++++++++++++++% G 生成多项式的矩阵% x 输入数据(二进制形式)% y Viterbi编码输出序列%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++K = size(G, 1); %每个数据比特的码片数L = length(x); %输入数据的长度yy = conv2(G, x'); %二维卷积yy = yy(:, 1:L); %根据L重新设定yy长度y = reshape(yy,K*L, 1);%矩阵变形y = mod(y, 2); %模二运算% ************************end of file*********************************** % ************************beginning of file***************************** %PNGen.mfunction [y, Z] = PNGen(G, Zin, N);%% 此函数是根据生成多项式和输入状态产生长度为N的伪随机序列%+++++++++++++++++++++++variables++++++++++++++++++++++++++++% G 生成多项式% Zin 移位寄存器初始化% N PN序列长度% y 生成的PN码序列% Z 移位寄存器的输出状态%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ L = length(G);%扰码生成多项式长度Z = Zin; % 移位寄存器的初始化y = zeros(N, 1);%N*1的0矩阵for i=1:Ny(i) = Z(L); %获取当前状态输出值(移位寄存器的最后一位输出)Z = xor(G*Z(L), Z); %生成移位寄存器次态Z = [Z(L); Z(1:L-1)]; %移位寄存器后移1位end%yy = filter(1, flipud(G), [1; zeros(N-1, 1)]);%yy = mod(yy, 2);%************************end of file*********************************** % ************************beginning of file***************************** %Modulator.mfunction [TxOut, PN, MF] = Modulator(chips, MFType, Walsh);%此函数用于实现IS-95前向链路系统的数据调制%+++++++++++++++++++++++variables++++++++++++++++++++++++++++% chips 发送的初始数据% MFType 成型滤波器的类型选择% Walsh walsh码% TxOut 调制输出信号序列% PN 用于扩频调制的PN码序列% MF 匹配滤波器参数%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ global Zi Zq show R Gi GqN = length(chips)*length(Walsh); %输出数据的数目% 输入速率= 19.2 KBps, 输出速率= 1.2288 Mcpstmp = sign(Walsh-1/2)*sign(chips'-1/2); %求扩频调制码数目的中间变量chips = reshape(tmp, prod(size(tmp)), 1);%矩阵变形[PNi Zi] = PNGen(Gi, Zi, N);%i路PN序列生成[PNq Zq] = PNGen(Gq, Zq, N);%q路PN序列生成PN = sign(PNi-1/2) + j*sign(PNq-1/2); %i、q路以复数形式合并chips_out = chips.*PN;%得到复数形式的码序列chips = [chips_out, zeros(N, R-1)];%码序列0插值chips = reshape(chips.' , N*R, 1);%矩阵变形%成型滤波器switch (MFType) %根据MFType选择滤波器类型case 1%升余弦滤波器L = 25;L_2 = floor(L/2);n = [-L_2:L_2]; %升余弦滤波器点数B = 0.7; %B越大拖尾越小MF = sinc(n/R).*(cos(pi*B*n/R)./(1-(2*B*n/R).^2)); %升余弦滤波器形状MF = MF/sqrt(sum(MF.^2)); %升余弦滤波器特性曲线case 2%矩形滤波器L = R;L_2 = floor(L/2);MF = ones(L, 1); %1->0,锐截止MF = MF/sqrt(sum(MF.^2)); %矩形滤波器特性曲线case 3%汉明滤波器L = R;L_2 = floor(L/2);MF = hamming(L);%生成汉明滤波器MF = MF/sqrt(sum(MF.^2));%汉明滤波器特性曲线endMF = MF(:); %转置TxOut = sqrt(R)*conv(MF, chips)/sqrt(2);%通过成型滤波器TxOut = TxOut(L_2+1: end - L_2); %限定序列区间if (show)figure;subplot(211); plot(MF, '-o'); title('Matched Filter'); grid on;%成型滤波器特性曲线图subplot(212); psd(TxOut, 1024, 1e3, 113); title('Spectrum'); %功率谱密度估计end% ************************end of file***********************************% ************************beginning of file*****************************%Demodulator.mfunction [SD] = Demodulator(RxIn, PN, MF, Walsh);% 此函数是实现基于RAKE接收机的IS-95前向信链路系统的数据包的解调%+++++++++++++++++++++++variables++++++++++++++++++++++++++++% RxIn 输入信号% PN PN码序列(用于解扩)% MF 匹配滤波器参数% Walsh 用于解调的walsh码% SD RAKE接收机的软判决输出%+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% DEMODULATOR This function performs demodulation of the forward% Channel packet, based on RAKE Receiver% Block Diagram% Input Signal -> [Matched Filter] -> [Sampler] -> [RAKE Receiver] -> [Walsh] -> [DeSpreading]% Inputs: RxIn - input signal (I/Q) analoge% PN - PN sequence (used for De-spreading)% MF - matched filter taps% Walsh - Used row of Walsh matrix for recovering %% Outputs: SD - Soft Decisions of RAKE receiver%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++global RN = length(RxIn)/R; %有用码的个数L = length(MF);L_2 = floor(L/2);rr = conv(flipud(conj(MF)), RxIn); %通过匹配接收滤波器rr = rr(L_2+1: end - L_2); %限定接收符号序列长度Rx = sign(real(rr(1:R:end))) + j*sign(imag(rr(1:R:end)));%接收符号采样Rx = reshape(Rx, 64, N/64); %列导向Walsh = ones(N/64, 1)*sign(Walsh'-1/2);%行导向walsh码PN = reshape(PN, 64, N/64)';%矩阵变形PN = PN.*Walsh;%walsh正交% 输入速率= 1.2288 Mpbs, 输出速率= 19.2 KBpsSD= PN*Rx;%解扩SD= real(diag(SD));%确定软判决输出% ***********************end of file***********************************% ************************beginning of file*****************************%ReceiverSD.mfunction [DataOut, Metric] = ReceiverSD(SDchips, G, Scrambler);% 此函数用于实现基于Viterbi译码的发送数据的恢复%+++++++++++++++++++++++variables++++++++++++++++++++++++++++% SDchips 软判决RAKE接收机输入符号% G Viterbi编码生成多项式矩阵% Scrambler 扰码序列% DataOut 接收数据(二进制形式)% Metric Viterbi译码最佳度量%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++if (nargin == 1)%判断只有SDchips传入时在此生成Viterbi编码生成多项式矩阵G = [1 1 1 1 0 1 0 1 1; 1 0 1 1 1 0 0 0 1];end% 速率=19.2 KBpsSDchips = SDchips.*sign(1/2-Scrambler);%解扰INTERL = reshape(SDchips, 16, 24);%解交织SDchips = reshape(INTERL', length(SDchips), 1); % 速率=19.2 KBps[DataOut Metric] = SoftVitDec(G, SDchips, 1);%实现软判决输入的Viterbi译码% ************************end of file**********************************% ************************beginning of file*****************************%SoftVitDec.mfunction [xx, BestMetric] = SoftVitDec(G, y, ZeroTail);%% 此函数是实现软判决输入的Viterbi译码%+++++++++++++++++++++++variables++++++++++++++++++++++++++++% G 生成多项式的矩阵% y 输入的待译码序列% ZeroTail 判断是否包含‘0’尾% xx Viterbi译码输出序列% BestMetric 最后的最佳度量%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++L = size(G, 1); % 输出码片数K= size(G, 2); % 生成多项式的长度N = 2^(K-1); % 状态数T = length(y)/L; % 最大栅格深度OutMtrx = zeros(N, 2*L); %输出矩阵的定义for s = 1:Nin0 = ones(L, 1)*[0, (dec2bin((s-1), (K-1))-'0')];in1 = ones(L, 1)*[1, (dec2bin((s-1), (K-1))-'0')];out0 = mod(sum((G.*in0)'), 2);out1 = mod(sum((G.*in1)'), 2);OutMtrx(s, :) = [out0, out1]; %生成输出矩阵endOutMtrx = sign(OutMtrx-1/2);PathMet = [100; zeros((N-1), 1)]; % 初始状态= 100PathMetTemp = PathMet(:,1); %副本Trellis = zeros(N, T); %栅格的矩阵Trellis(:,1) = [0 : (N-1)]';%给第一列赋值y = reshape(y, L, length(y)/L);%矩阵按输出码片数变形for t = 1:T %主栅格计算循环yy = y(:, t); %取出y的第t列for s = 0:N/2-1[B0 ind0] = max( PathMet(1+[2*s, 2*s+1]) + [OutMtrx(1+2*s, 0+[1:L]) * yy; OutMtrx(1+(2*s+1), 0+[1:L])*yy] );[B1 ind1] = max( PathMet(1+[2*s, 2*s+1]) + [OutMtrx(1+2*s, L+[1:L]) * yy; OutMtrx(1+(2*s+1), L+[1:L]) * yy] );PathMetTemp(1+[s, s+N/2]) = [B0; B1]; %改变状态Trellis(1+[s, s+N/2], t+1) = [2*s+(ind0-1); 2*s + (ind1-1)];%生成栅格矩阵endPathMet = PathMetTemp;%赋状态值endxx = zeros(T, 1);%生成单列0矩阵,输出变量if (ZeroTail) %确定最佳度量BestInd = 1;else[Mycop, BestInd] = max(PathMet); %非‘0’尾,取最大值所在位置endBestMetric = PathMet(BestInd); %得到最后的最佳度量xx(T) = floor((BestInd-1)/(N/2)); %赋值xx最后一个数NextState = Trellis(BestInd, (T+1)); %从栅格矩阵获得初态for t=T:-1:2xx(t-1) = floor(NextState/(N/2));%倒序生成xxNextState = Trellis( (NextState+1), t); %从栅格矩阵获得次态endif (ZeroTail)xx = xx(1:end-K+1);%限定译码输出序列长度end% ************************end of file***********************************% ************************beginning of file*****************************%ReceiverHD.mfunction [DataOut, Metric] = ReceiverHD(HDchips, G, Scrambler);% 此函数用于实现基于Viterbi译码的硬判决接收机%+++++++++++++++++++++++variables++++++++++++++++++++++++++++%HDchips 硬判决RAKE接收机输入符号% G Viterbi编码生成多项式矩阵% Scrambler 扰码序列% DataOut 接收数据(二进制形式)% Metric Viterbi译码最佳度量%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++if (nargin == 1) %判断只有HDchips传入时在此生成Viterbi编码生成多项式矩阵G = [1 1 1 1 0 1 0 1 1; 1 0 1 1 1 0 0 0 1];end% 速率=19.2 KBpsHDchips = xor(HDchips, Scrambler);%解扰INTERL = reshape(HDchips, 16, 24);%解交织HDchips = reshape(INTERL', length(HDchips), 1);%速率=19.2 KBps[DataOut Metric] = VitDec(G, HDchips, 1);%维特比解码%************************end of file***********************************% ************************beginning of file*****************************%VitDec.mfunction [xx, BestMetric] = VitDec(G, y, ZeroTail);%% 此函数是实现硬判决输入的Viterbi译码%+++++++++++++++++++++++variables++++++++++++++++++++++++++++% G 生成多项式的矩阵% y 输入的待译码序列% ZeroTail 判断是否包含‘0’尾% xx Viterbi译码输出序列% BestMetric 最后的最佳度量%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++L = size(G, 1); % 输出码片数K= size(G, 2); % 生成多项式长度N = 2^(K-1); % 状态数T = length(y)/L; % 最大栅格深度OutMtrx = zeros(N, 2*L);%输出矩阵的定义for s = 1:Nin0 = ones(L, 1)*[0, (dec2bin((s-1), (K-1))-'0')];in1 = ones(L, 1)*[1, (dec2bin((s-1), (K-1))-'0')];out0 = mod(sum((G.*in0)'), 2);out1 = mod(sum((G.*in1)'), 2);OutMtrx(s, :) = [out0, out1];%生成输出矩阵endPathMet = [0; 100*ones((N-1), 1)];%初始状态为0PathMetTemp = PathMet(:,1);%副本Trellis = zeros(N, T);%栅格的矩阵Trellis(:,1) = [0 : (N-1)]';%给第一列赋值y = reshape(y, L, length(y)/L);%矩阵按输出码片数变形for t = 1:T %主栅格计算循环yy = y(:, t)';%取出y的第t列for s = 0:N/2-1[B0 ind0] = min( PathMet(1+[2*s, 2*s+1]) + [sum(abs(OutMtrx(1+2*s, 0+[1:L]) - yy).^2); sum(abs(OutMtrx(1+(2*s+1), 0+[1:L]) - yy).^2)] );[B1 ind1] = min( PathMet(1+[2*s, 2*s+1]) + [sum(abs(OutMtrx(1+2*s, L+[1:L]) - yy).^2); sum(abs(OutMtrx(1+(2*s+1), L+[1:L]) - yy).^2)] );PathMetTemp(1+[s, s+N/2]) = [B0; B1];%改变状态Trellis(1+[s, s+N/2], t+1) = [2*s+(ind0-1); 2*s + (ind1-1)];%生成栅格矩阵endPathMet = PathMetTemp;%赋状态值endxx = zeros(T, 1);%生成单列0矩阵,输出变量if (ZeroTail) %确定最佳度量BestInd = 1;else[Mycop, BestInd] = min(PathMet);%非‘0’尾,取最小值所在位置endBestMetric = PathMet(BestInd);%得到最后的最佳度量xx(T) = floor((BestInd-1)/(N/2));%赋值xx最后一个数NextState = Trellis(BestInd, (T+1));%从栅格矩阵获得初态for t=T:-1:2xx(t-1) = floor(NextState/(N/2)); %倒序生成xxNextState = Trellis( (NextState+1), t);%从栅格矩阵获得次态endif (ZeroTail)xx = xx(1:end-K+1); %限定译码输出序列长度end% ************************end of file***********************************运行结果:图1 升余弦滤波器时的结果图2 矩形滤波器时代结果图3 矩形滤波器时代结果2.按照下列框图设计一个CDMA系统,并进行仿真。

基于matlabsimulinkcdma系统多用户仿真

基于matlabsimulinkcdma系统多用户仿真

通信系统原理综设实验报告基于Matlab的CDMA系统的仿真设计教师评语:关键字:cdma,matlab,simulink,多用户检测,滤波器,抽样判决器希望你们都能理解这个系统,并且完善它,免费提供给下届师弟师妹。

老师真心坑爹。

Matlab2018,百度网盘mdl文件下载地址:一、引言CDMA是指在各发送端使用不相同、相互<准)正交的地址码调制所传送的信息,而在接收端在利用码型的<准)正交性,通过相关检测,从混合信号中选出相应的信号的一种技术。

实现CDMA的理论基础是扩频通信,即在发送端将待发送的数据用伪随机码进行调制,实现频谱扩展,然后进行传输,而在接收端则采用同样的编码进行解扩及相关处理,恢复原始的数据信息。

该实验系统通过对多用户下的DS-CDMA系统进行仿真设计,说明DS-CDMA通信系统的基本实现方式,实现PSK调制与解调,加入信道噪声,并实现多用户检测。

在增加用户的情况下,分别检测系统的误码率。

二、系统框图及分析图1DS-CDMA利用不同的地址码<PN序列)区分用户,地址码与用户数据<信码)相乘后得到扩频信号,经信道传输后,在接受端与本地地址码进行相关检测后,从中将地址码与本地地址码一致的用户数据选出,把不一致的用户除掉。

从而实现了利用正交地址码序列区分用户,体现了码分多址的通信方式。

三、系统具体实现及分析1、扩频设计1.1 基本原理扩频通信技术是一种信息传输方式,其信号所占有的频带宽度远大于所传信息必需的最小带宽;频带的扩展是通过一个独立的码序列来完成,用编码及调制的方法来实现的,与所传信息数据无关;在接收端则用同样的码进行相关同步接收、解扩及恢复所传信息数据。

<1)扩频通信的理论基础①香农公式②公式分析A、在给定的传输速率C不变的条件下,频带宽度W和信噪比S/N是可以互换的。

即可通过增加频带宽度的方法,在较低的信噪比情况下,传输信息。

B、扩展频谱换取信噪比要求的降低,正是扩频通信的重要特点,并由此为扩频通信的应用奠定了基础。

基于Matlab的CDMA多用户通信系统的仿真分析

基于Matlab的CDMA多用户通信系统的仿真分析

CDMA通信系统的仿真分析〔燕山大学信息科学与工程学院〕摘要:码分多址〔CDMA〕以扩频信号为根底,利用不同的码型实现同一载波上的不同用户的信息传输,是第三代数字蜂窝移动通信系统采用的多址技术。

本次工程设计使用Simulink仿真工具对4用户的CDMA无线通信系统进展建模、仿真和分析,观察用户和扩频码波形,利用8psk实现调制,分析了信噪比、m序列抽样时间、多址干扰对系统误码率的影响。

关键词:码分多址、Simulink仿真、扩频、误码率分析1前言CDMA通信,是利用相互正交〔或准正交〕的编码分配给不同的用户调制信号,实现多用户同时使用一个频率接入网络进展通信。

如果从频域和时域来观察,多个CDMA信号是相互重叠的,或者说它们均占有一样的频段和时间,接收机用相关器在多个CDMA信号中选出其中使用预定码型的信号。

由于利用相互正交〔或准正交〕的编码去调制信号,会将原信号的频谱扩展,因此又称为扩频通信。

CDMA具有伪随机编码调制和信号相关处理两大特点,因此CDMA具有许多优点:抗干扰、抗噪声、抗多径衰落、能在低功率下工作、性强,可多址复用和任意选址等。

CDMA技术在第三代移动通信中得到广泛应用。

本次工程设计使用Simulink仿真工具对4用户的CDMA无线通信系统进展建模、仿真和分析,观察用户和扩频码波形,利用8psk实现调制,分析了信噪比、m序列抽样时间、多址干扰对系统误码率的影响。

2仿真系统整体设计2.1扩频调制原理扩频通信的一般原理如图1所示。

在发送端的信息经信息调制形成数字信号,然后由扩频码发生器产生扩频码序列去调制数字信号以展宽信号的频谱。

展宽以后的信号在对载频进展调制,经过射频功率放大器发射到天线上发射出去。

在收端,从承受天线上收到的宽带射频信号,经过输入电路、高频放大器后送入变频器,下变频至中频,然后由本地产生的与发端完全一样的扩频码序列去解扩,最后经信息解调,恢复成原始信息输出。

图1扩频系统原理框图按照扩展频谱的方式的不同,目前的扩频通信可以分为:直接序列〔DS〕扩频,跳频〔FH〕,调时〔TH〕,以及上述几种方式的组合。

基于MATLAB的CDMA通信系统的仿真

基于MATLAB的CDMA通信系统的仿真

基于MATLAB勺CDM軀信系统的仿真摘要:利用MATLA呼台的Simulink可视化仿真功能,结合CDMA勺实际通信情况,对CDMA!信系统的实现完整以及发送到接收的端到端的CDMA无通信系统的建模、仿真和分析。

本次介绍了CDMA勺主要环节,包括扩频技术、信道等参数设置。

关键字:码分多址;扩频;MATLA;B Simulink1 CDMA 技术基础1.1 扩频定义:扩频技术就是将信息的频谱展宽后进行传输的技术。

理论基础:在白噪声干扰的条件下,信道容量—信道带宽S —信号平均功率 N —噪声平均功率论:在信道容量C 不变的情况下,信道带宽B 与信噪比S/N 完全可以互即可以通过增大传输系统的带宽可以在较低信噪比的条件下获得比 较满意的传输质量。

-fSB ----------k佶号JfO扩频后i 的佶号麵图1扩频过程扩频通信系统的主要特点:(1)隐蔽性和保密性;(2 )抗干扰和抗多径衰落能力强;(3)实现多址技术、增加容量、提高频率复用率;( 4)占用频带较宽,系统复杂性增加。

1.2 CDMA 仿真系统模型建立信源高昕a嗓声图2本次仿真CDM 系统组成框图C = B Iog2 (1 + S / N ) 香农公式相交换,2 Matlab 的CDMA 通信系统的仿真2.1直接扩频的码分多址通信系统的仿真模型CHKBFtt 蛇I?曲寮 FtUrmEeriJIi& n 町直接扩频的码分多址通信系统的仿真模型2.2 仿真系统的各部分分析宽度为6X 10 - 6 s 。

(1)第一路伯努利二进制随机信号发生器iT —l"g<j| lii Sin OffB«rioLjlli B -in-ary---图4二进制伯努利序列产生器 图5第一路发生器产生的仿真波形h_n_n_rir r-r-1 EUJR . jii _k - ni~ tna-KDspley|~u n rj strMli Ernar/Berculli 帥町 Ge-teiEbflMl€ei[z3.31C21zg£淞1S 叭训 i Sinijy3finGfEO2削LcncEGenermxIrteucDsli ^*?**tM[;DE3i :i F It^lQajsa.q Sse2.2.1 伯努利二进制随机信号发生器三个 Bernoulli Random Binary Generator(伯努利二进制随机信号发生器)表示三个不同的通信用户发射各自的通信信息 (基带信号),码元u 呦C 就Ber J Hi Bi n 17*T JC Enn 社t許离亡E IdIstizinPLTII } EiwRstiCal ulatUT 也) f 匚卄1"K E™ mat表2第一路二进制伯努利序列产生器参数设置参数名称 参数值模块类型Berno ulli Binary Gen eratorP robability of a zero0.5 In itial seed 12345 Samp le time 3*2e-7 Frame-base out putsUncheckedIn terl pret vector p arameter as 1-DUnchecked(2)第二路伯努利二进制随机信号发生器□crnobll i曰 i narv曰crnmu Hi Bi n ary图6二进制伯努利序列产生器表3第二路二进制伯努利序列产生器参数设置参数名称 参数值模块类型Berno ulli Binary Gen eratorP robability of a zero0.5 In itial seed 54321 Samp le time 3*2e-7 Frame-base out putsUnchecked Interlpret vector parameter as 1-DUnchecked(3)第三路伯努利二进制随机信号发生器图9第三路发生器产生的仿真波形D …1 — III n ■ 1 1 …1 1 [・ py.—…IT11 1 1 ■ 1= ---- ■- ------ ! - ----- 1 - — 1 ■ ■■ 1 ■ 1 1 1 - - 1 ■ I---- ■ : 7 --- ■ 1 h- ■----1 ■L ■* ~-12H01 0.01R —iCigjIli binaryBcjma-Lklli ainnjy图8二进制伯努利序列产生器图7第二路发生器产生的仿真波形表4第二路二进制伯努利序列产生器参数设置参数名称 参数值模块类型Berno ulli Binary Gen eratorP robability of a zero0.5 In itial seed 13542 Samp le time 3*2e-7 Frame-base out putsUnchecked In terl pret vector p arameter as 1-DUnchecked222 直接扩频图10 PN 伪随机序列产生器表 5 PN Seque neeGen erator 参数设置(rf-iltrHlcVf 戸&丁也卸“讥"卜成寧项式JCl 1 0 0 J]to 1 0 0]Sc^itTfnr 匱羽荐曲) 0SiHupk t inK <釆样 时阪P裁一T本系统中的m 序列周期是15,码元宽度为2X 10 — 7 s ,基带信号码元宽度是m 序列码元宽度的30倍, 正好是两个m 序列的周期。

基于MATLAB的CDMA系统RAKE接收机仿真分析

基于MATLAB的CDMA系统RAKE接收机仿真分析

06 仿真结果讨论与结论
仿真结果对比分析
仿真结果与理论 值的对比来自不同参数设置下 的性能对比
与传统接收机的 性能对比
仿真结果的可视 化展示
性能提升方案探讨
算法优化:针对CDMA系统RAKE接收机的算法进行优化,以提高解调性能。 信道估计:采用更准确的信道估计方法,降低误码率,提高通信质量。 多天线技术:利用多天线技术提高信号的抗干扰能力和覆盖范围。 联合检测:采用联合检测算法,降低干扰,提高系统容量和频谱利用率。
的指标
05
CDMA系统RAKE接收 机仿真分析
仿真环境搭建
MATLAB软 件介绍
RAKE接收机 模型建立
CDMA系统 模型建立
仿真参数设 置与运行
仿真参数设置
信号类型: CDMA信号
信噪比范围:030dB
多径分量:3个
仿真时长: 100ms
仿真结果分析
误码率:随着信 噪比的增加,误 码率逐渐降低
M AT L A B 简 介
MATL AB是一种 用于算法开发、 数据可视化、数 据分析和数值计 算的编程语言和 开发环境
它提供了大量的 内置函数和工具 箱,可用于各种 领域,如信号处 理、通信、控制 系统等
MATL AB具有简 单易学的语法和 强大的计算能力, 使得非专业程序 员也能轻松地编 写高效的代码
单击添加标题
适用场景:适用于多径环境和移动通信系统,如CDMA、WCDMA等。
RAKE接收机性能指标
信号-噪声比: 衡量RAKE接 收机性能的重
要指标
误码率:衡量 数据传输可靠 性的关键指标
频谱效率:衡 量频谱利用率 的指标,直接 影响系统容量
和传输速率
抗干扰能力: 衡量RAKE接 收机在复杂环 境下工作能力

基于MATLAB的CDMA通信系统仿真

基于MATLAB的CDMA通信系统仿真

基于MATLAB的CDMA通信系统仿真
张培珍;张剑兰
【期刊名称】《广东海洋大学学报》
【年(卷),期】2008(028)004
【摘要】利用MATLAB平台的SIMULINK可视化仿真功能,完整地实现了CDMA 无线通信系统的建模、仿真和分析;介绍了CDMA的主要环节(包括扩频技术、差错控制技术、调制技术、信道等)的参数设置.
【总页数】5页(P86-90)
【作者】张培珍;张剑兰
【作者单位】广东海洋大学信息学院,广东,湛江,524088;广东海洋大学信息学院,广东,湛江,524088
【正文语种】中文
【中图分类】TN911.6
【相关文献】
1.基于MATLAB的OFDM通信系统仿真设计 [J], 张宾
2.基于Matlab的通信系统仿真及失真情况研究 [J], 王晓鹏
3.基于MATLAB的通信系统仿真教学研究 [J], 孙丰刚;兰鹏
4.基于Matlab 的室内可见光通信系统仿真研究 [J], 结硕;张黎;曾凡文
5.基于MATLAB的扩频通信系统仿真研究 [J], 姜世澄
因版权原因,仅展示原文概要,查看原文内容请购买。

CDMA系统仿真(matlab)

CDMA系统仿真(matlab)

CDMA系统仿真1.设计要求说明用matlab进行CDMA系统仿真,CDMA系统框图如图所示。

图 1 CDMA系统框图2、设计思路通过对IS-95窄带CDMA反向业务信道原理的了解,采用模块化思想,分为信源编码,信道交织编码,AWGN信道传播,信道解码以及信源解码等部分。

3、核心原理3.1 Viterbit(卷积)编码卷积码是分组的,但它的监督元不仅与本组的信息元有关,还与前若干组的信息由关。

着种码纠错能力强,不仅可以纠正随机差错,还能纠正突发差错。

本系统采用(2,1,8)卷积编码,编码器如图 2所示:图 2 卷积编码3.2 Walsh 码扩频Walsh 码是一组由0和1元素构成的正交方阵,即其任意两行(或两列)相互正交。

IS-95系统利用Walsh 码作为地址码,与信息数据相乘(或模2加)进行地址么调制,增强系统的抗干扰能力。

3.3 数据扰码利用伪随机序列对数据进行扰码,增强系统的抗干扰能力。

伪随机序列具有类似于随机序列的确定序列,序列中不同位置的元素取值相互独立,取0和1的概率相等。

本系统采用生成矩阵为[1000000101010001110011011110000010011101111]的m 序列发生器,对数据进行扰码。

3.4 QPSK 信号 3.4.1 QPSK 调制MPSK 调制中最常用的就是4PSK ,又称QPSK 。

因为它有四种相位状态,所以称为四相键控;又因为他是两个相互相交的BPSK 之和,所以又称作为正交移相键控,记作QPSK 。

对于矩形包络的多进制移相键控(MPSK ),其已调信号的表达式为:)(sin )()(cos )()(t t Q t t I t S c c MPSK ωω-=式中∑-=nb n nT t rect a t I )()( 同相分量∑-=n bnnTt rectbtQ)()(正交分量当M=4时,即位QPSK,它是由两个互相正交的BPSK之和构成的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程论文题目:基于MatlabCDMA多址技术的仿真学生姓名:苏未然学生学号:**********系别:电气信息工程学院专业:电子信息工程年级:10级指导教师:王丽电气信息工程学院制2013年4月目录绪论 (3)第1章CDMA通信系统分析及仿真 (4)1.1整体仿真框图 (4)1.2信源 (5)1.3伪随机序列生成器 (6)1.4扩频 (7)1.5编码和调制 (8)1.6接收端 (9)第2章仿真系统 (10)2.1 信源 (10)2.2 编码 (10)2.3 扩频 (11)2.4 调制与解调 (11)2.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要大4~5倍,所以在通信领域中起着非常重要的作用。

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序列都是单极性的二进制数,所以在进入乘法器进行扩频之前,还要对它们进行单/双变换,变成双极性信号。

图2—2分别给出了原信号波形、扩频序列波形和扩频后的信号波形。

本系统的扩频倍数为10a.原信号波形b.扩频序列波形c. 扩频后的信号波形图1—2 直接序列扩频方式1.5 编码和调制1.5.1 BCH编码仿真框图如2—3所示。

模型采用(7,4)BCH码,要求送入编码器的是维数为4的矢量,编码器的输出是维数为7的矢量,即为每个信息组添加了3位校验码元,由图2—4得知,只进行差错控制编码,而没有经过扩频的信号,在给定的高斯信道中传输,随着码源传输的时间增加,误码率会比较高。

图1—3 BCH码的仿真框图图1—4 BCH码的误码率曲线误码率计算公式10×log10(power_signal/power_noise)The AWGN Channel (高斯白噪声信道)模块可以在输入信号中加入实信号噪声或复合信号噪声。

当输入信号是实信号时,此模块在输入信号中加入实高斯白噪声,并输出实信号。

当输入信号是复合信号时,此模块在输入信号中加入复合的高斯白噪声,并输出符合信号。

次模块从输入信号中得到抽样时间。

这个模块用DSP Blockset(数字信号处理)模块中的Random Source(随机信号源)模块来产生噪声。

The Initial seed(初始种子)参数用来初始化信号发生器。

The Initial seed(初始种子)即可以是标量也可以是矢量。

这个标量或矢量的长度要与信道匹配。

1.5 M-PSK仿真图2—5给出的是M=16时M-PSK的仿真框图,信号调制后的频谱和相位星座图分别如图2—6和图2—7所示。

本文中4个调制器的相数M分别为16,32,32,40。

由星座图可以得知,将每个输入信号都对应于一个点,点与点之间的相位差为360°/16=22.5°。

1.5信道信道中的噪声直接影响着信号的传输质量。

根据信道中噪声的特点,可将信道划分为:加性高斯白噪声信道(Additive White Guassion Noise,AWGN)、二进制对称信道、多径瑞利衰落信道和伦琴衰落信道等,我们在仿真中采用的是AWGN信道。

图2—8中的正弦波功率设置为1 W,曲线表明,当SNR是-20 dB时,噪声功率是100 W;SNR是20 dB时,噪声功率是0.01 W。

可见,为了得到比较优的性能,应合理设置输入信噪比。

图1—5 M—PSK仿真模型图图1—6 M—PSK信号频谱图图1—7 M—PSK信号星座图图1—8 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。

滤波器幅频、相频特性曲线如图2—9所示。

发送信号与接收机恢复出的信号同时送入误码仪(Error-rate meter)模块进行比较,误码仪可计算和显示误码率和误比特率。

图1—9滤波器特性第2章仿真系统本系统主要包括信号源输入、扩频序列发生器、扩频解扩、编码译码、调制解调、信道、接收判决、误码计算等。

为了简化模型,使用了子系统将其中的一些模块进行了封装。

设计中,使用了递加的方法,可以实现多个不同用户按不同情况接入,图3—1为整体仿真框图。

图3—1 整体仿真框图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序列都是单极性的二进制数,所以在进入乘法器进行扩频之前,还要对它们进行单/双变换,变成双极性信号。

图2—2分别给出了原信号波形、扩频序列波形和扩频后的信号波形。

本系统的扩频倍数为10。

2.4 调制与解调本文采用M—PLK调制与解调。

2.5 误码计算滤波器幅频、相频特性曲线如图2—9所示。

发送信号与接收机恢复出的信号同时送入误码仪(Error-rate meter)模块进行比较,误码仪可计算和显示误码率和误比特率。

第3章实验结果与总结3.1 单用户在不同信道环境下的仿真由表1可以分析出,在信道传输过程中,信道的噪声对结果影响很大,在噪声功率为100W的情下,误码率偏高。

降低噪声功率后,误码率也明显减小。

可见,在单用户情况下,CDMA通信系统的码率主要取决于信道中的噪声。

3.2 多用户在相同信道环境下的仿真仿真条件:用户数从1到4,由于本系统采用了递加的方法,所以可以在同一个系统中观察到从1个用户一直到4个用户的四种不同情况下的仿真。

由表2的仿真结果可以看出,由于是采用了噪声功率为0.01W的信道传输环境,所以在单用户情况下误码率为0,而增加了用户数之后,误码率也随之增加。

可见,信号在传输过程中,除了受到信道噪声的影响外,还存在多址接入干扰、单频干扰、窄带干扰、跟踪式干扰等,主要是多址接入干扰。

表3—1 单用户在不同信道环境下的仿真表3—2多用户在相同信道环境下的仿真[1] 刘学勇,编著.通信系统建模与仿真(电子工业出版社)[2] 邓薇,编著.MATALB函数速查手册(人民邮电出版社)[3] William C.Y.Lee,著.移动通信工程理论和应用(第二版)(人民邮电出版社)[4] 王华奎,李艳萍等编著.移动通信原理与技术(清华大学出版社)经过信道后的信道频谱信号经过信道后的星座图可以看出信号经过信道后,星座点的位置变得杂乱无章,如果不进行信道补偿,则系统的误码率会大大增加。

相关文档
最新文档