版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEI基于FPGA的调制信号发生器设计研究摘要直接数字频率合成技术在通信系统中被广泛采用。在研究直接数字频率合成技术的基本原理的基础上,利用FPGA的DSP开发工具DSPBuilder对直接数字频率合成器进行了建模设计,仿真结果显示该DDS频率及相位可灵活调整,具有较高的频率分辨率,能够实现频率及相位的快速切换,并将其应用在模拟调制和数字调制系统中。通过仿真分析证明设计方法的正确性和实用性。本文对通信信号中的AM信号、FM信号、ASK信号、FSK信号、PSK信号等根据DDS的基本原理,利用Matlab/DSPBuilder进行建模,然后用Altera公司提供的SignalCompiler工具对其进行编译,产生QuartusII能够识别的VHDL源程序,并且给出了采用Altera公司的Cyclone系统的FGPA芯片EP1C3T144C8进行仿真,并用ModelSim进行功能仿真及用QuartusII进行时序仿真,以验证所设计的信号满足要求,通过仿真分析设计方法的正确性和实用性,并用EDA实验设备实现,在示波器上观测所设计的信号。文中还简单应用了DSPBuilder设计中的层次化设计来完成调制集成系统的研究,有助于设计复杂的DSPBuilder模型。关键字现场可编程门阵列,直接数字频率合成,模拟调制,数字调制,DSPBuilderPAGEIIABSTRACTDirectdigitalsynthesizertechnologyiswidelyappliedincommunicationsystem.Basedonstudyingthebasictheoryofdirectdigitalsynthesizertechnology,thispassagemakesmodeldesignofDDSwithDSPBuilderofFPGAandappliesDDStodigitalmodulationsystem.ThisDDS’sparameterscanbeadjustedflexibly,simulationresultshowsDDShashighresolutionandfastsettingtime.ThecorrectnessandfeasibilityofDDSwillbeprovedthroughsimulationanalysis.thisarticletosignalsinthesignalcorrespondswhichisAM、FM、ASK、FSK、PSKsignalisaccordingtotheDDSbasicprinciple,establishedtheDDSbasicmodelusingMatlab/DSPBuilder,thentheSignalCompilertoolwhichprovidedusingtheAlteraCorporationtoitcarriesonthetranslation,hasVHDLsourceprogramwhichQuartusIIcoulddistinguishandproduceusesAlteraCorporationcycloneseriesFPGAchipEP1C3T144C8carriesthesimulation.UsingModelSimmakesthesimulationoffunction,andusingQuartusIImakesthesimulationoforderwhencarriesonverifythesignaldesignmeettherequirement.CorrectnessandpracticalitytodesignmethodisanalyzedbythesimulationAndtestwithEDAtheequipmentrealizeandobserveandanalyzeontheoscilloscopesignaldesign.InthearticlealsosimplyappliedDSPBuilderdesignhierarchicaldesigntocompletethemodulationintegrativesystem'sresearch.itwashelpfulindesigncomplexDSPtheBuildermodel.KeywordsFPGA,DDS,AnalogModulation,DigitalModulation,DSPBuilderPAGE2目录摘要 IABSTRACT II1绪论 11.1课题背景 11.2设计要求 22DDS的基本原理 43设计工具 73.1FPGA性能结构 73.2基于EDA工具的FPGA设计流程 93.2.1EDA技术 93.2.2基于EDA的FPGA开发流程 103.3基于FPGA的DSP系统设计流程 123.4DSPBuilder及其设计流程 123.4.1DSPBuilder概述 123.4.2现代DSPBuilder设计流程 133.5QuartusII简述 164模拟调制信号发生器设计 184.1DDS模块设计 184.2幅度调制(AM)信号发生器的设计 194.2.1AM的调制原理 194.2.2AM设计模型 204.2.3Simulink仿真 204.2.4使用Modelsim实现功能仿真 214.2.5使用QuartusII实现时序仿真 224.3频率调制信号(FM)的设计 224.3.1调频信号(FM)的原理 224.3.2FM设计模型 234.3.3仿真 235数字调制信号发生器设计 255.1振幅键控(ASK)信号发生器的设计 255.1.1振幅键控(ASK)的基本原理 255.1.2ASK设计模型 265.1.3仿真图 265.2频移键控(FSK)信号发生器的设计 275.2.1FSK调制基本原理 275.2.2FSK设计模型 285.2.3仿真结果 285.3相移键控(PSK)信号发生器设计 295.3.1PSK调制基本原理 295.3.2PSK设计模型 305.3.3仿真 306调制集成设计 336.1DSPBuilder的子系统 336.1.1模拟调制集成系统 336.1.2数字调制集成系统 346.2调制集成系统 347结束语 35参考文献 36致谢 38PAGE11绪论1.1课题背景无线电技术进行信息传输在现代电子应用中占有及其重要的地位,无线电通信,电视,雷达,遥控遥测等,都是利用无线电技术传输各种不同信息的方式。在这些信息的传递过程中,都要用到调制技术。所谓调制是在传送信号的一方将所要传送的信号“附加”在高频振荡波上,再由发送装置进行传送。本设计对通信信号中的AM信号、FM信号、ASK信号、FSK信号、PSK信号、正交幅度调制电路等进行设计,在设计中选用ALTERA公司现场可编程门阵列CYCLONE系列的器件。通过近20年的发展,通信己成为市场最活跃、份额最高的产业,也成为国际上市场竞争最激烈的部分。随着调制技术在仪表和通信系统中的广泛应用,一种从参考频率源生成多种频率的数字控制方法应运而生,这种技术就是DDS(即直接数字合成)。DDS技术是一种从相位概念出发直接合成所需波形的一种新的全数字频率合成技术。目前,各大芯片制造厂商都相继推出采用先进CMOS工艺生产的高性能、多功能DDS芯片,为电路设计者提供了多种选择。然而在某些场合,专用DDS芯片在控制方式、置频速率等方面与系统的实际要求存在很大差距,这时可以采用高性能FPGA来设计符合具体需要的DDS电路。DDS(直接数字合成)是近年来迅速发展起来的一种新的频率合成方法。这种方法简单可靠、控制方便,且具有很高的频率分辨率和转换速度,非常适合快速跳频通信的要求。目前不断发展的数字信号处理(DSP,DigitalSignalProcessing)技术迅速地扩展到了其应用领域,如3G移动通信、网络会议、多媒体系统、雷达卫星系统、医学仪器、实时图像识别与处理、联合战术无线电系统、智能基站以及民用电器等。所有这一切在功能实现、性能指标与成本方面都在不断增加其要求。在过去很长一段时间,DSP处理器(如TI的TMS320系列)是DSP应用系统核心器件的惟一选择。尽管DSP处理器具有通过软件设计能适用于实现不同功能的灵活性,但面对当今迅速变化的DSP应用市场,特别是面对现代通信技术的发展,DSP处理器早已显得力不从心。例如其硬件结构的不可变性导致了其总线的不可改变性,而固定的数据总线宽度,已成为DSP处理器一个难以突破的瓶颈。DSP处理器的这种固定的硬件结构特别不适合于当前许多要求能进行结构特性随时变更的应用场合,即所谓面向用户型的DSP系统,或者说是用户可定制型,或可重配置型的DSP应用系统(CustomizedDSP或ReconfigurableDSP等),如软件无线电、医用设备、导航、工业控制等方面。至于在满足速度要求方面,由于采用了顺序执行的CPU架构,DSP处理器则更加不堪重负。FPGA器件集成度高、体积小,具有通过用户编程实现专门应用的功能。使用FPGA器件可以大大缩短系统的研制周期,减少资金投入,更吸引人的是,采用FPGA器件可以将原来的电路板级产品集成为芯片级产品,从而降低了功耗,提高了可靠性,同时还可以很方便地对设计进行在线修改,因此有时人们也把FPGA称为可编程的ASIC在这些FPGA中,一般都内嵌有可配置的高速RAM、PLL、LVDS、LVTTL以及硬件乘法累加器等DSP模块。今天大容量、高速度的FPGA的出现,克服了上述方案的诸多不足。它允许电路设计者利用基于计算机的开发平台,经过设计输入、仿真、测试和校验,知道达到预期的结果。用FPGA来实现数字信号处理可以很好地解决并行性和速度问题,而且其灵活的可配置特性,使得FPGA构成的DSP系统非常易于修改、易于测试及硬件升级。在利用FPGA进行DSP系统的开发应用上,已有了全新的设计工具和设计流程。DSPBuilder就是Altera公司推出的一个面向DSP开发的系统级工具。它是作为MATLAB的一个Simulink工具箱(ToolBox)出现的。MATLAB是功能强大的数学分析工具,广泛应用于科学计算和工程计算,可以进行复杂的数字信号处理系统的建模、参数估计、性能分析。Simulink是MATLAB的一个组成部分,用于图形化建模仿真。随着数字技术在仪表和通信系统中的广泛应用,一种从参考频率源生成多种频率的数字控制方法应运而生,这种技术就是DDS(即直接数字合成)。DDS技术是一种从相位概念出发直接合成所需波形的一种新的全数字频率合成技术。目前,各大芯片制造厂商都相继推出采用先进CMOS工艺生产的高性能、多功能DDS芯片,为电路设计者提供了多种选择。然而在某些场合,专用DDS芯片在控制方式、置频速率等方面与系统的实际要求存在很大差距,这时可以采用高性能FPGA来设计符合具体需要的DDS电路。现场可编程门阵列(FPGA)设计无线电和调制解调器与DSP芯片比较,虽然FPGA可轻而易举地实现如卷积编码器等复杂逻辑功能,但在实现大量复杂计算方面却有很大的缺陷。FPGA在通信领域的应用,大大改善了现代通信系统的性能,FPGA的应用也极大的推动了SOC的发展,随着DSP和FPGA技术的不断发展,无线电技术必将成为移动通信中的主流技术,其发展远景非常可观。1.2设计要求课题根据直接数字频率合成原理对通信信号中的AM信号、FM信号、ASK信号、FSK信号、PSK信号、用DSPBuilder进行建摸,并用ModelSim进行功能仿真及用QuartusII进行时序仿真,以验证所设计的信号满足要求,并用EDA实验设备实现,在示波器上观测所设计的信号。基于FPGA的调制信号发生器的设计主要采用了FPGA的硬件设计和DSPBuilder系统级(或算法级)设计工具来实现。利用DSPBuilder进行建摸,同时又通过SignalCompiler可以把Matlab/Simulink的设计文件(.mdl)转成相应的硬件描述语言VHDL设计文件(.vhd),以及用于控制综合与编译的TCL脚本,而对后者的处理可以由FPGA/CPLD开发工具QuartusII来完成。这样我们就可以用ModelSim进行功能仿真及用QuartusII进行时序仿真,以验证所设计的信号满足要求。并用EDA实验设备实现,在示波器上观测所设计的信号。PAGE62DDS的基本原理实现调幅调频信号的核心是正弦波信号的产生。频率控制、模拟幅度调制信号、模拟频率调制信号等功能都是围绕该信号展开的。在设计中采用DDS技术产生不同频率的正弦波,以实现调幅调频信号。DDS(DirectDigitalSynthesizer)即直接数字合成器,是一种新型频率合成技术,具有较高的频率分辨率,可以实现快速的频率切换,并且在频率改变时能够保持相位的连续,很容易实现频率、相位和幅度的数控调制。以正弦信号发生器为例进行讨论,它的输出可以用下式来描述:式(2.1)其中是指该信号发生器的输出信号波形,指输出信号对应的频率。上式的表述对于时间t是连续的,为了用数字逻辑实现该表达式,必须进行离散化处理。用基准时钟进行抽样,令正弦信号的相位:式(2.2)在一个周期内,相位的变化量为:式(2.3)其中指基准时钟频率,对于,可以理解成“满”相位。为了对进行数字量化,把切割成2N份,由此,每个周期的相位增量可用量化值来表述为:式(2.4)且为整数,可得:式(2.5)信号发生器的输出可描述为:式(2.6)其中,指前一个clk周期的相位值,同样可以得出:式(2.7)由上面的推导可以看出,只要对相位的量化值进行简单的累加运算,就可以得到正弦信号的当前相位值,而用于累加的相位增量量化值决定了信号的输出频率,并呈现简单的线性关系。直接数字合成器DDS就是根据上述原理而设计的数字控制频率合成器。DDS是以数控的方式产生频率、相位和幅度可以控制的正弦波,图2.1所示是一个基本的DDS结构,主要由相位累加器、相位调制器、正弦ROM查找表和D/A构成。图中的相位累加器、相位调制器、正弦ROM查找表是DDS结构中的数字部分,由于具有数控频率合成的功能,又合称为NCO(NumericallyControlledOscillators)。图2.1基本DDS结构DDS系统的核心是相位累加器,它由一个累加器和一个N位相位寄存器组成。每来一个时钟脉冲fr,相位寄存器以步长M增加。相位寄存器的输出与相位控制字相加,其结果作为正(余)弦查找表地址。当相位累加器累加满量程,就会产生一次溢出,完成一个周期性的动作,这个周期就合成信号的一个周期,累加器的溢出频率也就是DDS的合成信号频率。在原理框图中,正(余)弦查找表由ROM构成,内部存有一个完整周期正(余)弦波的数字幅度信息,每个查找表的地址对应正(余)弦波幅度信号,同时输出到数模转换器(DAC)输入端,DAC输出的模拟信号经过低通滤波器(LPF)可以得到一个频谱纯净的正(余)弦波。相位累加器是整个DDS的核心,在这里完成上文原理推导中的相位累加功能。相位累加器的输入是相位增量,又由于与输出频率是简单的线性关系:式(2.8)故相位累加器的输入又可称为频率字输入,事实上,当系统基准时钟是时,就等于。频率字输入还经过了一组同步寄存器,使得当频率字改变时不会干扰相位累加器的正常工作。相位调制器接收相位累加器的相位输出,在这里加上一个相位偏移值,主要用于信号的相位调制,如PSK(相移键控)等。在不使用时可以去掉该部分,或者加一个固定的相位字输入。相位字输入也需要用同步寄存器保持同步。需要注意的是,相位字输入的数据宽度M与频率字输入N往往是不相等的,一般M<N。正弦ROM查找表完成的查表转换,也可以理解成相位到幅度的转换,它的输入是相位调制器的输出,事实上就是ROM的地址值,输出送往D/A,转化成模拟信号。由于相位调制器的输出数据位宽M也是ROM的地址位宽,因此在实际的DDS结构中N往往很大,而M总为10位左右。M太大会导致ROM容量的成倍上升,而输出精度受D/A位数的限制未有很大改善。因此,在实际应用中,对于ROM容量的缩小,人们提出了很多解决方法。基本DDS结构的常用参量计算。1) DDS的输出频率由DDS工作原理推导的公式中很容易得出输出频率的计算:式(2.9)是频率输入字,是系统基准时钟的频率值,N是相位累加器的数据位宽,也是频率输入字的数据位宽。2)DDS的频率分辨率或称频率最小步进值,即为1时,可用频率输入值步进一个最小间隔对应的频率输出变化量来衡量。式(2.10)3) DDS的频率输入字的计算的计算公式如下:式(2.11)PAGE93设计工具3.1FPGA性能结构随着微电子技术的飞速发展,可编程逻辑器件的发展取得了长足的进步,FPGA(现场可编程门阵列)与CPLD(复杂可编程逻辑器件)都是可编程逻辑器件。CPLD(ComplexProgrammableLogicDevice)和FPGA(FieldProgrammableGateArray)已成为目前在电子系统设计中应用最广泛的可编程逻辑器件。它们都具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点。与同门阵列等其它ASIC(ApplicationSpecificIntegratedCircuit)相比,它们又具有设计开发周期短、设计制造成本低、开发工具先进、可实时在线检验等优点,因此被广泛应用于产品的原型设计和产品生产之中。本文的设计中用到了Altera公司的FPGA芯片,因此以下将主要介绍FPGA的结构、原理及设计。FPGA器件是由大量逻辑宏单元构成的。通过配置可以使这些逻辑宏单元形成不同的硬件结构,从而构成不同的电子系统,完成不同的功能。正是FPGA的这种硬件重构的灵活性,使得设计者能够将硬件描述语言(如VHDL或Verilog)描述的电路在FPGA中实现。这样以来,同一块FPGA能实现许多完全不同的电路结构和功能。如DSL布线器、数字调制解调器、JPEG编码器、数字通信系统以及网络接口等等。简化的FPGA的结构由4部分组成:输入/输出模块、二维逻辑阵列模块、连线资源和内嵌存储器模块。输入/输出模块是芯片与外界的接口,完成不同电气特性下的输入输出功能要求。二维逻辑阵列模块是可编程逻辑的主体,可以根据设计灵活地改变连接与配置,以完成不同的逻辑功能,FPGA的二维逻辑阵列模块是基于可编程的查找表(LookUpTable,LUT)结构的,LUT是可编程的最小逻辑构成单元,连线资源连接所有的二维阵列模块和输入输出模块线长度和工艺决定着信号在连线上驱动能力和传输速度。内嵌存储器结构可以在芯片内部存储数据。现场可编程门阵列(FPGA)是由掩膜可编程门阵列(MPGA)和可编程逻辑器件二者演变而来的,将它们的特性结合在一起,既有门阵列的高逻辑和通用性,又有可编程逻辑器件的用户可编程特性。FPGA通常由布线资料分隔的可编程逻辑单元(或宏单元)构成阵列,又由可编程YO单元围绕阵列构成整个芯片。其内部资源是分段互连的,因而延时是不可预测的,只有编程完毕后才能实际测量。FPGA建立内部可编程逻辑连接关系的编程技术有三种:1)基于反熔丝技术的器件只允许对器件编程一次,编程后不能修改。其优点是集成度、工作频率和可靠性都很高,适用于电磁辐射干扰比较强的恶劣环境。2)基于EEPROM存储器技术的可编程逻辑芯片能够重复编程100次以上,系统掉电后编程信息也不会丢失,编程方法分为在编程器上编程和用下载电缆编程。用下载电缆编程的器件,只要先将器件装焊在印刷电路板上,通过PC、SUN工作站、ATE(自动测试仪)或嵌入式微处理系统,就能产生编程所用的标准5V、3.3V或2.5V的逻辑电平信号,也称为ISP(InSystemProgrammable)方式编程,其调试和维护也很方便。3)基于SRAM技术的器件编程数据存储于器件的RAM中,具有用户设计的功能。在系统不加电时,编程数据存储在EPROM、硬盘或软盘中;系统加电时将这些编程数据即时写入可编程器件中,从而实现板级或系统级的动态配置。FPGA作为新一代的可编程逻辑器件,由于其基本原理的特殊性,除了具有一般可编程逻辑器件的特点之外,在电子系统设计中还具有一些自己的特点:1)编程方式简便灵活。对于基于SRAMLUT结构的FPGA器件由于SRAM的掉电易失性,其编程采用ICR方式即在线可重配置方式。对于ICR方式的实现有多种选择,在调试时可使用PC机并行口实现,在实际应用中可使用专用配置器件或者微处理器等来实现ICR。2)开发工具和设计语言标准化,开发周期短。由于EDA开发工具的通用性、设计语言的标准化以及设计过程几乎与所用的FPGA器件的硬件结构没有关系,所以从而使得片上系统的产品设计效率大幅度提高,开发周期大大缩短。3)功能强大,应用广阔。目前,FPGA可供选择范围很大,可根据不同的应用选用不同容量的芯片。利用它们可实现几乎任何形式的数字电路或数字系统得设计。随着达数百万门高密度的FPGA的出现,FPGA在原有的高密度的逻辑宏单元的基础上嵌入了许多面向DSP的专用硬核模块,结合大量可配置于FPGA硬件结构中的参数化的DSPIP软核,DSP开发者能十分容易地将整个DSP应用系统实现在一片FPGA中,从而实现了所谓的可编程SOC系统,即SOPC。现代大容量、高速度的FPGA的出现,克服了上述方案的诸多不足。FPGA器件集成度高、体积小,具有通过用户编程实现专门应用的功能。它允许电路设计者利用基于计算机的开发平台,经过设计输入、仿真、测试和校验,知道达到预期的结果。使用FPGA器件可以大大缩短系统的研制周期,减少资金投入。更吸引人的是,采用FPGA器件可以将原来的电路板级产品集成为芯片级产品,从而降低了功耗,提高了可靠性,同时还可以很方便地对设计进行在线修改,因此有时人们也把FPGA称为可编程的ASIC在这些FPGA中,一般都内嵌有可配置的高速RAM、PLL、LVDS、LVTTL以及硬件乘法累加器等DSP模块。用FPGA来实现数字信号处理可以很好地解决并行性和速度问题,而且其灵活的可配置特性,使得FPGA构成的DSP系统非常易于修改、易于测试及硬件升级。在利用FPGA进行DSP系统的开发应用上,已有了全新的设计工具和设计流程。DSPBuilder就是美国Altera公司推出的一个面向DSP开发的系统级工具。它是作为MATLAB的一个Simulink工具箱(ToolBox)出现的。MATLAB是功能强大的数学分析工具,广泛应用于科学计算和工程计算,可以进行复杂的数字信号处理系统的建模、参数估计、性能分析。Simulink是MATLAB的一个组成部分,用于图形化建模仿真。现场可编程门阵列(FPGA)设计无线电和调制解调器与DSP芯片比较,虽然FPGA可轻而易举地实现如卷积编码器等复杂逻辑功能,但在实现大量复杂计算方面却有很大的缺陷。FPGA在通信领域的应用,大大改善了现代通信系统的性能,FPGA的应用也极大的推动了SOC的发展,随着DSP和FPGA技术的不断发展,无线电技术必将成为移动通信中的主流技术。FPGA在通信领域的应用,大大改善了现代通信系统的性能,FPGA的应用也极大的推动了SOC的发展。FPGA在通信领域的应用,大大改善了现代通信系统的性能,FPGA的应用也极大的推动了SOC的发展。FPGA中的面向DSP的嵌入式模块有可配置RAM、DSP乘加模块和嵌入式处理器等,使FPGA能很好地适用于DSP功能的实现。乘法器的带宽决定了整个DSP的带宽,而FPGA的DSP带宽比DSP处理器要宽得多。此外,绝大部分的DSP处理器应用系统是用外部存储器来解决大数据量的处理的。然而FPGA的嵌入式高速可配置存储器在大多数情况下都能满足相类似的数据处理要求。FPGA中的嵌入式处理器进一步提高了FPGA的系统集成和灵活性,使之成为一个软件与硬件联合开发和灵活定制的结合体,可使设计者既能在嵌入式处理器中完成系统软件模块的开发和利用,也能利用FPGA的通用逻辑宏单元完成硬件功能模块的开发。Altera的FPGA器件还为用户提供了嵌入式处理器软核与硬核的选择。现代的FPGA中含有十分灵活的、针对特定算法的加速器模块。与传统的DSP处理器中的加速器模块不同,FPGA中实现的硬件加速器是可以针对不同应用的,这可以使设计者针对不同的DSP任务实现硬件功能。3.2基于EDA工具的FPGA设计流程3.2.1EDA技术现代电子技术的核心是EDA(ElectronicDesignAutomation电子设计自动化)技术。EDA技术就是依赖功能强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL(HardwareDescriptionLanguage)为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、逻辑化简、逻辑分割、逻辑综合、结构综合(布局布线)以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。EDA技术使得设计者的工作仅限于利用软件的方式,即利用硬件描述语言和EDA软件来完成对系统硬件功能的实现。EDA技术在硬件实现方面融合了大规模集成电路制造技术:IC版图设计技术、ASIC测试和封装技术、FPGA/CPLD编程下载技术、自动测试技术等。在计算机辅助工程方面融合了计算机辅助设计(CAD),计算机辅助制造(CAM)、计算机辅助测试(CAT)、计算机辅助工程(CAE)技术以及多种计算机语言的设计概念,而在现代电子学方面则容纳了更多的内容,如电子线路设计理论、数字信号处理技术、数字系统建模和优化技术及长线技术理论等等。因此EDA技术为现代电子理论和设计的表达与实现提供了可能性。当然,这里的所谓EDA主要是指数字系统的自动化设计,因为这一领域的软硬件方面的技术已比较成熟,应用的普及程度也比较高。而模拟电子系统的EDA正在进入实用,其初期的EDA工具不一定需要硬件描述语言。此外,从应用的广度和深度来说,由于电子信息领域的全面数字化,基于EDA的数字系统的设计技术具有更大的应用市场和更紧迫的需求性。EDA技术的发展历程同天规模集成电路设计技术、计算机辅助工程、可编程逻辑器件以及电子设计技术和工艺的发展是同步的。20世纪80年代,集成电路设计进入了CMOS(互补场效应管)时代,复杂可编程逻辑器件已进入商用阶段,而在80年代末,出现了FPGA(FieldprogrammableGateArray现场可编程门阵列)和CPLD(ComplexProgrammableLogicDevice复杂可编程逻辑器件),其特点是直接面向用户,具有极大的灵活性和通用性,使用方便,硬件测试和实现快捷,开发效率高,电子系统设计工程师可以在实验室中设计出专用的IC,实现系统的集成,从而大大缩短了产品上市时间,降低了开发成本。进入20世纪90年代,集成电路设计工艺步入了超深亚微米阶段,百万门以上的大规模可编程逻辑器件陆续面世,促进了FDA技术的形成。更为重要的是各EDA公司致力于推出兼容各种硬件实现方案和支持标准硬件描述语言的EDA工具软件的研究,这些都有效地将EDA技术推向成熟。3.2.2基于EDA的FPGA开发流程图3.1基于EDA工具的FPGA开发流程框图,对于目前流行的EDA工具软件,其设计流程具有一般性,以下将依次各部分的功能。图3.1基于EDA的FPGA设计流程设计输入是设计者将所要设计的电路以开发软件要求的某种形式表达出来,并输入到相应软件中的过程。设计输入有多种表达方式,最常用的是图形输入中的原理图输入方式和HDL文本输入方式两种。原理图输入方式的特点是适合描述连接关系和接口关系,而描述逻辑功能则比较繁琐;而用HDL文本来描述设计,其逻辑描述能力强,但描述接口和连接关系则不如图形方式直观。目前有些EDA输入工具可以把图形的直观与HDL的优势结合起来。但总体上看,纯粹的HDL文本输入设计仍然是最基本、最有效和最通用的输入方法。综合(Synthesis)指的是将行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配而成的过程。整个综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图描述,依据给定的硬件结构组件和约束控制条件进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述网表文件。适配器也称为结构综合器,它的功能是将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件,如对FPGA器件,产生Bitstream位流数据文件。通常,EDA软件中的综合器可由专业的第三方EDA公司提供,而适配器则需由FPGA供应商提供。仿真就是让计算机根据一定的算法和一定的仿真库对EDA设计进行模拟,以验证设计,排除错误。仿真是在EDA设计过程中的重要步骤,它包括功能仿真和时序仿真。不考虑信号时延等因素、不涉及任何具体器件的硬件特性的仿真称为功能仿真,又叫前仿真;时序仿真又称后仿真,它是在选择了具体器件并完成了布局布线后进行的包含定时关系的仿真。把适配后生成的下载或配置文件,通过编程器或编程电缆装入FPGA中的过程称为下载。通常将对基于SRAM工艺结构的FPGA器件的下载称为配置(Configure)。如上一小节所述,FPGA器件的配置方式灵活,有多种的方式可供选择。3.3基于FPGA的DSP系统设计流程在早些时候,DSP开发者只能直接使用VHDL或VerilogHDL语言进行FPGA的DSP系统设计,难度比较大。现在已经出现了许多新的基于FPGA的DSP开发工具。如DSPBuilder、SOPCBuilder、SystemGenerator等,以及完整的软件开发平台。从而使得设计者能遵循一条类似于软件设计流程的开发方法进行FPGA的DSP设计,设计效率大为提高。图3.2所示的流程则表明基于FPGA的DSP开发流程中,顶层的开发工具就是MATLAB/Simulink,整个开发流程几乎完全可以在同一环境中完成。真正实现了自顶向下的设计流程,包括DSP系统的建模、系统级仿真、设计模型向VHDL硬件描述语言代码的转换、RTL级功能仿真测试、编译适配和布局布线、时序实时仿真,直至对DSP目标器件的编程配置。整个设计流程一气呵成地将系统描述和硬件实现有机地融为一体,充分显示了现代电子设计自动化开发的特点与优势。图3.2基于FPGA的系统级开发流程3.4DSPBuilder及其设计流程3.4.1DSPBuilder是一个系统级(或算法级)设计工具,它架构在多个软件工具之上,并把系统级和RTL级两个设计领域的设计工具连接起来,最大程度地发挥了两种工具的优势。DSPBuilder依赖于MathWorks公司的数学分析工具Matlab/Simulink,以Simulink的Blockset出现,可以在Simulink中进行图形化设计和仿真,同时又通过SignalCompiler可以把Matlab/Simulink的设计文件(.mdl)转成相应的硬件描述语言VHDL设计文件(.vhd),以及用于控制综合与编译的TCL脚本。而对后者的处理可以由FPGA/CPLD开发工具QuartusII来完成。由于在FPGA上设计一个DSP模块的复杂性,设计的性能(包括面积、速度、可靠性、设计周期)对于不同的应用目标将有不同的要求,涉及的软件工具也不仅仅是Simulink和QuartusII。DSPBuilder针对不同情况提供了两套设计流程,即自动流程和手动流程。DSPBuilder设计流程的第一步是在Matlab/Simulink中进行设计输入,即在Matlab的Simulink环境中建立一个.mdl模型文件,用图形方式调用AlteraDSPBuilder和其它Simulink库中的图形模块(Block),构成系统级或算法级设计框图(或称Simulink设计模型)。第二步是利用Simulink强大的图形化仿真、分析功能,分析此设计模型的正确性,完成模型仿真。在这两步中,与一般的MatlabSimulink建模过程几乎没有什么区别,所不同的是设计模型库采用AlteraDSPBuilder的Simulink库,也不涉及到其它EDA软件,没有自动流程和手动流程的区别。第三步是DSPBuilder设计实现的关键一步,通过SignalCompiler把Simulink的模型文件(后缀为.mdl)转化成通用的硬件描述语言VHDL文件(后缀为.vhd)。由于EDA工具软件(诸如QuartusII、ModelSim)不能直接处理Matlab的.mdl文件,这就需要一个转换过程。转换获得的HDL文件是基于RTL级(寄存器传输级)的VHDL描述。3.4.2设计流程从利用MATLAB建立DSP电路模型开始。电路模型的建立可以是图形化的,可以方便地利用Simulink与DSPBuilder中提供的丰富的功能块和IP核进行设计。DSPBuilder包括比特和周期精度的Simulink模块,还涵盖了诸如算术和存储功能的基本设计模块以及IP库中的许多复杂的功能模块。电路中的功能块和IP的技术参数、数据格式、数据类型和总线宽度等都可以直接设置。电路模型设计完成后,可以进行系统级的模型仿真,属于系统功能仿真,与目标器件和硬件系统没有关系,是基于算法的仿真。接下去是利用置于Simulink电路模型界面的DSPBuilder的SignalCompiler,将电路模型文件即Simulink模块文件转换成RTL级的VHDL代码表述和Tcl脚本。这种转换是基于Simulink模型的结构化分析的。RTL级VHDL代码通俗的解释就是在FPGA中完成硬件电路实现的VHDL程序。Tcl脚本主要是用于对后续的VHDL综合与仿真的控制与规范。一旦获得了转换好的VHDL描述,在Simulink中即可调用VHDL综合器了。目前可选择的综合器主要有QuartusII、Synplify和LeonardoSpectrum。由它们生成底层网表文件。注意,只有在此时才能真正确定DSP硬件实现的目标器件的选择,包括FPGA器件的系列和型号。因为对RTL级的VHDL综合,必须确定底层元件的工艺特性和结构特性,但不必了解硬件时序特性,只有在适配时才需要时序信息。下一步是调用QuartusII中的编译器,根据网表文件及设置的优化约束条件进行布线布局和优化设计的适配操作。最后生成编程文件和仿真文件,即生成POF和SOFFPGA配置文件,可用于对目标器件的编程配置和硬件实现;同时生成可分别用于QuartusII的门级仿真文件和ModelSim的VHDL时序仿真文件,以及配套的VHDL仿真激励文件,可用于实时测试DSP系统的工作性能。上面的SignalCompiler生成的VHDL,在进入ModelSim仿真流程获得的结果与硬件时序没有关系,属于功能仿真结果;而当由QuartusII生成的VHDL仿真文件,进入ModelSim仿真流程后获得的仿真结果属于时序仿真,即是对系统的实时测试结果。图3.3是DSPBuilder的设计流程图:图3.3DSPBuilder设计流程再接下来的几个步骤是对以上设计产生的VHDL的RTL代码和仿真文件进行综合、编译适配以及仿真。为了针对不同用户的设计目的和设计要求,DSPBuilder提供了两种不同的设计流程,主要可以分为自动流程和手动流程。如果采用DSPBuilder的自动流程,几乎可以忽略硬件的具体实现过程,可以选择让DSPBuilder自动调用QuartusII等EDA设计软件,完成综合(Synthesis)、网表(ATOMNetlist)生成和QuartusII适配,甚至在Matlab中完成FPGA的配置下载过程。如果希望使用其它第三方的VHDL综合器和仿真器(除Synplify、LeonardoSpectrum和QuartusII综合器及ModelSim外),或是希望完成特定的适配设置,如逻辑锁定、时序驱动编译、ESB特定功能应用等,可以选用手动流程设计。在手动流程中,设计者可以灵活地指定综合、适配条件。不过,需要手动地调用VHDL综合器进行综合,调用QuartusII进行适配,调用ModelSim或者QuartusII进行仿真,最后用QuartusII产生相应的编程文件用于FPGA的配置。采用手动流程时,除了行为级仿真验证和设计输入外,其它过程与标准的基于VHDL的EDA设计流程是完全一致的。由上一步DSPBuilder设计流程得到VHDL文件(由Simulink模型文件*.mdl通过SignalCompilder转换而成),送入综合器进行综合。综合器可以是SynplifyPro,也可以是LeonardoSpectrum,或者采用Altera自己的QuartusII。在综合时,可能需要对综合器进行配置或者提供综合的约束条件。由于这个过程操作可能比较繁琐,所以DSPBuilder的SignalCompiler相应提供了一个接口,针对设计,自动产生一个TCL脚本与综合器Synplify或者LeonardoSpectrum相接。综合器在综合操作后会产生一个网表文件,以供下一个流程使用。这里产生的网表文件称为ATOM网表文件(如图3.3所示),主要是EDIF网表文件(.edf电子设计交换格式文件)或VQM(.vqmVerilogQuartusMappingFile),它们是一种参数可设置的,并含有具体器件系列硬件特征(如逻辑宏单元LCs、I/O单元、乘积项、嵌入式系统块ESB等)的网表文件。QuartusII可以利用这些ATOM网表文件针对选定的具体器件进行适配,包括布线、布局、结构优化等操作,最后产生时序仿真文件和FPGA目标器件的编程与配置文件。在这一步,设计者可以在QuartusII中完成对Pin(引脚)的锁定,更改一些约束条件。如果用DSPBuilder产生的DSP模型只是庞大设计中的一个子模块,则可以在设计中调用DSPBuilder产生的VHDL文件,以构成完整的设计。同时,一样可以使用QuartusII强大的LogicLock功能和SignalTap测试技术。在DSPBuilder设计流程的最后一步,可以在DSPBuilder中直接下载到FPGA用户开发板上,或者通过QuartusII完成硬件的下载、测试。其中有个流程在DSP设计中是不可或缺的,那就是HDL仿真。与DSPBuilder可以配合使用的HDL仿真器是ModelSim。DSPBuilder在生成VHDL代码时,可以同时生成用于测试DSP模块的TestBench(测试平台)文件,DSPBuilder生成的TestBench文件采用VHDL语言,测试向量与该DSP模块在Simulink中的仿真激励相一致。通过ModelSim仿真生成的TestBench可以验证生成的VHDL代码与Simulink中DSP模型的一致性。另外,DSPBuilder在产生TestBench的同时,还产生了针对ModelSim仿真的Tcl脚本来简化用户的操作,掩盖ModelSim仿真时的复杂性。在大部分情况下,QuartusII对DSP模块适配后,需要再次验证适配后网表与Simulink中建立的DSP模型的一致性。这就需要再次使用ModelSim进行仿真,这时仿真采用QuartusII适配后带延时信息的网表文件(EDIF格式或者VHDL、Verilog格式)。3.5QuartusII简述设计中用到QuartusⅡ来实现时序仿真,这里对其做一个简单的阐述,以便在掌握了其原理后运用起来更得心应手。QuartusⅡ为AlteraDSP开发包进行系统模型设计提供了集成综合环境。QuartusⅡ是Altera提供的FPGA/CPLD开发集成环境,Altera是世界最大可编程逻辑器件供应商之一。QuartusⅡ在21世纪初推出,是Altera前一代FPGA/CPLD集成开发环境MAX+plusⅡ的更新换代产品,其界面友好,使用便捷。在QuartusⅡ上可以完成图3.1所示的整个基于EDA的FPGA设计流流程,它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。QuartusⅡ设计工具完全支持VHDL、Verilog的设计流程,其内部嵌有VHDL、Verilog逻辑综合器。QuartusⅡ也可以利用第三方的综合工具,如LeonardoSpectrum、SynplifyPro、FPGACompilerⅡ,并能直接调用这些工具。同样,QuartusⅡ具备仿真功能,同时也支持第三方的仿真工具,如ModelSim。此外,QuartusⅡ与MATLAB和DSPBuilder结合,可以进行基于FPGA的DSP系统开发,是DSP硬件系统实现的关键EDA工具。QuartusⅡ包括模块化的编译器。编译器包括的功能模块有分析/综合器(Analysis&Synthesis)、适配器(Fitter)、装配器(Assembler)、时序分析器(TimingAnalyzer)、设计辅助模块(DesignAssistant)、EDA网表文件生成器(EDANetlistWriter)和编辑数据接口(CompilerDatabaseInterface)等。可以通过选择StartCompilation来运行所有的编译器模块,也可以通过选择Start单独运行各个模块。还可以通过选择CompilerTool(Tools菜单),在CompilerTool窗口中运行该模块来启动编译器模块。在CompilerTool窗口中,可以打开该模块的设置文件或报告文件,或打开其他相关窗口。此外,QuartusⅡ还包含许多十分有用的LPM(LibraryofParameterizedModules)模块,它们是复杂或高级系统构建的重要组成部分,在SOPC设计中被大量使用,也可在QuartusⅡ普通设计文件一起使用。Altera提供的LPM函数均基于Altera器件的结构做了优化设计。在许多实用情况中,必须使用宏功能模块才可以使用一些Altera特定器件的硬件功能。例如各类片上存储器、DSP模块、LVDS驱动器、PLL以及SERDES和DDIO电路模块等。图3.4所示是QuartusⅡ开发设计流程。图3.4QuartusⅡ设计流程图3.4上排是QuartusⅡ编译设计主控界面,它显示了QuartusⅡ自动设计的各主要处理环节和设计流程,包括设计输入编辑、设计分析与综合、适配、编程文件汇编(装配)、时序参数提取以及编程下载几个步骤。图3.4下排的流程框图,是与上面的QuartusⅡ设计流程相对照的标准的EDA开发流程。QuartusⅡ编译器支持的硬件描述语言有VHDL(支持VHDL’87及VHDL’97标准)、VerilogHDL及AHDL(AlteraHDL),AHDL是Altera公司自己设计、制定的硬件描述语言,是一种以结构描述方式为主的硬件描述语言,只有企业标准。QuartusⅡ允许来自第三方的EDIF文件输入,并提供了很多EDA软件的接口,QuartusⅡ支持层次化设计,可以在一个新的编辑输入环境中对使用不同输入设计方式完成的模块(元件)进行调用,从而解决了原理图与HDL混合输入设计的问题。在设计输入之后,QuartusⅡ的编译器将给出设计输入的错误报告。QuartusⅡ拥有性能良好的设计错误定位器,用于确定文本或图形设计中的错误。对于使用HDL的设计,可以使用QuartusⅡ带有的RTLViewer观察综合后的RTL图。在进行编译后,可对设计进行时序仿真。在作仿真前,需要利用波形编辑一个波形激励文件,用于仿真验证时的激励。编译和仿真经检测无误后,便可以将下载信息通过QuartusⅡ提供的编译器下载入目标器件中了。PAGE244模拟调制信号发生器设计调制在通信系统中的作用至关重要,调制是把信号转换成适合在信道中传输的形式的一种过程。广义的调制分为基带调制和带通调制(载波调制)。在无线通信中和其他大多数场合,调制一词均指载波调制。载波调制就是用调制信号的变化规律去控制高频载波的某一个或某几个参数的过程。调制信号是指来自信源的消息信号(基带信号),这些信号可以是模拟的,也可以是数字的。未受调制的周期性振荡信号称为载波,它可以是正弦波,也可以是非正弦波。载波调制后称为已调信号,它含有调制信号的全部特征。基带信号对载波的调制是为了实现下列一个或多个目标。一是在无线传输中,信号是以电磁波的形式通过天线辐射到空间的。为了获得较高的辐射效率,天线的尺寸必须与发射信号波长相比拟。而基带信号包含的较低频率分量的波长较长,致使天线过长而难以实现。但若通过调制,把基带信号的频谱搬至较高的载波频率上,使已调信号的频谱与信道的带通特性相匹配,这样就可以提高传输性能,以较小的发送功率与较短的天线来辐射电磁波。二是把多个基带信号分别搬移到不同的载频处,以实现信道的多路复用,提高信道利用率。三是扩展信号带宽,提高系统抗干扰、抗衰落能力,还可实现传输带宽与信噪比之间的互换。因此,调制对通信系统的有效性和可靠性有着很大的影响和作用。采用什么样的调制方式将直接影响着通信系统的性能。调制方式有很多,根据调制信号是模拟信号还是数字信号,相应的调制方式有模拟调制和数字调制。鉴于其重要性下面我们分别对几种常用信号发生器进行设计。最常用和最重要的模拟调制方式是用正弦波作为载波的幅度调制和角度调制。常见的调幅(AM)、双边带(DSB)、单边带(SSB)和残留边带(VSB)等调制是幅度调制的几个典型实例;而频率调制(FM)是角度调制中被广泛采用的一种,其原理也实用于数字调制。4.1DDS模块设计根据DDS的基本原理,利用FPGA的DSP开发工具DSPBuilder建立如图4.1所示的基本DDS模块模型,产生正弦信号。设定相位字输入为0,频率字输入为2000000,幅度字为255。图4.1基本DDS模块模型Simulink仿真参数设置为Stoptime为5,Type为Fixed-step,步进为1e-3。运行仿真结果如图4.2所示输出波形。图4.2基本DDS模块输出波形结果表明该DDS频率及相位可灵活调整,具有较高的频率分辨率,能够实现频率及相位的快速切换,实现用户需要的DDS信号发生器设计。如要改变输出波形的步进精度,由基本DDS结构常用参量计算中,只需将频率控制字、相位控制字的宽度改变即可,如要增加幅度控制,只需要在模型中用乘法器控制输出幅度即可实现。因此采用DSPBuilder设计DDS信号发生器简单快捷且方便可调。4.2幅度调制(AM)信号发生器的设计4.2.1AMAM的调制原理是将要传送的信息装载到某一高频(载波)信号上的过程,幅度调制是用调制信号去控制载波的振幅,使其随调制信号线型变化,而保持载波的频率不变。设正弦载波为式(4.1)式中:A为载波幅度;为载波角频率;为载波初始相位(可假定为为0,而不失讨论的一般性)。根据调制定义,幅度调制信号一般可表示成式(4.2)式中:为基带调制信号。其特点是调幅波的变化周期和调制信号的周期相同,而振幅则与调制信号的振幅成正比,假设调制信号的平均值为0,将其叠加一个直流偏量后与载波相乘,即可形成调幅信号,其时域表示式为:式(4.3)式中:为外加的直流分量;可以是确知信号,也可以是随机信号。4.2根据DDS的基本原理,利用FPGA的DSP开发工具DSPBuilder建立如图4.3所示的幅度调制信号模块模型,产生幅度调制信号。图4.3幅度调制信号(AM)设计模型4.2建好模型后可以直接在Simulink中进行算法级、系统级仿真验证。将Simulink仿真参数设置为Stoptime为10000,Type为Fixed-step,步进为1e-3,Solver为discrete(nocontinuousstates)。图4.4给出了调制度为0.7968的AM输出波形:图4.4幅度调制信号(AM)输出波形4.2算法仿真正确后,进行设计流程中最为关键的一步,就是把DSPBuilder的设计转到硬件上加以实现。具体是用SingalCompiler工具将此模型转换成VHDL语言源程序。经过分析转换后的VHDL程序并将其转换为ATOMnetlist,最后编译ATOMnetlist,至此建模完成。ModelSim是一个基于单内核的Verilog/VHDL混合仿真器,是MentorGraphics的子公司ModelTechnology的产品。ModelSim是编译型仿真器,使用编译后的HDL库进行仿真。因此,在进行仿真前,必须编译所有的待仿真的HDL文件成为HDL仿真库。在编译时获得优化,提高了仿真速度。ModelSim可以帮助DSPBuilder使用者完成三个层次的VHDL仿真:1)RTL级仿真(功能仿真);2)综合后门级仿真;3)适配后门级仿真(时序仿真)。在simulink中进行的仿真是属于系统验证性质的,是对mdl文件进行仿真,并没有对生成的VHDL代码进行过仿真,生成VHDL描述的是RTL级的,是针对具体的硬件结构的,而在Matlab的Simulink中的模型仿真是算法级、系统级的,是针对算法实现的。两者在软件理解上可能存在差异,转换后的VHDL代码实现可能与mdl模型描述情况不完全相符,就需要对生成的VHDL代码进行功能仿真。采用基本单内核的Verrlog/VHDL混合仿真器ModelSim进行RTL级仿真,执行tcl脚本文件,得到功能仿真结果如图4.5所示。图4.5ModelSim功能仿真结果4.2前面我们进行了Simulink模型仿真并使用ModelSim完成的RTL级功能仿真,其仿真结果并不能精确反映电路的全部硬件特性,进行门级的时序仿真仍然十分重要。在QuartusII下设置器件为EP1C6Q240C8,编译后进行时序仿真,其仿真波形如图4.6所示。图4.6QuartusII仿真波形(门级时序仿真)其功能仿真与时序仿真结果一致。最后锁定引脚,把.sof文件下载到目标器件,并通过高速D/A转换器THS5651D/A转换电路,就可以得到幅度调制信号(AM)。4.3频率调制信号(FM)的设计4.3.1角度调制是用调制信号去控制载波信号的频率或相位而实现的调制。若载波信号的频率随调制信号线性变化,则是频率调制(FM)。其一般表达式为式(4.4)式中:A为载波的恒定振幅;为信号的瞬时相位;为相对于载波相位的瞬时相位偏移;是信号的瞬时角频率,记为;而称为相对于载频的瞬时频偏。FM(调频),是指载波的瞬时频率偏移随基带信号成比例变化,即式(4.5)式中:为调频灵敏度。这时相位偏移为:式(4.6)将其代入式(4-2-1)则可得调频信号为:式(4.7)为简便起见我们以单频信号为例进行研究。设调制信号为单一频率信号式(4.8)载波信号为:式(4.9)则频率调制输出为:式(4.10)其中:——频偏常数,——调制信号角频率,——载波信号角频率。其变化的大小与调制信号的强度成线性关系,变化的周期由调制信号的频率所决定。FM有两种形成方法:直接调频和间接调频法。特点是己调波的振幅保持不变,抗干扰能力强,主要应用于调频广播、广播电视、通信及遥测等。4.3根据DDS的基本原理,频率调制信号(FM)利用Altera公司FPGA开发工具DSPBuilder建模如图4.7所示。其设计方法与幅度调制信号(AM)完全一致,在此只给出建模及仿真实验结果。图4.7频率调制信号(FM)设计模型4.3.3建好模型后可以直接在Simulink中进行算法级、系统级仿真验证。将Simulink仿真参数设置为Stoptime为10,Type为Fixed-step,步进为1e-3,Solver为discrete(nocontinuousstates)。使用Simulink仿真波形如图4.8所示:图4.8频率调制信号(FM)输出波形算法仿真正确后,进行设计流程中最为关键的一步,就是把DSPBuilder的设计转到硬件上加以实现。具体是用SingalCompiler工具将此模型转换成VHDL语言源程序。经过分析转换后的VHDL程序并将其转换为ATOMnetlist,最后编译ATOMnetlist,至此建模完成。使用ModelSim功能仿真如图4.9所示:图4.9ModelSim功能仿真结果当我们进行了Simulink模型仿真并使用ModelSim完成的RTL级功能仿真,其仿真结果并不能精确反映电路的全部硬件特性,进行门级的时序仿真仍然十分重要。在QuartusII下设置器件为EP1C3T144C8,编译后进行时序仿真,其仿真波形如图图4.10QuartusII仿真波形(门级时序仿真)利用Altera公司FPGA的DSP开发工具DSPBuilder对调幅调频信号进行建模设计,并将其转换为VHDL语言源程序及FPGA的各种文件,避免用VHDL语言设计编程的复杂性,是设计中的一种新的尝试,该设计方案具有高效、可靠、方便产生AM、FM信号,硬件测试和实现快捷,开发效率高,而且调制信号的步进精度好,产生的波形不失真。实验结果表明整个设计合理、输出的波形稳定,具有一定的实用和参考价值。PAGE325数字调制信号发生器设计数字信号的传输方式分为基带传输和带通传输。基带传输就是数字信号直接传送;频带传输是用基带信号调制载波后的传输方式。而实际中的大多数信道(如无线信道)因具有带通特性而不能直接传送基带信号,这是因为数字基带信号往往具有丰富的低频分量。为了使数字信号在带通信道中传输,必须用数字基带信号对载波进行调制,以使信号与信道的特性想匹配。这种用数字基带信号对载波信号变换为数字带通信号(已调信号)的过程叫做数字调制(digitalmodulation)。为了与“基带”一词相对应,带通传输也称为频带传输,又因为是借助于正弦载波的幅度、频率和相位来传递数字基带信号的,所以带通传输也叫载波传输。一般数字调制跟模拟调制的基本原理相同,但是数字信号有离散取值的特点。因此数字调制技术有两种方法:一是利用模拟调制方式去实现数字式调制,即把数字调制看成是模拟调制的一个特例,把数字基带信号当作模拟信号的特殊情况处理;二是利用数字信号的离散取值特点通过开关键控载波,从而实现数字调制。这种方法通常称为键控法,比如对载波的幅度、频率和相位进行键控,便可获得振幅键控(ASK),频移键控(FSK)和相移键控(PSK)三种基本的数字调制信号。数字信息有二进制和多进制之分,因此数字调制可分为二进制调制和多进制调制。在二进制调制中,信号参量只有两种可能的取值;而在多进制中,信号参量可能有多种取值。数字调制共有三种基本形式:ASK(振幅键控)、FSK(频移键控)和PSK(相移键控),其它形式的调制都是在这三种方式上衍生而来的.也可以分为线形(ASK)调制和非线性(FSK,PSK)调制两种方式。当调制信号是二进制数字基带信号时,这种调制称为二进制数字调制。在二进制数字调制中,载波的幅度、频率和相位只有两种变化状态。相应的调制方式有二进制振幅键控(2ASK)、二进制频移键控(2FSK)和二进制相移键控(2PSK)。5.1振幅键控(ASK)信号发生器的设计上一章我们介绍了模拟调制信号发生器的设计,下面我们开始介绍数字调制信号发生器设计。其设计原理与模拟调制信号发生器相类似。5.1.1振幅键控(ASK)的基本原理振幅键控(ASK)是利用载波的幅度变化来传递数字信息,而其频率和初始相位保持不变。以二进制振幅键控为例,在2ASK中,载波的幅度只有两种状态,分别对应二进制信息“0”或“1”。2ASK信号的一般表达式为:式(5.1)其中式(5.2)式中:为码元持续时间;为持续时间为的基带脉冲波形,为简便起见,常假设是高度为1、宽度等于的矩形脉冲;是第n个符号的电平取值。2ASK信号的产生方法通常有两种:模拟调制法和键控法,用乘法器实现的是模拟调制法,而用开关电路控制实现的是数字键控法。ASK是一种应用最早的基本调制方式,应用设备简单,频带利用率较高;但抗噪声性能差,对信道特性变化敏感。5.1.2ASK设计模型根据DDS的基本原理,利用FPGA的DSP开发工具DSPBuilder建立如图5.1所示的振幅键控信号模块模型,产生2ASK幅度键控信号。图5.1振幅键控(ASK)信号模型5.1.3仿真图建好模型后可以直接在Simulink中进行算法级、系统级仿真验证。将Simulink仿真参数设置为Stoptime为100,Type为Fixed-step,步进为1e-3,Solver为discrete(nocontinuousstates),使用Simulink仿真波形如图5.2所示:图5.2振幅键控信号(ASK)输出波形算法仿真正确后,进行设计流程中最为关键的一步,就是把DSPBuilder的设计转到硬件上加以实现。具体是用SingalCompiler工具将此模型转换成VHDL语言源程序。经过分析转换后的VHDL程序并将其转换为ATOMnetlist,最后编译ATOMnetlist,至此建模完成。使用ModelSim功能仿真如图5.3所示:图5.3ModelSim功能仿真结果前面我们进行了Simulink模型仿真并使用ModelSim完成的RTL级功能仿真,其仿真结果并不能精确反映电路的全部硬件特性,进行门级的时序仿真仍然十分重要。5.2频移键控(FSK)信号发生器的设计5.2.1FSK调制基本原理频移键控是利用载波的频率变化来传递数字信息。在2FSK中,载波的频率随二进制基带信号在F1和F2两个频率点间变化,其表达式为:式(5.3)发送“1”时输出频率为的信号;发送“0”时输出频率为的信号。在波形上我们可以很明显地看出2FSK信号的波形可以分解为两个独立波形的叠加。2FSK信号的产生方法主要有两种。一种可以采用模拟调频电路来实现;另一种可以采用键控法来实现,即在二进制基带矩形脉冲序列的控制下通过开关电路对两个不同的独立频率进行选通,使其在每一个码元期间输出F1或F2两个载波之一。FSK是数字通信中不可或缺的一种调制方式,其抗干扰能力较强,不受信道参数变化的影响,特别适合应用于衰落信道;占用频带较宽,频带利用率低。5.2.2FSK设计模型其设计方法与振幅键控信号(ASK)同理,频率调制信号(FSK)利用Altera公司FPGA开发工具DSPBuilder建模如图5.4所示:图5.4频率键控(FSK)信号设计模型5.2.3仿真结果建好模型后可以直接在Simulink中进行算法级、系统级仿真验证。将Simulink仿真参数设置为Stoptime为10,Type为Fixed-step,步进为1e-3,Solver为discrete(nocontinuousstates)。其Simulink仿真波形如图5.5所示:图5.5频移键控信号输出波形算法仿真正确后,进行设计流程中最为关键的一步,就是把DSPBuilder的设计转到硬件上加以实现。具体是用SingalCompiler工具将此模型转换成VHDL语言源程序。经过分析转换后的VHDL程序并将其转换为ATOMnetlist,最后编译ATOMnetlist,至此建模完成。使用ModelSim功能仿真如图5.6所示:图5.6ModelSim功能仿真结果我们进行了Simulink模型仿真并使用ModelSim完成的RTL级功能仿真,其仿真结果并不能精确反映电路的全部硬件特性,进行门级的时序仿真仍然十分重要。在QuartusII下设置器件为EP1C3T144C8,编译后进行时序仿真,其仿真波形如图图5.7QuartusII仿真波形(门级时序仿真)5.3相移键控(PSK)信号发生器设计5.3.1PSK调制基本原理相移键控是利用载波的相位变化来传递数字信息,而振幅和频率保持不变。在2PSK中通常用初始相位0和分别表示二进制“1”和“0”。则2PSK信号的时域表达式为:式(5.4)其中,表示第n个符号的绝对相位:式(5.5)发送“0”时表示第n个符号的绝对相位是0。因此其输出表示式可以为式(5.6)表示信号的两种码元的波形相同,极性相反,故其可以表述为一个双极性全占空矩形脉冲序列与一个正弦载波的相乘,即式(5.7)其中式(5.8)这里是脉宽为的单个矩形脉冲,而的统计特性为式(5.9)当概率为P即发送二进制符号“0”时取1,取0相位;当概率为1-P时取-1,取相位。其产生方法与ASK相似,PSK是一种高传输效率的调制方式,其抗噪能力比上两种都强,且不易受信道特性变化的影响,在高、中速数据传输中得到了广泛的应用。5.3.2PSK设计模型根据DDS的基本原理,其设计方法与振幅键控信号(FSK)同理,利用FPGA的DSP开发工具DSPBuilder建立如图5.8所示的频移键控信号模块模型,产生2FSK相移调制信号。图5.8频移键控信号(PSK)设计模型5.3.3仿真建好模型后可以直接在Simulink中进行算法级、系统级仿真验证。将Simulink仿真参数设置为Stopti
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 专用毛竹采购与销售协议范本2024版A版
- 2025年工业厂房智能化改造升级合同范本4篇
- 二零二五年度离婚协议中子女教育资助合同3篇
- 二零二四年农产品电商平台合作框架协议3篇
- 二零二五年标识行业专业人才培养合同3篇
- 2025年度东展厅改造项目政府采购合同细则3篇
- 二零二五版文化产业第三方担保贷款合同范本2篇
- 二零二五版第三方抵押担保资产管理协议2篇
- 二零二五年度高端办公设备租赁服务合同6篇
- 挖掘机搅拌机租赁合同-2025年度6篇
- 佛山市斯高家具全屋定制水平考试
- 摇臂钻床日常点检表
- 经济开发区扩区可行性研究报告
- 会计职业道德课件(完整版)
- 金属探测器检查记录表
- 2022年五年级数学兴趣小组活动记录
- Q∕GDW 12127-2021 低压开关柜技术规范
- 商品房预售合同登记备案表
- 版式设计发展历程-ppt课件
- 通信机房蓄电池放电试验报告
- 病原细菌的分离培养
评论
0/150
提交评论