基于TDC的分辨率可调时间测量统计系统及方法转让专利

申请号 : CN202011443031.6

文献号 : CN112486008B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王琴蒋剑飞毛志刚闫娇玉洪起润冉旭仲

申请人 : 上海交通大学

摘要 :

本发明提供了一种基于TDC的低资源消耗分辨率可调时间测量统计系统及方法,包括:TDC模块、采样模块、统计模块以及控制模块;所述TDC模块与采样模块相连;所述统计模块与采样模块相连;所述控制模块与TDC模块、采样模块、统计模块分别相连;所述控制模块能够完成TDC模块的初始化;所述控制模块能够对统计模块中分仓寄存单元和存储单元的读写时序进行控制。本发明的测量分辨率可调,单次测量能够完成数百个stop信号采样。另外,统计模块中采用的分仓统计和定时筛选存储方法降低了硬件资源消耗,适合应用中多路测量的需求。

权利要求 :

1.一种基于TDC的低资源消耗分辨率可调时间测量统计系统,其特征在于,包括:TDC模块、采样模块、统计模块以及控制模块;

所述TDC模块与采样模块相连;

所述统计模块与采样模块相连;

所述控制模块与TDC模块、采样模块、统计模块分别相连;

所述控制模块能够完成TDC模块的初始化;

所述控制模块能够对统计模块中分仓寄存单元和存储单元的读写时序进行控制;

所述统计模块包括:存储单元、分仓寄存单元以及筛选单元;

所述筛选单元包括:第一筛选电路、第二筛选电路;

所述分仓寄存单元包括:第一分仓寄存单元、第二分仓寄存单元;

所述第一分仓寄存单元与第一筛选电路相连;

所述第二分仓寄存单元与第二筛选电路相连;

所述第二分仓寄存单元与存储单元相连。

2.根据权利要求1所述的基于TDC的低资源消耗分辨率可调时间测量统计系统,其特征在于,所述TDC模块包括:自定时振荡环单元、计数单元、同步采样电路、计算单元以及校准单元;

所述自定时振荡环单元与计数单元相连;

所述计数单元与同步采样电路相连;

所述计算单元与同步采样电路相连;

所述计算单元与校准单元相连。

3.根据权利要求2所述的基于TDC的低资源消耗分辨率可调时间测量统计系统,其特征在于,所述自定时振荡环单元使用多级Muller‑C单元产生多相位时钟。

4.根据权利要求1所述的基于TDC的低资源消耗分辨率可调时间测量统计系统,其特征在于,所述采样模块包括:同步触发器。

5.根据权利要求4所述的基于TDC的低资源消耗分辨率可调时间测量统计系统,其特征在于,所述采样模块由两级触发器级联组成。

6.根据权利要求1所述的基于TDC的低资源消耗分辨率可调时间测量统计系统,其特征在于,

所述分仓寄存单元的数量为2个。

7.根据权利要求1所述的基于TDC的低资源消耗分辨率可调时间测量统计系统,其特征在于,所述统计模块的统计方式采用分仓统计与即时存储筛选相结合的方法。

8.根据权利要求1所述的基于TDC的低资源消耗分辨率可调时间测量统计系统,其特征在于,所述控制模块使用FPGA的逻辑资源实现。

9.一种基于TDC的低资源消耗分辨率可调时间测量统计方法,其特征在于,采用权利要求1‑8任一项所述的基于TDC的低资源消耗分辨率可调时间测量统计系统,包括:步骤S1:单个start脉冲信号输入之后,TDC模块中由自定时振荡环产生多相位时钟,产生的多相位时钟驱动对应的计数器计数;

步骤S2:在每个stop脉冲信号到来之后,使用同步采样电路去采样计数值,同步采样得到的计数值经过计算模块算出每个stop信号对应的时间测量结果;

步骤S3:TDC模块测量出单个stop信号的测量结果之后,采样模块对stop信号进行边沿检测;检测到上升沿之后,延迟一个系统时钟周期采样TDC模块的测量结果;

步骤S4:统计模块将采样到的测量结果存入存储单元中,同时以该采样结果的高八位作为存储地址,对分仓寄存中地址所对应的计数值累加1;

步骤S5:在下一个stop信号到来之后,重复步骤S2至步骤S4过程;

