1、 本科毕业设计(论文)基于FPGA 低频信号发生器的设计 燕山大学毕业设计(论文)任务书 学院:系级教学单位:学 号 学生 姓名 专 业 班 级 题 目 题目名称 基于 FPGA低频信号发生器的设计 题目性质 1.理工类:工程设计();工程技术实验研究型();理论研究型();计算机软件型();综合型()2.管理类();3.外语类();4.艺术类()题目类型 1.毕业设计()2.论文()题目来源 科研课题()生产实际()自选题目()主 要 内 容 本课题用 FPGA产生低频信号具有高度精确吗频率分辨率高,可靠性好等优点。可选择正弦波,方波,三角波,锯齿波,TTL,百噪声,高斯噪声,直流,梯形,指
2、数等常规波形输出。信号输出通道可达 2-3 路,信号通道可分别输出波形,也可同步输出,两通道相位差可以设置。基 本 要 求 1.本设计能产生正弦波,三角波,占空比可调的方波以及它们的线性组合;2.幅度可调范围为 0-5V;3.频率在 100Hz-20KHz 之间能以 100Hz 为步进进行调整。参 考 资 料 1.戚勇,叶哲江,闫志刚,数字式低频信号发生器的软件设计山东理工大学学报(自然科学版)2007 年 第 21 卷 第 02 期 2.徐文强,任勇峰,文丰,基于 FPGA的高速脉冲信号源的设计与实现微型计算机信息 2007 年 第 23 卷 第 02 期 周 次 第 14 周 第 58 周
3、 第 912 周 第 1316 周 第 1718 周 应 完 成 的 内 容 收集资料,了解 FPGA的基本原理,阅读相关文献。确定总体方案,确定技术路线。FPGA信号发生器系统 设定 软件设计及调试 设计总结撰写论文 指导教师:职称:2009 年 1 月 6 日 系级教学单位审批:年 月 日 摘要 I 摘要 本设计利用FPGA 器件实现低频信号发生器,以完成正弦波、方波和三角波信号的发生,并对其各系统组成部分的原理和实现方法进行了说明。基于FPGA 的低频信号发生器对比于传统信号发生器具有系统稳定度高,控制方便,功能强大,可扩展性强的特点。信号发生器编程部分采用硬件描述语言(HDL)来实现,
4、能够完成信号的产生以及波形的选择等多种控制功能。本论文对现场可编程门阵列(FPGA)器件进行了介绍,FPGA以其独有的通过改变软件来控制硬件功能的工作方式,被广泛应用于信号发生器等领域。另一方面,论文研究了信号发生器的构造,工作原理以及实现方法,并且给出了基于 FPGA实现多波形信号发生器的设计过程和周边部分的原理与结构。其次,论文对本系统的软件部分进行了研究,说明了软件实现波形的流程。由于该设计用 FPGA实现,因此具有许多优点,比如:在不修改硬件电路的情况下频率可调,波形可以选择正弦波、三角波以及方波等多种波形,且电路结构简单、扩展性好,具有频率范围宽、频率分辨率高、相位连续、切换速度快等
5、特点。本设计产生的波形频率可在 100Hz20KHz之间以100Hz 为步进进行调整;幅度可调范围为 05V。关键词 现场可编程门阵列;信号发生器;硬件描述语言;波形 燕山大学本科生毕业设计(论文)II Abstract This system accomp lishes the occurrence and the performance regulate of the sine wave,the rectangular wave and the triangle wave using single FPGA chip.The whole system holds high stabiliz
6、ation,convenient control and strong feasibility to expand.With the hardware description language(HDL),the programming part can achieve signal generation and the choice of waveform and other control functions.The thesis introduced Field Programmable Gate Array(FPGA),it is a new type of high-density P
7、LD,and it is one of the most widely used PLD devices in the world.Next,This thesis studied the structural aspects of signal generator,the working principle and realization method.And gives the FPGA-based multi-waveform signal generator of the design process and the surrounding part of the theory and
8、 structure.Afterwards,It shows the process how to realize the waveform in the software.As the FPGA design to achieve,it has many advantages,such as:do not modify the hardware circuit in the case of adjustable frequency,sinusoidal waveform can choose,triangle waveform,etc.,and the circuit structure i
9、s simple,scalable,and has a wide frequency range,high frequency resolution,phase-continuous,and fast switching.The frequency can be adjusted from 100Hz to 20KHz,its interval is 100Hz.It can gratify the request of the design.Keywords Field Programmable Gate Array(FPGA);signal generator device;Hardwar
10、e Description Language(HDL);Waveform III 目 录 摘要.I Abstract.II 第 1 章 绪论.1 1.1 课题背景.1 1.1.1 信号发生器研究背景.1 1.1.2 FPGA研究背景.2 1.2 课题国内外应用现状及发展前景.3 1.2.1 信号发生器的应用及前景.3 1.2.2 FPGA在信号发生器领域的应用.4 1.3 本文研究的主要内容.5 第 2 章 信号发生器的原理及实现方法.7 2.1 信号发生器原理.7 2.1.1 信号发生器概述.7 2.1.2 信号发生器分类.7 2.1.3 信号发生器原理.8 2.2 信号发生器实现方法及方案
11、.9 2.2.1 直接数字频率合成方法.9 2.2.2 低频信号发生器方案论证.11 2.3 本章小结.12 第 3 章 系统设计流程及 FPGA的运用.13 3.1 设计思路及设计参数.13 3.2 信号发生器系统组成.13 3.2.1 输入部分.14 3.2.2 FPGA部分.16 3.2.3 DAC部分.16 3.2.4 输出显示部分.17 3.3 FPGA简介.18 3.3.1 FPGA的发展.18 3.3.2 FPGA的特点.18 3.3.3 FPGA的分类与结构.19 IV 3.4 FPGA技术的运用.20 3.4.1 FPGA测试技术简介.20 3.4.2 FPGA开发过程与设计
12、方法.20 3.4.3 FPGA的编程与配置.23 3.5 FPGA产品介绍及型号选择.24 3.6 本章小结.25 第 4 章 系统软硬件设计及编程语言介绍.27 4.1 硬件描述语言(VHDL).27 4.1.1 VHDL 的发展.27 4.1.2 VHDL 的特点.28 4.1.3 VHDL 程序结构.30 4.2 软件设计.30 4.2.1 Quartus简介.30 4.2.2 Quartus设计流程.31 4.3 硬件设计.35 4.4 本章小结.36 结论.37 参考文献.38 致谢.40 附录 1.错误!未定义书签。附录 2.错误!未定义书签。附录 3.错误!未定义书签。附录 4
13、.错误!未定义书签。第 1 章 绪论 1 第 1 章 绪论 1.1 课题背景 1.1.1 信号发生器研究背景 信号发生器又称信号源或振荡器,它已经成为现代科技进步离不开的基础设备之一,在许多领域发挥着重要的作用。信号发生器可产生各类特定波形特定频率的信号以供后续设备或研究实验使用。目前信号发生器所能产生的信号以电信号为主。信号的产生、传输以及处理,在日常应用领域对应于信息的产生、交换和处理,在科研实验领域对应于检测信号的发生、检测过程和分析。只有可利用的信号确实存在,它的传输和处理过程才具有实际意义。在当今这个已经进入了信息时代的社会,人们日常的生活,社会的运转,国家的安全都离不开信号发生器。
14、信号发生器就是信号存在的前提。作为信号的源头,信号发生器的质量、性能参数是否符合要求直接关系到信号处理或者分析的后续阶段能否顺利的进行以及最终处理效果与分析结果是否符合要求。现阶段,世界上已经研制出许多类型的高质量高可靠性的信号发生器,这在某些方面降低了信号传输、处理、与分析的难度。另外,如果信号在产生阶段就存在错误,那么对于接收信号的一端或者运行的过程终端,错误就相对无法避免。所以,想要尽全力杜绝信号传输、处理以及发挥作用过程中的错误,就要求在信号发生器领域达到很高的要求。这也就需要一个符合实际应用要求,设计正确无误的信号发生器。本课题所研究的低频信号发生器是信号发生器当中的一种类型,低频信
15、号发生器的发展经历了几十年的时间,已经拥有了相对成熟的技术基础。在广义范围内,本文所涉及的低频信号发生器是一个相对的概念,它是相比于高频信号发生器的。目前世界上没有一个统一的界限规定所谓低频的频率范围与高频的频率范围。在不同的领域,如声音信号、电信号、光波信号等其所指也会有明显不同。另外一个需要说明的事实是,低频信号发生器满足了许多当今社会的需求,在军事,科研,医疗等领域都有独特的不可替代的作燕山大学本科生毕业设计(论文)2 用。低频信号发生器的发展现状也已经形成了以单片机、嵌入式系统为载体,DDS、传统信号发生器(信号源、振荡器)为实现方法的相对成熟的技术。1.1.2 FPGA研究背景 FP
16、GA是英文 Field Programmable Gate Array 的缩写,即现场可编程门阵列。现场可编程门阵列(FPGA)器件是一种新型的高密度现场可编程逻辑器件(PLD)。FPGA采用了 CMOS-SRAM工艺进行制造,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物,也是目前世界上应用最为广泛的 PLD 器件之一。FPGA是专门集成电路(ASIC)领域内的一种半定制电路,它的出现在一定程度上解决了定制电路的不足,也克服了原来可编程器件的门电路数量有限的缺点。当今社会是一个数字化的社会,FPGA 技术作为电子设计自动化的一类重要器件,其发展得益于数字化集成电路的进步。
17、如今数字集成电路在人们日常生活、科研及军事等领域发挥着极大的作用。回顾数字电路的发展,经历了从电子管、晶体管、小规模集成电路到超大规模集成电路和超位集成电路的过程,在时间上只用了短短十几年,在规模上,也基本达到了每一年或两年增长一倍的速度。正像前面提到的那样,首先说明数字集成电路的发展史,是因为在某些方面,集成电路的发展也极大的促进了电子设计自动化(Electronic Design Automation)的发展1。原来由半导体厂商独立承担的全(半)定制 ASIC 的设计与制造已经可以由系统设计师在实验室内独立设计并进行实际应用。进入21世纪以后,EDA 技术得到了更大的发展,其中在 FPGA
18、 上实现了数字信号处理(Digital Signal Processing)和更大规模的 FPGA 的推出都说明了这点。进入21世纪以来,FPGA 技术取得了飞速发展,在当今电子设计自动化领域占有相当重要的地位。同时,FPGA 在各个领域都已经得到了相当广泛的应用。在数字信号处理(DSP)领域中,FPGA 技术发挥其独特优势,解决了传统数字信号处理方法遇到的硬件设备复杂庞大,设计可修改性差,耗能高等缺点。在计算机领域的运用中,与传统超级计算机上动辄使用数百甚至上千个处理器不同的是,使用了大约十几个相对便宜的现场可编程门阵列第 1 章 绪论 3(FPGA)芯片,每个FPGA 芯片能够并行地处理数
19、千个任务;而传统计算机上使用的处理器只能同时处理一个任务,因此,尽管传统的超级计算机配置有数以百计的处理器,只配置有少数FPGA 芯片的超计算机的运算性能就能够超过传统的超级计算机。另外FPGA 芯片能够通过使用与芯片上晶体管相连接的内存单元重新配置,因此与大多数芯片一旦生产出来就不再可以改变不同的是,FPGA 芯片能够被反复改变。在航天领域,科学家在卫星中使用FPGA 芯片,因为这使得他们无需更换芯片,而只要发送新的软件和改变电路就能够对计算机进行升级。我们可以设想,不是每年,而是每40毫秒对芯片重新配置一次,使它处理不同的任务就像生产工厂不断的流水线生产不同的产品那样。从理论上说,我们将拥
20、有功能异常强大的计算机系统,它不但能够进行并行处理,而且能够不断地改变电路,根据不同任务对它本身进行优化,并根据需要使用资源。FPGA 在电力系统中的应用也很重要,由于FPGA 有集成度高、编程仿真方便、速度快等优点,使得FPGA 在信号处理、通信以及电力系统中得到了广泛地应用。尤其在电力系统中,FPGA 日益显现出它的优点,例如在变频调速系统、有源滤波器中得到了广泛的应用。综上所述,FPGA 是一种非常有前途的新技术,很适合于科研工作中的样机、新产品及一些生产量不是特别大的产品。对于批量较大产品可以通过板图优化制成ASIC 以降低成本。1.2 课题国内外应用现状及发展前景 1.2.1 信号发
21、生器的应用及前景 信号发生器在生产实践和科技领域中有着广泛的应用。在数学当中,信号的各种波形曲线都可以用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。例如在通信、广播、电视系统中,都需要射频(高频)发射器,这里的射频波就是载波,把音频(低频)、视频信号或脉冲信号运载出去,就需要能够产生高频的振荡器。信号发生器在医疗、军事、工业、农业、科学研究等领域有着不可替代燕山大学本科生毕业设计(论文)4 的作用。在医疗领域的应用有生物医学,医疗器械等方面,许多医疗器械依靠信号发生器产生的
22、不同频率、幅度的信号探测人体,对人体进行治疗或者对病变组织进行检查,如超声诊断、核磁共振成像等。在军事方面,各类雷达、无损探伤系统、电子对抗系统、测量控制系统、军事通讯系统也有不同类型信号发生器的身影。信号发生器在工业、农业、生物医学等领域内的应用也很广泛,如高频感应加热、熔炼、淬火等。在科学研究方面,低频信号发生器的应用更为广泛,地震模拟、机械震动、工业过程控制、电子测量、航空测控、跳频通信、高速数据采集系统等领域通常都需要功率或大或小,频率或高或低的信号源,许多相关科技成果,已经潜移默化地应用于人们的生活。低频信号发生器作为信号发生源的一种,其应用已经包括在了上面的内容中,正如前面所论述过
23、的那样,低频信号是相对的,在不同领域,都会有其相对的所谓低频,一般来讲,低频信号发生器用来产生频率为 20Hz200kHz 的信号。除具有电压输出外,有的还有功率输出。所以用途十分广泛,可用于测试或检修各种电子仪器设备中的低频放大器的频率特性、增益、通频带,也可用作高频信号发生器的外调制信号源。另外,在校准电子电压表时,它可提供交流信号电压。综上所述,信号发生器不是一个陌生的概念,它离人们的日常生活并不遥远。在今后,信号发生器将向着频谱范围更广,信号更稳定持久,技术更成熟,耗能更低,成本更低廉,既能适应于批量生产又能满足个别用户特殊需求的方向全面发展。信号发生器将继续正在我们身边,为人类的健康
24、,祖国的安全,工农业的发展,科技的进步做着自己不可被替代的贡献。1.2.2 FPGA在信号发生器领域的应用 信号发生器作为电子技术方面一种常用的基础设备,在过去很长一段时间内都是由模拟电路构成的。以模拟电路为基础的信号源有一些优点,例如在较高频率的范围内其频率可调性好,稳定性高等。但是,随着科学技术的进步,在科学研究与生产实践中,人们对于信号源的要求也越来越苛刻,例如生物医学,地理勘测,工业控制以及机械制造等领域,通常会要求信号源第 1 章 绪论 5 能产生频率较低的信号。以模拟电路为基础的信号发生器的缺点,恰恰就在于其不能生成令人满意的低频信号,而且如果要用于低频信号发生器,模拟电路的 RC
25、 值会比较大2,就目前的制造水平来说,制造阻值很大的电阻相对容易,而大电容在制造上有许多困难。这将使得以模拟电路为基础的信号发生器的参数准确度难以得到保证。另外一方面,例如在高速数据采集系统中,信号源起到的是校验设备的作用,因此它需要能够非常及时、有效地向负责采集的设备提供相对稳定的高频信号以用于检验监控数据采集设备的工作情况。这个系统同时还要求信号发生器能够产生一些必要的控制类信号,用来控制负责数据采集的系统。从这个角度说,这就要求信号源自身拥有更加可靠、稳定的工作状态。另外一方面,设计并实现更加通用,更加小型化的信号源是信号采集系统的必然要求,模拟电路在这些方面还存在一些很难避免的不足,例
26、如较为庞大的体积,较明显的漏电损耗现象等,都会给信号发生器的质量和实际使用造成一定的影响。因此,以本论文所研究的基于 FPGA的信号发生器为代表的新一代信号发生器应运而生。这类信号发生器是以 EDA技术的成熟以及 CPLD/FPGA这类大规模可编程逻辑器件的发展完善为软硬件基础的。本文着重介绍的是一种基于 FPGA的低频信号发生器,此信号发生器可产生正弦波,三角波,占空比可调的方波以及它们的线性组合,不同波形的频率可方便地控制在100Hz20KHz 的低频范围内。在编程方面采用 VHDL硬件描述语言进行设计实现。具有高精度,高速,频率分辨率高,可靠性好等优点,充分体现出ASIC 芯片在数字电路
27、设计中的优势和广阔的应用前景。现今越来越多的信号发生器采用现代此类设计方案。FPGA器件拥有良好的可修改性和稳定性,凭借这些优良的性能,以 FPGA为代表的新一代信号发生器也将得到更大的发展,其全面广泛的应用已经成为一种不可阻挡的发展趋势。1.3 本文研究的主要内容 本文主要研究了一种基于 FPGA的低频信号发生器,该信号发生器可产生正弦波、方波、三角波等多种波形,并且具有精度高,速度快,可靠性好燕山大学本科生毕业设计(论文)6 等优点。在本论文中,对信号发生器的应用、原理进行了说明,对该信号发生器系统各部分的实现进行了论述。并且对硬件描述语言以及所用到的软件进行了说明。第 2 章 信号发生器
28、的原理及实现方法 7 第 2 章 信号发生器的原理及实现方法 2.1 信号发生器原理 2.1.1 信号发生器概述 凡是产生测试信号的仪器,统称为信号发生器,也称为信号源,它多用于产生被测电路所需特定参数的电测试信号以及后续设备需要用到的其他特定参数的信号。在测试、研究或调整电子电路及设备时,为测定电路的一些电参量,如测量频率响应、噪声系数,为电压表定度等,都要求提供符合所定技术条件的电信号,以模拟在实际工作中使用的待测设备的激励信号。当要求进行系统的稳态特性测量时,需使用振幅、频率已知的正弦信号源。当测试系统的瞬态特性时,又需使用前沿时间、脉冲宽度和重复周期已知的矩形脉冲源。并且要求信号源输出
29、信号的参数,如频率、波形、输出电压或功率等,能在一定范围内进行精确调整,有很好的稳定性,有输出指示。2.1.2 信号发生器分类 本小节说明信号发生器的分类。根据信号源输出波形的不同,可以划分为正弦波信号发生器、矩形脉冲信号发生器、函数信号发生器和随机信号发生器等四大类。下面对这四类信号发生器进行简要介绍:正弦信号是使用最广泛的测试信号。这是因为产生正弦信号的方法比较简单,而且用正弦信号测量比较方便。正弦信号发生器。主要用于测量电路和系统的频率特性、非线性失真、增益及灵敏度等。正弦信号源又可以根据工作频率范围的不同划分为若干种,按其不同性能和用途还可细分为低频(20 赫兹至 10 兆赫)信号发生
30、器、高频(100 千赫至 300 兆赫)信号发生器、微波信号发生器、扫频和程控信号发生器、频率合成式信号发生器等。脉冲信号发生器。能产生宽度、幅度和重复频率可调的矩形脉冲的发生器,可用以测试线性系统的瞬态响应,或用作模拟信号来测试雷达、多路通燕山大学本科生毕业设计(论文)8 信和其他脉冲数字系统的性能。函数(波形)信号发生器。能产生某些特定的周期性时间函数波形(正弦波、方波、三角波、锯齿波和脉冲波等)信号,频率范围可从几个微赫到几十兆赫。除供通信、仪表和自动控制系统测试用外,还广泛用于其他非电测量领域。随机信号发生器。通常又分为噪声信号发生器和伪随机信号发生器两类。噪声信号发生器主要用途为:在
31、待测系统中引入一个随机信号,以模拟实际工作条件中的噪声而测定系统性能;外加一个已知噪声信号与系统内部噪声比较以测定噪声系数;用随机信号代替正弦或脉冲信号,以测定系统动态特性等。当用噪声信号进行相关函数测量时,若平均测量时间不够长,会出现统计性误差,可用伪随机信号来解决。2.1.3 信号发生器原理 本小节对比了基于 FPGA的信号发生器与其它传统方案的原理,说明了采用 FPGA技术的合理性和可行性。(1)用分立元件组成的函数发生器:产生的波形受到电路硬件的限制,通常是单函数发生器且频率不高,其工作不很稳定,不易调试,体积也相对较大,达不到本课题能产生正弦波、三角波和方波等多种波形的要求。(2)由
32、晶体管、运放 IC 等通用器件制作的信号发生器:这类器件更多的则是用专门的函数信号发生器 IC 产生信号,早期的函数信号发生器 IC,如L8038、BA205、XR2207/2209 等,它们的功能较少,精度不高,频率上限只有 300kHz,无法产生更高频率的信号,调节方式也不够灵活,频率和占空比不能独立调节,二者互相影响。(3)利用单片集成芯片的函数发生器:能产生多种波形,达到较高的频率,且易于调试。鉴于此,美国美信公司开发了新一代函数信号发生器ICMAX038,它克服了第 2 种方法中芯片的缺点,可以达到更高的技术指标,是上述芯片望尘莫及的。MAX038频率高、精度好,因此它被称为高频精密
33、函数信号发生器 IC。在锁相环、压控振荡器、频率合成器、脉宽调制器等电路的设计上,MAX038都是优选的器件,但是在本课题当中,要求产生低第 2 章 信号发生器的原理及实现方法 9 频信号而不是高频信号,且其过高的技术指标以及由此带来的高成本也不适用于本次课题研究。(4)基于 FPGA的信号发生器:现场可编程门阵列器件具有容量大、运算速度快、现场可编程等优点,使得信号发生器有了新的实现途径。FPGA配合相应外围器件实现的多波形信号发生器电路结构简单、易于扩展,具有极大的灵活性和方便性。实现的多波形信号发生器可以产生正弦波、三角波、锯齿波和方波等信号,输出信号频率在 0Hz2MHz范围内可调,而
34、且可以轻易通过程序实现频率步进以及波形调整。综上所述,本课题采用基于 FPGA的信号发生器来实现。2.2 信号发生器实现方法及方案 2.2.1 直接数字频率合成方法 本课题已确定采用基于FPGA 为硬件基础实现信号发生器,本小节将通过论证直接数字频率合成(DDS)的方法来说明以DDS 作为波形产生原理,来生成本此课题要求的正弦波、方波、三角波的可行性。一般的信号源设计都采用频率合成技术,传统上采用锁相环(PLL)电路进行设计,随着直接数字频率合成(DDS)技术的发展,很多芯片公司都开发出了自己的DDS 专用集成芯片,同D/A 转换器和低通滤波器(LPF)一起便可以组成任意波形信号的发生器 3-
35、4。近年来现场可编程门阵列(FPGA)技术得到了迅速的发展和广泛的应用,其资源容量、工作频率以及集成度都得到了极大的提高,使得利用FPGA 实现某些专用的数字集成电路得到了大家的关注5。基于FPGA 实现的直接数字频率合成器则更具其优点,有着灵活的接口和控制方式、较短的转换时间、较宽的带宽以及相位连续变化和频率分辨率较高等优点,其也为设计者在此基础之上实现电路集成提供了另一种方法。直接数字频率合成(Direct Digital Frequency Synthesis,即DDFS,一般简称DDS)是从相位概念出发,直接合成所需要波形的一种新颖的频率合成技术6。以正弦波信号发生器为例,利用DDS
36、技术可以根据要求产生不同频率的正弦波,而且可以控制其初始相位和信号幅度,同样也可以利用DDS 技术产生任意的波形。燕山大学本科生毕业设计(论文)10 其原理如图2-1所示:相位累加器相位字输入同步寄存器同步寄存器累加寄存器相位调制器MD/ALPFN输出正弦ROM查找表频率字输入系统时钟M 图2-1 基于FPGA 的DDS 信号发生器原理图 DDS 电路一般包括系统时钟、相位累加器、相位调制器、ROM 查找表、D/A 转换器和低通滤波器(LPF)。输入的频率控制字(X)称为相位步进量,作为相位累加器的增量;输入的相位控制字通过相位调制器来设置正弦波的初始相位;系统时钟则对相位累加器、相位调制器和
37、D/A 转换器提供相应的时序控制7-8。相位累加器由N 位全加器和N 位累加寄存器级联而成,对频率控制字的二进制码进行累加运算,是典型的反馈电路。在每个系统时钟沿的控制下,N 位加法器将频率控制字X 与累加寄存器输出的相位数据相加,把相加后的结果再送至累加寄存器,累加寄存器中新的相位数据既反馈到加法器的输入端,以使加法器在下一时钟周期中继续与频率控制字X 相加,同时累加寄存器的高M 位数值,将作为查找ROM 表中取样数据的地址值。ROM查找表中储存着一个完整周期的正弦波幅度信息,通过取得的采样地址值进行查表,从 ROM 表中输出相应的波形采样数据,送入 D/A 转换器,DAC输出阶梯波形,再通
38、过低通滤波器将波形数据转换成符合要求第 2 章 信号发生器的原理及实现方法 11 的模拟波形。此处以正弦波为例,介绍波形产生过程。如图 2-2 所示。查找表中的信息 查找表后的输出 D/A 转换后的输出 滤波后的波形 图 2-2波形产生过程 其中步长的概念即为对数字波形查表的相位增量,由累加器对相位增量进行累加,每个时钟周期产生的累加器的高M 位数值作为查表地址,两个查表周期之间就存在一个相位增量,当相位累加器加满时就会产生一次溢出,即相位寄存器每经过2N/X 个时钟周期后回到初始状态,相应的ROM 查找表经过一个循环回到初始位置,整个DDS 系统输出一个正弦波,这样就完成了一个波形采样值的查
39、表和输出9。这个周期就是DDS 产生波形的一个频率周期。2.2.2 低频信号发生器方案论证 针对本课题研究的要求,制定了三种基于FPGA 的低频信号发生器方案 方案一:采用DDS 集成芯片AD985 产生正弦波、方波和三角波,用燕山大学本科生毕业设计(论文)12 FPGA 和单片机联合构成系统的控制模块,这种方法能实现快速频率变换,具有低相位噪声,与其他方法相比具有最高的工作频率。但由于本次课题研究所需要的是产生低频信号发生器,加之这种方案采用大量的倍频、分频、混频和滤波环节,导致直接频率合成器的结构复杂,体积庞大,成本高。方案二:基于FPGA 的SOPC 片上可编程嵌入式系统方式。引入SOP
40、C 片上可编程系统的设计方式,实现对整个系统的控制,采用基于Simulink 的DSP Builder 设计DDS 及各种要求的信号,同时加入LCD 驱动、键盘驱动模块的IP核,实现系统的高度集成化。但该方案由于NiosII 软核I/O较多,设计难度较大,而且由于设计软件及NiosII 软核的不稳定性,容易引起系统的不稳定。方案三:基于VHDL 硬件描述语言与FPGA 现场可编程嵌入式系统相结合方式。采用VHDL 语言设计基于DDS 的各种要求信号。该方案软硬结合,具有系统稳定度高,控制方便,功能强大,可扩展性强的特点。但要求对整个系统的设计具有整体的把握。考虑到以上方案的利弊以及本次课题的具
41、体要求,决定采用方案三的框架,结合输入、数模转换、输出显示等其他部分,形成系统整体设计方案。考虑到本系统的规模以及以后的扩展需要,本设计中的 DDS部分采用VHDL硬件描述语言来实现,采用 VHDL语言设计的模块以后可以方便的进行修改、扩展和移植到不同的 FPGA芯片中10。2.3 本章小结 本章首先介绍了信号发生器的原理及分类,随后对本文用到的直接数字频率合成原理(DDS)进行了详细论述,并且制定了几种基于 FPGA器件,应用 DDS 原理的低频信号发生器方案,最终确定了以 VHDL语言编程,配置 FPGA器件的方法,该方法具有系统稳定度高,控制方便,功能强大,可扩展性强的特点。第 3 章
42、系统设计流程及 FPGA 的运用 13 第 3 章 系统设计流程及 FPGA的运用 3.1 设计思路及设计参数 在对低频信号发生器系统进行设计之前,首先需要明确对于该系统的设计要求,这直接关系到系统设计的每个细节。本次论文的设计根据课题任务书要求,结合此次设计的具体方案,制定了以下设计参数,这些要求全面达到或者超过了任务书当中的要求,满足了毕业设计要求的低频信号发生器的全部数据。下面说明此次设计的低频信号发生器系统所能达到的具体参数范围:1.本设计能产生正弦波,三角波,占空比可调的方波,并且能够产生以上波形的线性组合;2.输出波形频率范围 100Hz20KHz 重复频率可调;3.频率不仅间隔不
43、大于 100Hz(任务书要求为 100Hz);4.输出波形幅度范围为 0-5V(峰峰值),可按 0.1V(峰峰值)调整;5.具有显示输入波形的类型、重复频率(周期)和幅度的功能;6.用键盘输入编辑生成要求的各种波形(同周期)的线性组合;7.用键盘或其他输入设备产生任意波形;为达到以上要求,本论文制定了如下设计思路:首先,由功能类似键盘的拨盘开关作为输入端,对整体系统的功能实现进行选择和控制,然后通过FPGA内部的系统控制器,利用直接数字频率合成技术(DDS)原理产生相应的波形。FPGA仿真程序,利用 VHDL语言进行编写。具体某波形的一个周期内的 64 点采样可分别存储于不同存储器当中,以供调
44、用。然后,本设计采用一个加法器,可以实现不同波形的合成输出。最后,系统的输出显示部分,可以输出拨盘开关要求的输出波形。并且可以显示相关信息。3.2 信号发生器系统组成 本部分将介绍本次设计的低频信号发生器的硬件组成部分,并且给出硬件系统的组成框图,对各个组成部分的作用进行说明。燕山大学本科生毕业设计(论文)14 具体来说信号发生器系统由输入部分、FPGA部分、DAC部分和输出显示部分组成。具体流程如图 3-1所示。时钟设定清除确认调幅波形档位数据存储器 1分频器方波系统控制器运算/译码幅度显示加法器滤波输出波形显示频率显示占空比显示FPGA部分波形DAC调幅DAC三角波正弦波存储器 3存储器
45、2 图 3-1低频信号发生器系统实现流程 3.2.1 输入部分 整个系统的输入部分是决定生成波形种类、参数以及输出形式和内容的前端部分。输入部分包括设定、确认、清除、波形、档位、数据等能按键11。设定:可以由用户通过键盘控制波形发生器以产生任意需要的波形。确认:使用户方面确定数据输入有效,可以开始执行。清除:使存储任意波形的 RAM所有单元内容清零。波形:为波形输出选择开关,用来选择输出的波形 调幅:可以调节正弦波、三角波、方波的幅度。幅度调节是通过送到调幅 DAC的数据大小的更改来控制调幅 DAC输出电压的高低的变化,而此第 3 章 系统设计流程及 FPGA 的运用 15 输出的电压作为波形
46、 DAC的基准电压,从而实现对幅度的控制。数据:由 4 位 BCD组成,4 位 BCD数据是一次性进行置入的。档位:系统中为了实现输出波形的频率可调,需要手动置入波形的频率,而 BCD拨盘开关正好是可以满足要求的数据输入端。这样所需要的频率数据就可以通过由 4 位 BCD拨盘开关将频率数据一次性的置入 FPGA系统。BCD码的拨盘开关有 09 等十个位置,开关后部有 8、4、2、1、A 五个接点,这些接点均为开关输出线。当拨盘开关置于不同的位置时,控制线A 与 8、4、2、1 中的某些接点接通。如果开关拨到零,则所有的接点与 A均处于不接通状态,如拨到 1,则 1 与控制线 A 接通,其余的均
47、不接通。图 3-2为 BCD拨盘开关控制信号对照表。“O”表示控制线 A 与该端接通;“X”表示控制线与该端没有接通。接点 位置 8 4 2 1 0 X X X X 1 X X X O 2 X X O X 3 X X O O 4 X X X X 5 X O X O 6 X O O X 7 X O O O 8 O X X X 9 O X X O 图 3-2 BCD 拨盘开关控制信号对照图表 燕山大学本科生毕业设计(论文)16 3.2.2 FPGA部分 FPGA是整个系统的核心,构成系统的控制器、波形数据生成器、加法器、运算/译码器和分频器等电路。系统控制器:负责控制系统的每个部分状态及其之间的协
48、调。系统加法器:加法器是 10 位的,当只选择一段波形时,加法器等效于传输线,不对波形数据做处理;当选择两种或两种以上波形时,加法器先把送进来的数据进行叠加,把最后的数据的最低 2 位舍去,把剩下位送到波形DAC中。运算/译码:正弦波、三角波、锯齿波和叠加的波形的幅值算法都是相同的。方波的波形的幅值算法是另外一种。分频器:分频系数有固定不变,也有可改变的。具体在程序中说明。存储器 1:用来存储正弦波波形数据。通过循环不断地从RAM中依次读取正弦波一个周期在时域上64 个采样点的波形数据送入波形 DAC,从而产生正弦波。正弦波的频率取决于读取数据的速度。存储器 2:用来存储三角波波形数据。首先通
49、过键盘把三角波波形数据存储在存储器中,然后循环不断地从存储器 2 中依次读取三角波一个周期在时域上 64 个采样点的波形数据送入 DAC,从而产生方波。三角波的频率取决于读取数据的速度。存储器 3:用来存储方波波形数据。首先通过键盘把方波波形数据存储在存储器中,然后循环不断地从存储器 2 中依次读取方波一个周期在时域上64 个采样点的波形数据送入 DAC,从而产生方波。方波的频率取决于读取数据的速度。方波产生也是由 64 个采样点组成,64 个采样点的数据只有“低电平”和“高电平”两种状态。更改“低电平”和“高电平”出现的比例,就可以达到调节占空比的目的。3.2.3 DAC部分 DAC是数模转
50、换器的简称,又称 D/A 转换器。它是把数字量转变成模拟的器件,即可解释为一种将二进制数字量形式的离散信号转换成以标准量(或参考量)为基准的模拟量的转换器。D/A 转换器基本上由 4 个部分组成,第 3 章 系统设计流程及 FPGA 的运用 17 即权电阻网络、运算放大器、基准电源和模拟开关。本系统所涉及的 DAC器件包括波形 DAC和调幅 DAC两部分。波形 DAC:根据输入的波形数据(即 FPGA输出的数据),产生相应的模拟波形的输出。调幅 DAC:根据输入的幅度调节数据(即 FPGA输出的数据),用来调节波形 DAC的基准电压,达到输出波形幅度调节的目的。3.2.4 输出显示部分 本信号