数字电子教程

数字电子 - 主页

数字电子基础

数字系统的类型 信号类型 逻辑电平和脉冲波形 数字系统组件 数字逻辑运算 数字系统优势

数字系统

数字系统 二进制数表示 二进制运算 有符号二进制运算 八进制运算 十六进制运算 补码运算

进制转换

进制转换 二进制到十进制转换 十进制到二进制转换 二进制到八进制转换 八进制到二进制转换 八进制到十进制转换 十进制到八进制的转换 十六进制到二进制的转换 二进制到十六进制的转换 十六进制到十进制的转换 十进制到十六进制的转换 八进制到十六进制的转换 十六进制到八进制的转换

二进制代码

二进制代码 8421 BCD 码 余3码 格雷码 ASCII 码 EBCDIC 码 代码转换 错误检测和纠正码

逻辑门

逻辑门 与门 或门 非门 通用门 异或门 异或门 CMOS 逻辑门 使用二极管电阻逻辑的或门 与门与或门 两级逻辑实现 阈值逻辑

布尔代数

布尔代数 布尔代数定律 布尔函数 德摩根定理 SOP 和 POS 形式 POS 转换为标准 POS 形式

最小化技术

K-Map 最小化 三变量 K-Map 四变量 K-Map 五变量 K-Map 六变量K-Map 无关条件 Quine-McCluskey 方法 最小项和最大项 规范形式和标准形式 最大项表示 使用布尔代数进行简化

组合逻辑电路

数字组合电路 数字算术电路 多路复用器 多路复用器设计程序 多路复用通用门 使用 4:1 多路复用器的 2 变量函数 使用 8:1 多路复用器的 3 变量函数 解复用器 多路复用器与解复用器 奇偶校验位生成器和检查器 比较器 编码器 键盘编码器 优先级编码器 解码器 算术逻辑单元 7 段 LED 显示屏

代码转换器

代码转换器 二进制到十进制转换器 十进制到 BCD 转换器 BCD 到十进制转换器 二进制到格雷码转换器 格雷码到二进制转换器 BCD 到 Excess-3 转换器 Excess-3 到 BCD 转换器

加法器

半加法器 全加器 串行加器 并行加器 使用半加器的全加器 半加器与全加器 全带 NAND 门的加法器 带 NAND 门的半加法器 二进制加法器-减法器

减法器

半减法器 全减法器 并行减法器 使用 2 个半减法器的全减法器 使用 NAND 的半减法器门

顺序逻辑电路

时序电路 时钟信号和触发 锁存器 移位寄存器 移位寄存器应用 二进制寄存器 双向移位寄存器 计数器 二进制计数器 非二进制计数器 同步计数器的设计 同步与异步计数器 有限状态机 算法状态机

触发器

触发器 触发器的转换 D 触发器 JK 触发器 T 触发器 SR 触发器 时钟控制 SR 触发器 非时钟控制 SR 触发器 时钟控制 JK 触发器 JK 至 T 触发器 SR 至 JK触发器 触发器:触发方法 主从 JK 触发器 竞争条件

A/D 和 D/A 转换器

模拟数字转换器 数字模拟转换器 DAC 和 ADC IC

逻辑门的实现

使用 NAND 门实现非门 使用 NAND 门实现或门 使用 NAND 门实现 AND 门 使用 NAND 门实现 NOR 门 使用 NAND 门实现 XOR 门 使用 NAND 门实现 XNOR 门 使用 NOR 门实现 NOT 门 使用 NOR 门实现 OR 门 使用 NOR 门实现 AND 门 NAND 门和 NOR 门之间的区别 使用 NOR 门实现 XOR 门 使用 NOR 门实现 XNOR 门 使用 CMOS 的 NAND/NOR 门 使用 NAND 门的全减法器 使用 2:1 MUX 的 AND 门 使用 2:1 MUX 的 OR 门 使用 2:1 MUX 的非门

存储设备

存储设备 RAM 和 ROM 高速缓存设计

可编程逻辑设备

可编程逻辑设备 可编程逻辑阵列 可编程阵列逻辑 现场可编程门阵列

数字电子系列

数字电子系列

CPU 架构

CPU 架构

数字电子资源

数字电子 - 资源 数字电子 - 讨论


数字电子技术 - 解码器

什么是解码器?

在数字电子技术中,将 N 位二进制输入代码转换为 M 个输出通道的组合逻辑电路称为 解码器,该电路对于每个可能的输入组合仅激活一个输出通道。

换句话说,将 N 条输入线转换为最多 2N 条输出线的组合逻辑电路称为 解码器

