基于FPGA数字频率计的设计(共21页).doc
《基于FPGA数字频率计的设计(共21页).doc》由会员分享,可在线阅读,更多相关《基于FPGA数字频率计的设计(共21页).doc(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上摘 要数字频率计是电子测量与仪表技术最基础的电子仪表之一,也是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。 本文主要介绍一种以FPGA(Field Programmable Gate Array)为核心,基于硬件描述语言VHDL的数字频率计设计与实现。并在EDA(电子设计自动化)工具的帮助下,用大规模可编程逻辑器件(FPGA/CPLD)实现数字频率计的设计原理及相关程序。特点是:无论底层还是顶层文件均用VHDL语言编写,避免了用电路图形式设计时所引起的毛刺现象;改变了以往数字电路小规模多器件组合的设计方法,整个频率计设计在一块FPGA/CPLD芯片上,
2、与用其他方法做成的频率计相比,体积更小,性能更可靠。关键词:FPGA 频率计 电子设计自动化专心-专注-专业 目 录第一章 绪论1.1课题研究背景数字频率计是一种基础测量仪器,到目前为止已有30多年的历史,早起设计师们追求的目标主要是扩展测量范围,再加上提高测量的精度、稳定度等,这些也是人们衡量数字频率计的技术水平,决定数字频率计价格高低的主要依据。目前这些基本技术日益完善,成熟。应用现代技术可以轻松的将数字频率计的测频上限扩展到微波频段。当今数字频率计不仅是作为电压表、计算机、天线电广播通讯设备、工艺工程自动化装置。多种仪表仪器与家庭电器等许多电子产品中的数据信息输出显示器反映到人们眼帘。集
3、成数字频率计由于所用元件投资体积小、功耗低,且可靠性高,功能强,易于设计和研发,使得它具有技术上的实用性和应用的广泛性。而从民族产业上来说,我们在这种产业中还落后于西方发达国家,这将会关系到民族产业的兴衰。所以我们必须很重视当前的情况。学习发达国家的先进技术以发展本国的产业。1.2研究目的和意义数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。随着人们文化生活水平的提高,加上现在中国国力的上升,人民在不断的追求高质量生活的同时大都在密切的关注着我们的民族产业的发展前景。而频率计的发在虽是一个极小部分但也可以反映出我国民族产业发展的现状。我国在很多的方面都已不是过去那个很贫
4、穷落后的国家,但是关系着我们国计民生的民族产业的发展却是不尽人意,不能不成为今天令人注目的焦点。本论文主要讲述了使用FPGA实现的数字频率计,它采用VHDL语言编程,用MaxplusII集成开发环境进行波形仿真,编译,并下载到FPGA中。正是因为数字频率计的应用是如此的广泛,才使得它的作用是如此的重要,所以更应该去关注和研究。 第二章 系统方案的设计2.1问题引入在许多情况下,要对信号的频率进行测量,利用示波器可以粗略测量被测信号的频率,精确测量则要用到数字频率计。2.2设计目的本设计与制作项目可以进一步加深我们对数字电路应用技术方面的了解与认识,进一步熟悉数字电路系统设计、制作与调试的方法和
5、步骤。2.3设计内容2.3.1数字频率计的基本原理数字频率计的主要功能是测量周期信号的频率。频率是单位时间( 1S )内信号发生周期变化的次数。如果我们能在给定的 1S 时间内对信号波形计数,并将计数结果显示出来,就能读取被测信号的频率。数字频率计首先必须获得相对稳定与准确的时间,同时将被测信号转换成幅度与波形均能被数字电路识别的脉冲信号,然后通过计数器计算这一段时间间隔内的脉冲个数,将其换算后显示出来。这就是数字频率计的基本原理。2.3.2实际电路对 100Hz 全波整流输出信号的分频采用 7 位二进制计数器 74HC4024 组成 100 进制计数器来实现。计数脉冲下降沿有效。在 74HC
6、4024 的 Q7 、 Q6 、 Q3 端通过与门加入反馈清零信号,当计数器输出为二进制数 (十进制数为 100 )时,计数器异步清零。实现 100 进制计数。为了获得稳定的分频输出,清零信号与输入脉冲“与”后再清零,使分频输出脉冲在计数脉冲为低电平时保持一段时间( 10mS )为高电平。图 4 数字频率计电路图电路中采用双 JK 触发器 74HC109 中的一个触发器组成 触发器,它将分频输出脉冲整形为脉宽为 1S 、周期为 2S 的方波。从触发器 Q 端输出的信号加至控制门,确保计数器只在 1S 的时间内计数。从触发器 端输出的信号作为数据寄存器的锁存信号。 被测信号通过 741 组成的运
7、算放大器放大 20 倍后送施密特触发器整形,得到能被计数器有效识别的矩形波输出,通过由 74HC11 组成的控制门送计数器计数。为了防止输入信号太强损坏集成运放,可以在运放的输入端并接两个保护二极管。 频率计数器由两块双十进制计数器 74HC4511 组成,最大计数值为 9999Hz 。由于计数器受控制门控制,每次计数只在 JK 触发器 Q 端为高电平时进行。当 JK 触发器 Q 端跳变至低电平时,端的由低电平向高电平跳变,此时, 8D 锁存器 74HC374 (上升沿有效)将计数器的输出数据锁存起来送显示译码器。计数结果被锁存以后,即可对计数器清零。由于 74HC4518 为异步高电平清零,
8、所以将 JK 触发器的 同 100Hz 脉冲信号“与”后的输出信号作为计数器的清零脉冲。由此保证清零是在数据被有效锁存一段时间( 10mS )以后再进行。第三章 系统硬件电路的设计3.1设计要求设计并制作出一种数字频率计,其技术指标如下: (1)频率测量范围: 10 9999Hz 。 (2)输入电压幅度 300mV 。 (3)输入信号波形:任意周期信号。 (4)显示位数: 4 位。 (5)电源: 220V 、 50Hz3.1.1所需仪器仪表示波器、音频信号发生器、逻辑笔、万用表、数字集成电路测试仪、直流稳压电源。3.2系统框图从数字频率计的基本原理出发,根据设计要求,得到如图 8.3 所示的电
9、路框图。 下面介绍框图中各部分的功能及实现方法 3.2.1电源与整流稳压电路 框图中的电源采用 50Hz 的交流市电。市电被降压、整流、稳压后为整个系统提供直流电源。系统对电源的要求不高,可以采用串联式稳压电源电路来实现。 3.2.2全波整流与波形整形电路 本频率计采用市电频率作为标准频率,以获得稳定的基准时间。按国家标准,市电的频率漂移不能超过 0.5Hz ,即在 1 的范围内。用它作普通频率计的基准信号完全能满足系统的要求。全波整流电路首先对 50Hz 交流市电进行全波整流,得到如图1所示 100Hz图1 数字频率计框图的全波整流波形。波形整形电路对 100Hz 信号进行整形,使之成为如图
10、2所示 100Hz 的矩形波。 图2 全波整流与波形整形电路的输出波形 波形整形可以采用过零触发电路将全波整流波形变为矩形波,也可采用施密特触发器进行整形。 3.2.3分频器 分频器的作用是为了获得 1S 的标准时间。电路首先对图1所示的 100Hz 信号进行 100 分频得到如图2( a )所示周期为 1S 的脉冲信号。然后再进行二分频得到如图 8.5 ( b )所示占空比为 50 脉冲宽度为 1S 的方波信号,由此获得测量频率的基准时间。利用此信号去打开与关闭控制门,可以获得在 1S 时间内通过控制门的被测脉冲的数目。 分频器可以采用第 5 章介绍过的方法,由计数器通过计数获得。二分频可以
11、采用 触发器来实现。 3.2.4信号放大、波形整形电路 为了能测量不同电平值与波形的周期信号的频率,必须对被测信号进行放大与整形处理,图3 分频器的输出波形使之成为能被计数器有效识别的脉冲信号。信号放大与波形整形电路的作用即在于此。信号放大可以采用一般的运算放大电路,波形整形可以采用施密特触发器。 3.2.5控制门 控制门用于控制输入脉冲是否送计数器计数。它的一个输入端接标准秒信号,一个输入端接被测脉冲。控制门可以用与门或或门来实现。当采用与门时,秒信号为正时进行计数,当采用或门时,秒信号为负时进行计数。 3.2.6计数器 计数器的作用是对输入脉冲计数。根据设计要求,最高测量频率为 9999H
12、z ,应采用 4 位十进制计数器。可以选用现成的 10 进制集成计数器。 3.2.7锁存器 在确定的时间( 1S )内计数器的计数结果(被测信号频率)必须经锁定后才能获得稳定的显示值。锁存器的作用是通过触发脉冲控制,将测得的数据寄存起来,送显示译码器。锁存器可以采用一般的 8 位并行输入寄存器,为使数据稳定,最好采用边沿触发方式的器件。 3.2.8显示译码器与数码管 显示译码器的作用是把用 BCD 码表示的 10 进制数转换成能驱动数码管正常显示的段信号,以获得数字显示。 选用显示译码器时其输出方式必须与数码管匹配。第四章 软件设计4.1设计要求频率计共分四档: 一档: 0 9999Hz ;
13、二档: 10 99.99KHz ; 三档: 100.0 999.9KHz ; 四档: 1.000 9.999MHz ; 在此频率计的换档程序设计中,突破了以往常用的改变闸门时间的方法,使自动换档的实现简单可靠。总体框图如图1所示4.2模块及模块的功能(1)模块 FEN 见图 1.1 ,通过对 4MHz 时钟进行分频以获得 0.5 Hz 时钟,为核心模块 CORNA 提供 1 的闸门时间。library ieee; use ieee.std_logic_1164.all; entity fen is port(clk:in std_logic; q:out std_logic); end fen
14、; architecture fen_arc of fen is begin process(clk) variable cnt: integer range 0 to ; variable x:std_logic; variable x:std_logic; begin if clkevent and clk=1then if cnt then cnt:=cnt+1; else cnt:=0; x:=not x; end if; end if; q=x; end process; end fen_arc; (2)模块 SEL见图1.2,该模块产生数码管的片选信号。library ieee;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 数字频率计 设计 21
限制150内