如何用3-8译码用八选一数据选择器实现逻辑函数数A⊕B⊕C?

一、概念梳理译码是编码的逆过程,它的功能是将具有特定含义的二进制码转换成对应的输出信号,具有译码功能的逻辑电路称为译码器。译码器可分为两种类型二进制译码器或唯一地址译码器这种译码器是将一系列代码转换成与之一一对应的有效信号,它常用于计算机中对存储器单元地址的译码,即将每一个地址代码转换成一个有效信号,从而选中对应的单元。代码变换器这种译码器是将一种代码转换成另一种代码。图4.4.6表示二进制译码器的一般框图,它具有n个输入端、 2^{n} 个输出端和一个使能输入端。在使能输入端为有效电平时,对应每组输入代码,只有其中一个输出端为有效电平,其余输出端则为相反电平。输出信号可以是高电平有效,也可以是低电平有效。1-1:工作原理&电路结构下面以 2线-4线译码器为例,分析译码器的工作原理和电路结构。2输入变量 A_{1}A_{0} 共有4 种不同状态组合,因而译码器有4个输出信号 \bar{Y_{0}}\sim \bar{Y_{3}} 并且输出为低电平有效,真值表如表4.4.5所示。另外设置了使能控制端 \bar{E} ,当 \bar{E}=1 时,无论A_{1}A_{0}为何种状态,输出全为1,译码器处于非工作状态。而当\bar{E}=0时,对应于 A_{1}A_{0} 的一种输入状态,其中只有一个输出端为0,其余各输出端均为1。例如,A_{1}A_{0}=00时, \bar{Y_{0}} 为0, \bar{Y_{1}}\sim \bar{Y_{3}} 均为1。由此可见,译码器是通过输出端逻辑电平以识别不同的代码。根据真值表可写出各输出端的逻辑表达式为【注意】列表达式时,把 \bar{E} 视为一个整体!根据逻辑表达式画出逻辑图如图4.4.7所示。1-2:典型译码器电路及应用——1)二进制译码器典型的二进制译码器有2线-4线译码器和3线-8线译码器。3线-8线译码器的逻辑图如图4.4.8(a)所示,逻辑符号如图4.4.8(b)所示。该译码器有3位二进制输入A_{2}A_{1}A_{0}。它们共有8种组合状态,即可译出8个输出信号Y_{0}\sim Y_{7},输出为低电平有效。此外,还设置了3个使能输入端E_{3}、\bar{E_{2}}、\bar{E_{1}},并且E=E_{3}\bar{\bar{E_{2}}}\bar{\bar{E_{1}}},为扩展电路的功能提供了方便。由逻辑图写出∶当E_{3}=1,且\bar{E_{2}}=\bar{E_{1}}=0时, E=1 ,带入式(4.4.5)可得译码器的输出包含了输入 A_{2}A_{1}A_{0} 组成的所有最小项。根据式(4.4.5)可以列出3线-8线译码器【功能表】如表4.4.6所示。利用3线-8线译码器可以构成4线-16线、5线-32线或6线-64线译码器。集成3线-8线译码器有CMOS(如74HC138)和 TTL(如74LS138)的产品,两者在逻辑功能上没有区别,只是电性能参数不同,用74x138表示两者中任意一种。74x139是双2线-4 线,两个独立的译码器封装在一个集成芯片中,其中之一的逻辑符号如图4.4.9(a)所示。逻辑符号说明 74x139 逻辑符号框外部的 \bar{E} 、 \bar{Y}_{0}\sim \bar{Y}_{3} 作为变量符号,表示外部输入或输出信号名称,字母上面的"—"号说明该输入或输出是低电平有效,如图4.4.9(b)所示。符号框内部的输入、输出变量表示其内部的逻辑关系,全部为高电平有效。当输入或输出为低电平有效时,符号框外部逻辑变量\bar{E} 、 \bar{Y}_{0}\sim \bar{Y}_{3}的逻辑状态与符号框内相应的E 、 Y_{0}\sim Y_{3}的逻辑状态相反。在推导表达式的过程中,如果低有效的输入或输出变量上面的"—"号参与运算,则在画逻辑图或验证真值表时,注意将其还原为低有效符号。——2)二~十进制译码器在第一章已经讨论过8421BCD码,对应于0 ~9的十进制数,由4位二进制数0000~1001表示。由于人们不习惯于直接识别二进制数,所以采用二~十进制译码器来解决。这种译码器应有4个输入端,10个输出端。它的真值表如表4.4.8所示,其输出为低电平有效。当输入超过8421BCD码的范围时(即1010~1111),输出均为高电平,即没有有效译码输出。根据真值表4.4.8.可以写出二~十进制译码器输出与输入的逻辑表达式∶由式(4.4.6)可以画出逻辑图(此处省略)。二~十进制译码器应用电路如图4.4. 12所示。电路的输出分别接在标有十进制数的灯泡。当输入一组8421BCD码时,对应输出端为低电平,点亮与之相连的灯泡。例如,当输入BCD码A_{3}A_{2}A_{1}A_{0}=0110时,输出Y_{6}=0,它对应于十进制数6,其余输出为高电平。——3)七段显示译码器在数字测量仪表和各种数字系统中,都需要将数字量直观地显示出来,数字显示电路通常由【译码驱动器】和【显示器】等部分组成。数码显示器就是用来显示数字、文字或符号的器件。七段式数字显示器是目前常用的显示方式,图4.4.13表示七段式数字显示器利用不同发光段的组合,显示0~9阿拉伯数字。有些数码显示器增加了一段,作为小数点。日常生活中普遍使用七段式数字显示器,也称为七段数码管。常见的七段显示器有两种,这里主要介绍前者。发光二极管液晶显示器发光二极管构成的七段显示器有两种,共阴极和共阳极电路,如图4.4.14 所示。共阴极电路中,八个发光二极管的阴极连在一起接低电平,需要某一段发光,就将相应二极管的阳极接高电平。共阳极显示器的驱动则刚好相反。为了使数码管能显示十进制数,必须将十进制数的代码经译码器译出,然后经驱动器点亮对应的段。例如,对于8421码的0011状态,对应的十进制数为3,则译码驱动器应使a、b、c、d、g各段点亮。译码器的功能就是,对应于某一组数码输入,相应的【几个输出端】存在有效信号输出。常用的七段显示译码器有两类,一类译码器输出高电平有效信号,用来驱动共阴极显示器,另一类输出低电平有效信号,以驱动共阳极显示器。下面介绍输出高电平有效的七段显示译码器(74HC4511),其功能表如表4.4.9所示。当输入 D_{3}D_{2}D_{1}D_{0} 接8421BCD码时,输出高电平有效,用以驱动共阴极显示器。当输入为1010~1111六个状态时,输出全为低电平,显示器无显示。该显示译码器设有三个辅助控制端 LE 、 \bar{BL} 、 \bar{LT} ,以增强器件的功能,现分别简要说明如下:①灯测试输入\bar{LT }当 \bar{LT}=0 时,无论其他输入端是什么状态,所有输出 a~g均为1,显示器显示字形8。该输入端常用于检查译码器本身及显示器各段的好坏。②灭灯输入\bar{BL }当 \bar{BL}=0 ,并且 \bar{LT}=1 时,无论其他输入端是什么电平,所有输出a~g 均为0,所以字形熄灭。该输入端用于将不必要显示的零熄灭,例如一个6位数字023.050,将首、尾多余的0熄灭,则显示为23.05,使显示结果更加清楚。③锁存使能输入 LE 在 \bar{BL}=\bar{LT}=1 的条件下,当 LE=0 时,锁存器不工作,译码器的输出随输入码的变化而变化; 当
LE 由0跳变为1时,输入码被锁存,输出只取决于锁存器的内容,不再随输入的变化而变化。根据表(4.4.9)所示功能表,如果不考虑控制端
LE、\bar{BL}、\bar{LT}的作用,可以画出a~g每个字段与 D_{3}D_{2}D_{1}D_{0} 的卡诺图,并求出每一个字段的最简逻辑表达式。图4.4.15所示为a段的卡诺图PS:卡诺图化简结果不唯一,我在第二章里证明过并求出a段的最简逻辑表达式教材上对应我左边那种化简方式当考虑\bar{BL}、\bar{LT}的作用时,a段的表达式为以此类推,可以写出其他字段的最简逻辑表达式。根据各段的表达式可以画出逻辑图(此处省略)。如果在 D_{3}D_{2}D_{1}D_{0} 端各增加一个锁存器,LE
为锁存器的控制信号,就可以实现锁存使能输入的控制。七段显示译码器(74HC4511)与七段显示器的连接方式如图4.4.16所示。二、例题分析2-1:译码器的扩展解∶首先列出5线-32线译码器的真值表如表4.4.7所示。从表中可以看出,当 B_{4}B_{3}=00 ,而 B_{2}B_{1}B_{0} 从000变化到111时,对应 \bar{L_{0}}\sim \bar{L_{7}} 中有一个输出为0,其余输出全为1。因此4片3线-8线译码器(74HC138)中,设置片(0)为译码状态,其余3片为禁止译码状态,对应的输出\bar{L_{8}}\sim \bar{L_{31}}全为1。以此类推,当B_{4}B_{3}=01,B_{2}B_{1}B_{0}从 000变化到111时,\bar{L_{8}}\sim \bar{L_{15}}分别输出有效信号,此时设置片(1)为译码状态。当 B_{4}B_{3} =10和11时,分别设置片(2)和片(3)为译码状态。因此,将5位二进制码的低3位B_{2}B_{1}B_{0}分别与4片3线-8线译码器的3个地址输入端A_{2}A_{1}A_{0}并接在一起。高位B_{4}B_{3}有4 种状态的组合,因此接入 2 线-4 线译码器(74HC139)的两个地址输入端 A_{1}A_{0} ,2线-4线译码器的4个低有效输出信号分别接入4片3 线-8线译码器的低使能输入端,使它们在 B_{4}B_{3}的控制下轮流工作在译码状态。这样就得到5线-32 线译码器,逻辑图如图4.4.10所示。【注意】74HC139的Y_{3}\sim Y_{0}分别连接四片74HC138的E_{1}口,E_{2}口均接地,E_{3}口接高电平,以满足E=1的条件。例如,当B_{4}B_{3}=00时,Y_{0}=1,\bar{Y_{0}}=0,因为E_{1}为低有效,所以74HC138(0)被选中。以此类推。2-2:用译码器实现函数PS:考这种题的可能性更大,上面那种题画图太麻烦,老师越卷也麻烦。解当控制端接有效电平时,译码器的输出是3个输入变量的全部最小项。因此,首先将函数式变换为最小项之和的形式:将输入变量A、B、C分别接入A_{2}、A_{1}和A_{0}端,并将使能端接有效电平。由于译码器输出是低电平有效,所以将最小项变换为反函数的形式在译码器的输出端加一个与非门,将这些最小项组合起来,便可实现3变量组合逻辑函数,如图4.11所示。2-3:动态显示电路由2线-4 线译码器(74HC139)、显示译码器(74HC4511)和4个七段显示器构成的4位动态显示电路如图4.4.17所示,试分析其工作原理。解∶如果每位显示器配一个显示译码器驱动,当显示器的位数比较多时,电路的复杂程度会增加。采用【动态扫描】多位显示器,可以减少显示译码器数目,简化电路连线。图中4个显示器的a~g段分别接在一起,并与显示译码器的输出a~g分别相连。将要显示的数据组分别送到显示译码器的输入端 D_{3}D_{2}D_{1}D_{0} 。2 线-4 线译码器的选择信号 A_{1}A_{0} 控制输出 Y_{3}\sim Y_{0} 。依次产生低电平,使4个显示器轮流显示。【PS:共阳极】例如要显示4 位数5678位选择信号 A_{1}A_{0}=00 时, \bar{Y_{0}}=0 ,将数据 D_{3}D_{2}D_{1}D_{0}=1000,经过译码器74HC4511送到第(0)位显示器显示8。当A_{1}A_{0}分别为01、10、11时,将数据0111、0110和0101分别送到第(1)、(2)、(3)位显示器,分别显示7、6、5。当以一定的频率重复此过程,在4 个显示器上分别显示稳定的数字5678。位选择信号A_{1}A_{0}必须与显示的数据D_{3}D_{2}D_{1}D_{0}同步变化。人的视觉暂留时间有一定范围,当显示器频率变化太高时,前一个数字的余辉没消失,又开始显示后一个数字,显示的数码不清晰。当太低时,会使显示闪烁。通常每位显示器频率 f_{c} 的变化范围为: 25<f_{c}<100 ,其中f_{c}的单位为 H_{Z} 。2-4:译码器设计组合电路三、关联知识点3-1:段选码上述内容选自大学期间的专业课,想进一步了解的同学可以去看下面这篇文章。

我要回帖

更多关于 用八选一数据选择器实现逻辑函数 的文章

 

随机推荐