0.
\ $ \ begingroup \ $

关于跨时钟域的亚稳性,有很多的炒作和关注。如果ASIC/FPGA设计者的目标是确保源时钟中的信号即使带有亚稳态也能传播到目标时钟,请考虑下面的情况。

假设输入脉冲或窗口信号同步器拉伸长足以让锁定目的地时钟的同步器FFs两次或更多,这将确保设置&举行时遇到了同样的信号已经宣称被相同的FF第2次门锁;因此,电路可能在输入信号的前缘经历亚稳态,但信号将使其离开目的地clk的FF。问题是,如果我能确保这发生,我甚至需要同步FFs(双FFs)?难道一个FF还不够吗?我想这取决于FF之后需要对信号做什么。如果我创建基于目标时钟FF的后缘信号的脉冲,那将工作,我将不需要担心电路是否经历亚稳态条件或不。

\ \ endgroup \美元
1
  • \ $ \ begingroup \ $ 不,你需要至少两个同步触发器在链,其中第一个触发器几乎总是亚稳态,而第二个不是。这取决于时钟频率,如果你工作在更高的频率,如GHz,很肯定你需要更多的两个触发器,以实现更好的MTBF在目标时钟域。 \ \ endgroup \美元-Mitu拉吉 7月1日在6:36
1
\ $ \ begingroup \ $

如何保证保存时间宽脉冲结束时是否满足接收触发器的要求?

我认为,您仍然需要至少两个同步触发器。

\ \ endgroup \美元
    1
    \ $ \ begingroup \ $

    问题是,一个亚稳态的失败解决的时间长度甚至可能比你建议的3倍间隔还要长。当然,在3倍时钟周期的亚稳态事件在统计学上比1倍或2倍时钟周期的亚稳态事件更少,但它永远不会为零。

    英特尔有一个有用的介绍性介绍,在这里:https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/wp/wp-01082-quartus-ii-metastability.pdf

    \ \ endgroup \美元
    2
    • \ $ \ begingroup \ $ 论文是有用的信息;在这篇文章的基础上,它说“在这两种情况下,输出过渡到定义的1或0状态被延迟超过了寄存器指定的tCO.”tCO明显小于任何时钟周期。因此,额外的沉淀时间在这里不是大问题。如果你延长输入足够长的时间(3倍或甚至2倍的clk周期),它保证得到至少一个固态锁存的输入,而不违反设置和保持时间。 \ \ endgroup \美元-丹曼 6月11日7:06
    • \ $ \ begingroup \ $ 你误解了。亚稳的定义是失败的没有在tCO期间解决其状态。它会在中间的某个地方停留一段时间,直到它被从一个方向或另一个方向推(例如来自噪音)。从统计分布来看,较长的“停滞期”将比较短的“停滞期”更少。这就是为什么较慢的时钟有较高的MTBF数字。但毫无疑问:如果有亚稳态发生,MTBF永远不会是无限的:总是会有失败。双跳方法降低了概率(增加了MTBF),这就不值得担心了。 \ \ endgroup \美元-俗气 6月11日7:46
    0.
    \ $ \ begingroup \ $

    从定性的角度看待这一点......

    具有稳定性和其效果的事情是它对于源和目的地时钟频率而是相当线性的,但是对于设置和保持时间以及目的地触发器的解析时间(高处理/速度相关)非常非线性)。

    假设你有一个半导体过程,解决亚稳态条件在100 ps,并有一个设置和保持时间1 ns。如果源时钟和目标时钟是100hz并且彼此异步wrt,受亚稳态事件影响的可能性是非常小的(虽然不是零)。

    另一方面,如果源和目标时钟为100 MHz,则接收FF发生亚稳态事件的可能性要大得多,正如英特尔论文hacktastic引用的公式所示。

    \ \ endgroup \美元

      你的答案

      点击“发布答案”,您同意我们的同意服务条款隐私政策Cookie政策

      不是您要找的答案?浏览其他标记的问题问你自己的问题