数字电子基础——编码器
数字电子基础——编码器
编码器是数字电路中实现编码功能的重要电路,它能够将特定的输入信号转换为对应的二进制代码输出。本文将详细介绍编码器的基本概念及其不同类型,包括二进制编码器、二-十进制编码器和优先编码器,并通过具体的电路设计实例帮助读者理解其工作原理和逻辑实现过程。
编码器
编码:用文字、符号或数字表示特定对象的过程。在数字电路中,采用二进制进行编码
编码器:实现编码功能的电路
二进制编码器
用n nn位二进制代码对N = 2 n N=2^nN=2n个信号进行编码的电路
应用举例
【例】设计一个能将I 0 、 I 1 、 . . . 、 I 7 I_0、I_1、...、I_7I0 、I1 、...、I7 8个输入信号编成二进制代码输出的编码器,用与非门实现
Step1:分析设计要求,列出真值表
由题意可知,该编码器有8个输入信号,分别是I 0 、 I 1 、 . . . 、 I 7 I_0、I_1、...、I_7I0 、I1 、...、I7 ,有编码请求时,输入信号用1表示,没有时为0。根据2 n ≥ N = 8 2^n≥N=82n≥N=8可求得输出n = 3 n=3n=3,为3位二进制代码,分别用Y 0 、 Y 1 、 Y 2 Y_0、Y_1、Y_2Y0 、Y1 、Y2 表示
普通二进制编码器是一种多输入、多输出的组合电路,在某一时刻只能对一个输入信号进行编码,不允许有两个或两个以上信号同时有效具相互排斥性,可得真值表如下:
Step2:根据真值表写出输出逻辑函数表达式
Y 2 = I 4 + I 5 + I 6 + I 7 = I 4 ‾ ⋅ I 5 ‾ ⋅ I 6 ‾ ⋅ I 7 ‾ ‾ Y_2 = I_4 + I_5 + I_6 + I_7 = \overline{\overline{I_4} · \overline{I_5} ·\overline{I_6 } · \overline{I_7} }Y2 =I4 +I5 +I6 +I7 =I4 ⋅I5 ⋅I6 ⋅I7
Y 1 = I 2 + I 3 + I 6 + I 7 = I 2 ‾ ⋅ I 3 ‾ ⋅ I 6 ‾ ⋅ I 7 ‾ ‾ Y_1 = I_2 + I_3 + I_6 + I_7 = \overline{\overline{I_2} · \overline{I_3} ·\overline{I_6 } · \overline{I_7}}Y1 =I2 +I3 +I6 +I7 =I2 ⋅I3 ⋅I6 ⋅I7
Y 0 = I 1 + I 3 + I 5 + I 7 = I 1 ‾ ⋅ I 3 ‾ ⋅ I 5 ‾ ⋅ I 7 ‾ ‾ Y_0 = I_1 + I_3 + I_5 + I_7= \overline{\overline{I_1} · \overline{I_3} ·\overline{I_5} · \overline{I_7}}Y0 =I1 +I3 +I5 +I7 =I1 ⋅I3 ⋅I5 ⋅I7
Step3:画逻辑图
二 - 十进制编码器
能实现二-十进制编码的电路称为二-十进制编码器,工作原理与二进制编码器无本质区别
应用举例
【例】设计一个二-十进制编码器,它能将I 0 、 I 1 、 . . . 、 I 9 I_0、I_1、...、I_9I0 、I1 、...、I9 10个输入信号编成 8421 BCD 码输出
Step1:分析设计要求,列出真值表
Step2:根据真值表写出输出逻辑函数表达式
Y 3 = I 8 + I 9 Y_3 = I_8 + I_9Y3 =I8 +I9
Y 2 = I 4 + I 5 + I_6 + I_7 Y_2 = I_4 + I_5 + I_6 + I_7Y2 =I4 +I5 +I6 +I7
Y 1 = I_2 + I_3 + I_6 + I_7 Y_1 = I_2 + I_3 + I_6 + I_7Y1 =I2 +I3 +I6 +I7
Y 0 = I_1 + I_3 + I_5 + I_7 + I_9 Y_0 = I_1 + I_3 + I_5 + I_7 + I_9Y0 =I1 +I3 +I5 +I7 +I9
Step3:画逻辑图
优先编码器
允许同时输入多个编码信号,并只对其中优先级别最高的信号进行编码输出的电路
3位二进制优先编码器
3位二进制优先编码器真值表
设I 7 I_7I7 优先级最高,I 6 I_6I6 次之,依次I 0 I_0I0 最低,优先级高的信号排斥级别低的,具有单方面排斥的特性
“×”表示被排斥,也就是说有优先级别更高的信号存在,级别低的输入信号取值无论是 1 还是 0 都无所谓,对电路输出均无影响
逻辑表达式
画逻辑图
典型的优先编码器 —— 集成8线-3线优先编码器
①I 0 I_0I0 I 7 I_7I7 :信号输入端10行分析)
②Y 0 ‾ 、 Y 1 ‾ 、 Y 2 ‾ \overline{Y_0}、\overline{Y_1}、\overline{Y_2}Y0 、Y1 、Y2 :编码输出端
③S T ‾ \overline{ST}ST:选通输入端(使能端、片选端)
④Y s Y_sYs :选通输出端
⑤Y E S ‾ \overline{Y_{ES}}YES :优先扩展输出端
8线-3线优先编码器真值表
功能分析:
①S T ‾ \overline{ST}ST:使能端是低电平有效(第一行和其他行比较分析)
②Y s Y_sYs :编码器工作,但无编码请求时为低电平(第二行分析:由于输入是低电平有效,当输入全为 1 时无效,输出也全为 1 表示无效,Y s Y_sYs 为 0)
③Y E S ‾ \overline{Y_{ES}}YES :编码器工作,且有编码请求时为低电平(第3
④所有输入中I 7 I_7I7 优先级最高,I 0 I_0I0 最低
级联应用 —— 两片8线-3线优先编码器级联构成16线-4线优先编码器
器工作,且有编码请求时为低电平(第3~10行分析)
④所有输入中I 7 I_7I7 优先级最高,I 0 I_0I0 最低
级联应用 —— 两片8线-3线优先编码器级联构成16线-4线优先编码器