在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 6680|回复: 14

[讨论] 关于FPGA测不规则脉冲数,怎样才能不丢脉冲,测试与分析!

[复制链接]
发表于 2011-7-11 11:44:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
各位大虾好,我现在在做一个500us内测量外部输入脉冲个数的项目,要求一个脉冲也不能丢失,脉冲频率在10Hz-2.5MHz。
    我现在是这么做的:做一个500us的闸门信号,在此时间内,每个脉冲的上升沿到来计数器加1,闸门信号到达时锁存计数器值,清零后再循环计数。为了在清零时不丢失脉冲,我使用乒乓操作,保证500us闸门信号内的脉冲肯定都能检测到。
    但是我现在检测的结果是有±1个脉冲数的偏差,比如输入1MHz的脉冲信号,大部分值是500,可是有时也有499和501,而且这两个值不是挨在一块的;输入是2MHz的脉冲信号,大部分计数值是1000,但是也有999和1001。测试低频信号时完全正确,没有出现误差(10Hz-几百K)。另外我在FPGA内部,使用8MHz系统时钟分频出1MHz的测试脉冲,结果也完全正确,没有误差。
    由于是在规定时间内测试不规则的脉冲数,因此有些测频方法不能够使用,比如等精度测频等等;我现在使用的原理只是在给定时间内检测脉冲上升沿,我认为这个方法很简单,只要脉冲信号质量好,应该能达到要求;其它的方法我暂时还没想到,不知哪位大侠有好的方面么?
    我现在怀疑出现问题的原因有这么几种:1,脉冲信号质量不好,因为高频时出问题,低频时没问题,因此怀疑高频时脉冲信号质量变差。(脉冲信号现在是由信号源输出,直接给FPGA的)2,脉冲上升沿在闸门跳变的瞬间到来,导致漏脉冲,因为内部时钟和外部脉冲不同步,因此我觉得有可能发生。3,为什么能多检测出1个脉冲数,这个问题我还没想到原因。
    接下来想到的解决方法:1,脉冲信号进行整形后再输入FPGA;2,由于脉冲信号最高为2.5MHz,使用8MHz系统时钟的D触发器对输入脉冲信号进行整形和同步。
    以上是我的测量原理,问题分析及解决方法的描述,欢迎大家在任何方面提些建议,谢谢!
    后面我会把我修改后的结果发上来,做进一步分析。
发表于 2011-7-11 12:56:43 | 显示全部楼层
估计是 脉冲刚刚出现在500us的闸门信号的 起始  或者 结束 位置
 楼主| 发表于 2011-7-11 14:06:35 | 显示全部楼层
回复 2# Lawee

但是我认为如果有一次是正确的,按时间向后推,都应该是正确的,因为是周期信号。
发表于 2011-7-11 15:11:06 | 显示全部楼层
detect_en 和 pulse 两个信号同时从0变成1 能检测 到吗?
发表于 2011-7-11 15:34:37 | 显示全部楼层
外部的检测信号相对你的内部电路是否同步?
 楼主| 发表于 2011-7-11 17:59:27 | 显示全部楼层
回复 5# MOSFET


    不同步
 楼主| 发表于 2011-7-11 18:10:54 | 显示全部楼层
回复 4# Lawee

同时变化的话,我仿真的结果是正确的,而且我用内部同步时钟分出的脉冲信号测试结果也是正常的,所以应该能判断可以检测到。
发表于 2011-7-11 18:11:23 | 显示全部楼层
关于第一种和第二种可能,如果是信号质量不好,或者内外信号不同步导致漏检,那么不可能每次测出来刚好不多不少相差一个脉冲吧。。。因该是像二楼说的,脉冲刚刚出现在500us的起始或者结束位置。
发表于 2011-7-19 14:26:12 | 显示全部楼层
如果你的设计是采用高频时钟(如你说的8M)先同步输入信号(2M)再通过监测上升沿来计数脉冲的话,即
D-->Syn1-->Syn2-->Syn3;
pulse=Syn2&(~Syn3);
极端情况下,多采一个脉冲是有可能的。少采一个很难理解,觉得很难发生。
发表于 2011-7-19 14:47:09 | 显示全部楼层
不知道楼主是不是在实际应用中使用的还是只是自己的练习?
如果是实际应用具体应用在什么情形下呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-22 19:48 , Processed in 0.025482 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表