基于FPGA的信号发生器.doc

上传人:laozhun 文档编号:4143013 上传时间:2023-04-07 格式:DOC 页数:25 大小:984.50KB
返回 下载 相关 举报
基于FPGA的信号发生器.doc_第1页
第1页 / 共25页
基于FPGA的信号发生器.doc_第2页
第2页 / 共25页
基于FPGA的信号发生器.doc_第3页
第3页 / 共25页
基于FPGA的信号发生器.doc_第4页
第4页 / 共25页
基于FPGA的信号发生器.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《基于FPGA的信号发生器.doc》由会员分享,可在线阅读,更多相关《基于FPGA的信号发生器.doc(25页珍藏版)》请在三一办公上搜索。

1、编号: 毕业设计(论文)说明书题 目: 基于FPGA的信号发生器 的设计和实现 院 (系): 信息与通信学院 专 业: 通信工程 学生姓名: 凌远林 学 号: 0800210319 指导教师: 梁红玉 职 称: 讲 师 题目类型: 理论研究 实验研究 工程设计 工程技术研究 软件开发2012年 5月 25日摘 要信号发生器又称为波形发生器, 是一种常用的信号源,广泛应用于电子电路、通信、控制和教学实验等领域。它是科研及工程实践中最重要的仪器之一, 以往多用硬件组成,系统结构比较复杂,可维护性和可操作性不佳。随着计算机技术的发展,信号发生器的设计制作越来越多的是用计算机技术,种类繁多,价格、性能

2、差异很大。用FPGA 或CPLD 来实现,它的优点是可以进行功能仿真,而且FPGA 和CPLD 的片内资源丰富,设计的流程简单。本课题主要研究基于FPGA 的信号发生器的设计和实现,设计研究工作大部分是在计算机软件平台Quartus II下完成的。在Quartus II环境下,先用verilog语言进行各模块的程序编写,然后生成顶层模块,连接各模块端口,形成信号发生器顶层原理图,通过Quartus II仿真,得到具体数据。最后通过FPGA开发板连接示波器,调试出波形进行总结和分析。本文结构如下:第一章 绪论,介绍课题研究的目的、发展现状,最后再说明课题研究的主要内容。第二章 对本课题研究的任务

3、要求以及工作流程进行说明。第三章 简单介绍开发工具和FPGA原理。第四章 详细说明信号发生器各模块的verilog语言编程和相关原理。第五章 总结。关键词:FPGA;Verilog编程语言;信号发生器;Quartus IIAbstractSignal generator, also known as a waveform generator, is a common source, widely used in electronic circuits, communications, control, and teaching experiments. It is one ofthe most

4、 important instrument in the research and engineering practice, past use of hardware components, system architecture is more complex, poor maintainability and operability. With the development of computer technology, more and more, signal generator design is the use of computer technology, a wide ra

5、nge of price, performance, very different. FPGA or CPLD, its advantage is that the functional simulation, and FPGA and CPLD chip is rich in resources, the design process is simple.The main subject of study design and implementation of FPGA-based signal generator, designed most of the work completed

6、in the computer software platform, the Quartus II. The programming of the module in the Quartus II environment, use the verilog language and then generate a top-level module, connect the ports of each module, the formation of the top-level schematic diagram of the signal generator by the Quartus II

7、simulation specific data. Finally, the FPGA development board connected to the oscilloscope, debugging, waveform were summarized and analyzed.The paper is organized as follows:Chapterintroduces the purpose of research, development status, the final description of the research of main content.Chapter

8、 gives the task requirements of the research work, as well as explain the process.Chapter is a brief introductiontodevelopment toolsand FPGAprinciple.Chapter details the signal generator module Verilog programming language and related principles. Chapteris summary.Key words: FPGA; Verilog programmin

