1、兰州交通大学毕业设计(论文)摘要频率是常用的物理量,工程中很多物理量的测量,如时间测量、速度控制等,都可转化为频率测量。此外,还经常遇到以频率为参数的测量信号,例如流量、转速等。所以频率测量方法的研究越来越受到重视。基于传统测频原理的频率计的测量精度将随被测信号频率的下降而降低, 在实用中有较大的局限性, 而等精度频率计不但具有较高的测量精度, 而且在整个频率区域能保持恒定的测试精度。本课题设计的等精度数字频率计是采用当今电子设计领域流行的EDA技术,以FPGA为核心,配合STC89C51单片机。同时,采用等精度测频原理,实现了0.01Hz-50MHz信号频率的等精度频率测量。此外,该系统还实
2、现测量周期、脉宽、占空比等功能。设计中用一块FPGA芯片EP2C5Q208C8完成各种时序逻辑控制、计数功能。在Ouartus II平台上,用VHDL语言编程完成FPGA的软件设计、编译、调试、仿真和下载。用STC89C51单片机作为系统的主控部件,实现整个电路的测试信号控制、数据运算处理、键盘扫描和控制数码管的显示输出。系统将单片机STC89C51的控制灵活性及FPGA芯片的现场可编程性相结合,不但大大缩短了开发研制周期,而且使本系统具有结构紧凑、体积小,可靠性高,测频范围宽、精度高等优点。关键词:频率计;EDA技术;FPGA;单片机AbstractFrequency is commonly
3、 used physical quantity, lots of measurement of physical quantity in the project, such as the measurement of time, the control of velocity, can be changed into the measurement of frequency. Besides, the measured signal with a frequency parameter, such as the rate of flow, the rotational speed, is of
4、ten encountered. So the research of the method of measuring frequency has become more and more significant in the real application.According to the principles of traditional frequency measurement , the measurement accuracy of frequency meter will decrease with the signal frequency decrease .but it h
5、as more limitations in the real application, equal precision frequency meter not only has high accuracy, but also maintains constant test accuracy in the whole frequency region .With the help of FPGA and cooperating with the single chip computer STC89C51,The digital frequency design in our program h
6、as realized the precision measurement of 0.01Hz-50MHz signal frequency by adopting the current EDA technique prevailing in the electronic designs and using the principle of multi-period synchrony frequency measurement. Besides, the system can complete the cycle, pulse width, duty cycle measurement f
7、unction . In this design, using an FPGA chip EP2C5Q208C8 completes a variety of temporal logic control and counting function. In the platform of Ouartus II, using VHDL language completes FPGA software design, compiler, debugging, simulation, and download. By use of the STC89C51 single chip computer
8、as the main controlling parts, the control of the tested signal, the scan of keyboard and the output display of LED can be realized. The system combines the control flexibility of STC89C51 with programmable performance of FPGA, consequently, not only can it shorten the period of the development and
9、research, but also it has the advantages of compact structure, little volume, high reliability, wide scope and high precision.Keywords:Frequency meter,EDA technique,FPGA, Single chip computer毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公
10、布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导
11、师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月
12、 日导师签名: 日期: 年 月 日目录摘要IAbstractII目录III1 绪论31.1 本课题的研究背景及意义31.2 本课题的主要内容32 系统设计的相关理论32.1 频率测量方法的研究32.1.1 常用测频方案32.1.2 等精度测频原理32.1.3 等精度测频误差分析32.2 单片机模块理论及知识32.2.1 MCS-51单片机结构简介32.2.2 Keil vision 3软件概述32.2.3 Proteus软件概述32.3 FPGA模块理论及知识32.3.1 FPGA原理概述32.3.2 Quartus II 软件概述32.3.3 VHDL语言简介及开发优点33 系统硬件电路设计
13、33.1 系统顶层电路组成33.2 被测信号放大整形电路设计33.3 单片机模块设计33.3.1 单片机最小系统33.3.2 键盘接口电路33.3.3 LED数码管显示电路33.4 FPGA模块电路设计33.4.1 基本单元电路33.4.2 测量与自检选择电路33.4.3 脉宽控制电路33.4.4 测频与测周期电路33.5 单片机与FPGA的相互控制电路34 系统软件设计34.1 单片机主程序设计34.2 复位自检程序设计34.3 键盘程序设计34.4 测频子程序设计34.5 测周期子程序设计34.6 测脉宽子程序设计34.7 测占空比子程序设计34.8 LED数码管显示子程序设计35 系统性
14、能分析35.1 测量范围分析35.2 测量精度分析35.3 被测信号幅值分析3结论3致谢3参考文献3附录一 FPGA程序3附录二 单片机程序3521 绪论1.1 本课题的研究背景及意义EDA(Electronic Design Automation电子设计自动化)代表了当今电子设计技术的最新发展方向,通过VHDL(Very High Speed Integrated Circuit Hardware Description Language)硬件描述语言的设计,用FPGA(FieldProgrammable Gate Array现场可编程门阵列)来实现小型电子设备的设计,是开发仪器仪表的主流。
15、据统计,目前发达国家在电子产品开发中EDA工具的利用率已达很高,而大部分的FPGA已采用HDL(Hardware Description Language硬件描述语言)设计。由于VHDL已成为IEEE标准,目前的EDA工具可以使ASIC系统的行为、功能、算法用VHDL描述直接生成FPGA器件,使设计者将精力集中于设计构思,提高了设计效率,同时也利于设计的分解、交流和重用。随着微电子技术和计算机技术的发展,可编程逻辑器件,EDA技术,SOPC等新概念和新技术层出不穷,新技术的应用迅速渗透到电子、通信、信息、汽车制造等领域,有力的推动了社会生产力的发展和社会信息化程度的提高。目前,市场上的频率计厂
16、家可分为三类:中国大陆厂家、中国台湾厂家、欧美厂家。其中,欧美频率计厂家所占有的市场份额最大。欧美频率计厂家主要有:Pendulum Instruments和Agilent科技。Pendulum Instruments公司是一家瑞典公司,总部位于瑞典首都斯德哥尔摩。Pendulum公司源于Philips公司的时间、频率部门,在时间频率测量领域具有40多年的研发生产经历。Pendulum Instruments公司常规频率计型号主要有:CNT-91、CNT-90、CNT-81、CNT-85。同时,Pendulum Instruments公司还推出铷钟时基频率计CNT-91R、CNT-85R。以及
17、微波频率计CNT-90XL(频率测量范围高达60G)。Agilent科技公司是一家美国公司,总部位于美国的加利福尼亚。Agilent科技公司成立于1939年,在电子测量领域也有着70多年的研发生产经历。Agilent科技公司的常规频率计信号主要有:53181A、53131A、53132A。同时,Agilent科技公司还推出微波频率计:53150A,53151A,53152A(频率测量范围最高可达46G)。基于FPGA的等精度频率计有运算速度快、系统较稳定、测量范围广等特点。其中主要应用到EDA(电子设计自动化)技术。伴随着集成电路技术的发展,EDA逐渐成为重要的设计手段。已经广泛应用于模拟与数
18、字电路系统等许多领域。EDA是一种实现电系统或电子产品自动化设计的技术,它与电子技术、微电子技术的发展密切相关,它吸收了计算机科学领域的大多数最新研究成果,以高性能的计算机为工作平台,促进了工程发展。本设计利用FPGA进行测频计数,单片机实施控制,实现频率计的设计过程。该频率计利用等精度的设计方法,克服了基于传统测频原理的频率计的测量精度随被测信号频率的下降而降低的缺点。等精度的测量方法不但具有较高的测量精度,而且在整个测频区域内保持恒定的测试精度。1.2 本课题的主要内容随着EDA(Electronics Design Automation)技术的发展和可编程逻辑器件的广泛应用,传统的自下而
19、上的数字电路设计方法、工具、器件已远远落后于当今技术的发展。基于EDA技术正在承担起越来越多的数字系统设计任务。本设计主要论述了利用FPGA进行测频计数,单片机实施控制,实现多功能频率计的过程,使得频率计具有了测量精度高、功能丰富、控制灵活等特点。该频率计依照等精度的测量原理,克服了传统计数器测频原理随被测信号频率下降而降低的缺点。等精度测量方法不但具有较高的精度,而且在整个频率域保持恒定的测量精度。该频率计利用FPGA来实现对频率、周期、脉宽、占空比的测量计数,由单片机实现对系统的控制、数据的显示、数据运算及数制转换等功能。本课题的主要工作包括以下几项内容:(1)简述了本课题研究的背景和意义
20、。(2)详细地论述了系统设计的相关理论,主要包括等精度频率计的测频原理、单片机和FPGA应用平台的介绍。(3)完成了频率计的系统硬件电路的设计,同时完成了基于数字硬件电路设计平台Quartus的FPGA硬件电路设计,FPGA模块用来完成高速计数器的功能;单片机完成测试控制、数据处理、键盘输入控制、数码管显示控制等功能,并对整个系统进行总体控制。(4)用C语言完成了系统中单片机控制的的软件设计。(5)对频率计的系统性能进行分析,通过分析得出,本设计的测频范围是0.01Hz50MHz,测量精度为百万分之一,被测信号的幅度为0.2mv-5v。 本文分5章介绍了基于FPGA的等精度数字频率计的设计原理
21、、设计步骤,性能分析等。2 系统设计的相关理论2.1 频率测量方法的研究2.1.1 常用测频方案在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率的测量就显得更为重要。测量频率的方法有多种,其中等精度测量频率具有精度高、使用方便、测量迅速,以及便于现测量、过程自动化等优点,是频率测量的重要手段之一。普通测频有两种方式:一是间接测频法,二是直接测频法。方案一:采用间接测频法,即周期法。通过测量待测信号的周期并求其倒数,需要有标准频率的信号,在待测信号的一个周期内,记录标准频率的周期数,这种方法的计数值会产生最大为1个脉冲误差,并且测试精度与计
22、数器中记录的数值有关,为了保证测试精度,测周期法仅适用于低频信号的测量。方案二:采用直接测频法。直接测频法就是在确定的闸门时间内,记录被测信号的脉冲个数。由于闸门时间通常不是待测信号的整数倍,这种方法的计数值也会产生最大为1个脉冲误差。进一步分析测量准确度:设待测信号脉冲周期为Tx,频率为Fx,当测量时间为T=1s时,测量准确度为=Tx/T=1/Fx。由此可知直接测频法的测量准确度与信号的频率有关:当待测信号频率较高时,测量准确度也较高,反之测量准确度也较低。因此直接测频法只适合测量频率较高的信号,不能满足在整个测量频段内的测量精度保持不变的要求。方案三:采用等精度频率测量法,测量精度保持恒定
23、,不随所测信号的变化而变化。在快速测量的要求下,要保证较高精度的测频,必须采用较高的标准频率信号。单片机受本身时钟频率和若干指令运算的限制,测频速度较慢,无法满足高速、高精度的测频要求;而采用高集成度、高速的现场可编程门阵列FPGA为实现高速、高精度的测频提供了保证。综上所述,本设计所采用的测频方法就是等精度频率测量法,下面我们将对等精度频率测量法做进一步介绍。2.1.2 等精度测频原理等精度测频方法是在直接测频方法的基础上发展起来的。它的闸门时间不是固定的值,而是被测信号周期的整数倍,即与被测信号同步,因此,避免了对被测信号计数所产生1个字误差,并且达到了在整个测试频段的等精度测量。其测频原
24、理如图2.1所示。在测量过程中,有两个计数器分别对标准信号和被测信号同时计数。首先给出闸门开启信号(预置闸门上升沿),此时计数器并不开始计数,而是等到被测信号的上升沿到来时,计数器才真正开始计数。然后预置闸门关闭信号(下降沿)到时,计数器并不立即停止计数,而是等到被测信号的上升沿到来时才结束计数,完成一次测量过程。可以看出,实际闸门时间t与预置闸门时间t1并不严格相等,但差值不超过被测信号的一个周期1。图2.1 等精度测频原理波形图等精度测频的实现方法可简化为图2.2所示。CNT1和CNT2是两个可控计数器,标准频率信号从CNT1的时钟输入端CLK输入;经整形后的被测信号从CNT2的时钟输入端
25、CLK输入。当预置门控信号为高电平时,经整形后的被测信号的上升沿通过D触发器的Q端同时启动CNT1和CNT2。CNT1、CNT2同时对标准频率信号和经整形后的被测信号进行计数,分别为NS与NX。当预置门信号为低电平的时候,随后而来的被测信号的上升沿将使两个计数器同时关闭,所测得的频率为(FS/NS)*NX。则等精度测量方法测量精度与预置门宽度和标准频率有关,与被测信号的频率无关。在预置门时间和常规测频闸门时间相同而被测信号频率不同的情况下,等精度测量法的测量精度不变。图2.2 等精度测频实现原理图2.1.3 等精度测频误差分析设在一次实际闸门时间t中计数器对被测信号的计数值为Nx,对标准信号的
26、计数值为Ns。标准信号的频率为fs,则被测信号的频率如式(2-1):fx=(Nx/Ns)fs (2-1)由式2-1可知,若忽略标频fs的误差,则等精度测频可能产生的相对误差如式(2-2): =(|fxe-fx|/fxe)100% (2-2)其中fxe为被测信号频率的准确值。在测量中,由于fx计数的起停时间都是由该信号的上升沿触发的,在闸门时间t内对fx的计数Nx无误差(t=NxTx);对fs的计数Ns最多相差一个数的误差,即|Ns|1,其测量频率如式(2-3):fxe=Nx/(Ns+Ns)fs (2-3)将式(2-1)和(2-3)代入式(2-2),并整理如式(2-4):=|Ns|/Ns1/Ns
27、=1/(tfs) (2-4)由上式可以看出,测量频率的相对误差与被测信号频率的大小无关,仅与闸门时间和标准信号频率有关,即实现了整个测试频段的等精度测量。闸门时间越长,标准频率越高,测频的相对误差就越小。标准频率可由稳定度好、精度高的高频率晶体振荡器产生,在保证测量精度不变的前提下,提高标准信号频率,可使闸门时间缩短,即提高测试速度2。2.2 单片机模块理论及知识2.2.1 MCS-51单片机结构简介MCS-51单片机分为51和52两个系列,包括80c51、87c51、80c52、87c52等典型产品型号,它们的结构基本相同,主要差别仅在片内存储器、计数器。中断源的配置有所不同,其中52子系列
28、在存储器容量、计数器和中断源数量都高于51子系列。考虑到本设计采用STC89C51,这里将以80c51为例进行介绍3。MCS-51单片机的内部结构包含了作为微型计算机必需的基本功能部件,如CPU、RAM、ROM、定时/计数器和可编程并行I/O口、可编程串行口等。这些功能部件通常都挂靠在单片机内部总线上,通过内部总线穿送数据信息和控制信息。其基本内部结构如图2.3所示。图2.3 MCS-51单片机内部基本结构80C51单片机内部资源主要包括:8位中央处理器;片内振荡器和时钟电路;4KB片内程序存储器(ROM);128字节的片内RAM;2个16位定时/计数器;可寻址64KB外部程序存储器和64KB
29、数据存储空间的控制电路;4个8位双向I/O口;1个全双工串行口;5个中断源;80C51单片机采用40引脚双列直插式封装形式,其引脚分布如图2.4所示。(1)电源及晶振引脚(4只)- VCC、GND、XTALL1、XTAL2;(2)控制引脚(4只)-PSEN、ALE、EA、RST;(3)并行I/O口引脚(32只)-P0.0-P0.7、P1.0-P1.7、P2.0-P2.7、P3.0-P3.7。图2.4 80c51单片机引脚图2.2.2 Keil vision 3软件概述Keil是德国Keil Software公司出品的单片机集成开发软件,该软件支持51单片机的所有变种。Keil 提供了包括C编译
30、器、宏汇编、连接器、库管理及一个功能强大的仿真调试器在内的完整开发方案,并通过一个集成开发环境(Vision 3)将这些部分组合在一起。Keil单片机集成开发软件可以运行在Windows98/NT/2000及XP等操作系统下。Vision 3软件界面包括4大组成部分,即菜单工具栏、项目管理窗口、文件窗口和输出窗口。其软件开发流程为:(1)创建一个项目,从器件库中选择目标器件,配置工具设置;(2)用C语言或汇编语言创建源程序;(3)用项目管理器生成应用;(4)修改源程序中的错误;(5)测试,连接应用。2.2.3 Proteus软件概述Proteus软件是英国Labcenter公司开发的电路及单片
31、机系统设计与仿真软件。Proteus软件可以实现数字电路、模拟电路及微控制器系统与外设的混合电路系统的电路仿真、软件仿真、系统协同仿真和PCB设计等功能。Proteus软件是目前唯一能对各种处理器进行实时仿真、调试与测试的EDA工具,真正实现了在没有目标原形时可以对系统进行调试、测试和验证。Proteus软件大大提高了企业的产品开发率,降低了开发风险。由于Proteus软件逼真、真实的协同仿真功能,它也特别适合于作为配合单片机课堂教学和实验的学习工具。Proteus软件提供了30多个元器件库、7000余种元器件。元器件涉及电阻、电容、二极管、三极管、变压器、继电器、各种放大器、各种激励源、各种
32、微控制器、各种门电路和各种终端等。Proteus软件还提供有交直流电压表、逻辑分析仪、示波器、定时/计数器和信号发生器等测试信号工具,用于电路测试。Proteus软件主要由两个设计平台组成:(1)ISIS(Intelligent Schematic Input System)原理图设计与仿真平台,它用于电路原理图的设计以及交互式仿真。(2)ARES(Advanced Routing And Editing Software)高级布线和编辑软件平台,它用于印制电路板的设计,并产生输出文件。2.3 FPGA模块理论及知识2.3.1 FPGA原理概述FPGA器件具有高密度、高速率、系列化、标准化、小
33、型化、多功能、低功耗、低成本,设计灵活方便,可无限次反复编程,并可现场模拟调试验证等特点。使用FPGA器件,可在较短地时间内完成一个电子系统地设计和制作,缩短了研制周期,达到快速上市和进一步降低成本的要求4。FPGA具有掩模可编程门阵列地通用结构,它由排成阵列的逻辑功能块组成,由可编程的互连资源连接这些逻辑功能块来实现不同的设计。FPGA由可配置逻辑块(CLB-Configurable Logic Block)、输入/输出模块(IOB-I/O Block)和互连资源(IR-Interconnect Resource)三部分组成。可配置逻辑块CLB是实现用户功能的基本单元,它们通常规则地排列成一
34、个阵列,散布于整个芯片;可编程输入/输出模块(IOB)主要完成芯片上逻辑与外部封装脚的接口,它通常排列在芯片的四周;可编程互连资源(IR)包括各种长度的连线线段和一些可编程连接开关, 它们将各个CLB之间或CLB、 IOB之间以及IOB之间连接起来,构成特定功能的电路。 (1)可配置逻辑块 (CLB)一般有三种结构形式: 查找表结构; 多路开关结构; 多级与非门结构。CLB是FPGA地主要组成部分,它主要由逻辑函数发生器、触发器、数据选择器等电路组成。(2)输入/输出模块(IOB)IOB主要由输入触发器、输入缓冲器和输出触发/锁存器、输出缓冲器组成。其结构如下图所示。每个IOB控制一个引脚,它
35、们可被配置为输入、输出或双向I/O功能。(3)可编程连线(IR)FPGA芯片内部单个CLB输入输出之间、各个CLB之间、 CLB和I/OB之间的连线由许多金属线段构成,这些金属线段带有可编程开关,通过自动布线实现所需功能的电路连接。 连线通路的数量与器件内部阵列的规模有关,阵列规模越大, 连线数量越多。2.3.2 Quartus II 软件概述Quartus II是Altera公司提供的FPGA/CPLD开发集成环境,Altera是世界上最大的可编程逻辑器件供应商之一。Quartus II在21世纪初推出,是Altera前一代FPGA/CPLD集成开发环境MAX+PLUSII的更新换代产品,其
36、界面友好,使用便捷。它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。Altera的Quartus II提供了完整的多平台设计环境,能满足各种特定设计的需要,也是单芯片可编程系统(SOPC)设计的综合性环境和SOPC开发的基本设计工具,并为Altera DSP开发包进行系统模型设计提供了集成组合环境。Quartus II设计工具完全支持VHDL、Verilog的设计流程,其内部嵌有VHDL、Verilog逻辑综合器。Quartus II也可利用第三方的综合工具。同样,Quartus II具备仿真功能,同时也支持第三方的仿真工具,如ModelSim。此外,Qua
37、rtus II与MATLAB和DSP Builder结合,可以进行基于FPGA的DSP系统开发和数字通信模块的开发。Quartus II包括模块化的编译器。编译器包括的功能模块有分析/综合器(Analsis & Synthesis)、适配器(Fitter)、装配器(Assembler)、时序分析器(Timing Analyzer)、设计辅助模块(Design Assistant)、EDA网表文件生成器(EDA Net list Writer)、编辑数据接口(Compiler Database Interface)等。可以通过选择Start Compilation来运行所有的编译器模块,也可以通
38、过选择Start单独运行各个模块。还可以通过选择Compiler Tool(Tools菜单),在Compiler Tool窗口中运行该模块来启动编译器模块。在Compiler Tool窗口中,可以打开该模块的设置文件或报告文件,或打开其他相关窗口。此外,Quartus II还包含许多十分有用的LPM(Library of Parameterized Modules)模块,它们是复杂或高级系统构建的重要组成部分,在SOPC设计中被大量使用,也可以与Quartus II普通设计文件一起使用。Altera提供的LPM函数均基于Altera器件的结构做了优化设计。在许多实用情况中,必须使用宏功能模块才
39、可以使用一些Altera特定器件的硬件功能,如各类片上存储器、DSP模块、LVDS驱动器、PLL以及SERDES和DDIO电路模块等。Quartus II编译器支持的硬件描述语言有VHDL(支持VHDL87及VHDL97标准)、Verilog HDL及AHDL(Altera HDL)。Quartus II支持层次化设计,可以在一个新的编辑输入环境中对使用不同输入设计方式完成的模块(元件)进行调用,从而解决了原理图与HDL混合输入设计的问题。在设计输入之后,Quartus II的编译器将给出设计输入的错误报告。可以使用Quartus II带有的RTL Viewer观察综合后的RTL图。Quart
40、us II作为目前CPLD/FPGA开发工具理想的综合、仿真软件,具有许多优良的特性。(1)继承了MAX+PLUSII的优点图形输入依然形象,图形符号与MAX+PLUSII一样符合数字电路的特点,大量74系列器件符号使能初学者在较短的时间里利用图形编辑设计出需要的电路。文本输入几乎和MAX+PLUSII相同,而且在文本的每一行都有行号,使用语言编写的电路清晰易读。低层编辑仍然采用Chipview方式,引脚排列位置映射了实际器件引脚,只要简单地鼠标拖放即可完成低层编辑。(2)支持的器件更多除了支持MAX3000、MAX7000、FLEX6000、FLEX10KE、ACEX1K等MAX+PLUSI
41、I已经支持的器件外,还支持PEX20K、APEX20KE、AREXII、EXCALIBUR-ARM、Mercury、Stratix等MAX+PLUSII下无法支持的大容量高性能的器件。(3)增加了网络编辑功能QuartusII支持一个工作组环境下的设计要求,包括支持基于Internet的协作设计,与Cadence、ExemplarLogi、MentorGraphics、Synopsys和Synplicity等EDA供应商的开发工具相兼容。(4)提升了调试能力QuartusII增加了一个新的快速适配编译选项,可保留最佳性能的设置,加快了编译过程,可缩短50%的编译时间,对设计性能的影响小。(5)
42、不足之处软件结构庞大,使用复杂,不如MAX+PLUSII简单、易学易用。2.3.3 VHDL语言简介及开发优点VHDL的英文名全称是Very-High-Speed Integrated Circuit Hardware Description Language,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言 。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了自己的VHDL设计环境,或宣布自
43、己的设计工具可以和VHDL接口修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。VHDL主要用于描述数字系统的结构,行为,功能和接口,非常适用于可编程逻辑芯片的应用设计。与其它的HDL相比,VHDL具有更强的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。就目前流行的
44、EDA工具和VHDL综合器而言,将基于抽象的行为描述风格的VHDL程序综合成为具体的FPGA和CPLD等器件的网表文件已不成问题。VHDL语言与其它HDL语言相比有一些自己的特色,下面作一简要说明。(1)设计功能强、方法灵活、支持广泛。VDHL语言可以支持自上而下 ( Top_Down)的设计方法,它具有功能强大的语言结构,可用简洁明确的代码描述来进行复杂控制逻辑的设计,可以支持同步电路、异步电路、以及其它随机电路的设计。其范围之广是其它HDL语言所不能比拟的。此外,VHDL语言可以自定义数据类型,这也给编程人员带来了较大的自由和方便。(2)系统硬件描述能力强。VHDL语言具有多层次的设计描述
45、功能,可以从系统的数学模型直到门级电路,支持设计库和可重复使用的组件生成,它支持阶层设计且提供模块设计的创建。VHDL语言能进行系统级的硬件描述是它的一个最突出的优点。(3)可以进行与工艺无关编程。VHDL语言设计系统硬件时,没有嵌入描述与工艺相关的信息,不会因为工艺变化而使描述过时。与工艺技术有关的参数可通过VHDL提供的类属加以描述,工艺改变时,只需修改相应程序中的类属参数即可。(4)VHDL语言标准、规范,易于共享和复用。VHDL既是IEEE承认的标准,故VHDL的设计描述可以被不同的EDA设计工具所支持。从一个仿真工具移植到另一个仿真工具,从一个综合工具移植到另一个综合工具,从一个工作
46、平台移植到另一个工作平台去执行。这意味着同一个VHDL设计描述可以在不同的设计项目中采用,方便了设计成果的设计和交流。另外,VHDL语言的语法比较规范,从而其可读性比较好,给阅读和使用都带来了极大的好处。(5)方便ASIC移植。VHDL语言的效率之一,就是如果你的设计是被综合到一个CPLD或FPGA的话,则可以使你设计的产品以最快速度上市。当产品的产量达到相当的数量时,采用VHDL进行的设计可以很容易转成用专用集成电路(ASIC)来实现,仅仅需要更换不同的库重新进行综合。由于VHDL是一个成熟的定义型语言,可以确保ASIC厂商交付优良质量的器件产品。此外,由于工艺技术的进步,需要采用更先进的工艺时,仍可以采用原来的VHDL代码。3 系统硬件电路设计3.1 系统顶层电路组成本设计的核心部件为STC89C51单片机和现场可编程芯片FPGA,所有信号包括标准频率信号,被测信号,自检信号均可在STC89C51单片机的控制下送到FPGA芯片中,单片机将每次测试结果读入内存RAM中,经运算处理后,由RXD口以BCD码的形式送入数码管显示电路进行显示。整个系统在硬件上可分为标准频率信号模块、被测信号放大整形电路模块、单片机模块和FPGA模块。系统的总体设计框图如图3.1所示。键盘控制命令直连单片机,快速的实现测频、测周期、测脉宽、测占空比及复位等功能的控制。该设计以FPGA开发板