EDA频率计课程设计报告

上传人:lizhe****0001 文档编号:31225580 上传时间:2018-02-06 格式:DOC 页数:10 大小:111.50KB
返回 下载 相关 举报
EDA频率计课程设计报告_第1页
第1页 / 共10页
EDA频率计课程设计报告_第2页
第2页 / 共10页
EDA频率计课程设计报告_第3页
第3页 / 共10页
EDA频率计课程设计报告_第4页
第4页 / 共10页
EDA频率计课程设计报告_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《EDA频率计课程设计报告》由会员分享,可在线阅读,更多相关《EDA频率计课程设计报告(10页珍藏版)》请在金锄头文库上搜索。

1、 E D A 频 率 计 课程设计报告专 业: 电 子 信 息 工 程 班 级: 电 信 0 9 0 1 姓 名: * 指导教师: * * 2 0 1 2 年 6 月 04 日1目 录一、课程设计题目描述和要求2二、课程设计报告内容3三、总结5附 录6参考书目82引 言在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更加重要。数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。随着现场可编程门阵列 FPGA 的广泛应用,以 EDA 工具作为开发手段,运

2、用 VHDL等硬件描述语言语言,将使整个系统大大简化,提高了系统的整体性能和可靠性。一、课程设计题目描述和要求1.1、课程设计题目描述1) 设计一个能测量方波信号的频率的频率计。2) 测量的频率范围是0999999Hz。3) 结果用十进制数显示。4) 按要求写好设计报告。1.2、课程设计要求1) 脉冲信号的频率就是在单位时间内所产生的脉冲个数,其表达式为,f为被测信号的频率,N为计数器所累计的脉冲个数,T为产生N个脉冲所需的时间。所以,在1秒时间内计数器所记录的结果,就是被测信号的频率。2) 被测频率信号取自实验箱晶体振荡器输出信号,加到主控门的输入端。3) 再取晶体振荡器的另一标准频率信号,

3、经分频后产生各种时基脉冲:1ms,10ms,0.1s,1s等,时基信号的选择可以控制,即量程可以改变。4) 时基信号经控制电路产生闸门信号至主控门,只有在闸门信号采样期间内(时基信号的一个周期),输入信号才通过主控门。5) f=N/T,改变时基信号的周期T,即可得到不同的测频范围。6) 当主控门关闭时,计数器停止计数,显示器显示记录结果,此时控制电路输出一个置零信号,将计数器和所有触发器复位,为新的一次采样做好准备。3二、课程设计报告内容1、频率计设计原理在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率的测量就显得更为重要。测量频率的方法

4、有多种,其中电子计数器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。数字式频率计的测量原理有两类:一是直接测频法,即在一定闸门时间内测量被测信号的脉冲个数;二是间接测频法即测周期法,如周期测频法。直接测频法适用于高频信号的频率测量,通常采用计数器、数据锁存器及控制电路实现,并通过改变计数器阀门的时间长短在达到不同的测量精度;间接测频法适用于低频信号的频率测量。本设计中使用的就是直接测频法,即用计数器在计算 1S 内输入信号周期的个数,其测频范围为 1Hz999999Hz。2、频率计的设计思路频率测量的基本原理是计算每秒钟内待测信号的脉冲个数

5、。这就要求测频控制信号发生器 TESTCTL 的计数使能信号 TSTEN 能产生一个 1 秒脉宽的周期信号,并对频率计的每一计数器 CNT10 的使能端 ENA 进行同步控制。当 TSTEN 为高电平时,允许计数;为低电平时停止计数,并保持其计数结果。在停止计数期间,首先需要一个锁存信号 LOAD 的上跳沿将计数器在前 1 秒种的计数值锁存进 32 位锁存器 REG32B 中,并由外部的 7 段译码器译出,并稳定显示。设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一个清零信号 CLR-CNT 对计数器进行清零,为下 1 秒的计数操作做准备。测频控制

6、信号发生器的工作时序如所示。寄存器 REG32B 设计要求是:若已有 32 位 BCD 码存在于此模块的输入口,在信号 LOAD 的上升沿后即被锁存到寄存器 REG32B 的内部,并由 REG32B 的输出端输出,然后由 7 段译码器译者成能在数码管上显示输出的相应数值。4计数器 CNT10 设计要求:有一时钟使能输入端,用于锁定计数值。当高电平时计数允许,低电平时禁止计数。本设计可通过实验箱下载验证,将第一全局时钟 CLK 接实验箱 1Hz 频率信号,第二全局时钟 CLK2 作为待测频率输入,输出接 6 个数码管显示所测的频率值。3、频率计电路的顶层结构及仿真图本设计有三个模块组成,测频控制