9、g language; signal generator; the Quartus II目 录引言11 绪论21.1 课题研究的意义21.2 国内外研究状况及趋势21.3 本课题研究的主要内容22 课题设计要求和方案说明22.1 课题研究内容和要求22.2 课题设计方案及参数指标说明32.2.1 设计方案32.2.2 参数指标说明32.3 课题研究和设计工作流程33 开发工具和FPGA原理43.1 Altera Quartus II 9.043.2 FPGA的原理44 信号发生器的Verilog HDL语言编程设计和模块建模54.1 信号发生器54.1.1 信号发生器顶层图54.1.2 信号发

10、生器流程图64.1.3 信号发生器模块64.2 锁相环模块64.3 矩阵键盘扫描模块74.3.1键盘扫描状态图84.3.2矩阵键盘扫描模块84.4 分频模块94.4.1 吞脉冲分频原理94.4.2 分频模块及仿真分析104.5 地址发生器模块104.5.1定制初始化数据文件104.5.2定制LPM 元件124.5.3地址发生器模块124.6 波形选择模块134.7 幅度调节模块144.8 DA转换模块144.8.1 -变换的原理144.8.2 - DAC的结构144.8.3 - DAC的FPGA实现154.9 滤波器164.10 实物图165 总结17谢辞19参考文献20引言随着我国的经济日益

11、增长,社会对电子产品的需求量也就越来越大,目前,我国的电子产品市场正在迅速的壮大,市场前景广阔。FPGA在现代数字电路设计中发挥着越来越重要的作用。FPGA/CPLD所具有的静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改,这样就极大地提高了电子系统设计的灵活性和通用性,缩短了产品的上市时间并降低可电子系统的开发成本。 传统信号发生器大多由模拟电路构成,存在连线复杂、调试烦琐且可靠性较差等缺点。以VHDL编程语言和FPGA器件为核心的可调信号发生器的设计实现,提高了系统可靠性,实现了系统信号实时快速测量,也为其广泛应用于实际领域创造了条件。利用FPGA具有的静态

12、可重复编程和动态可系统重构的特性,使得硬件功能像软件一样通过编程修改,从而提高开发效率,缩短研发周期。信号发生器是一种常用的信号源,它是一种为电子测量和计量工作提供信号的设备,信号源作为一种基本电子设备在教学、科研、电子产品测量与调试、部队设备技术保障等领域,都有着广泛的应用。论文先简要介绍了信号发生器的一些基本理论以及它所使用的工具QuartusII。然后提出了基于信号发生器各个模块及整体的设计方案,并对其建模和FPGA语言编程,最后在通过FPGA开发板演示信号发生器运行结果,在示波器上显示出波形,并对该系统进行了性能的分析和比较。1 绪论1.1 课题研究的意义随着经济和科技的发展,对相应的

13、测试仪器和测试手段也提出了更高的要求,传统的信号发生器大多采用专用芯片或单片机或模拟电路,成本高、控制方式不灵活、波形种类较少等不能满足要求。但近几年随着FPGA技术的快速发展和广泛应用,其在信号发生器上的应用得到了很好的认同,很好的解决了有传统信号发生器带来的一些问题,信号发生器己成为测试仪器中至关重要的一类,因此开发信号发生器具有重大意义。1.2 国内外研究状况及趋势随着电子测量及其他部门对各类信号发生器的广泛需求及电子技术的迅速发展,促使信号发生器种类日益增多,性能日益提高,尤其随着70年代微处理器的出现更 促使信号发生器向着自动化、智能化发展,但还是存在一些问题。直到近年来现场可编程门

14、阵列(FPGA)技术得到快速的发展和广泛的应用,其资源容量、工作 频率以及集成度都得到了极大的提高,使得利用FPGA实现某些专用数字集成电路得到了大家的关注,而基于FPGA实现的信号发生器和以前相比有着灵活的接口和控制方式、较短的转换时间、较宽的宽带、以及相位连续变化和频率分辨率较高等优点,比起专用芯片功耗也低8,为信号发生器的发展提供了一种新的设计方法和思路。目前以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至 FPGA上进行测试,是现代IC设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR)或者更

