概述
正文内容均来自于Henzler于2010年发表的《Time-to-Digital Converters》。文中所有内容都是我个人对上述文献的一些总结,我还很菜,如有错误,敬请指正。
上次说到第一代TDC为模拟TDC,并举了双斜率积分测量的例子。但由模拟TDC的结构可知,其本质上是将时间信号转换成电压信号,再通过TDC转换成数字输出,处理过程仍然在电压域,且在模拟电压域的限制全都保留了下来。发挥不了随着工艺的进步给数字电路技术带来的优势,例如:随着晶体管的翻转速度加快,导致门电路的开关速度加快;以及晶体管延时缩短,可以直接达到更高的分辨率;还有数字电路自身的灵活性、鲁棒性等。所以诞生了第二代TDC--全数字TDC(Fully Digital TDCs)。
三、第二代TDC(全数字TDC)
全数字TDC只有从时间信号到数字信号的转变,没有模拟转变,充分发挥了数字电路的规模性和鲁棒性的优势。基本测量原理如下:
CP为参考时钟信号,Tcp为时钟信号的周期。start和stop信号分别为时间起始和结束信号。count为计数器输出信号。ΔT为待测时间间隔。由之前提到过的粗量化和细量化两个步骤可得:
其中,N为计数器计数值,ΔTstart与ΔTstop表示start与stop与其对应的下一个参考时钟上升沿的时间间隔,即待细量化的值。可见待测时间间隔ΔT的量化误差在两个时钟周期±Tcp之内。
由于时钟周期Tcp难以测量ΔTstart与ΔTstop,因为后这小于前者。所以需要更小的时间间隔来完成更进一步的测量。第一种方法即更换更高的参考时钟信号,但是由于CMOS振荡电路以及工艺的原因,振荡电路本身就存在振荡频率上限,如65nm工艺,最大频率在5-10GHz,最大测量精度也只有100-200ps。或者选用更加昂贵的振荡器,但会带来成本问题。第二种方法是采用插值法,在原有的参考时钟周期中进行插值,从而得到更小的分辨率。插值法有如下计算:
其中,k为插值因子。此时的分辨率为Tcp / k。这样就在没有更高频率参考时钟的情况下达到了更高的分辨率。但是在这种同步测量的方法,参考时钟的抖动将会很大程度影响测量精度。
四、基本数字延迟线TDC( Basic Digital Delay-Line Based TDC)
随着数字电路和工艺的发展,数字电路延时可以做到很短,以延时单元(注:此处延时单元为Buffer,而不是反相器Inverter)来形成延时链,在延时链中传播信号可以实现更高的分辨率。延时链一般由延时单元和触发器组成,如下图:
start在延时链中传播,将通过的每一个触发器的输入改为高电平状态,直到stop信号来临,每个触发器被触发,输出对应的状态值,得到如下图结果:
通过stop来临时每个触发器的输出状态,可以得到一串温度计码,由温度计码中高电平与低电平的转换位置,可以得到信号正在延时链中传播了几个单元,再根据每个单元的延时时间,可以得出传播的时间。该结构的分辨率TLSB即为延时链中每个延时单元的延时时间。有经过的延时单元个数N为:
进而得待测时间ΔT:
其中, ε为量化误差。主要是由于,转化过程存在中间状态引起的,即,传播到下一级延时单元时,该延时单元还未来得及完成转化,而导致触发器得输入未来得及改变。
五、反相器延时链TDC( Inverter Based Time-to-Digital Converter)
如果将上述延时链中的延时单元缓冲器Buffer换成反相器Inverter,分辨率可以挺高一倍,因为Buffer由两个Inverter构成,即Buffer延时为Inverter的两倍。结构如图所示:
start与stop反向信号分别在两条有反相器组成的延时链中传播,上面延时链的每一个延时单元的输出总是与下面延时链与之对应的延时单元的输出反相,需要在注意的是图中的触发器为差分触发器(即当输入信号有一定差值的时候才会有效输出),并且将触发器的输入间隔性的反接,目的是为了保证当第一调延时链入上升沿信号被反相成下降沿时,将下降沿接在触发器的低电平有效段,而另一条延时链对应位置值输出的上升沿接在高电平有效段,从而传播链经过的每一个触发器能够正常的输出。这样就实现了反相器延时链TDC,分辨率比Buffer延时链TDC高一倍。
六、同步测量与异步测量(Synchronous Versus Asynchronous Time Interval Measurement)
上面在三中叙述的插值法就是同步测量,其测量精度被参考时钟的稳定影响,从而带来误差。四与五中所述的异步测量方法,虽然没有参考时钟抖动带来的影响,但是当待测时间比较长时,延时链也会变得很长,延时单元自身的误差也会累积到以及比较大的值。所以当待测时间间隔比较短或者中等的时候,用异步测量比较好,而待测时间比较长,可以采用同步测量。比较时钟抖动带来的误差和延时单元的累计误差可以帮助做出较好的选择。
最后
以上就是无限黑夜为你收集整理的TDC学习--Time-to-Digital Converter Basics(二)的全部内容,希望文章能够帮你解决TDC学习--Time-to-Digital Converter Basics(二)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复