基于FPGA的数字调制解调器设计毕业设计.docx

上传人:b****5 文档编号:5845404 上传时间:2023-01-01 格式:DOCX 页数:59 大小:1.03MB
下载 相关 举报
基于FPGA的数字调制解调器设计毕业设计.docx_第1页
第1页 / 共59页
基于FPGA的数字调制解调器设计毕业设计.docx_第2页
第2页 / 共59页
基于FPGA的数字调制解调器设计毕业设计.docx_第3页
第3页 / 共59页
基于FPGA的数字调制解调器设计毕业设计.docx_第4页
第4页 / 共59页
基于FPGA的数字调制解调器设计毕业设计.docx_第5页
第5页 / 共59页
点击查看更多>>
下载资源
资源描述

基于FPGA的数字调制解调器设计毕业设计.docx

《基于FPGA的数字调制解调器设计毕业设计.docx》由会员分享,可在线阅读,更多相关《基于FPGA的数字调制解调器设计毕业设计.docx(59页珍藏版)》请在冰豆网上搜索。

基于FPGA的数字调制解调器设计毕业设计.docx

基于FPGA的数字调制解调器设计毕业设计

基于FPGA的数字调制解调器设计

摘要

本设计使用FPGA在EDA技术开发软件QuartusⅡ上实现以正弦信号为载波的三种调制信号ASK、FSK、PSK的调制和解调。

系统采用ALTERA公司生产的DE2开发板,CycloneIIEP2C35F672C6型号的FPGA和EPCS16系列的配置驱动,使用VHDL硬件描述语言实现,系统时钟为50MHZ,经四分频产生一路时钟信号经过DDS波形发生器形成ASK,PSK及FSK的一路载波,FSK的另一路载波由系统时钟经八分频后经过DDS波形发生器后产生。

由于ASK和PSK调制特性相近,载波都为一路信号。

因此在设计时将ASK和PSK调制放在同一模块里设计,用一个选择键和两个基带信号控制端来控制。

系统时钟经过512分频后经过随机信号模块产生一路周期为15的伪随机序列作为数字调制的基带信号。

在解调时,用非相干解调法解调ASK和PSK信号,用过零检测法解调FSK信号。

经过功能仿真和验证后,测试输出信号与基带信号是否相符。

关键词:

FPGA,ASK,PSK,FSK

 

 

DigitalmodulationanddemodulationbasedonFPGA

Abstract

ThisdesignusesFPGAonEDAtechnologydevelopmentplatformQuartusⅡtoachievethegenerationandthedemodulationofthreemodulationsignal——ASK,FSK,PSKascarrierthroughsinusoidalsignals.ThesystemusestheALTERAcompany'sDE2developmentboard,FPGAofTypeCycloneIIEP2C35F672C6FPGAanddriverconfigurationofEPCS16series.ThissystemisrealizedinVHDLhardwaredescriptionlanguage,whoseASK,PSKandFSKcarrierisgeneratedwhenthefourfrequencyproducesaclocksignalthroughtheDDSwaveformgenerator,andthesystemclockis50MHZ.BecausethecharacteristicsofASKandPSKmodulationaresimilartoeachother,whichmeanstheircarrierarebothonewaysignal,themodulationofASKandPSKareputonthesamemodelwhendesigned,withaselectionkeyandthetwobasebandsignalcontrolendscontrolling.Systemclockgeneratespseudorandomsequencebasebandsignalswhoseoneroadcycleis15asbasebandsignalsthroughrandomsignalmodelafterthe512frequencydivision.Wheninmodulation,weusenoncoherentdemodulationtodemodulateASKandPSKsignal,andthezerocrossingdetectionmethodforFSKsignaldemodulation.Afterthesystemistestedthroughthefunctionsimulationandverification,whethertheoutputsignalandthebasebandsignalareconformedtoeachotherornotwillbetested

Keywords:

FPGA,ASK,PSK,FSK

1绪论

1.1课题背景与研究现状

1.1.1数字调制解调背景知识

如今社会通信技术的发展速度可谓日新月异,计算机的出现在现代通信技术的各种媒体中占有独特的地位,计算机在当今社会的众多领域里不仅为各种信息处理设备所使用,而且它与通信向结合,使电信业务更加丰富。

随着人类经济和文化的发展,人们对通信技术性能的需求也越来越迫切,从而又推动了通信科学的发展。

在通信理论上,先后形成了“过滤和预测理论”、“香浓信息论”,“纠错编码理论”,“信源统计特性理论”,“调制理论”等。

