我了解什么是亚稳态,但不明白将触发器连接在一起如何减少这种情况?
如果第一个触发器的输出是亚稳态的,则将其用作第二个触发器的输入。但是我看不到第二个触发器如何使用这个输入做任何事情并使其稳定。
提前致谢!
我了解什么是亚稳态,但不明白将触发器连接在一起如何减少这种情况?
如果第一个触发器的输出是亚稳态的,则将其用作第二个触发器的输入。但是我看不到第二个触发器如何使用这个输入做任何事情并使其稳定。
提前致谢!
亚稳态无法“治愈”,但如果你等待足够长的时间,它发生的可能性可以任意小。一旦你把它降到宇宙时代的一次,它可能不太可能给你带来麻烦。
这就像在笔尖上平衡一支铅笔。它很可能会摔倒,等待的时间越长,它保持站立的可能性就越小。
等待时间长有两个问题,其中一个是根本问题。
根本问题是,如果在时钟系统中接收来自异步外部系统的输出的单个存储器元件(锁存器或触发器,它们都存在亚稳态),那么您在物理上无法定义等待时间的下限,有时外部信号会在锁存控制边沿附近发生跳变。您必须将信号传输到另一个触发器,让它在那里等待。这为您提供了保证一个时钟周期的最短等待时间。
第二个问题是,您经常试图以尽可能快的速度运行系统,而系统时钟速率不能放慢以在第二个触发器中提供足够的时间。在不降低吞吐量的情况下将信号延迟增加到所需的唯一方法是将等待流水线化到更多阶段。
有些人难以想象人字拖之间发生的事情。有两种方法可以诱导亚稳态,它们都涉及违反触发器规则。一种方法是违反输入建立和保持时间,在触发器期望输入稳定时进行转换。另一种是违反输入逻辑电平,使触发器数据输入处于中间电压电平。处于亚稳态的触发器可以在其输出上产生任一类型的违规,以级联到下一个触发器。
它通过允许更多时间直到信号被实际使用来降低亚稳态影响电路的可能性。使用两个触发器,它允许信号稳定的整个额外时钟周期。三个,它允许两个额外的时钟周期。
它们不会阻止亚稳态影响输出,但它们可以大大增加事件之间的平均时间,因为亚稳态必须具有相对较长的持续时间。
级联三个(或更多)精心设计的触发器可以将事件之间的时间延长到地球年龄。
因为第一个触发器,即使是亚稳态的,也会有时钟的所有周期来稳定。当第二个触发器对第一个触发器进行采样时,它的输出可能已经稳定了。