首页 > 其他 > 详细

FPGA 异步时钟处理方

时间:2014-07-23 17:18:32      阅读:380      评论:0      收藏:0      [点我收藏+]

1 如果FPGA设计中包含不同频率的时钟,就会涉及异步时钟的问题。我们需要一些方法来使得时钟同步,从而保证FPGA设计的可靠性。


2 在建立和保持时间所构成的有效时间窗口内,数据输入到触发器进行转换。如果数据的到达时间不满足建立或者保持时间就会产生时序冲突。此时触发器的输出就有可能停留在非逻辑0 或1 的范围内(这个状态叫做准稳态),从而造成逻辑错误。


3 如果异步时钟的相位不能够完全对齐就有可能引起2中所述的故障,而且这种故障是不可再现的,也无法通过仿真发现。


4 解决方法,即时钟同步问题:

    a, 相位控制,通过PLL(锁相环)DLL(延时锁相环)使得两个异步时钟的边沿对齐。


    b,   双跳技术(双触发器技术),在可能引起准稳态的触发器后增加一级触发器,从而消除准稳态的影响。如图所示:

bubuko.com,布布扣

   c, FIFO结构,解决异步时钟的问题的最有效方法是采用先进先出的队列结构,它通常由双口RAM来实现。

bubuko.com,布布扣

格雷码通常用在FIFO结构中进行异步时钟间的多位计数传递,对于格雷码每次只改变一位,可以消除多位计数器在异步时钟传递过程中未同时被改变的问题。


大多数现代的FPGA都集成了FIFO核,从而方便设计者使用。


5 同步寄存器应该分割成独立的外部模块,如下图所示:

bubuko.com,布布扣


FPGA 异步时钟处理方,布布扣,bubuko.com

FPGA 异步时钟处理方

原文:http://blog.csdn.net/zhuzhiqi11/article/details/38062059

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!