步骤S6:在单个start信号对应的多个stop信号测量结束之后,当下一个start信号到来时,重复步骤S1至步骤S5过程,进行下一个start信号的测量;

步骤S7:在测量30个start信号之后,将分仓寄存中的256个地址以及每个地址对应的计数值输入到筛选单元中;筛选单元采用流水化的方式对计数值按大到小排序,然后输出较大的几个计数值以及对应的地址,作为筛选的众数值;

步骤S8:将筛选出的计数值更新到对应地址的分仓寄存中;同时将存储单元中的测量结果读出,将高八位与筛选出的地址相匹配的测量结果,按照计数值大小的顺序,从BRAM头部开始依次存入中,实现了测量结果的重排序;

步骤S9:每多个start信号,重复步骤S1至步骤S8的过程;

步骤S10:在测量300个start信号之后,筛选后得到分仓寄存中最大的计数值及对应的地址;接着查找存储单元中重排序后高八位与该地址相匹配的测量结果,使用另一个分仓寄存单元与另一个筛选单元找到所有测量结果的众数值,该众数值对应的测量结果即为最后输出的时间测量结果。

说明书 :

基于TDC的分辨率可调时间测量统计系统及方法

技术领域

[0001] 本发明涉及时间测量与统计电路技术领域,具体地,涉及一种基于TDC的低资源消耗分辨率可调时间测量统计系统及方法,尤其涉及一种低资源消耗,测量分辨率可调的时
间测量与统计电路。

背景技术

[0002] 激光测距在无人驾驶等多个领域有着广泛应用,具有精度高,测量速度快的特点。激光测距通过接受回波信号并对时间间隔进行测量即可得到对应距离。在车载环境下,激
光测距需要进行多路测量,同时由于受到自然光等因素的影响,接受信号存在大量噪声,单
次测量与少数stop信号接收阈值难以得到真实准确的测量结果。
[0003] 通过使用时间数字转换器(TDC)电路,能够实现高精度的测量。基于FPGA的数组 TDC技术被广泛的应用,实现方式也多种多样。基于延迟线的TDC电路利用FPGA内部的加法
器进位链等资源,构成基本的延迟单元,通过系统时钟控制的寄存器对进位链数据进行采
样,利用温度码得到最终延迟测量结果,但此类电路受到时钟抖动的影响,尤其随着FPGA工
艺的提升,抖动影响更加明显;基于振荡环的TDC电路则利用振荡环生成多相时钟,结合计
数器对开始、结束信号间隔进行计数得到最终结果,振荡环型TDC较延迟线型TDC对FPGA资
源要求更高。
[0004] 为了保证单次测量在受噪声影响下仍然能测量得到有效激光回波信号对应时间间隔,电路需要对开始信号发出后测量量程内的全部结束信号进行时间间隔测量。现有电
路大多以单个结束信号为主,德州仪器生产的TDC7200电路,最多支持5个结束信号,难以满
足应用需求。
[0005] 同时,一方面少次测量难以从众多回波信号中筛选出有效时间间隔,因此需要数次测量统计众数得到结果;另一方面,激光测距需要多路TDC进行测量,意味着对单路电路
的资源消耗约束较高。在实际应用中,众数统计算法多通过处理器完成,基于硬件的众数统
计电路存在大量资源消耗的问题,尤其需要庞大的存储资源,难以在有限资源下实现。
[0006] 专利文献CN103257569B公开了一种时间测量电路、方法和系统,其中电路包括脉冲生成器、第一时间数字转换器、第二时间数字转换器和测量值校准单元;脉冲生成器在校
准模式下根据外部参考时钟信号生成内部参考时钟信号;第一时间数字转换器用于在校准
模式下根据内部参考时钟信号测量外部参考时钟信号的第一码值,在测量模式下根据外部
参考时钟信号测量数据信号的时间码值;第二时间数字转换器用于在校准模式下根据内部
参考时钟信号测量外部参考时钟信号的第二码值;测量值校准单元根据第一码值、第二码
值、外部参考时钟信号的周期对时间码值进行校准。本发明提供的时间测量电路、方法和系
统能够提高时间测量精度。该专利在结构和性能上仍然有待完善的空间。

发明内容