15、复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flipflop)或者其他更加完整的记忆块。1.3 本课题研究的主要内容本课题主要研究基于FPGA的信号发生器的设计和实现问题。具体内容如下:(1)信号产生模块:产生正弦波、三角波和方波信号的数字信号,能通过滤波器转化成模拟信号的正弦波、三角波和方波的波形。(2)数模转换电路模块:分为波形DAC和调幅DAC两部分。波形DAC是根据FPGA有输出数据产生相应的模拟波形的输出;调幅DAC是根据FPGA有输出数据,用来调节波形DAC的基准电压,达到输出波形幅度调节的目的。(3)频率控制模块:

16、通过分频器设置固定和可变的分频系数,从而改变信号的频率,达到频率调节调功能。最后,整理仿真波形、数据,进行分析总结。2 课题设计要求和方案说明2.1 课题研究内容和要求本课题要求使用FPGA软件,通过软件设计并实现信号发生器。要完成的内容包括如下:学习并理解信号发生器的基本原理。分析并熟练掌握信号弹发生器的实现方案及其原理。最后在FPGA上实现设计总体实现方案,通过FPGA开发板和示波器得出正弦波、矩形波和三角波,深入学习并掌握各个模块的工作原理,功能和编程实现方法。2.2 课题设计方案及参数指标说明2.2.1 设计方案本课题采用4*4矩阵键盘作为输入设备,通过吞脉冲技术小数分频法对频率进行分

17、频得到所需要的频率进行频率调节控制,将波形数据存储在一个ROM内存里,通过地址读取波形数据,再通过DA转换器输出波形,其中DA转换器采用的是-变换采用过取样技术。本课题的重点难点为吞脉冲分频和DA转换器。2.2.2 参数指标说明性能指标要求:(1)信号的输出峰值15V,步进小于0.5V。 (2)输出频率f范围为11Hz100 kHz,步进频率调节不大于1Hz。 (3)两路信号相位差调节等于1。观察并分析仿真和实现结果,与理论结果进行比较,检验结果是否正确,列出数据,得出结论。2.3 课题研究和设计工作流程工作流程图如下,后续章节将围绕该设计步骤顺序对本次课题研究进行详细叙述。完成,通过矩阵键盘

18、输入,对输出波形进行数据收集和分析总结。熟悉使用QuartusII的工作环境,学习并熟悉VHDL语言编程学习信号发生器原理,初步确定设计方案,为后续工作打好理论基础在Quartus II工作环境下,使用VHDL语言进行编程,并进行建模通过FPGA开发板和示波器进行验证信号发生器工作的正确性图2-1课题工作流程3 开发工具和FPGA原理3.1 Altera Quartus II 9.0Quartus II 是Altera的综合性PLD开发软件,支持原理图、VHDL、Verilog HDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内

19、嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。Quartus II可以在XP、Linux以及Unix上使用,除了可以使用TCL完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。 Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。 此外,Quartus II 通过和DSP Builder工具与Matlab/Simul

20、ink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。 Maxplus II 作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。目前Altera已经停止了对Maxplus II 的更新支持,Quartus II 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。Altera在Quartus II 中包含了许多诸如SignalTap II、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC和HardCopy设计流程,并且继承

21、了Maxplus II 友好的图形界面及简便的使用方法。Altera Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。3.2 FPGA的原理FPGA是Field Programmable Gate Array(现场可编程门阵列)的缩写,代表的是一种可编程逻辑器件,它可以在制造完成后由用户根据自己的需要定义其逻辑功能。FPGA包含了一个逻辑单元(可以是门,也可以是查找表RAM)的阵列、触发器以及可编程的互连线。除此之外,现在的一些大规模FPGA还包含了片内RAM、嵌入式CPU、高速收发器等资源。FPGA 的显著特点是有一

