ImageVerifierCode 换一换
格式:DOCX , 页数:54 ,大小:705.92KB ,
资源ID:16399468      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-16399468.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于FPGA的等精度频率计设计本科毕业设计.docx)为本站会员(b****7)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于FPGA的等精度频率计设计本科毕业设计.docx

1、基于FPGA的等精度频率计设计本科毕业设计基于FPGA的等精度频率计设计摘 要频率计是实验室和科研、生产中最常用的测量仪器之一。本文介绍了一种基于FPGA芯片设计的等精度频率计。对传统的等精度测量方法进行了改进,采用SOPC设计技术和基于NIOS II嵌入式软核处理器的系统设计方案,通过在FPGA芯片上配置NIOS II软核处理器进行数据运算处理,利用液晶显示器对测量的频率进行实时显示,可读性好。整个系统在一片FPGA芯片上实现,系统测量精度高,实时性好,具有灵活的现场可更改性。本频率测量仪是以Altera公司生产的CycloneII系列EP2C35F672C6器件为核心实现高精度计数功能。整

2、个电路采用模块化设计,调试制作方便。经过仿真并下载验证,能够实现等精度测频功能,频率测量范围为1HZ-200MHZ。关键词:等精度,频率计,FPGA, SOPC, NiosIIDesign of Equal Precision Frequency MeterBased on FPGAABSTRACTFrequency meter is one of the most commonly used measuring instruments which can be used in laboratory, scientific research and production . An equal

3、precision frequency meter designed with FPGA is introduced in this article. It adopts Very-High-Speed Integrated Circuit HardwareDescription Language to implement function module in frequency meter base on traditional frequency measurement. SOPC designing technique and system designing plan based on

4、 Nios II soft core CPU are used in the design. It also adopts Niosll soft core CPU as data processing unit, uses LCD 1602 equipment to display frequency in real- time. The whole system is in the realization of a FPGA chip. So it has a high- precision measurement, real- time and flexible change of sc

5、ene. The frequency meter is based on CycloneII EP2C35F672C6 Altera device as the core to achieve high-precision counting. Because of the modular design of this circuit, it is facilitate to debug. After the simulation, and downloads the confirmation, can realize equal-precision frequency measurement

6、function. Frequency measurement scope is 1-200MHZ.KEY WORDS:equal precision measurement, frequency meter, FPGA, SOPC, NiosII1 绪论1.1 课题提出的背景现代数字系统的设计离不开各种先进的仪器,比如数字示波器、逻辑分析仪、频谱分析仪、信号发生器、数字频率计等。数字频率计是一种及其常用的工具,用于检测输入周期信号的频率。随着大规模集成电路的发展,很多芯片内部也集成了数字测频单元,大大增强了芯片处理数字信号的能力。数字频率计广泛应用于航天、电子、测控等领域。例如,在传统的生产

7、制造企业中,频率计被广泛的应用在产线的生产测试中。频率计能够快速的捕捉到晶体振荡器输出频率的变化,用户通过使用频率计能够迅速的发现有故障的晶振产品,确保产品质量;在计量实验室中,频率计被用来对各种电子测量设备的本地振荡器进行校准;在无线通讯测试中,频率计既可以被用来对无线通讯基站的主时钟进行校准,还可以被用来对无线电台的跳频信号和频率调制信号进行分析。采用等精度频率测量方法具有测量精度保持恒定的特点。数字化是电子设计的必由之路。EDA技术即以计算机为工具,EDA是Electronic Design Automation(电子设计自动化)的简称。它是随着集成电路和计算机技术的飞速发展应运而生的一

8、种高级、快速、有效的电子设计自动化工具。在 Quartus II软件平台上,根据硬件描述语言(VHDL)描述的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真、直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。设计者只要利用软件完成对硬件功能的描述,在EDA工具的帮助下和应用相应的PLD器件,就可以得到最后的设计结果。尽管,目标器件是硬件,但整个设计是软件控制流程。由于FPGA是纯硬件结构,具有较强的抗干扰能力。NIOS II是Altera针对其FPGA设计的嵌入式软核处理器,它只占芯片内部很少的一部分逻辑单元和存储资源,成本很低,具有上百兆的性能,灵活的自定义指令