7、信号发生器 TESTCTL 六个有时钟使能功能的十进制计数器 CNT10 和六个 4 位锁存器 REG4B,如图所示:频率计电路图3.1、测频控制信号发生器 TESTCTLTESTCTL 的计数器使能信号 TESTCTL 能产生一个 1 秒脉宽的周期信号,并对频率计的每一个计数器 CNT10 的 ENA 使能端进行控制。当 TESTCTL 为高电平时允许计数,当为低电平时禁止计数,并保持其所计的脉冲个数。波形仿真5如下:测频控制信号发生器仿真图3.2、4 位锁存器 REG4B停止计数期间,首先需要一个锁存信号 LOAD 的上跳沿将计数器在前 1 功尽弃秒钟的计数值锁存进锁存器中,由七段译码译出

8、并稳定显示。设置锁存器的好处是,显示的数据稳定。锁存信号之后,必须有一个清零信号 CLR-CNT 对计数器进行清零,为下一秒钟的计数操作做准备。3.3、十进制计数器 CNT10此计数器有一使能输入端 ENA,用于锁定计数值。当高电平时允许计数,低电平时禁止计数。波形仿真如下:十进制计数器仿真图四、总结电子课程设计是电子类专业学生重要基础实践课,是工科专业的必修课。经过查资料、选方案、设计电路、撰写设计报告、使我得到一次全面的工程实践训练。理论联系实际,提高和培养创新能力,为后续课程的学习,毕业设计,6毕业后的工作打下基础。同时,结合 EDA 技术,进行仿真设计,可以体现现代化的设计方法和理念,

9、电子课程设计在培养学生能力方面及动手能力方面有很大提高。通过本次的课程设计,让我学会了学以致用,更重要的是在“用”的基础上有所创新。在许多的参考书上做这一个设计时都附加了一个动态扫描的模块,而本人认为多加一个模块只是起了一个画蛇添足的作用并无实际的作用,所以我选择了用六个锁存器让其静态显示,无论是在感官上或者说是在实用的基础上都比他们清晰明了,通俗易懂。在这次课程设计中,我还学会了如何获取资料,系统设计能力、动手能力、分析排除故障能力等等一些实用能力。当然,在这个设计的过程中也出现了一些问题,比如说测频控制信号发生器的原理,开始看一直看不懂,后来向高老师询问才最终得以解决,在这个模块上我个人觉

10、得这个二分频做的一绝,所以在 EDA 这方面以后还得向老师和同学们多多学习。附录:十进制程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity count10 isport(clr,clk,en:in std_logic;q: buffer std_logic_vector(3 downto 0);c10:out std_logic);end;architecture one of count10 isbeginprocess (clk,clr)beginif clr=1 then q

11、=0000;elsif clkevent and clk=1 then1if en=1 thenif (q9) then q=q+1;else q=0000;end if;end if;end if;end process;process(q)beginif q=1001 then c10=1;else c10=0;end if;end process;end;测频控制信号发生器程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity testpl isport(clk:in std_l

12、ogic;tsten:out std_logic;clr_cnt:out std_logic;load:out std_logic);end;architecture one of testpl issignal div2clk:std_logic;beginprocess(clk)begin2if clkevent and clk=1thendiv2clk=not div2clk;end if ;end process;process (clk ,div2clk)beginif( clk=0and div2clk=0)thenclr_cnt=1;else clr_cnt=0;end if;e

13、nd process;load=not div2clk;tsten=div2clk;end ;锁存器程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity reg4b isport (load:in std_logic;din:in std_logic_vector(3 downto 0);dout:out std_logic_vector(3 downto 0);end ;architecture one of reg4b isbeginprocess(load,din)beginif loadevent and load=1thendout=din;3end if;end process;end;参考书目:1 潘松, EDA 技术实用教程 ,北京,科学出版社, 2005 年2 刘婷婷,李军, 电子设计自动化(EDA) ,北京,北京师范大学出版社, 2007 年

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号