22、个窄输入的逻辑单元,使用分布式互连方案,相对于传统的诸如PAL和PLA之类的可编程逻辑器件来说,FPGA的设计更加灵活。 FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有: 采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。 FPGA可做其它全定制或半定制ASIC电路的中试样片。 FPGA内部有丰富的触发器和IO引脚。 FPGA是

23、ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。 FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。 可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。目前FPGA的品种很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因

24、此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。FPGA有多种配置模式:并行主模式为一片FPGA加一片EPROM的方式;主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。4 信号发生器的Verilog HDL语言编程设计和模块建模4.1 信号发生器4.1.1 信号发生器顶层图图4-1 信号发生

25、器顶层图4.1.2 信号发生器流程图图4-2 信号发生器流程图4.1.3 信号发生器模块信号发生器模块是本课题的一个整体的模块,从图中我们可以看出,通过FPGA开发板从clk端口输入一个20MHz的基准时钟信号,经过信号发生器模块,可以输出out_a和out_b双通道信号,并在示波器上显示出波形。通过reset端口进行复位,并通过rowin3.0和rowout3.0两个端口8条数据线,连接到4*4矩阵键盘,通过矩阵键盘控制,可实现频率调节、幅度调节、相位调节、占空比调节、波形转换、a/b路切换等功能。图4-3 信号发生器模块4.2 锁相环模块锁相环模块是通过Quartus II的Mega Wi

26、zard Plug_In Manager配置两个输出端口,一个倍频2倍,另一个倍频到20倍。通过FPGA提供20M基准频率,分别倍频得到40MHz和400MHz频率,提供给矩阵键盘控制模块、频率控制模块以及DA转换模块使用。本课题中的DA转换模块所用到的频率要超出400MHz的,但由于锁相环倍频超出400MHz就会出现错误,所以只能倍频到400MHz。图4-4锁相环模块State 0初始化数据State 1Col=0000;Key_flag=0;Load=0;State 2Row!=4b1111/col=4b1110Row=4b1111State 3Row=4b1111/col=4b1101S

27、tate 4Row=4b1111/col=4b1011State 5Row=4b1111/col=4b0111 State 6 Row!=4b1111Key_flag=1; rowin_reg=rowin;colout_reg=col;Row!=4b1111Row=4b1111State 7Row=4b1111Row!=4b11114.3 矩阵键盘扫描模块图4-5矩阵键盘扫描状态图4.3.1键盘扫描状态图图4-5为键盘扫描的状态图,具体按键扫描说明如下:State 0: 给各个参数赋初值,如频率,幅度,波形,占空比,相位差。State 1: 清零key_flag标志位,load信号(相位重装入

28、信号,高电平有效);键盘扫描输出端colout置零。同时检测rowin, 如果rowin!=4b1111,说明有键按下,跳转到state 2,并且令扫描输出端输出1110,扫描第一列。若rowin=4b1111,没有键按下,则跳转回1,继续等待。State 2: 检测rowin,如果rowin仍然不等于1111,说明按下了第一列的键,跳转到state 6,否则跳转到state 3,并且扫描输出端输出1101,扫描第二列。State 3: 检测rowin,如果rowin仍然不等于1111,说明按下了第二列的键,跳转到state 6,否则跳转到state 4,并且扫描输出端输出1011,扫描第三列

29、。State 4: 检测rowin,如果rowin仍然不等于1111,说明按下了第三列的键,跳转到state 6,否则跳转到state 5,并且扫描输出端输出0111,扫描第四列。State 5: 检测rowin,如果rowin仍然不等于1111,说明按下了第四列的键,跳转到state 6,否则跳转回state 1,重新扫描。State 6: 将rowin的值存入寄存器rowin_reg,col的值存入colout_reg,将key_flag置一,表示扫描倒了键值,同时检测rowin,如果rowin不等于1111,则继续在state 6里跳转,知道按键被松手(即rowin=1111),跳转到s

