CN116400141A - 一种基于fpga高精度测量信号占空比的实现方法 - Google Patents
一种基于fpga高精度测量信号占空比的实现方法 Download PDFInfo
- Publication number
- CN116400141A CN116400141A CN202310257164.1A CN202310257164A CN116400141A CN 116400141 A CN116400141 A CN 116400141A CN 202310257164 A CN202310257164 A CN 202310257164A CN 116400141 A CN116400141 A CN 116400141A
- Authority
- CN
- China
- Prior art keywords
- signal
- clock
- fpga
- duty ratio
- counters
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 238000012360 testing method Methods 0.000 claims abstract description 28
- 238000005259 measurement Methods 0.000 claims abstract description 21
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 claims description 6
- 102100040844 Dual specificity protein kinase CLK2 Human genes 0.000 claims description 6
- 102100040856 Dual specificity protein kinase CLK3 Human genes 0.000 claims description 6
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 claims description 6
- 101000749291 Homo sapiens Dual specificity protein kinase CLK2 Proteins 0.000 claims description 6
- 101000749304 Homo sapiens Dual specificity protein kinase CLK3 Proteins 0.000 claims description 6
- 230000010363 phase shift Effects 0.000 claims description 6
- 239000013078 crystal Substances 0.000 abstract description 7
- 238000005070 sampling Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R29/00—Arrangements for measuring or indicating electric quantities not covered by groups G01R19/00 - G01R27/00
- G01R29/02—Measuring characteristics of individual pulses, e.g. deviation from pulse flatness, rise time or duration
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Manipulation Of Pulses (AREA)
Abstract
本发明旨在提供在不改变测试板卡元器件规格的情况下对高于自身晶振频率的高频信号进行检测的一种基于FPGA高精度测量信号占空比的实现方法。本发明包括依次执行的:步骤S1、由FPGA测试模组基于原始时钟CLK0进行数字移相,依次分出若干路相位偏差相等的时钟信;步骤S2、通过若干路时钟信号一一对应的驱动若干寄存器对输入信号进行采集同步;步骤S3、将采集到的信号按照顺序依次拼接;步骤S4、通过两个计数器对拼接后的数据通过脉冲计数法进行计数,分别记录拼接后数据的高电平时间和低电平时间进行占空比计算。本发明应用于信号测量的技术领域。
Description
技术领域
本发明应用于信号测量的技术领域,特别涉及一种基于FPGA高精度测量信号占空比的实现方法。
背景技术
在信号测量领域中,经常要对数字信号的占空比、脉宽与频率等参数进行测量。其中,常用的测量方法是脉冲计数法,即使用一个远高于被测信号的高频时钟信号,在被测信号的高电平或低电平期间内对被测信号进行计数,测量完被测信号的完整周期后即可根据高电平计数值与低电平计数值计算出该被测信号的占空比。
由于FPGA测试板卡的晶振频率在硬件电路设计完成后就已经确定了,通过传统的脉冲计数法能够对比该晶振频率低的进行信号进行测试,但比该晶振频率高的信号则无法执行测试。另外,采用脉冲计数法进行检测时由于计数时钟常独立于待测信号,待测信号的边沿不可能直接落在计数时钟的边沿上,因此这种测量方式最大会有一个时钟周期的误差。故而导致现有的FPGA测试板卡设计完成后只能针对部分符合要求的信号,适应性差,且检测精度较低。如能研发出利用FPGA测试板卡的资源实现检测高于设计晶振频率的信号的方法,则能够大大提高传统检测板卡的适用范围。
发明内容
本发明所要解决的技术问题是克服现有技术的不足,提供了在不改变测试板卡元器件规格的情况下对高于自身晶振频率的高频信号进行检测的一种基于FPGA高精度测量信号占空比的实现方法,能够提高检测范围、降低测量误差。
本发明所采用的技术方案是:本发明包括以下步骤:
步骤S1、由FPGA测试模组基于原始时钟CLK0进行数字移相,依次分出若干路相位偏差相等的时钟信号CLK1、CLK2、CLK3、.....以及CLKN;
步骤S2、通过若干路时钟信号一一对应的驱动若干个寄存器对输入信号进行采集同步;
步骤S3、将每个寄存器采集到的数据按照CLK0、CLK1、CLK2、CLK3、.....以及CLKN的顺序依次拼接;
步骤S4、通过两个计数器对拼接后的数据通过脉冲计数法进行计数,分别记录拼接后数据的高电平时间和低电平时间的计数值并根据计数值进行占空比计算。
由上述方案可见,通过FPGA测试模组中的时钟单元对原始时钟进行数字移相,进而生成若干个不同相位的高频时钟,且所有时钟同时受一个使能信号驱动,实现基于同时工作的若干个时钟进行对待测信号的计数测量,进行数字移相相当于对原始时钟信号CLK0进行了倍频,变相提高了采样时钟的采样率,进而在提高采样精度的同时也提高了采样率。通过对若干个时钟信号采集的数据进行拼接处理,再由两个计数器对拼接数据进行计数,进而获得待测信号高低电平的计数值,实现根据计数值进行待测信号的占空比计算,且该方式无需改变测试组件的硬件,能够通过时钟资源来换取更高的测量精度与采样率,达到进行高于晶振频率的高频信号测试,进而大大提高现有测试组件的检测范围,同时提高测试精度。
一个优选方案是,所述FPGA测试模组包括混合模式时钟管理器,步骤S1中通过所述混合模式时钟管理器进行数字移相。
一个优选方案是,步骤S3中将拼接完成的数据存储至寄存器中。
一个优选方案是,步骤S4中同时使能两个计数器,使两个计数器基于原始时钟CLK0对所述寄存器中的拼接数据分别进行高电平时间和低电平时间的计数,获得计数值。
一个优选方案是,分析开始测试时使能信号到两个计数器之间的延时以及四个相位偏移时钟到两个计数器的延时,获得高频信号测量的误差分析结果。
由上述方案可见,去除使能端到待测信号同步寄存器的延时、使能端到计数器的延时以及四个相位偏移时钟信号到计数器的延时后,测量的最大误差降低到了原来一个时钟周期降低为四分之一时钟周期,进而实现提高检测精度的效果。
一个优选方案是,所述FPGA测试模组基于原始时钟CLK0进行数字移相分出三路时钟信号,原始时钟CLK0、时钟信号CLK1、时钟信号CLK2以及时钟信号CLK3依次相差90度。
附图说明
图1是本发明的生成不同相偏时钟信号框图;
图2是本发明通过数字移相测量待测信号电平宽度的示意图;
图3是本发明占空比计算的示意图。
具体实施方式
在本实施例中,本发明包括以下具体步骤:
步骤S1、FPGA测试模组包括混合模式时钟管理器MMCM/PLL,所述混合模式时钟管理器MMCM/PLL基于原始时钟CLK0进行数字移相,原始时钟CLK0与所述FPGA测试模组上的工作时钟相等均为125MHz;数字移相是指对于两个同频信号,选择其中一个信号作为基准信号,另一个信号相对于基准信号做超前或是滞后的移动,形成相位差;信号的相位由延时来决定,通过延时的长短即可确定两个信号间的相位关系;配置FPGA测试模组的IP核实现混合模式时钟管理器MMCM/PLL进而完成四路不同相位的时钟信号输出,各路信号间的延时与相位差由IP核来完成,可按照需求灵活设置,使用该种方式生成的的时钟信号较为稳定,信号的相差控制也较为精准,其中需要根据使用的板卡元器件的参数设置原始时钟CLK0;如图1所示,在本实施例中采用四路时钟信号进行测量,实际使用时可根据待测信号进行调整,所述混合模式时钟管理器MMCM/PLL分出三路同频的时钟信号CLK90、CLK180以及CLK270,每路时钟信号依次相差90度,其中时钟信号CLK90相对于原始时钟CLK0的限位偏差为90度,时钟信号CLK180相对于原始时钟CLK0的限位偏差为180度,时钟信号CLK270相对于原始时钟CLK0的限位偏差为270度,进行数字移相后相当于将原始的时钟信号进行了四倍频,采样率提高到了500MHz的同时,将测量精度也提高到了原来的四倍,不考虑使能端到待测信号同步寄存器的延时、使能端到计数器的延时以及四个相位偏移0度、90度、180度、270度的时钟信号到计数器的延时,测量的最大误差降低到了原来的四分之一;
步骤S2、如图2所示,通过四个时钟信号同时驱动四个寄存器对输入信号进行采集同步,获得四组采集数据;
步骤S3、将采集到的数据按照CLK0、CLK90、CLK180以及CLK270的时钟相位偏移顺序依次拼接获得数据组signal_high_r和数据组signal_low_r,并存储于一个4bit的寄存器中;
步骤S4、如图3所示,完成数据拼接处理后,同时使能驱动两个计数器基于原始时钟CLK0通过脉冲计数法对存储于寄存器中拼接后的数据进行计数,拼接后的数据同时为高时产生一个高电平脉冲宽度的计数值Pulse_cnt_high,拼接后的数据同时为低时产生一个低电平脉冲宽度的计数值Pulse_cnt_low,分别记录拼接后数据的高电平时间和低电平时间的计数值,通过对于待测信号的高低电平进行测量计数即可完成待测信号一个完整周期的测量,根据计数值进行占空比计算。
其中,占空比Duty Cycle的计算方式如下:
Duty Cycle=(Pulse_cnt_high)/(Pulse_cnt_high+Pulse_cnt_low)*100%
其中,四路时钟信号对待测信号的采集,以及两个计数器开始计数的触发都连接到同一使能端,由使能端控制开始或是停止测量。
由于所述FPGA测试模组使用了四个时钟信号对待测信号进行采样处理,需要对信号进行跨时钟域处理。
进行高频信号测量时,通过使用时序分析工具分析开始测试时使能信号到两个计数器之间的延时以及四个相位偏移时钟到两个计数器的延时,进而对步骤S3中获得的拼接数据进行误差分析,确认中拼接数据由于延时带来的误差,进而对步骤S4中的计数值进行修正。
虽然本发明的实施例是以实际方案来描述的,但是并不构成对本发明含义的限制,对于本领域的技术人员,根据本说明书对其实施方案的修改及与其他方案的组合都是显而易见的。
Claims (6)
1.一种基于FPGA高精度测量信号占空比的实现方法,其特征在于,它包括以下步骤:
步骤S1、由FPGA测试模组基于原始时钟CLK0进行数字移相,依次分出若干路相位偏差相等的时钟信号CLK1、CLK2、CLK3、.....以及CLKN;
步骤S2、通过若干路时钟信号一一对应的驱动若干个寄存器对输入信号进行采集同步;
步骤S3、将每个寄存器采集到的数据按照CLK0、CLK1、CLK2、CLK3、.....以及CLKN的顺序依次拼接;
步骤S4、通过两个计数器对拼接后的数据通过脉冲计数法进行计数,分别记录拼接后数据的高电平时间和低电平时间的计数值并根据计数值进行占空比计算。
2.根据权利要求1所述的一种基于FPGA高精度测量信号占空比的实现方法,其特征在于,所述FPGA测试模组包括混合模式时钟管理器,步骤S1中通过所述混合模式时钟管理器进行数字移相。
3.根据权利要求1所述的一种基于FPGA高精度测量信号占空比的实现方法,其特征在于,步骤S3中将拼接完成的数据存储至新的寄存器中。
4.根据权利要求3所述的一种基于FPGA高精度测量信号占空比的实现方法,其特征在于,步骤S4中同时使能两个计数器,使两个计数器基于原始时钟CLK0对所述寄存器中的拼接数据分别进行高电平时间和低电平时间的计数,获得计数值。
5.根据权利要求1所述的一种基于FPGA高精度测量信号占空比的实现方法,其特征在于,分析开始测试时使能信号到两个计数器之间的延时以及四个相位偏移时钟到两个计数器的延时,获得高频信号测量的误差分析结果。
6.根据权利要求1所述的一种基于FPGA高精度测量信号占空比的实现方法,其特征在于,所述FPGA测试模组基于原始时钟CLK0进行数字移相分出三路时钟信号,原始时钟CLK0、时钟信号CLK1、时钟信号CLK2以及时钟信号CLK3依次相差90度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310257164.1A CN116400141A (zh) | 2023-03-17 | 2023-03-17 | 一种基于fpga高精度测量信号占空比的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310257164.1A CN116400141A (zh) | 2023-03-17 | 2023-03-17 | 一种基于fpga高精度测量信号占空比的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116400141A true CN116400141A (zh) | 2023-07-07 |
Family
ID=87009469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310257164.1A Pending CN116400141A (zh) | 2023-03-17 | 2023-03-17 | 一种基于fpga高精度测量信号占空比的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116400141A (zh) |
-
2023
- 2023-03-17 CN CN202310257164.1A patent/CN116400141A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101019035B (zh) | 精确时间测量仪器和方法 | |
US7496137B2 (en) | Apparatus for measuring jitter and method of measuring jitter | |
KR101243627B1 (ko) | 위상 변이된 주기파형을 사용한 타임 측정 | |
CN104991440A (zh) | 高精度irig-b(ac)码解调方法及装置 | |
JP5254795B2 (ja) | デジタル信号にタイムスタンプを付与するためのストローブ技法 | |
CN102565673B (zh) | 基于fpga的高可靠脉冲计数测试系统 | |
CN105245203B (zh) | 高精度低速时钟占空比检测系统及方法 | |
CN102928677A (zh) | 一种纳米级脉冲信号采集方法 | |
US7382304B2 (en) | Sampling and measurement of periodic signals | |
US20030210028A1 (en) | Timing variation measurements | |
CN104297543A (zh) | 一种具有通道同步功能的混合示波器 | |
TWI451108B (zh) | 時序分析裝置及時序分析方法 | |
CN116400141A (zh) | 一种基于fpga高精度测量信号占空比的实现方法 | |
CN110579631B (zh) | 基于正弦拟合的捷变信号建立时间精确测量方法 | |
CN109656123B (zh) | 一种基于数学组合运算的高精度时差测量与产生方法 | |
US7209852B2 (en) | Circuit for producing a variable frequency clock signal having a high frequency low jitter pulse component | |
JP2000180484A (ja) | 高調波測定装置 | |
CN113328745A (zh) | 一种时间间隔测量系统及方法 | |
US6944099B1 (en) | Precise time period measurement | |
EP3133410A1 (en) | Improved resolution timing | |
CN102571041B (zh) | 检测电路延时和时序的方法及采用该方法校准延时的方法 | |
CN104714137A (zh) | 一种基于fpga的秒信号延迟时间测量系统和方法 | |
CN112816858B (zh) | 数字电路延时测试方法、测试电路和集成电路芯片 | |
Mennicke et al. | Dealing with Clock Domain Crossing in Multiphase Clock Time-to-Digital Converters using Multiplexer Synchronizers | |
EP3867652B1 (en) | Architecture of time sampling digital signal processing device based on an application of the frequency multiplying device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |