一. 基于FPGA的时间数字转换器(TDC)的设计思路
时间数字转换的过程就是将时间间隔信号转换为使用者能够直接观测数字的过程。通俗的来说,秒表将运动员从起跑点跑到终点所经过的时间以秒表上的数字展现给裁判,这就是一种时间数字转换的过程,秒表则可以认为是时间数字转换器。
在很多仪器或实验当中,微秒级乃至纳秒级的时间数字转换已经无法满足需求,那么高精度TDC的设计则显得尤为重要。那么,如何实现亚纳秒级的高精度的TDC以满足使用者的需求呢?
最简单的方式就是利用脉冲计数的方式,图1.1显示了脉冲计数法的运行过程。其本质是利用时钟周期填充START与STOP信号之间的时间间隔t,在读出周期个数N后,以
(1)
计算得到。其中Tclk是时钟周期
图1.1 脉冲计数法
然而即使时钟能够做到1GHZ,仅仅使用脉冲计数法也只能达到1ns的测量分辨率,对于一些精密仪器或实验来说,这种方式依然达不到要求。
还有一种方式是利用延迟链的方法,如图1.2所示,将ST信号输入延迟链中,并观测每级延迟的状态,直到SP信号上升沿时,延迟链的状态被锁存,产生000001111111形式的温度计码,根据温度计码的可以知道ST信号经过多少级的延迟后与SP信号的上升沿对齐,即可以知道ST信号与SP信号之间的时间间隔。若经过了m级延迟链,则ST与SP信号间的时间间隔可以表示为
(2)
其中为单位延迟时间。
单纯的延迟链路测量能够达到ps级的分辨率,但是如果要测量毫秒级的时间间隔则需要约~个延迟器件,这无疑是难以做到的。
为了达到大量程和高精度,结合脉冲测量法与抽头延迟链无疑是很好的选择。如图1.3所示,时间间隔所包括的完整的时钟周期个数由脉冲计数法完成,非整数周期部分由延迟链完成。