30、tate 7。State 7: 将colout_reg和rowin_reg的值并置colout_reg,rowin_reg,用case语句判别,根据不同的值进行不同的操作。操作后跳转回state 1,重新扫描。4.3.2矩阵键盘扫描模块图4-6矩阵键盘扫描模块4.4 分频模块4.4.1 吞脉冲分频原理图4-7脉冲删除电路 图为脉冲删除电路工作原理:首先设置n倍频计数累加器的模m,在输入基频f的作用下,每来一个基频脉冲f,n倍频计数累加器就加n。当计数值不大于计数器的模m时,就产生一个删除脉冲,并传送给脉冲删除控制器,此时基频脉冲将被脉冲删除控制器过滤掉一个脉冲,从而实现脉冲删除。脉冲删除器的数

31、学实现: 那么,脉冲保留间隔q: (当q不是整数时,将会根据余数发生器反馈的余数来决定q 取离q最近的两个整数之一)即,每q个脉冲里,将被保留一个脉冲。刚在一个周期当中保留的脉冲总数为n。即可得到分频系数:4.4.2 分频模块及仿真分析图4-8分频模块图4-9分频仿真结果如图5-8仿真结果所示,输入为50KHz,但由于我们把一个波形周期分为360个离散点,所以我们实际步进预置n=50K*360=18MHz,而周期总脉冲数为40MHz,所以q=1/r=m/n=2.22,所以q示余数取2或3,如图5-8,每2个脉冲或3个脉冲里保留了一个脉冲,在整个周期里,40M个脉冲保留了18M个脉冲,即是将40

32、MHz频率分频成了18MHz的频率,在后面的DA转换中,18MHz频率的波形经DA转换后,变成了50KHz的波形频率。别外,得用余数发生器可以有效地保证分频后的频率可以尽可能地分布在整个周期里。经仿真分析结果来看,此分频模块是可行的。4.5 地址发生器模块4.5.1定制初始化数据文件QuartusII 能接受的LPM_ROM 模块中的初始化数据文件的格式有两种:.mif 格式文件和.hex 格式文件。实际应用中只要使用其中一种格式的文件即可。下面采用.mif 格式文件,调出产生ROM 数据文件大小的选择窗。根据360 点8 位正弦数据的情况,可选ROM 的数据数Number 为512,数据宽W

33、ord size 取8 位。单击OK 按钮,将出现图2 所示的空的.mif数据表格。表格中的数据格式通过Matlab编写一个离散正弦信号的M文件,可生成正弦波或者三角波的ROM数据,其程序如下:图4-10离散正弦信号程序在Matlab上运行该M文件,最后将其得到的三百六十个数据复制到.mif数据表格中即可得到图中的表格数据。表5-1 mif数据表格4.5.2定制LPM 元件打开Mega Wizard Plug_In Manager 初始对话框, 选择Create a new custom 项。单击Next 按钮后,选择Storage 项下的LPM_ROM, 再选择ACEX1K 器件和VHDL

34、语言方式;最后输入ROM 文件存放的路径和文件名:F:sing_gntdata_rom (定制的ROM 元件文件名),单击Next 按钮,选择ROM 控制线、地址线和数据线。这里选择地址线位宽和ROM 中数据数分别为8 和512; 选择地址锁存控制信号clock。4.5.3地址发生器模块通过对LPM例化的引用,通过地址查寻不断逐步地读取ROM里的幅度值,最后经过DA转换然后得到与ROM储存相应的波形,另外,通过改变B路地址发生器的相位计数初值,实现移相的功能。图4-11 地址发生器模块4.6 波形选择模块 波形选择模块是通过矩阵键盘控制,输出三种不同的数据流,控制信号发生器在正弦波、三角波和矩

