数字电子技术基础(三十三)——编码器

目录

1 编码器

1.2 普通编码器

1.2 优先编码器

1.2.1 8线-3线优先编码器

1.2.2 二—十进制优先编码器

1.3 普通译码器控制端扩展功能举例

1 编码器

编码是将输入的每个高低电平信号变为一个对应的二进制编码。编码器是将特定的输入信号转换为特定格式的输出信号,目的是将较多的输入信号编码转换为输入信号较少的输出信号,主要是用于数据压缩的内容、信号传输等功能。

编码器可以分为两类,分别是普通编码器和优先编码器,如下图所示:

图1 编码器的分类

1.2 普通编码器

普通编码器是用n位二进制代码对于个对象进行编码的电路。其中N表示有N个输入变量,任何时刻只有一个输入有效,n表示n个输出变量,二进制数码的位数。

一个普通译码器,任何时刻只允许输入一个编码信号,负责将会出现混乱。对于普通译码器来说,经典的译码器就是8线-3线编码器。如下所示为8线-3线编码器的框图:

图2 8线-3线优先编码器的逻辑框图

对应的真值表如下所示:

图3 8线-3线优先编码器的真值表

对应的逻辑式如下所示:

在任何时刻之间仅仅仅有一个取值为1,输入仅有上面真值表中的8种状态,因此可以化简,得到如下所示的化简公式:

在这里需要注意的是不能使用传统化简方式进行,如果使用传统化简方式的话会出现错误。

1.2 优先编码器

普通编码器要求同一时刻输入信号互斥,即同一时刻只能有一个输入信号有效,否则会出现错误,而优先编码器允许同时输入两个以上的编码信号,当几个输入信号同时出现时,只对于优先级最高的一个进行编码。

1.2.1 8线-3线优先编码器

如下所示为8线-3线优先编码器的电路示意图:“

图4 8线-3线优先编码器的电路图

如下所示为8线-3线优先编码器74HC148的逻辑图:

图5 74HC148的逻辑图

写出输出逻辑式,可以得到:

在上面公式中,S'为选通输入端,当S‘=0,即S=1时,编码器可以正常工作。当S'=1时,所有的输出端被封锁在了高电平。

为了扩展电路的功能和增加使用的灵活性,在74HC148的逻辑电路中附加了门、和的控制电路。在74HC148芯片加入控制电路是多方面原因。包括:

扩展输入/输出:单个74HC148芯片只能有8个输入/3个输出,通过增加控制电路,可以完成级联多个74HC148芯片完成16线-4线编码器。消除竞争和冒险:当输入信号变化时,编码器可能会出现短暂毛刺。接口电平转换:74HC148是CMOS器件,若连接TTL门电路的话有可能需要电平配平。

选通输出端和扩展端用于扩展编码功能,可得:

在上面公式中,当S=1时,才是低电平,因此的低电平输出信号表示“电路工作,但无编码输入”。任何一个编码输入端有低电平信号输入,且S=1,即为低电平。因此,的低电平输出信号表示“电路工作,而且有编码输入”。

注:

在使用Digital软件画电路图的时候,也可以直接使用74148芯片代替74HC148,74148芯片如下所示:

图6 74168芯片示意图

74148芯片和74HC148都是8线-3线优先编码器,它们的功能是相同的,但是属于不同逻辑序列,主要是工艺、电气特性、兼容性和输入/输出特性等方面不一样。

首先,在工艺上,74HC148芯片属于CMOS系列,功耗较低,速度较快,而74148芯片属于TTL系列,功耗较高,速度中等;在电气特性上,仅支持5V供电,74HC148支持更宽的范围(2V~6V),适合低电压或电池供电场景;在兼容性上,可以直接替换老式TTL门电路(如74LS148),而74HC148需要电平匹配;在输入/输出特性上,74148的驱动能力较强,而74HC148驱动能力较弱。

如果设计现代低功耗系统,那么74HC148更合适,如果维护旧式TTL电路,那么74148兼容型号。

74HC148的逻辑框图为:

图7 74HC148的逻辑框图

74HC148的功能表为:

图8 74HC148芯片的功能表

通过上表的内容可以看出,当的优先级最高,的优先级最低。当,无论其他输入端有无输入信号,输出端只给的编码,即。

1.2.2 二—十进制优先编码器

二—十进制优先编码器是一种优先编码器,是用于10个十进制输入转为4位BCD输出,二—十进制,它能将10个输入信号分别变为10个BCD码,在中的优先级最高,的优先级最低。

如下所示为逻辑图如下所示:

图9 二-十进制优先编码器的电路图

74HC147的逻辑框图如下所示:

图10 74HC147的逻辑框图

将上图转换为真值表的形式如下所示:

图11 74HC147的真值表

通过上面真值表的内容可知,对于二—十进制优先编码器输入信号来说,会从低位到高位依次检测,当检测到第一个0所在位置时,此时有效位数为从低位到0所在位数之间的位数和。例如0101111111有效位为7。

1.3 普通译码器控制端扩展功能举例

对于两个8线-3线优先编码器可以扩展为16线-4线优先编码器转换为:

图12 两个74HC148连接在一起

如何控制两篇74HC148芯片正常工作呢?需要设计电路对于两个芯片设计电路进行控制,与之间的关系如下表所示:

表1

之间的真值表

状态11不工作10工作,且有输入01工作,但无输入00不可能出现

电路图如下所示:

图13 16线-4线优先编码器

在高八位工作的时候,低八位不可能工作;只有当高八位不工作的时候,低8位才有可能工作。

分析上面电路图,为什么可以直接连接呢?原因是当为1,为0时,此时表示第一块74HC148芯片有输入,取反之后,为1。如果为0,为1时,表示第一块74HC149芯片无输入,取反之后,为0。

而另外三位、、中为什么需要两片芯片之间进行与非操作呢?对于16线-4线优先编码器低三位两片芯片的输出进行“与非”操作。例如输入,此时对于高8位的74HC148芯片相当于相当于单独工作时输入了十进制3,此时、、输出的是011,则、、为100,而低8位的74HC148芯片的、、无输入操作为000,则、、为111,此时高8位和低8位的、、相与非为011,再加上前面的最终得到结果。

如果16线-4线优先编码器继续扩展为32线-5线优先编码器或者64线段-6线优先编码器,可以直接将上面16线-4线优先编码器当成一个模块,只需要将两个芯片的连接到一起即可,如下图所示:

图14 两个74HC148连接在一起作为一个模块

以上图所示的连接方式连在一起的话,则可以把两个74HC148作为一个模块。

(本节参考清华大学王红的《数字电子技术基础》课程内容)。

Copyright © 2088 2008世界杯_2026世界杯举办地 - mwllb.com All Rights Reserved.
友情链接