一个简单的vhdl模板.docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一个简单的vhdl模板概要

引言随着现代社会的发展,抢答器被广泛的运用于很多的娱乐节目,其作用也是越来越大。近年来,随着社会的迅猛发展,抢答器得到了广泛的运用。很多的电视台都会播放一些娱乐节目,在节目过程中都会添加一些娱乐节目,尤其是互动性的竞争游戏,这样都会使用到抢答器,这样使得对抢答器的要求也越来越高,当然也更进一步体现了抢答器的价值。结合这种的背景,结合一些娱乐节目的实际情况,并发出真正适合我们特点的智能显示控制系统已经成为当前的主要任务,智能控制的效果能直接影响到大家对此娱乐节目的认可,同时好的智能控制也能为大家带来很多方便。通过对抢答器基本原理的了解,我们可以设计多路抢答器,让节目可以有更多得人参与。同时我们可以全面熟悉、掌握VHDL语言基本知识,掌握利用VHDL语言对常用的的组合逻辑电路和时序逻辑电路编程,把编程和实际结合起来,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用设计综合电路的能力,养成提供文档资料的习惯和规范编程的思想。系统的设计要求信号发生器是一种能够产生多种波形,如三角波、方波、锯齿波、正弦波的仪器。信号发生器在电路实验和设备检测以及通信、雷达、导航、宇航等领域有广泛的应用。正因为其在生活中应用的重要性,人们它做了大量的研究,总结出了许多实现方式。可以基于FPGA 、VHDL、单片机、DOS技能、数字电路等多种方法实现。正弦波信号发生器是信号发生器的一种。可以实现信号发生器的一些基本功能。在本次课程设计中所要求的是采用VHDL来实现正弦波信号发生器。设计的正弦波信号发生器所具有的功能如下:(1)电路的外部频率为40MHz,自己所设计的正弦信号发生器可产生0-1KHz、1KHz~10KHz、10KHz~1MHz三档频率的信号;(2)具有频率段选择的功能;(3)在同一频率档内,可实现频率的加减;(4)在显示波形的同时能够进行频率的调节;(5)能够显示正弦波(6)能够显示频率值;(7)可用示波器进行波形的观测。2.系统分析2.1 系统构成图1智能抢答器功能模块划分图该正弦波发生器分为六个个模块,分别为:频率控制模块、相位累加器、波形rom、D/A转换器、滤波电路、和显示模块。2.2系统实现过程1.电路的外部频率为40MHz,自己所设计的正弦信号发生器可产生0-1KHz、1KHz~10KHz、10KHz~1MHz三档频率的信号;2.具有频率段选择的功能;3.在同一频率档内,可实现频率的加减;4.在显示波形的同时能够进行频率的调节;5.能够显示正弦波6.能够显示频率值;7.可用示波器进行波形的观测。3.具体模块设计3.1倍频器模块图4.1 倍频模块原理图由于要求简易正弦波信号发生器输出频率达到1MHZ;所以实验箱上的20MHZ的输出过低;无法达到要求。此时可以采用一个倍频器将20MHZ的频率输出加倍成为128MHZ的频率输出。具体通过Quartus II 9.0软件所做的模块原理图如图4.13.2主程序模块主程序用来实现系统的主要功能;包括波形定义分频、频段选择、频率调节以及频率输出等。主程序见附录1。主程序原理图如图4.2所示:图 4.2主程序模块原理图其中clk信号为20MHZ的信号经过加倍后的128MHZ的频率。Key1、key2为频率调节按钮;key1接按键;当按动key1频率值加1或者减1;key2接拨码开关;用来加减选择;当key2=1时为加;当key2=0时为减。sel_p[1..0]为频段选择信号;当sel_p[1..0]=00、01、10时;其频段分别为0HZ-1KHZ、1KHZ-10KHZ、10KHZ-1MHZ。3.3波形显示模块转换模块zhuanhuan如图4所示,把波形显示部分使用的是实验箱上的D/A转换器;将主程序模块的dout[7..0]八位二进制输出接D/A转换器的输入;从而转化为模拟信号;将D/A转换器的输出接示波器的输入;通过示波器显示观察 抢答结果转化为二进制数。3.4频率显示模块????频率显示部分使用了一个二进制——十六进制转化显示译码器;将主程序中输出的xianshi[19..0]这20位二进制段码输出转化为十六进制数显示在数码管上。 图 4.4 频率显示模块原理图4.程序设计4.1主程序模块libraryieee;use ieee.std_logic_1164.all;entity sin isport(clk:instd_logic;b:in std_logic_vector(15 downto 0);qout:outstd_logic_vector(6 downto 0);sel_out:outstd_logic_vector(3 downto 0);q:out std_logic_vector(7 downto 0)); end;architect

您可能关注的文档

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档