数字电路 - 解码器


解码器是一个组合电路,具有“n”条输入线和最多 2 n条输出线。当解码器启用时,这些输出之一将根据存在的输入组合处于高电平有效。这意味着解码器检测到特定的代码。当解码器启用时,解码器的输出只不过是“n”个输入变量(行)的最小项。

2转4解码器

设2至4解码器具有两个输入A 1和A 0以及四个输出Y 3、Y 2、Y 1和Y 02转4解码器框图如下图所示。

2转4解码器

当启用时,对于每个输入组合,这四个输出之一将为“1”,E 为“1”。2至4解码器的真值表如下所示。

使能够 输入 输出
1 一个0 Y 3 Y 2 Y 1 0
0 X X 0 0 0 0
1 0 0 0 0 0 1
1 0 1 0 0 1 0
1 1 0 0 1 0 0
1 1 1 1 0 0 0

从真值表中,我们可以将每个输出的布尔函数写为

$$Y_{3}=E.A_{1}.A_{0}$$

$$ Y_{2}=E.A_{1}.{A_{0}}'$$

$$ Y_{1}=E.{A_{1}}'.A_{0}$$

$$ Y_{0}=E.{A_{1}}'.{A_{0}}'$$

每个输出都有一个乘积项。因此,总共有四个乘积项。我们可以通过使用四个与门(每个与门具有三个输入和两个反相器)来实现这四个乘积项。2转4译码器电路图如下图所示。

2至4解码器电路图

因此,2至4解码器的输出只不过是两个输入变量A 1和A 0的最小值,当使能时,E等于1。如果使能,E为零,则解码器的所有输出都将等于0。

类似地,3到8解码器产生三个输入变量A 2、A 1和A 0的八个最小项,而4到16解码器产生四个输入变量A 3、A 2、A 1和A 0的十六个最小项。

高阶解码器的实现

现在,让我们使用低阶解码器实现以下两个高阶解码器。

  • 3至8解码器
  • 4至16解码器

3至8解码器

在本节中,让我们使用 2 到 4 个解码器来实现 3 到 8 个解码器。我们知道 2 到 4 解码器有两个输入 A 1和 A 0以及四个输出 Y 3到 Y 0。而3至8解码器具有三个输入A 2、A 1和A 0以及八个输出Y 7至Y 0

我们可以使用以下公式找到实现高阶解码器所需的低阶解码器的数量。

$$所需 \: 较低 \: 阶数 \: 解码器=\frac{m_{2}}{m_{1}}$$

在哪里,

$m_{1}$是低阶解码器的输出数量。

$m_{2}$是高阶解码器的输出数量。

这里,$m_{1}$ = 4 和 $m_{2}$ = 8。将这两个值代入上式中。

$$所需的 \: 数量 \: 2 \: 到 \: 4 \: 解码器=\frac{8}{4}=2$$

因此,我们需要两个2到4解码器来实现一个3到8解码器。使用2~4解码器的3~8解码器框图如下图所示。

2至8解码器

并行输入A 1和A 0应用于每个2 至4 解码器。输入A 2的补码连接至下2至4解码器的使能E,以获得输出Y 3至Y 0。这些是较低的四分钟术语。输入A 2直接连接至上2至4解码器的启用E,以获得输出Y 7至Y 4。这些是较高的四分钟术语

4至16解码器

在本节中,让我们使用 3 到 8 个解码器来实现 4 到 16 个解码器。我们知道3到8解码器具有三个输入A 2、A 1和A 0以及八个输出Y 7到Y 0。而4至16解码器具有四个输入A 3、A 2、A 1和A 0以及十六个输出Y 15至Y 0

我们知道以下公式用于查找所需的低阶解码器的数量。

$$所需 \: 较低 \: 阶数 \: 解码器=\frac{m_{2}}{m_{1}}$$

将 $m_{1}$ = 8 和 $m_{2}$ = 16 代入上述公式中。

$$所需数量 \: 3 \: 到 \: 8 个解码器=\frac{16}{8}=2$$

因此,我们需要两个3到8的解码器来实现一个4到16的解码器。使用3~8解码器的4 ~16解码器框图如下图所示。

4至16解码器

并行输入A 2、A 1和A 0应用于每个3至8解码器。输入的补码 A3 连接到较低 3 至 8 解码器的启用 E,以获得输出 Y 7至 Y 0。这些是较低的八分钟术语。输入A 3直接连接至上3至8解码器的启用E,以获得输出Y 15至Y 8。这些是较高的八分钟术语