当前位置:   article > 正文

mux & decoder & selector详解

mux

本篇博客的主要内容是解释mux、decoder、selector的概念以及它们之间的关系,平时学习过程中的一些总结,方便自己翻阅,也希望对大家有用。

1. decoder(解码器)

1.1 什么是decoder ?

decoder是一种具有n个输入2^n个输出的电路,在这里以2-4 decoder为例,电路图如下,具有两个输入,2^2个输出:

在这里插入图片描述

电路的真值表如下,通过真值表我们可以对于输出的每一项进行化简,化简后的结果分别入图中所示。

在这里插入图片描述

通过结果可以发现,对于n个输入的电路而言,decoder输出的每一项就是2^n个最小项之一

1.2 decoder电路的实现方式

同样以2-4 decoder为例,通过输出没输出一个最小项的表达式构建出2-4 decoder电路的门级电路图如下所示,每一个输出分别对应每一个最小项。
在这里插入图片描述

同理,通过同样的方式可以构造出其他decoder电路的电路图,在这里以3-8线decoder为例,

在这里插入图片描述

1.3 decoder with enable

一个标准的decoder通常来说会有一个额外的输入,称作enable端口,在这里依然以2-4线decoder为例,电路图如下,

在这里插入图片描述
只有当enable端口为高电平时,电路才会输出1,否则全部输出0,实现的方式也很简单,将enable信号端口输入到每一个AND gate的输入即可。

2. Multiplexer(mux)

2.1 什么是mux ?

mux是一种具有多个输入,但是只具有一个输出的器件,在这里以2-1mux为例,电路结构以及电路表达式如下,S被称为选择端,D被称为数据端。

在这里插入图片描述

更加广泛通用的定义如下:

2.2 如何实现n-1 mux ?

  • 举例

以上是最简单的2-1 mux,如何和decoder selector联系起来不明显,接下来以4-1 mux 为例进行解释,
在这里插入图片描述
其中c0c1是一个2-bit的二进制数,根据不同的值决定输入i0~i3哪一个会被输出到ouput d端,共有2^2种可能,那么选择端可以通过一个2位输入的decoder来实现,此时的电路图会变成以下结构,

在这里插入图片描述

decoder只会有一个最小项生效,所以决定了d端同时i0~i3中只有一个结果会输出,除了decoder结构以外的电路被称作selector,这也是mux常用的实现方式,即使用decoder&selector结构。

  • 实现方式

通过以上的例子,可以知道了mux的实现方式之一是decoder&selector,这里会更加具体的介绍n-1 mux的两种实现方式,

  1. decoder based implementation,通过decoder和selector实现,电路结构如下,

在这里插入图片描述

  1. mux-tree based implementation

基于mux tree的电路结构如下,例如,对于一个8-1的mux,可以通过两个4-1的mux实现,而4-1mux可以通过两个2-1mux实现,以此类推,做出的结构会形成一个tree,称作mux tree。

在这里插入图片描述
哪种实现方式可以取得更好的效果取决于优化算法和engine。

2.3. 如何实现bus mux ?

前面已经讲述了如何去实现n-1mux,接下来会通过两张图片对比让我们一起更好的了解如何实现bus mux,话不多说见下图,
在这里插入图片描述

2.4 对于使用mux tree的优化方法

  1. area&delay oriented optimization method for mux based n-1mux
    Efficient Multiplexer Synthesis Techniques

  2. 优化FPGA中的MUX
    Multiplexer Restructuring for FPGA Implementation Cost Reduction

2.5 参考资料

  1. decoder & mux
  2. mux intro
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/263390
推荐阅读
相关标签
  

闽ICP备14008679号