多功能信号发生器的设计.docx
《多功能信号发生器的设计.docx》由会员分享,可在线阅读,更多相关《多功能信号发生器的设计.docx(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、多功能信号发生器的设计目 录0 引言错误!未定义书签。1 设计意义错误!未定义书签。2 设计说明22.1 设计任务.22.1.1 设计要求22.1.2 设计目的:23 设计过程43.1 系统顶层框图43.1.1 信号发生器构造图43.1.2 信号发生器的内部构成43.1.3 系统流程图63.2 设计步骤.73.3 系统设计.74 代码及仿真结果94.1 各个模块的实现94.2 顶层模块.245 小结及体会306 参考文献32计。同时我也增加了对分模块设计电路的应用。 对我以后的电路设计生涯都是有所帮助的!函数信号发生器是应用了 VHDL 语言,通过数模转换来显示波形,实现了数模转换的应用。在工
2、作中,我们常常会用到信号发生器,它是使 用频度很高的电子仪器。信号发生器是指产生所需参数的电测试信号的仪器。按信号波形可分为正弦信 号、函数波形信号、脉冲信号和随机信号发生器 等四大类。信号发生器又称信号源或振荡器,在生产 实践和科技领域中有着广泛的应用。各种波形曲线均可以用三角函数方程式来表示。能够产生多种波形, 如三角波、锯齿波、矩形波含方波、正弦波的电路被称为函数信号发生器。信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。但凡产生测试信号的仪器,统称为信号源,也称为信号发生器,它用于产生被测电路所需特定参数的电测试信号。信号源主要给被测电路供给所需要的信号各种波形,然
3、后用其它仪表测量感兴趣的参数。可见信号源在电子试验和测试处理中,并不测量任何参数,而是依据使用者的要求,仿真各种测试信号,供给应被测电路,以到达测试的需要。它能够产生多种波形,如三角波、矩形波含方波、正弦波等,在电路试验和设备检测中具有格外广泛的用途。例如在通信、播送、电视系统中,都需要射频高频放射,这里的射频波就是载波,把音频低频、视频信号或脉冲信号运载出去,就需要能够产生高频的振荡器。在工业、农业、 生物医学等领域内,如高频感应加热、熔炼、淬火、超声诊断、核磁共振成像等,都需要功率或大或小、频率或高或低的信号发生器。 本设计承受 EDA 来设计制作多功能信号发生器。该信号发生器可以产生正弦
4、波、方波、三角波、锯齿波等波形。2 设计说明2.1 设计任务2.1.1 设计要求:基于VHDL 语言,通过给定的仪器EDA6000 试验箱设计一个多功能信号发生器,(1) 能产生周期性正弦波、方波、三角波、锯齿波以及用户自己编辑的特定波形;(2) 输出信号的频率范围为 100Hz200KHz,且输出频率可以调整;(3) 具有显示输出波形、频率的功能。2.1.2 设计目的:1) 把握使用 EDA 工具设计信号发生器系统的设计思路和设计方法,体会使用 EDA 综合过程中电路设计方法和设计思路的不同,理解层次化设计理 念。2) 生疏在 Quartus II 环境中,用文本输入方式与原理图输入方式完成
5、电路的设计,同时把握使2用这两种方式相结合的 EDA 设计思路。3) 通过这一局部的学习,对 VHDL 语言的设计方法进展进一步的学习,对其相关语言设计标准进展更 深层次的把握,能够更加娴熟的做一些编程设计。3 设计过程3.1 系统顶层框图3.1.1 信号发生器构造图由于 FPGA/CPLD 只能直接输出数字信号,而多功能信号发生器输出的各种波形均为模拟信号,因此 设计信号发生器时,需将 FPGA/CPLD 输出的信号通过 D/A 转换电路将数字信号转换成模拟信号。多功能信号发生器可由信号产生电路,波形选择电路和D/A 转换电路构成,如以下图所示:时 钟信号产波形选D/A 转选 择波形3.1.
6、2 信号发生器的内部构成时三角8 位预置分数控分频数 据 选择器频 数0-25正弦方波4fout图 1 原理框图在原理框图中,正余弦查找表由 ROM 构成,内部存有一个完整周期正余弦波的数字幅度信息, 每个查找表的地址对应正余弦波幅度信号,同时输出到数模转换器DAC输入端,DAC 输出的模拟信号经过低通滤波器LPF,可以得到一个频谱纯洁的10正余弦波。3.1.3 系统流程图当输入端有时钟信号输入时,各个信号发生器模块独立运行,独立存在,发出各种信号,这些信号作 为数据选择器的输入信号,在数据选择器的作用下, 波形切换到相应的模块输出,再通过数模转换器D/A,将通过示波器显示出相应的波形图,其程
7、序流程图如以下图所示:开头输入信号复位各个信号发生器模块四选一数据选择器数模转换器D/A输出信号3.2 设计步骤用 VHDL 语言结合原理图设计实现一个函数信号发生器,输出正弦波、方波和三角波三种波形。将频率掌握、分频、三角波、正弦波、方波发生邓各个模 块分别用VHDL 语言编程为一个子程序,并把每一个模块转换成图形文件,然后在原理图编辑框调用这些图形模块,连接电路如上图系统顶层框图所示。通过按键 1 到按键 8 掌握频率调整 f7.0,用按键 6、按键 7、按键 8 掌握 dlt、sin、sqr 波形选通,最终把八位输出接 DAC0832 通过 D/A 转换,从示波器上就能看到波形输出。按下
8、不同的按键输出不同的波形及频率。3.3 系统设计(1) 数控分频器模块在时钟的作用下,通过预置分频数 DIN,来转变输出频率。假设分频系数为 N,波形存储模块存储一个周期的波形,试验里依据一个周期波形采样 64 个点存储在波形存储模块里。则输出频率ff clkout64 . N(2) 数据存储模块 存储波形数据数据存储模块主要存的是正弦波、三角波、锯齿 波等一个周期的采样点。三角波模块可设计一个可逆计数器实现,设计时设置一变量作为工作状态标志,在此变量为 0 时,当检测到时钟的上升沿进展加同一个数操作;为 1 时, 进展减同一个数操作。DA 转换承受的 DA0832,输入有 8 个数据端,范围
9、是 0 到 255;而且设置 64 个时钟周期为一个三角波周期,全部每次加、减为 1。锯齿波的存储数据与三角波类似。方波可以通过交替输出全 0 和全 1,并给以 32 个周期的延时来实现。正弦波可以通过波形变换实现把sin a变换成(cos a1) * 127 .5 的形式进展采样,然后变换成 8 位二进制码,存储在波形存储器里。(3) 数据选择器模块在波形开关的掌握下,选择相应的波形输出。可 以用 3 个按键来掌握波形选择4代码及仿真结果4.1 各个模块的实现4.1.1 数控分频器的实现其 VHDL 代码如下:library ieee;use ieee.std_logic_1164.all;
10、use ieee.std_logic_unsigned.all;entity fenpin is port(d_mode:indownto 0);std_logic_vector(3clk:in std_logic; d_out:out std_logic);end fenpin;architecture behav of fenpin is signal full:std_logic; beginp_reg: process(clk)variable downto 0);begincnt8:std_logic_vector(3if clk”event and clk=”1” then if
11、cnt8=“1111“ thencnt8:=d_mode; full=”1”;else cnt8:=cnt8+1; full=”0”;end if; end if; end process p_reg;p_div:process(full)variable cnt2:std_logic;beginifull”event and full=”1” then cnt2:=not cnt2;icfnt2=”1” then d_out=”1” ; else d_out=”0”;end if; end if;end process p_div; end behav;频率为 1MHz 的分频波形图:其生成
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 多功能 信号发生器 设计
限制150内