数电4_3——常见组合逻辑电路(2)译码器

时间:2024-05-18 18:29:21

1. 简介

  • 译码器是将每个输入的二进制代码译成对应的输出高、低电平信号,和编码器逆过程。
  • 常用的译码器分为二进制译码器、二-十进制译码器和显示译码器

2. 二进制译码器

  • 二进制译码器:即将N位二进制代码译成2N2^{N}个高低电平信号,称为N线- 2N2^{N}线译码器。如N3N=3,则可译2N82^{N} =8个高低电平信号,称为3线-8线译码器
  • 图为3线-8线译码器的框图。其中:A2A0A_{2} ~A_{0}是二进制代码输入端;Y7Y0Y_{7} ~Y_{0} 为信号输出端
    数电4_3——常见组合逻辑电路(2)译码器

2.1 真值表和输出逻辑表达式

  • 真值表
    数电4_3——常见组合逻辑电路(2)译码器

  • 逻辑表达式
    Y0=A2A1A0=m0Y_{0}=A_{2}'A_{1}'A_{0}'=m_{0}
    Y1=A2A1A0=m1Y_{1}=A_{2}'A_{1}'A_{0}=m_{1}
    Y2=A2A1A0=m2Y_{2}=A_{2}'A_{1}A_{0}'=m_{2}
    Y3=A2A1A0=m3Y_{3}=A_{2}'A_{1}A_{0}=m_{3}
    Y4=A2A1A0=m4Y_{4}=A_{2}A_{1}'A_{0}'=m_{4}
    Y5=A2A1A0=m5Y_{5}=A_{2}A_{1}'A_{0}=m_{5}
    Y6=A2A1A0=m6Y_{6}=A_{2}A_{1}A_{0}'=m_{6}
    Y7=A2A1A0=m7Y_{7}=A_{2}A_{1}A_{0}=m_{7}

  • 所以也称为最小项译码器(最小项:按照普通二进制进位写下去)

2.2 逻辑电路的实现

采用二极管与门阵列实现

Vcc5VVcc=5V,输入信号的高低电平为3V3V0V0V,二极管导通压降为0.7V0.7V
数电4_3——常见组合逻辑电路(2)译码器

  • 分析:二极管的正极都通过电阻与VCCV_{CC}相连,只要有一个二极管导通,则与之相连的YY就输出低电平,只有三个同时截止时,YY才输出高电平,比如A2A1A0=010A_{2}A_{1}A_{0}=010时,Y2=1Y_{2}=1
  • 特点:
    (1)优点是电路比较简单。
    (2)缺点是电路的输入电阻低输出电阻高。
    (3)另外存在输出电平移动问题。(二极管有压降)
    (4)通常用在中大规模的集成电路中

CMOS门实现

74HC138

数电4_3——常见组合逻辑电路(2)译码器
附加控制端:S 1 ,S 2 和S 3 ;
输入端:A 0 ,A 1 和A 2 ;
输出端低电平有效

  • 真值表
    数电4_3——常见组合逻辑电路(2)译码器

S=S3S2S1S = S_{3}S_{2}S_{1}

  • 当附加控制端S1=0S_{1} =0或者S2+S3=1S_{2}'+S_{3}’=1时,译码器被禁止工作,输出端状态全部为高电平
  • S11S2S30S_{1} =1,S_{2}' + S_{3}' =0时,译码器处于工作状态

Yi=(Smi)Y_{i}'=(Sm_{i})'

  • 此译码器也是数据分配器,当S2S_{2} 'S3S_{3}'为0,数据1由S1S_{1}输入
  • 0输出位置由A2A1A0A_{2}A_{1}A_{0}来确定

2.3 拓展

试用两片3线-8线译码器74HC138组成4线-16线译码器,将输出的4位二进制代码D3D2D1D0D_{3} D_{ 2} D_{ 1} D_{ 0} 译成16个独立的低电平信号Z0Z15Z_{ 0}' ~ Z_{ 15}'
解:需要4个输入地址线,故要除了74HC138的3个输入端外,还要利用附加控制端,根据74HC138功能表,利用附加控制输入端的特点(如下图),当S1=1S_{1}=1S2+S3=0S_{2}'+S_{3}’=0,由第一片输出,当S2+S3=1S_{2}'+S_{3}’=1第二片输出
数电4_3——常见组合逻辑电路(2)译码器
最后电路如下图
数电4_3——常见组合逻辑电路(2)译码器

3. 二-十进制译码器

  • 二-十进制译码器就是将10个BCD代码(8421)译成10个高低电平的输出信号

  • BCD 码 以 外 的 伪 码(1010~1111),输出均无低电平信号产生 74HC42即为二-十进制的译码器

  • 其内部逻辑图如图所示
    数电4_3——常见组合逻辑电路(2)译码器

  • 其输出端逻辑式为YI=mi(i=0...9)Y_{I}'=m_{i}'(i=0...9)
    数电4_3——常见组合逻辑电路(2)译码器

4. 用译码器设计组合逻辑电路

  • 基本原理:由于译码器的输出为最小项取反,而逻辑函数可以写成最小项之和的形式,故可以利用附加的门电路和译码器实现逻辑函数

4.1 实现特定的逻辑表达式

利用74HC138设计一个多输出的组合逻辑电路,输出逻辑函数式为
Z1=AC+ABC+ABCZ_{1} = AC'+A'BC+AB'C
Z2=BC+ABCZ_{2}=BC+A'B'C
Z3=AB+ABCZ_{3}=A'B+AB'C
Z4=ABC+BC+ABCZ_{4}=A'BC'+B'C'+ABC