通信作为社会的基本设施和必要条件,引起的世界各国的广泛关注,通信的目的就是从一方向另一方传送信息,给对方以信息,但是消息的传送一般都不是直接的,它必须借助于一定形式的信号才能便于远距离快速传输和进行各种处理。

虽然基带信号可以直接传输,但是目前大多数信道不适合传输基带信号。

现有通信网的主体为传输模拟信号而设计的,基带数字信号不能直接进入这样的通信网。

基带信号一般都包含有较低的频率,甚至是直流的分量,很难通过有限尺寸的天线得到有效辐射,因而无法利用无线信道来直接传播。

对于大量有线信道,由于线路中多半串接有电容器或并接有变压器等隔直流元件,低频或直流分量就会受到很大限制。

因此,为了使基带信号能利用这些信道进行传输,必须使代表信息的原始信号经过一种变换得到另一种新信号,这种变换就是调制。

实际中一般选正弦信号为载波信号。

代表所传信息的原始信号,是调制载波的信号。

数字调制传输在现代通信中发挥着越来越重要的作用,主要是因为数字通信有以下优点:

1数字信号便于存储、处理、抗干扰能力强;

2数字信号便于交换和传输;

3可靠性高,传输过程中的差错可以设法控制;

4数字信号易于加密且保密性强;

5通用性和灵活性好。

经过调制后,各路信号可已搬移到更高不重叠的频段去传输,从而避免多路传输中的相互干扰。

基于这种目的,信号经调制后再传输的方式又称为频带传输。

二进制数字调制所用调制信号由“0”和“1”代表的数字信号脉冲序列组成。

因此,数字调制信号也成为键控信号。

在二进制振幅调制、频率调制和相位调制分别称为振幅键控(ASK)、频移键控(FSK)、相移键控(PSK)。

数字调制产生模拟信号,其载波参量的离散状态是与数字数据相对应的,这种信号适宜于在带通型的模拟信道上传输。

虽然三种调制解调的原理比较简单,但作为数字通信原理的入门学,理解ASK,PSK,FSK后可以容易理解其他更复杂的调制系统,为以后的进一步发展打下基础。

1.1.2FPGA背景知识

现场可编程门阵列(FPGA)是在专用ASIC的基础上发展出来的,它克服了专用ASIC不够灵活的缺点。

与其他中小规模集成电路相比,其优点主要在于它有很强的灵活性,即其内部的具体逻辑功能可以根据需要配置,对电路的修改和维护很方便。

随着VLSI(VeryLargeScaleIC,超大规模集成电路)工艺的不断提高,单一芯片内部可以容纳上百万个晶体管,FPGA/CPLD芯片的规模也越来越大,目前,FPGA的容量已经跨过了百万门级,使得FPGA成为解决系统级设计的重要选择方案之一。

和其他通用DSP相比,FPGA在处理方式上和设计编程上有很大的区别,它更强调数据的平行处理和流水线处理并且有更强的灵活性和可编程型,所以FPGA在定点数据处理方面有很大的优势。

FPGA/CPLD可容纳上百万个晶体管,芯片的规模也越来越大。

为了满足设计需求,以可编程门阵列FPGA为代表的器件得到了广泛的应用,器件的集成度和运行速度都在高速增长。

基于FPGA的数字调制解调器与模拟电路调制解调器相比,具有功耗低、结构简单、性能优越等特点,故在实际工程中得到了广泛的应用。

针对传统用硬件实现数字调制解调的方法,特别是相干解调需要提取载波,设备相对复杂、成本较高的特点,研究了基于FPGA芯片的调制解调系统,即通过QuartusII软件,采用VHDL硬件描述语言,利用DE2开发板设计并实现ASK,FSK,PSK的调制解调器。

由于FPGA的调制解调技术在通信系统中占据非常重要的地位,它的优劣决定了通信系统的性能。

本设计用到的是Altera公司的FPGA器件EP2C35F672C6,该器件隶属于CycloneII系列,具有更大的容量和极低的单位逻辑单元成本。

从结构上看,该器件具有多达150个嵌入18×18乘法器,适合于实现低成本数字信号处理(DSP)应用;它包含每块具有4608bit的M4K存储块,提供高达1.1Mbit的片内存储器,支持多种配置;它能以688Mbps的速率同DDR、DDRII和SDRSDRAM器件及QDRIISRAM器件相连接,并支持多种单端和差分I/O标准;支持NiosII系列嵌入式处理器,具有低成本和完整的软件开发工具。

