尚未提及的一个因素是亚稳定性。如果锁存电路被一系列输入/转换击中,使得结果状态将取决于传播延迟或其他不可预测的因素,则不能保证结果状态将是干净的“高”或“低”。例如,考虑一个沿边沿触发的触发器,该触发器当前正在输出“低”,并且其输入变化几乎在时钟沿到达的同时从低变为高。如果时钟沿在输入更改之前发生足够长的时间,则输出将一直处于低电平,直到下一个时钟沿。如果时钟沿在输入更改后发生足够长的时间,则输出将快速从低到高切换一次,并保持在那里直到下一个时钟沿。如果上述两个条件均不适用,。它可能会保持低电平,或者快速切换一次并保持高电平,但可能会保持低电平一会儿,然后切换,或者先切换再切换一段时间,再来回切换几次,等等。
如果设计是完全同步的,并且所有输入都是双同步的,那么定时脉冲就不太可能以使同步器在最佳时间切换以混淆第二个的方式击中同步器的第一个锁存器。闩锁。通常,将此类事情视为“不会发生”是安全的。但是,在异步设计中,通常很难对此类事情进行推理。如果违反了锁存电路的时序约束(不仅是触发器,还违反了用作锁存器的逻辑的任何组合),那么直到下一次存在有效的输入条件强制锁存器时,才知道输出将做什么。到已知状态。延迟的输出很可能会导致违反下游输入的时序约束,从而导致意外情况,
建模异步电路的最安全方法是,几乎每一个输出电路在“ 0”和“ 1”之间切换时都会产生一小段“ X”输出。不幸的是,即使在实际上几乎可以肯定会导致行为稳定的情况下,这种方法也经常导致几乎所有节点都显示“ X”。如果系统在仿真时可以正常工作,因为输入更改后所有输出立即变为“ X”,并保持“ X”直到输入稳定,这是电路可以工作的好兆头,但是要使异步电路在这样的约束下工作通常很难。