您的当前位置:首页正文

数字频率计-vhdl

来源:九壹网


实验报告

课程 EDA技术 实验名称 数字频率计设计(使用VHDL语言) 第 页

专业____电子信息______ 班级__电本七班_ 学号__ _ 姓名

实验日期:2012 年 4 月 24 日 报告退发 (订正 、 重做)

一、实验目的

设计数字频率计,学习较复杂数字系统设计方法。

二、实验内容

设计一个四位十进制频率计,即计数范围为“0000--9999”。

三、实验环境

计算机、QuartusII软件 四、实验步骤 1.10进制计数器

VHDL描述:

时序仿真:

分析:注意点:此项目中进位信号不能在d=9时产生,应该设为同步信号。 2.将一位十进制计数器扩展为四位十进制计数器。 VHDL描述:

时序仿真:

分析:din0为最低位,当din0计到9时向高一位进1,符合十进制计数器的要求。

3.测控时序产生电路 VHDL描述:

时序仿真:

分析:如图产生了“先计数,再锁存,后清零”的有效信号,可以作为控制信号实现一键测控。

4.锁存电路 VHDL描述:

时序仿真:

分析:如图,lk为锁存时钟,d0,d1,d2,d3为锁存器的输入信号,d为输出信号,设置为16位二进制向量是为了用于单个数码管的轮流显示。

5.把四进制计数器、测控时序产生电路、锁存器整合成一个四位十进制计数器: VHDL描述:

时序仿真:

分析:如图,clk周期为1s,fin周期为1ms,经过简单转换可知计数结果为“1000”

与理论分析一致。之所以cout设为16位二进制是为了在单个数码管上进行轮流显示。

至此,1个四位十进制频率计设计完成,以下设计是为了验证设计是否能 够在开发板上实现

6.分频电路:用于对开发板上的20M晶振进行分频,以产生1Hz的时钟。 VHDL描述:

分析:为了节省资源,设计中未直接进行20M分频,而采用先20分频,再1000分频,再1000分频。此项设计很难在quartus平台上仿真。 7.数码管轮流显示: VHDL描述:

时序仿真:

分析:如图,load为装载信号,低电平有效。

8.把频率计、分频器、数码管轮流显示电路整合成可在开发板上实现的电路: 最后一步用的是电路图输入的方法:

分析:在板上验证时,只要将clk接到20M晶振然后再给fin输入一个待测周期信号,此待测信号可以是经过分频后的1Hz的信号,或在设计分频器时再引出一个或几个频率在“0--9999”的信号。再把输出out1接到数码管上,就可逐位读出待测信号的频率,记录时注意数码管的显示顺序为从低位到高位。 六、总结

这是一个到目前为止较为复杂的电路的设计,进行此类电路的设计的思想是“自

顶向下”的设计方法。拿到这样一个设计时,不能急着下手,应该先从整体考虑,把较为复杂的设计按电路功能划分为几个子模块,然后逐个模块设计,最后把这几个模块整合起来,此时,注意接口信号的设置。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top