【2018年最新整理】四位频率计实训报告.docVIP

【2018年最新整理】四位频率计实训报告.doc

  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文档。上传文档
查看更多
【2018年最新整理】四位频率计实训报告

四位数字频率计报告 机电工程学院 电子信息工程技术12-1班 韦建海 简述 随着数字电子技术的发展,频率测量成为一项越来越普遍的工作,因此测频计常受到人们的青睐。目前许多高精度的数字频率计都采用单片机加上外部的高速计数器来实现,然而单片机的时钟频率不高导致测频速度比较慢,并且在这种设计中,由于PCB版的集成度不高,导致PCB板走线长,因此难以提高计数器的工作频率。为了克服这种缺点,大大提高测量精度和速度,我们可以设计一种可编程逻辑器件来实现数字频率计。EDA技术是以大规模可编程逻辑器件为设计载体,以硬件语言为系统逻辑描述的主要方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件设计的电子系统到硬件系统的设计,最终形成集成电子系统或专用集成芯片的一门新技术。其设计的灵活性使得EDA技术得以快速发展和广泛应用。以QuartusⅡ软件为设计平台,采用VHDL语言实现数字频率计的整体设计。伴随着集成电路(IC)技术的发展,电子设计自动化(EDA)逐渐成为重要的设计手段,已经广泛应用于模拟与数字电路系统等许多领域。电子设计自动化是一种实现电子系统或电子产品自动化设计的技术,它与电子技术,微电子技术的发展密切相关,它吸收了计算机科学领域的大多数最新研究成果,以高性能的计算机作为工作平台,促进了工程发展。EDA的一个重要特征就是使用硬件描述语言(HDL)来完成的设计文件,VHDL语言是经IEEE确认的标准硬件语言,在电子设计领域受到了广泛的接受。 目录 一、实验目的 二、实验内容 三、四位数字频率计的设计 四、引脚锁定 五、实验结果 六、心得体会 一、实验目的 学习用FPGA实现数字系统的方法 二、实验内容 1.FPGA, Quartus II 和VHDL与verilog.HDL使用练习 2.四位数字频率计的设计 三、四位数字频率计的设计 1.工作原理 当系统正常工作时,8Hz 信号测频控制信号发生器进行信号的变换,产生计数信号,被测信号通过信号整形电路产生 同频率的矩形波,送入计数模块,计数模块对输入的矩形波进行计数,将计数结果送入锁存器中,保证系统可以稳定显示数据,显示译码驱动电路将二进制表示的计数结果转换成相应的能够在七段数码显示管上可以显示的十进制结果。在数码显示管上可以看到计数结果。工作原理图如下: 2.设计方案 在顶层原理中共有5个模块:CNT4、CNT12、CNT10d、CODE、LOCK、MUX4to1 DIV8、DIV1K、DIV10K 4.底层模块设计 (1)四进制加法计数器CNT4的verilog.HDL与语言源程序: module cnt4(cp,q); input cp; output q; reg[1:0] q; always @(posedge cp) begin if(q==3) q=0; else q=q+1 ; end Endmodule CNT4的仿真结果: 产生模块为 (2)十二进制加法计数器CNT12的verilog.HDL语言源程序: module cnt12(clkin,qout); input clkin; output qout; reg[3:0] qout; always @(posedge clkin) begin if(qout==11) qout=0; else qout=qout+1 ; end Endmodule CNT12的仿真结果: 产生模块为 (3)十进制加法计数器CNT10d的verilog.HDL语言源程序: module cnt10d(clk,rst,en,cq,cout); input clk; input rst; input en; output[3:0] cq; output cout; reg[3:0] cq; reg cout; always@(posedge clk or posedge rst) begin if(rst) cq=4b0000; else if(en) begin if(cq9) begin cq=cq+1b1;cout=1b0; end else begin cq=4b0000; cout=1b1; end end end endmodule CNT10d的仿真结果为: 产生模块 4、CODE的VHDL程序为: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity code is port( dd : in std_logic_vector(3 downto

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档