建立保持时间
建立时间(Tsu:set up time)
是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被稳定的打入触发器,Tsu就是指这个最小的稳定时间。
保持时间(Th:hold time)
是指在触发器的时钟信号上升沿到来以后,数据稳定不变的时间,如果保持时间不够,数据同样不能被稳定的打入触发器,Th就是指这个最小的保持时间。
亚稳态理论(违反建立保持时间的后果)
亚稳态是由于违背了建立保持时间而产生的,导致触发器的输出是未知的或是“亚稳的”。这种有害的状态称作亚稳态。
亚稳态窗口
在这段时间长度内,输入信号应该保持不变,否则就可能出现亚稳态
窗口越大,进入亚稳态概率越大,所以可以通过确保时钟周期足够长来避免亚稳态,大于准稳态的的解析时间,但是会影响系统性能,并不食用。
亚稳态产生概率:
概率 = (建立时间 + 保持时间)/ 采集时钟周期
可以看出,亚稳态出现的概率与工作时钟频率以及触发器自身的特性(器件的工艺等因素决定了它的建立/保持时间)有关;所以在异步信号采集过程中,要想减少亚稳态发生的概率可以:
1、降低系统工作时钟,增大系统周期,亚稳态概率就会减小(降低工作频率,不常用);
2、 采用工艺更好的FPGA,也就是Tsu和Th时间较小的FPGA器件;
亚稳态的避免
降低系统时钟(不常见,因为高速率正确处理才是目的)
用反应更快的触发器(工艺相关,受硬件制约)
引入同步机制,防止亚稳态传播(常见的处理方式,即通过一些机制,在现有硬件条件下,最大程度的减少亚稳态发生,同步器会增加观察同步逻辑输入的延迟)