您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > VHDL课程设计报告-频率计
目录1.前言..........................................................................................................................22.设计要求..................................................................................................................23.整体设计.................................................................................................................34.设计原理..................................................................................................................35.设计程序..................................................................................................................35.1顶层文件.............................................................................................................................35.28位是进制计数器...........................................................................................................45.310进制计数器.................................................................................................................55.4测频控制电路....................................................................................................................65.532位锁存器及其控制器.................................................................................................66.引脚锁定..................................................................................................................87.综合结果..................................................................................................................87.1RTL电路............................................................................................................................87.2测频控制电路....................................................................................................................97.38位十进制计数器...........................................................................................................97.332位锁存器.....................................................................................................................98.实验结果................................................................................................................107.实验总结..................................................................................................................10参考文献.....................................................................................................................12自适应数字频率计数器设计1.前言传统的数字频率计一般是由分离元件搭接而成,用到的器件较多,连线比较复杂,而且会产生比较大的延时,造成测量误差大、可靠性差。后来随着单片机的大规模的应用,出现了不少用单片机控制的频率测量系统。相对于以前用分离元件搭接起来的频率测量系统,单片机控制的频率测量系统在频率测量范围、频率测量精度和频率测量速度上都有了很大的提高。但由于单片机工作频率的限制、单片机内部计数器位数的限制等因素,由单片机控制的频率测量系统无法在频率测量范围、频率测量精度和频率测量速度上取得重大突破。若再增加别的器件,以弥补单片机的不足,不仅会大大增加系统的复杂性,而且不利于系统的集成化。以EDA工具作为开发平台,运用VHDL语言,将使整个系统大大简化,从而提高整体的性能和可靠性。本课题采用的是等精度数字频率计,在一片FPGA开发板里实现了数字频率计的绝大部分功能,它的集成度远远超过了以往的数字频率计。又由于数字频率计最初的实现形式是用硬件描述语言写成的程序,具有通用性和可重用性。所以在外在的条件(如基准频率的提高,基准频率精度的提高)的允许下,只需对源程序作很小的改动,就可以使数字频率计的精度提高几个数量级。同时对于频率精度要求不高的场合,可以修改源程序,使之可以用较小的器件实现,从而降低系统的整体造价。2.设计要求设计一个频率计,频率测量范围为1-9999KHZ,量程分别为10、100、1M三档,要求如下:a.当读数大于999时,频率计处于超量程状态,下一次测量时,量程自动增大1档b.当读数小于099时,频率计处于欠量程状态,下一次测量时,量程自动减小1档c.当超过频率范围时,显示器自动溢出3.整体设计当被测频率进入时候,档位1、2能自动换挡实现功能,在档位1中,有一个LED灯亮(表示Hz);档位2中有2个LED灯亮(表示kHz);当计数频率超出9999kHz的时候,显示“E”而且LED灯全部熄灭,表示溢出功能。在程序代码中,必须要清晰表示出计数的运行状况。档位1:当被测频率为0—9999Hz时候,直接显示fx的值(单位为Hz);档位2:当被测频率为10k—9999kHz时候,显示10-9999(单位kHz);4.设计原理根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的输入信号脉冲计数允许的信号;1秒计数结束后,计数值被锁入锁存器,计数器清0,为下一测频计数周期作好准备。测频控制信号可以由一个独立的发生器来产生。5.设计程序5.1顶层文件LIBRARYIEEE;--频率计顶层文件LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYFREQTESTISPORT(CLK1HZ:INSTD_LOGIC;FSIN:INSTD_LOGIC;DOUT:OUTSTD_LOGIC_VECTOR(15DOWNTO0);LED:OUTSTD_LOGIC_VECTOR(1DOWNTO0));ENDFREQTEST;ARCHITECTUREstrucOFFREQTESTISCOMPONENTFTCTRLPORT(CLKK:INSTD_LOGIC;--1HzCNT_EN:OUTSTD_LOGIC;--计数器时钟使能RST_CNT:OUTSTD_LOGIC;--计数器清零Load:OUTSTD_LOGIC);--输出锁存信号ENDCOMPONENT;COMPONENTCOUNTERPORT(FIN:INSTD_LOGIC;--时钟信号CLR:INSTD_LOGIC;--清零信号ENABL:INSTD_LOGIC;--计数使能信号DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));--计数结果ENDCOMPONENT;COMPONENTREG32BPORT(LK:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(15DOWNTO0);LEDOUT:OUTSTD_LOGIC_VECTOR(1DOWNTO0));ENDCOMPONENT;SIGNALTSTEN1:STD_LOGIC;SIGNALCLR_CNT1:STD_LOGIC;SIGNALLoad1:STD_LOGIC;SIGNALDTO1:STD_LOGIC_VECTOR(31DOWNTO0);SIGNALCARRY_OUT1:STD_LOGIC_VECTOR(6DOWNTO0);BEGINU1:FTCTRLPORTMAP(CLKK=CLK1HZ,CNT_EN=TSTEN1,RST_CNT=CLR_CNT1,Load=Load1);U2:REG32BPORTMAP(LK=Load1,DIN=DTO1,DOUT=DOUT,LEDOUT=LED);U3:COUNTERPORTMAP(FIN=FSIN,CLR=CLR_CNT1,ENABL=TSTEN1,DOUT=DTO1);ENDstruc;5.28位是进制计数器LIBRARYIEEE;--8位十进制计数器USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCOUNTERISPORT(FIN:INSTD_LOGIC;--时钟信号CLR:INSTD_LOGIC;--清零信号ENABL:INSTD_LOGIC;--计数使能信号DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));--计数结果ENDCOUNTER;ARCHITECTUREbehavOFCOUNTERISCOMPONENTCOUNTER10ISPORT(FIN:INSTD_LOGIC;--时钟信号CLR:INSTD_LOGIC;--清零信号ENABL:INSTD_LOGIC;--计数使能信号DOUT:OUTSTD_LOGIC_VECTOR(3DOWNTO0);--计数结果COUT:OUTSTD_LOGIC);ENDCOMPONENT;SIGNALCLK1,CLK2,CLK3,CLK4,CLK5,CLK6,CLK7:STD_LOGIC;BEGINu1:COUNTER10PORTMAP(FIN=FIN,CLR=CLR,ENABL=ENABL,DOUT=DOUT(3DOWNTO0),COUT=CLK1)
本文标题:VHDL课程设计报告-频率计
链接地址:https://www.777doc.com/doc-7351493 .html