怎样有FPGA测量一个周期基于fpga的信号发生器的周期

这个周期信号的周期范围是多少?是否稳定,检测精度要求?
简单的做法无非就是用fpga的时钟采样周期信号,计数低电平有多少个点,高电平有多少个点,然后计算出时间。误差就和具体的时间相关了。
楼主给出的信息太少了
UID198245&帖子1244&精华0&积分5792&资产5792 信元&发贴收入6420 信元&推广收入0 信元&附件收入786 信元&下载支出1942 信元&阅读权限50&在线时间254 小时&注册时间&最后登录&
等待大侠。
UID378283&帖子1194&精华0&积分11154&资产11154 信元&发贴收入6255 信元&推广收入0 信元&附件收入16874 信元&下载支出12100 信元&阅读权限70&在线时间1215 小时&注册时间&最后登录&
<td class="t_msgfont" id="postmessage_楼已经说得清楚了,就那么做就可。
可以直接用chipscope去抓数据,因为你要抓的时间是1S,而时钟是20M,也就是大概要十万个采样点才行,这对FPGA来说自然不行,太大了。
但没必要你每个数据都存下来,而是有意义的数据存储下来,就是说比较你数据变化周期如100个时钟来一次的话,那100个周期里就一个有意义数据,存下来一个就够了。
可以叫一个数据来临指示信号,每100个时钟此信号就脉冲高一次,平时为低。 那这样chipscope采集数据时,就以此信号为触发条件,存储数据方式不要选择为连续存储,而是触发次就存储一个数据,这样比如8K个存储深度,那就足够把你的数据全抓下来分析了。
UID968082&帖子37&精华0&积分109&资产109 信元&发贴收入200 信元&推广收入0 信元&附件收入20 信元&下载支出471 信元&阅读权限10&在线时间70 小时&注册时间&最后登录&
其实是想对输入的一个1s左右的信号测频率准确度,打算用本地产生一个1s的信号与接收信号进行对比。
输入的信号频率的准确度关系到系统很多模块。现在就想用FPGA来做,只用FPGA来得到外部输入信号的频率或周期的误差,然后把这个误差传给其他器件。
不能用chipscope抓数据。我现在就是要用FPGA本身来获取输入1s左右周期信号的频率偏差。不知能否只用FPGA来实现呢。
采样的方法应该不可行。
UID968082&帖子37&精华0&积分109&资产109 信元&发贴收入200 信元&推广收入0 信元&附件收入20 信元&下载支出471 信元&阅读权限10&在线时间70 小时&注册时间&最后登录&
& & 精度要求在0.1个ppm,采样的方法估计不得行啊,那样要处理很多数据。不知能否直接对一个输入信号的周期用FPGA的本地时钟进行计数呢?
UID378283&帖子1194&精华0&积分11154&资产11154 信元&发贴收入6255 信元&推广收入0 信元&附件收入16874 信元&下载支出12100 信元&阅读权限70&在线时间1215 小时&注册时间&最后登录&
& & 当然可以,问题是资源啊,你有那么多资源去存储那么大的数据吗?
再者,完全去存储一个完整周期的数据是没有意义的,一般只存DEBUG相关的那部分就可了,
如果你实在有需求,可将相关数据用示波器或逻辑分析仪的方式来查看(相当于使用片外存储空间了)。
UID378283&帖子1194&精华0&积分11154&资产11154 信元&发贴收入6255 信元&推广收入0 信元&附件收入16874 信元&下载支出12100 信元&阅读权限70&在线时间1215 小时&注册时间&最后登录&
如果你指的是建立个计数器,根据1S时间进行计数,然后根据此计数器大小选择抓取数据查看某一小时间片断,这样想看哪就抓哪, 这种方式是可以的,并且也推荐,如果没有目的去DEBUG,而是先查看下里面各阶段的数据的话。
UID968082&帖子37&精华0&积分109&资产109 信元&发贴收入200 信元&推广收入0 信元&附件收入20 信元&下载支出471 信元&阅读权限10&在线时间70 小时&注册时间&最后登录&
楼上是对的,问题已解决。其实问题就在于对一个输入信号的上升沿触发的处理。把该
输入信号寄存器打两拍即可。
[通过 QQ、MSN 分享给朋友]
欢迎访问 TI SLL(信号链)专区

我要回帖

更多关于 fpga学习周期 的文章

 

随机推荐