9、集和自定义硬件加速单元,以及友好的图形化开发环境NIOS II IDE。随着微电子技术和计算机技术的发展,可编程逻辑器件,EDA技术,SOPC等新概念和新技术层出不穷,新技术的应用迅速渗透到电子、通信、信息、汽车制造等领域,有力的推动了社会生产力的发展和社会信息化程度的提高。1.2 课题选择意义基于FPGA的等精度频率计有运算速度快、系统较稳定、测量范围广等特点。其中主要应用到EDA(电子设计自动化)技术。伴随着集成电路技术的发展,EDA逐渐成为重要的设计手段。已经广泛应用于模拟与数字电路系统等许多领域。EDA是一种实现电系统或电子产品自动化设计的技术,它与电子技术、微电子技术的发展密切相关,

10、它吸收了计算机科学领域的大多数最新研究成果,以高性能的计算机为工作平台,促进了工程发展。本设计利用FPGA进行测频计数,单片机实施控制实现频率计的设计过程。该频率计利用等精度的设计方法,克服了基于传统测频原理的频率计的测量精度随被测信号频率的下降而降低的缺点。等精度的测量方法不但具有较高的测量精度,而且在整个测频区域内保持恒定的测试精度。并采用NIOS II控制液晶显示器显示测量频率。 2 EDA及其开发平台简介2.1 EDA的具体开发流程基于FPGA器件实现数字系统的流程如图2-1所示。图2-1 基于FPGA/CPLD的EDA设计流程图基于FPGA器件的开发流程主要包含设计输入、综合、FPG

11、A适配、仿真和编程下载。2.1.1设计输入设计输入是设计者将所要设计的电路以开发软件要求的某种形式表达出来,并输入到相应软件中的过程。设计输入有多种方式,最常用的是图形输入和HDL文本输入两种方法。 图形输入主要包括状态图输入,波形图输入和原理图输入等。在HDL文本输入中,最常用的硬件描述语言有Verilog HDL和VHDL等,Verilog HDL和VHDL的功能比较强大,属于行为描述语言,能描述和仿真复杂的逻辑设计。2.1.2综合综合是将设计者在EDA平台上编辑输入的HDL文本、图形描述,依据给定的硬件结构和约束可知条件进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述网表

12、文件的过程。综合器就是能够自动实现上述转换的软件工具。 综合的方式有三种分别是行为综合,逻辑综合,版图综合(结构综合)。2.1.3 适配 适配是将由综合器产生的网表文件配置于指定的目标器件中,并产生最终的可下载文件的过程。 利用适配器将综合后的网表文件针对某一具体的目标器件进行逻辑映射操作,其中包括底层器件配置、逻辑分割、逻辑优化、布局布线等。2.1.4 仿真 仿真,也称为模拟,是对所设计的电路的功能验证。VHDL的仿真流程如图2-2所示,用户可以在设计的过程中对整个系统和各个模块进行仿真,即在计算机上用软件验证功能是否正确,各部分的时序配合是否准确。若出现问题,则可以随时修改,从而避免了逻辑

13、错误。高级的仿真软件还可以对整个系统设计的性能进行估计。规模越大的设计,越需要进行仿真。仿真不消耗硬件资源,不浪费时间,这样就可避免不必要的损失。仿真包括功能仿真和时序仿真。图2-2 VHDL仿真流程图2.1.5 编程下载和硬件测试把适配后生成的编程文件装入到PLD器件中的过程称为下载。通常将对基于EEPROM工艺的非易失结构PLD器件的下载称为编程(Program),而将基于SRAM工艺结构的PLD器件的下载称为配置(Configure)。最常用的编程方式有两种分别是在系统编程(ISP,In System Programmable)和用专用的编程器编程。2.2简介NIOS II IDENIO

14、S II集成开发环境(IDE)是NIOS II系列嵌入式处理器的基本软件开发工具。所有软件开发任务都可以NIOS II IDE下完成,包括编辑、编译和调试程序。NIOS II IDE提供了一个统一的开发平台,用于所有NIOS II处理器系统。仅仅通过一台PC机、一片Altera的FPGA以及一根JTAG下载电缆,软件开发人员就能够往NIOS II 处理器系统写入程序以及和NIOS II处理器系统进行通讯。NIOS II IDE基于开放式的、可扩展Eclipse IDE project工程以及Eclipse C/C+ 开发工具(CDT)工程。NIOS II IDE为软件开发提供四个主要的功能分别

