社区导航

 
查看: 6029|回复: 37

[讨论] 用FPGA实现高精度时间间隔测量

[复制链接]

273

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

发表于 2014-8-19 11:01:21 | 显示全部楼层 |阅读模式
大家好,我想问一下,大家是否用FPGA做过高精度的时间测量,时间间隔是0.1ns的,或者是10ps的。
我看文献中显示有人在2000年左右就用FPGA实现了100ps分辨率的高精度时间间隔采集,
但是我给xilinx的技术人员打电话询问,他们说单从硬件上来说是无法实现的,
100ps这还只是分辨率,要想稳定采集恐怕更困难,
我想问一下论坛里面有经验的技术人员,
经过这么多年的发展,精度达到10ps的TDC是否有可能实现?
希望有经验的朋友留个言,不用说的太细,指点一下就行,谢谢
此帖出自FPGA/CPLD论坛
把复杂的问题变简单需要智慧


回复

使用道具 举报

273

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

 楼主| 发表于 2014-8-19 11:08:30 | 显示全部楼层
不仅拘泥与FPGA,任何分立器件都可以,只想知道是否有希望实现。
把复杂的问题变简单需要智慧


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-20 09:23:30 | 显示全部楼层
fpga完全可以实现,只是需要一定的技巧而已。可以参考我的这篇文章:
http://bbs.ednchina.com/BLOG_ARTICLE_3012066.HTM


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-20 09:24:06 | 显示全部楼层
本帖最后由 coyoo 于 2014-8-20 09:25 编辑

fpga完全可以实现!由于文章写在其他网站,这里写连接需要审核。这是本人实测的结果: 1.png

点评

您好,我想知道您的实验结果是怎么测出来的,通过什么方式测的,也就是图片根据什么结果画出来的,多谢多谢!  详情 回复 发表于 2016-3-25 10:50
久仰您大名,我对这个问题也同样不解。您看看如果采用这个做法是否能够实现:假设用A的FPGA,你用锁相环被频到200M,然后相移90°,180,270,360.假设测得一段时间的计数值是200,那么你的结果是200,200,200,201.累加  详情 回复 发表于 2014-8-20 10:56


回复

使用道具 举报

692

TA的帖子

71

TA的资源

纯净的硅(中级)

Rank: 5Rank: 5

发表于 2014-8-20 10:56:34 | 显示全部楼层
coyoo 发表于 2014-8-20 09:24
fpga完全可以实现!由于文章写在其他网站,这里写连接需要审核。这是本人实测的结果:

久仰您大名,我对这个问题也同样不解。您看看如果采用这个做法是否能够实现:假设用A的FPGA,你用锁相环被频到200M,然后相移90°,180,270,360.假设测得一段时间的计数值是200,那么你的结果是200,200,200,201.累加然后除以4,你这相当于800M的计数时钟了。如果相移是72°这样,就可以到1G。10ps的可以用AD+离散傅里叶来配合进行。但是需要校正。听说国防科技大学有类似的做法。 如果这个方法可行,怎样解决边沿的问题呢,200MHz 的边沿, 不可能和10GHz 的边沿一样啊,求指教


点评

个人觉得还是时间内插法比较靠谱些!  详情 回复 发表于 2014-8-20 11:28


回复

使用道具 举报

139

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2014-8-20 11:00:26 | 显示全部楼层
高人就在这栋楼,楼主有什么不明白的追问即可,高人还写过一本书叫《深入理解Altera FPGA应用设计》,你也可以找来看看

点评

呵呵,多谢关注!  详情 回复 发表于 2014-8-20 11:28


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-20 11:28:45 | 显示全部楼层
phantom7 发表于 2014-8-20 10:56
久仰您大名,我对这个问题也同样不解。您看看如果采用这个做法是否能够实现:假设用A的FPGA,你用锁相环 ...

个人觉得还是时间内插法比较靠谱些!


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-20 11:28:59 | 显示全部楼层
CMOS 发表于 2014-8-20 11:00
高人就在这栋楼,楼主有什么不明白的追问即可,高人还写过一本书叫《深入理解Altera FPGA应用设计》,你也 ...

呵呵,多谢关注!


回复

使用道具 举报

87

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2014-8-20 11:52:12 | 显示全部楼层
这有个IEEE的文章,你可以看一下  http://ieeexplore.ieee.org/xpls/ ... r=4775079&tag=1

点评

