【标题】基于VHDL的数字频率计设计 【作者】刘松林
【关键词】频率计 VHDL FPGA 等精度 可编程逻辑器件 【指导老师】严文娟 【专业】物理学
【正文】 1 绪论
频率是单位时间内周期性重复、循环或振动的次数,常用 表示。随着电子技术的发展和普及,“频率”已成为大众所熟悉的物理量,而频率的测量在电子测量领域也尤为重要。对于频率的测量要求,取决于所测频率范围和测量任务,但大体来说要求频率的测量精度高,稳定性好和测量范围广。在频率的测量中,大体分为模拟法和计数法,数字频率计是电子计数法中的一种,具有测量精度高,显示醒目直观、测量迅捷,测量自动化等优点,在频率测量领域应用非常广泛。 1.1 课题研究背景
数字频率计是一种测量范围较广、实用性较强的通用型数字仪器。数字频率计的研究,特别是高精度、宽带数字频率计的研究是一项非常重要而急需的技术。
随着数字电路应用越来越广泛,传统的通用数字集成电路芯片已经很难满足系统功能的要求,系统可靠性也难以得到保证。此外,现代电子产品的生命周期都很短,一个电路可能要在很短的时间内作改进以满足新的功能要求,对于通用集成电路来说则意味着重新设计和重新布线。而可编程逻辑器件克服了上述缺点,它把通用集成电路通过编程集成到一块尺寸很小的硅片上,成倍缩小了电路的体积,同时由于走线短,减少了干扰,提高了系统的可靠性,而且 VHDL 语言易于掌握与使用,设计相当灵活,极大地缩短了产品的开发周期。 1.2 频率计的研究现状 随着社会和科技的发展,信息传输和处理的要求的提高,对频率的测量精度也提出了更高的要求,需要更高准确度的时频基准和更精密的测量技术。而频率测量所能达到的精度,主要取决于作为标准频率源的精度以及所使用的测量设备和测量方法。 频率测量技术的发展非常快。在频标方面,一方面是追求新的更高稳定度和准确度的新型频标。另一方面是提供便于工业、科研应用的商品化频标,如小铯钟、铷频标、新型高稳定度晶体振荡器等这些工作多在计量研究与工业部门进行。在频率测量的研究上,改进、创造新的测频原理、方法和仪器,以便以更高的精度、速度,自动进行测量和数据处理,并向多功能、小型化、高性价比发展是其主要的发展方向。
目前,国内外使用的测频的方法有很多,如直接测频法、内插法、游标法、时间—电压变化法、多周期同步法、频率倍增法、频差倍增法以及相位比较法等测频方法。
直接测频的方法较简单,但精度不高。内插法和游标法都是采用模拟的方法,而且多用于测量时间间隔,从而进行转换得出,虽然精度提高了,但是电路设计却很复杂。时间—电压变化法是利用电容的充放电时间进行测量,由于经过A/D转换,速度较慢,且抗干扰能力较弱。多周期同步法精度较高的一种,其方法:首先由控制线路给出闸门开启信号,此时,计数器并不开始计数, 而是等到被测信号的上升沿到来时,才真正开始计数。然后, 两组计数器
分别对被测信号和标准信号进行计数, 要等到被测信号下降沿到来时才真正结束计数, 完成一次测量过程。计数器的开闭与被测信号是完全同步的。为了进一步的提高精度,通常采用模拟内插法或游标法与多周期同步法结合使用,虽然精度有了进一步的提高,但始终未解决±1的计数误差,而且这些方法设备复杂,不利于推广。频率误差倍增法就是使用2个标称值一样的频标信号,通过多次倍频、混频、滤波及放大把2个频标信号的频差加以放大的方法。它的优点是把差频放大后,便于使用简单的仪器来获得高测量精度的测量结果。但用这种方法来提高测量精度是有限的。在结合前面多种方法的基础上做了改进,等精度测量不但有很高的测量精度,且在整个频率区域能保持恒定的测量精度[1]。
数字频率计的设计手段也是多种多样。大体分为利用数字电路设计、单片机设计、DSP进行设计和硬件描述语言的设计。采用数字电路的频率计设计因其电路极为复杂,抗干扰能力和稳定度较差,因此使用较少。采用单片机设计具有一定的优势,如以AT89C51单片机和MSP430F449 单片机的频率计设计,总体看来,这些具有结构简单,功能齐全,使用方便的特点[2]。但其在电路硬件级的描述上不足,使得其更适合做控制方面,结合硬件描述进行设计。采用TMS320F2812 DSP芯片为控制单元,在无需任何门控器件控制的情况下,利用DSP 2812丰富的软件资源可以实现等精度测量。它根据每个门闸时间内高频标准脉冲的个数与已知被测信号的个数,求得被测信号频率,再通过多次平均得到最终结果。但由于DSP定时器在计数时存在计数饱和的情况,因此在实现该等精度测量时存在上限,即当被测信号频率高于高频填充脉冲的频率时,该方法就不能实现等精度了[3]。采用硬件描述语言进行设计是目前最多也是最好的设计方法。 1.3 研究内容
由以上分析可知,不同的测频方法在不同的应用条件下是具有不同的优势的。目前,对于频率计的研究日趋成熟。在频率计设计方面,也出现了各种各样的方法,设计的技术水平也越来越高。但仍然存在着很多问题:一是电路的复杂性;二是测量的范围;三是测量的精度,这些都是频率计研究中一直都在努力解决的问题。
在本论文中,主要采用等精度测频法进行设计,从而消除了±1 的时标信号的计数误差,而采用复杂可编程逻辑器件,以EDA工具为开发手段、运用VHDL语言编程进行数字频率计的设计,将在使系统大大简化的同时,提高仪器整体的性能和可靠性[4],在数字频率计应用方面具有很大的优势。 1.4 VHDL简介
微电子技术的进步主要表现在大规模集成电路技术的发展。当今,集成电路正在不断向超大规模、极低功耗和超高速发展,在其设计功能上也在不断的加强,设计成本不断降低。EDA技术即电子设计自动化技术,其融合了多种现代电子技术和计算机技术,使得设计者可以利用软件的方式,以硬件描述语言和EDA软件来完成对系统硬件功能的实现。EDA技术为现代电子理论和设计的表达与实现提供了可能性[5]。 1.4.1 VHDL语言及其概述 硬件描述语言(HDL)是EDA技术的重要组成部分,常见的硬件描述语言有VHDL、Verilog HDL、ABEL、AHDL、System Verilog和SystemC。其中VHDL和Verilog是目前应用最多,支持最广的硬件描述语言。
VHDL的全称是VHSIC Hardware Description Language,即超高速集成电路硬件描述语言。VHDL语言诞生于1982 年,由美国国防部(DOD)创建。1987 年底,VHDL被IEEE 和美国国防部确认为标准硬件描述语言。1993 年,IEEE 对VHDL 进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL 的内容,并将其发展成为硬件描述语言的业界标准之一。VHDL作为一个规范语言和建模语言,在其发展中,人们发现其还可以作为电路系统的设计工具,这对电路自动设计是一个极大的推进,在电子设计领域得到了众多EDA公司的支
持。如今,VHDL作为IEEE 的工业标准硬件描述语言,已成为通用硬件描述语言[6]。 VHDL主要用于描述数字系统的结构、行为、功能和接口,具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。其具有与具体硬件电路无关和与设计平台无关的特性,有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化、结构化设计方面,表现了强大的生命力和应用潜力。因此,VHDL在支持各种模式的设计方法,如自顶向下与自底向上或混合方法方面,以及在面对当今许多电子产品生命周期的缩短,需要多次重新设计已融入最新技术、改变工艺等方面都表现出来良好的适应性。
VHDL主要有以下特点:(1)自顶向下(Top-Down)的设计方法;(2)多层次描述系统硬件功能的能力;(3)丰富的仿真语句和库函数。这使得采用VHDL进行设计,可以方便的进行描述,仿真和验证。
VHDL的主要应用是实现可编程器件或ASIC上电路或系统的综合。通常VHDL的开发设计流程如下图1-1所示。这是一个自顶向下的设计过程。从一个设计规范开始,首先我们要完成VHDL程序的编写,然后进行编译、优化和仿真来进行综合,最后进行布局布线,下载到FPGA/CPLD硬件上进行验证,实现所需功能,这就是VHDL设计的整个过程。 一个VHDL程序代码包括实体(ENTITY)、结构体(ARCHITECTURE)、配置(CONFIGURATION)、程序包(PACKAGE)、库(LIBRARY)等部分,其中配置和程序包是可选的。而一个完整的VHDL程序至少应该包含三个部分,即库、实体和结构体。其中库引用包含了用于设计的所有库,如IEEE、STD等;实体用于描述电路的外部接口信号;结构体描述了电路或系统的行为[7]。
在用VHDL进行电路优化设计时,还要求根据实际需要,合理地使用VHDL语句,并在设计全程中遵循最优化设计的基本原则,在电路结构设计和软件使用中寻找满足设计要求的最佳方案[8]。通过电路优化设计,可以使用规模更小的可编程逻辑芯片,从而降低系统成本。 1.4.2 软件开发平台Quartus Ⅱ VHDL的开发平台很多,各FPGA公司都开发了针对自己产品的VHDL工具,主要有Xilinx ISE、Altera QuartusⅡ,而在仿真方面最优秀的是ModelSim。Xilinx和Altera公司的综合工具都集成了Modelsim作为其仿真平台。Altera公司开发的Quartus Ⅱ设计软件为VHDL语言提供了完整的多平台设计环境,可以轻易满足特定设计的需要,拥有FPGA和CPLD设计的所有阶段的解决方案。本设计就以Altera公司的QuartusⅡ作为软件开发平台。 Quartus Ⅱ具有以下主要模块:
(1) 设计输入模块。Quartus Ⅱ中的工程是由所有设计文件和与设计有关的设置组成的。用户通过文本、原理图、状态图等方式输入,并结合其他菜单建立包括宏功能模块、参数化模块(LPM)函数和IP函数在内的设计。 (2) 综合。使用Quartus Ⅱ的Analysis&Synthesis模块分析设计文件和建立工程数据库。
(3) 仿真。Quartus Ⅱ可以仿真整个设计或设计的任何部分,可以进行功能仿真以测试设计的逻辑运算,也可以进行时序仿真以测试设计在目标器件中的逻辑运算和最差时序。 (4) 布局布线。在Quartus Ⅱ中使用Fitter执行布局布线。Fitter使用由
Analysis&S_ynthesis建立的数据库,将工程的逻辑和时序要求与器件的可用资源相匹配,将每个逻辑功能分配给最好的逻辑单元位置,进行布局和时序,并选择相应的互连路径和引脚分配。
(5) 时序分析。Quartus Ⅱ用户可以利用Timing Analyzer分析调试和验证设计的所有逻辑性能,并协助引导Fitter满足设计的时序分析要求。
Quartus Ⅱ还支持多种输入方式,如文本输入方式、原理图输入方式、状态图输入方式等[9]。VHDL内嵌的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,并提供了完善的用户图形界面设计方式,具有运行速度快,界面统一,功能集中,易学易用等特点,越来越受到数字系统设计者的欢迎。
2 频率测量方法的研究 测量频率的方法有很多,频率测量的准确度主要取决于所测量的频率范围以及被测对象的特点。而测量所能达到的精度,不仅仅取决于作为标准使用的频率源的精度,也取决于所使用的测量设备和测量方法。下面介绍集中常用的频率测量方法,分析他们的优缺点,从而提出本设计所采用的频率测量方法。 2.1 频率计的概述
频率是电子技术领域非常重要的一项参数,无论是在科学研究还是我们的日常生活中,频率参数随处可见。我们的研究需要频率参数,我们的生活也受频率影响,如广播通讯、CPU主频等等,都是与频率密切相关。对于频率测量的研究一直是电子技术研究中不可缺少的技术。 根据测量方法的原理,对测量频率的方法大体上可做如下分类[10]:
直读法又称利用无源网络频率特性测频法,它是利用电路的某种频率响应特性来测量频率,谐振测频法和电桥测频法是这类测量方法的典型代表:前者常用于低频段的测量,后者主要用于高频或微波频段的测量。谐振法的优点是体积小、重要轻、不要求电源等,目前仍获得广泛应用。比较法是利用标准频率与被测频率进行比较来测量频率,采用比较法测量频率,其准确度取决于标准频率的准确度。拍频法、示波器法以及差频法等均属此类方法。拍频法和示波器法主要用于低频段的测量,差频法则用于高频段的频率测量,它的显著优点是测试灵敏度高。计数法有电容充放电式和电子计数式两种。目前广泛使用的计数测频法是电子计数器,即本设计所研究的数字频率计。该方法是根据频率的定义,记下单位时间内周期信号的重复次数,因此称为电子计数器测频法。
常用数字频率测量方法有M法,T法和M/T法。M法是在给定的闸门时间内,测量被测信号的脉冲个数再进行换算得出被测信号的频率,其测量精度取决于闸门时间的准确度和被测信号频率。当被测信号频率较低时将产生较大误差,除非闸门时间取得很大。T法是对被信号
的周期进行测量, 并利用 (频率=1/周期) 得出频率[11]。其测量精度取决于被测信号的周期和计时精度,被测信号频率较高时, 对计时精度的要求就很高。 法具有以上2 种方法的优点,当他通过测量被测信号数个周期的计数次数,然后换算得出被测信号的频率,可兼顾低频与高频信号,提高了测量精度。但是,无论M 法和T 法,还是 法都存在±1的计数误差问题。这个问题成为限制测量精度提高的一个重要原因。本设计在研究总结上述方法的基础上,得出了一种新的频率测量方法,该方法利用同步测频、等精度的方法消除了限制测量精度提高的±1的误差问题,从而使频率测量的精度和性能大为改善。
数字频率计是电子设计、仪器仪表、资源勘测等应用领域不可缺少的测量仪器,不少物理量的测量,如振动、转速等的测量都涉及到或可以转化为频率的测量[12]。传统的数字频率计一般由分立元件组合而成,其测量范围、测量精度和测量速度均受到较大的限制。随着电子技术的发展,现代科学技术对频率的要求也越来越高,因此高精度的、高稳定性的数字频率计研究成为电子技术中非常重要的技术。 2.2 常用的数字频率测量方法
常用的测频方法可以分为两种,一个是直接测频法,一个是周期测频法,而其他的测频方法可以说都是从这两种方法中延伸出来的的。 2.2.1 直接测频法
直接测频法是最简单的,也是最基本的频率测量方法。直接测频法是严格按照频率的定义来进行测量,即在给定的闸门时间内测量被测信号的脉冲个数,进行换算得出被测信号的频率,如式2-1。 (2-1)
在不考虑触发误差时其测量相对误差公式为 (2-2)
其中, 为被测信号频率, 为闸门时间, 为标准频率。由上式(2-1)、(2-2)可知,直接频率测量的误差主要包括量化误差(或±1 误差, 即 ) 和标准频率误差 。在 一定时,闸门时间 选得越长,测量的准确度越高;而当 选定后, 越高,量化误差对结果的影响减小,测量准确度越高。但是,随着量化误差对结果影响的减小,标准频率误差将对测量结果产生影响,,并以其为极限,即测量准确度不可能优于标准频率误差[13]。直接频率测量的缺点是测量精度将随被测信号频率的变化而改变,并且在测量低频信号时的误差很大,甚至达到 。 2.2.2 周期测频法
周期测量法是通过测量被测信号周期,然后换算得出被测信号的频率。即根据频率与周期的关系得(2-3)式。
(2-3) 而我们知道电子计数器测量周期时 (2-4)
电子测量周期的相对误差公式如下 (2-5)
其中, 为标准信号周期, 为被测信号周期, 为标准信号频率,N为计数器计数值。可以看出,计数器测量周期时,其测量误差主要决定于量化误差,被测周期越大时误差越小,被测周期越小时误差越大。对应于频率,我们可以知道,这种测频方法在被测频率越高时,其误差也就越大,适合于低频的测量。 2.3 频率测量方案的研究
在频率计的设计中,一直存在和需要解决的问题主要有两个:一是频率测量的准确性问题,具体说来包含精度和稳定性两个问题;二是频率测量的范围问题,即测频带宽。为了解决这