[0007] 针对现有技术中的缺陷,本发明的目的是提供一种基于TDC的低资源消耗分辨率可调时间测量统计系统及方法。
[0008] 根据本发明提供的一种基于TDC的低资源消耗分辨率可调时间测量统计系统,包括: TDC模块、采样模块、统计模块以及控制模块;
[0009] 所述TDC模块与采样模块相连;
[0010] 所述统计模块与采样模块相连;
[0011] 所述控制模块与TDC模块、采样模块、统计模块分别相连;
[0012] 所述控制模块能够完成TDC模块的初始化;
[0013] 所述控制模块能够对统计模块中分仓寄存单元和存储单元的读写时序进行控制。
[0014] 优选地,所述TDC模块包括:自定时振荡环(STR)单元、计数单元、同步采样电路、计算单元以及校准单元;所述自定时振荡环(STR)单元与计数单元相连;所述计数单元与同步
采样电路相连;所述计算单元与同步采样电路相连;所述计算单元与校准单元相连。
[0015] 优选地,所述自定时振荡环(STR)单元使用多级Muller‑C单元产生多相位时钟,分布均匀的多级相位差可以对一个振荡周期进行细分,实现很高的分辨率。对多级 Muller‑C
单元进行不同的初始化,可以改变振荡信号的频率,进而实现分辨率可调。计数单元在STR
产生的多相位时钟的驱动下,对待测的时间信号进行计数。每个stop信号到来时,同步采样
电路对计数器进行采样,并将采样到的计数值输入到计算单元中,由计算单元根据采样结
果计算出最后的测量结果。校准单元对计算出的测量结果进行校准,得到TDC模块测量的结
果。使用同步采样电路采样计数值,降低了亚稳态的影响。使用码密度校准方法,可以减小
相位分布不均匀带来的非线性误差,提高测量结果的精度。
[0016] 优选地,所述采样模块包括:触发器;
[0017] 优选地,所述采样模块由两级触发器级联组成。
[0018] 两级触发器级联电路对stop信号进行边沿检测。在检测到上升沿之后,采样模块延迟一个周期采样TDC模块的测量结果。电路在测量过程中,需对TDC产生的测量结果进行
采样。由于STR产生时钟、系统时钟以及结束信号间均不相关,采样电路需保证在结束信号
到来后得到正确的测量结果,同时需要避免亚稳态问题。本发明利用结束(stop) 信号脉冲
脉宽存在最小值,采用周期小于1/2脉宽的时钟信号作为系统时钟,当stop 信号为高电平
后固定STR时钟域测量结果。如图5所示,由于采样时钟周期小于1/2脉宽,且输入保持不变,
系统时钟域寄存器可在stop上升沿到来后的第二个周期采样得到稳定的正确测量结果,从
而避免了亚稳态问题;通过探测stop信号上升沿到来,经过两级系统时钟域寄存器作为采
样标记信号输出,即可得到上述正确采样结果。
[0019] 优选地,所述统计模块包括:存储单元、分仓寄存单元以及筛选单元;
[0020] 所述分仓寄存单元的数量为2个。
[0021] 优选地,所述筛选单元包括:第一筛选电路、第二筛选电路;
[0022] 所述分仓寄存单元包括:第一分仓寄存单元、第二分仓寄存单元;
[0023] 所述第一分仓寄存单元与第一筛选电路相连;
[0024] 所述第二分仓寄存单元与第二筛选电路相连;
[0025] 所述第二分仓寄存单元与存储单元相连。
[0026] 优选地,所述统计模块的统计方式采用分仓统计与即时存储筛选相结合的方法,利用统计结果及时对大量的测量数据进行筛选并重排序,经过重排序后的有效数据才占用
存储资源,极大地降低了存储资源需求。
[0027] 存储单元使用FPGA的BRAM实现,从BRAM底部开始,依次存储采样模块采样到的每个测量结果。每次测量需要发射多个start信号,每个start信号包含多个噪声的一系列
stop信号。为了降低存储资源,每隔30个start信号就对存储数据进行一次筛选,只保留数
据分布集中某几个区间的测量结果。
[0028] 分仓寄存模块采用FPGA上的LUT实现存储功能。为了记录测量结果分布的区间,使用测量结果的高八位作为存储地址,可以对测量结果划分成256个区间,存储的数据为测量
结果落在对应区间的计数值。
[0029] 筛选模块由流水化的比较电路组成,可以根据分仓寄存中各存储地址对应的计数值对测量数据进行筛选,并根据筛选结果对有效的测量数据重排序。
[0030] 每组数据要进行多次测量,因此每隔一定的测量次数就要对测量数据进行筛选。在每组数据测量结束之后,就可以将众数区间筛选出来。对众数区间中的测量结果,使用另
一个分仓寄存单元和另一个筛选单元,继续对众数区间中的测量结果进行筛选,就可以将
该区间中的测量结果的众数值筛选出来。该众数值对应的测量结果即为最后的测量结果。
[0031] 优选地,所述控制模块使用FPGA的逻辑资源实现。
[0032] 控制模块根据应用场景需求,对TDC模块中的自定时振荡环(STR)进行初始化配置,可调节测量的分辨率。在使用众数统计筛选法筛选测量结果并进行重排序时,控制模块
根据读写时序要求,控制存储单元和分仓寄存单元中数据的读写。
[0033] 根据本发明提供的一种基于TDC的低资源消耗分辨率可调时间测量统计方法。采用基于TDC的低资源消耗分辨率可调时间测量统计系统,包括:
[0034] 步骤S1:单个start脉冲信号输入之后,TDC模块中由自定时振荡环产生多相位时钟,产生的多相位时钟驱动对应的计数器计数;
[0035] 步骤S2:在每个stop脉冲信号到来之后,使用同步采样电路去采样计数值,同步采样得到的计数值经过计算模块算出每个stop信号对应的时间测量结果;
[0036] 步骤S3:TDC模块测量出单个stop信号的测量结果之后,由图1中的采样模块对 stop信号进行边沿检测;检测到上升沿之后,延迟一个系统时钟周期采样TDC模块的测量结
果;
[0037] 步骤S4:统计模块将采样到的测量结果存入存储单元中,同时以该采样结果的高八位作为存储地址,对分仓寄存中地址所对应的计数值累加1;
[0038] 步骤S5:在下一个stop信号到来之后,重复步骤S2至步骤S4过程;
[0039] 步骤S6:在单个start信号对应的多个stop信号测量结束之后,当下一个start 信号到来时,重复步骤S1至步骤S5过程,进行下一个start信号的测量;
[0040] 步骤S7:在测量30个start信号之后,将分仓寄存中的256个地址以及每个地址对应的计数值输入到筛选单元中;筛选单元采用流水化的方式对计数值按大到小排序,然后
输出较大的几个计数值以及对应的地址,作为筛选的众数值;
[0041] 步骤S8:将筛选出的计数值更新到对应地址的分仓寄存中;同时将存储单元中的测量结果读出,将高八位与筛选出的地址相匹配的测量结果,按照计数值大小的顺序,从 
BRAM头部开始依次存入中,实现了测量结果的重排序;
[0042] 步骤S9:每30个start信号,重复步骤S1至步骤S8的过程;
[0043] 步骤S10:在测量300个start信号之后,筛选后得到分仓寄存中最大的计数值及对应的地址;接着查找存储单元中重排序后高八位与该地址相匹配的测量结果,使用另一个
分仓寄存单元与另一个筛选单元找到所有测量结果的众数值,该众数值对应的测量结果即
为最后输出的时间测量结果。
[0044] 与现有技术相比,本发明具有如下的有益效果:
[0045] 1、分辨率可调;基于自定时振荡环(STR)的TDC模块,进行不同的初始化配置,可以改变震荡信号的频率,从而实现分辨率可调;
[0046] 2、消耗的资源低;本发明的电路结构简单,使用分仓统计与即时存储筛选相结合的统计方法,消耗FPGA的资源较少,可以实现多个通道的时间测量;
[0047] 3、精度高;每个start信号可以对多个stop进行测量,每组数据可以进行300个start信号的重复测量,极大地降低了噪声的干扰。使用码密度校准方式对TDC测量结果进
行校准,减小测量结果的非线性误差,使测量结果精度更高;
[0048] 4、稳定性好;基于自定时振荡环(STR)的TDC模块,振荡时钟抖动小,对工艺、电压、温度(PVT)的鲁棒性高。

