文档介绍:基于FPGA的等精度数字频率计
摘要:利用超高速硬件描述语言(VHDL)在现场可编程逻辑门阵列(FPGA)上编程实现的纯数字式等精度频率计,不但具有较高的测量精度,而且其测量精度不会随着被测信号频率的降低而下降。为了实现对任意信号进行频率测量,在前端输入加整形电路即可。
关键字: VHDL FPGA 等精度波形整形串行BCD码除法
Design of the Cymometer Based on FPGA
Abstract: The er that be implemented with using the VHDL (Very High Speed Integrated Hardware Description Language) to program into the FPGA (Field Programmable Gate Array )chip,it not only has high precision,but also its precision do not decrease with measured-frequency’ s ing lower. In order to measure any signal,it put a reshaping circuit at the front-end.
Keyword: VHDL FPGA Iso-precision Wave reshaping
Serial BCD division
目录
第一章总体设计……………………………………….…….3
第二章单元电路设计…………………………….………….5
第三章软件设计……………………………………………..5
第四章系统测试……………………………………………..6
第五章结论及参考文献………………………………….….6
第六章附录………………………………………………….6
基于传统测频原理的频率计的测量精度将随被测信号频率的下降而降低,在实用中有较大的局限性,而等精度频率计不但具有较高的测量精度,而且在整个频率区域能保持恒定的测试精度。
:
方案一:采用数字逻辑电路制作,用IC拼凑焊接实现。其特点是直接用现成的IC组合而成,简单方便,但由于使用的器件较多,连线复杂,体积大,功耗大,焊点和线路较多将使成品稳定度与精确度大打折扣。
方案二:采用可编程逻辑器件(CPLD)制作,利用EDA软件编程,下载烧制实现。将所有器件集成在一块芯片上,体积大大减小的同时还提高了稳定性,并且可应用EDA软件仿真,调试,每个设计人员可以充分利用软件代码,提高开发效率,缩短研发周期,降低研发成本。易于进行功能扩展,可以利用频率计的核心技术,改造成其它产品。实现方法灵活,调试方便,修改容易。
比较以上两种方案,易见采用后者更优。
:
方案一:完全按定义式F=N/T进行测量。被测信号Fx经放大整形形成时标ГX,晶振经分频形成时基TR。用时基TR开闸门,累计时标ГX的个数,则有公式可得Fx=1/ГX=N/TR。此方案为传统的测频方案,其测量精度将随被测信号频率的下降而降低。
方案二:对被信号的周期进行测量,再利用F=1/T(频率=1/周期)可得频率。测周期时,晶振FR经分频形成时标ГX,被测信号经放在整形形成时基TX控制闸门。闸门输出的计数脉冲N=ГX/TR,则TX=NГX。但当被测信号的周期较短时,会使精度大大下降。
方案三:等精度测频,按定义式F=N/T进行测量,但闸门时间随被测信号的频率变化而变化。如图1所示,被测信号Fx经放大整形形成时标ГX,将时标ГX经编程处理后形成时基TR。用时基TR开闸门,累计时标ГX的个数,则有公式可得Fx=1/ГX=N/TR。此方案闸门时间随被测信号的频率变化而变化,其测量精度将不会随着被测信号频率的下降而降低。
综上所述,选用第三种等精度测频方案。
FX
放大整形
闸门
计数显示
微处理器闸门时间计算
图1 测频方案方框图
测频方案中用到了定义式:F=N/T,即要用到除法运算。利用FPGA实现二进制除法运算,一种方法是采用逼近法,这种方法速度低、准确性不高。另一种方法是采取被除数与除数的倒数相乘的方法,即将除数作为寄存器的地址,其倒数的小数部分作为寄存器的内容,通过一次寄存器寻址来计算除数的倒数。这种方法在一个时钟周期内即可完成一个完整的除法运算,虽然速度较高,但对于多字节除法运算,不仅程序复杂,而且占用资源较多。根据频率计的实际情况,本设计采用串行除法运算,利用多个时钟周期完成一个完整的除法运算,从而兼顾了频率计对速度和资