电子说
时钟是数字电路中所有信号的参考,特别是在FPGA中,时钟是时序电路的动力,是血液,是核心。没有时钟或者时钟信号处理不得当,都会影响系统的性能甚至功能,所以在一般情况下,在同一个设计中使用同一个时钟源,当系统中有多个时钟时,需要根据不同情况选择不同的处理方法,将所有的时钟进行同步处理,下面分几种情况介绍时钟的同步处理方法。
第一种情况:
当有多个时钟在同一个数字电路中,且有一个时钟(Clk)的速率大于其它时钟两倍以上。
这种情况最为简单,在接口部分就必须要对其他时钟进行同步化处理,将其处理为与Clk同步的时钟信号。
这样处理的好处是:
便于处理电路内部时序;
时钟间边界条件只在接口部分电路进行处理。
实质上,时钟采样的同步处理方法就是上升沿提取电路,经过上升沿提取输出信息中,带有了系统时钟的信息,所以有利于保障电路的可靠性和可移植性。
第二种情况:
当系统中所有时钟没有一个时钟速率达到其他时钟频率的两倍的情况,也就是系统中多个时钟速率差不多的情况。
这个时候无法满足采样定理,所以在接口部分就必须对其他时钟和数据通过FIFO或者DPRAM进行隔离,并将其他时钟信息转换为和系统时钟同步的允许信号。比如在高速的数据采集系统当中,AD的采集时钟往往比较高,大于系统时钟的一半以上,这时候采用同步化处理无法满足时序设计。
第三种情况:
系统中多个时钟之间存在数据互相采样。
对于这种情况,可使用两级触发器级联采样数据,避免亚稳态发生。
第四种情况:
多级时钟网络处理。
所谓多级时钟网络是指时钟经过超过一级的门电路后连到触发器的时钟输入端。
由于时钟建立-保持时间的限制,FPGA设计中应尽量避免采用多时钟网络,在设计中必须要将时钟网络进行简化,尽量采用使能的方式或者其他简化的电路结构。
全部0条评论
快来发表一下你的评论吧 !