附图说明

[0049] 通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0050] 图1为本发明的整体结构示意图。
[0051] 图2为本发明实施例中的TDC模块的结构示意图。
[0052] 图3为本发明实施例中的统计模块的结构示意图。
[0053] 图4为本发明实施例中的多个start信号和多个stop信号时间测量示意图。
[0054] 图5为本发明实施例中的STR时钟域‑系统时钟域采样电路示意图。

具体实施方式

[0055] 下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术
人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明
的保护范围。
[0056] 如图1‑5所示,本发明针对激光测距,基于时间数字转换器(TDC),设计出一种现场可编程门阵列(FPGA)实现的时间测量与统计电路。电路包含TDC模块,采样模块以及统计模
块。其中TDC模块用于测量发射信号Start与多个反射信号Stop之间的时间间隔,采样模块
采用两级触发器对TDC的测量结果采样,统计模块存储并筛选数据后得到众数统计结果,作
为最终的测量结果。本发明的测量分辨率可调,能够完成对每次测量包含噪声的数百个
Stop信号采样。另外,统计模块中采用的分仓统计和定时筛选存储方法降低了硬件资源消
耗,适合应用中多路测量的需求。
[0057] 具体地,在一个实施例中,一种基于TDC的低资源消耗分辨率可调的时间测量电路。该电路基于FPGA实现,测量电路采用自定时振荡环(STR)与计数器相结合的TDC电路,其
特殊结构满足测量分辨率可调和低资源消耗;存储方式采用分仓统计与即时存储筛选相结
合的方法,大大降低了存储资源;支持多个STOP信号,单次测量可测量START脉冲与数百个
STOP脉冲之间的时间间隔,可灵活使用测量结果。
[0058] 1.TDC模块
[0059] TDC模块由自定时振荡环(STR)单元、计数单元、同步采样电路、计算单元、校准单元组成。STR由多级相位延迟单元组成,相位延迟单元采用Muller‑C单元实现,可以产生分
布均匀的多相时钟。多级相位差对振荡周期进行了细分,实现了高分辨率。对 Muller‑C单
元进行不同的初始化配置,可以改变多相时钟的周期,进而实现分辨率可调。计数单元在多
相时钟的驱动下进行计数,同步采样电路在每个stop信号到来后去采样计数值,计算单元
根据采样的计数值计算出测量结果。校准单元对测量结果进行校准,减小相位分布不均带
来非线性误差。
[0060] 2.统计模块
[0061] 统计模块通过分仓统计和定时筛选方法对大量数据进行众数统计,节省硬件资源消耗。统计模块包括存储单元、两个分仓寄存单元、两个筛选单元以及控制单元。
[0062] 存储单元采用FPGA上的BRAM实现,测量数据经过采样单元有效采样之后被依次存储到BRAM底部,筛选后的测量数据被重排后依次存储到BRAM头部。分仓寄存单元采用FPGA
上的LUT实现存储功能,以采样后的测量数据的高八位作为地址,将测量数据划分为256个
区间。分仓寄存中存储的值为落在对应区间的测量数据的计数值。筛选单元采用流水化的
比较电路实现,可以根据分仓寄存中各存储地址对应的计数值对测量数据进行筛选,并根
据筛选结果对有效的测量数据重排序。
[0063] 每组数据要进行多次测量,因此每隔一定的测量次数就使用众数统计筛选法对测量数据进行处理。每组数据测量结束之后,就可以将众数区间筛选出来。对众数区间中的测
量结果,使用另一个分仓寄存单元和另一个筛选单元,继续使用众数统计筛选法,就可以将
该区间中的测量结果的众数值筛选出来。该众数值对应的测量结果即为最后的测量结果。
[0064] 3.多Stop信号测量
[0065] 在应用背景的需求下,单次测量可测量START脉冲与数百个STOP脉冲之间的时间间隔,保证电路在测量量程内接收全部stop信号测量结果。通过异步采样标记,避免了亚稳
态问题,同时结合分仓统计存储,即可实现stop脉冲到来电路即时采样存储测量结果。
[0066] 在本申请的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位
置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须
具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
[0067] 以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影
响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相
互组合。