如何样品一个非常缓慢的信号?

G

Guest

Guest
喂那里,
我是一个FPGA设计。它运行在100MHz的clcok频率。我需要从样本以外的FPGA异步输入。这是一个缓慢的信号,频率为100Hz的(请注意:不要兆赫),以及上升/下降沿很慢(约5我们),而期间的变化是10%左右。我要计算该信号周期的时间。我该怎么办?抽样信号直接使用100MHz的时钟或分裂的时钟慢得多1比使用生成的时钟信号进行采样?谢谢!

 
喜的Questionmark,

如果我的理解是正确的,你的目标是测量信号的频率为100赫兹时期。正确吗?
梅叙雷
, 您可以直接在100 MHz的时钟周期是适合您的信号周期,您的mesurement超过1周期的精度大约是1的一部分,1000和措施可以在每个周期的最新数字。
Mesuring周期的将更多的时间可以提供更好的准确性,但在频率变化的canges的跟踪更慢。
关心

ž

 
感谢佐罗。你对我的目标的理解是正确的。
我相信你已经注意到
, 信号有一个非常缓慢的上升/下降沿,这意味着,在许多样本将达到上升/下降缓慢信号边沿。你知道,在电压上升/下降沿变化,电压的采样许多不属于法律范围(例如,0 - 0.9V电压为逻辑0和1.8 - 2.5V的为逻辑1)。这会不会引起任何问题?

 
的Questionmark,

我认为最可靠的补救办法就是您的情况您的FPGA之外。这里有一个数字:

-您的时钟决议相比
, 您的外部事件是:100MHz/100Hz = 1万个时钟事件是特别高。每占空比你情书的一半
, 即500亩时钟。在理想的条件下,您当地雇员能够探测到的变化低至100Hz的*(1/500K)= 0.0002赫兹的输入信号。因此
, 你找出如何准确测量您希望是。

-话虽如此
, 你应该注意
, 您的上升/下降沿构成(5us/0.01s)* 100 = 0.05%的外部事件。也就是说,当您的时钟分辨率为(1/500K)= 2U的,你在系统固有误差等于0.05的输入信号(精度)%。

-因此,根据一个共同的工程实践
, 指出在精度大约是十倍以上分辨率差,我建议你不吨样品您的信号速度比(0.0005 * 10)^ -1 =(0.005)^ -1 = 200归赫兹的当翻译为您的系统时钟在clk_sys结果/ clk_event = 200 =“clk_sys = 200 × 100 = 20 MHz的唯一!

如果您有兴趣获得更好的准确性,唯一有可能在我看来
, 是减缓的外部信号
, 以便您的上升/下降沿数字变得更好。这可能是一个比较快
, 您相应调整(阈值),或任何你觉得合适。

希望这是对你有利。

干杯。

 
的Questionmark说:

你知道,在电压上升/下降沿变化,电压的采样许多不属于法律范围(例如,0 - 0.9V电压为逻辑0和1.8 - 2.5V的为逻辑1)。
这会不会引起任何问题?
 
感谢您的帮助,Manny_Calavera和tkbits。
我使用的是2级法郎外部同步异步信号才得以计数器的逻辑去避免出现最坏的情况tkbits提及。但如何解决其他问题,即样本击中了上升/下降沿将是0或1随机(取决于噪音?)。这意味着我将得到这样的一个附件显示采样信号。
我如何衡量一个这样的信号?
很抱歉,您还没有登录查看此附件

 
正如我告诉你所说,最好的办法是减缓外部信号的速度
, 你不能到处摆在软件率!

 
您好Manny_Calavera,
感谢您的建议,但我很抱歉
, 我并不清楚“缓冲外部的缓慢的信号”。怎么做?BTW。该信号是从另一名设备和我没有控制它。另外,我不能添加任何附加设备董事会
, 因为董事会已经存在。
和,我想使用一个硬件计数器测量信号周期,而不是软件,但我认为硬件/软件是不是这个问题的关键点。

 
然后你必须为你解决在手上。请确保您的缓冲区的FPGA内部信号,并继续与您的占空比测量。只要牢记的准确性你的系统的局限性。除了这个,我不认为你可以做任何事情。我的意思是你的软件配置的固件。我同意这是硬件设计的形式,但最终它是一个算法的方法
, 而不是专用硬件。无论如何
, 这是无关紧要的。如果you'r对失控的方法绝对最高激烈,想纠正你的上升
, 如您的测量使用一些“先验”知识/下降沿与预期派生的统计数据
, 加上以上距离的间隔定期更新。最后,您的系统学习和coverge可接受的结果。

干杯。

 
的Questionmark说:

但如何解决其他问题,即样本击中了上升/下降沿将是0或1随机(取决于噪音?)。
 
佐罗说:摆率缓慢引起的问题是可以解决的滞后比较(例如,施密特触发器门)。
 
你什么FPGA的使用?赛灵思家庭数字时钟管理器
, 它的时钟输入的条件
, 消除扭曲。我的意思是
, 你可以养活这些信号DCM公司获得它的一个干净的版本之一。

 
如果信号没有嘈杂你就可以了,对不对?

现在到底有多大的噪音你。要么使用开方(4kTR)如果你知道源,或使用您的示波阻力。如果信号的标准差,10mV的说,你扫去200kV /秒,那么你将在这1sigma 50nanosecond。根据不同的误码率
, 可以承认,你可以采取4sigma,所以你应该在0.2us样本。这是毁灭的一个因素256。或平均。

 
这是很高兴看到我和福格几乎达到完全不同的使用方法相同的结论。

还记得我说:
-报价:

因此,根据一个共同的工程实践,指出在精度大约是十倍以上分辨率差,我建议你不吨样品您的信号速度比(0.0005 * 10)^ -1 =(0.005)^ -1 = 200赫兹的正常化而当翻译为您的系统时钟在clk_sys结果/ clk_event = 200 =“clk_sys = 200 × 100 = 20 MHz的唯一!
 
的CMOS宝贝说:

你什么FPGA的使用?
赛灵思家庭数字时钟管理器,它的时钟输入的条件,消除扭曲。
我的意思是,你可以养活这些信号DCM公司获得它的一个干净的版本之一。
 
tkbits,

我同意你的
, 在正常情况下,这将是危险的不确定状态在长时间的过渡将服务于无非是想增加一个时钟边沿的概率击中造成的灾难。然而,你不觉得缓冲FPGA内部信号将减少懒惰作为开关特性的危险(数字不是模拟的缓冲区),现在将覆盖的外部信号?当然
, 风险总是像任何外部异步信号存在。但是
, 与缓慢过渡的问题是克服有辱人格的时序性能(模糊边缘时间),这是另一个问题
, 现在的费用。铭记在FPGA的IOB颁布架构。此外,在这个特定的应用程序,没有必要为3级同步器
, 因为它是保证内部时钟将达到改变后发生的信号。我想听听你这方面的意见。顺便说一下,为有趣的链接thanx。

干杯。

 
的Questionmark说:佐罗说:摆率缓慢引起的问题是可以解决的滞后比较(例如,施密特触发器门)。
 
以implimet sxhmit触发所有你需要使用二极管,和上拉或下拉电阻(取决于你的极性检测)电阻器,只需连接一个FPGA的输入signalto输入,并通过二极管第二个输入相同的输入信号
, 创造比较里面,如果你在你需要三个输入更准确使用两个二极管关心,

 
Manny_Calavera说:

此外,在这个特定的应用程序,没有必要为3级同步器,因为它是保证内部时钟将达到改变后发生的信号。
 

Welcome to EDABoard.com

Sponsor

Back
Top