15、是工程管理器,编辑器和编译器,调试器和闪存编程器。2.2.1工程管理器NIOS II IDE提供多个工程管理任务,加快嵌入式应用程序的开发进度。NIOS II IDE推出了一个新工程向导(如下图2-3所示),用于自动建立C/C+应用程序工程和系统库工程。采用新工程向导,能够轻松地在Nios II IDE中创建新工程。图2-3 Nios II IDE新工程向导除了工程创建向导,NIOS II IDE还以工程模板的形式提供了软件代码实例,帮助软件工程师尽可能快速地推出可运行的系统。每个模板包括一系列软件文件和工程设置。通过覆盖工程目录下的代码或者导入工程文件的方式,开发人员能够将他们自己的源代码添

16、加到工程中。图2-4描述了一些可用的软件工程模板。图2-4 软件工程模板NIOS II IDE使开发人员通过使用软件组件能够快速地定制系统。软件组件(或者称为“系统软件”)为开发人员提供了一个简单的方式来轻松地为特定目标硬件配置他们的系统。软件组件包括:NIOS II运行库(或者称为硬件抽象层(HAL)),轻量级IP TCP/IP 库 - NIOS II 版本,MicroC/OS-II实时操作系统(RTOS),Altera压缩文件系统。2.2.2 编辑器和编译器Altera NIOS II IDE提供了一个全功能的源代码编辑器和C/C+编译器。NIOS II IDE文本编辑器是一个成熟的全功能

17、源文件编辑器。其功能包括:语法高亮显示,代码辅助/代码协助完成,全面的搜索工具,文件管理,广泛的在线帮助主题和教程,引入辅助,快速定位,自动纠错,内置调试。NIOS II IDE为GCC编译器提供了一个图形化用户界面,NIOS II IDE编译环境使设计Altera的NIOS II处理器软件更容易,它提供了一个易用的按钮式流程,同时允许开发人员手工设置高级编译选项。NIOS II IDE编译环境自动地生成一个基于用户特定系统配置(SOPC Builder生成的PTF文件)的makefile。NIOS II IDE中编译/链接设置的任何改变都会自动映射到这个自动生成的makefile中。这些设置

18、可包括生成存储器初始化文件(MIF)的选项、闪存内容、仿真器初始化文件(DAT/HEX)以及profile总结文件的相关选项。2.2.3调试器 NIOS II IDE包含一个强大的、在GNU调试器基础之上的软件调试器GDB。该调试器提供了许多基本调试功能,以及一些在低成本处理器开发套件中不会经常用到的高级调试功能。NIOS II IDE调试器包含如下的基本调试功能:运行控制,调用堆栈查看,软件断点,反汇编代码查看,调试信息查看,指令集仿真器。除了上述基本调试功能之外,NIOS II IDE调试器还支持以下高级调试功能:硬件断点调试ROM或闪存中的代码,数据触发,指令跟踪。NIOS II IDE

19、调试器通过JTAG调试模块和目标硬件相连。另外,支持片外跟踪功能便于和第三方跟踪探测工具结合使用,如FS2公司提供的用于NIOS II处理器的in-target系统分析仪(ISA-NIOS)。调试信息查看使用户可以访问本地变量、寄存器、存储器、断点以及表达式赋值函数。图2-5是调试信息查看的一个实例,显示的是一个应用实例的寄存器。图2-5 调试信息查看寄存器显示2.2.4闪存编程器许多使用NIOS II处理器的设计都在单板上采用了闪存,可以用来存储FPGA配置数据或NIOS II编程数据。NIOS II IDE提供了一个方便的闪存编程方法。任何连接到FPGA的兼容通用闪存接口(CFI)的闪存器

20、件都可以通过NIOS II IDE闪存编程器来烧结。除CFI闪存之外,NIOS II IDE闪存编程器能够对连接到FPGA的任何Altera串行配置器件进行编程。闪存编程器管理多种数据,如下表2-1所示。表2-1 编程到闪存中的通用内容类型内容类型说明系统固定软件 烧结到闪存中的软件,用于NIOS II处理器复位时从闪存中导入启动程序。FPGA配置 如果使用一个配置控制器(例如用在Nios开发板中的配置控制器),FPGA能够在上电复位时从闪存获取配置数据。任意二进制数据开发人员想存储到闪存内的任何二进制数据,例如图形、音频等。NIOS II IDE闪存编程器已做了预先配置,能够用于NIOS I

