基于FPGA信号发生器毕业设计_第1页
基于FPGA信号发生器毕业设计_第2页
基于FPGA信号发生器毕业设计_第3页
基于FPGA信号发生器毕业设计_第4页
基于FPGA信号发生器毕业设计_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于 FPGA 的信号发生器设计论文 目目录录 摘要.2 1 前言.3 2 设计方案.5 2.1 总体设计思路 .5 2.2 方案论证 .6 2.2.1 方案一 .6 2.2.2 方案二 .6 2.2.3 方案三 .6 2.3 方案确定 .7 3 软件设计.8 3.1 波形产生模块 .8 3.1.1 正弦波 .8 3.1.2 矩形波.10 3.1.3 三角波.10 3.1.4 基波.11 3.1.5 谐波的产生 .11 3.1.6 波形模块图.11 3.2 频率控制模块 .11 3.3 选择波形模块 .11 3.4 分频器模块 .13 3.4.1 设计思路.13 3.4.2 VHDL 实现 .13 3.4.3 分频值计算.14 4 硬件电路设计.15 4.1 硬件设计注意事项 .15 4.2 滤波电路.15 4.3 幅度控制电路 .16 4.4 FPGA 器件引脚分配.16 4.5 硬件电路实现 .17 5 调试.18 5.1 设计及仿真调试使用设备.18 5.2 调试方法 .18 5.2.1 硬件调试.18 5.2.2 软件调试.18 5.2.3 综合调试.19 5.3 调试结果 .19 5.3.1 软件仿真结果及分析.19 5.3.2 综合调试结果.21 6 结 论.24 致谢辞.25 参考文献.26 附录.错错误误! !未定义书签。未定义书签。 - 1 - 基于 FPGA 的信号发生器设计论文 基于基于 FPGAFPGA 的信号发生器的信号发生器 摘摘要要 本次设计课题为应用 VHDL 语言及 MAX+PLUS II 软件提供的原理图输入设计功能,结合 电子线路的设计加以完成一个可应用于数字系统开发或实验时做输入脉冲信号或基准脉冲 信号用的信号发生器,它具结构紧凑,性能稳定, 设计结构灵活,方便进行多功能组合的特 点,经济实用,成本低廉。具有产生三种基本波形脉冲信号(正弦波、矩形波和三角波) , 以及三次(及三次以下)谐波与基波的线性组合脉冲波形输出, 且单脉冲输出脉宽及连续脉 冲输出频率可调, 范围从 100HZ 到 1kHZ,步进为 100HZ; 幅度可调, 从 0 到 5 伏, 步进为 0.1V。 关键词:信号发生器, FPGA,EDA,VHDL 语言。 - 2 - 基于 FPGA 的信号发生器设计论文 1 前言 随着我国的经济日益增长,社会对电子产品的需求量也就越来越大,目前, 我国的电子产品市场正在迅速的壮大, 市场前景广阔。 FPGA(Field Programmable Gate Array,现场可编程门阵列)在现代数字电路设计中发挥着越来越重要的作 用。FPGA/CPLD(Complex Programmable Logic Device)所具有的静态可重复编程 和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改,这 样就极大地提高了电子系统设计的灵活性和通用性, 缩短了产品的上市时间并降 低可电子系统的开发成本,且可以毫不夸张地讲,FPGA/CPLD 能完成任何数字器 件的功能,从简单的 74 电路到高性能的 CPU。它的影响毫不亚于 20 世纪 70 年 代单片机的发明和使用。 现在随着电子技术的发展, 产品的技术含量越来越高,使得芯片的复杂程度 越来越高, 人们对数万门乃至数百万门设计的需求也越来越多,特别是专用集成 电路(ASIC)设计技术的日趋进步和完善,推动了数字系统设计的迅速发展。仅 靠原理图输入方式已不能满足要求,采用硬件描述语言 VHDL 的设计方式应运而 生, 解决了传统用电路原理图设计大系统工程时的诸多不便,成为电子电路设计 人员的最得力助手。设计工作从行为、功能级开始,并向着设计的高层次发展。 这样就出现了第三代 EDA 系统,其特点是高层次设计的自动化。 第三代 EDA 系统中除了引入硬件描述语言, 还引入了行为综合工具和逻辑综 合工具,采用较高的抽象层次进行设计,并按层次式方法进行管理,可大大提高 处理复杂设计的能力, 缩短设计周期, 综合优化工具的采用使芯片的品质如面积、 速度和功耗等获得了优化,因而第三代 EDA 系统迅速得到了推广应用。 目前, 最通用的硬件描述语言有 VHDL 和 VerilogHDL 两种, 现在大多设计者 都使用 93 年版标准的 VHDL,并且通过了 IEEE 认定,成为世界范围内通用的数 字系统设计标准。VHDL 是一种新兴的程序设计语言,使用VHDL 进行设计其性能 总是比常规使用 CPU 或者 MCU 的程序设计语言在性能上要高好几个数量级。 这就 是说,在传统上使用软件语言的地方,VHDL 语言作为一种新的实现方式会应用 得越来越广泛。本课题设计是采用美国Altera 公司的 FLEX10K10 器件,使用的 是 Altera 公司的 EDA 软件平台 Maxplus II 可编程逻辑器件开发软件。 基于 EDA 工具的 FPGA/CPLD 的开发流程 CPLD/FPGA 器件的设计一般可分为设计输入、 - 3 - 基于 FPGA 的信号发生器设计论文 设计实现和编程三个设计步骤: 1.设计输入方式主要由文本输入和图形输入两种,可根据需要选择,也可混 合输入。EDA 工具会自动检查语法; 2.设计实现阶段 EDA 工具对设计文件进行编译,进行逻辑综合、优化,并针 对器件进行映射、布局、布线,产生相应的适配文件; 3.编程阶段 EDA 软件将适配文件配置到相应的 CPLDFPGA 器件中,使其能 够实现预期的功能。 信号发生器是数字设备运行工作中必不可少的一部分, 没有良好的脉冲信号 源,最终就会导致系统不能够正常工作,更不必谈什么实现其它功能了。不论是 处于开发还是故障检修阶段, 输出标准且性能优秀的信号发生器总是能够带来工 作效率的大幅提升,使新产品有一个标准的信号源、损坏的系统得到正确校验, 不会被一些故障所蒙蔽。在传统的信号发生器中,大都使用分立元件,而且体积 庞大携带不便,且大部分只能输出一种脉冲信号波形。在设计领域,不管采用什 么技术生产,生产的产品用在哪里,其产品设计的宗旨都是离不开以下几点:实 用性高、成本低、可升级、功能完善可扩展等!使用专用的数字电路设计的信号 发生器,设备成本高、使用复杂。基于以上考虑,在中小型数字电路的设计和测 试中, 迫切需要设计一种小型易用成本低廉的信号发生器。此课题的设计以小型 经济,集成度高,性能稳定,使用方便为指导,在功能上力求完善实用,同时兼 顾商业价值与应用价值的体现。 - 4 - 基于 FPGA 的信号发生器设计论文 2 2 设计方案设计方案 2.1 总体设计思路 1 设计步骤 此设计将按模块式实现,据任务书要求,设计总共分四大步份完成: (1)产 生波形(三种波形:方波、三角波和矩形波)信号; (2)波形组合; (3)频率控 制; (4)幅度控制。 2 设计思想 利用 VHDL 编程,依据基本数字电路模块原理进行整合。系统各部分所需工 作时钟信号由输入系统时钟信号经分频得到, 系统时钟输入端应满足输入脉冲信 号的要求。组合波形信号经显示模块输出。具备幅度和频率可调功能,幅度可通 过电位器调整, 频率控制模块则是一个简易的计数器,控制步径为 100HZ 的可调 频率, 最终送至脉冲发生模块输出脉冲信号,达到设计课题所要求的输出波形频 率可调及幅度可调功能。幅度可调功能由于比较简单,可以在 FPGA 外部利用硬 件电路实现。总体设计框图如下图 1 所示: 正弦波、 方波、 三 角 波 信 号 产 生 模块 波形组 合选择 模块 输出电路 控 制 电 路 滤波 电路 100HZ1KHZ 频率控制 模块/计数 器模块 幅 度 控 制/电位 器 FPGA 1KHZ 图 1 总体设计框图 - 5 - 基于 FPGA 的信号发生器设计论文 2.2 方案论证 2.2.1 方案一 采用 DDS(直接数字频率合成器)来设计,设计总体框图如图 2 所示。在设 计界里众所周知,DDS 器件采用高速数字电路和高速 D/A转换技术,具有频率 转换时间短、频率分辨率高、频率稳定度高、输出信号频率和相位可快速程控切 换等优点,所以,我们可以利用 DDS 具有很好的相位控制和幅度控制功能,另外 其数据采样功能也是极具精确和完善的, 它可以产生较为精确的任何有规则波形 信号,可以实现对信号进行全数字式调制。用 FPGA 和 DDS 实现信号调制,既克 服了传统的方法实现带来的缺点,若采用它来编程设计,必定会事半功倍,且使 设计趋于理想状态。 但鉴于 DDS 的占用 RAM 空间较大, 我们设计是采用 FPGA10K10 器件,总共只有一万门的逻辑门数量,而整个 DDS 设计下来,大概最少会占用 3-4 万门的数量,所以在性价比方面不合理,这样也使得我们的设计会有些不切 实际。 频率控制字信号输出 时钟 图 2DDS 与 FPGA 总体设计图 相位累加 器 ROM D/A 变换 低通 滤波 2.2.2 方案二 采用震荡器频率合成方案。 具体方案如下:首先通过频率合成技术产生所需 要频率的方波, 通过积分电路就可以得到同频率的三角波,再经过滤波器就可以 得到正弦波。其优点是工作频率可望做得很高,也可以达到很高的频率分辨率; 缺点是使用的滤波器要求通带可变,实现很难,高低频率比不可能做得很高。 2.2.3 方案三 采用 VHDL 语言来编程,然后下载文件到 FPGA 来实现。VHDL 语言是电子设 计领域的主流硬件描述语言,具有很强的电路描述和建模能力,能从多个层次对 - 6 - 基于 FPGA 的信号发生器设计论文 数字系统进行建模和描述,从而大大降低了硬件设计任务,提高了设计效率和可 靠性,要比模拟电路快得多。 该方案是利用 FPGA 具有的静态可重复编程和动态在 系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改,极大地提高 了电子系统设计的灵活性和通用性,而且大大缩短了系统的开发周期。 2.3 方案确定 由上述三个方案对比,采用第三种方案: 通过 FPGA 软件扫描方式将波形数据读出传输给 DAC0832 产生波形输出。这 种方法在软、硬件电路设计上都简单,且与我们的设计思路紧密结合。 由于幅度控制部分在设计需要用到数字电子,这样有要经过 D/A 转换器再 输出,必将占用大量资源,造成不必要的开销。鉴于有设计经验的同学和老师的 建议, 采用一个电位器代替, 虽然精确度不够, 但是也弥补了性价比方面的不足。 波形组合如果采用分开式模块实现, 也必将导致占用大量的资源,而且模块 设计复杂度提高,只要采用重复调用一个模块的设计方法,既可以降低资源的占 用率,也使得设计更加灵活且有针对性。此信号发生器的特点及功能集成度高, 因采取整体模块式设计,在此也考虑到实际应用中,万一 FPGA 的逻辑门数量不 够,特准备了一套备用方案。 备用方案:将波形数据存放在 6116RAM 中,6116 的存储容量大,且可重复 使用,虽用单片机在速度方面远不及 FPGA,但是这样是在出现上述状况后的最 佳补偿方式。 综合以上涉及方面的分析,因此本次课题采用此方案进行设计。 - 7 - 基于 FPGA 的信号发生器设计论文 3 3 软件设计软件设计 3.1 波形产生模块 本设计用 VHDL 语言根据傅立叶函数采集点进行扫描,分别产生正弦波、 三角波和矩形波。以下介绍各种常用周期信号的傅立叶函数展开式。 3.1.1 正弦波 1 设计思想 正弦波发生分为两个步骤,即正弦波幅值采样存储和正弦波波形的还原输 出。幅值采样是将一个周期正弦波进行 64 等分,如图 3 所示,将 64 个采样点进 行量化处理,量化值=255*sin360/64(V) ,将 64 点量化值存入存储器。正弦波 形的产生是通过循环反复将存储器中的 64 点采样值通过 DAC0832 进行还原输 出,得到幅值正比于 64 点采样值的正弦波。 f(t) f(t) A t t 0.5 T 0 -A T T 图 3 正弦波采样图图 4 方波采样图 2 VHDL 实现 1正弦信号波形数据文件建立 正弦波波形数据由 64 个点构成,此数据经 DAC0832,可在示波器上观察到 正弦波形。源程序如下程序 1 所示: 程序程序 11 WIDTH=8; -表示数据输出位宽是 8 DEPTH=64; -表示共有 64 个 8 位数据点 ADDRESS_RADIX=HEX; -表示地址信号用十六进制数表示 DATA_RADIX=DEC; -表示输出数据是十进制数 CONTENT BEGIN 00:255;01:254;02:252;03:249;04:245;05:239;06:233;07:225; 08:217;09:207;0A:197;0B:186;0C:174;0D:162;0E:150;0F:137; - 8 - 基于 FPGA 的信号发生器设计论文 10:124;11:112;12: 99;13: 87;14: 75;15: 64;16: 53;17: 43; 18: 34;19: 26;1A: 19;1B: 13;1C: 8;1D: 4;1E: 1;1F: 0; 20: 0;21: 1;22: 4;23: 8;24: 13;25: 19;26: 26;27: 34; 28: 43;29: 53;2A: 64;2B: 75;2C: 87;2D: 99;2E:112;2F:124; 30:137;31:150;32:162;33:174;34:186;35:197;36:207;37:217; 38:225;39:233;3A:239;3B:245;3C:249;3D:252;3E:254;3F:255; END; 2定制 ROM 源程序如下所示: SINDATA.VHDSINDATA.VHD: LIBRARY ieee; USE ieee.std_logic_1164.all; entity sindata is port(address:in std_logic_vector(5 downto 0); inclock:in std_logic; q:out std_logic_vector(7 downto 0); end sindata; architecture syn of sindata is signal sub_wire0 :std_logic_vector(7 downto 0); component 1pm_rom generic(1pm_width :natural; 1pm_widthid :natural; 1pm_address_control:string; 1pm_outdata:string; 1pm_file:string); port(address:in std_logic_vector(5 downto 0); inclock:in std_logic; q:out std_logic_v ector(7 downto 0); end component; begin q8,lpm_widthad=6, lpm_address_comtrol=registered,lpm_outdata=unregistered, lpm_file=D:/SIN_G/DATA/sin_data.mif) port map(address=address,inclock=inclock,q=sub_wire0); end syn; 正弦波信号发生器顶层设计源程序:正弦波信号发生器顶层设计源程序: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigend.all; entity signt is port(clk:in std_logic; dout:out std_logic_vector(7 downto 0); - 9 - 基于 FPGA 的信号发生器设计论文 end architecture dacc of singt is component sindata port(address:in std_logic_vector(5 downto 0); inclock:in std_logic; q:out std_logic_vector(7 downto 0); end conponent; signal q1:std_logic_vector(5 downto 0); begin process(clk) begin if clkevent and clk=1then q1q1,q=dout;in clock=clk); end; 3.1.2 矩形波 1 设计思路 矩形波的实现较之正弦波发生简单,由于矩形波是两个电平值间的交替变 换, 因此波形采样值的预存只要有两个不同的数值就行了,为了使矩形波发生的 频率灵活可调,采用 60 个采样值扫描输出来实现,每半个矩形波周期采用三十 个采样值,循环反复将存储器中的 60 点采样值通过 DAC0832 进行还原输出, 得到幅值正比于点采样值的矩形波。采样图如图 4 所示。 2 VHDL 实现 源程序见附录。 3.1.3 三角波 1 设计思路 由于三角波是线性的,比较简单就可以产生,如果最低电压设为15V,最高 是 255V,那么根据它的公式 255/15=17,每个点的电压只要依次加 17 就可以得 到,一个波形所以采用简单的加减算法就可实现,如图 5 所示三角波的采样图: f(t) A t T -A 图图 12-1912-19 三角波三角波 图 5 三角波采样图 - 10 - 基于 FPGA 的信号发生器设计论文 2 VHDL 实现 具体源程序见附录。 3.1.4 基波 通过 VHDL 编程产生的正弦波、方波、三角波三种周期性波形即为基波。 3.1.5 谐波的产生 采用与基波产生的同样原理,编程产生三种波形的谐波,所不同的是一个波 形的周期采样的点数不同,如果基波采样点为 63 个,谐波采样点数则为 21 个, 其每点的电压值为 255*(sin360/60+sin360/20) (V) ,在对其进行循环扫描即 可实现基波与谐波的线性叠加。 3.1.6 波形模块图 最终波形的设计模块图如图 6 所示, L1 是三角波, L2 是方波, L3 是正弦波, L4 是谐波。 3.2 频率控制模块 本课题要求频率控制是在 100HZ-1KHZ,步进为 100HZ。 在本题设计中只需借 助 FPGA 便可完成。根据用户需要的频率,通过编程把频率控制数值传送给各个 模块,从而实现频率的控制。如下图 7 所示: 3.3 选择波形模块 这一部分主要是通过一个按键对波形进行循环选择,按下确认按钮后进 行波形的调用。设计流程图如下图 8 所示 - 11 - 基于 FPGA 的信号发生器设计论文 图 6 波形模块图 开始 频率控制 按下否 Y 读入按键数值 键按下否? N 返回 调用频率控制 模块 图 7 频率控制模块流程图 - 12 - 基于 FPGA 的信号发生器设计论文 开始 N 确认键按下否? Y 进行波形的调用 波形选择控 制按下否 N Y 调用波形选择 程序 返回 图 8 选择波形电路设计流程图 3.4 分频器模块 3.4.1 设计思路 分频器模块将输入的高频脉冲降频得到各模块所需的低频脉冲, 分频器模块 利用计数器的原理进行设计,通过对预设的分频值进行比较计数,实现输入高频 时钟脉冲的分频输出功能。本次课题的设计方案中使用了十组分频器,其设计原 理完全相同, 将对应的频率用 8421BCD 码对其进行编程赋值,如 100HZ 则对应的 二进制数是“0000” ,200HZ 则是“0001”1KHZ 则是“1010” 。现选取其中的 500 分频分频器进行简单说明。具体程序见附录。 3.4.2 VHDL 实现 PROCESS(CLK_IN) - 13 - 基于 FPGA 的信号发生器设计论文 BEGIN IF(CLK_INEVENT AND CLK_IN=0) THEN IF Step249 THEN分频值 Step=Step+1; ELSE Step=0;循环累加 计数满,输出翻转CLK_OUT=NOT CLK_OUT; END IF; END IF; END PROCESS; 3.4.3 分频值计算 分频值(输出时钟脉冲周期输入时钟脉冲周期)21 输入时钟脉冲频率 1KHz,周期1ms;输出时钟脉冲频率 2Hz,周期 500ms 分频值(500ms1ms)21249 3.4.4 分频器模块及初步仿真图 分频器模块及初步仿真图如图 9 所示。 图 9 - 14 - 基于 FPGA 的信号发生器设计论文 4 硬件电路设计 4.1 硬件设计注意事项 此次设计利用 EDA 试验箱实现硬件功能,试验箱设计可靠,干扰小,能使 系统在良好的环境中正常工作。但是实际制作硬件电路时,就应考虑到干扰所带 来的负面影响。为了避免干扰信号影响系统正常工作,未分配功能的 FPGA 引脚 必须接地, 在 FPGA 器件的电源端必须并连一 0.01uF 的退耦电容, 在所有的输入 引脚上串联 100 欧姆左右电阻减弱干扰信号影响, 如有必要还应在输入端设置上 拉或下拉电阻。 4.2 滤波电路 如图 10 所示,设计 D/A 输出后,通过滤波电路、输出缓冲电路,使信号平 滑且具有负载能力。 正弦波的输出频率小于 262kHz,为保证 262kHz 频带内输出幅度平坦, 又要 尽可能抑制谐波和高频噪声,综合考虑取 R1=1k,R2=1k,C1=100pF,C=100pF 运放选用宽带运放 LF351,用 Electronics Workbench 分析表明:截止频率约为 1MHz,262KHz 以内幅度平坦。 为保证稳幅输出,选用 AD817,这是一种低功耗、高速、宽带运算放大器 , 具有很强的大电流驱动能力。实际电路测量结果表明:当负载100、输出电压 峰-峰值 1OV 时,带宽大于 500kHz,幅度变化小于土 1%。 图 10 滤波电路 - 15 - 基于 FPGA 的信号发生器设计论文 4.3 幅度控制电路 幅度控制电路采用初定方案来设计,即用一个电位器来控制波形的输出幅 度。电位器的型号为 10K 欧。 4.4 FPGA 器件引脚分配 为了方便硬件设计,降低硬件设计的复杂度,对 FPGA 的输入输出引脚进行 分配,将关联的引脚集中排布,将同一组内的引脚按顺序排布,将需要输入高频 时钟脉冲的端口安排在时钟输入端,以提高其信号接收能力。分配如下: CLKUSR CS0 CS1 BEV_CLK BEV_OE IN D0 TD0 TD1 CE0 CE1 PIN62。 PIN67。 PIN68 PIN76. PIN72 PIN31、33、73、75。 PIN1 PIN9 PIN4 PIN64 PIN3 PIN23CONFIG CONF_DONEPIN65 RS WS TMS TRST TCK DCLK PIN70 PIN69 PIN46 PIN45 PIN66 PIN2 PIN44STATUS - 16 - 基于 FPGA 的信号发生器设计论文 MSEL0 MSEL1 PIN20 PIN21 INIT_DONEPIN58 RDY_BUSY DEV_OE DEV_CLR PIN59 PIN72 PIN77 4.5 硬件电路实现 此次设计硬件部分通过 FPGA/CPLD 实验箱完成, 如今后需制作单独的硬件电 路,亦可以依照实验箱各部分结构进行设计。 - 17 - 基于 FPGA 的信号发生器设计论文 5 调试 5.1 设计及仿真调试使用设备设计及仿真调试使用设备 示波器:Hitachi V-1060,万用表,FPGA 实验箱,PC 机各一台。 5.2 调试方法 根据方案设计的要求,调试过程共分三大部分:硬件调试、软件调试和综合 调试。 电路用 FPGA/CPLD 实验箱按模块调试, 各模块逐个调试通过后再进行综合 调试。 5.2.1 硬件调试 (1)在做控制电路的调试时,分析输入输出,可以发现时序与仿真结果是否有 出入,便于找出硬件电路中的故障。再调试 D/A 转换是否正常。 (2) 为提高电路抗干扰性能,我们采取了一些抗干扰措施。如接线线尽量 短, 减少交叉, 每个芯片的电源与地之间都接有去扰电容, 数字地与模拟地分开。 实践证明,这些措施对消除某些引脚上的 “毛刺 ” 及高频噪声起到了很好的 效果。 (3) 运算放大器的选择 由于输出频率达到上千赫兹,因此对放大器的带 宽有一定要求。所以,在调试滤波电路和缓冲输出电路时,都选择了高速宽带运 放。 5.2.2 软件调试 本系统的软件功能强大,运用 VHDL 语言来编写,先在 MAX+PLUS II 对所编 的模块一一进行仿真,排除了语法的错误编写和设计逻辑思维的错误,当仿真完 确认程序没问题时,再直接下载到 FPGA 芯片,用 FPGA 实验箱进行调试。采取的 就是自底向上的调试方法,即先单独调试好每一个模块,然后再连接成一个完整 的系统再调试。 - 18 - 基于 FPGA 的信号发生器设计论文 5.2.3 综合调试 FPGA 系统的软硬件设计是紧密相连的,将软件编译综合并且通过下载对 FPGA 进行适配,运行中的FPGA 是由其内部的硬件结构控制读出数据,从而产生 波形。因此,如果在软硬件都基本调通的情况下,系统的软硬件综合调试难度不 是很大。 5.3 调试结果 5.3.1 软件仿真结果及分析 1.分频 (1)仿真波形图如图 11 所示: 图 11 CLKIN:基准时钟输入; CLKOUT:分频时钟输出; MOVIN:处始置入值; (2)仿真结果分析 CLK_IN 为输入高频时钟脉冲,CLKOUT 为分频输出的低频时钟脉冲。此分频 器输入为 1KHz,输出为 100Hz,为 10 分频分频器,如图 12 所示。 2.信号波形产生 (1)正弦波 仿真波形图如图 12 所示: 图 12 FRCT:相位控制端; CLK:时钟输入; - 19 - 基于 FPGA 的信号发生器设计论文 SINOUT:正弦波输出; VSIN:正弦波地址寄存器; (2)方波 仿真波形图如图 13 所示: 图 13 CLK:时钟输入; FRCT:相位控制端; SQUOUT:方波输出; (3)三角波 仿真波形图如图 14 所示: 图 14 CLK:时钟输入; FRCT:相位控制端; TRIOUT:三角波输出; (4)任意波形的地址 仿真波形图如图 15 所示: 图 15 FRCT:相位控制端; CLK:时钟输入; ADDOUT:地址输出; - 20 - 基于 FPGA 的信号发生器设计论文 (5)波形选择 仿真波形图如图 16 所示: 图 16 RI:RAM 的读数控制端; SELIN:波形选择输入端( 0:正弦波; 1:三角波; 2:方波; 3:任意波地址; 4: 三角波和正弦波的叠加;5:方波和正弦波的叠加;6:方波和三角波的叠加;7:三 种波形的叠加) ADDIN:地址输入端; SININ:正弦波输入端; TRIIN:三角波输入端; SQUIN:方波输入端; QADD:地址输出端; Q:波形选择输出端; (6)仿真结果分析 经过仿真, 从各个仿真图上看得, 基本上可以实现预期的波形产生功能。 5.3.2 综合调试结果 1基波的输出波形如图 17 所示: (1)方波(2)正弦波(3)三角波 - 21 - 基于 FPGA 的信号发生器设计论文 图 17 基波输出波形图 2.谐波与基波叠加的输出波形 (1)正弦与其三次谐波的叠加,如图 18 与图 19 所示: 4A1 f 2(t) (sint sin3t) 3 f1(t) 4A/ O t f2(t) A Ot 图 18图 19 (2)我们观察到图 20D 的波形,它也混有二次谐波,但这二次谐波带有 一定的相移(图 20C)。同样地,当观察到图 21B 的波形,我们就知道它除了 基波以外混有三次谐波(见图 21A)。图 21D 的波形也混有三次谐波,并带有 一定相移(图 21C)。 (A)(B)(C)(D) 图 20基波与二次谐波叠加 (A)(B)(C)(D) 图 21基波与三次谐波的叠加图 3综合调试数据 (1)输出波形频率范围测试测试数据如下表 1 所示 : - 22 - 基于 FPGA 的信号发生器设计论文 单位:HZ 输出频率 正弦波 100 500 800 1K 100.03 500.06 800.5 1 000.2 方波 100.03 500.06 800.5 1 000.2 表 1 预置频率 负载电阻 三角波 100.03 500.06 800.5 1 000.2 (欧姆) 100 100 100 100 (2) 输出波形幅度范围测试,在频率为 100HZ-1KHZ 测得的输出幅度数据范围 可以达到 0-5V 的要求。 - 23 - 基于 FPGA 的信号发生器设计论文 6 结 论 通过此次设计, 让我深深的感觉到自己所学知识真是非常的浅薄。面对电子

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论