时间测量系统及时间测量方法

文档序号:6256691阅读:345来源:国知局
专利名称:时间测量系统及时间测量方法
技术领域
本申请涉及一种测量系统,尤其涉及一种时间测量系统及方法。
背景技术
高精度时间测量技术在 现代科学技术的诸多领域都需要被应用,例如电信通讯、激光测距、卫星定位等,尤其在物理学各领域中的应用更为广泛,诸如原子核物理、高能物理、医学影像物理等领域都离不开高精度时间测量技术。时间测量一般包括时间甄别和时间数字转换(Time-To-Digital Converter, TDC)两部分。目前高精度 TDC 主要有 ASIC (Application Specific Integrated Circuit,专用集成电路)、专用TDC芯片、FPGA(Field Programmable Gate Array,现场可编程门阵列)等多种实现方式,由于研发成本和研发周期等方面的原因,使得基于ASIC实现TDC的方案受到很大限制,专用TDC芯片又存在集成度低和使用不方便的问题。利用FPGA进行时间测量是一种比较新的时间测量方法,相较ASIC和专用TDC芯片的实现方式,该方法可降低测量系统的复杂性和成本。在专利申请CN1719353A中阐述了一种利用FPGA实现的TDC器件。该专利申请的主要特点是使用FPGA内部延迟线、多位加法器或者查找表LUT来测量精细时间,利用两个反相时钟驱动的计数器来测量粗时间,并且使用折半查找和流水线技术来实现精细时间编码。但是,该技术还存在以下几方面缺陷,致使难以实现该技术的实际应用。I.该专利申请不对时间起点进行测量,由于起始信号通常由外部提供,与TDC时间插值所使用的高速时钟不同源,起始信号的上升沿与时钟前沿之间的相位不确定。因此,不对起始信号进行测量大大降低了现有时间测量技术的实用性。2.该专利申请采用FPGA内部的进位连线、LUT (Look-Up-Table,查找表)、多位加法器等构建延迟链,所构建的延迟链不够均匀,而延迟链性能不佳将严重影响时间测量的精度。该专利申请使用折半查找和流水线技术来实现时间编码,需要耗费大量的FPGA逻辑资源,且需要耗费较长的时间才能输出测量结果。