21、I开发套件中的所有单板,而且能够轻易地引入到用户硬件中。3 课题方案选择3.1 频率测量方案选择在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率的测量就显得更为重要。测量频率的方法有多种,其中等精度测量频率具有精度高、使用方便、测量迅速,以及便于现测量、过程自动化等优点,是频率测量的重要手段之一。普通测频有两种方式:一是直接测频法,二是间接测频法。3.1.1 直接测频法即在一定闸门时间内测量被测信号的脉冲个数,下图3-1为直接测频法的原理图。图3-1 频率测量原理图按照频率的定义,即单位时间内周期信号的发生次数,图3-1中晶振提供了测量的

22、时间基准,分频后通过控制电路去开启与关闭时间闸门。闸门开启时,计数器开始计数,闸门关闭停止计数。若闸门开放时间为T,计数值为N,则被测频率为: f=N/T (3-1)用这种频率测量原理,对于频率较低的被测信号来说,存在着测量实时性和测量精度之间的矛盾。例如若被测信号为10Hz,精度要求为0.01%,则最短闸门时间为 T=N/f=1000s (3-2)这样的测量周期根本是不可能接受的,可见频率测量法不适用于低频信号的测量。3.1.2 间接测频法间接测频法即为周期测频法,周期测量原理和频率测量基本结构是一样的,只是把晶振和被测信号位置互换了一下,如图3-2所示。T=NTr/M.计数值N和被测信号的

23、周期成正比,N反映了M个信号周期的平均值利用周期测量法在一定信号频率范围内,通过调节分频系数M,可以较好地解决测量数度与实时性的矛盾。但是对于高频信号,周期法就需要很大的分频系数M,增加了硬件及软件的复杂性,不宜采用。由此可见,对于传统频率测量方法若是要达到高精度的要求,必须对被测频率分段测量,对于较低频率用周期测量,对较高频率用频率法测量。图3-2 周期测量原理图3.1.3 等精度测频等精度测频的方法具体是:采用频率准确的高频信号作为标准频率信号,保证测量的闸门时间为被测信号的整数倍,并在闸门时间内同时对标准信号脉冲和被测信号脉冲进行计数,实现整个频率测量范围内的测量精度相等,当标准信号频率

24、很高,闸门时间足够长时,可实现高精度频率测量。测量精度与闸门时间的关系分析如下。如图3-3所示,闸门控制信号(CL)给出高电平,此时并未开始进行测频计数,而要等到被测信号的上升沿到来时才开始对标准时钟信号和被测信号同时进行测频计数。当闸门控制信号经过Tc时间结束时,也要等到被测信号的上升沿到来时才同时停止对标准信号和被测信号的计数,并读取此时的计数值。测频计数的闸门时间为Td,标准时钟信号频率为fs,被测信号频率为fx,在Td时间内对标准时钟信号和被测信号的脉冲计数值分别为Ns和Nx,则被测信号的频率可由下式求得: fx=fsNx/Ns (3-3)图3-3 等精度测频原理示意图对标准信号所产生

25、的计时误差为: t=Td-NsTs (3-4)由于t最大为一个标准信号的周期,即tTs,因此: fx=Nx/(NsTs)=Nx/(Td-t) (3-5)而被测信号频率准确值fx0=Nx/Td,则频率测量的相对误差为: =(fx-fx0)/fx0=t/(Td-t) (3-6)当Td远远大于t时,频率测量的最大误差为: m=Ts/(Td-Ts)Ts/Td (3-7)由最后的表达式可知,当频率测量的最大误差由标准时钟信号的周期Ts和频率计数的闸门时间Td决定,Ts越小,Td越大,测量误差越小,即测量精度越高。在整个频率测量范围内,精度恒定,实现了等精度测量。当标准信号选取准确的50MHz信号源时,T

26、s=10ns,只要选取Td10ms,就可使测量的最大相对误差10-6,即达到百万分之一的测量精度。测量闸门时间Td的选取,除满足m式的最大测量误差外,还应保证大于一个被测信号周期Tx。测量频率的相对误差与被测信号频率的大小无关,仅与闸门时间和标准信号频率有关,即实现了整个测试频段的等精度测量。闸门时间越长,标准频率越高,测频的相对误差就越小。标准频率可由稳定度好、精度高的高频晶体振荡器产生,在保证测量精度不变的前提下,提高标准信号频率,可使闸门时间缩短,即提高测试速度。表3-1所列为在10MHz时闸门时间与最大允许误差的对应关系。表3-1 闸门与精度的关系闸门时间(s)精度0.0110-50.