文章不错:The 10-ps wave union TDC: Improving FPGA TDC resolution beyond its cell delay本人就是依据这篇文章弄出来的。  详情 回复 发表于 2014-8-20 13:38


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-20 13:38:57 | 显示全部楼层
xiefei 发表于 2014-8-20 11:52
这有个IEEE的文章,你可以看一下  http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=4775079&tag=1

文章不错:The 10-ps wave union TDC: Improving FPGA TDC resolution beyond its cell delay本人就是依据这篇文章弄出来的。



回复

使用道具 举报

273

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

 楼主| 发表于 2014-8-20 18:55:20 | 显示全部楼层
感谢大家的热心回复,感谢大牛、小牛还有跟我一样的刚刚接触这个领域给我指点的朋友!
是老师项目需要,我刚刚接触这个领域,觉得很困惑,
等我先看一下各位给我的参考,再提问,否则提不出什么像样的问题。
非常感谢!

点评

我比较关心,你老师打算用这个做什么项目?  详情 回复 发表于 2014-8-21 09:25
把复杂的问题变简单需要智慧


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-21 09:25:57 | 显示全部楼层
cqr 发表于 2014-8-20 18:55
感谢大家的热心回复,感谢大牛、小牛还有跟我一样的刚刚接触这个领域给我指点的朋友!
是老师项目需要,我 ...

我比较关心,你老师打算用这个做什么项目?

点评

cqr
是想进行高精密测距,您之前用这个精密时间测量做的是什么项目呢? 如果10ps的测量精度,测量的时间范围最大能达到多少呢?  详情 回复 发表于 2014-8-21 20:47


回复

使用道具 举报

273

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

 楼主| 发表于 2014-8-21 20:47:05 | 显示全部楼层
coyoo 发表于 2014-8-21 09:25
我比较关心,你老师打算用这个做什么项目?

是想进行高精密测距,您之前用这个精密时间测量做的是什么项目呢?
如果10ps的测量精度,测量的时间范围最大能达到多少呢?

点评

测距一般不需要这么高精度,使用激光或雷达测距即可。 我们用于高能物理方面;测量范围没有限制,理论上可以无限测量。关于芯片,你可以参考德国的ACAM公司的TDC-gpx芯片,我的EDN博客也有介绍。  详情 回复 发表于 2014-8-22 08:55
把复杂的问题变简单需要智慧


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-22 08:55:07 | 显示全部楼层
cqr 发表于 2014-8-21 20:47
是想进行高精密测距,您之前用这个精密时间测量做的是什么项目呢?
如果10ps的测量精度,测量的时间范围 ...

测距一般不需要这么高精度,使用激光或雷达测距即可。
我们用于高能物理方面;测量范围没有限制,理论上可以无限测量。关于芯片,你可以参考德国的ACAM公司的TDC-gpx芯片,我的EDN博客也有介绍。

点评

cqr
背景不同!我在查阅文献的时候,虽然有的文献说精度可达100ps但是测量范围都很小有的说是微秒有的是纳秒,给我感觉要想精度高测量范围就小,不知道是否正确。 另外有个问题,如果测量精度要达到1ns,而fpga端口采集  详情 回复 发表于 2014-8-22 23:13


回复

使用道具 举报

273

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

 楼主| 发表于 2014-8-22 23:13:44 | 显示全部楼层
coyoo 发表于 2014-8-22 08:55
测距一般不需要这么高精度,使用激光或雷达测距即可。
我们用于高能物理方面;测量范围没有限制,理论上 ...

背景不同!我在查阅文献的时候,虽然有的文献说精度可达100ps但是测量范围都很小有的说是微秒有的是纳秒,给我感觉要想精度高测量范围就小,不知道是否正确。
另外有个问题,如果测量精度要达到1ns,而fpga端口采集脉冲要求上升沿保持时间大于1ns,这时候已经不具备正确识别1ns的上升沿能力了。既然识别不出1ns的上升沿,在内部做一些高精度的延时计算,做到100sp甚至10ps是怎么补偿的呢?
也就是说瓶颈在fpga识别上升沿的精度上,这里引入的误差,软件能补偿回来吗。
不知道您在开发的时候是否遇到过这个问题?


点评

