结构1

首先CLK_A和CLK_B是异步时钟,sel信号和CLKA\\CLKB也是异步关系。所以需要将sel信号的组合逻辑同步到CLK_A和CLK_B的时钟域下,所以出现了上图S1\\S2\\S3\\S4四个异步对接打拍的两级寄存器。图中B2和S3以及B3和S6的结构的目的是将同步后的信号变成下降沿采样。这么做可以防止出现毛刺。同时A2和A4作为时钟开关电路,将CLK_A和CLK_B输出到clk_out。当进行时钟切换时,sel信号由0变到1,经过两级同步,同时经过一级负沿采样才传到A2将时钟CLK_A关闭,这是输出时钟也是关闭的。S3的输出需要经过下面时钟的两级同步,再经过下面时钟的负沿采样才能传到A4将CLK_B打开。
关注公众号“DSP芯思路”,持续更新四种无毛刺切换电路,同时深度分析四种结构的优劣
初始状态默认S1\\S2\\S3的复位值为1,S4\\S5\\S6的复位值为0。默认输出CLK_A。当需要默认输出CLK_B时,将S1\\S2\\S3的复位值为0,S4\\S5\\S6的复位值为1。