27、110-6110-71010-83.2 基于单片机的测频方案采用单片机AT89C51作为系统控制核心单元,辅以适当的软、硬件资源完成以单片机为核心的等精度频率计的软硬件设计及系统实现。系统如图3-4所示。图3-4 基于单片机的频率测量计组成框图前置放大器完成信号放大、电平平移的任务,被测的交流信号D被放大、平移成脉冲直流信号E,再经74HC14施密特反相器整形成矩形脉冲。与门74LS08作为计数闸门,方波信号被送到与门的一个输入端,与门的另一个输入端连接1s门控信号,实际制作中连接AT89C51的P3.1。当P3.1脚为高电平时闸门打开,低电平时闸门关闭。P3.1脚电平的高低可通过指令加以控制

28、。闸门开时矩形脉冲送到74LS393进行。74LS393是双4位计数器,在这里接成级联方式,组成一个8位二进制计数器,同时分频比为256的分频器。采用74LS393的理由是:AT89C51内有2个16位的二进制加法计数器,一个用作定时器,另一个用作脉冲计数。16位二进制的最大计数为216-1=65535,不能满足精确测量的需要,虽然可以通过软件计数的方法来提高分辨率,但是AT89C51内置计数器的计数速率受500KHz(12MHz时钟)的限制,所以意义并不大。74LS393的最大计数速率可达35MHz,与AT89C51内的一个定时器组成24位的计数器,其最大计数值为224-1=16777215

29、,分辨率大大提高。本电路中没有采用十进制计数,因为AT89C51内置计数器只能进行二进制加法计数,计数结束后再进行二进制转十进制运算,然后将结果送到显示缓冲区进行显示。3.3 基于FPGA的测频方案在较高精度和高速测量的要求下,必须采用较高的标准频率信号;而单片机受本身时钟频率和若干指令运算的限制,测频速度较慢,无法满足高速、高精度的测频要求。采用高集成度、高速的FPGA芯片为实现高速、高精度的测频提供了保证。随着EDA(电子设计自动化)技术和微电子技术的进步,FPGA的时钟延迟可达到ns级,结合其并行工作方式,在超高速、实时测控方面有非常广阔的应用前景;并且FPGA具有高集成度、高可靠性,几

30、乎可将整个设计系统下载于同一芯片中,实现所谓片上系统,从而大大缩小其体积,具有可编程型和实现方案容易改动的特点,有利于产品的研制和后期升级。整个测频系统分为多个功能模块,如信号同步输入、放大整形、标准信号、FPGA芯片、液晶显示等模块。除标准信号、放大整形、液晶显示模块外,其他模块可集成于FPGA芯片中,并且各逻辑模块用硬件描述语言VHDL来描述其功能,然后通过EDA开发平台,如Quartus对设计文件自动地完成逻辑编译、逻辑化简、综合及优化、逻辑布局布线、逻辑仿真,最后对FPAG芯片进行编程,以实现系统的设计要求。其系统组成框图如图3-5所示。图3-5 基于FPGA的频率测量计的组成框图基于

31、单片机的频率测量计设计方案主要是以单片机为基础,原理简单,但由于单片机自身速度问题,测量的范围较小。基于FPGA的频率测量计设计方案主要是以FPGA为主,使用其中的Nios II核对采集的数据进行处理并由LCD输出测得的频率,以及实现对FPGA内部各个模块的控制。综上所述并根据设计要求,测频范围为1Hz至200MHz,单片机不能达到此要求,故采用FPGA来完成,并综合其他因素,决定采用基于FPGA的等精度频率测量方案。4 基于FPGA等精度频率计的单元模块设计基于FPGA等精度频率计设计的单元模块包括,放大整形模块、标准信号产生模块、FPGA芯片模块、液晶显示模块。4.1 放大整形模块设计放大

32、整形电路由2N2222(实际中可用常见的9018)与74F14等组成,其中2N2222组成放大电路将输入频率为Fx的周期信号如正弦波、三角波等进行放大。74F14施密特触发器对放大器的输出信号进行整形,使之成为矩形脉冲。施密特触发器是一种特殊的门电路,与普通的门电路不同,施密特触发器有两个阈值电压,分别称为正向阈值电压和负向阈值电压。在输入信号从低电平上升到高电平的过程中使电路状态发生变化的输入电压称为正向阈值电压,在输入信号从高电平下降到低电平的过程中使电路状态发生变化的输入电压称为负向阈值电压。利用施密特触发器状态转换过程中的正反馈作用,可以把边沿变化缓慢的周期性信号变换为边沿很陡的矩形脉冲信号。输入的信号只要幅度大于vt+,即可在施密特触发器的输出端得到同等频率的矩

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2