本章介绍了用于分析数字电路逻辑功能的数学方法——逻辑代数。主要讲述了逻辑代数的基本公式、常用公式和几个重要的定理,以及逻辑函数的各种描述方法和这些描述方法之间的互相转换,还介绍了逻辑函数的化简方法。本章重点内容为:逻辑函数描述方法间的互相转换及逻辑函数的化简。
1 基本逻辑运算(见表2-1-1)
表2-1-1 三种基本逻辑运算
2 复合逻辑运算(见表2-1-2)
表2-1-2 三种复合逻辑运算
逻辑代数的基本公式和常用公式分别如表2-1-3和表2-1-4所示。
表2-1-3 逻辑代数的基本公式
表2-1-4 若干常用公式
表2-1-5 逻辑代数中的基本定理
1 逻辑函数的定义
当逻辑变量的取值确定后,运算结果的取值也随之而定,即逻辑变量和运算结果之间是函数关系,称为逻辑函数,写作:Y=F(A,B,C,…)。
这里所讨论的都是二值逻辑函数,即变量和输出(函数)的取值只有0和1两种状态;任何一个因果关系都可以用一个具体的逻辑函数来描述。
2 逻辑函数的描述方法
(1)常用逻辑函数描述方法有逻辑真值表、逻辑函数式、逻辑图、波形图等见表2-1-6。
表2-1-6 常用逻辑函数描述方法
(2)各种描述方法间的相互转换见表2-1-7:
表2-1-7 描述方法间的相互转换
3 逻辑函数的两种标准形式
(1)最小项和最大项见表2-1-8:
表2-1-8 最小项和最大项
最大项和最小项之间的关系为:M i =m i ′。
(2)最小项之和形式:
① 将给定的逻辑函数式化为若干乘积项之和的形式(亦称“积之和”形式);
② 利用基本公式A+A′=1将每个乘积项中缺少的因子补全,就可将函数式的与或形式化为最小项之和的标准形式。
(3)最大项之积形式:
① 将任何逻辑函数式化成若干多项式相乘的或与形式(也称“和之积”形式);
② 利用基本公式AA′=0将每个多项式中缺少的变量补齐,就可将函数式的或与形式化成最大项之积的标准形式。
化简逻辑函数的目的是要消去多余的乘积项和每个乘积项中多余的因子,以得到逻辑函数式的最简形式。
1 公式化简法(见表2-1-9)
公式化简法的原理就是反复使用逻辑代数的基本公式和常用公式消去函数式中多余的乘积项和多余的因子,以求得函数式的最简形式。常用的公式化简法见表2-1-9。
表2-1-9 常用的公式化简法
2 卡诺图化简法
(1)逻辑函数的卡诺图表示法:
定义:将n变量的全部最小项各用一个小方块表示,并使具有逻辑相邻性的最小项在几何位置上也相邻排列,便可得到n变量最小项卡诺图。
方法: ① 将逻辑函数化为最小项之和的形式; ② 在卡诺图上与这些最小项对应的位置上填入1,在其余的位置上填入0。
如图2-1-1为二到五变量最小项的卡诺图。在变量数大于、等于五以后,仅仅用几何图形在两维空间的相邻性来表示逻辑相邻性已经不够了。
图2-1-1 二到五变量最小项的卡诺图
(2)用卡诺图化简逻辑函数:
① 合并最小项的原则:
a.若两个最小项相邻,则合并为一项并消去一对因子。合并后的结果中只剩下公共因子。
b.若四个最小项相邻并排列成一个矩形组,可合并为一项并消去两对因子。合并后的结果只剩下公共因子。
c.若八个最小项相邻并排列成一个矩形组,可合并为一项并消去三对因子。合并后的结果只剩下公共因子。
合并最小项的一般规则:如果有2 n 个最小项相邻(n=1,2,…)并排列成一个矩形组,则它们可以合并为一项,并消去n对因子,合并后的结果中仅包含这些最小项的公共因子。
② 卡诺图化简的步骤:
a.将函数化为最小项之和的形式。
b.画出表示该逻辑函数的卡诺图。
c.找出可以合并的最小项。
d.选取化简后的乘积项。
③ 乘积项的选取原则:
a.乘积项应包含函数式中所有的最小项;
b.乘积项中可合并的最小项组成的矩形数目最少;
c.每个可合并的最小项矩形组中应包含尽量多的最小项。
1 约束项、任意项和逻辑函数式中的无关项
(1)约束项:当限制某些输入变量取值不能出现时,可用其对应的最小项恒等于0来表示,即约束项。
(2)任意项:在输入变量的某些取值下函数值是1还是0皆可,并不影响电路的功能。在这些变量取值下,其值等于1的那些最小项称为任意项。
(3)无关项:约束项和任意项统称为无关项。“无关”指这些最小项可以写入函数式也可以删除。
2 无关项在化简逻辑函数中的应用
加入无关项使其与函数式中尽可能多的最小项具有逻辑相邻性。以得到的相邻最小项矩形组合最大,且矩形组合数目最少为原则,把卡诺图中的无关项作为0或者作为1,就可得到更简单的化简结果。
在化简多输出逻辑函数时,可通过寻找并合理地利用共用项,得到更简单的化简结果。但在实际应用中并不是任何情况下利用共用项都能够得到更简单的化简结果。对于两级与或形式的多输出逻辑函数,可利用Q-M化简法进行化简,找出可以利用的共用项,并利用这些共用项得到更简单的化简结果。
在用电路实现逻辑函数时,由于所提供门电路类型和输入端个数有所限制,且使用PLD实现输入变量数和乘积项数较少的与或逻辑函数时,器件内部的资源不能得到充分利用,需要把逻辑函数的形式变换为与所用器件相适应的形式。