4.1.1 逻辑函数转换

  • 化成最小项之和
    Z1=AC+ABC+ABCZ_{1} = AC'+A'BC+AB'C
    =A(B+B)C+ABC+ABC=A(B+B')C'+A'BC+AB'C
    =ABC+ABC+ABC+ABC=ABC'+AB'C'+A'BC+AB'C
    =m3+m4+m5+m6=m_{3}+m_{4}+m_{5}+m_{6}
    同样的道理,得到下面的式子:
    Z2=m1+m3+m7Z_{2}=m_{1}+m_{3}+m_{7}
    Z3=m2+m3+m5Z_{3}=m_{2}+m_{3}+m_{5}
    Z4=m0+m2+m4+m7Z_{4}=m_{0}+m_{2}+m_{4}+m_{7}

  • 化成最小项的取反
    利用反演定理:
    Z1=(m3m4m5m6)Z_{1} =(m_{3}'m_{4}'m_{5}'m_{6}')'
    Z2=(m1m3m7)Z_{2}=(m_{1}'m_{3}'m_{7}')'
    Z3=(m2m3m5)Z_{3}=(m_{2}'m_{3}'m_{5}')'
    Z4=(m0m2m4m7)Z_{4}=(m_{0}'m_{2}'m_{4}'m_{7}')'

4.1.2 得到电路图

数电4_3——常见组合逻辑电路(2)译码器

4.2 实现全减器

试利用74HC138及与非门实现全减器,设A为被减数,B为减数,CIC_{I} 为低位的借位,D为差,COC_{O} 为向高位的借位

  • 写出真值表
    数电4_3——常见组合逻辑电路(2)译码器
  • 写出逻辑表达式并化简
    D=(m1m2m4m7)D=(m_{1}m_{2}'m_{4}'m_{7})'
    C=(m1m2m3m7)C=(m_{1}m_{2}'m_{3}'m_{7})'
  • 电路图
    数电4_3——常见组合逻辑电路(2)译码器

5. 显示译码器

显示译码器:七段字符显示器,即用七段字符显示0~9个十进制数码,常用的七段字符显示器有半导体数码管和液晶显示器两种

5.1 半导体数码管(LED七段显示器)

(1)半导体数码管每段都是一个发光二极管(LED),材料不同,LED发出光线的波长不同,其发光的颜色也不一样
(2)半导体数码管分共阴极和共阳极两类,S201A属于共阴极类型,因为从内部电路上看,其各发光二极管的阴极是接在一起的。当外加高电平时,发光二极管亮,故高电平有效。而共阳极则阳极连在一起,故低电平有效。
数电4_3——常见组合逻辑电路(2)译码器
数电4_3——常见组合逻辑电路(2)译码器

(3)导体数码管的优点是工作电压低,体积小、寿命长、可靠性高、响应时间短、亮度高等。缺点为工作电流大(10mA)

5.2 液晶显示器(LCD显示器)

(1)液晶是一种既有液体的流动性又具有光学特性的有机化合物。它的透明度和呈现的颜色是受外加电场的影响,利用这一点做成七段字符显示器
(2)工作原理:七段液晶电极也排列成8字形,当没有外加电场时,由于液晶分子整齐地排列,呈透明状态,射入的光线大部分被返回,显示器呈白色;当有外加电场,并且选择不同的电极组合并加以电压,由于液晶分子的整齐排列被破坏,呈浑浊状态,射入的光线大部分被吸收,故呈暗灰色,可以显示出各种字符来
(3)液晶显示器的最大优点是功耗极低,工作电压也低,但亮度很差,另外它的响应速度较低。一般应用在小型仪器仪表中
【就是我们之前用的计算器,是利用入射光线,太暗看不到】

5.3 BCD-七段译码器

七段数码管需要驱动电路,使其点亮。驱动电路可以是TTL电路或者CMOS电路,其作用是将BCD代码转换成数码管所需要的驱动信号,共阳极数码管需要低电平驱动;共阴极数码管需要高电平驱动
以共阴极为例子,需要高电平驱动:
数电4_3——常见组合逻辑电路(2)译码器
数电4_3——常见组合逻辑电路(2)译码器

真值表

数电4_3——常见组合逻辑电路(2)译码器
例如当要显示4(输入0100)时,需要电量bcfg四根二极管,所以对应的输出为高电平

化简得逻辑表达式

利用卡诺图圈零取反
数电4_3——常见组合逻辑电路(2)译码器
得到逻辑表达式:
数电4_3——常见组合逻辑电路(2)译码器

电路图

按照逻辑添加一些控制输入端得到下面的电路:
数电4_3——常见组合逻辑电路(2)译码器

  • 灯测试输入端LT’:当LT’=0 时,Ya ~ Yg全部置为1,使得数码管显示“8”
  • 灭零输入RBI’:当A3A2A1A00000A_{ 3} A _{2} A_{ 1} A_{ 0} =0000时,若RBI’=0,Ya~Yg全部置为0,灭灯
  • 灭灯输入/灭零输出RI’/RBO’:当做为输入端时,若RI’/RBO’=0,无论输入A3A2A1A0A_{ 3} A _{2} A_{ 1} A_{ 0}为何种状态,数码管熄灭,称灭灯输入控制端; 当做为输出端时,
    只有当A3A2A1A00000A_{ 3} A _{2} A_{ 1} A_{ 0} =0000,且灭零输入信号RBI’=0时,RI’/RBO’=0,输入称灭零输出端:因此RI’/RBO’=0表示译码器将本来应该显示的零熄灭了

【这一部分本人有点模糊,需要再修改】

工作电路

数电4_3——常见组合逻辑电路(2)译码器