基于DSP Builder的数字移相信号发生器设计【开题报告+文献综述+毕业论文】

基于DSP Builder的数字移相信号发生器设计【开题报告+文献综述+毕业论文】

ID:463631

大小:663.88 KB

页数:34页

时间:2017-08-05

上传者:U-944
基于DSP Builder的数字移相信号发生器设计【开题报告+文献综述+毕业论文】_第1页
基于DSP Builder的数字移相信号发生器设计【开题报告+文献综述+毕业论文】_第2页
基于DSP Builder的数字移相信号发生器设计【开题报告+文献综述+毕业论文】_第3页
基于DSP Builder的数字移相信号发生器设计【开题报告+文献综述+毕业论文】_第4页
基于DSP Builder的数字移相信号发生器设计【开题报告+文献综述+毕业论文】_第5页
资源描述:

《基于DSP Builder的数字移相信号发生器设计【开题报告+文献综述+毕业论文】》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

本科毕业论文系列开题报告电子信息工程基于DSPBuilder的数字移相信号发生器设计一、课题研究意义及现状在数控、数字信号处理机、工业控翻、自动控制等各个领域,几乎都要用到移相技术,数字移相信号发生器就是为了这些应用而设计。数字移相信号发生器,即存在相位差的两路同频信号,它目前已经广泛用于船舶、航空、检测等各行各业。通常采用移相网络来实现,如阻容移相、变压器移相等,采用这些方法输出波形受输入波形影响大,移相操作不方便,移相角度受信号频率和所接负载等因素影响。而采用直接数字频率合成技术设计数字移相信号发生器,能得到频率及相位精确可调的信号且实现方便,并能实现幅度的可调。直接数字频率合成DDS(DirectDigitalFrequencySynthesizer)是一种采用数字化技术、通过控制相位的变化速度、直接产生各种不同频率信号的新型频率合成技术,标志着第三代频率合成技术的出现。直接数字频率合成从相位概念出发直接合成所需波形,是一种全新的频率合成方法,它以有别于其它频率合成方法的优越性能和特点成为现代频率合成技术中的佼佼者。DDS技术的硬件实现平台主要有单片机、FPGA和DSP等。FPGA/CPLD是目前电路系统设计的主要实现硬件之一,也是DDS技术的主要实现平台。本次设计我主要采用直接数字频率合成(DDS)技术,利用DSPBUILDER建立数字移相信号发生器的模型设计,并在DSPBUILDER平台上完成仿真和编译。利用DSPBuilder设计数字移相信号发生器,输出两路频率相同、相位差精确可调的正弦信号,并且频率及相位能够快速切换。避免用VHDL语言设计数字移相信号的复杂性,且比传统用单片机实现数字移相信号发生器更简单和快捷。二、课题研究的主要内容和预期目标主要内容: 采用直接数字频率合成(DDS)技术,利用DSPBUILDER建立数字移相信号发生器的模型设计,并在DSPBUILDER平台上完成仿真和编译。实现移相、调频和调幅的功能。预期目标:1、实现整个系统的模块化设计;2、实现系统功能的仿真;3、完成毕业论文的撰写;三、课题研究的方法及措施图1DDS原理框图图1所示为DDS原理框图。在图1中,根据频率字输入的改变,相位累加器的字长直接影响频率分辨率,经过相位累加器或者是查询表格可以得到不同频率的波形;在相位累加器后加入相位加法器后,可以通过改变相位字输入来控制输出信号的相位。只需要两路这样的输出信号即可。此模块可以产生不同的相移,而对应的输出就会得到不同相位的波形了,就能完成数字移相信号发生器的设计。具体设计流程为:首先在DSPBUILDER中进行模块化设计,然后进行功能仿真,再进行编译、综合和转换,将转换后的源文件在QUARTUSII中进行FPGA的实现与仿真。四、课题研究进度计划毕业设计期限:自2010年10月20至2011年4月20日。第1周—第2周:分析任务,查阅文献资料,研究分析该类产品的关键技术。第3周—第4周:熟悉MATLAB、DSP  BUILDER和QUARTUSII集成环境。设计系统总体方案,完成开题报告、文献综述、外文翻译。第5周—第6周:系统总体方案设计,软件程序设计。第7周—第8周:撰写设计论文。第9周—第10周:系统调试并完善。第11周—第12周:设计作品完善,论文修改。五、参考文献教师指定:[1]赖昭胜,管立新.基于DspBuilder的DDS实现及其应用[J].微计算机信息,2006,11-2:186-188[2]李志鹏,郭勇,沈军.基于DDS技术实现信号发生器[J].微计算机信息,2007,19-2:175-177[3]潘松,黄继业,王国栋.现代DSP技术[M].西安:西安电子科技大学出版社,2004.5[4]赵兴亮,阮炳涛,孟昕等.一种数字式移相信号发生器的设计与实现[J].自动化仪表,2007.2自己选择:[5]罗韩君,刘明伟,林亚风.基于DSPBuilder的DDS设计与实现[J].现代电子技术,2008,2,31(17):147~150.[6]郝小江,伍刚,周玉荣.基于FPGA的数字移相信号发生器设计[J].微计算机信息,2009,2,25(2-2):169~182.[7]周彬,秦玉娟,王振利.基于DSPBuilder的多种数字调制的实现[J].兰州工业高等专科学校学报,2009,12,16(6):30~32.[8]雷发禹,宾淼林,李永枧,刘泽华,姚自强.基于单片机的信号发生器设计与仿真[J].2009,9,6(3):40~43.[9]许德志,丁才成.一种基于DDS技术的信号发生器研究与实现[J].2010,3,23(3):59~61.[10]Altera.DSPBuilderUserGuide[EB/OL].[2009-04-20].http://www.altera.com/literature/ug/ug_dsp_builder.pdf. 毕业论文文献综述电子信息工程信号发生器的设计方案综述摘要:本文首先介绍了信号发生器的背景与应用,然后提出了基于直接数字频率合成(DDS)技术的信号发生器实现,概述了DDS的概念及基本结构,介绍了基于FPGA、单片机及专用芯片的信号发生器实现方案,最后对这些方案给出笔者的评价。关键词:DSPBUILDER;数字移相信号发生器;DDS1引言在当今社会,信号发生器作为电子领域中的最基本、最普通、最广泛的仪器之一,是工科类电子工程师进行信号仿真实验的最佳工具。而信号发生器是指能产生测试信号的仪器,它主要用于产生被测电路所需特定参数的电测试信号。本文设计的数字移相信号发生器通过移相技术在数控、数字信号处理机、工业控翻、自动控制等各个领域得以应用[1]。2DDS概述直接数字频率合成DDS(DirectDigitalFrequencySynthesizer)是一种采用数字化技术、通过控制相位的变化速度、直接产生各种不同频率信号的新型频率合成技术,标志着第三代频率合成技术的出现。它是把一系列数字量形式的信号通过数模转换器(DAC)转换成模拟量形式的信号[2]。目前使用的最广的一种DDS方式是利用高速存储器作查找表。然后通过高速DAC输出已经用数字形式存入的正弦波。具有频率切换时间短,频率分辨率高,频率稳定度高。输出信号的频率和相位可快速程控交换、输出相位连续、容易实现频率、相位和幅度的数控调制等优点[3]。 图1DDS基本结构DDS是以数控的方式产生频率、相位和幅度可以控制的正弦波,如图1所示为基本DDS结构,由相位累加器、相位调制器、正弦ROM查找表、D/A构成[4]。相位累加器是整个DDS的核心,它由一个累加器和一个N位相位寄存器组成,每来一个时钟脉冲,相位寄存器以相位步长M增加,相位寄存器的输出与相位控制字相加,完成相位累加运算,其结果作为正弦查找表的地址,正弦ROM查找表内部存有一个完整周期正弦波数字幅度信息,每个查找表地址对应正弦波中o。~360。范围的一个相位点,查找表把输入的地址信息映射成正弦波幅度信号,通过D/A输出,经低通滤波器后,即可得一纯净的正弦波。而所谓的移相,就是指两路同频的信号,以其中的一路为参考,另一路相对于该参考作超前或滞后的移动,即称为相位的移动。两路信号的相位不同,便存在相位差,简称相差[5]。两路信号的相位差用相位字来控制,只要相位字不同,就可得到两路不同相位的移相信号。3基于DDS的数字移相系统设计3.1基于FPGA的实现传统使用FPGA的数字信号处理系统的设计,首先需要用仿真软件进行建模仿真,得到预想中的仿真结果后。再根据仿真过程和结果,使用硬件描述语言创建硬件工程,最后完成硬件仿真。整个过程漫长而繁杂,尤其困难的是仿真过程不够直观.一旦遇到问题无法及时准确地确定问题所在。而DSPBuilder作为一个面向DSP开发的系统级(或算法级)设计工具,它架构在多个软件工具之上,并把系统级和RTL级两个设计领域的设计工具连接起来,最大程度地发挥了两种工具的优势[5]。DSPBuilder依赖于MathWorks公司的数学分析工具Matlab/Simulink,DSPBuilder允许设计者在Matlab中完成算法设计,在Simulink软件中完成系统集成,通过SignalCompiler模块生成QuartusII软件中可以使用的硬件描述语言(VHDL)文件,它提供了QuartusII软件和MATLAB/Simulink工具之间的接口,通过DSPBuilder、SOPCBuilder、QuartusII软件构筑的一套从系统算法分析到FPGA芯片实现的完整设计平台[6]。3.2基于单片机的实现基于单片机的信号发生器其核心内容是单片机的主程序,主程序对整个设计起着总控作用[7]。设计方案如图2所示.系统在程序控制下,先读取P3口决定波形信号类别,然后由Po口输出数据,经D/A转换后放大、滤波输出. 波形频率在线调整是通过读取P2口上的拨码开关的编码,并根据该编码产生的数字量,在PO口输出一个数据后立即产生一个对应时长的延时时间来实现.幅度调整是通过接在DAC上的滑动变阻器来改变D/A转换的参考电压来实现[8]。图2系统方案3.3基于专用芯片的实现基于专用芯片来实现数字移相信号发生器设计,如AD9850芯片。AD9850是美国AD公司生产的高集成度DDS芯片,采用CMOS工艺,其功耗在3.3V供电时仅为155mW,扩展工业级温度范围为-40~80℃,采用28引脚的SSOP表面封装形式[9]。它主要由可编程DDS系统、高性能模数变换器(ADC)和高速比较器3部分构成。AD9850有40位控制字,32位用于频率控制,1位用于电源休眠控制,2位用于选择工作方式,其中5位用来进行相位控制[10]。结论基于DSPBUILDER的数字移相信号发生器设计,系统采用了直接数字频率合成(DDS)技术,利用DSPBUILDER建立数字移相信号发生器的模型,并在DSPBUILDER平台上完成仿真和编译,该系统产生的波形稳定,抗干扰能力强,频率、相位和幅度调节方便,精度高,有一定的开发及生产价值。基于单片机编程来设计信号发生器,它从技术上克服了元器件分散性造成波形失真的问题。用专用芯片来实现的设计,它只需要很少外部元件就能实现波形信号且达到较高效率,易于调试,实现难度低。参考文献:[1]王志强.数字移相信号发生器的设计研究[J].中国高新技术企业,2008:144~151.[2]张先志.基于DDS技术的线性调频信号的生成[J].现代电子技术,2008(15):30~33.[3]罗韩君,刘明伟,林亚风.基于DSPBuilder的DDS 设计与实现[J].现代电子技术,2008,2,31(17):147~150.[4]赖昭胜,管立新.基于DspBuilder的DDS实现及其应用[J].微计算机信息,2006,4,22(11-2):187~208.[5]郝小江,伍刚,周玉荣.基于FPGA的数字移相信号发生器设计[J].微计算机信息,2009,2,25(2-2):169~182.[6]周彬,秦玉娟,王振利.基于DSPBuilder的多种数字调制的实现[J].兰州工业高等专科学校学报,2009,12,16(6):30~32.[7]杨恢先,黄辉先.单片机原理及应用[M].1.北京:人民邮电出版社,2007,12:16~18.[8]雷发禹,宾淼林,李永枧,刘泽华,姚自强.基于单片机的信号发生器设计与仿真[J].2009,9,6(3):40~43.[9]许德志,丁才成.一种基于DDS技术的信号发生器研究与实现[J].2010,3,23(3):59~61.[10]刘伟,胡仁杰,王峥.基于AD9850芯片的信号发生器的研究[J].2009,11,(11):19~21.[11]DavidV.Schuehler,JamesMoscolaJohnW.Lockwood.Architec-tureforahardware-based,TCP/IPcontent-processingsystem.IEEEComputerSociety,2004,4:62-69.[12]Altera.DSPBuilderUserGuide[EB/OL].[2009-04-20].http://www.altera.com/literature/ug/ug_dsp_builder.pdf. 本科毕业设计(20届)基于DSPBuilder的数字移相信号发生器设计 摘要信号发生器是指能产生测试信号的仪器,主要用于产生被测电路所需特定参数的电测试信号,目前电子领域中的广泛使用的仪器之一。移相信号发生器则是一类特殊的信号发生器,其产生两路同频信号,一路为零初相的基准信号,另一路则为可进行任意移相的实际信号,以供电路使用。传统电路中常采用移相网络如阻容移相、变压器移相等实现移相,本文采用直接数字频率合成技术(DDS)设计数字移相信号发生器,实现频率、幅度可调和移相等功能。论文首先对直接数字频率合成技术进行介绍,然后概述了Matlab、DSPBuilder和QuartusII三种集成环境,提出了基于DDS技术的数字移相信号发生器的设计方案。首先在DSPBuilder中进行数字移相信号发生器的模型设计,然后对该模型进行仿真,验证频率、相位的可调性,与理论计算比较,验证设计的正确性。最后将模型进行转换、综合和适配,生成QuartusII下的工程与VHDL源程序,实现基于FPGA的设计。论文还记录和整理了调试过程中的必要波形与数据。关键词:数字移相信号发生器;直接数字频率合成(DDS);DSPBuilderAbstract Signalgeneratorisaninstrumentthatcanproducetestsignalanditismainlyusedfortheparametersoftheelectricaltestingsignals.Moreover,itisoneofthemostwidelyusedinstrumentsinelectronicsfield.Phaseshiftinggeneratorisaspecialsignalgeneratorthatcanproducetwofrequencysignals.Oneisreferencesignalofzerophase.Theotherispracticesignalforanykindofphaseandisusedforthecircuit.Phaseshiftingnetwork,likeRC-delayphase,transformerphase,isfrequentlyappliedintraditionalcircuits.ThepaperusesDDStodesigndigitalphaseshiftinggeneratortorealizethefunctionsofregulatingfrequencyandamplitudeandphase.Firstofall,thepapergivesanintroductiontoDDS,andthensummarizesthreekindsofintegrationenvironment:Matlab,DSP,BuilderandQuartusII.Thereby,thepapercomesupwithdesignproposalbasedonDDS.Firstly,thepaperusesDSPBuildertomakemodeldesignofdigitalphaseshiftinggenerator.Secondly,simulatethemodel,verifytheregulationoffrequencyandphase,thencomparewiththeoreticalcomputationtoverifythecorrectness.Finally,converse,synthesizeandadaptthemodelandthencomeupwithQuartusIIandVHDL,andrealizethedesignbasedonFPGA.Thepaperalsorecordsandclassifiesthewaveformanddataoftheprocess.KeyWords:Digitalphaseshiftinggenerator;DDS;DSPBuilder 目录1引言11.1课题背景和意义11.2论文的内容与组织结构22数字移相原理概述32.1DDS技术概述32.2数字移相技术概述43设计平台概述53.1MATLAB集成环境介绍53.1.1Matlab软件概述53.1.2Simulink简介63.2DSPBuilder集成环境介绍73.2.1DSPBuilder平台简述73.2.2DSPBuilder设计流程73.3QuartusII集成环境介绍94基于DSPBUILDER的数字移相信号发生器设计104.1数字移相信号发生器建模104.2基于QuartusII的编译仿真155系统仿真与调试175.1数字移相信号发生器波形输出176设计总结20致谢21参考文献22 1引言1.1课题背景和意义信号发生器是指能产生测试信号的仪器,它主要用于产生被测电路所需特定参数的电测试信号。是目前电子领域中的最基本、最普通、最广泛的仪器之一,是工科类电子工程师进行信号仿真实验的最佳工具之一,在数控、数字信号处理机、工业控制、自动控制等各个领域得以应用。一般的移相信号发生器通常采用移相网络来实现,如阻容移相、变压器移相等,但是这类技术的缺点是输出波形受输入波形影响大,移相操作不方便,移相角度受信号频率和所接负载等因素影响。本文采用直接数字频率合成[1]技术设计数字移相信号发生器,能得到频率及相位精确可调的信号且实现方便,并能实现幅度的可调。直接数字频率合成DDS(DirectDigitalFrequencySynthesizer)[1]是一种采用数字化技术、通过控制相位的变化速度、直接产生各种不同频率信号的新型频率合成技术,标志着第三代频率合成技术的出现。直接数字频率合成从相位概念出发直接合成所需波形,有别于其它频率合成方法,其优越性能和特点成为现代频率合成技术中的佼佼者。DDS技术的硬件实现平台主要有单片机、FPGA和DSP等。FPGA/CPLD是目前电路系统设计的主要实现硬件之一,也是DDS技术的主要实现平台。本次设计采用直接数字频率合成(DDS)技术,利用DSPBuilder建立数字移相信号发生器的模型设计,并在DSPBuilder平台上完成仿真和编译。利用DSPBuilder设计数字移相信号发生器,输出两路频率相同、相位差精确可调的正弦信号,并且频率及相位能够快速切换。利用模块化的设计实现,省却了繁琐的程序源代码VHDL语言编写,并且比传统用单片机实现数字移相信号发生器设计周期短,实现精度高。 1.2论文的内容与组织结构围绕课题,主要做了以下工作:1.熟悉DSPBuilder平台,熟悉基于DSPBuilder的一般设计流程;2.了解和熟悉DDS技术,查阅相关DDS的概念与原理,完成基于DSPBuilder的DDS设计;3.查阅数字移相信号发生器的原理内容,完成基于DSPBuilder的数字移相信号发生器模块设计,仿真实现输出信号的频率、幅度和相位的调整和移相功能;4.对设计与调试过程中出现的问题进行整理和分析。本文总共分六章,第一章为引言部分,简述了本课题研究的背景与意义以及论文的组织结构;第二章为数字移相原理的概述,其中包括直接数字频率合成(DDS)技术和数字移相技术的概述;第三章概述了课题研究所需的DSPBuilder平台,Matlab软件以及QuartusII集成环境的设计平台;第四章为本论文的重点,详细介绍了数字移相信号发生器的总体设计方案,对于建立的数字移相信号发生器模块进行了系统分析;第五章为本次设计的仿真、调试;第六章概括总结了本次设计中遇到的困难以及解决过程。 2数字移相原理概述2.1DDS技术概述直接数字频率合成DDS(DirectDigitalFrequencySynthesizer)是一种采用数字化技术、通过控制相位的变化速度、直接产生各种不同频率信号的新型频率合成技术,标志着第三代频率合成技术的出现。其原理是先将正弦波信号数字化,形成一张数据表存入ROM芯片中,然后可通过D/A转换芯片在计数器的控制下连续地循环输出该数据表,就可获得正弦波信号[2]。通过改变相位字输入,就能改变不同的相位,实现移相。应用DDS技术的优点是具有频率切换时间短,频率分辨率高,频率稳定度高,输出信号的频率和相位可快速程控交换、输出相位连续、容易实现频率、相位和幅度的数控调制等[3]。图2-1DDS基本结构框图DDS是以数控的方式产生频率、相位和幅度可以控制的正弦波,如图2-1所示为基本DDS结构,由相位累加器、相位调制器、正弦ROM查找表、D/A转换器构成。相位累加器[4] 是整个DDS的核心,它由一个累加器和一个N位相位寄存器组成,每来一个时钟脉冲clk,相位寄存器以相位步长M增加,相位寄存器的输出与相位控制字相加,完成相位累加运算,其结果作为正弦查找表的地址,正弦ROM查找表内部存有一个完整周期正弦波数字幅度信息,每个查找表地址对应正弦波中0°~360°范围的一个相位点,查找表把输入的地址信息映射成正弦波幅度信号,通过D/A输出,经低通滤波器后,即可得到正弦波[5]。2.2数字移相技术概述所谓的移相[6]是指两路同频的信号,以其中的一路为参考,另一路相对于该参考作超前或滞后的移动,即为相位的移动。两路信号的相位不同,便存在相位差,简称相差。若我们将一个信号周期看作360°,则相差的范围在0°~360°之间。例如图2-2所示,以A信号作为参考,B信号相对于A信号作滞后移相,则称A超前B,或者B滞后A。图2-2移相示图实现数字移相的形式有很多种,例如用专用芯片来实现,如美国AD公司生产的AD9850芯片,它有40位控制字,32位用于频率控制,1位用于电源休眠控制,2位用于选择工作方式,其中5位用来进行相位控制[7];还能基于单片机的实现,通过单片机的主程序,在程序的控制下,来实现相位差[8]。基于DDS技术的移相实现,与其他移相方式相比,具有相位变换连续,频率转换速度快,频率稳定度高等优点。 3设计平台概述本章概括介绍课题实现的相关软件集成环境。首先概述Matlab/Simulink的相关内容,其次简述了DSPBuilder集成环境的设计平台以及它的设计流程,最后简要介绍了QuartusII集成环境的开发与使用。3.1MATLAB集成环境介绍3.1.1Matlab软件概述Matlab是从事众多工业、科研领域的必备工具,是美国Mathworks公司20世纪80年代中期推出的一种数学软件,是一种用于科学工程计算的高效率的高级语言[9]。MATLAB最初作为矩阵实验室(MatrixLaboratory),主要面向用户提供一套非常完善的矩阵运算命令。随着数值运算的演变,它逐渐发展成为各种系统仿真、数字信号处理、科学可视化的通用标准语言。经过Mathworks公司20余年的开发扩充和不断的完善,如今已经发展成为了一款适合多科学应用,功能强大的大型系统软件,而且Matlab软件作为一些课程的基本仿真计算与设计工具,比如线性代数,控制理论,数理统计,数字信号处理等,成为了大学学习的必修内容。Matlab由主包和功能各异的工具箱组成,最基本的数据结构是矩阵,即操作对象是以矩阵为单位的[10]。Matlab的核心是一个基于矩阵运算的快速解释程序,首先它提供了一个开放式的集成环境,用户可以运行系统提供的很多命令,包括图形的绘制,数值的计算等,接着它以一种交互式接受用户输入的各种指令,然后输出计算结果。Matlab有数值计算,符号计算,优化工具,数据分析和可视化,“活”笔记本,非线性动态系统建模与仿真等庞大功能,它相较于其他高级语言(如C++、C、Fortran、Basic和Pascal等)有一些无可比拟的优点,如编程效率高,界面友好、用户使用方便,语音简单,内涵丰富,智能化程度高等,因此被称为“科学便笺式”的科学工程计算语言,用它编写程序,犹如在一张演算纸上排列公式和求解问题一样高效率[10]。 3.1.2Simulink简介Simulink是MATLAB最重要的组件之一,是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计环境,它提供一个动态系统建模、仿真和综合分析的集成环境[10]。Simulink支持线性和非线性系统、连续时间系统、离散时间系统、连续和离散混合系统,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率[10]。为了创建动态系统模型,Simulink提供了友好的图形界面(GUI),模型由模块组成的框图来表示。用户完成这个创建过程只需单击和拖动鼠标操作,建模就像用纸和笔来画一样简单,与传统的仿真软件包相比,显得更加快捷、更直接明了,而且用户可以立即看到系统的仿真结果。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,基于这些优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。整个Simulink的模块库浏览器如图3-1所示。图3-1Simulink模块库浏览器 3.2DSPBuilder集成环境介绍3.2.1DSPBuilder平台简述DSPBuilder是Altera公司推出的一个面向DSP开发的系统级(或算法级)设计工具,它架构在多个软件工具之上,并把系统级和RTL级两个设计领域的设计工具连接起来,最大程度地发挥了两种工具的优势[11]。它作为MATLAB的一个Simulink工具箱中出现,用于图形化建模仿真,是一款将Matlab和Simulink系统设计工具的算法开发、仿真和验证功能与VHDL综合、仿真和Altera开发工具整合在一起的设计软件[12]。DSPBuilder依赖于MathWorks公司的数学分析工具Matlab/Simulink,DSPBuilder允许设计者在Matlab中完成算法设计,在Simulink软件中完成系统集成,通过SignalCompiler模块生成QuartusII软件中可以使用的硬件描述语言(VHDL)文件,它提供了QuartusII软件和MATLAB/Simulink工具之间的接口[13],通过DSPBuilder、SOPCBuilder、QuartusII软件构筑的一套从系统算法分析到FPGA芯片[14]实现的完整设计平台。基于DSPBuilder的模块化设计,可以避免繁琐的程序代码编写,也可以降低对设计人员额度硬件设计能力要求,只需要简单的进行DSPBuilder中Simulink的模块调用来进行设计,仿真与编译就行。编译正确后,可以利用转化工具将模块化的设计转换为VHDL语言,最后可以自动调用QuartusII完成综合。3.2.2DSPBuilder设计流程基于Matlab、DSPBuilder、QuartusII结合的设计流程框图如图3-2。第一步首先在Matlab/Simulink环境中建立一个后缀名为.mdl的模型文件,然后调用DSPBuilder和Simulink库中的相关图形模块,连接构成一个系统级的设计框图模型。第二步在Simulink中进行图形化仿真,分析该设计模型的正确性,经过不断修改完善,最后完成正确的模型仿真。第三步是通过SignalCompiler模块将后缀名为.mdl的模型文件转化成为通用硬件描述语言VHDL语言。转化后的VHDL语言是基于RTL级,可以将生成的目标文件下载至目标板,也可对转化后的文件进行最终的行为级仿真。 图3-2Matlab、DSPBuilder、QuartusII结合的设计流程框图后面进行的步骤就是将以顶层设计的VHDL的RTL代码和仿真文件进行综合、编译适配以及仿真。在综合编译流程中,可以分为自动流程和手动流程,在自动流程中,几乎可以忽略硬件的具体实现过程,只要让设计者利用SignalCompiler模块在Mtlab/Simulink环境下就能控制整个过程。在这个流程中,SignalCompiler能将Simulink文件转化为Tcl脚本文件,然后再执行Tcl脚本,利用Quartus II对产生的VHDL代码进行综合与编译,直到在Matlab完成FPGA的配置下载过程。在手工流程中,可以使用SignalCompiler输出VHDL文件和Tcl脚本,在设计过程中,当选定将设计文件转化为VHDL文件后,SignalCompiler产生RTL级的VHDL设计程序和Tcl脚本文件。然后可以使用第三方的VHDL综合器对VHDL文件进行综合,最后对综合好的结果,利用Quartus II进行进一步的编译处理,如适配、优化、设置、仿真等。需要注意的是,在第一步和第二步的设计过程中,模块采用的是DSPBuilder的Simulink库中的元件,这与一般的Matlab中的Simulink建模是有区别的。这第三步是DSPBuilder设计实现的关键一步。 3.3QuartusII集成环境介绍QuartusII可编程逻辑软件[15]属于Altera公司的第四代综合性PLD开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(AlteraHardwareDescriptionLanguage)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。QuartusII作为一款可编程逻辑软件,它提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。此外,QuartusII通过和DSPBuilder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台[15]。Altera公司的QuartusII软件作为一种可编程逻辑的设计环境,由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。 4基于DSPBuilder的数字移相信号发生器设计4.1数字移相信号发生器建模根据第二章所述的DDS原理,调用DSPBuilder和Simulink库中的相关模块,完成设计框图如图4-1。图4-1数字移相信号发生器模块框图图中Constant模块为相位控制字的输入端,它的输入值决定了波形相位的改变,Constant3模块为频率控制字的输入端,它的输入值决定了波形频率的改变。本次模块设计全部采用无符号整数数据类型,相位控制字“Pword”模块设置位宽为8位,频率控制字“Fword”模块位宽也设置为8位。各模块功能及相关参数设置: 框图中用到了两个加法器模块Adder1和Adder2,其功能是将多个数据相加。两者都不选择Pipeline,即加法器本身没有内含寄存器,因此加法器出来后需要有延时模块存在。具体参数设置如图4-2所示。图4-2加法器模块参数设置Delay模块放在加法器后面,作为一个延时器来使用,它具有一个延时的功能。参数设置如图4-3所示。图4-3Delay模块参数设置BusConversion是总线变换模块,其功能是将总线中指定数位提取出来。图中BusConversion模块将32位输出总线中的高10位提取出来,即将第22位到第31位提取输出。如图4-4所示。 图4-4BusConversion模块参数设置SINLUT和SINLUT1为正弦查找表模块,左边的输入端为查找数据的地址输入端,把查找表地址线位宽(LUTAddressWidth)设置为10;右边的输出端为离散正弦波信号输出端,把输出位宽(Out[numberofbits]设置为10。在MATLABArray编辑框中输入计算式为:511*sin([0:2*pi/(2^10):2*pi])+512,即设置正弦函数sin起始值为0,步进值为,结束值,其中pi是常数,这是matlab中的语法。上式的数值变化范围为-511~+511,总值为1024,恰好在10位二进制数能表示的最大值。参数如图4-5所示。 图4-5正弦查找表“SINLUT”模块参数设置BusConcatenation是总线合并模块,其功能是将两个总线按要求合成一个总线,且宽度等于输入的两总线宽度之和。图中BusConcatenation1是将4位相位输入与一个28位的总线合并,产生一个32位的总线;BusConcatenation2是将8位相位输入与一个20位的总线合并,产生一个28位的总线。参数如图4-6所示。图4-6BusConcatenation1和BusConcatenation2模块参数设置TRAGOut和DDSOut模块作为输出参考信号和可移相波形信号输出,参数图如4-7所示。 图4-7TRAGOut和DDSOut模块参数设置SignalCompiler模块是DSPBuilder的心脏,利用SignalCompiler控制设计系统的综合、编译和仿真的流程。它把Simulink的设计文件(.mdl)转化成相应的硬件描述语言VHDL语言设计文件(.vhd)以及用于控制综合与编译的Tcl脚本文件。双击SignalCompiler后出现如图4-8所示的SignalCompiler窗口图,点击“Analyze”按钮后,SignalCompiler就会对模型进行分析,检查模型有无错误,并在Matlab主窗口弹出对话框,并给出相关信息。图4-8SignalCompiler窗口在分析正确后,打开SignalCompiler窗口,如图4-9,开始 对SignalCompiler进行项目设置选项,然后对右侧的硬件实行编译。第一步:转换MDL文件为VHDL文件;第二步:综合;第三步:Quartus编译适配,生成编程文件。在编译完成后,点击“ReportFile”报告文件按钮,会获得详细的模型相关的设置情况、编译结果、生成文件列表说明等。图4-9SignalCompiler窗口打开图转换为QuartusII下的工程后,产生的相关报表文件界面如图4-10所示。图4-10转换产生的报表文件4.2基于QuartusII的编译仿真打开Quartus II操作界面,将在Matlab中转换的VHDL语言载入,并进行仿真。转换生成的VHDL语言文件如图4-11所示。图4-11转换生成的VHDL语言文件 5系统仿真与调试5.1数字移相信号发生器波形输出通过相位控制字输入端Constant和频率控制字输入端Constant3输入不同的数值,来改变相位和频率,实现移相。模块中在相位字中输入数值64,频率字输入数值50。在调试过程中,Simulink仿真参数设置为Starttime为0,Stoptime为500,Type为Fixed-step,步进为1e-3。如图5-1为移相波形输出。图5-1移相波形输出1图中第一段波形为TRAGOut输出的参考波形,第二段波形为DDSOut输出的移相波形。 计算移相值:,理论值与实际波形一致。图5-2移相波形输出2频率字为100,相位字为64时的输出波形如图5-2所示。比较图5-1与图5-2可验证调频功能的正确性。频率字为50,相位字为128时的输出波形如图5-3所示。比较图5-1与图5-3可验证移相功能的正确性。同理可计算移相值,,理论值与实际波形一致。 图5-3移相波形输出3 6设计总结本次基于DSPBuilder的数字移相信号发生器设计,主要通过DDS技术来实现。在DSPBuilder平台上完成模型设计,并进行功能仿真,编译等,最后在QUARTUSII中进行FPGA的实现。从安装设计软件到建立模块,直到最后完成论文,在这个过程中遇到很多问题。先前对于DSPBuilder设计平台的认识几乎为零,从最简单的模块建立到整个模块的设计,都是一步一步来。首先对于这次设计的最基础模块DDS模块建立,通过查找资料,设置各种参数设置,同时通过老师的相关修正与指导,能正确的输出波形。然后在DDS模块基础上完成整个数字移相信号发生器模块的建立,在建立过程中一些参数设置错误,导致无法显示波形等情况,在老师的指导下顺利的解决了。本次设计使我更深一步了解了Matlab,QuartusII和DSPBuilder等相关设计软件,在动手实践中加深了对理论知识的了解。设计的过程使我受益匪浅,提高了自我学习的能力以及对新知识的获取能力。 参考文献[1]赖昭胜,管立新.基于DspBuilder的DDS实现及其应用[J].微计算机信息,2006,11-2:186-188[2]郝小江,伍刚,周玉荣.基于FPGA的数字移相信号发生器设计[J].微计算机信息,2009,2,25(2-2):169~182.[3]曹亚楠,王秀娟,刘继光.基于DDS的数字移相信号发生器[J].煤矿现代化,2010,1:75~77.[4]李志鹏,郭勇,沈军.基于DDS技术实现信号发生器[J].微计算机信息,2007,19-2:175-177[5]罗韩君,刘明伟,林亚风.基于DSPBuilder的DDS设计与实现[J].现代电子技术,2008,2,31(17):147~150.[6]赵兴亮,阮炳涛,孟昕等.一种数字式移相信号发生器的设计与实现[J].自动化仪表,2007,2,28(2):55~56.[7]刘伟,胡仁杰,王峥.基于AD9850芯片的信号发生器的研究[J].2009,11,(11):19~21.[8]杨恢先,黄辉先.单片机原理及应用[M].北京:人民邮电出版社,2007,12:16~18.[9]飞思科技产品研发中心.MATLAB7基础与提高[M].北京:电子工业出版社,2005,4[10]Matlab软件概述[EB/OL],[2011-3-11].http://wenku.baidu.com/view/a652a67001f69e3143329453.html.[11]Altera.DSPBuilderUserGuide[EB/OL].[2009-04-20].http://www.altera.com/literature/ug/ug_dsp_builder.pdf.[12]王玉萍,付源.基于DSPBuilder的DDS设计与应用[J].煤炭技术,2006,4,25(4):26~28.[13]周彬,秦玉娟,王振利.基于DSPBuilder的多种数字调制的实现[J].兰州工业高等专科学校学报,2009,12,16(6):30~32.[14]DanMoreLi.ASICDesign/ApplicationNote:modulatingDirectDigitalSynthesizerInAQuickLogicFPGA.Telxoncorporation.2004[15]潘松,黄继业,王国栋.现代DSP 技术[M].西安:西安电子科技大学出版社,2004.5

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