请注意,本文编写于 107 天前,最后修改于 107 天前,其中某些信息可能已经过时。
编码器
一个n位的编码器应有2n个输入,并且有n个输出。编码器有普通编码器与优先编码器之分
- 普通编码器:只允许一个输入信号有效,否则产生错误输出
- 优先编码器:允许多个输入信号同时有效,输出是对优先级最高的输入信号进行编码
普通编码器
以4线-2线编码器为例,设输入脚为I0∼I3,高电平有效,并且同一时刻只能有一个输入为1。可以容易地写出输出的逻辑表达式
Y1=I0ˉI1ˉI2I3ˉ+I0ˉI1ˉI2ˉI3
Y2=I0ˉI1I2ˉI3ˉ+I0ˉI1ˉI2ˉI3
在只有一个输入为1的前提下,将它化简为
Y1=I2+I3,Y0=I1+I3
其功能表为

它正常工作时要求输入有且仅有一个为1,其它都为零,否则它就输出0,但是这与I0=1对应的情形重合了,没有办法判断是不是有效输出
优先编码器
以8线-3线编码器为例,它的功能表为

其中的X
表示忽略这位的输入。可见8个输入的优先级为
I7>I6>⋯>I0
输入还有一个使能端EI
,当它为0时所有输出都为0;EO
是输出使能,它在编码器被使能并且输入全为零时被置为1
输出还添加了一个工作状态标志GS
,当编码有效时它才会被置为1
它的逻辑符号是
优先编码器的级联
可以将两个8线-3线编码器级联为16线-4线编码器,如图

- EI为零时,所有输出都为零
- 输入范围限制在编码器0的范围内时,编码器1的所有输入为0,编码器0被使能,正常工作
- 编码器1的范围内有高电平时,编码器0没有使能不工作,输出是编码器1的输出
- 当两个编码器有一个的输出有效时,整个编码器的输出就有效
这样就实现了16位的优先编码,优先级为
A15>A14>⋯>A0 本文作者:GBwater
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA
许可协议。转载请注明出处!