1.4线—2线编码器
下面分析4输入、2位二进制输出的编码器的工作原理。4线—2线编码器的功能如表1所示。 表1 4线—2线编码器功能表
输 入 | 输 出 | ||||
I0 |
I1 |
I2 |
I3 |
Y1 |
Y0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 | 1 |
表1所示的编码器为高电平输入有效,因而可由功能表得到如下逻辑表达式:
Y1= I0I1I2I3+ I0I1I2I3 |
Y0= I0I1I2I3+ I0I1I2I3 |
图1 4线—2线编码器逻辑图
2.键盘输入8421BCD码编码器
计算机的键盘输入逻辑电路就是由编码器组成。图2是用十个按键和门电路组成的8421码编码器,其功能如表2所示, 其中S0~S9代表十个按键,即对应十进制数0~9的输入键,它们对应的输出代码正好是8421BCD码,同时也把它们作为逻辑变量,ABCD 为输出代码(A为最高位),GS为控制使能标志。
对功能表和逻辑电路进行分析,都可得知:①该编码器为输入低电平有效;②在按下S0~S9中任意一个键时,即输入信号中有一个为有效电平时,GS=1,代表有信号输入,而只有S0~S9均为高电平时GS=0,代表无信号输入,此时的输出代码0000为无效代码。由此解决了前面提出的如何区分两种情况下输出都是全0的问题。
图2 用十个按键和门电路组成的8421BCD码编码器
表2 十个按键8421BCD码编码器功能表 |
上述机械式按键编码电路虽然比较简单,但当同时按下两个或更多个键时,其输出将是混乱的。在数字系统中,特别是在计算机系统中,常常要控制几个工作对象,例如微型计算机主机要控制打印机、磁盘驱动器、输入键盘等。当某个部件需要实行操作时,必须先送一个信号给主机(称为服务请求),经主机识别后再发出允许操作信号(称为服务响应),这里会有几个部件同时发出服务请求的可能,而在同一时刻只能给其中一个部件发出允许操作信号。因此,必须根据轻重缓急,规定好这些控制对象允许操作的先后次序,即优先级别。识别这类请求信号的优先级别并进行编码的逻辑部件称为优先编码器。4线—2线优先编码器的功能表如表3所示。
表3 4线—2线优先编码器的功能表
输入 | 输出 | ||||
I0 |
I1 |
I2 |
I3 |
Y1 |
Y0 |
1 |
0 |
0 |
0 |
0 |
0 |
× |
1 |
0 |
0 |
0 |
1 |
× |
× |
1 |
0 |
1 |
0 |
× |
× |
× |
1 |
1 |
1 |
由表3可以得出该优先编码器的逻辑表达式为
Y1=I2I3+I3=I2+I3 |
Y0=I1I2I3+I3=I1I2+I3 |