发明内容
在下文中给出关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。本发明的一个主要目的在于提供一种实用性强且时间测量精确的时间测量系统和方法。根据本发明的一个方面,一种时间测量系统,用以测量待测时间,包括起始信号精细时间测量单元,包括由多个第一延迟单元串联而成的第一延迟链、多个第一寄存器以及第一数据转换器,当没有信号输入的时候,各第一延迟单元输出均为第一电平,各第一寄存器与各第一延迟单元对应连接,第一数据转换器连接至各第一寄存器,第一延迟链的一端用于接收起始信号,使接收到起始信号的第一延迟单元的输出依次变为第二电平,各第一寄存器用于在输入起始信号后的参考信号的第一个时钟前沿时读取与其对应连接的第一延迟单元的输出值并对读取的数据进行保存,第一数据转换器用于将各第一寄存器所保存的数据转换为时间数据以获取起始信号精细时间;定时信号精细时间测量单元,包括由多个第二延迟单元串联而成的第二延迟链、多个第二寄存器以及第二数据转换器,当没有信号输入的时候,各第二延迟单元输出均为第一电平,各第二寄存器与各第二延迟单元对应连接,第二数据转换器连接至各第二寄存器,第二延迟链的一端用于接收定时信号,使接收到定时信号的第二延迟单元的输出依次 变为第二电平,各第二寄存器用于在定时信号输入第二延迟链后的参考信号的第一个时钟前沿时读取与其对应连接的第二延迟单元的输出值并对读取的数据进行保存,第二数据转换器用于将各第二寄存器所保存的数据转换为时间数据以获取定时信号精细时间; 粗时间测量单元,用于测量粗时间,粗时间为起始信号前沿之后的参考信号的第一个时钟周期到定时信号前沿之后的参考信号的第一个时钟周期之间的时间段;以及时间计算单元,用于将粗时间和起始信号精细时间之和减去定时信号精细时间以获取待测时间。根据本发明的一个方面,一种时间测量方法,用以测量待测时间,包括由多个第一延迟单元串联而成的第一延迟链的一端接收起始信号,使接收到起始信号的第一延迟单元的输出依次变为第二电平,在起始信号输入第一延迟链后的参考信号的第一个时钟前沿时通过对应连接至第一延迟单元的多个第一寄存器读取各第一延迟单元的输出值并对读取的数据进行保存,将所保存的数据转换为时间数据以得到起始信号精细时间,其中当没有信号输入的时候,各第一延迟单元输出均为第一电平;由多个第二延迟单元串联而成的第二延迟链的一端接收定时信号,使接收到定时信号的第二延迟单元的输出依次变为第二电平,在定时信号输入第二延迟链后的参考信号的第一个时钟前沿时通过对应连接至第二延迟单元的多个第二寄存器读取各第二延迟单元的输出值并对读取的数据进行保存,将所保存的数据转换为时间数据以得到定时信号精细时间,其中当没有信号输入的时候,各第二延迟单元输出均为第一电平;测量粗时间,粗时间为起始信号前沿之后的参考信号的第一个时钟周期到定时信号前沿之后的参考信号的第一个时钟周期之间的时间段;以及将起始信号精细时间与粗时间之和减去定时信号精细时间以获取待测时间。本发明通过引入起始信号为待测时间的测量提供参考点,并采用内插延迟链对起始信号上升沿与其后的第一个时钟上升沿之间的时间以及定时信号前沿与其后第一个时钟上升沿之间的时间进行精细测量,结合在时钟信号驱动下的粗测量获取精确的待测时间,解决了起始信号与FPGA芯片内部的时钟信号不同源所造成的测量精度不高的问题,同时引入起始信号作为参考点提升了时间测量的实用性。


