实际编码中,什么是亚稳态?
时间:10-02
整理:3721RD
点击:
最近参加笔试的时候,遇到的一道题,似乎很有实际意义。
1、什么是亚稳态,能不能给讲得通俗些,好理解些呢?2、什么情况下会产生亚稳态?
3、怎样防止亚稳态?
1、什么是亚稳态,能不能给讲得通俗些,好理解些呢?2、什么情况下会产生亚稳态?
3、怎样防止亚稳态?
实际编码中,是不会有亚稳态的。编程的时序都是理想化的。
亚稳态是采集数据的时刻,数据的建立时间不满足即数据还不稳当,就采集了,导致采集的数据不准确。
消除亚稳态,简单的就是把采样值寄存2拍!
楼上正解
看着像是笔试题啊
恩,听您这么解释,我感觉这样好理解些。谢谢,只看定义感觉很生硬。
由于建立或保持时间不足,寄存器输出一个怪异的信号,该信号持续一会就消失
1、亚稳态就是一个不确定的状态,表现为触发器的输出端Q产生震荡(不确定的值),最终有可能稳定为低电平,也可能稳定为高电平。
2、在不满足触发器的建立时间、保持时间时会产生亚稳态。
3、同步电路中只要满足触发器的建立保持时间就不会出现亚稳态。 在异步电路中亚稳态是避免不了的,只能降低其出现的概率,只有1bit控制信号的同步一般采用两级寄存器,控制信号和数据信号的同步可以采用握手处理(比较慢),更复杂的最好是采用异步FIFO了。
特权同学的一篇博文,写的很好。
http://bbs.ednchina.com/BLOG_ARTICLE_254494.HTM
输入信号不能满足触发器的数据建立和保持时间,导致输出不稳定,造成亚稳态。
亚稳态是鉴于稳定与非稳定中间的一种状态,或者说,这种状态,最后发展成稳定或者不稳定都是有可能的,所以我们要消除它,以免变为不稳定。
一般来说,数字电路的时钟同步电路里容易需要避免亚稳态出现,有一个参数是MTBF,平均故障时间,计算证明,经过2级寄存器同步后,MTBF会增大很多很多,覆盖现有电子产品的寿命,所以可以把异步信号用2级寄存器同步后,再采集,这样减小亚稳态出现概率。
