下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 《EDA技术》数字频率计课程设计报告报

《EDA技术》数字频率计课程设计报告报.doc

《EDA技术》数字频率计课程设计报告报

刘杰雄
2019-01-15 0人阅读 举报 0 0 暂无简介

简介:本文档为《《EDA技术》数字频率计课程设计报告报doc》,可适用于高等教育领域

《EDA技术》课程设计报告题  目: 数字频率计      专  业:        班  级:           姓  名:          指导教师:       二一 年 月日摘要数字频率计是直接用十进制数字来显示被测信号频率的一种测量装置。它不仅可以测量正弦波、方波、三角波、尖脉冲信号和其他具有周期特性的信号的频率而且还可以测量它们的周期。经过改装可以测量脉冲宽度做成数字式脉宽测量仪可以测量电容做成数字式电容测量仪在电路中增加传感器还可以做成数字脉搏仪、计价器等。因此数字频率计在测量物理量方面应用广泛。本设计用VHDL在CPLD器件上实现数字频率计测频系统能够用十进制数码显示被测信号的频率能够测量正弦波、方波和三角波等信号的频率而且还能对其他多种物理量进行测量。具有体积小、可靠性高、功耗低的特点。数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。采用VDHL编程设计实现的数字频率计除被测信号的整形部分、键输入部分和数码显示部分以外其余全部在一片FPGA芯片上实现整个系统非常精简而且具有灵活的现场可更改性。在不更改硬件电路的基础上对系统进行各种改进还可以进一步提高系统的性能。该数字频率计具有高速、精确、可靠、抗干扰性强和现场可编程等优点。关键字:FPGA芯片、VHDL语言、数字频率计、数字频率计原理图、MaxplusII软件、EDA技术目    录第章 概述………………………………………………………第章 频率计的技术性能指标……………………………………第章 频率计的设计原理…………………………………………测量频率的原理…………………………………………测量周期的原理………………………………………………第章 频率计的模块设计………………………………………… 四位十进制计数器模块……………………………………… 控制模块………………………………………………………锁存器模块……………………………………………………第章 频率计测量频率的电路图和仿真波形……………………第章 总结…………………………………………………………附录:源程序…………………………………………………………参考文献………………………………………………………………第章概述所谓频率就是周期性信号在单位时间(s)里变化的次数。本频率计设计测量频率的基本原理是首先让被测信号与标准信号一起通过一个闸门然后用计数器计数信号脉冲的个数把标准时间内的计数的结果用锁存器锁存起来最后用显示译码器把锁存的结果用LED数码显示管显示出来。根据数字频率计的基本原理本文设计方案的基本思想是分为五个模块来实现其功能即整个数字频率计系统分为分频模块、控制模块、计数模块、译码模块和量程自动切换模块等几个单元并且分别用VHDL对其进行编程实现了闸门控制信号、计数电路、锁存电路、显示电路等。本频率计设计还可以测量周期性信号其基本原理与测量频率的基本原理基本一样首先让被测信号与标准信号一起通过一个闸门然后用计数器计数信号脉冲的个数把被测信号一个周期内标准基准信号的脉冲计数的结果用锁存器锁存起来最后用显示译码器把锁存的结果用LED数码显示管显示出来显示管的读数就是被测信号以标准信号的周期为单位乘积的周期。第章技术性能指标)测量方波周期性信号的频率)接用十进制数字显示测得的频率)测量范围:HZ~HZ切量程能自动切换)信号幅度范围为~V要求一起自动适应)时间:T〈=S)用CPLDFPGA可编程逻辑器件实现第章频率计的设计原理频率计测量频率的设计原理()频率计测量频率的原理频率计测量频率需要设计整形电路使被测周期性信号整形成脉冲然后设计计数器对整形后的脉冲在单位时间内重复变化的次数进行计数计数器计出的数字经锁存器锁存后送往译码驱动显示电路用数码管将数字显示出来需要设计控制电路产生允许计数的门闸信号、计数器的清零信号和锁存器的锁存信号使电路正常工作。:频率计测量周期的原理()频率计测量周期的原理频率计测量周期需要设计整形电路使被测周期性信号整形成脉冲然后设计计数器对基准信号在被测信号一个周期内重复变化的次数进行计数计数器计出的数字经锁存器锁存后送往译码驱动显示电路用数码管将数字显示出来需要设计控制电路产生允许计数的使能信号、计数器的清零信号和锁存器的锁存信号使电路正常工作再设计一个量程自动转换电路使测量范围更广。第章频率计的模块设计位十进制计数器模块位十进制计数器模块包含个级联十进制计数器用来对施加到时钟脉冲输入端的待测信号产生的脉冲进行计数十进制计数器具有集束使能、清零控制和进位扩展输出的功能。使能信号和清零信号由闸门控制模块的控制信号发生器所产生来对个级联十进制计数器周期性的计数进行控制。()十进制计数器元件的设计十进制计数器的程序如下:library ieeeuse ieeestdlogicalluse ieeestdlogicunsignedallentitycountisport(clr,clk,en:in stdlogicq:buffer stdlogicvector(downto)c:out stdlogic)endarchitecture one of count isbeginprocess (clk,clr)beginifclr=''thenq<=""elsif clk'eventandclk=''thenif en=''thenif(q<)thenq<=qelse q<=""end ifendifendifend processprocess(q)beginifq=""thenc<=''elsec<=''endifendprocessend在源程序中c是计数器进位输出Q是计数器的状态输出CLK是始终输入端clr是复位控制输入端当clr=时Q=EN是使能控制输入端当EN=时计数器计数当EN=时计数器保持状态不变。编译成功后进行仿真其仿真波形如下:在项目编译仿真成功后将设计的十进制计数器电路设置成可调用的元件jishusym用于以下的顶层设计。()位十进制计数器的顶层设计新建一个原理图编辑窗从当前的工程目录中凋出个十进制计数器元件jishusym并按如图所示的位十进制计数器的顶层原理图完成电路连接。完成位十进制计数器的原理图编辑以后即可进行仿真测试和波形分析其仿真输出波形如图所示当RST=、EN=是其计数值在到之间循环变化COUT为计数进位输出信号作为后面的量程自动切换模块的输入脉冲。因此仿真结果正确无误可将以上设计的位十进制计数器设置成可调用的元件jishusym以备高层设计中使用其元件符号图如下图所示。控制模块设计)闸门信号的设计频率计电路工作时先要产生一个计数允许信号(即闸门信号)闸门信号的宽度为单位时间如S。在闸门信号有效时间内对被测信号计数即为信号的频率。该频率计电路的精度取决于闸门信号T。本设计中选取的基准信号频率为hz为了得到s高电平的周期性闸门信号本设计采用对频率为khz基准信号进行分频对分频出的信号进行取非变换这样得到的门闸信号高电平为秒钟编译成功后生成元件图如下:将其电路图进行仿真其仿真波形如下:对照其仿真波形其输出门闸信号高电平为S符合设计将其电路生成如下元件图以便顶层调用。)控制信号发生器模块该模块主要根据输入高电平的S闸门信号产生计数允许信号EN该信号的高电平的持续时间即计数允许时间与输入的门闸控制时钟脉冲周期相同产生清零信号RST在计数使能前对计数器先清零产生存储信号LOAD在计数结束后利用上升沿把最新的频率测量值保存在显示寄存器中。锁存器模块寄存器是在计数结束后利用触发器的上升沿把最新的频率测量值保存起来这样在计数过程中可不必一直看着数码管显示器显示器将最终的频率读数定期进行更新其输出将作为动态扫描电路的输入。位寄存器的VHDL源程序如下在源程序中LOAD是锁存信号上升沿触发din是寄存器输入dout是寄存器输出。编译仿真后生成元件图如下图以便顶层模块的调用仿真波形:第五章 仿真波形:仿真结果中可看出频率计设计满足要求。心得体会:时间快一个星期的课程设计很快就过去了虽然我以前把VHDL语言学过一遍了但是这都实习中还是碰到了一些问题通过向老师向同学寻求帮助和在网上在图书馆查找相关的资料来一点点解决遇到的问题从中感觉自己对VHDL语言的理解又进了一步!对硬件描述语言和纯元件语言如c语言之间的差别又有了更深一层次的理解不过自我感觉想要对VHDL语言要很熟练的掌握的话还需要多多的联系才行的。另外VHDL的系统描述能力虽强不过编写程序的人也要对底层的电路有一定的了解才能更加得心应手的使用VHDL语言编写出高效率准确的代码。经过学习我发现VHDL语言相对来讲比较简单原来以为要好几个月才能学会的语言没想到看了现在就能够勉强的编写程序了更让人惊喜的是VHDL的书写习惯跟c语言基本上是一样的所以我之前的知识也为这次设计打下了基础设计起来也没那么费力了。当然这也得益于VHDL语言的简易。不管怎么说课程设计已经告一段落FPGA算是勉强入门了以后的造化还要看自己的努力了。总之我觉得这一周没白过。采用常规电路设计数字频率计所用的器件较多连线比较复杂而且存在延时较大、测量误差较大、可靠性低的缺点。采用复杂可编程逻辑器件以EDA工具为开发手段、运用VHDL语言编程进行数字频率计的设计将在系统大大简化的同时提高仪器整体的性能和可靠性。我们设计的用FPGA实现的位数字频率计测频系统能过用数码显示被测信号的频率。我们采用VHDL语言编程用Quartus集成开发环境进行波形仿真、编译并下载到FPGA中FPGA的功耗低、速度快。经测试该系统性能可靠、测量精确。不过本系统还有以下缺点:)不能自适应量程实现自动转换功能。)测量的频率范围有限。附录:源程序:十进制计数器   library ieeeuse ieeestdlogicalluse ieeestdlogicunsignedallentitycountisport(clr,clk,en:in stdlogicq:buffer stdlogicvector(downto)c:out stdlogic)endarchitecture one of count isbeginprocess (clk,clr)beginifclr=''thenq<=""elsif clk'eventandclk=''thenif en=''thenif(q<)thenq<=qelse q<=""end ifendifendifend processprocess(q)beginifq=""thenc<=''elsec<=''endifendprocessend 四位寄存器library ieeeuse ieeestdlogicalluseieeestdlogicunsignedallentity regb isport(load:instdlogicdin:instdlogicvector(downto)dout:outstdlogicvector( downto ))endarchitecture one of regbisbeginprocess(load,din)beginif load'eventandload=''thendout<=dinendifendprocessend二分频模块library ieeeuse ieeestdlogicalluseieeestdlogicunsignedallentity testpl isport(clk:in stdlogictsten:out stdlogicclrcnt:outstdlogicload:out stdlogic)endarchitecture oneof testplissignal divclk:stdlogicbeginprocess(clk)beginifclk'eventand clk=''thendivclk<=notdivclkendifendprocessprocess(clk,divclk)beginif(clk=''anddivclk='')thenclrcnt<=''elseclrcnt<=''endifendprocessload<=not divclktsten<=divclkend参考书目 尹常永《EDA技术与数字系统设计》西安西安电子科技大学出版社 LectureSheetsofEDATechnique,

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/18

《EDA技术》数字频率计课程设计报告报

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利