基于FPGA智能函数发生器的设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FPGA智能函数发生器的设计

基于FPGA智能函数发生器设计 实验目的 熟悉用Quartus编译Verilog语言的方法。 掌握用直?接?数?字?频?率?合?成?(DDS--Digital?Direct?Frequency?Synthesis)技术。 熟悉并掌握串口标准及原理,学会FPGAI/O引脚分配和实现过程。 实验内容 本设计利用直接数字频率合成技术加上FPGA控制,设计可产生正弦波、方波、三角波等波形的函数发生器。该函数发生器具有频率、幅度可调以及叠加直流的功能。重点学习基于FPGA的波形发生器设计,其中包括其原理图、功能模块图、硬件电路图等设计。 实验原理 3.1 实验原理 实验采用?直接频?率合成的方式?设计函?数信号?发生单?元。直接频率合成的基本原理是:首先设定一个(或多个)基准频率,将这个(或多个)基准频率变换成另一?个?(?或?多?个?)?合?乎?质?量?要?求?的?所?需?频?率?。?直?接?频?率?合?成?技?术?(Direct?Digital?Frequ?ency?Synthsis)就是把要输出的波形,预先归一化处理后,采样足够的点数,存储于波形?存储器?中,在需要输出时,将波形从存储器中读出,经过?数/模转换,再通过后续模拟电路处理输出。DDS?信?号产生单元主要有由?相位累加器、只读存储?器、数模转换器组成。存储器中存储的是波形一个周期内不同相位对于函数波形?幅值的?编码,通过时钟触发相位累加器累加,相位累?加器的输出作为地址取出存储器存储的值,?该值进入?D/A?转换为相应的模拟信号,通过一个周期内相位的?累加我们就可以得到一个周期的信号输出?,该信号通过后续模拟电路处理就可以得到我们想要的函数波形。 3.2 硬件设计 论文设计的函数信号发生器主要由波形选择部分,波形发生部分和输出部分组成。其中波形选择部分是数据选择器电路;波形发生部分包括递增斜波产生电路,递减斜波产生电路,三角波产生电路,斜梯波产生电路,正弦波产生电路和方波产生电路;输出部分是数/模转换电路。其中数/模转换模块是通过硬件实现的,其它都是依靠软件实现的。? 根据实验箱的硬件资源,本次设计选用ALTERA公司MAX7000S系列的EPM7128SLC84-15作为主控芯片。它是一种基于乘积项结构的复杂可编程逻辑器件,它的基本逻辑单元是由一些与、或阵列加上触发器构成,其中与或阵列完成组合逻辑功能,触发器完成时序逻辑。它的逻辑控制灵活,可反复编程,有利于系统的扩展和修改,而且其集成度高,保密性好。在实际应用中,它体积小、功耗低、价格便宜,维护和升级都十分方便,具有较好的应用前景。 实验步骤 打开QuartusⅡ软件,熟悉软件界面及窗口命令。 ?选择File??New?Project?Wizard弹出对话框,该对话框显示Wizard所包含的各项内容,在弹出的窗口中输入项目的名称和存储位置。如果选中Don’t?show?me?this?introduction?again。那么在下一次在新建项目是可以不再显示本对话框。点击Next按钮。 选择实验板的具体型号,芯片型号。 选择设置参数完成后显示如图,点击finish按钮完成工程建立。 在“File=New”的窗口中选择建立Verilog文件。 单击OK后,在Quartus窗口的右方看到该文件,写入代码后选择“File=Save”,将文件保存在与项目文件同样的位置即可。然后可以看到如下状态: (6)选择“Processing=》Start?Compilation”开始编译,编译通过后可以查看生成的Report。(7)选择“file-new-vector?waveeform?file”生成波形图,设置波形。 (8)选择“assignment=》pins”设置引脚。 4.1递增斜波信号产生模块:?? ?递增斜波产生原理:当复位信号为1时,每当检测到时钟上升沿时,计数器值加1,当增加到最大后清零。计数值增加呈现线性关系,因此输出的波形是递增的斜波。? (a)程序? LIBRARY?IEEE;--锯齿波递增 ?USE?IEEE.STD_LOGIC_1164.ALL;? USE?IEEE.STD_LOGIC_UNSIGNED.ALL; ?ENTITY?juchibo_ad?IS? PORT?(clk,reset:in?std_logic;? ???? q:out?std_logic_vector(7?downto?0)); ?END;? ARCHITECTURE?behave?OF?juchibo_ad?IS? BEGIN? ?? PROCESS(clk,reset)????? VARIABLE?tmp:?std_logic_vector(7?downto?0); ???B

文档评论(0)

2017meng + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档