热度 1| |
——摘自异步复位设计中的亚稳态问题及其解决方案
Trecovery ( recovery time) 指的是原本有效的异步复位信号释放(对低电平有效的复位来说就是上跳沿) 与紧跟其后的第一个时钟有效沿之间所必须间隔的最小时间。 Tremoval ( removal time) 指的是时钟有效沿与紧跟其后的原本有效的异步复位信号变得无效之间所必须间隔的最小时间。 如果异步复位信号的上跳沿(以低电平有效为例) 落在Trecovery与Tremoval的窗口之内, 触发器的输出端的值将是不确定的, 可能是高电平, 可能是低电平, 可能处于高低电平之间, 也可能处于震荡状态) , 并且在未知的时刻会固定到高电平或低电平。这种状态称为亚稳态。 反映到仿真模型中, 输出端的值是不定态X。图中tclk- q是触发器时钟端到Q 端的延时(就是Tco), Tmet是保证亚稳态不传播到下一级所允许的亚稳态持续的最大时间。 在同步复位的电路中, 不存在上述问题。而在异步电路中, 因为外部的复位信号和内部的时钟之间是毫无时间关系的, 因此recovery/removal 冲突是必然的, 亚稳态必定会发生,只是有发生几率问题。 ? 当一个信号被寄存器锁存时, 如果数据信号和时钟之间不满足setup/ho ld时间, 输出端也会出现亚稳态,这是另一种亚稳态。