测量范围由coarse time决定,理论上coarse counter可以无限大,只要FPGA资源足够; 关于fpga引脚属性,目前我们还没有考虑这个问题;你们的顾虑也是我们一直在考虑的问题。  详情 回复 发表于 2014-8-25 09:16
把复杂的问题变简单需要智慧


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-25 09:16:08 | 显示全部楼层
cqr 发表于 2014-8-22 23:13
背景不同!我在查阅文献的时候,虽然有的文献说精度可达100ps但是测量范围都很小有的说是微秒有的是纳秒 ...

测量范围由coarse time决定,理论上coarse counter可以无限大,只要FPGA资源足够;

关于fpga引脚属性,目前我们还没有考虑这个问题;你们的顾虑也是我们一直在考虑的问题。

点评

cqr
10万个逻辑单位的fpga只做测距以及校准、修正,测试时间是1~2秒可以吗? 数字电路响应时间ns级基本上是最高的了,文献里说指标要求再高就得想办法补偿了。 你们做的高精度测量ps秒级的,输入信号最大频率大概是多  详情 回复 发表于 2014-8-25 21:41


回复

使用道具 举报

273

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

 楼主| 发表于 2014-8-25 21:41:08 | 显示全部楼层
coyoo 发表于 2014-8-25 09:16
测量范围由coarse time决定,理论上coarse counter可以无限大,只要FPGA资源足够;

关于fpga引脚属性 ...

10万个逻辑单位的fpga只做测距以及校准、修正,测试时间是1~2秒可以吗?
数字电路响应时间ns级基本上是最高的了,文献里说指标要求再高就得想办法补偿了。
我还想了解一下您做的ps级别高精度测量,输入信号最大频率大概是多少?

点评

1、关于测试时间,你可以定义一个coarse counter,用于统计系统时钟;比如250MHz的时钟,40bit的counter即可测量大概1个多小时。 2、输入信号的频率,你是指脉冲的上升时间还是脉冲的重复周期?  详情 回复 发表于 2014-8-26 09:43
把复杂的问题变简单需要智慧


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-26 09:43:11 | 显示全部楼层
cqr 发表于 2014-8-25 21:41
10万个逻辑单位的fpga只做测距以及校准、修正,测试时间是1~2秒可以吗?
数字电路响应时间ns级基本上是 ...

1、关于测试时间,你可以定义一个coarse counter,用于统计系统时钟;比如250MHz的时钟,40bit的counter即可测量大概1个多小时。
2、输入信号的频率,你是指脉冲的上升时间还是脉冲的重复周期?

点评

cqr
谢谢您的热心回复,我是想知道如果是测窄脉冲可以测量的周期最小是多少。 现在是项目论证阶段,有很多东西都是刚刚接触,问的不准确烦请谅解  详情 回复 发表于 2014-8-26 15:17


回复

使用道具 举报

273

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

 楼主| 发表于 2014-8-26 15:17:20 | 显示全部楼层
coyoo 发表于 2014-8-26 09:43
1、关于测试时间,你可以定义一个coarse counter,用于统计系统时钟;比如250MHz的时钟,40bit的counter ...

谢谢您的热心回复,我是想知道如果是测窄脉冲可以测量的周期最小是多少。
现在是项目论证阶段,有很多东西都是刚刚接触,问的不准确烦请谅解

点评

这个我没有考虑过,我们的项目限定脉冲最小间隔不能小于180ns,所以我们不太关心这个问题。具体到fpga-based TDC来说,这个跟逻辑处理的时间有关系,所以跟你实际逻辑设计有关系。 另外,你可以参考德国ACAM公司  详情 回复 发表于 2014-8-26 16:46
把复杂的问题变简单需要智慧


回复

使用道具 举报

340

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-8-26 16:46:14 | 显示全部楼层
cqr 发表于 2014-8-26 15:17
谢谢您的热心回复,我是想知道如果是测窄脉冲可以测量的周期最小是多少。
现在是项目论证阶段,有很多东 ...

这个我没有考虑过,我们的项目限定脉冲最小间隔不能小于180ns,所以我们不太关心这个问题。具体到fpga-based TDC来说,这个跟逻辑处理的时间有关系,所以跟你实际逻辑设计有关系。

另外,你可以参考德国ACAM公司的TDC芯片的spec DB_GPX_e.pdf (653.56 KB, 下载次数: 56)

点评

cqr
知道了,我也在查GP22的资料。谢谢您,非常感谢!  详情 回复 发表于 2014-8-26 17:07


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2018-12-10 20:36 , Processed in 0.483071 second(s), 17 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表