[求助] FPGA信号同步问题

x282718   2016-9-30 11:34 楼主
请问论坛里的各位大神,用altera三代的 FPGA利用输入脉冲信号的上升沿触发产生一个同步输出脉冲时,输出信号的上升沿相对输入上升沿来说有一个周期的抖动,请问这是怎么产生的,该怎么解决?输出信号频率大概100-200M,万分感激!!!

回复评论 (16)

输入时钟与输出时钟是不是不是一个时钟!!!!跨时钟域,一个时钟的偏差正常
点赞  2016-9-30 18:14
引用: reallmy 发表于 2016-9-30 18:14
输入时钟与输出时钟是不是不是一个时钟!!!!跨时钟域,一个时钟的偏差正常

输入是外部给的一个触发信号,输出用的是板子自己的时钟,我想知道这个跨域时钟产生的偏差是怎么产生的?按理说输入信号周期是固定,时钟也是固定,即便初始相位不一样也不会产生这种抖动问题啊!请大神支支招!感激不尽啊!
点赞  2016-10-9 09:04
输入信号相对板子时钟来说,是一个异步信号。经过板子时钟采样后,该异步信号重新同步于时钟,即输入信号的上升沿与时钟沿对齐了。
点赞  2016-10-9 17:41
引用: coyoo 发表于 2016-10-9 17:41
输入信号相对板子时钟来说,是一个异步信号。经过板子时钟采样后,该异步信号重新同步于时钟,即输入信号的 ...

额,不好意思大侠,有点不太明白。输入是异步信号没错,但它是不变的,与时钟是不一定同步的吧!现在问题是输入与输出的沿相对不固定。
点赞  2016-10-10 18:44
可以做到要求输出的脉冲上升沿可以不抖动,但是其输出的脉冲宽度是会抖动变化的。
点赞  2016-10-11 07:40
引用: x282718 发表于 2016-10-10 18:44
额,不好意思大侠,有点不太明白。输入是异步信号没错,但它是不变的,与时钟是不一定同步的吧!现在问题 ...

输入输出沿相对不固定就是输入与时钟异步造成的。说白了,就是输入的沿与时钟沿的相位关系是随机的。你所谓的“但它是不变”说法是错误的,谁告诉你“它是不变的”,谁来给你保证?
点赞  2016-10-11 09:42
引用: fgdzypf 发表于 2016-10-11 07:40
可以做到要求输出的脉冲上升沿可以不抖动,但是其输出的脉冲宽度是会抖动变化的。

你好,请问你怎么做到上升沿不抖动?脉宽抖动变化是多少?可以给个程序看看吗?先谢谢啦!
点赞  2016-10-12 08:36
引用: coyoo 发表于 2016-10-11 09:42
输入输出沿相对不固定就是输入与时钟异步造成的。说白了,就是输入的沿与时钟沿的相位关系是随机的。你所 ...

不好意思,我的意思是输入信号是周期的,那个沿应该也是相对固定的。我的理解是:输入与时钟相位初始是随机的,但它们不都是周期性的么?经过第一次时钟信号和输入沿产生后,到下一个周期他们的沿不应该也是周期产生的么?怎么会出现下一个沿和前一个沿都不是周期性(多或少一个周期)的了?不知道我这样理解的对不对?谢谢你!
点赞  2016-10-12 08:54
引用: x282718 发表于 2016-10-12 08:54
不好意思,我的意思是输入信号是周期的,那个沿应该也是相对固定的。我的理解是:输入与时钟相位初始是随 ...

举个例子:10M与20M两个时钟相位只有固定的一个关系,那么请问10M与33M的时钟之间的相位关系有多少种呢?
点赞  2016-10-12 10:40
引用: x282718 发表于 2016-10-9 09:04
输入是外部给的一个触发信号,输出用的是板子自己的时钟,我想知道这个跨域时钟产生的偏差是怎么产生的? ...

跨时钟域会有亚稳态的,这个亚稳态可能是0也可能是1,所以肯定会有偏差的!!!你看一下跨时钟域,亚稳态的东西应该就明白了!
如果你能保证本地时钟采样时不会采到外部信号的沿,那就不会有亚稳态了,但是你保证不了,所以肯定就会存在!
简单点说就是沿采沿的时候,你自己想一下,一个沿采另外一个沿,是不是有在前面,在中间,在后面,在中间就是亚稳态!!!!!
点赞  2016-10-12 18:48
时钟是有倾斜的,不是理想中的正方形,是梯形!!
点赞  2016-10-12 18:49
引用: coyoo 发表于 2016-10-12 10:40
举个例子:10M与20M两个时钟相位只有固定的一个关系,那么请问10M与33M的时钟之间的相位关系有多少种呢?

额,我用的都是倍数关系的,时钟100M,外部输入1kHz的
点赞  2016-10-14 15:14
引用: reallmy 发表于 2016-10-12 18:49
时钟是有倾斜的,不是理想中的正方形,是梯形!!

快速的时钟应该是接近正弦信号了吧?
点赞  2016-10-14 15:17
引用: reallmy 发表于 2016-10-12 18:48
跨时钟域会有亚稳态的,这个亚稳态可能是0也可能是1,所以肯定会有偏差的!!!你看一下跨时钟域,亚稳态 ...

嗯,听懂你的意思了,好像是这么回事,那这样子的话,要实现输入输出信号同步就必定有抖动问题了咯?
点赞  2016-10-14 15:21
引用: x282718 发表于 2016-10-14 15:21
嗯,听懂你的意思了,好像是这么回事,那这样子的话,要实现输入输出信号同步就必定有抖动问题了咯?

这个不是抖动,这是跨时钟域,正常现象!!!!不知道你说的同步要到什么程度,如果一个周期都不能差,那就需要整个系统是用一个时钟的!!
点赞  2016-10-15 16:33
引用: reallmy 发表于 2016-10-15 16:33
这个不是抖动,这是跨时钟域,正常现象!!!!不知道你说的同步要到什么程度,如果一个周期都不能差,那 ...

我要用的是信号的上升沿,所以同步要求就是输入输出上升沿相对来说不能动,输出脉宽允许有误差。
点赞  2016-10-16 18:20
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复