一38译码器
译码器和编码器
译码器(Decoder)和编码器(Encoder)是数字系统中广泛使用的多输入多输出组合逻辑部件。
一. 译码器
译码器的功能是对具有特定含义的输入代码进行"翻译",将其转换成相应的输出信号。
译码器的种类很多,常见的有二进制译码器、二-十进制译码器和数字显示译码器。
1(二进制译码器
(1) 定义
n 二进制译码器:能将n个输入变量变换成2个输出函数,且输出函数与输入变量构成的最小项具有对应关系的一种多输出组合逻辑电路。
(2) 特点
n ? 二进制译码器一般具有n个输入端、2个输出端和一个(或多个)使能输入端。
? 在使能输入端为有效电平时,对应每一组输入代码,仅一个输出端为有效电平,其余输出端为无效电平(与有效电平相反)。
? 有效电平可以是高电平(称为高电平译码),也可以是低电平(称为低电平译码)。
(3) 典型芯片
常见的MSI二进制译码器有2-4线(2输入4输出)译码器、3-8线(3输入8输出)译码器和4-16线(4输入16输出)译码器等。图7.7(a)、(b)所示分别是T4138型3-8线译码器的管脚排列图和逻辑符号。
图7.7 T4138译码器的管脚排列图和逻辑符
图中, A2、A1、A0 ------ 输入端;
YYYYYYYY------- 输出端; 0,1,2,3,4,5,6,7
SSS -------- 使能端,作用是禁止或选通译码器。 1,2,3
该译码器真值表如表7.1所示。
表7.1 T4138译码器真值表
输 入 输 出
SS+SAAA YYYYYYYY 1 23 2 1 00 1 2 3 4 5 6 7
1 0 0 0 0 0 1 1 1 1 1 1 1
1 0 0 0 1 1 0 1 1 1 1 1 1
1 0 0 1 0 1 1 0 1 1 1 1 1
1 0 0 1 1 1 1 1 0 1 1 1 1
1 0 1 0 0 1 1 1 1 0 1 1 1
1 0 1 0 1 1 1 1 1 1 0 1 1
1 0 1 1 0 1 1 1 1 1 1 0 1
1 0 1 1 1 1 1 1 1 1 1 1 0
0 d d d d 1 1 1 1 1 1 1 1
d 1 d d d 1 1 1 1 1 1 1 1
由真值表可知,当s=1,s+s=0 时,无论A、A和A取何值,输出Y 、…、Y中有且仅有12321007一个为0(低电平有效),其余都是1。
2 .二-十进制译码器
二-十进制译码器的功能:将4位BCD码的10组代码翻译成10个十进制数字符号对应的输出信号。
例如,常用芯片T331是一个将8421码转换成十进制数字的译码器,其输入A,A为842130码,输出Y,Y分别代表十进制数字0,9。该译码器的输出为低电平有效。其次,对于8421码09
中不允许出现的6个非法码(1010,1111),译码器输出端Y,Y均无低电平信号产生,即译码器09
对这6个非法码拒绝翻译。这种译码器的优点是当输入端出现非法码时,电路不会产生错误译码。(该译码器的逻辑电路图和真值表见
中有关部分)
3. 数字显示译码器
数字显示译码器是不同于上述译码器的另一种译码器。在数字系统中,通常需要将数字量直观地显示出来,一方面供人们直接读取处理结果,另一方面用以监视数字系统工作情况。 因此,数字显示电路是许多数字设备不可缺少的部分。
数字显示译码器是驱动显示器件(如荧光数码管、液晶数码管等)的核心部件,它可以将输入代码转换成相应数字,并在数码管上显示出来。
常用的数码管由七段或八段构成字形,与其相对应的有七段数字显示译码器和八段数字显示译码器。例如,中规模集成电路74LS47,是一种常用的七段显示译码器,该电路的输出为低电平有效,即输出为0时,对应字段点亮;输出为1时对应字段熄灭。该译码器能够驱动七段显示器显示0,15共16个数字的字形。输入A、A、A和A接收4位二进制码,输出Q、Q、Q、Q、3210abcdQ、Q和Q分别驱动七段显示器的a、b、c、d、e、f和g段。(74LS47逻辑图和真值表可参见efg
教材中有关部分。)
七段译码显示原理图如图7.8(a)所示,图7.8(b)给出了七段显示笔画与0,15共16个数字的对应关系。
图7.8 七段译码显示原理及笔画与数字关系
七段译码显示原 理演示如下:
4(译码器应用举例
译码器在数字系统中的应用非常广泛,它的典型用途是实现存储器的地址译码、控制器中的指令译码、代码翻译、显示译码等。除此之外,还可用译码器实现各种组合逻辑功能。下面 举例说明在逻辑设计中的应用。
例1 用3-8线译码器T4138和适当的与非门实现全减器的功能。
解 全减器:能实现对被减数、减数及来自相邻低位的借位进行减法运算,产生相减得到的差及向高位借位的逻辑电路。
令: 被减数用A表示、减数用B表示、来自低位的借位用G表示、差用D表示、向相邻iii-1i高位的借位用G表示。可得到全减器的真值表如表7.2所示。 i
表7.2 全减器真值表
输 入 输 出 输 入 输 出
Ai Bi Gi-1 Di Gi Ai Bi Gi-1 Di Gi
0 0 0 0 0 1 0 0 1 0
0 0 1 1 1 1 0 1 0 0
0 1 0 1 1 1 1 0 0 0
0 1 1 0 1 1 1 1 1 1
由表7.2可写出差数D和借位G的逻辑表达式为 ii
用译码器T4138和与非门实现全减器功能时,只需将全减器的输入变量A B G分别与译iii-1码器的输入A、A、A相连接,译码器使能输入端SSS接固定工作电平,便可在译码器输出端210123
得到3个变量的8个最小项的"非"。根据全减器的输出函数表达式,将相应最小项的"非"送至与非门输入端,便可实现全减器的功能。逻辑电路图如图7.9所示。
图7.9 逻辑电路图
例2 用译码器和与非门实现逻辑函数
F(A,B,C,D)=?m(2,4,6,8,10,12,14)
解 给定的逻辑函数有4个逻辑变量,显然可采用上例类似的方法用一个4-16线的译码器和与非门实现。 此外,也可以充分利用译码器的使能输入端,用3-8线译码器实现4变量逻辑函数。
用3-8线译码器实现4变量逻辑函数的方法:用译码器的一个使能端作为变量输入端,将两个3-8线译码器扩展成4-16线译码器。用两片T4138实现给定函数时,可首先将给定函数变换为
??????????????
F(A,B,C,D)=(m?m?m?m?m?m?m) 2468101214
然后,将逻辑变量B、C、D分别接至片?和片?的输入端A、A、A,逻辑变量A接至片?210
的使能端和片?的使能端S。这样,当输入变量A=0时,片?工作,片? 禁止,由片?产生m,10m ;当A=1时,片?工作,片?禁止,由片?产生m,m。将译码器输出中与函数相关的项进7815
行"与非"运算,即可实现给定函数F的功能。逻辑电路图如图7.10所示。
图7.10 逻辑电路图