CN103837741B - 基于fpga的等精度频率测试系统及其设计方法 - Google Patents
基于fpga的等精度频率测试系统及其设计方法 Download PDFInfo
- Publication number
- CN103837741B CN103837741B CN201410089878.7A CN201410089878A CN103837741B CN 103837741 B CN103837741 B CN 103837741B CN 201410089878 A CN201410089878 A CN 201410089878A CN 103837741 B CN103837741 B CN 103837741B
- Authority
- CN
- China
- Prior art keywords
- signal
- frequency
- enumerator
- latch
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Measuring Frequencies, Analyzing Spectra (AREA)
Abstract
本发明公开了一种基于FPGA的等精度频率测试系统及测试方法,该系统通过对外部标准时钟信号进行分频,得到预置闸门信号后,进一步得到实际闸门信号;对外部待测信号和标准时钟信号的上升沿进行计数,以便得到在实际闸门信号内外部待测信号和标准时钟信号的周期数;根据得到的周期数以及标准时钟信号的频率,计算得到被测信号的频率,最后将被测信号的频率送至数码管显示。该方法不仅可以获得很高的频率测量精度,而且可以使频率的测量精度基本相等。
Description
技术领域
本发明涉及频率测试系统和方法,尤其涉及基于FPGA的等精度频率测试系统及测试方法。
背景技术
在工控系统中,经常需要测量各种信号的频率。现有的频率计主要有两种测量方法:一种是直接测频法,该方法是将被测频率信号经脉冲整形电路处理后加到闸门的一个输入端,只有在闸门开通时间T内,被计数的脉冲送到十进制计数器进行计数。设计数器的值为N,则可得到被测信号频率为f=N/T,这种测量方法在低频段的相对误差较大,即在低频段不能满足设计精度的要求;另一种是组合测频法,指在高频时采用直接测频法,低频段时采用直接测量周期法测信号的周期,然后换算成频率。这种方法可以在一定程度上弥补直接测频法的不足,但是难以确定最佳分测点,且各种频率的待测信号的测量精度相差较大。
发明内容
本发明要解决的技术问题是:提供基于FPGA的等精度频率测试系统及测试方法,不仅可以获得很高的频率测量精度,而且可以使频率的测量精度基本相等。
一种基于FPGA的等精度频率测试方法,包括如下步骤:
(1)将标准时钟信号及待测信号直接输入FPGA芯片;
(2)标准时钟信号输入FPGA芯片后,经分频模块Ⅰ、分频模块Ⅱ分别得到预置闸门信号和二倍频的预置闸门信号;
(3)预置闸门信号输入D触发器的数据输入端,待测信号输入D触发器的时钟输入端,D触发器输出实际闸门信号;
(4)预置闸门信号和二倍频的预置闸门信号分别经非门后连接二输入与门的输入端,该与门的输出作为计数器Ⅰ和计数器Ⅱ的清零信号;实际闸门信号作为计数器Ⅰ和计数器Ⅱ的使能信号,标准时钟信号作为计数器Ⅰ的时钟输入信号,待测信号作为计数器Ⅱ的时钟输入信号;
(5)计数器Ⅰ将得到的在实际闸门信号高电平持续时间内标准时钟信号的周期数输送至锁存器Ⅰ;计数器Ⅱ将得到的在实际闸门信号高电平持续时间内待测信号的周期数输送至锁存器Ⅱ;
(6)测频计算模块接收来自锁存器Ⅰ和锁存器Ⅱ将输出值,计算得出待测信号的频率。
一种基于FPGA的等精度频率测试系统,包括基于FPGA的分频模块Ⅰ、分频模块Ⅱ、D触发器、计数器Ⅰ、计数器Ⅱ、锁存器Ⅰ、锁存器Ⅱ和测频计算模块,分频模块Ⅰ和分频模块Ⅱ的输入端均与标准时钟信号连接,分频模块Ⅰ输出的预置闸门信号和分频模块Ⅱ输出的二倍频的预置闸门信号分别经非门后连接二输入与门的输入端;所述预置闸门信号与D触发器的数据输入端连接,待测信号连接D触发器的时钟输入端,D触发器的输出端同时与计数器Ⅰ和计数器Ⅱ的使能端连接,计数器Ⅰ和计数器Ⅱ的清零端均和与门的输出端连接,计数器Ⅰ的时钟端与标准时钟信号连接,计数器Ⅱ的时钟端与待测信号连接;计数器Ⅰ和计数器Ⅱ的输出端分别连接锁存器Ⅰ和锁存器Ⅱ,锁存器Ⅰ和锁存器Ⅱ的输出端与测频计算模块相连,测频计算模块将计算出的频率输出至数码管。
所述计数器Ⅰ和计数器Ⅱ均为32位的计数器。所述数码管为9个8段数码管。计数器Ⅰ和计数器Ⅱ对输入时钟计数,输出32位的数字量;测频计算模块输入两路32位的数字量,计算得到频率,并将结果输出到段数码管上。
假定标准时钟信号频率为,待测信号频率为;一次实际闸门时间内,对标准时钟信号的计数值为,对被测信号的计数值为;那么可得被测信号频率。
下面计算以上测频方法的频率精度。
若所测频率值为,其真实值为,标准频率为,一次测量中,由于计数的起始和停止时间都是由该信号的上跳沿触发的,因此在实际闸门时间内对的计数无误差,在此时间内的计数最多相差一个脉冲,即,则。相对误差。设计上,由于等于0或1,则频率测量的相对误差为0或。如果为0,那么就要求实际闸门信号周期正好是标准时钟信号周期的整数倍,频率测量的相对误差为0;但绝大多数情况是实际闸门信号周期并不是标准时钟信号周期的整数倍,此时频率测量的相对误差为。另一方面,由于标准时钟频率很高,因此很大,趋近于0,所以这种测量方法不仅测量精度高,而且可以认为是一种等精度测量方法。
本发明带来的有益效果为:该系统不仅可以获得很高的频率测量精度,而且可以使频率的测量精度基本相等。采用此方法测试信号频率,相对测量误差与被测信号频率的高低无关,通过增大闸门时间或标准时钟频率可以增大,从而减少测量误差,提高测量精度。由于测量精度与实际闸门宽度和标准频率有关,与被测信号的频率基本无关,故在预置闸门和实际闸门时间相同而被测信号频率不同的情况下,等精度测量法的测量精度基本不变。
附图说明
图1是系统产生的各种信号的波形图;
图2是实施例中FPGA系统的电路图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细说明。
如图1、图2所示,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实例仅仅用以解释本发明,并不用于限制本发明。
我们以待测信号的频率为0.1Hz~99999999.9Hz进行说明,那么系统需要选用9个8段数码管;系统选用FPGA芯片EP2C8Q208C8为控制核心,FPGA芯片EP2C8Q208C8外接电源芯片,复位芯片,配置电路和EEPROM等芯片,完成FPGA最小系统的设计,使FPGA芯片EP2C8Q208C8可正常工作。
晶振电路产生50MHz的标准时钟信号,该信号通过一个I/O口输入FPGA芯片EP2C8Q208C8,外部待测信号通过一个I/O口输入FPGA芯片EP2C8Q208C8。
输入FPGA芯片EP2C8Q208C8的50MHz标准时钟信号首先经过分频模块Ⅰ,进行100000000分频,得到占空比为50%,频率为0.5Hz的时钟信号,作为预置闸门信号,该信号的高电平和低电平持续时间均为1s。
输入FPGA芯片EP2C8Q208C8的50MHz标准时钟信号首先经过分频模块Ⅱ,进行50000000分频,得到占空比为50%,频率为1Hz的时钟信号,该信号的高电平和低电平持续时间均为0.5s。
以上两个信号经过非门后输入二输入与门进行与操作,得到计数器Ⅰ和计数器Ⅱ所需的清零信号。
预置闸门信号连接D触发器的时钟输入端D,待测频率信号连接D触发器的时钟输入端CLK,D触发器的输出信号就作为实际闸门信号,该信号的高电平持续时间恰好是待测信号周期的整数倍。
实际闸门信号同时作为计数器Ⅰ和计数器Ⅱ的使能信号,上面产生的清零信号同时作为计数器Ⅰ和计数器Ⅱ的清零信号,标准时钟信号作为计数器Ⅰ的时钟输入信号,待测信号作为计数器Ⅱ的时钟输入信号。
计数器Ⅰ的输出端得到在实际闸门信号高电平持续时间内标准频率信号的周期数,这个数据存在±1的误差;该输出信号作为锁存器Ⅰ的输入。
计数器Ⅱ的输出端得到在实际闸门信号高电平持续时间内待测信号的周期数,这个数据不存在误差;该输出信号作为锁存器Ⅱ的输入。
测量模块输入锁存器Ⅰ和锁存器Ⅱ的输出值,并计算得到待测信号的频率,计算结果为9位,小数点后保留1位,即十分位、个位、十位、百位、千位、万位、十万位、百万位和千万位;每1位用8位数字两表示,每1位的8位数字两输出到对应的数码管的段引脚上。
9个数码管分别表示十分位、个位、十位、百位、千位、万位、十万位、百万位和千万位,均采用共阴极连接,共阴极引脚直接接地,每个数码管的8个段引脚接到来自FPGA的8位数字两信号后,直接显示该数字。
假定待测信号周期为10s,频率为0.1Hz,那么实际闸门时间为10s,对被测信号的计数值为=1;对标准时钟信号的计数值为,那么可得被测信号频率=0.1Hz,相对误差为0。
假定待测信号周期为0.011s,频率近似为90.9Hz,那么实际闸门时间为1.001s,对被测信号的计数值为=91;对标准时钟信号的计数值为,那么可得被测信号频率90.9Hz,相对误差为0。
假定待测信号周期为0.001s,频率为1000Hz,那么实际闸门时间为1s,对被测信号的计数值为=1000,对标准时钟信号的计数值为,可得被测信号频率=1000Hz,相对误差也为0。
假定待测信号周期为0.000000023s,频率近似为43378260.9Hz,那么实际闸门时间为1.000000003s,该值不是标准是时钟信号周期的整数倍。此时,对被测信号的计数值为=43478261,对标准时钟信号的计数值为,那么可得被测信号频率43478260.1Hz,则相对误差为,该值近似等于,微小的差别是由于计算中四佘五入的原因。
假定待测信号周期为0.000000010101s,那么实际闸门时间为1.000000003s,该值不是标准是时钟信号周期的整数倍。此时,对被测信号的计数值为=43478261,对标准时钟信号的计数值为,那么可得被测信号频率43478260.1Hz,由于实际被侧信号的频率为=43378260.9Hz, 则相对误差为,该值近似等于,微小的差别是由于计算中四佘五入的原因。
尽管图2中给出的硬件框图只使用了9个数码管,所显示的最大频率为99999999.9Hz。实际上该方法适合更高的频率测量,下面以100MHz进行说明。
假定待测信号周期为0.00000001s,频率为100000000Hz=100MHz,那么实际闸门时间为1s,对被测信号的计数值为=100000000,对标准时钟信号的计数值为,那么可得被测信号频率=100000000Hz=100MHz,相对误差也为0。
Claims (4)
1.基于FPGA的等精度频率测试方法,其特征在于,包括如下步骤:
(1)将标准时钟信号及待测信号直接输入FPGA芯片;
(2)标准时钟信号输入FPGA芯片后,经分频模块Ⅰ、分频模块Ⅱ分别得到预置闸门信号和二倍频的预置闸门信号;
(3)预置闸门信号输入D触发器的数据输入端,待测信号输入D触发器的时钟输入端,D触发器输出实际闸门信号;
(4)预置闸门信号和二倍频的预置闸门信号分别经非门后连接二输入与门的输入端,该与门的输出作为计数器Ⅰ和计数器Ⅱ的清零信号;实际闸门信号作为计数器Ⅰ和计数器Ⅱ的使能信号,标准时钟信号作为计数器Ⅰ的时钟输入信号,待测信号作为计数器Ⅱ的时钟输入信号;
(5)计数器Ⅰ将得到的在实际闸门信号高电平持续时间内标准时钟信号的周期数输送至锁存器Ⅰ;计数器Ⅱ将得到的在实际闸门信号高电平持续时间内待测信号的周期数输送至锁存器Ⅱ;
(6)测频计算模块接收来自锁存器Ⅰ和锁存器Ⅱ将输出值,计算得出待测信号的频率。
2.基于FPGA的等精度频率测试系统,其特征在于:包括基于FPGA的分频模块Ⅰ、分频模块Ⅱ、D触发器、计数器Ⅰ、计数器Ⅱ、锁存器Ⅰ、锁存器Ⅱ和测频计算模块,
分频模块Ⅰ和分频模块Ⅱ的输入端均与标准时钟信号连接,分频模块Ⅰ输出的预置闸门信号和分频模块Ⅱ输出的二倍频的预置闸门信号分别经非门后连接二输入与门的输入端;
所述预置闸门信号与D触发器的数据输入端连接,待测信号连接D触发器的时钟输入端,D触发器的输出端同时与计数器Ⅰ和计数器Ⅱ的使能端连接,计数器Ⅰ和计数器Ⅱ的清零端均和与门的输出端连接,计数器Ⅰ的时钟端与标准时钟信号连接,计数器Ⅱ的时钟端与待测信号连接;
计数器Ⅰ和计数器Ⅱ的输出端分别连接锁存器Ⅰ和锁存器Ⅱ,锁存器Ⅰ和锁存器Ⅱ的输出端与测频计算模块相连,测频计算模块将计算出的频率输出至数码管。
3.根据权利要求2所述的基于FPGA的等精度频率测试系统,其特征在于:所述计数器Ⅰ和计数器Ⅱ均为32位的计数器。
4.根据权利要求2所述的基于FPGA的等精度频率测试系统,其特征在于:所述数码管为9个8段数码管。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410089878.7A CN103837741B (zh) | 2014-03-12 | 2014-03-12 | 基于fpga的等精度频率测试系统及其设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410089878.7A CN103837741B (zh) | 2014-03-12 | 2014-03-12 | 基于fpga的等精度频率测试系统及其设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103837741A CN103837741A (zh) | 2014-06-04 |
CN103837741B true CN103837741B (zh) | 2016-08-17 |
Family
ID=50801446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410089878.7A Expired - Fee Related CN103837741B (zh) | 2014-03-12 | 2014-03-12 | 基于fpga的等精度频率测试系统及其设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103837741B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104714137A (zh) * | 2015-04-09 | 2015-06-17 | 广州北极瑞光电子科技有限公司 | 一种基于fpga的秒信号延迟时间测量系统和方法 |
CN104917520B (zh) * | 2015-05-15 | 2018-07-20 | 北京中创为南京量子通信技术有限公司 | 一种基于fpga故障检测的脉冲发生器 |
CN104914305B (zh) * | 2015-06-01 | 2017-09-22 | 三峡大学 | 一种基于最小二乘法的高精度频率估计方法 |
CN106610583A (zh) * | 2015-10-22 | 2017-05-03 | 沈阳新松机器人自动化股份有限公司 | 基于传感器的机器人末端位置获取方法 |
CN105486919B (zh) * | 2015-12-22 | 2018-09-14 | 南京信息工程大学 | 一种基于fpga的频率测量装置 |
CN105675981B (zh) * | 2016-03-18 | 2018-09-07 | 中国科学技术大学 | 一种基于fpga的频率计及频率测量方法 |
CN106443180B (zh) * | 2016-11-09 | 2023-03-07 | 优利德科技(中国)股份有限公司 | 测量闸门自适应的高精度频率测量方法及测量装置 |
CN106646282B (zh) * | 2017-01-03 | 2023-05-26 | 中国地质大学(武汉) | 一种基于量化时延法提高fid信号测频精度的方法及电路 |
CN106885998B (zh) * | 2017-03-08 | 2023-07-11 | 中国地质大学(武汉) | 一种提高铯光泵磁共振信号测频精度和速度的方法和电路 |
CN109683154B (zh) * | 2017-10-19 | 2020-12-18 | 北京万集科技股份有限公司 | 基于fpga的激光雷达自校准计时装置及方法 |
CN109597333B (zh) * | 2018-11-29 | 2023-09-19 | 成都凯天电子股份有限公司 | 多路大气数据压力信号f/d转换电路 |
CN110297198A (zh) * | 2019-06-28 | 2019-10-01 | 中国地质大学(武汉) | 一种用于铯光泵磁共振信号频率测量的系统和方法 |
CN110289891B (zh) * | 2019-07-05 | 2021-07-20 | 北京智芯微电子科技有限公司 | 身份识别标签芯片时钟频率的无线测试方法 |
CN110954745A (zh) * | 2019-11-14 | 2020-04-03 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于fpga的高精度频率采集方法及装置 |
CN111103456A (zh) * | 2019-12-30 | 2020-05-05 | 四川锐智电气科技有限公司 | 一种机车控制系统测频方法及装置 |
CN111175573A (zh) * | 2020-02-14 | 2020-05-19 | 深圳市科信通信技术股份有限公司 | 交流电压频率的检测方法、装置、设备及介质 |
CN114924119B (zh) * | 2022-07-21 | 2022-10-04 | 深圳市英特瑞半导体科技有限公司 | 时钟芯片及频率测量方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3922670A (en) * | 1972-04-03 | 1975-11-25 | Bendix Corp | Digital system providing signals representative of frequency variations from a nominal frequency |
US4080589A (en) * | 1975-06-02 | 1978-03-21 | Gte Automatic Electric Laboratories Incorporated | Error density detector |
CN102128979B (zh) * | 2010-12-30 | 2016-05-18 | 上海自动化仪表有限公司 | 等精度测频电路及其测频方法 |
CN102901871B (zh) * | 2012-08-30 | 2015-02-04 | 河南科技大学 | 信号频率检测系统及方法 |
CN203929885U (zh) * | 2014-03-12 | 2014-11-05 | 河南科技大学 | 基于fpga的等精度频率测试系统 |
-
2014
- 2014-03-12 CN CN201410089878.7A patent/CN103837741B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN103837741A (zh) | 2014-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103837741B (zh) | 基于fpga的等精度频率测试系统及其设计方法 | |
CN105021972B (zh) | 老化侦测电路及其方法 | |
CN103248356B (zh) | 一种基于采用锁相环脉冲插值技术的计数器及实现方法 | |
CN100468060C (zh) | 转台速率等精度测量方法和测量装置 | |
CN103487649B (zh) | 一种兼容连续波和脉冲调制载波频率测量的方法及装置 | |
CN1862263A (zh) | 一种快速频率测量系统及方法 | |
CN104344875B (zh) | 一种用于液体流量检定的脉冲计时计数装置及方法 | |
CN110579618B (zh) | 一种基于fpga的电机转速采集、解析装置和方法 | |
CN203929885U (zh) | 基于fpga的等精度频率测试系统 | |
CN110324026A (zh) | 一种芯片内部时钟源的时钟频率检测方法 | |
CN104483544B (zh) | 单通道计数器高精度频率/周期测量方法 | |
CN105699683A (zh) | 一种汽轮机转速测量方法及系统 | |
CN105204319A (zh) | 一种pet单事件发生时间的测量方法和装置 | |
CN104266732B (zh) | 双台位流量计检定装置脉冲计数精度补偿方法 | |
CN102901870A (zh) | 基于单片机的频率测试系统及使用上述系统的测试方法 | |
CN102457268B (zh) | 32位捕获寄存器的实现方法 | |
CN104034375A (zh) | 用于采用超声波进行流量测量的方法 | |
CN104215307A (zh) | 用于流量标准装置的双计时脉冲插值计数器及其实现方法 | |
CN104090830B (zh) | 用测周法测量频率时定时器时序交错问题的处理方法 | |
CN107621570A (zh) | 一种数字频率计 | |
CN109799450B (zh) | 一种逻辑电路延迟差异比较装置和方法 | |
US7984206B2 (en) | System for debugging throughput deficiency in an architecture using on-chip throughput computations | |
CN104833848B (zh) | 测量脉冲频率的方法及系统 | |
CN106443180B (zh) | 测量闸门自适应的高精度频率测量方法及测量装置 | |
Deepthi et al. | PSoC embedded design for ultra low digital frequency meter |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160817 Termination date: 20170312 |
|
CF01 | Termination of patent right due to non-payment of annual fee |