亚稳态清除计划
简单介绍:
有建立和保持时间要求的所有寄存器允许在输入端口捕获数据。最后传送到寄存器输出端口的捕获数据是高或者低电平信号取决于输入端口信号的捕获。然而,如果数据违反了建立保持时间要求,将会导致寄存器的输出值出现亚稳态。在这个状态下,寄存器的输出数据值将会盘旋在高低电平之间。当这个值传播到电路中,寄存器将锁存错误值,最终导致系统运行失败。
只要系统中有异步元件,亚稳态就是无法避免的,亚稳态主要发生在异步信号检测、跨时钟域信号传输以及复位电路等常用设计中。
亚稳态问题通常发生在信号传输于两个不相关时钟域的既定电路之间。对付亚稳态将系统失败概率降至最小,电路设计者通常在目的时钟域使用一些紧连的寄存器(同步寄存器链)重新将信号同步到新的时钟域。
同步寄存器链能够被定义为一系列的寄存器,以达到下述要求:
■ 所有寄存器钟控于同一个或者相位相关的时钟
■ 第一个寄存器由不相关的时钟域或者说是异步地(信号)来驱动,并且其扇出值为1
为什么会产生亚稳态
存储元件如交叉耦合反相器、SR锁存器、D锁存器和D触发器等都有两个稳定的状态,即0和1,也就是能存储0和1这两个状态。亚稳态就是既不是0又不是1的状态,或者说可能0也可能是1,不能确切知道它的状态。为什么会出现亚稳态呢?这是因为我们在分析元器件时,是把元器件抽象为理