课程设计(论文)基于FPGA的数字频率计的设计.doc
《课程设计(论文)基于FPGA的数字频率计的设计.doc》由会员分享,可在线阅读,更多相关《课程设计(论文)基于FPGA的数字频率计的设计.doc(22页珍藏版)》请在三一办公上搜索。
1、目录1 引言22 FPGA及VERILOG HDL22.1 FPGA简介22.2 Verilog HDL 概述33 数字频率计的设计原理33.1设计要求33.2频率测量33.2.1时间门限测量法43.2.2标准频率比较测量法43.2.3 等精度测量法43.3方案提出及确定43.4系统设计与方案论证53.4.1测频控制信号发生器设计63.4.2寄存器设计63.4.3计数器的设计63.5小结74 数字频率计的设计74.1功能模块设计74.1.1分频器模块74.1.2测频控制信号发生器模块74.1.3 32位锁存器模块84.1.4译码器模块84.1.5十进制计数器模块94.1.6用原理图描述的模块9
2、4.2 顶层文件114.3小结135 软件的测试135.1测试的环境135.2调试和器件编程136 硬件设计1361 EPF10K30ATI144-3 FPGA芯片简介1362 EPC2配置芯片简介136.3配置模式146.4下载方式146.5硬件电路原理图设计146.6频率测试167 结论及展望167.1结论167.2展望16致 谢17参考文献18附 录19基于FPGA的数字频率计的设计摘要:在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更加重要。通过运用Verilog HDL语言,实现8位数字频率计,并利用MAX+PLUS
3、II集成开发环境进行编辑、综合、波形仿真,并下载到FPGA器件中,经实际电路测试,该系统性能可靠。关键词:硬件描述语言 现场可编程门阵列FPGA 频率计 频率测量 1 引言在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率的测量就显得更为重要。测量频率的方法有多种,其中电子计数器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。数字式频率计的测量原理有两类:一是直接测频法,即在一定闸门时间内测量被测信号的脉冲个数;二是间接测频法即测周期法,如周期测频法。直接测频法适用于高频信号的频率测量,通
4、常采用计数器、数据锁存器及控制电路实现,并通过改变计数器阀门的时间长短在达到不同的测量精度;间接测频法适用于低频信号的频率测量,本设计中使用的就是直接测频法,即用计数器在计算1S内输入信号周期的个数。数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。随着现场可编程门阵列FPGA的广泛应用,以EDA工具作为开发手段,运用Verilog HDL等硬件描述语言语言,将使整个系统大大简化,提高了系统的整体性能和可靠性。 采用FPGA现场可编程门阵列为控制核心,通过硬件描述语言Verilog HDL编程,在MAX+PLUSI
5、I仿真平台上编译、仿真、调试 ,并下载到FPGA芯片上,通过严格的测试后,能够较准确地测量方波、正弦波、三角波、矩齿波等各种常用的信号的频率,而且还能对其他多种物理量进行测量。2 FPGA及Verilog HDL本章首先对设计所采用的可编程逻辑器件FPGA及Verilog HDL进行了简单的介绍,对设计有些基本的了解。2.1 FPGA简介FPGA是20世纪80年代中期出现的高密度可编程逻辑器件,它一般由布线资源分隔的可编程逻辑单元构成阵列,又由可编程I/O单元围绕阵列构成整个芯片,排列阵列的饿逻辑单元由布线通道中的可编程内连线连接起来实现一定的逻辑功能。一个FPGA包含丰富的具有快速系统速度的
6、逻辑门、寄存器和I/O组成。FPGA/CPLD芯片都是特殊的ASIC芯片,除了具有ASIC的特点外还有一下几个优点:随着超大规模集成电路VLSI工艺的不断提高,单一芯片内部可以容纳上百万个晶体管;FPGA/CPLD芯片出厂前100%都做过测试,不需要设计人员承担风险和费用;用户可以反复地编程、擦除、使用或者在外围电路不动的的情况下,用不同软件就可实现不同的功能,用FPGA/CPLD试制样片,能以最快的速度占领市场。FPGA/CPLD软件包中有各种输入工具、仿真工具、版图设计及编程器等全线产品,使电路设计人员在较短的时间内就可以完成电路的输入、编译、优化、仿真,直至最后芯片的制作。FPGA采用了
7、逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有:1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。2)FPGA可做其它全定制或半定制ASIC电路的中试样片。3)FPGA内部有丰富的触发器和IO引脚。4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。5)FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL
8、电平兼容。可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。目前FPGA的品种很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FLEX系列等。FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA
9、功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。2.2 Verilog HDL 概述Verilog HDL是硬件描述语言的一种,用于数字电子逻辑系统设计。它允许设计者用它来进行各种级别的逻辑设计,可以用它进行数字逻辑系统的仿真验证、时序分析、逻辑综合。Verilog HDL硬件描述语言用于算法级、门级到开关级的多种抽象设计层次的数字系统建模,它具有以下描述能力:设计的行为描述、设计的数据流特性、设计的结构组成以及包含响应监控和设计验证方面的时延和波形产生机制,而且定义了语法,对每个语法结构都定义了清晰的模拟、仿真语义
10、。通过以上的介绍,可以看出课题中所用的编程语言、采用的可编程逻辑器件对课题有了基本的了解,下面将对设计的具体方案进行探讨。3 数字频率计的设计原理 本章首先介绍了数字频率计设计的要求和频率测量的工作原理,最后对系统的设计方案进行探讨,综合起来形成数字频率计的设计思路以及原理框图。3.1设计要求(1)控制功能:能测量输入信号的频率,频率范围1HZ8MHZ,波形可以是正弦波,三角波,方波和其他任何有固定频率的信号,信号的幅值0.55V。(2)在EDA软件平台上建立计数器电路的顶层电路文件并完成编译和仿真。(3)根据实验装置上的FPGA芯片选择相应的芯片,然后将这些文件下载到实验装置上运行,操作功能
11、开关,验证设计功能。3.2频率测量 数字频率计是用于测量信号频率的电路。测量信号的频率参数是最常用的测量方法之一。实现频率测量的方法比较多, 在此我们主要介绍三种常用的方法: 时间门限测量法、标准频率比较测量法、等精度测量法。3.2.1时间门限测量法 在一定的时间门限T内,如果测得输入信号的脉冲数为N, 设待测信号的频率为fx,则该信号的频率为改变时间T,则可改变测量频率范围。例如,当T=1s, 则fx=N(Hz);T=1ms,则fx=N(kHz)。3.2.2标准频率比较测量法用两组计数器在相同的时间门限内同时计数,测得待测信号的脉冲个数为N1、已知的标准频率信号的脉冲个数为N2,设待测信号的
12、频率为fx, 已知的标准频率信号的频率为f0;由于测量时间相同,则可得到如下等式: 从上式可以得出待测频率的公式为标准频率比较测量法对测量时产生的时间门限的精度要求不高,对标准频率信号的频率准确度和频率的稳定度要求较高,标准信号的频率越高,测量的精度就比较高。该方法的测量时间误差与时间门限测量法的相同,可能的最大误差为正负一个待测信号周期,即t=1/fx。3.2.3 等精度测量法等精度测量法的机理是在标准频率比较测量法的基础上改变计数器的计数开始和结束与闸门门限的上升沿和下降沿的严格关系。当闸门门限的上升沿到来时,如果待测量信号的上升沿未到时两组计数器也不计数,只有在待测量信号的上升沿到来时,
13、两组计数器才开始计数;当闸门门限的下降沿到来时,如果待测量信号的一个周期未结束时两组计数器也不停止计数,只有在待测量信号的一个周期结束时两组计数器才停止计数。这样就克服了待测量信号的脉冲周期不完整的问题,其误差只由标准频率信号产生, 与待测量信号的频率无关。最大误差为正负一个标准频率周期,即t=1/f0。3.3方案提出及确定方案一: 采用小规模数字集成电路制作被测信号经过放大整形变换为脉冲信号后加到主控门的输入端,时基信号经控制电路产生闸门信号送至主控门,只有在闸门信号采样期间内输入信号才通过主控门,若时基信号周期为T,进入计数器的输入脉冲数为N,则被信号的测频率其频率F=N/T,其原理方框图
14、如图3-1所示显示译码器计数器闸门整形放大被测信号 逻辑控制 图3-1 方案一测频原理图方案二:采用单片机进行测频控制单片机技术比较成熟,功能也比较强大,被测信号经放大整形后送入测频电路,由单片机对测频电路的输出信号进行处理,得出相应的数据送至显示器显示。原理方框图如图2-2所示。显示单片机测频电路信号整形待测信号晶 振图3-2 单片机测频电路原理图采用这种方案优点是足以地成熟的依赖单片机技术、运算功能较强、软件编程灵活、自由度大、设计成本也较低,缺点是显而易见的,在传统的单片机设计系统中必须使用许多分立元件组成单片机的外围电路,整个系统显得十分复杂,并且单片机的频率不能做得很高,使得测量精度
15、大大降低。方案三:采用现场可编程门阵列(FPGA)为控制核心采用现场可编程门阵列(FPGA)为控制核心,利用Verilog HDL语言编程,下载烧制实现。将所有器件集成在一块芯片上,体积大大减小的同时还提高了稳定性,可实现大规模和超大规模的集成电路,测频测量精度高,测量频率范围大,而且编程灵活、调试方便。本设计采用FPGA器件来实现高速,高精度,连续测频具有很大的优势,它可以解决采用单片机测频中时基频率(标准频率)过低而影响测频精度的缺点。并且可以实现高速,连续测频技术,采用FPGA器件来实现运算可以节省运算时间,缩短每次测频时间,从而可以比较方便的实现连续测频技术。综合上述分析,方案三为本设
16、计测量部分最佳选择方案。3.4系统设计与方案论证数字频率计基本原理是用计数器来计算1S内输入信号周期的个数。如图2-3所示是8位十进制数字频率计的系统方框原理图,当系统正常工作时,脉冲发生器提供的1 Hz的输入信号,经过测频控制信号发生器进行信号的变换,产生计数信号,被测信号通过信号整形电路产生同频率的矩形波,送入计数模块,计数模块对输入的矩形波进行计数,将计数结果送入锁存器中,保证系统可以稳定显示数据,显示译码驱动电路将二进制表示的计数结果转换成相应的能够在七段数码显示管上可以显示的十进制结果。七段数码管显示译码电路输出信号锁存器测频计数模块测频控制信号发生器模块时钟信号闸门信号控制信号清零
17、信号锁存信号被测频率信号图3-3系统方框图3.4.1测频控制信号发生器设计频率测量的基本原理是计算每秒内待测信号的脉冲个数。这就要求TESTCTL的计数使能信号TSTEN能产生一个1S脉宽的周期信号,并对频率计的每个计数器CNT10的ENA使能端进行同步控制。当TETEN高电平时允许计数、低电平时停止计数,并保持其所计的数。在停止计数期间,首先需要一个锁存信号LOAD的上挑沿将计数器在前1S的计数值锁存进锁存器REG中,并由外部的7段译码器译出并稳定显示。设置寄存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一清零信号CLR-CNT对计数器清零,为下一秒钟
18、的计数操作作准备。这样需设计一个测频控制信号发生器,而且它的工作要满足一定的时序关系。为了产生这个时序图,需建立一个由D触发器构成的二分频器,在每次时钟CLK上升沿到来时其值翻转。其中控制信号时钟CLK的频率取1HZ,那么信号TETEN的脉宽恰好为1S,可以用作闸门信号。然后根据测频时的时序要求,可得信号LOAD和CLR-CNT的逻辑描述。在计数完成后,即计数使能信号TETEN在1S的高电平后,利用其反相值的上跳沿产生一个锁存信号LOAD,0.5S后,CLR-CNT产生一个清零信号的上跳沿。3.4.2寄存器设计若已有32位BCD码存在于此模块的输入口,在信号LOAD的上升沿锁存到寄存器的内部,
19、并由寄存器的输出端输出,然后由试验板上的7段译码器译成能在数码管上显示输出的相对应的数值。3.4.3计数器的设计计数器有两种触发方式:同步触发和异步触发。同步触发的优点在于共用一个时钟变量,可以避免芯片中出现多种时钟信号,但缺点在于引用的逻辑门个数较多,模块如果做大了就会引起较大的时延,产生竞争冒险问题。异步触发的优点在于可以很方便用于多个模块的级连而不需要逻辑门的引入,但多时钟变量的引入会占用大量的触发器,造成硬件资源不够用,设计时应避免这种情况的发生。权衡两者的利弊,并进行多次设计实现,最终得出采用同步触发方式,在通过8个十进制计数器级连的方案。该方案从延时和资源的利用出发,对计数器内部采
20、用同步触发方式,在通过8个十进制计数器的级连实现8位频率计的计数功能。之所以选择8位不是4位,是从实际要求和发挥优势的角度出发,既要量程大又要有较高的测量精度,就需要采用多位数码管来显示,而且采用EDA工具可以使设计方便很多,不会引起多数码管造成布线上复杂的麻烦,可以充分展示EDA工具的优势。此十进制计数器的特殊之处是有一个时钟使能输入端ENA,用于锁定计数值。当高电平时计数允许,低电平平时禁止计数。3.5小结本章对数字频率的设计要求进行阐述,由此对频率测量的工作原理进行探讨引申出几个设计的方案,采用的时间门限测量法根据此方法确定了以现场可编程门阵列为控制核心的设计方案,它最为灵活方便。然后得
21、出论述对方案的进行细节方面的论证,产生了设计的原理方框图。但是在设计中有个特别需要注意的地方是:在测频控制信号发生器的设计当中,要对其进行仔细的时序仿真,防止可能产生的毛刺。4 数字频率计的设计先对系统设计的模块一一进行描,然后对数字频率计设计的顶层电路原理图进行了阐述。整个系统共设计了五个模块:分频器模块(DIV2)、测频控制信号发生器模块(TESTCTL)、有时钟使能的计数器模块(8COUNT)、32位锁存器模块(SELTIME)、7段译码器(ENCODE)。4.1功能模块设计4.1.1分频器模块分频器模块“div2.v”。输入信号:CL K 试验平台上的时钟信号。 输出信号:CLKDIV
22、2 输出1HZ标准信号。 逻辑功能:对输入信号频率进行二分频,提供测频控制信号发生器所需的1HZ标准信号。源文件div2.v见附录4.1.2测频控制信号发生器模块测频控制信号发生器模块,文件名为testctl.v。输入信号:CLKDIV2 1HZ标准输入信号。输出信号:TSTEN 计数时能信号; CLR-CNT 计数器清零信号; LOAD 锁存信号。逻辑功能:产生1S脉宽的周期信号,并根据测频需要产生相应的计数器清零信和锁存器的锁存信号。如图源文件为testctl.v见附录仿真波形如图4-1 图4-1测频控制模块波形图4.1.3 32位锁存器模块32位锁存器模块,文件为SELTIME .vhd
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 论文 基于 FPGA 数字频率计 设计
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-4150635.html