数字电路设计中的亚稳态出现原因及其解决办法
(2009-09-20 16:51:14)
标签:
亚稳态触发器格雷码反相器电平 |
分类: 数字电路设计 |
1.亚稳态发生的原因
(resolution time)。经过resolution
time之后Q端将稳定到0或1上,但是究竟是0还是1,这是随机的,与输入没有必然的关系。
2.亚稳态的危害
的作用),而亚稳态的传播则扩大了故障面,难以处理。
3.亚稳态的解决办法
产生亚稳态。注意,这里说的是“基本”,也就是无法“根除”,那么如果第二个触发器Q出现了亚稳态会有什么后果呢?后果的严重程度是有你的设计决定的,如果系统对产生的错误不敏感,那么系统可能正常工作,或者经过短暂的异常之后可以恢复正常工作
,例如设计异步FIFO时使用格雷码计数器当读写地址的指针就是处于这方面的考虑。如果设计上没有考虑如何降低系统对亚稳态的敏感程度,那么一旦出现亚稳态,系统可能就崩溃了。
4.亚稳态与系统可行性
使用同步电路以后,亚稳态仍然有发生的可能,与此相连的是MTBF(Mean Time Between
Failure),亚稳态的发生概率与时钟频率无关,但是MTBF与时钟有密切关系。有文章提供了一个例子,某一系统在20MHz时钟下工作时,MTBF约为50年,但是时钟频率提高到
40MHz时,MTBF只有1分钟!可见降低时钟频率可以大大减小亚稳态导致系统错误的出现,其原因在于,提供较长的resolution
time可减小亚稳态传递到下一级的机会,提高系统的MTBF。
什么是亚稳态?
题有很多糊涂的认识,要是你的主考官和你争论,你就顺着他的意思,毕竟没有人想找一个管教不了的手下。
异步FIFO
能因为延迟不同,这样到达新时钟域之后,得到的数据相差一个老时钟域的时钟周期。兴好,对于FIFO,需要传递的是一个计数器,这个计数器可以编码成格雷码(gray
code),这样的编码每次只变化一个位,正好解决了上面的问题。注意,这里其实还对格雷码的相对延迟和相关的时钟周期有一个要求。这就是异步FIFO中最关键的一点,至于指针如何控制,稍微考虑一下都很容易清楚。需要注意的事,这些东西不是用嘴能说清楚的,最好画一个示意图,不要因为没有说清楚,让主考官觉得你没有清楚。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhongrg/archive/2007/10/22/1836854.aspx