复位信号有recovery和removal检查,和数据信号的setup和hold类似
但是复位信号 只检查释放时的recovery和removal,
因为,在复位有效时,即使第一T亚稳态,因为复位有效一般持续多周期,下一T也会被复位。
但是复位释放时,就要杜绝亚稳态。
异步复位同步释放原理
重点看同步释放如何实现的。
在异步复位状态时:q1 q2为0,当rst_async_n释放时(由0到1)
T1时:q1可能会出现亚稳态;q2由于输入 输出都为0不会出现亚稳态。
T2时:q1亚稳态已过去,可能为0;那q2也为0。
T3时:q1为1,因输入端为1;q2为1。
至多3T后,复位被同步释放,避免了亚稳态。
在实际的设计中,比如有的模块是先复位再给模块供应时钟,即保证了复位信号与时钟在时间上是错开的,这种流程可以保证不会出现 recovery 和 removal 的问题,因为复位置起撤销时都没有时钟。即使操作流程保证不了,出现 recovery 和 removal 违例,由于模块此时都不会工作,也没什么问题。
此文章仅代表个人观点!