数字IC设计知识点及综合题详解(提前批、秋招必刷基础题)——(三)MUX的结构和Glitch free 无毛刺的MUX

目录

1、二选一MUX的真值表

2、逻辑框图与逻辑表达式

 3、组成结构

 二、Glitch free 无毛刺的MUX

1、利用MUX实现时钟切换

毛刺出现原因:

2、时钟无缝切换方法

3、不相关时钟的无缝切换


1、二选一MUX的真值表

输入为din0、din1,控制为sel,输出为dout

seldout
0din0
1din1

2、逻辑框图与逻辑表达式

 逻辑表达式:\large dout = \bar{sel}\cdot din0 + sel\cdot din1

 3、组成结构

使用与门、或门、反相器来构造二选一MUX:

 

 二、Glitch free 无毛刺的MUX

1、利用MUX实现时钟切换

将上图的din0、din1替换成两个不同频率的时钟CLK0、CLK1,这个时钟切换复用器有1个控制信号SELECT,当 SELECT = 0 时输出 CLK0,当 SELECT = 1 时输出 CLK1。

当 SELECT 的值发生变化,输出时钟从当前的时钟源切换到下一个时钟源,此时可能会产生毛刺。

 如下图中的时序图所示,当 SELECT 控制信号变化时,在输出OUT CLOCK 上产生了毛刺。这类门控开关的问题在于,SELECT 开关控制信号会在时钟源的任意电平位置发生变化,从而导致输出时钟截断或者产生毛刺

图片

毛刺出现原因:

SELECT在CLK0的高电平期间进行了切换,这样CLK0的输出就被截断了,导致输出出现了毛刺。因此SELECT控制信号不能在当前时钟为高电平时切换时钟源。

2、时钟无缝切换方法

原时钟切换电路如上所示,其缺陷为不能保证SELECT信号不在高电平时切换。为了让SELECT控制信号只在时钟低电平时切换时钟,引入下降沿触发的D触发器,即只在CLK由1变0时才能切换时钟,或者这样理解,得让当前时钟源有效电平结束了,才能切换时钟源

 图片

 如上图所示,在每个时钟源的选择路径上,都插入一个下降沿有效的D触发器

对某一个时钟的选择会通过QN端反馈到另一个时钟上,这种反馈机制使得门控开关在选择输出下一个时钟之前,必须先取消当前时钟的输出选择,避免了任何可能出现的毛刺Glitch。

比如,当前SELECT为0,CLK0被输出,设在CLK0为高电平时刻将SELECT置为1,此时DFF1的输出不会马上变为1,CLK1也就不能输出,而是在CLK1降为0时,才输出CLK1,而它此时是低电平,故不会出现毛刺

 图片

结合上面的时序图,对输入与输出的关系会更加清晰:

当输出时钟为CLK0时,在CLK0高电平时切换时钟源,即将SELECT置1,因为CLK0的下降沿还未出现,此时DFF0仍然保持SELECT为0的状态,因此反馈也没有更新,DFF1不变,继续输出CLK0;

直到CLK0的下降沿来临,DFF0收到SELECT置1的状态,将其传递到后面的与门,并反馈给DFF1的输入端与门上,此时下面的与门无效了,只用看电路的上半部分就行了;

不过DFF1的输入端刚刚才为1,要等到CLK1的下降沿来临,才能将SELECT为1的状态送入DFF1并向后传递。

也正如上图红字表示的一样:

  • SELECT变化后,先保持CLK0继续输出;
  • 在原时钟源CLK0的下降沿到来时,输出被停止,且一直为0(此时用下半部电路表示输出,因为SELECT为0了,导致输出的或门两个输入都是0,所以输出即不为CLK0,也不是CLK1,而是0);
  • 在原时钟源CLK0变0后,开始找CLK1的下降沿,其出现后,输出用上半部分电路表示了,即输出为CLK1

3、不相关时钟的无缝切换

在前一种避免输出毛刺的门控选择方式中,要求两个输入时钟源的频率有倍数关系,这样使用者可以(通过使用恰当的时序约束)避免信号与任何一个时钟域异步。这种实现方式没有处理异步信号的机制。

这样,提出第二种实现方式,使用同步电路来避免异步信号带来的潜在的亚稳态风险。当两个时钟源完全不相关时,异步行为可能来自 SELECT,也可能来自另一个时钟域的异步的反馈信号。

图片

详细请前往:

Glitch free 无毛刺时钟切换电路、时钟无缝切换、时钟无毛刺切换技术_Cheeky_man的博客-CSDN博客

  • 5
    点赞
  • 68
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cheeky_man

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值