参照下面结合附图对本发明实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。附图中的部件只是为了示出本发明的原理。在附图中,相同的或类似的技术特征或部件将采用相同或类似的附图标记来表示。图I为本发明时间测量系统较佳实施方式的方框图。图2为参考时钟信号、起始信号和定时信号的仿真示意图。图3为对延迟链的输出数据进行分段查找时的示意图。图4为本发明时间测量方法较佳实施方式的流程图。
具体实施例方式下面参照附图来说明本发明的实施例。在本发明的一个附图或一种实施方式中描述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。应当注意,为了清楚的目的,附图和说明中省略了与本发明无关的、本领域普通技术人员已知的部件和处理的表示和描述。请参考图1,本发明实施例的时间测量系统用以测量待测时间,其包括粗时间测量单元10、起始信号精细时间测量单元20、定时信号精细时间测量单元30及时间计算单元40。本发明实施例中的时间测量系统可集成在FPGA芯片中。可选地,粗时间测量单元10在FPGA芯片的时钟信号CLOCK的驱动下测量粗时间。可选地,粗时间测量单元10可为FPGA芯片中的时钟计数器。待测时间T是定时时刻与起始时刻之间的时间差,例如,参考图2,待测时间T为待测的定时信号Tstop与起始信号Tstart之间的时间差。本发明实施例的待测时间T可以通过粗时间Tc、起始信号精细时间Tfl和定时信号精细时间Tf2来计算。粗时间Tc指通过对参考信号(例如,图I和图2中的CLOCK信号)的时间周期计数而测得的时间。如图2所示,粗时间Tc是粗起始时刻Tcl和粗定时时刻Tc2之间的时间差。粗起始时刻Tcl是指在进行粗时间测量时开始计时的时间,粗定时时刻Tc2是指进行粗时间测量时停止计时的时间。在一个实例中,如图2所示,粗时间Tc是起始信号Tstart前沿之后的参考信号的第一个时钟周期的前沿到定时信号Tstop前沿之后的参考信号的第一个时钟周期的前沿之间的时间段,其中,粗起始时刻Tcl是起始信号Tstart前沿之后的参考信号的第一个时钟周期的前沿。粗定时时刻Tc2是定时信号Tstop前沿之后的参考信号的第一个时钟周期的前沿。起始信号精细时间Tfl是粗起始时刻Tcl与起始时刻之间的时间差的绝对值,定时信号精细时间Tf2是定时时刻与粗定时时刻Tc2之间的时间差的绝对值。在图2中,起始信号精细时间TH是指起始信号Tstart前沿后的参考信号的第一个时钟前沿与起始信号Tstart前沿之间的时间差的绝对值;定时信号精细时间Tf2是指定时信号Tstop前沿与其后的第一个时钟上升沿之间的时间差的绝对值。起始信号精细时间和定时信号精细时间均小于一个时钟周期,因此不能由时钟计数器测得。于是,本发明实施例的待测时间T可以通过将粗时间Tc加上起始信号精细时间Tfl,然后减去定时信号精细时间Tf2来计算。在一个实例中,参考信号可以米用FPGA内部的时钟信号。可选地,起始信号精细时间测量单元20可包括由多个第一延迟单元串联而成的第一延迟链、多个第一寄存器以及第一数据转换器。各第一寄存器与各第一延迟单元对应、连接形成第一寄存器阵列,第一数据转换器连接至各第一寄存器。可选地,第一延迟单元为FPGA芯片中的延迟单元,即进位单元(如MUXCY)。各第一延迟单元可以通过进位线串联连接。起始信号精细时间测量单元20用于接收起始信号Tstart,该起始信号Tstart可由外部提供,也可由本发明的实施例的时间测量系统内部产生。当没有信号输入的时候,各第一延迟单元输出均为第一电平(例如为低电平),第一延迟链的一端接收起始信号Tstart,使各接收到起始信号Tstart的第一延迟单元的输出依次变为第二电平(例如为高电平)。在粗起始时刻Tcl,也就是,在本实施例的图I中,在起始信号Tstart输入第一延迟链后的CLOCK信号第一个时钟上升沿时,各第一寄存器读取与其对应连接的第一延迟单元的输出值并对读取的数据进行保存。第一数据转换器将各第一寄存器所保存的数据转换为时间数据,即得到起始信号精细时间TH。可选地,定时信号精细时间测量单元30也包括由多个第二延迟单元串联而成的第二延迟链、多个第二寄存器以及第二数据转换器,其结构与起始信号精细时间测量单元20的结构类似,各第二寄存器与各第二延迟单元对应连接形成第二寄存器阵列,第二数据 转换器连接至各第二寄存器。定时信号精细时间测量单元30获取定时信号精细时间Tf2和起始信号精细时间测量单元20获取起始信号精细时间TH的原理类似,第二延迟链的一端用于接收定时信号Tstop,使接收到定时信号Tstop的第二延迟单元的输出依次变为第二电平。在粗定时时刻Tc2,也就是,在本实施例的图I中,在定时信号输入第二延迟链后的CLOCK信号的第一个时钟上升沿时,各第二寄存器读取与其对应连接的第二延迟单元的输出值并对读取的数据进行保存,第二数据转换器用于将各第二寄存器所保存的数据转换为时间数据以获取定时信号精细时间Tf2。可选地,本发明的实施例中,各第一寄存器分别对应不同的时间数据,各第二寄存器也分别对应不同的时间数据。第一、第二数据转换器查找第一、第二寄存器阵列所存储的第二电平数据,以查找起始信号Tstart或定时信号Tstop在对应的第一或第二延迟链中传输的终点,并通过编码输出与该终点相对应的时间数据,便可获得起始信号精细时间Tfl或定时信号精细时间Tf2。可选地,本发明的实施例中,利用分段查找法查找第一、第二寄存器阵列所存储的第二电平数据。以图3所示为例进行说明,分段查找的方法如下步骤I :将第一或第二寄存器阵列的输出从最高位到最低位依次分为多个组,如图3中的组a、b、c、d,其中最高组a的最高位a6为延迟链的尾部,最低组d的最低位dl为延迟链的首部,首先判断最高组a的最低位al,若最高组a的最低位al为第二电平,说明信号已传输至此处,则从最高组a的最高位a6依次往下查找起始信号或定时信号传输的终点,即从最高组a的最高位a6开始往下查找第一个第二电平的位置。步骤2 :若最高组a的最低位al为第一电平,说明信号尚未传输至此处,则判断次闻组b的最低位bl,若次闻组b的最低位bl为第_■电平,则从次闻组b的最闻位b6开始往下查找第一个第二电平的位置。步骤3 :以此类推,直至查找到第一个第二电平的位置,以找到起始信号或定时信号在对应的第一或第二延迟链中传输的终点,使得第一或第二数据转换器获得起始信号Tstart或定时信号Tstop在对应的第一或第二延迟链中传输的终点所对应的时间数据,即得到起始信号精细时间Tfl或定时信号精细时间Tf2。时间计算单元40根据粗时间测量单元10所测量的粗时间Tc、起始信号精细时间测量单元20所测量的起始信号精细时间Tfl以及定时信号精细时间测量单元30所测量的定时信号精细时间Tf2计算待测时间T。本发明的实施例中,时间计算单元40将起始信号精细时间Tfl与粗时间Tc之和减去定时信号精细时间Tf2以获取待测时间T。
请参考图4,本发明时间测量方法的较佳实施方式包括以下步骤步骤SI :第一延迟链的一端接收起始信号Tstart,使接收到起始信号Tstart的延迟单元的输出依次变为第二电平,各第一寄存器在起始信号Tstart输入第一延迟链后的参考信号的第一个时钟前沿时读取与其对应连接的第一延迟单元的输出值并对读取的数据进行保存,数据转换器将各寄存器所保存的数据转换为时间数据,即得到起始信号精细时间TH。起始信号精细时间Tfl为起始信号Tstart上升沿与其后的参考信号的第一个时钟上升沿之间的时间。步骤S2 :第二延迟链的一端接收定时信号Tstop,使接收到定时信号Tstop的第二延迟单元的输出依次变为第二电平,各第二寄存器在定时信号Tstop输入第二延迟链后的参考信号的第一个时钟前沿时读取与其对应连接的第二延迟单元的输出值并对读取的数据进行保存,数据转换器将各第二寄存器所保存的数据转换为时间数据,即得到定时信号精细时间Tf2。定时信号精细时间Tf2为定时信号Tstop前沿与其后的参考信号的第一个时钟上升沿之间的时间。步骤S3 :粗时间测量单元10测量粗时间。粗时间为起始信号Tstart前沿之后的参考信号的第一个时钟周期到定时信号Tstop前沿之后的参考信号第一个时钟周期之间的时间段。可选地,参考信号可以是在FPGA芯片的时钟信号CLOCK。步骤S4 :时间计算单元40根据步骤S3中所获取的粗时间Tc、步骤SI中获取的起始信号精细时间Tfl以及步骤S2中获取的定时信号精细时间Tf2计算待测时间T。本步骤中,时间计算单元40可将起始信号精细时间Tfl与粗时间Tc之和减去定时信号精细时间Tf 2以获取待测时间T。可选地,在步骤S2和S3中,利用分段查找法查找第一、第二寄存器阵列所存储的第二电平数据,以查找起始信号Tstart或定时信号Tstop在对应的第一或第二延迟链中传输的终点,并通过编码输出与该终点相对应的时间数据,便可获取起始信号精细时间Tfl或定时信号精细时间Tf2。分段查找法在上述描述中已说明,在此不再赘述。本发明的实施例中,通过引入起始信号为定时时刻的测量提供参考点,并采用内插延迟链对起始信号前沿与其后的第一个时钟前沿之间的时间以及定时信号前沿与其后第一个时钟前沿之间的时间进行精细测量,结合在时钟信号驱动下的粗测量获取精确的待测时间,解决了起始信号与FPGA芯片内部的时钟信号不同源所造成的测量精度不高的问题,同时引入起始信号作为参考点提升了时间测量的实用性。本发明的实施例采用FPGA芯片内部进位单元构建时间延迟链,相较采用加法器、LUT等构建的延迟链,具有延迟更为均匀的优点,提升了时间测量的精确性和可靠性。本发明的实施例将待测定时信号接入延迟链,参考时钟信号接入寄存器阵列,仅通过一个时钟计数器即可实现粗时间测量,结构简单。
本发明的实施例采用分段查找法读取延迟链中各延迟单元的输出状态,将对延迟链的串行组合的查找转变为多个串行分段的并行查找,可在极短时间内得到查找的结果,经实验证明,分段查找可在一个时钟周期内得出查找的结果,大大减少了 FPGA逻辑资源的使用量,并且减少了时间数据的获取时间。在本发明的设备和方法中,显然,各部件或各步骤是可以分解、组合和/或分解后重新组合的。这些分解和/或重新组合应视为本发明的等效方案。还需要指出的是,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行。某些步骤可以并行或彼此独立地执行。同时,在上面对本发明具体实施例的描述中,针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多 个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
权利要求
1.一种时间测量系统,用以测量待测时间,包括 起始信号精细时间测量单元,包括由多个第一延迟单元串联而成的第一延迟链、多个第一寄存器以及第一数据转换器,当没有信号输入的时候,各第一延迟单元输出均为第一电平,各第一寄存器与各第一延迟单元对应连接,第一数据转换器连接至各第一寄存器,第一延迟链的一端用于接收起始信号,使接收到所述起始信号的第一延迟单元的输出依次变为第二电平,各第一寄存器用于在输入起始信号后的参考信号的第一个时钟前沿时读取与其对应连接的第一延迟单元的输出值并对读取的数据进行保存,第一数据转换器用于将各第一寄存器所保存的数据转换为时间数据以获取起始信号精细时间; 定时信号精细时间测量单元,包括由多个第二延迟单元串联而成的第二延迟链、多个第二寄存器以及第二数据转换器,当没有信号输入的时候,各第二延迟单元输出均为第一电平,各第二寄存器与各第二延迟单元对应连接,第二数据转换器连接至各第二寄存器,第二延迟链的一端用于接收定时信号,使接收到所述定时信号的第二延迟单元的输出依次变为第二电平,各第二寄存器用于在定时信号输入第二延迟链后的参考信号的第一个时钟前沿时读取与其对应连接的第二延迟单元的输出值并对读取的数据进行保存,第二数据转换器用于将各第二寄存器所保存的数据转换为时间数据以获取定时信号精细时间; 粗时间测量单元,用于测量粗时间,所述粗时间为所述起始信号前沿之后的参考信号的第一个时钟周期到所述定时信号前沿之后的参考信号的第一个时钟周期之间的时间段;以及 时间计算单元,用于将所述粗时间和起始信号精细时间之和减去定时信号精细时间以获取所述待测时间。
2.如权利要求I所述的时间测量系统,其特征在于,所述粗时间测量单元为现场可编程门阵列芯片中的时钟计数器。
3.如权利要求I所述的时间测量系统,其特征在于,各第一延迟单元、第二延迟单元均为现场可编程门阵列芯片中的进位单元,各第一延迟单元通过进位线串联连接,各第二延迟单元通过进位线串联连接。
4.一种时间测量方法,用以测量待测时间,包括 由多个第一延迟单元串联而成的第一延迟链的一端接收起始信号,使接收到起始信号的第一延迟单元的输出依次变为第二电平,在起始信号输入第一延迟链后的参考信号的第一个时钟前沿时通过对应连接至第一延迟单元的多个第一寄存器读取各第一延迟单元的输出值并对读取的数据进行保存,将所保存的数据转换为时间数据以得到起始信号精细时间,其中当没有信号输入的时候,各第一延迟单元输出均为第一电平; 由多个第二延迟单元串联而成的第二延迟链的一端接收定时信号,使接收到定时信号的第二延迟单元的输出依次变为第二电平,在定时信号输入第二延迟链后的参考信号的第一个时钟前沿时通过对应连接至第二延迟单元的多个第二寄存器读取各第二延迟单元的输出值并对读取的数据进行保存,将所保存的数据转换为时间数据以得到定时信号精细时间,其中当没有信号输入的时候,各第二延迟单兀输出均为第一电平; 测量粗时间,所述粗时间为所述起始信号前沿之后的参考信号的第一个时钟周期到所述定时信号前沿之后的参考信号的第一个时钟周期之间的时间段;以及 将所述起始信号精细时间与粗时间之和减去所述定时信号精细时间以获取所述待测时间。
5.如权利要求4所述的时间测量方法,其特征在于,所述测量粗时间的步骤包括通过现场可编程门阵列芯片中的时钟计数器测量所述粗时间。
6.如权利要求4所述的时间测量方法,其特征在于,各第一延迟单元、第二延迟单元均为现场可编程门阵列芯片中的进位单元,各第一延迟单元通过进位线串联连接,各第二延迟单元通过进位线串联连接。
7.如权利要求4所述的时间测量方法,其特征在于,各第一寄存器分别对应不同的时间数据,各第二寄存器也分别对应不同的时间数据,所述测量起始信号精细时间或定时信号精细时间的步骤分别包括 将各第一或第二寄存器的输出从最高位到最低位依次分为多个组,其中最高组的最高位为对应的第一或第二延迟链的尾部,最低组的最低位为对应的第一或第二延迟链的首部; 判断最闻组的最低位的电平状态,若最闻组的最低位为第_■电平,则从最闻组的最闻位开始往下查找第一个第二电平的位置; 若最高组的最低位为第一电平,则判断次高组的最低位的电平状态,若次高组的最低位为第二电平,则从次高组的最高位开始往下查找第一个第二电平的位置;以及 以此类推,直至查找到第一个第二电平的位置,以找到起始信号或定时信号在对应的第一或第二延迟链中传输的终点,以获得起始信号或定时信号在对应的第一或第二延迟链中传输的终点所对应的时间数据,从而获得所述起始信号精细时间或定时信号精细时间。
全文摘要
本申请涉及一种时间测量系统,包括起始信号精细时间测量单元,包括延迟链、多个寄存器及数据转换器,延迟链的一端接收起始信号,使接收到起始信号的延迟单元的输出依次变为第二电平,各寄存器在输入起始信号后的第一个时钟上升沿时读取并保存对应的延迟单元的输出值,数据转换器将保存的数据转换为时间数据以获取起始信号精细时间;定时信号精细时间测量单元,用以获取定时信号精细时间,工作原理与起始信号精细时间测量单元类似;粗时间测量单元,在FPGA时钟信号的驱动下测量粗时间;以及时间计算单元,将粗时间和起始信号精细时间之和减去定时信号精细时间以获取待测时间。本发明提升了时间测量的精确性和实用性。
文档编号G04F10/00GK102736511SQ20111008541
公开日2012年10月17日 申请日期2011年4月6日 优先权日2011年4月6日
发明者丰宝桐, 孙芸华, 帅磊, 李道武, 王培林, 胡婷婷, 魏书军, 魏龙 申请人:中国科学院高能物理研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1