《综合课程设计报告CDMA部分含FPGA-verilog代码要点》由会员分享,可在线阅读,更多相关《综合课程设计报告CDMA部分含FPGA-verilog代码要点(18页珍藏版)》请在金锄头文库上搜索。
1、第一章 项目背景1.1 CDMA原理及背景简介CDMA是码分多址的英文缩写(Code Division Multiple Access),它是在数字技术的分支一一扩频通信技术上发展起来的一种崭新的无线通信技术。CDM技术的原理是扩频技术,即将需传送的具有一定信号带宽信息数据,用一个带宽远大于信 号带宽的高速伪随机码(GOLD?)进行调制,使原数据信号的带宽被扩展,再经载 波调制并发送出去。接收端使用完全相同的伪随机码,与接收的带宽信号作相关处 理,把宽带信号换成原信息数据的窄带信号即解扩,以实现信息通信。码分多址(CDMA技术是扩频通信技术在多用户通信系统中的应用,其利用了扩频 序列的编码正交
2、可分性, 使得多个用户信号可以在同一媒介、 同一频率、 同一时间内 传输。每一路码分信号, 都是经过扩频调制的信号, 每一路码分信道都分配了独特的 扩频序列。扩频通信的主要特征是它们的频带宽度B比信息速率R大得多,通过扩频得到扩频增益,用于抵抗各种干扰。因此就CDM本身的优势而言,CDM拥有无与伦比 的巨大潜力。扩频通信技术、码分多址技术和同步技术是 CDM的关键技术,通过CDM数字 基带发射系统的研究更进一步了解 CDM数字基带系统的过程,加深对CDM的扩频 通信技术和码分多址技术的理解,加深对 CDMA系统的理解。同时,我们可以知道 CDM敍术为什么得以快速发展。本项目的重点集中于应用FP
3、GA来实现CDM数字基带系统发射系统,并在此基 础上实现接收系统,具体讲就是将信号进行扩频、GOLD?调制、基带求和、再进行并/ 串转换,在接收端进行解扩和解调,还原出初始发送的数据,其中利用的载波 调制技术室2PSK技术,解调利用相干解调。1.2 FPGA在通信领域的巨大作用21 世纪是一个数字化的世纪, 数字信号处理在新的世纪中有着广泛的应用, 信 息高速公路、移动通信、自动化系统都采用了数字信号处理技术。单片机系统,虽然在一定程度上满足了部分需要,但是由于它的速度和数据处理能力非常有限,不能满足现代数字系统数据的高速率的要求。近几年发展起来的 FPGA技术,满足了这种需求,FPGA功能上
4、比早期的PLD更加强大,主要有编程方 式方便先进,并且拥有较高的工作频率,像 Altera的Cyclone的EP1C3系列,其 工作频率就有40MHZ此外,硬件描述语言 Verilog HDL在编写风格上与C语言十 分的接近,所以FPGA技术不仅可以完成单片机所不能完成的指标,而且更具有灵 活性。这种基于EDA技术的芯片正在成为电子系统设计的主流。此外,FPGA还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编 程来修改。因此,FPGA技术的应用前景非常广阔。FPGA勺发展不断满足当今电子工业的快速发展, 随着集成电路的设计规模日益 增大,复杂程度日益增高,FPGA
5、勺出现和发展大大改变了传统的系统设计方法,这 种方法使得电子系统设计变得更加简单方便、灵活快速。第二章CDMA系统简介CDM技术的基础是扩频通信。扩频:用来传输信息的信号带宽远远大于信息本 身带宽的一种传输方式,频带的扩展由独立于信息的扩频码来实现,与所传信息数 据无关,在接收端用同步接收实现解扩和数据恢复。如下图,我们可以知道CDMA系统的基本原理和TDMA FDMA勺区别。cCCCDMA、TDMA FDMA:匕较扩频通信的理论基础就是著名的香农定理:V 二这个公式表明,在高斯信道中当传输系统的信号噪声功率比S/N下降时,可用 增加系统传输带宽W的办法来保持信道容量C不变。对于任意给定的信号
6、噪声功率 比,可以用增大传输带宽来获得较低的信息差错率。正因为这个原因,扩频通信具 有比较强的抗噪声干扰的能力。CDM技术是以扩频通信为基础的载波调制和多址接 入技术,所以如何实现扩频部分对于整个 CDM系统的实现有着重要的影响。2.1 CDMA系统的关键技术扩频技术是CDM系统的基础,在扩频系统中,常使用伪随机码来扩展频谱,伪随 机码的特性,如编码类型、长度、速度等在很大程度上决定了扩频系统的性能,如抗 干扰能力、多址能力、码捕获时间。因此要实现扩频部分,关键就是如何选择一个比 较好的方法来实现Ph码产生器。而实现Ph码产生器的难点就是实现其同步,即在接收端进行解扩所用的Ph码和接 收到的信
7、号在发送时所用的PN码是同步的,这是扩频技术中的难点。CDM系统要求接 收机的本地伪随机码与接收到的Ph码在结构、频率和相位上完全一致,否则就不能正 常接收所发送的信息,接收到的只是一片噪声。若实现了收发同步但不能保持同步, 也无法准确可靠地获取所发送的信息数据。因此,pr码序列的同步是CDM通信扩频模块的关键技术。但是要真正成为一种商业应用的通信系统,还有很多技术问题需要解 决,本文暂不做考虑。2.2 CDMA系统的基本结构CDMA技术是以扩频通信为基础的载波调制和多址接入技术,所以如何实现扩频 部分对于整个CDMA系统的实现有着重要的影响。 下图是标准的CDMA系统的基本原 理图:石词匝卜
8、I扩频调制IT上变频卜国关信号经信源编码后成为数字信号,经过纠错编码、卷积编码和交织等相关处理后送入调制器中,利用Ph码发生器产生的高速PN码将数字信号变成码片,使得信号的传 输带宽远大于信号本身的带宽以实现扩频通信,同时,为了使信号的传输与信道特性相匹配,必须用载波发生器产生的载波去调制扩频信号。使其频率变为适合信道传愉 的射频频段,将数字信号调制成模拟信号后通过放大器发射出去。 在接收端,利用下 变频器将射频信号还原成中频信号,采用与发射端相同的信号处理技术再将信号还原 成原始信号,从而达到数据通信传输的目的。下面是我们根据标准的CDM通信系统设计的我们系统中的发射机框图:-# -# -F
9、面是我们系统的接收机框图:解调单元 (相干胞络)接收信号-# -# -整体的FPG设计的CDM通信系统如下:-# -系统时钟 发射机 接收机第三章 基于FPGA的CDMA系统设计及仿真分析FPGA是电子设计领域中最具活力和发展前途的一项技术,它的影响丝毫不亚于 70年代单片机的发明和使用。可以毫不夸张的讲,FPGA能完成任何数字器件的功能。在PCB完成以后,还可以利用FPGA勺在线修改能力,随时修改设计而不必改 动硬件电路。使用FPGA来开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统的可靠性。FPGA勺这些优点使得FPGA技术在90年代以后得到飞速的发展, 同时也大大推动了 ED
10、A软件和硬件描述语言的进步。本设计主要利用了FPGA及Verilog HDL语言来设计CDMA数字基带发送接收系统。4.1 FPGA通信系统设计的注意点对于通信系统的建模,除了外围的模拟电路的设计是整个大系统需要考虑外, 更重要的是针对纯数字部分的输入、输出接口信号的要求,进行细致的研究。对于 数字通信系统,对于不同的 Verilog HDL来建模有着不同的效果。一般对于选择什么方法来进行数字通信的建模,从以下几个方面讨论研究27:可行性的影响对于以FPGA通用芯片为目标器件的建模和设计,受到输入信号性质的限制, 对于一些速度要求较高的通信系统,由于现行的FPGAB标器件的限制,无法使用。因此
11、对于通信系统的Verilog HDL建模的可行性应在设计系统方案做充分考虑。 可靠性分析对于通信系统来说,实现系统的可靠性指标是 Verilog HDL建模的难点,这一 点与实现硬件电路是相似的,用硬件描述语言,实现系统功能,有许多方法,实现 建模的方法也可以不同,有时不同的建模风格和方式,可以得到相同的设计结果和 相近的可靠性能,同时,对于组合逻辑电路来说,设计的可靠性,还要考虑组合逻 辑电路的竞争和冒险现象和硬件延时问题。效率的影响系统效率的因素包括芯片资源的优化,软件程序运行的速度等。从软件设计方 面考虑,采用并行方式比串行运行方式运行速率高。在FPGA设计,合理的引脚定义也是很重要的。
12、一个好的引脚定义可以充分利用芯片资源,而一个不好的引脚定 义可能造成芯片资源的巨大浪费,甚至布线失败。总的来讲,通信系统的性能可以根据公式来计算,采用波形级的仿真或通过硬件构成样机及进行测量来评估。对于数字通信系统的Verilog HDL建模,其建模效果最终要经过一定方式的检验和评估,而检验的结果反过来促进其建模或程序设计 的改进与完善。4.2 CDMA系统分模块简介、代码及仿真发射机分频器模块:-# -仿真以输入的20M时钟分频得到10K数据信道串行传输时钟为例,可见设计完全正确:J PT.种T133ZT.秤 Tis09.6 如啊1界655夢砂1lL llmodule clk_div(clk
13、_in,rst_n,clk_out );cnt=0;parameter cnt_top=10; clk_in/clk_out=cnt_top parameter width=4;parameter duty=50;else if(cnt=(cnt_top-1) cnt=0;elsecnt=cnt+1b1;endinput clk_in; input rst_n;output clk_out;always(posedge clk_in or negedge rst_n) beginreg clk_out;reg width-1:0cnt;if(!rst_n)clk_out=0;else if(c
14、nt(cnt_top*duty)/100)clk_out=1;elsealways(posedge clk_in or negedge rst_n) beginif(!rst_n)clk_out=0;end endmodulepll100Minclk0inst12ClkRatioPh (dg)DC (%)c02/10.0050.00inclk0 f requency : 10.000 MHzOperati on Mode: NormalCy clone II(PLL模块产生2倍频信号ROM的读取时钟)四路用户GOLD序列产生模块(通过 ROM寻址):MATLAB 代码:clc;clear al
15、l;hgld = comm.GoldSequence(FirstPolynomial,7 3 0,.SecondPolynomial, 7 3 2 1 0,.FirstlnitialConditions, 0 0 0 0 0 0 1,. SecondlnitialConditions, 0 0 0 0 0 0 1,. Index, 1, SamplesPerFrame, 127);gold1= step(hgld);hgld = comm.GoldSequence(FirstPolynomial,7 3 0,.SecondPolynomial, 7 3 2 1 0,. FirstlnitialConditions, 0 0 0 0 0 0 1,.SecondInitialConditions, 0 0 0 0 0 0 1,. Index, 2,