FPGA实现基于时间内插法的TDC测量----第一章

前段时间有同学找我做这个毕业设计,一开始也不太了解TDC测量,只是听学姐说是用FPGA实现时间测量的项目,第一直觉觉得不太难,所以就答应帮忙,所以此处给所有准备使用FPGA实现TDC的朋友们第一个建议,这个项目真的不太容易,请做好心理准备!
进入正题,首先是什么是TDC和什么是时间内插法?
TDC : Time To Digital Convertor
TDC的分类 : 起始停止计数型TDC、基于时间内插法、基于时间戳技术的TDC、基于时间放大技术的TDC
关于这些TDC技术具体是什么请读者朋友们自行百度,这里由于篇幅有限个人时间有限,暂不一 一详述,我想在这里起到抛砖引玉的作用,把个人做这个项目中遇到的问题和解决的方法分享给大家,希望大家能在做相关项目时能尽快找到方向少走弯路。
时间内插法我的理解是:在FPGA中已有的时钟的周期内部插入小的计数模块(延迟链与时钟相位),实现对已有的时钟的一个时钟周期再分割,使其有更小的刻度,这样时钟周期的测量精度也就能更高
FPGA实现基于时间内插法的TDC测量----第一章_第1张图片
红色的竖线即为插入的延迟单元,这些延迟单元将一个时钟周期平均等分,使得时钟周期带上了刻度,由于每个延迟链的延迟时间基本固定,所以可以精确的知道每个刻度代表的时间,从而实现实现更精确的测量。
如果你准备使用FPGA实现基于时间内插法的TDC测量的话,在这里给大家几个建议:
一、明确目标性能要求,使用FPGA一般可以做到10~200ps级别,其中10ps级别的代码和实现方式属于保密级别一般难以在网上直接找到方案和源代码,45ps的延时用FPGA比较容易实现
二、使用FPGA的实现方案,如果是基于内部快速进位链(LE之间)实现的话,进位链延迟并不稳定关于这点,请大家查找和理解FPGA芯片内部的LAB和LE结构,不同的LAB之间有较长的连线造成比较大的延迟(现对于LE之间的连线延迟)需要使用一定的算法进行修正,并且FPGA芯片内部的延迟还很容易受到外界环境(温度,供电电压)的影响,出现比较大的波动,这个也需要算法去修正。
三、FPGA实现时间内插法的TDC测量的话,使用逻辑进位链和使用时钟相位内插法均可以实现,其中时钟相位内插法实现更为简单,但是精度受移动相位的时钟多少的限制,一般使用PLL产生不同相位延迟的时钟。
四、如果是工程应用TDC测量的话,建议直接买德国MAMC的TDC测量芯片GP-21系列可以稳定测量精度为45ps,每片芯片的售价20元左右,高端的GP-X系列精度10ps,售价2000元左右

你可能感兴趣的:(工程,感悟)