因此,解码器是一种能够识别或检测特定代码的组合逻辑电路。解码器执行的操作称为解码。图 1 显示了解码器的一般框图。

解码器框图

此处,解码器有 N 条输入线和 M (2N) 条输出线。在解码器中,N 条输入线中的每一条都可以是 0 或 1,因此可能的输入组合或代码的数量等于 2N。对于这些输入组合中的每一种,M 条输出线中只有一条是活动的,而所有其他输出线将保持非活动状态。

解码器的类型

目前有几种类型的解码器。但是,根据存在的输入和输出线,解码器可分为以下三种类型 −

  • 2 到 4 解码器
  • 3 到 8 解码器
  • 4 到 16 解码器

现在,让我们逐一详细讨论每种类型的解码器。

2 到 4 解码器

2 到 4 解码器具有 2 条输入线和 4 条(22)输出线。 2 至 4 解码器的功能框图如图 2 所示。

2 至 4 解码器

当借助启用输入 E 启用此解码器时,其四个输出中的一个将针对每个输入组合处于活动状态。可以借助下面给出的真值表来分析此 2 线至 4 线解码器的操作。

输入 输出
E A B Y3 Y2 Y1 Y0
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

使用此真值表,我们可以得出每个输出的布尔表达式如下 −

$$\mathrm{Y_{0} \: = \: E \: \cdot \: \bar{A} \: \cdot \: \bar{B}}$$

$$\mathrm{Y_{1} \: = \: E \: \cdot \: \bar{A} \: \cdot \: B}$$

$$\mathrm{Y_{2} \: = \: E \: \cdot \: A \: \cdot \: \bar{B}}$$

$$\mathrm{Y_{3} \: = \: E \: \cdot \: A \: \cdot \: B}$$

由于每个输出项都包含输入变量的乘积,因此可以借助与门来实现。因此,2 至 4 解码器的逻辑电路图如图 3 所示。

2 至 4 解码器电路图

操作

2 至 4 解码器的逻辑电路操作如下 −

  • 当使能输入 (E) 处于非活动状态,即设置为 0 时,所有与门均不起作用。
  • 当使能输入 (E) 设置为 1 时,电路将按如下所述工作。
  • 当 A = 0 且 B = 0 时,与门 1 变为活动状态并产生输出 Y0
  • 当 A = 0 且 B = 1 时,与门 2 变为活动状态并产生输出Y1
  • 当 A = 1 且 B = 0 时,AND 门 3 变为活动状态并产生输出 Y2
  • 当 A = 1 且 B = 1 时,AND 门 4 变为活动状态并产生输出 Y3

3 到 8 解码器

3 到 8 解码器具有 3 条输入线和 8 条 (23) 输出线。3 到 8 解码器的功能框图如图 4 所示。

3 到 8 解码器

当借助启用输入 E 启用此解码器时,对于每个输入组合,它的八个输出之一将处于活动状态。可以借助下面给出的功能表来分析此 3 线到 8 线解码器的操作。

输入 输出
E A B C Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
0 X X X 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 1
1 0 0 1 0 0 0 0 0 0 1 0
1 0 1 0 0 0 0 0 0 1 0 0
1 0 1 1 0 0 0 0 1 0 0 0
1 1 0 0 0 0 0 1 0 0 0 0
1 1 0 1 0 0 1 0 0 0 0 0
1 1 1 0 0 1 0 0 0 0 0 0
1 1 1 1 1 0 0 0 0 0 0 0

使用此函数表,我们可以得出每个输出的布尔表达式如下 −

$$\mathrm{Y_{0} \: = \: E \: \bar{A} \: \bar{B} \: \bar{C}}$$

$$\mathrm{Y_{1} \: = \: E \: \bar{A} \: \bar{B} \: C}$$

$$\mathrm{Y_{2} \: = \: E \: \bar{A} \: B \: \bar{C}}$$

$$\mathrm{Y_{3} \: = \: E \: \bar{A} \: B \: C}$$

$$\mathrm{Y_{4} \: = \: E \: A \: \bar{B} \: \bar{C}}$$

$$\mathrm{Y_{5} \: = \: E \: A \: \bar{B} \: C}$$

$$\mathrm{Y_{6} \: = \: E \: A \: B \: \bar{C}}$$

$$\mathrm{Y_{7} \: = \: E \: A \: B \: C}$$

我们可以看到,每个输出项都包含输入变量的乘积,因此它们可以借助与门来实现。因此,3 至 8 解码器的逻辑电路图如图 5 所示。

3 至 8 解码器电路图

操作

