组合逻辑函数的电路实现
例如:
使用合适的逻辑电路实现函数F = AB + BC + AC。
[分析]若不对逻辑函数进行变换,需要用到3个两输入的与门和一个三输入端的或门。
若对逻辑函数进行变换,即:对逻辑函数进行两次取反。
则需要3个两输入端的与非门和1个三输入端的与非门。
还可以使用二进制译码器或数据选择器来实现,其实就是要确定“二进制译码器”或“数据选择器”与待求函数输入信号A、B、C,输出端与输入端信号Y的连接关系,即带球逻辑。
用二进制译码器实现组合逻辑电路
由于n位二进制译码器可提供2n个最小项的输出,而任一个逻辑函数都可变换为最小项之和的标准与或式,因此利用译码器和门电路可实现单输出及多输出组合逻辑电路。
当译码器输出低电平有效时,选用与非门;译码器输出高电平有效时,选用或门。
例如:
- 用译码器和门电路实现逻辑函数
Y = F(A , B , C) = A ‾ \overline{A} A B ‾ \overline{B} BC + AB C ‾ \overline{C} C + C
解:
(1)根据逻辑函数选择译码器
由于右A、B、C3个变量,故选用3线-8线译码器74LS138
(2)将函数式变换为标准与 - 或式
Y = F(A , B , C) = A ‾ \overline{A} A B ‾ \overline{B} BC + AB C ‾ \overline{C} C + C(A + A ‾ \overline{A} A )(B + B ‾ \overline{B} B ) = A ‾ \overline{A} A B ‾ \overline{B} B C + AB C ‾ \overline{C} C + A ‾ \overline{A} ABC + A B ‾ \overline{B} BC + ABC = m1 + m3 + m5 + m6 + m7
(3)确定待求函数变量和译码器输入端的关系。
74LS138输出低电平有效,Y’i = m’i(以A2、A1、A0作为变量)
将F函数式子变换为:
令A2= A,A1 = B,A0 = C,其中F为
(4)画连线图
- 用3线-8线译码器74LS138和门电路设计一个多输入多输出的组合逻辑电路,其中逻辑表达式为:
解:
(1)写出输出逻辑函数的最小项表达式:然后化简成与非表达式:
(2)令A2= A,A1 = B,A0 = C,函数表达式变换为:
(3)画逻辑图
- 由3线-8线译码器74LS138和门电路设计组合逻辑电路如下图所示,写出输出F的最简与或式。
解:
直接根据设计步骤,使用卡诺图求解。
得到 F = C ‾ \overline{C} C + A ‾ \overline{A} A B ‾ \overline{B} B
用数据选择器实现组合逻辑电路
原理:选择器输出为标准与或式,含地址变量的全部最小项。
4选1数据选择器:8选1数据选择器:
又任何组合逻辑函数都可以表示成为最小项之和的形式,故可用数据选择器实现。
实现步骤:
(1)根据n = k - 1或 n = k确定数据选择器的型号;(n ——选择器地址码,k——函数变量个数)
(2)写出函数的标准与或式和选择器输出信号表达式;
(3)对照比较,确定选择器各个输入变量的表达式;
(4)根据采用的数据选择器和求出的表达式画出连线图。
例如:
- 用数据选择器实现函数F=AB + BC+ AC。
解:
[分析] 确定变量个数选择数据选择器类型
(1)由逻辑表达式可知,F为3变量函数,故选择8选1数据选择器
(2)写出逻辑函数的最小项表达式(标准与或式)Y = AB + BC + AC = AB(C + C ‾ \overline{C} C) + BC(A + A ‾ \overline{A} A) + AC(B + B ‾ \overline{B} B) = A ‾ \overline{A} ABC + A B ‾ \overline{B} BC + AB C ‾ \overline{C} C + ABC
(3)写出数据选择器(8选1)的输出表达式(4)A2= A,A1 = B,A0 = C则表达式为:
对比可得:
(5)画连线图
卡诺图法
解:
(1)选择数据选择器(74LS151)
(2)画出F和数据选择器输出Y的卡诺图
(3)比较数据选择器F和Y的卡诺图
使得:Y = F,则A2 = A、A1 = B、A0 = C
D0 = D1 = D2 = D4 = 0、D3 = D5 = D6 = D7 = 1。
2. 用数据选择器74LS153实现函数 F = AB + BC+ AC。
解:
(1)根据n = k - 1 = 3-1 = 2,可以用74LS153。
(2)标准与或表达式
数据选择器(3)确定输入变量和地址码的对应关系
方法一:公式法(拼凑法)
令A1 = A、A0 = B,有
要令:Y = F,对比得:D0 = 0 ,D1 = C ,D2 = C,D3 = C +
C
‾
\overline{C}
C = 1
(4)画连线图
方法二:卡诺图法(降维法)
先画出待求函数的降维卡诺图,再画出相应数据选择器输出信号的卡诺图,利用两者相等的关系,求出数据选择器输入变量的表达式。
一般将卡诺图的变量数称为该图的维数,如果把某些变量也作为卡诺图中小方格的值,则会减少卡诺图的维数,这种卡诺图称为“降维卡诺图”。
进行降维(选择变量C)
(1)当AB=00时,C=0或C=1,F=0;
(2)当AB=01时,C=0,F=0;C=1,F=1;F的取值与C取值一样,F=C;
(3)当AB=10时,C=0,F=0;C=1,F=1;F的取值与C取值一样,F=C;
对比两卡诺图,要令=F,得数据选择器输入变量:
A1 = A、A0 = B、D0 = 0、D1 = D2 = C、D3 = 1
注意:如果变量数较多,如4个,上述卡诺图降维的过程也比较复杂,也容易错,可采用“降维真值表”来进行快速转换。
降维真值表:
F = AB + BC+ AC =
∑
\sum
∑m(3 , 5, 6, 7)
降维真值表:
降维原则:
降维变量对应为“1”,方格填原变量,对应为“0”,填反变量,同时对应“0”和“1”,则填“1”。
降维卡诺图为:
例如:
用数据选择器实现函数
F(A, B , C, D) =
∑
\sum
∑m(3 , 5, 6, 7 , 8, 9, 10,12 ,14)
解:
(1)由n = k - 1 = 4 - 1 = 3,用8选1数据选择器74LS151
(2)列降维真值表
(3)降维卡诺图
(4)列数据选择器卡诺图
对比两卡诺图,要令Y = F,得数据选择器输入变量:
A2 = A、A1 = B、A0 = C
D0 = 0 、D1 = D、D2 = D3 = D4 = 1、D5 = D6 = D7 =
D
‾
\overline{D}
D