Altera也为CylconeII器件客户提供了40多个可定制IP核,Altera和AlteraMegafunction伙伴计划(AMPPSM)合作者提供的不同的IP核是专为CycloneII架构优化的,包括:

NiosII嵌入式处理器;DDRSDRAM控制器;FFT/IFFT;PCI编译器;FIR编译器;NCO编译器;POS-PHY编译器;ReedSolomon编译器;Viterbi编译器等。

1.2课题的主要研究工作

课题主要研究二进制ASK,PSK,FSK调制解调系统的实现,完成对数字信号的调制与解调,在简化系统的前提下,根据系统的总体功能与硬件特点,设计总体框图,根据VHDL语言的特点,对VHDL建模并进行具体语言设计,让系统的解调结果准确,进行波形仿真与调试,完成调制解调任务。

本系统设计的重点在于作为载波的正弦波,由正弦信号发生其产生,在一个周期内完成256次采样。

另外,三种数字信号的解调方法也不完全相同。

由于利用相干解调方法需要本地载波参与解调,会使系统复杂且准确度降低,因此采用非相干解调,以正确解调出基带信号。

1.3本论文的结构

第一章阐述了数字调制解调的背景知识和现状,以及FPGA的基本概念。

第二章介绍了EDA以及开发FPGA的软件的基本知识和主要使用方法,并介绍了VHDL语言的设计流程和基本语法。

第三章分析了ASK,PSK,FSK的调制解调原理理论分析。

第四章结合硬件平台进行方案选择,设计数字调制解调系统,包括程序的编写及硬件模块设计,以及仿真结果。

第五章给出了调制解调器调制解调信号的测试结果和程序仿真结果。

第六章为本论文的结束语。

2.EDA技术简介

