差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
logic_encoder [2021/10/01 11:38] gongyu [1. 功能] |
logic_encoder [2021/10/02 21:17] (当前版本) gongyu o |
||
---|---|---|---|
行 1: | 行 1: | ||
## 编码器 | ## 编码器 | ||
- | 编码器是一种把熟悉的数字、字符或符号转换成编码格式的装置。它接受字母字符和十进制数字作为输入,并将输出作为输入的编码表示产生。它将给定的信息编码成更紧凑的形式。换句话说,它是一个执行与解码器相反功能的组合电路。它们主要用于减少表示给定信息所需的比特数。在数字系统中,编码器用来传输信息。因此传输链路使用更少的线路来传输编码信息。此外,这些编码器用于对数据进行编码,以备以后使用,因为它便于在可用空间上存储更少的位。让我们讨论各种类型的二进制编码器。 | + | 编码器是一种把熟悉的数字、字符或符号转换成编码格式的装置。它接受字母字符和十进制数字作为输入,并将输出作为输入的编码表示产生。它将给定的信息编码成更紧凑的形式, 换句话说,它是一个执行与解码器相反功能的组合电路。它们主要用于减少表示给定信息所需的比特数。在数字系统中,编码器主要用来传输信息,以使传输链路使用更少的线路来传输编码信息。此外,这些编码器用于对数据进行编码,以备以后使用,因为它便于在可用空间上存储更少的位。让我们讨论各种类型的二进制编码器。 |
- | + | ||
- | code -- encoder | + | |
- | 十进制 -- 二进制表达 | + | |
### 1. 功能 | ### 1. 功能 | ||
行 29: | 行 26: | ||
下图显示了十进制到BCD编码器的基本逻辑符号及其真值表。真值表表示每个十进制数字的BCD代码。 | 下图显示了十进制到BCD编码器的基本逻辑符号及其真值表。真值表表示每个十进制数字的BCD代码。 | ||
由此我们可以得出BCD位和十进制数之间的关系。重要的是要注意,小数零没有显式的输入行。当这种情况发生时,即十进制输入1到9都为零,则BCD输出为0000。 | 由此我们可以得出BCD位和十进制数之间的关系。重要的是要注意,小数零没有显式的输入行。当这种情况发生时,即十进制输入1到9都为零,则BCD输出为0000。 | ||
+ | |||
+ | 从上表中,我们得到如下表达式: | ||
+ | |||
+ | y = d8 + d9 | ||
+ | |||
+ | y = d4 + d5 + d6 + d7 | ||
+ | |||
+ | y = d2 + d3 + d6 + d7 | ||
+ | |||
+ | y = d1 + d3 + d5 + d7 + d9 | ||
+ | |||
+ | 由以上表达式,可以使用一组OR门来实现十进制到BCD编码器的逻辑电路,如下图所示。 | ||
+ | |||
+ | #### 1.4 八进制到二进制编码器 | ||
+ | |||
+ | 八进制到二进制编码器由8个输入行和3个输出行组成。每个输入行对应每个八进制数字,三个输出生成相应的二进制代码。 | ||
+ | 在编码器中,假定在任何给定时间只有一个输入是有源的或值为1,否则电路就没有意义。下图显示了八进制到二进制编码器的逻辑符号及其真值表。 | ||
+ | |||
+ | 从上表中,如果数字D4、D5、D6或D7中任何一个是1,输出Y2就变成1。因此,它的表达式为 | ||
+ | |||
+ | y = d4 + d5 + d6 + d7 | ||
+ | |||
+ | 同理,Y1 = D2 + D3 + D6 + D7 | ||
+ | |||
+ | Y0 = d1 + d3 + d5 + d7 | ||
+ | |||
+ | 还可以观察到,D0在任何表达式中都不存在,因此它被认为是不关心。从上面的表达式,我们可以实现八进制到二进制编码器使用一组OR门如下图所示。 | ||
+ | |||
+ | 在八进制到二进制编码器中有歧义,当所有的输入都为零时,产生的输出都是0。同样,当Do为1时,生成的输出为零。这是这类编码器的一个主要问题。这可以通过指定一个条件来解决,即没有一个输入是活动的,有一个额外的输出。 | ||
### 2. 符号 | ### 2. 符号 | ||
行 40: | 行 66: | ||
{{ ::octal-to-binary-encoder-truth-table.jpeg |}} | {{ ::octal-to-binary-encoder-truth-table.jpeg |}} | ||
+ | ### 4. 编码器示例 | ||
+ | * [[4_2_encoder|4:2编码器]] | ||
+ | * [[8_3_encoder|8:3编码器]] | ||
+ | * [[decimal_bcd_encoder|十进制到BCD编码器]] | ||
+ | * [[keyboard_encoder|键盘编码器]] | ||
+ | * [[octal_binary_encoder|八进制到二进制编码器]] | ||
+ | * [[priority_encoder|优先编码器]] | ||
+ | |||
+ | ### 5. 应用 | ||
+ | 编码器是所有数字系统中非常常见的电子电路。在袖珍计算器的情况下,这些是用来转换十进制值为二进制,以执行二进制的功能,如加法,减法,乘法等。 | ||
+ | 这些也被用来产生数字信号响应的运动,分为轴编码器和线性编码器。让我们简要讨论编码器的键盘应用。 | ||
+ | |||
+ | 当按下与其中一个小数点数字相对应的键时,所选的二极管被正电压正向偏置,这些二极管被连接到S-R触发器的设置和复位端子。二极管的排列方式是这样的,每个触发器设置或复位,以产生4位BCD代码。 | ||
+ | 假设按下十进制数字7对应的键,连接Q4、Q2和Q1的S输入端的二极管正向偏置,连接Q8的R输入端的二极管也正向偏置。因此,输出的BCD代码是0111。 | ||
+ | 从编码器的逻辑图可以看出,在每个S和R输入端的二极管配置实质上是一个二极管或门。这种类型的二极管矩阵编码器用于印刷电路板上的许多电子设备的键盘作为用户数据接口。 | ||
+ | |||
+ | 键盘编码器 | ||
+ | |||
+ | 这种类型的编码器函数是生成与键盘上按下的字母数字字符键相对应的二进制代码。下图显示了一个键盘编码器使用一个二极管矩阵来编码BCD代码中的10位十进制数字。在该电路中,BCD数据存储在S-R触发器中。 | ||
- | ### 4. 应用 | ||
* 光电编码器 | * 光电编码器 | ||
行 50: | 行 94: | ||
* BCD | * BCD | ||
+ | ### 5. 相关技术文章 | ||
+ | - [[https://www.electronicshub.org/binary-codes/|不同类型的二进制编码]] | ||
+ | - [[https://www.electronicshub.org/error-correction-and-detection-codes/|纠错和代码检测]] | ||
+ | - [[https://www.electronicshub.org/parity-generator-and-parity-check/|奇偶校验生成器和奇偶校验]] |