2020/5/151复习:真值表--逻辑表达式(化简)--逻辑电路图例:三变量表决逻辑Y=?逻辑图?ABCY000000100100011110001011110111112020/5/1522.4逻辑函数的卡诺图化简法2.4.1最小项及最小项表达式2.4.2用卡诺图表示逻辑函数2.4.3卡诺图化简法2.4.4含有无关项的逻辑函数的化简2020/5/1532.4逻辑函数的卡诺图化简法公式化简法评价:优点:变量个数不受限制。缺点:目前尚无一套完整的方法,结果是否最简有时不易判断。利用卡诺图可以直观而方便地化简逻辑函数。它克服了公式化简法对最终化简结果难以确定等缺点。卡诺图是按一定规则画出来的方框图,是逻辑函数的图解化简法,同时它也是表示逻辑函数的一种方法。卡诺图的基本组成单元是最小项,所以先讨论一下最小项及最小项表达式。2020/5/1542.4.1最小项及最小项表达式(1)最小项具备以上条件的乘积项共八个,我们称这八个乘积项为三变量A、B、C的最小项。设A、B、C是三个逻辑变量,若由这三个逻辑变量按以下规则构成乘积项:①每个乘积项都只含三个因子,且每个变量都是它的一个因子;②每个变量都以反变量(A、B、C)或以原变量(A、B、C)的形式出现一次,且仅出现一次。AB是三变量函数的最小项吗?ABBC是三变量函数的最小项吗?推广:一个变量仅有原变量和反变量两种形式,因此N个变量共有2N个最小项。2020/5/155最小项的定义:对于N个变量,如果P是一个含有N个因子的乘积项,而且每一个变量都以原变量或者反变量的形式,作为一个因子在P中出现且仅出现一次,那么就称P是这N个变量的一个最小项。表1-17三变量最小项真值表2020/5/156(2)最小项的性质①对于任意一个最小项,只有一组变量取值使它的值为1,而变量取其余各组值时,该最小项均为0;②任意两个不同的最小项之积恒为0;③变量全部最小项之和恒为1。2020/5/157最小项也可用“mi”表示,下标“i”即最小项的编号。编号方法:把最小项取值为1所对应的那一组变量取值组合当成二进制数,与其相应的十进制数,就是该最小项的编号。表1-18三变量最小项的编号表2020/5/158(3)最小项表达式任何一个逻辑函数都可以表示为最小项之和的形式——标准与或表达式。而且这种形式是惟一的,就是说一个逻辑函数只有一种最小项表达式。例1:将Y=AB+BC展开成最小项表达式。解:BCAABCCABBCAACCABBCABY)()()7,6,3(),,(763mmmmCBAY或:2020/5/159例2:写出三变量函数的最小项表达式。解利用摩根定律将函数变换为与或表达式,然后展开成最小项之和形式。BACBAABCBAY),,(BACBAAB)()(CCBACBABAABCABCABCABCBCACBACBA)4,3,2(m2020/5/1510练习:1:将逻辑函数展开为最小项表达式2:若最小项表达式为Y(A,B,C)=Σm(0,1,2,7),写出其对应的最小项与或表达式YABCDACDAC2020/5/15112.4.2用卡诺图表示逻辑函数(1)卡诺图及其构成原则卡诺图是把最小项按照一定规则排列而构成的方框图。构成卡诺图的原则是:①N变量的卡诺图有2N个小方块(最小项);②最小项排列规则:几何相邻的必须逻辑相邻。逻辑相邻:两个最小项,只有一个变量的形式不同,其余的都相同。逻辑相邻的最小项可以合并。几何相邻的含义:一是相邻——紧挨的;二是相对——任一行或一列的两头;三是相重——对折起来后位置相重。在五变量和六变量的卡诺图中,用相重来判断某些最小项的几何相邻性,其优点是十分突出的。2020/5/1512图1-11三变量卡诺图的画法(2)卡诺图的画法首先讨论三变量(A、B、C)函数卡诺图的画法。①3变量的卡诺图有23个小方块;②几何相邻的必须逻辑相邻:变量的取值按00、01、11、10的顺序(循环码)排列。相邻相邻2020/5/1513图1-12四变量卡诺图的画法相邻相邻不相邻正确认识卡诺图的“逻辑相邻”:上下相邻,左右相邻,并呈现“循环相邻”的特性,它类似于一个封闭的球面,如同展开了的世界地图一样。对角线上不相邻。2020/5/1514(1)从真值表画卡诺图根据变量个数画出卡诺图,再按真值表填写每一个小方块的值(0或1)即可。需注意二者顺序不同。例3:已知Y的真值表,要求画Y的卡诺图。表1-19逻辑函数Y的真值表ABCY00000011010101101001101011001111图1-12例3的卡诺图2020/5/1515练习:三变量表决逻辑真值表填入卡诺图ABCY000000100100011110001011110111112020/5/1516(2)从最小项表达式画卡诺图把表达式中所有的最小项在对应的小方块中填入1,其余的小方块中填入0。例4:画出函数Y(A、B、C、D)=∑m(0,3,5,7,9,12,15)的卡诺图。图1-14例4的卡诺图2020/5/1517(3)从与-或表达式画卡诺图把每一个乘积项所包含的那些最小项(该乘积项就是这些最小项的的公因子)所对应的小方块都填上1,剩下的填0,就可以得到逻辑函数的卡诺图。例5:已知,画卡诺图。YABACDABCD)15,14,13,12())((1mABCDDABCDCABDCABDDCCABABY)13,9()(2mDCABDCBADCBBADCAY73mBCDAY2020/5/15181ABCD=01111+1ACD=101最后将剩下的填01111AB=11YABACDABCD熟悉后也可以直接由表达式填卡诺图。2020/5/1519(4)从一般形式表达式画卡诺图先将表达式变换为与或表达式,再画出卡诺图。2020/5/1520例6:解:(1)利用摩根定律去掉非号,直到最后得到一个与或表达式,即ACCBACABCBAY),,(ACCBACABACCBACBA)(ACCBACBCA(2)根据与或表达式画出卡诺图,如下图所示。ACCBACABCBAY),,(2020/5/1521BCA111110001111001(,,)YABCACBCABCAC2020/5/1522(1)卡诺图中最小项合并的规律合并相邻最小项,可消去变量。合并两个最小项,可消去一个变量;合并四个最小项,可消去两个变量;合并八个最小项,可消去三个变量。合并2N个最小项,可消去N个变量。2.4.3卡诺图化简法由于卡诺图两个相邻最小项中,只有一个变量取值不同,而其余的取值都相同。所以,合并相邻最小项,利用公式A+A=1,AB+AB=A,可以消去一个或多个变量,从而使逻辑函数得到简化。2020/5/1523图1-15两个最小项合并m3m11BCD2020/5/1524图1-16四个最小项合并2020/5/1525图1-17八个最小项合并2020/5/1526(2)利用卡诺图化简逻辑函数A.基本步骤:①画出逻辑函数的卡诺图;②合并相邻最小项(圈组);③从圈组写出最简与或表达式。关键是能否正确圈组。B.正确圈组的原则①必须按2、4、8、2N的规律来圈取值为1的相邻最小项;②每个取值为1的相邻最小项至少必须圈一次,但可以圈多次;③圈的个数要最少(与项就少),并要尽可能大(消去的变量就越多)。2020/5/1527C.从圈组写最简与或表达式的方法:①将每个圈用一个与项表示圈内各最小项中互补的因子消去,相同的因子保留,相同因子取值为1用原变量,相同因子取值为0用反变量;②将各与项相或,便得到最简与或表达式。2020/5/1528例7:用卡诺图化简逻辑函数Y(A、B、C、D)=∑m(0,1,2,3,4,5,6,7,8,10,11)解:相邻A2020/5/1529相邻BCA2020/5/1530BCABDDBCBAY2020/5/1531例8:化简图示逻辑函数。解:多余的圈ABCDCACBACDAY112233442020/5/1532圈组技巧(防止多圈组的方法):①先圈孤立的1;②再圈只有一种圈法的1;③最后圈大圈;④检查:每个圈中至少有一个1未被其它圈圈过。2020/5/1533图1-18例9卡诺图化简过程例9:化简函数解:化简步骤如下:①函数的卡诺图如图1-18所示,“0”可以不填。②画卡诺圈:如图1-18所示1CDAB11111110001111000011110ABCDDBADBDCBAY),,,(DCBADCBA2020/5/1534③按消去不同、保留相同的方法写出逻辑表达式。例10:Y(A,B,C,D)=∑m(0,1,2,3,4,5,8,10,11)解(1)画出函数的卡诺图,如图1-19(2)按合并最小项的规律可画出三个卡诺圈,如图1-19所示。(3)写出化简后的逻辑表达式。BAACDDCBADBY2020/5/1535图1-19例10的卡诺图1CDAB1111111100011110000111102020/5/1536卡诺图化简最简结果不一定唯一例:解1:解2:(,,)YABCACACBCBC2020/5/1537练习:卡诺图化简1.将三变量表决逻辑用卡诺图化简2.化简:F(A,B,C,D)=Σm(0,1,2,4,5,6,8,9,12,13,14)3.化简:4.化简:5.化简:(,,,)FABCDABACBCCD(,,,)FABCDACABBCACDYABCABDACDCDABCACD2020/5/15382.4.4具有无关项的逻辑函数及其化简①无关项的概念对应于输入变量的某些取值下,输出函数的值可以是任意的(随意项、任意项),或者这些输入变量的取值根本不会(也不允许)出现(约束项),通常把这些输入变量取值所对应的最小项称为无关项或任意项,在卡诺图中用符号“×”表示,在标准与或表达式中用∑d()表示。例:当8421BCD码作为输入变量时,禁止码1010~1111这六种状态所对应的最小项就是无关项。2020/5/1539②具有无关项的逻辑函数及其化简因为无关项的值可以根据需要取0或取1,所以在用卡诺图化简逻辑函数时,充分利用无关项,可以使逻辑函数进一步得到简化。2020/5/1540例11:设ABCD是十进制数X的二进制编码,当X≥5时输出Y为1,求Y的最简与或表达式。表1-20例11的真值表XABCDY000000100010200100300110401000501011601101701111810001910011/1010×/1011×/1100×/1101×/1110×/1111×解:列真值表,见表1-20所示。画卡诺图并化简。2020/5/1541图1-20例11的卡诺图充分利用无关项化简后得到的结果要简单得多。注意:当圈组后,圈内的无关项已自动取值为1,而圈外无关项自动取值为0。利用无关项化简结果为:Y=A+BD+BC2020/5/1542例12:化简逻辑函数Y(A、B、C、D)=∑m(1,2,5,6,9)+∑d(10,11,12,13,14,15)式中d表示无关项。图1-21例12的卡诺图解:画函数的卡诺图并化简。结果为:Y=CD+CD2020/5/1543例13:十字路口的交通信号灯,红、绿、黄灯分别用A、B、C来表示。灯亮用1来表示,灯灭用0来表示。车辆通行状态用Y来表示,停车时Y为0,通车时Y为1。用卡诺图化简此逻辑函数。(1)在实际交通信号灯工作时,不可能有两个或两个以上的灯同时亮(灯全灭时,允许车辆感到安全时可以通行)。根据题目要求列出真值表,如表1-21所(2)根据真值表画卡诺图,如图1-222020/5/1544表1-21例13的真值表ABCY000001010011100101110111101×0×××2020/5/1545图1-22例13的卡诺图(3)画卡诺圈合并最小项,其中约束项