35、形波三者间进行互换,并通过数据流改变矩形波的占空比。 图4-12 波形选择模块图4-13正弦波仿真图4-14矩形波仿真图4-14三角波仿真如上图所示,当wave输入为001时,输出波形为正弦波,每个时钟上升沿时,通过地址address从ROM中依次读取正弦信号的波形数据dataDAC,如图为正弦波的仿真结果,三角波和矩形波的产生也是运用相同的原理。其中矩形波可以通过duty数据改变矩形波的占空比。4.7 幅度调节模块幅度调节模块改变幅度的系数来改变幅度的大小,即把电压幅度值分成一百等分,能过改变输出系数从而达到改变幅度的任务。图4-15 幅度调节模块 图4-16幅度调节仿真如图4-16为幅度调

36、节仿真,幅度调节模块将电压分为100等分,图中输入coe为90,幅度最高为255,可求得dataout=255*90/100=229.5,去掉小数即为图中的结果。4.8 DA转换模块4.8.1 -变换的原理 -变换采用过取样技术,将信号按时间分割,保持幅度恒定,具有高取样率、噪声整形和比特字长短的特点。变换可以在低取样率、高分辨率的量化器或者高取样率、低分辨率的量化器中进行,在数字音频中很有用,如用于音频信号数字化的- ADC及可将已经数字化处理后的音频信号还原为模拟声音信号的- DAC。-变换有时根据采用的具体结构称为1比特或多比特变换,本文所描述的- DAC采用了1比特变换技术,克服了采用

37、较多 比特数时所带来的量化非线性误差、纠错困难的缺点。4.8.2 - DAC的结构术语“-”分别代表算术和与差,都可用二进制加法器来产生。虽然加法器的输入是无符号数,但和两加法器的输出被看作有符号数。加法器用来计算DAC输入与当前DAC输出之间的差值。由于DAC的输出只有一位,非0即1,即全0或全1。如图2 - DAC的结构图所示,加法器的另一个输入值由锁存器最高位L9的两个拷贝后面跟8个0产生,这也弥补了DAC输入值是无符号数的问题。加法器将它的上一次输出(已经保存在锁存器)与加法器的当前输出求和图4-17 - DAC的结构4.8.3 - DAC的FPGA实现如图2所示,- DAC的内部仅由

38、2个10位的二进制加法器,1个10位的锁存器和一个D触发器组成,用FPGA实现时只需耗费极少的逻辑资源,即使用最小的FPGA也能实现, FPGA驱动外部的模拟RC低通滤波器,恢复模拟波形。图4-18 DA转换模块图4-18 DA转换仿真图如图4-18 DA转换仿真图,每个点的幅度通过256个clk时钟周期的脉冲序列行转换,DACin的值越大,表示幅度越高,DACout输出的脉冲密度越大,通过RC低通滤波器时充电时间越长,形成的幅度越高。4.9 滤波器滤器采用的是两个模拟RC低通滤波器组成的二阶低通滤波器,二阶低通滤波器比一阶低通滤波器的衰减更快,过渡带更短,滤波效果更好。滤波器的截止频率公式为

39、:因为三角波和矩形波含有高次谐波,如果将频率定得太低,三角波和矩形波将会产生严重的失真,如果将频率定得太高,将达不到良好的滤波效果,最后选择了47pF的电容和1K的电阻,其截止频率为即为3.4MHz。4.10 实物图图4-19频率调节实物图图4-20移相实物图5 总结(1)课题研究过程总结及结论本课题的研究和设计,可以大致分成四个个阶段:理论知识学习,verilog编程语言的学习,系统verilog语言编程设计和仿真验证。在每个阶段都遇到很多问题,但也是在不断的发现问题,不断的努力解决问题的过程中,让我对本课题有了更全面的认识和更深入地掌握。万事开头难,在理论知识学习阶段,对信号发生器的原理知

