时钟切换电路及其注意事项 (时钟切换逻辑)
整理分享时钟切换电路及其注意事项 (时钟切换逻辑),希望有所帮助,仅作参考,欢迎阅读内容。
内容相关其他词:时钟电路工作原理,时钟电路的工作模式,时钟选择电路,时钟切换电路及接线图,时钟切换电路 verilog,时钟切换电路及原理图,时钟切换电路及接线图,时钟切换电路及接线图,内容如对您有帮助,希望把内容链接给更多的朋友!
如上图,大家会很自然而想到的一种时钟切换电路,可是,你仔细分析,你会发现该电路会出现如下的问题,毛刺!这个毛刺无论对于clk0还是clk1都不是好事,它不属于任何一个时钟域,它的脉宽根本无法确定,你切换的点会影响毛刺的宽度。 那么该如何消除毛刺,进而消除后面可能带来的问题呢,见下图,加入反馈电路。 反馈是为了确保时钟真正被关闭了,例如,select从0切换到1,也就是选择clk1,但是这时要确保clk0被完全关闭了,所以通过clk0时钟域的DFF反馈回来的1(如果能反馈1说明0已经进入到clk0时钟域的DFF中了)与clk1时钟域的select进行相与。 另外,为了解决跨时钟域的问题(select毕竟是不同于clk0,clk1时钟域的),通常还会加入1-2级的DFF。 另外,这几个电路使用时需要注意一点的是两个clk都必须要震荡起来后才可以进行select,否则进行切换可能导致select不能被正确的传送到最后一级的与门上,这样消除毛刺的功能可能就无效。