EDA是电子设计自动化(ElectronicDesignAutomation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的,EDA技术就是依靠功能强大的电子计算机,在EDA工具软件平台上,对以硬件描述语言HDL(HardwareDescriptionLanguage)为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、化简、分割、综合、优化、仿真,直至下载到可编程逻辑器件CPLD/FPGA或专用集成电路ASIC(ApplicationSpecificIntegratedCircuit)芯片中,实现既定的电子电路设计功能。

EDA技术可把数字通信技术,微电子技术和现代电子设计自动技术结合起来,实现硬件设计软件化,加速了数字通信系统设计的效率,降低了设计成本。

利用EDA技术进行电子系统的设计,具有以下几个特点:

(1)用软件的方式设计硬件;

(2)用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;(3)设计过程中可用有关软件进行各种仿真;(4)系统可现场编程,在线升级;(5)整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。

因此,EDA技术是现代电子设计的发展趋势。

2.1QuartusII简介

QuartusII是Altera公司继MAX+PLUSII后,所提供的FPGA/CPLD开发集成环境,主要针对本公司新器件和大规模FPGA的开发。

QuartusII提供一个容易适应特定设计所需要的完整的多平台设计环境。

它不仅包括FPGA/CPLD设计所有阶段的解决方案,而且也提供可编程片上系统(SOPC)设计的综合性环境。

QuartusII除了保留有MAX+PLUSII的特色外,也可以利用第三方的综合工具,如Synopsys、NativeLink、仿真工具ModelSim等。

设计者可以通过传统原理图输入法(GDF)或硬件描述语言(VHDL)设计一个数字系统,通过软件仿真我们可以事先验证设计正确性,在PCB完成后还可以利用CPLD的在线修改能力随时修改设计而不必改动硬件电路。

电路设计与输入是指通过某些规范的描述方式,将工程师电路构思输入给EDA工具。

常用的设计方法有硬件描述语言(HDL)和原理图设计输入方法等。

原理图设计输入法在早期应用的比较广泛,它根据设计要求,选用器件、绘制原理图、完成输入过程。

这种方法的优点是直观、便于理解、元器件库资源丰富。

但是在大型设计中,这种方法的可维护性较差,不利于模块构造与重用。

更主要的缺点就是当所选用芯片升级换代后,所有的原理图都要做相应的改动。

目前进行大型工程设计时,最常用的设计方法是HDL设计输入法,其中影响最为广泛的HDL语言是VHDL和Verilog。

他们的共同特点是利用由顶向下设计,利于模块的划分与复用,可移植性好,通用性好,设计不因芯片的工艺与结构不同而变化,更利于向ASIC的移植。

波形输入和状态机输入方法是两种常用的辅助设计输入方法:

使用波形输入时,绘制出激励波形与输出波形,EDA软件就能自动地根据响应关系进行设计;使用状态机输入法时,设计者只需要画出状态转移图,EDA软件就能生成相应的HDL代码或原理图,使用十分方便。

2.1.1QuartusII的使用及主要设计流程

QuartusII可以使设计者完成设计输入、分析与综合、仿真、布局布线、时序分析及编程下载等工作。

QuartusⅡ支持多种编辑输入法,包括图形编辑输入法,VHDL、VerilogHDL和AHDL的文本编辑输入法,符号编辑输入法,以及内存编辑输入法。

QuartusⅡ与MATLAB和DSPBuilder结合可以进行基于FPGA的DSP系统开发,是DSP硬件系统实现的关键EDA工具,与SOPCBuilder结合,可实现SOPC系统开发。

QuartusII的设计流程与过去传统意义的电子设计大不相同。

尤其表现在:

传统设计是自底向上的设计,合格产品的设计总要反复多次试验,次数主要取决于经验而且必须制成成品才能进行仪器测量。

而QuartusII采用的是自顶向下的设计,缩减了设计成本,缩短了设计周期,更接近于常规思维方式,标准产品方便测试,对设计者经验要求低,保密性强集成度高。

图2.1显示了使用QuartusII进行设计的各主要环节。

图2.1QuartusII主要设计环节

这几个环节分别介绍如下:

(1)设计输入:

设计输入包括图形输入和硬件描述语言(HDL)文本输入两大类型。

本次实验中主要用到其中的原理图输入和VHDL输入两种方式。

HDL设计方式是现今设计大规模数字集成电路的常用形式,除IEEE标准中VHDL与VerilogHDL两种形式外,还有各自FPGA厂家推出的专用语言,如QuartusII下的AHDL。

HDL语言描述在状态机、控制逻辑、总线功能方面较强;而原理图输入在顶层设计、数据通路逻辑等方面具有图形化强、功能明确等特点。

QuartusII支持层次化设计,可以在一个新的输入编辑环境中调用不同输入设计方式完成的模块,从而完成混合输入设计以发挥二者各自特色。

(2)分析与综合:

在完成设计输入之后,即可对其进行分析与综合。

其中先进行语法的分析与校正,然后依据逻辑设计的描述和各种约束条件进行编译、优化、转换和综合。

最终获得门级电路甚至更底层的电路网表描述文件。

因此,综合就是将电路的高级语言(如行为描述)转换成低级的,可与FPGA/CPLD的基本结构相映射的网表文件或程序,既可以使用QuartusII中的综合器来分析设计文件和建立工程数据库,也可使用其他EDA综合工具综合设计文件,然后产生与QuartusII软件配合使用的网表文件。

(3)仿真:

仿真包括功能仿真和时序仿真。

进行功能仿真,即直接对VHDL、原理图描述或其他描述形式的逻辑功能进行测试模拟,以了解其实现的功能否满足原设计的要求,仿真过程没有加入时序信息,不涉及具体器件的硬件特性。

而时序仿真接近真实器件运行特性的仿真,仿真精度高。

QuartusII可以通过建立和编辑波形文件,来执行仿真波形的模拟分析。

(4)布局布线:

若功能仿真结果满足逻辑设计,则可执行布局布线。

它的目的是将综合后产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件。

在QuartusII中,是使用由综合中建立的数据库,将工程的逻辑和时序要求与器件的可用资源相匹配。

它将每个逻辑功能分配给最好的逻辑单元位置,进行布线和时序,并选择相应的互连路径和引脚分配。

(5)时序分析

QuartusII中的时序分析功能可以分析设计中所有逻辑的性能,并协助引导适配器满足设计中的时序分析要求。

还可以进行最少的时序分析,报告最佳情况时序结果,验证驱动芯片外信号的时钟至管脚延时。

(6)引脚锁定及下载

为了对设计工程进行硬件测试,应将其输入输出信号锁定在芯片确定的引脚上。

最后是将下载或配置文件通过编程电缆向FPGA或CPLD进行下载,以便进行硬件调试和验证。

2.1.2QuartusII的原理图输入设计流程

应用数字逻辑电路的基本知识,使用QuartusII原理图输入法可以非常方便地进行数字系统的设计,应用QuartusII原理图输入法,还可以把原有的使用中小规模的通用数字集成电路设计的数字系统移植到FPGA中。

设计流程可以分为:

(1)建立工程文件夹,包括工程目录、名称和选择合适器件。

(2)编辑设计图形文件,放置元件、连线、设定输入输出管教名称。

(3)对图形文件进行编译,检查电路是否有误。

(4)时序仿真设计文件,得到方针波形验证设计结果。

(5)编程下载设计文件,包括引脚锁定和编程下载。

2.1.2SignalTapII逻辑分析仪的使用

伴随着EDA工具的快速发展,一种新的调试工具QuartusII中的SignalTapII满足了FPGA开发中硬件调试的要求,它具有无干扰、便于升级、使用简单、价格低廉等特点。

SignalTapII嵌入逻辑分析仪集成到QuartusII设计软件中,能够捕获和显示可编程单芯片系统(SOPC)设计中实时信号的状态,这样开发者就可以在整个设计过程中以系统级的速度观察硬件和软件的交互作用。

它支持多达1024个通道,采样深度高达128Kb,每个分析仪均有10级触发输入/输出,从而增加了采样的精度。

SignalTapII为设计者提供了业界领先的SOPC设计的实时可视性,能够大大减少验证过程中所花费的时间。

目前SignalTapII逻辑分析仪支持的器件系列包括:

APEXTII,APEX20KE,APEX20KC,APEX20K,Cyclone,Excalibur,Mercury,StratixGX,Stratix。

SignalTapII嵌入式逻辑分析器,提供了芯片测试的一个很好的途径。

通过SignalTapII测试芯片无需外接专用仪器,它在器件内部捕获节点进行分析和判断系统故障。

本文通过对CycloneEP2C35F672C6器件的实验证实该测试手段大大提高系统的调试能力,具有很好的效果。

图2.2是SignalTapII嵌入到FPGA的结构图:

图2.2将逻辑分析仪嵌入到FPGA中

使用SignalTapII的一般流程是:

设计人员在完成设计并编译工程后,建立SignalTapII(.stp)文件并加入工程、配置STP文件、编译并下载设计到FPGA、在QuartusII软件中显示被测信号的波形、在测试完毕后将该逻辑分析仪从项目中删除。

以下描述设置SignalTapII文件的基本流程:

(1)设置采样时钟:

采样时钟决定了显示信号波形的分辨率,它的频率要大于被测信号的最高频率,否则无法正确反映被测信号波形的变化。

SignalTapII在时钟上升沿将被测信号存储到缓存。

(2)设置被测信号:

可以使用NodeFinder中的SignalTapII滤波器查找所有预综合和布局布线后的SignalTapII节点,添加要观察的信号。

逻辑分析器不可测试的信号包括:

逻辑单元的进位信号、PLL的时钟输出、JTAG引脚信号、LVDS(低压差分)信号。

(3)配置采样深度、确定RAM的大小。

(4)设置bufferacquisitionmode:

bufferacquisitionmode包括循环采样存储、连续存储两种模式。

循环采样存储也就是分段存储,将整个缓存分成多个片段(segment),每当触发条件满足时就捕获一段数据。

该功能可以去掉无关的数据,使采样缓存的使用更加灵活。

(5)触发级别:

SignalTapII支持多触发级的触发方式,最多可支持10级触发。

(6)触发条件:

可以设定复杂的触发条件用来捕获相应的数据,以协助调试设计。

当触发条件满足时,在signalTap时钟的上升沿采样被测信号。

完成STP设置后,将STP文件同原有的设计下载到FPGA中,在QuartusII中SignalTapII窗口下查看逻辑分析仪捕获结果。

SignalTapII可将数据通过多余的I/O引脚输出,以供外设的逻辑分析器使用;或输出为csv、tbl、vcd、vwf文件格式以供第三方仿真工具使用。

2.2VHDL语言简介

VHDL的英文全名是Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,诞生于1982年。

1987年底,IEEE将VHDL替代了原有的非标准的硬件描述语言,并被美国国防部确认为标准硬件描述语言。

VHDL主要用于描述数字系统的结构,行为,功能和接口。

除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法十分类似于一般的计算机高级语言。

VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。

在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。

这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。

VHDL语言的基本结构:

一个完整的VHDL语言程序通常包括实体声明(EntityDeclaration)、结构体(ArchitectureBody)、配置(Configuration)、程序包(Package)和库(Library)五个组成部分。

其中实体和结构体是不可缺少的。

前4种分别是编译的源设计单元。

库存放已编译的实体,结构体,配置和包;实体用于描述系统内部的结构和行为;包存放各设计模块都能共享的数据类型,常数和子程序等;配置用

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1