40、之甚少,以前只是用过信号源来进行实验,而不知道信号发生器的原理。通过大量阅读信号发生器的书籍和网上相关资料,我逐渐地开始对信号发生器的一个整体结构有了相对的理解。在学习的过程中,对信号发生器的结构进行拆分成一个个小模块,通过实现各个小模块的功能,再将小模块进行一个组合,组成信号发生器。并且我还查阅不同书籍,学习不同的实现方法,进行比较从中选出最佳方案。这让我对自己选定的方案更有把握,为后续工作打好了理论基础。verilog编程语言的学习,因为大学课程有学习EDA课程,对Quartus里工程的建立和verilog语言的编写都有一定的了解,通过复习之前所学过的verilog语言知识,能很容易地重新

41、掌握verilog语言的编写。系统verilog语言编程设计,这是本课题中最重要的一个环节,通过verilog语言编程设计信号发生器原理的各个模块,最后通过verilog语言将各个模块有机地结合在一起,最终实现信号发生器的各项功能。在这一阶段中,遇到了很多的问题和很大的困难。通常会因为一个小小的错误而使一个模块得不到正确的结论,然后经过不断地修改,不断地实验,才最终克服困难,完成这一个重要的阶段。仿真验证,通过Quartus的仿真和实际电路的验证,及时发现verilog语言编程设计存在的问题,及时作出修改,逐步完善信号发生器的架设。(2)心得体会此次毕业设计,难度相对比较大,但由于老师安排时间

42、得当,给了我们充分的时间准备,而且老师还给予了我们很多帮助,老师每周都按时给我们答疑,监督我们的课题进度,另外,老师还建了一个毕设群方便老师与学生、学生与学生之间的沟通,有疑问的时候在群里询问,很快就有得到答复,群里学习气氛相当浓烈,我们还通过毕设群及时了解一些有关毕业设计的相关信息。通过本次毕业设计,我学到了很多东西,不仅提高了对Quartus II软件运用的熟练程度,积累了宝贵的实践经验,并且通过此次课题,把以前学过的很多知识复习,在脑海中有了更清晰的概念。而且通过寻找资料,找到了吞脉冲原理的分频的方法和-变换的DA转换器原理等先进原理。此外通过这段时间的学习,发现了自己的很多不足,自己知

43、识的很多漏洞,但是同时也发现一种提高自己学习能力的方法,就是通过进行仿真可以很好的加深自己对相关理论知识的理解!谢 辞在这次毕业设计中,首先要感谢梁红玉老师的悉心指导,他严谨的治学态度,一丝不苟的敬业精神给我留下了深刻的印象。他的博学多才、勤勉以及平和的为人,使我油然而生敬意。在此,谨向梁老师致以诚挚的谢意和崇高的敬意。此外感谢学校提供良好的学习平台,让我们学习与实践相结合,只有从理论中得出结论,才能真正为社会服务,从而提高自己的实践动手能力和独立思考的能力。同时要感谢同学们无私的帮助,正是他们我才能在研读FPGA的道路上走得更轻松,让我觉得学习是一个快乐的过程。在与他人的交流和讨论中我受益匪

44、浅,同时也被同学们刻苦钻研的精神所深深感染。他们乐于助人,耐心的解答我提出的问题,对我的论文提出了许多中肯的修改意见,并对一些技术上的细节给予了很大的帮助。在此致予我深深的感谢!参考文献1 李翠华. 信号发生器的设计J. 科技广场, 2009, 1: 2112132 申彦春, 王欢, 梁延贵. 基于FPGA的信号发生器的设计J. 唐山学院学报, 2008, 3: 1251893 刘皖, 何道军, 谭明. FPGA设计与应用M. 北京清华大学出版社, 2006: 28694 赵雅兴. FPGA原理设计与应用M. 天津大学出版社, 1999: 2683215 余勇,郑小林.基于FPGA的DDS正弦信号发生器的设计与实现J.电子器件, 2005, 9:6 田耘,徐文波. Xilinx FPGA开发实用教程M. 北京: 清华大学出版社, 2008, 3: 2533247 刘和平等. DSP原理及电机控制应用M.北京:北京航空航天大学出版社, 2006. 128 E. Bogtain, Signal intergrity :

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号