3 至 8 解码器的逻辑电路操作如下 −

  • 当使能输入 (E) 处于非活动状态,即设置为 0 时,所有与门均不起作用。
  • 当使能输入 (E) 设置为 1 使其处于活动状态时,电路将按如下所述工作。
  • 当 A = 0、B = 0 和 C = 0 时,与门 1 变为活动状态并产生输出 Y0
  • 当 A = 0、B = 0 和 C = 1 时,与门 2 变为有效并产生输出 Y1
  • 当 A = 0、B = 1 且 C = 0 时,与门 3 变为有效并产生输出 Y2
  • 当 A = 0、B = 1 且 C = 1 时,与门 4 变为有效并产生输出 Y3
  • 当 A = 1、B = 0 且 C = 0 时,与门 5 变为有效并产生输出 Y4
  • 当 A = 1、B = 0 且 C = 1 时,与门 6 变为有效并产生输出 Y5
  • 当 A = 1、B = 1 且 C = 0 时,与门 7 变为有效并产生输出 Y6
  • 当 A = 1 时, B = 1,且 C = 1,AND 门 8 变为活动状态并产生输出 Y7

4 至 16 解码器

4 至 16 解码器是一种具有 4 条输入线和 16 条(214)输出线的解码器。4 至 16 解码器的功能框图如图 6 所示。

4 至 16 解码器

当借助启用输入 E 启用此解码器时,对于每种输入组合,它的十六个输出之一将处于活动状态。可以借助下面给出的功能表分析 4 线至 16 线解码器的操作。

输入 输出
E A B C D
0 X X X X 0
1 0 0 0 0 Y0
1 0 0 0 1 Y1
1 0 0 1 0 Y2
1 0 0 1 1 Y3
1 0 1 0 0 Y4
1 0 1 0 1 Y5
1 0 1 1 0 Y6
1 0 1 1 1 Y7
1 1 0 0 0 Y8
1 1 0 0 1 Y9
1 1 0 1 0 Y10
1 1 0 1 1 Y11
1 1 1 0 0 Y12
1 1 1 0 1 Y13
1 1 1 1 0 Y14
1 1 1 1 1 Y15

从该函数表中,我们可以直接为每个输出写出布尔表达式,如下所示 −

$$\mathrm{Y_{0} \: = \: E \: \bar{A} \: \bar{B} \: \bar{C} \: \bar{D}}$$

$$\mathrm{Y_{1} \: = \: E \: \bar{A} \: \bar{B} \: \bar{C} \: D}$$

$$\mathrm{Y_{2} \: = \: E \: \bar{A} \: \bar{B} \: C \: \bar{D}}$$

$$\mathrm{Y_{3} \: = \: E \: \bar{A} \: \bar{B} \: C \: D}$$

$$\mathrm{Y_{4} \: = \: E \: \bar{A} \: B \: \bar{C} \: \bar{D}}$$

$$\mathrm{Y_{5} \: = \: E \: \bar{A} \: B \: \bar{C} \: D}$$

$$\mathrm{Y_{6} \: = \: E \: \bar{A} \: B \: C \: \bar{D}}$$

$$\mathrm{Y_{7} \: = \: E \: \bar{A} \: B \: C \: D}$$

$$\mathrm{Y_{8} \: = \: E \: A \: \bar{B} \: \bar{C} \: \bar{D}}$$

$$\mathrm{Y_{9} \: = \: E \: A \: \bar{B} \: \bar{C} \: D}$$

$$\mathrm{Y_{10} \: = \: E \: A \: \bar{B} \: C \: \bar{D}}$$

$$\mathrm{Y_{11} \: = \: E \: A \: \bar{B} \: C \: D}$$

$$\mathrm{Y_{12} \: = \: E \: A \: B \: \bar{C} \: \bar{D}}$$

$$\mathrm{Y_{13} \: = \: E \: A \: B \: \bar{C} \: D}$$

$$\mathrm{Y_{14} \: = \: E \: A \: B \: C \: \bar{D}}$$

$$\mathrm{Y_{15} \: = \: E \: A \: B \: C \: D}$$

我们可以采用与 2 到 4 解码器和 3 到 8 解码器相同的方式实现这些输出表达式。

现在,让我们讨论解码器的应用。

解码器的应用

解码器用于仅在出现特定输入代码组合时激活输出或输出集合的情况。下面列出了解码器的一些重要应用 −

  • 解码器用于代码转换。
  • 解码器广泛用于计算机的存储系统。
  • 解码器还用于解复用或数据分发。
  • 解码器还用于需要非常短的传播延迟的数据路由应用。
  • 解码器还可用于定时或排序目的。
  • 解码器还用于在特定时间打开和关闭数字设备。

这就是解码器及其在数字电子系统中的应用。