CN105068405B - Fpga实现的单通道信号脉宽高精度测量方法和装置 - Google Patents
Fpga实现的单通道信号脉宽高精度测量方法和装置 Download PDFInfo
- Publication number
- CN105068405B CN105068405B CN201510547317.1A CN201510547317A CN105068405B CN 105068405 B CN105068405 B CN 105068405B CN 201510547317 A CN201510547317 A CN 201510547317A CN 105068405 B CN105068405 B CN 105068405B
- Authority
- CN
- China
- Prior art keywords
- status information
- rising edge
- fpga
- signal
- delay chain
- 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.)
- Active
Links
Landscapes
- Tests Of Electronic Circuits (AREA)
- Measurement Of Unknown Time Intervals (AREA)
Abstract
本发明公开了一种FPGA实现的单通道信号脉宽高精度测量方法和装置,通过FPGA内至少一个进位连线资源构成延迟链,每个进位连线资源有多个抽头,部分抽头输出测量信号的上升沿在所述延迟链上的状态信息,部分抽头输出为测量信号的下降沿在所述延迟链上的状态信息;使用多路选择器分别选择所述上升沿的状态信息和下降沿的状态信息,使之分别输入译码单元进行译码。本发明具有测量精度高、资源利用少、通用性强的优点。
Description
技术领域
本发明属于数据采集、高精度时间测量等技术领域,具体涉及一种FPGA实现的单通道信号脉宽高精度测量方法和装置,其可应用于粒子物理实验、核物理实验等。
背景技术
时间测量在科学研究、工业应用、通信、军事等领域有着极其广泛的应用,比如原子激发态寿命表现为相继两个信号的时间间隔;中子的能量表现为中子飞越一定距离所需的飞行时间;粒子入射的空间位置可表现为位置灵敏探测器输出信号的时间信息;入射粒子的时间和位置常要通过信号的时间进行处理;此外还有包括通信、授时、军事等领域,都需要精确的时间测量方法和技术。
时间间隔测量的基本原理就是将某个称为“起始”的脉冲信号作为时间测量的基准点,然后测量下一个称为“停止”的脉冲信号与该“起始”信号之间的时间差。能够准确确定粒子入射时间的技术称为定时(如前沿定时、过零定时、恒比定时等),利用该技术可以准确确定信号出现的物理时刻,从而使得精确的时间测量成为可能。一般来讲,利用前沿定时技术,我们可以快速精确地定位出脉冲信号的时刻,“起始”、“停止”信号之间的时间差即为脉冲间隔。然而,很多场合,我们需要对信号的脉宽进行测量,例如,为了修正因“时间游走”效应对前沿定时所带来的影响,可根据信号的电荷量对测量结果进行补偿,而信号的电荷量与该信号脉冲的宽度(前沿、后沿之间的时间间隔)成比例,因而需要进行脉冲宽度的测量,而当脉冲宽度变窄时,测量难度将急剧加大。此外,在如激光测距、测量及仪器仪表等领域,对于信号脉宽的精确测量都有着广泛的需求。
用于时间测量(TDC)的技术有很多种,如游标卡尺法、二级延时链、时钟分相法、时间内插法等,具体实现时可以利用专用集成电路ASIC或者FPGA来实现。通常情况下,在进行时间测量时,会设置一个时间0点,被测信号的前沿与该时间零点的间隔即为时间测量值。传统的时间间隔测量的对象是两个待测信号之间的时间差,因而只需要测量两个待测信号前沿的相对时间差即可。当需要进行单个信号脉宽测量时,尤其是窄脉冲信号,除了信号前沿之外,还需要测量信号后沿的时间值,二者之差即代表脉宽值。因此,前沿测量是时间测量的基础。对于后沿来说,最简单直接的办法就是经过一个反相器,将待测信号进行反向处理,则信号的后沿就会转变成前沿,利用与前沿测量同样的技术和电路即可获得后沿信息。然而,此种方法需要两倍的资源消耗才能获得信号脉宽信息。在只进行信号前沿测量应用中,另外一半的进行后沿测量的电子学通道则完全被浪费。在时间测量通道数要求较高的场合下,这显然大大降低了时间测量的集成度,并提高了实现成本。
发明内容
本发明旨在提出一种新方法,在FPGA上实现仅利用一个电子学通道上同时进行信号前、后沿的测量,也即单通道信号脉宽高精度测量的方法。
为解决上述技术问题,本发明提出一种利用FPGA实现的信号脉宽高精度测量方法和装置。本发明的方法包括如下步骤:通过FPGA内至少一个进位连线资源构成延迟链,每个进位连线资源有多个抽头,部分抽头输出测量信号的上升沿在所述延迟链上的状态信息,部分抽头输出为测量信号的下降沿在所述延迟链上的状态信息;使用多路选择器分别选择所述上升沿的状态信息和下降沿的状态信息,使之分别输入译码单元进行译码。
根据本发明的具体实施方式,所述多路选择器在选择所述上升沿的状态信息和下降沿的状态信息之前,对来自延迟链的状态信息进行识别,以确定其为上升沿的状态信息还是下降沿的状态信息。
根据本发明的具体实施方式,所述FPGA是Xilinx FPGA,进位连线资源为CARRY4,每个CARRY4有三个抽头输出CO0、O2和CO3,其中CO0和CO3的输出为上升沿在延迟链上的状态信息;O2的输出为下降沿在延迟链上的状态信息。
根据本发明的具体实施方式,所述多路选择器为2∶1多路选择器。
本发明还提出一种FPGA实现的单通道信号脉宽高精度测量装置,包括粗计数单元、细时间测量单元和译码单元,所述细时间测量单元包括延迟链、D触发器和多路选择器,其中,所述延迟链有多个抽头,部分抽头输出测量信号的上升沿在所述延迟链上的状态信息,部分抽头输出为测量信号的下降沿在所述延迟链上的状态信息;所述D触发器用于对所述状态信息进行锁存;所述多路选择器分别选择所述上升沿的状态信息和下降沿的状态信息,使之分别输入所述译码单元。
根据本发明的具体实施方式,所述细时间测量单元还包括探测电路,其连接于所述多路选择器的选择控制端,用于识别所述上升沿的状态信息和下降沿的状态信息,以对多路选择器的输出进行控制。
根据本发明的具体实施方式,所述探测电路包括一个反相器、一个D触发器和一个两输入与门,其中,所述与门的一个输入端连接于D触发器的输出端,另一端连接输入信号;所述D触发器的一个输入端连接所述反相器的输出端,另一输入端连接时钟信号;所述反相器的输入端为所述输入信号。
本发明具有结构简单、成本低、精度高等优点,能够在单个电子学通道上同时实现信号前、后沿时间的高精度测量,从而获得信号脉宽的大小。其优点包括:
一、使得单通道上实现信号脉宽测量成为可能,极大地提高了***时间测量的通道数和集成度。
二、能够实现对信号前、后沿的自动识别和测量,大大降低了该方法应用、实现的复杂度和成本。
三、本发明基于FPGA实现,具有普适性和易用性,能够适用各种对信号脉宽进行高精度测量的应用领域,并能更好地与数据读出相融合,具有广泛的应用前景。
附图说明
图1是Xilinx FPGA中Slice资源底层具体结构图;
图2是本发明的信号前、后沿测量原理图;
图3是本发明的单通道底层延迟链实现示意图;
图4是本发明的基于“粗细”结构TDC的单通道脉宽测量结构图;
图5是本发明的信号沿变探测电路。
具体实施方式
本发明提出在FPGA中的实现单通道高精度信号脉宽的测量方法,其基本思想是在单个电子学通道上同时进行信号前沿、后沿的时间测量。现代基于FPGA的时间测量技术,为了提高精度,常使用时间内插的方法。由于FPGA内部资源的特性,其芯片底层的进位链被用来作为内插延迟链的基本单元。因此,要进行单通道上信号脉宽的高精度测量,首先要解决的就是延迟链的构建方式。
图1表示的是Xilinx Virtex-5及之后系列的FPGA中Slice资源的内部具体结构,虚线框内是包含有进位链的CARRY4原语模块。它分为4个bit(CO0~CO3,O0~O3),每个bit含有一个多路选择器(MUX)和一个异或门(XOR),MUX的输出对应于CO端,XOR的输出对应于O端;它共有9个端口,分别是Cout、CO0~CO3和O0~O3,其中CO和O输出端后面对应有一个D触发器,可用于锁存CO或O输出的数据,但是在同一时间只有一个输入(CO或O)可以被D触发器锁存,这可以由一个多路选择器进行选择;而Cout可以输入到同列的下个邻近Slice单元中的CARRY4的Cin端,从而构成一条延迟链。
图2显示的是信号前、后沿测量的原理,当信号的上升沿到来时,各个CO输出由‘0’跳变到‘1’;而为了构成延迟连,MUX的选择端口必须置为‘1’,将Cin通道导通,这样XOR门的一个固定输入为‘1’,其另一输入端与Cin相连,当信号的下降沿到来时,各个O输出端也将由‘0’跳变到‘1’。基于此可用CO输出来探测信号上升沿,并对其时间进行测量,用O输出来探测信号下降沿,并测量后沿时间。并且由于前、后沿的延迟链的状态跳变是一致的,所以两者的译码部分可以共用,这样可以完全用一个TDC通道实现前沿时间测量和后沿时间测量。
为了保证上升沿时间的测量精度,仍将CARRY4中的进位线资源平均分为两部分,分别构成延迟时间更小的延迟单元,即用从Cin到CO0作为一个延迟单元,用CO0到CO3作为一个延迟单元,从而构成上升沿时间“细”测量所需的延迟链;由于剩余的两个bit(O1和O2)不能将CARRY4平均分为两半,所以将Cin到O2作为一个延迟单元,O2到下一个相邻Slice的O2作为一个延迟单元,这样就构成了下降沿时间“细”测量所需的延迟链。如此看,后沿的延迟单元以整个CARRY4作为一个延迟单元,其每个延迟单元的延迟时间为上升沿延迟单元的延迟时间的两倍,时间测量精度将稍差于上升沿时间测量。图3是单通道底层延迟链的实现结构图。
依据本发明专利所提的基本方法,很容易在基于时间内插技术TDC的延迟链上进行改进,从而使其满足单通道信号脉宽的高精度测量能力。图4为基于“粗细”结构TDC的单通道脉宽测量结构,主要由粗计数单元、细时间测量单元和译码单元构成。下面详细介绍各个部分的电路实现。粗计数单元由一个高频(250MHz)二进制计数器构成,以保证时间测量的大动态范围,且前、后沿共用,以保证时间测量起点一致;细时间测量单元则由延迟链和D触发器构成时间内插来实现,以保证时间的精密测量。
延迟链由Xilinx FPGA内进位连线资源CARRY4构成,如图3所示。每个CARRY4有三个抽头输出(CO0、O2和CO3)并送入D触发器进行锁存,其中CO0和CO3的输出为上升沿在延迟链上的状态信息;O2的输出为下降沿在延迟链上的状态信息。这两种状态信息被送入后续的译码单元进行译码,得到各自沿的“细”时间数据。由于译码单元一次只能处理一个状态码,所以两者需要由一个2∶1选择器进行选择后决定哪种状态信息码应该送入译码单元。
为了能够准确选择出上升沿或下降沿的状态信息码,以便将其送入译码单元进行译码,需要在电路中加入了能够识别上升沿和下降沿的探测电路,如图4中的LD(上升沿检测)和TD(下降沿检测)的单元,其具体结构和时序如图5所示,该探测电路主要由一个反相器、一个D触发器和一个两输入与门构成。与门的一个输入端连接于D触发器的输出端,另一端连接输入信号,D触发器的一个输入端连接所述反相器的输出端,另一输入端连接时钟信号,所述反相器的输入端为所述输入信号。当输入信号由低到高的变化时,探测电路会产生一个宽度为一个时钟周期的脉冲信号。然而,当延迟链中有待测信号送入时,上升沿和下降沿中第一个D触发器的输出都会产生一个由低到高的跳变,这样两个探测单元都会输出一个脉冲信号,而且两者输出脉冲信号的时间与待测输入信号上升沿和下降沿的前后时间关系有关。如此可以用这两个探测输出信号作为2∶1多路选择器的选择控制端,来准确控制选择器的输出信号。与此同时,另外一个相同的2∶1多路选择器电路用来选择两个探测使能信号,经过一个D触发器延迟之后,得到一个锁存信号,用作锁存相对应的译码结果,然后将其存入FIFO中。
本发明申请利用Xilinx系列的FPGA实现单通道上信号脉宽的高精度测量,具有如下优点:
(1)测量精度高
本发明专利所提方法,基于时间内插技术,在利用Xilinx FPGA内部Slice资源的进位链构成“细”时间测量的同时,分别通过MUX(多路器)和XOR(异或门)来实现信号上升沿、下降沿的测量,测量精度高,其上升沿测量精度达到14ps左右,脉宽测量精度好于60ps(脉宽范围7~100ns)。
(2)资源利用少
本发明专利所提方法第二个显著优势是资源利用率低,可以真正实现在单个电子学通道上完成信号前、后沿的时间测量,即脉宽测量,并且具有极高的测量精度,这大大地提高了本方法的实际应用集成度,降低应用成本。
(3)通用性强
本发明专利所提方法第三个优点是通用性强。本方法是对常规时间内插技术所需要的延迟链进行改进,使其能够支持对于信号后沿的时间测量。因而,本方法适用于一切使用延迟链时间内插技术的时间测量应用,并能够方便地与***其它部分的逻辑资源进行整合,具有极强的通用性。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种FPGA实现的单通道信号脉宽高精度测量方法,包括如下步骤:
通过FPGA内至少一个进位连线资源构成延迟链,每个进位连线资源有多个抽头,部分抽头输出测量信号的上升沿在所述延迟链上的状态信息,部分抽头输出为测量信号的下降沿在所述延迟链上的状态信息;
使用进位连线资源CARRY4,将待测信号的上升沿通过多路器延迟补偿输出,将待测信号的下降沿通过异或门翻转成上升沿输出,二者再接入D触发器组进行上升沿状态的捕获和锁存;
使用探测电路控制多路选择器,分别选择所述上升沿的状态信息和下降沿的状态信息,使之分别输入译码单元进行译码,其中,所述探测电路用于识别所述上升沿的状态信息和下降沿的状态信息。
2.如权利要求l所述的单通道信号脉宽高精度测量方法,其特征在于,所述多路选择器在选择所述上升沿的状态信息和下降沿的状态信息之前,对来自D触发器组锁存的状态信息进行识别,以确定其为上升沿的状态信息还是下降沿的状态信息。
3.如权利要求1所述的单通道信号脉宽高精度测量方法,其特征在于,所述FPGA是Xilinx FPGA,进位连线资源为CARRY4,每个CARRY4有三个抽头输出CO0、O2和CO3,其中CO0和CO3的输出为上升沿在延迟链上的状态信息;O2的输出为下降沿在延迟链上的状态信息;二者均以信号上升沿的形式输出至D触发器组锁存。
4.如权利要求1至3中任一所述的单通道信号脉宽高精度测量方法,其特征在于,所述多路选择器为2∶1多路选择器。
5.一种FPGA实现的单通道信号脉宽高精度测量装置,包括粗计数单元、细时间测量单元和译码单元,所述细时间测量单元包括延迟链、D触发器组和多路选择器,其中,
所述延迟链有多个抽头,部分抽头输出测量信号的上升沿在所述延迟链上的状态信息,部分抽头输出为测量信号的下降沿在所述延迟链上的状态信息,使用进位连线资源CARRY4,将待测信号的上升沿通过多路器延迟补偿输出,将待测信号的下降沿通过异或门翻转成上升沿输出,二者再接入D触发器组进行上升沿状态的捕获和锁存;
所述D触发器组用于对所述状态信息进行锁存;
所述多路选择器分别选择所述上升沿的状态信息和下降沿的状态信息,使之分别输入所述译码单元。
6.如权利要求5所述的FPGA实现的单通道信号脉宽高精度测量装置,其特征在于,所述细时间测量单元还包括探测电路,其连接于所述多路选择器的选择控制端,用于识别所述上升沿的状态信息和下降沿的状态信息,以对多路选择器的输出进行控制。
7.如权利要求6所述的FPGA实现的单通道信号脉宽高精度测量装置,其特征在于,所述探测电路包括一个反相器、一个D触发器和一个两输入与门,其中,
所述与门的一个输入端连接于D触发器的输出端,另一端连接输入信号;
所述D触发器的一个输入端连接所述反相器的输出端,另一输入端连接时钟信号;
所述反相器的输入端为所述输入信号。
8.如权利要求5~7中任一项所述的单通道信号脉宽高精度测量装置,其特征在于,所述FPGA是Xilinx FPGA,进位连线资源为CARRY4,每个CARRY4有三个抽头输出CO0、O2和CO3,其中CO0和CO3的输出为上升沿在延迟链上的状态信息;O2的输出为下降沿在延迟链上的状态信息。
9.如权利要求8所述的FPGA实现的单通道信号脉宽高精度测量装置,其特征在于,所述多路选择器为2∶1多路选择器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510547317.1A CN105068405B (zh) | 2015-08-28 | 2015-08-28 | Fpga实现的单通道信号脉宽高精度测量方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510547317.1A CN105068405B (zh) | 2015-08-28 | 2015-08-28 | Fpga实现的单通道信号脉宽高精度测量方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105068405A CN105068405A (zh) | 2015-11-18 |
CN105068405B true CN105068405B (zh) | 2017-10-03 |
Family
ID=54497796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510547317.1A Active CN105068405B (zh) | 2015-08-28 | 2015-08-28 | Fpga实现的单通道信号脉宽高精度测量方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105068405B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106444345B (zh) * | 2016-12-19 | 2019-03-08 | 深圳大学 | 时间测量电路、方法和测量设备 |
CN107037721B (zh) * | 2017-06-16 | 2019-06-21 | 中国科学技术大学 | 一种自修正型时间数字转换器 |
CN107422193B (zh) * | 2017-06-30 | 2023-09-15 | 成都信息工程大学 | 一种测量单粒子翻转瞬态脉冲长度的电路及方法 |
CN108061848B (zh) * | 2017-12-06 | 2019-12-10 | 武汉万集信息技术有限公司 | 基于fpga的加法进位链延时的测量方法及*** |
CN109656123B (zh) * | 2018-12-24 | 2020-08-25 | 成都天奥电子股份有限公司 | 一种基于数学组合运算的高精度时差测量与产生方法 |
CN112362928A (zh) * | 2020-09-16 | 2021-02-12 | 天津大学 | 一种可同步测量的高精度可编程脉冲产生***及方法 |
CN113295716B (zh) * | 2021-05-24 | 2022-07-05 | 中国科学技术大学 | 一种中子谱仪起始信号扇出装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1521143A1 (fr) * | 2003-10-01 | 2005-04-06 | Acqiris | Convertisseur temps-numérique |
CN103092060A (zh) * | 2013-02-08 | 2013-05-08 | 西安电子科技大学 | 基于fpga的时间间隔测量***与测量方法 |
CN103676622A (zh) * | 2013-10-28 | 2014-03-26 | 中国电子科技集团公司第四十一研究所 | 一种高精度的正负时间间隔测量方法及装置 |
CN104597748A (zh) * | 2015-02-12 | 2015-05-06 | 中国科学技术大学 | 一种基于fpga的时间数字变换器 |
CN104614976A (zh) * | 2015-02-12 | 2015-05-13 | 中国科学技术大学 | 一种基于fpga的时间数字变换器 |
-
2015
- 2015-08-28 CN CN201510547317.1A patent/CN105068405B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1521143A1 (fr) * | 2003-10-01 | 2005-04-06 | Acqiris | Convertisseur temps-numérique |
CN103092060A (zh) * | 2013-02-08 | 2013-05-08 | 西安电子科技大学 | 基于fpga的时间间隔测量***与测量方法 |
CN103676622A (zh) * | 2013-10-28 | 2014-03-26 | 中国电子科技集团公司第四十一研究所 | 一种高精度的正负时间间隔测量方法及装置 |
CN104597748A (zh) * | 2015-02-12 | 2015-05-06 | 中国科学技术大学 | 一种基于fpga的时间数字变换器 |
CN104614976A (zh) * | 2015-02-12 | 2015-05-13 | 中国科学技术大学 | 一种基于fpga的时间数字变换器 |
Non-Patent Citations (1)
Title |
---|
Prototype of time digitizing system for BESBI endcap TOF upgrade;Cao Ping, Sun Weijia, Ji Xiaolu,等;《Chinese Physics C》;20140430;第38卷(第4期);正文第1-9页、图1-4 * |
Also Published As
Publication number | Publication date |
---|---|
CN105068405A (zh) | 2015-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105068405B (zh) | Fpga实现的单通道信号脉宽高精度测量方法和装置 | |
CN103676622B (zh) | 一种高精度的正负时间间隔测量方法及装置 | |
CN106019923B (zh) | 一种基于fpga的时间数字变换器 | |
CN103148950B (zh) | 一种集成门控主动式淬火恢复电路 | |
CN103698801B (zh) | 高能质子和中子能谱测量的多层闪烁探测器及测量方法 | |
CN103199870B (zh) | 一种触发点快速定位装置 | |
CN107449516B (zh) | 一种自适应探测模式的光子计数线阵读出电路及方法 | |
CN106227026B (zh) | 一种双延迟内插法的时间间隔计数器 | |
CN104502684A (zh) | 一种全数字化峰值到达时刻鉴别方法 | |
CN101937096A (zh) | 多通道多道脉冲幅度分析器 | |
CN108170018A (zh) | 一种门控环型时间数字转换器及时间数字转换方法 | |
CN102904551A (zh) | 一种恒比定时鉴别电路 | |
CN109374139A (zh) | 一种单光子飞行时间检测电路及测量方法 | |
CN105763196A (zh) | 一种延迟内插型时间数字转换器 | |
CN106066599B (zh) | 用于三维激光扫描仪的精密时间测量*** | |
CN108736885B (zh) | 锁相环时钟边沿触发的时钟分相法 | |
CN203275896U (zh) | 一种低成本亚纳秒级时间间隔检测电路 | |
CN109765828A (zh) | 一种磁阻型传感器芯片时序控制电路及控制方法 | |
CN103675383B (zh) | 一种量测波形的电路 | |
CN103105534A (zh) | 基于fpga相同周期信号的相位差测量电路及测量方法 | |
CN113917442A (zh) | 光传感器以及测距方法 | |
CN108732912A (zh) | 被测信号边沿触发的时钟分相法 | |
Khaddour et al. | Design Methodology and Timing Considerations for implementing a TDC on a Cyclone V FPGA Target | |
CN103219970A (zh) | 单粒子瞬态脉冲宽度展宽方法与电路 | |
CN106443692A (zh) | 一种精确测量跳变沿到达时刻的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |