數(shù)字邏輯與數(shù)字電路_2_第1頁(yè)
數(shù)字邏輯與數(shù)字電路_2_第2頁(yè)
數(shù)字邏輯與數(shù)字電路_2_第3頁(yè)
數(shù)字邏輯與數(shù)字電路_2_第4頁(yè)
數(shù)字邏輯與數(shù)字電路_2_第5頁(yè)
已閱讀5頁(yè),還剩122頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、數(shù)字邏輯與數(shù)字電路數(shù)字邏輯與數(shù)字電路作者:徐曉光 l 邏輯函數(shù)的化簡(jiǎn)、優(yōu)化是一個(gè)具有重大實(shí)際意義的問(wèn)題,其應(yīng)用十分廣泛。例如:數(shù)字電子電路的優(yōu)化、可編程邏輯器件的設(shè)計(jì)、IP路由表化簡(jiǎn)等,都涉及到邏輯函數(shù)的化簡(jiǎn)問(wèn)題。因此,長(zhǎng)期以來(lái)人們對(duì)邏輯函數(shù)的化簡(jiǎn)問(wèn)題進(jìn)行了深入系統(tǒng)的研究,得到了許多卓有成效的研究成果,產(chǎn)生了許多成熟有效的邏輯函數(shù)化簡(jiǎn)方法;如卡諾圖法、 Q-M法、銳積法等。l 近年來(lái),隨著電子計(jì)算機(jī)的普及和應(yīng)用,使得邏輯函數(shù)的化簡(jiǎn)問(wèn)題可以在計(jì)算機(jī)的幫助下得以進(jìn)行。計(jì)算機(jī)已經(jīng)成為解決邏輯函數(shù)化簡(jiǎn)優(yōu)化問(wèn)題、進(jìn)行數(shù)字邏輯分析和設(shè)計(jì)的有力工具。l 下面我們將對(duì)邏輯化簡(jiǎn)的理論和方法進(jìn)行詳細(xì)的介紹。2.1

2、 l 2.1.1 有關(guān)的專業(yè)術(shù)語(yǔ)l 1.(Sum Of Products)l 我們將表示為乘積項(xiàng)乘積項(xiàng)之和和形式的邏輯表達(dá)式稱作積之和積之和(SOP)。 如:f(A,B,C)=ABC+AC+BCl 2.(Product Of Sums)l 我們將表示為和項(xiàng)和項(xiàng)之乘積乘積形式的邏輯表達(dá)式稱作和之積和之積(POS)。 如:(A,B,C)= f(A,B,C)=(A+B+C)(A+C)(B+C)乘積項(xiàng)的和的形式乘積項(xiàng)的和的形式和項(xiàng)的乘積的形式和項(xiàng)的乘積的形式l 3.最小項(xiàng)l 所謂是由邏輯表達(dá)式中所有輸入變量字母組成的乘積項(xiàng),每一個(gè)字母至多出現(xiàn)一次。 如邏輯函數(shù)為 f(A,B,C,D) ,則ABCD,A

3、BCD等都是最小項(xiàng)。l 4.最大項(xiàng)l 所謂是由邏輯表達(dá)式中所有輸入變量字母組成的和項(xiàng),每一個(gè)字母至多出現(xiàn)一次。l 如邏輯函數(shù)為f(A,B,C,D),則A+B+C+D, A+B+C+D都是最大項(xiàng)。:任何一個(gè)邏輯表達(dá)式都可以表示為最小項(xiàng)之和的形式,或者表示為最大項(xiàng)之積的形式。l 例如: f(A,B,C,D)(SOP)=ABC+AC+BC =ABC(D+D)+A(B+B)C(D+D)+(A+A)BC(D+D) =ABCD+ABCD+ABCD+ABCD+ABCD+ABCD +ABCD+ABCD+ABCD+ABCD l 再者: f(A,B,C,D)(POS)=(ABC+AC+BC) =(A+B+C+D)

4、(A+B+C+D)(A+B+C+D)(A+B+C+D) (A+B+C+D)(A+B+C+D)(A+B+C+D)(A+B+C+D) (A+B+C+D)(A+B+C+D)l 5.關(guān)于最小項(xiàng)和最大項(xiàng)的討論l (1)我們將邏輯函數(shù)的最小項(xiàng),用mi的形式來(lái)表示。其中下標(biāo)i是區(qū)分、表征最小項(xiàng)的10進(jìn)制數(shù)字,我們將某一個(gè)最小項(xiàng)按字母順序從左到右排列,將取的取值 、將取的取值 ,這樣就可以得到一個(gè)表征該最小項(xiàng)的二進(jìn)制數(shù)。如果將該最小項(xiàng)中的各個(gè)字母按這個(gè)二進(jìn)制數(shù)取值代入,該最小項(xiàng)恰好取值為1。最后把這個(gè)二進(jìn)制數(shù)轉(zhuǎn)換成相應(yīng)的十進(jìn)制數(shù),就是i的值。l 例如ABCD= m15 ,ABCD= m10 等。l (2)我們

5、將邏輯函數(shù)的最大項(xiàng),用Mi的形式來(lái)表示。其中下標(biāo)i是區(qū)分、表征最大項(xiàng)的10進(jìn)制數(shù)字,我們將某一個(gè)最大項(xiàng)按字母順序從左到右排列,將取的取值 、將取的取值 ,這樣就可以得到一個(gè)表征該最大項(xiàng)的二進(jìn)制數(shù)。如果將該最大項(xiàng)中的各個(gè)字母按這個(gè)二進(jìn)制數(shù)取值代入,該最大項(xiàng)恰好取值為0。最后把這個(gè)二進(jìn)制數(shù)轉(zhuǎn)換成相應(yīng)的十進(jìn)制數(shù),就是i的值。l 例如A+B+C+D= M0 , A+B+C+D= M5 等。l (3)根據(jù)最小項(xiàng)和最大項(xiàng)的定義、狄.摩根定律,有: Mi= (mi )(以POS形式表示),mi = (Mi) (以SOP形式表示) l (3)定理1 一個(gè)邏輯表達(dá)式中所有最小項(xiàng)之和恒為1。(含有n個(gè)字母的邏輯表

6、達(dá)式中共有2n 個(gè)最小項(xiàng)) 即 (2-1)l n為邏輯表達(dá)式中所含字母的個(gè)數(shù)。l (4)定理2 一個(gè)邏輯表達(dá)式中所有最大項(xiàng)之積恒為0。(含有n個(gè)字母的邏輯表達(dá)式中共有2n 個(gè)最大項(xiàng)) 即 (2-2)l n為邏輯表達(dá)式中所含字母的個(gè)數(shù)。2101nkkm2100nkkMl (5)將任一個(gè)邏輯表達(dá)式表示成“積之和”形式的方法,就是把邏輯函數(shù)所包含的最小項(xiàng)找出來(lái),相加即可。l 具體的方法可以按使邏輯表達(dá)式取值為1的原則,將對(duì)應(yīng)最小項(xiàng)的二進(jìn)制數(shù)找出來(lái),得到該邏輯函數(shù)中所包含的最小項(xiàng)。l 因此,一個(gè)邏輯表達(dá)式也可以用f(A,B,C)=mi 來(lái)表示,如: f(A,B,C)=m0+ m3 + m5 + m6

7、等。l (6)將任一個(gè)邏輯表達(dá)式表示成“和之積”形式的方法,就是把邏輯函數(shù)所包含的最大項(xiàng)找出來(lái),相乘即可。l 具體的方法可以按使邏輯表達(dá)式取值為0的原則,將對(duì)應(yīng)最大項(xiàng)的二進(jìn)制數(shù)找出來(lái),得到該邏輯函數(shù)中所包含的最大項(xiàng)。l 因此,一個(gè)邏輯表達(dá)式也可以用 f(A,B,C)=Mj來(lái)表示,如: f(A,B,C)=M0 M3 M5 M10等。l (7)另外根據(jù)定理1,我們得到: 即mi +mj= 1 (2-3)l 式中i為邏輯表達(dá)式中最小項(xiàng)的下標(biāo),j為所有下標(biāo)中除最小項(xiàng)之外其余的下標(biāo)。l 由邏輯代數(shù)運(yùn)算的公式(1-21)可知, mj= (mi) (2-4)l 再由f(A,B,C)=mi =Mj ,得:Mj

8、 =(mi)。 由式(2-4)得:Mj= (mj) = mj , 也即Mj = mj 。l 因此有結(jié)論如下:。1120nkkjimmml 例1: f(A,B,C)(SOP)= ABC+AC+BC =ABCD+ABCD+ABCD+ABCD+ABCD +ABCD+ABCD+ABCD+ABCD+ABCD =m15+ m14 + m7 + m6 + m3 + m2 + m13 + m12 + m5 + m4 l 則同時(shí)有: f(A,B,C)(POS)=M0M1M8M9M10M11 =(A+B+C+D)(A+B+C+D)(A+B+C+D)(A+B+C+D) (A+B+C+D) (A+B+C+D) 例2:

9、 Y =m(1,5,7,8,12,15) =M(0,2,3,4,6,9,10,11,13,14) 是一個(gè)表示邏輯函數(shù)的表格。將輸入變量橫向與縱向排列,便可畫出表格,如右圖所示。l 三、四變量卡諾圖中輸入變量橫向與縱向排列的規(guī)律,是相鄰兩行(列)之間僅有一個(gè)變量的取值不同。2.1.2 ABC00 01 11 10010 1 3 24 5 7 6十進(jìn)制數(shù)值a) 3變量的卡諾圖ABCD00 01 11 1000011110b) 4變量的卡諾圖0 1 3 24 5 7 612 13 15 148 9 11 10十進(jìn)制數(shù)值l 表格中的每一個(gè)小格子,對(duì)應(yīng)于一個(gè)最小項(xiàng)或最大項(xiàng)。l 根據(jù)邏輯表達(dá)式,將各個(gè)格子

10、填入數(shù)值:對(duì)于SOP形式的表達(dá)式,若包含該最小項(xiàng),則在相應(yīng)格子中填入“1”;若不包含該最小項(xiàng),就填入“0”(或者空白也可)。l 或者對(duì)于POS形式的表達(dá)式,若包含該最大項(xiàng),則在相應(yīng)格子中填入“0” (或者空白也可);若不包含該最大項(xiàng),就填入“1”。l 這樣就得到了表示該邏輯函數(shù)的卡諾圖。l 例如Y=ABC+AC+BCD的卡諾圖如圖2-2所示。圖2-2 卡諾圖的填寫CDAB00 01 11 100001 11100 1 3 24 5 7 68 9 11 1012 13 15 140 1 1 10 0 1 10 0 1 10 1 0 0Y=ABC+AC+BCDl 1.合并最小項(xiàng)(最大項(xiàng))的規(guī)律l

11、由于三、四變量卡諾圖中相鄰兩行(列)之間僅有一個(gè)變量 的 取 值 不 同 , 根 據(jù) 邏 輯 代 數(shù) 的 公 式 A + A = 1 、AB+AC=A(B+C)和AA=0、(A+B)(A+C)=A+BC知:卡諾圖中橫向或縱向的最小項(xiàng)或最大項(xiàng)可以合并成一項(xiàng)。進(jìn)而,卡諾圖中的的或小方塊可以合并成一項(xiàng)。l 為了看清楚最小項(xiàng)(最大項(xiàng))之間的合并關(guān)系,我們將能夠合并成一項(xiàng)的小方塊圈在一個(gè)圈內(nèi)。l 2.1.3 l 應(yīng)當(dāng)注意:處于一行(列)的兩端時(shí),相當(dāng)于相鄰。排成一行(列)的四個(gè)小方塊等價(jià)于相鄰的大方塊。l 上述情形如圖2-3、2-4和2-5所示。圖2-5 八個(gè)最小項(xiàng)的合并l 2.l (1)(Implic

12、ant)l 在邏輯函數(shù)中,如果若干個(gè)最小項(xiàng)(最大項(xiàng))能夠合并成一項(xiàng),則稱這些最小項(xiàng)(最大項(xiàng))構(gòu)成了一個(gè)。如:卡諾圖中任意2個(gè)相鄰的最小項(xiàng)、任意相鄰的4個(gè)最小項(xiàng)、任意相鄰的8個(gè)最小項(xiàng)等。l 最小項(xiàng)(最大項(xiàng))本身也是一個(gè)蘊(yùn)涵,它是最小的蘊(yùn)涵。l (2)蘊(yùn)涵的關(guān)系l 在邏輯函數(shù)中,根據(jù)邏輯代數(shù)的吸收律,如果一個(gè)蘊(yùn)涵X能夠被另一個(gè)蘊(yùn)涵Y所吸收掉,則稱“蘊(yùn)涵X于蘊(yùn)涵Y”。l 如:ABCD和ABCD 皆包含于AD 中。l 在卡諾圖中,如果蘊(yùn)涵X包含于蘊(yùn)涵Y,則蘊(yùn)涵X的方塊就被包含于蘊(yùn)涵Y的方塊之中,如圖2-6所示。l 在一個(gè)邏輯函數(shù)中,如果某個(gè)蘊(yùn)涵是不能被其它任何蘊(yùn)涵所包含的,則稱該蘊(yùn)涵為,簡(jiǎn)稱PI。l

13、例如在圖2-7中,存在4個(gè)蘊(yùn)涵:ABCD、ABCD、ABCD和BCD,以及2個(gè)質(zhì)蘊(yùn)涵:BCD 和 ABCD 。l (3)(Prime Implicant)l 例如在下圖中,存在5個(gè)質(zhì)蘊(yùn)涵:ABC、ACD、ABC、ACD和BD,但僅有4個(gè)必要質(zhì)蘊(yùn)涵:ABC、ACD、ABC和ACD。組成質(zhì)蘊(yùn)涵 BD的4個(gè)最小項(xiàng),全部被其它的PI所包含,故它不是EPI。l(4)(Essential Prime Implicant)l在一個(gè)邏輯函數(shù)中,如果某個(gè)質(zhì)蘊(yùn)涵(PI)中包含有至少一個(gè)其它質(zhì)蘊(yùn)涵所不包含的最小項(xiàng)(最大項(xiàng)),則稱該質(zhì)蘊(yùn)涵為,簡(jiǎn)稱EPI。l 3.3.(Dont care terms)l 這種情況下,在

14、對(duì)邏輯函數(shù)進(jìn)行化簡(jiǎn)時(shí),那些在實(shí)際問(wèn)題中根本不會(huì)出現(xiàn)的輸入狀態(tài)(也即最小項(xiàng)或最大項(xiàng)),就被稱作(有些書(shū)上稱作)。l 在實(shí)際問(wèn)題中,經(jīng)常會(huì)遇到這樣一類情況:邏輯函數(shù)的某些特定的輸入狀態(tài),是肯定不會(huì)出現(xiàn)的?;蛘哒f(shuō)為邏輯函數(shù)的化簡(jiǎn),加上了某種。l 我們?cè)诳ㄖZ圖對(duì)應(yīng)隨意項(xiàng)的小方格中,填入“x”。其意義是既可以取值“1”,也可以取值“0”。l 在用卡諾圖化簡(jiǎn)邏輯函數(shù)時(shí),隨意項(xiàng)既可以以“1”參與化簡(jiǎn),也可以以“0”參與化簡(jiǎn)。這是由于這些最小項(xiàng)(最大項(xiàng))是在實(shí)際問(wèn)題中根本不會(huì)出現(xiàn)的,所以它們無(wú)論取“0”還是取“1”都不會(huì)對(duì)原問(wèn)題造成影響。l 究竟隨意項(xiàng)取“1”還是取“0”,是以實(shí)現(xiàn)邏輯化簡(jiǎn)結(jié)果的最優(yōu)化來(lái)決定的

15、。l 圖2-9是考慮隨意項(xiàng)時(shí),邏輯函數(shù)化簡(jiǎn)的兩個(gè)實(shí)例。l 隨意項(xiàng)在函數(shù)中一般用di表示,例如某一帶有隨意項(xiàng)的邏輯函數(shù)表示為: f=(m1+m2+m7+m10)+(d5+ d6+d15)=m(1,2,7,10)+ d(5,6,15)l 4.邏輯函數(shù)化簡(jiǎn)的目標(biāo)l 用邏輯門電路實(shí)現(xiàn)某一邏輯函數(shù)時(shí),經(jīng)常是采用“與非門”電路來(lái)實(shí)現(xiàn)的。通過(guò)分析可知,對(duì)于SOP形式的邏輯表達(dá)式,可以用2級(jí)與非門電路完成其邏輯功能。l 例如:Y=ABC+ABD+BCD=(ABC+ABD+BCD) =(ABC)(ABD)(BCD)l 目前,用2級(jí)門電路來(lái)實(shí)現(xiàn)一個(gè)邏輯函數(shù)仍然是最為常用的邏輯設(shè)計(jì)方法。l 由于本書(shū)僅局限于用2級(jí)邏

16、輯門電路來(lái)實(shí)現(xiàn)邏輯功能,不討論用多級(jí)門電路實(shí)現(xiàn)的邏輯電路的化簡(jiǎn)問(wèn)題;因此邏輯函數(shù)化簡(jiǎn)的目標(biāo)就是:l (1)化簡(jiǎn)結(jié)果所得SOP形式的邏輯表達(dá)式中的乘積式項(xiàng)數(shù)越少越好。(2)在乘積式項(xiàng)數(shù)相同的情況下,各項(xiàng)所包含的字母數(shù)目越少越好。l 對(duì)于POS形式的邏輯表達(dá)式,情況與此類似。l 例如:ABC+ABD+ACD的化簡(jiǎn)結(jié)果,就優(yōu)于 ABD+ACD+BCD+ABCD的化簡(jiǎn)結(jié)果。l 5. 利用卡諾圖手工地化簡(jiǎn)邏輯表達(dá)式,有著以下幾種方法:l (1)卡諾圖化簡(jiǎn)算法1 從卡諾圖的質(zhì)蘊(yùn)涵中,首先選取其中最大的合并項(xiàng)(即卡諾圖中最大的圈)。 從未被選取質(zhì)蘊(yùn)涵中,選取最大的合并項(xiàng)(即卡諾圖中最大的圈)。但要遵循如下的

17、原則:選取的質(zhì)蘊(yùn)涵,必須包含至少一個(gè)未被已經(jīng)選取質(zhì)蘊(yùn)涵用過(guò)的新的最小項(xiàng)(最大項(xiàng))。 重復(fù)步驟,直到卡諾圖中的全部最小項(xiàng)(最大項(xiàng))已經(jīng)被選取的質(zhì)蘊(yùn)涵所用過(guò)。也即選取的質(zhì)蘊(yùn)涵完成了對(duì)邏輯函數(shù)的一個(gè)。 對(duì)選取的質(zhì)蘊(yùn)涵進(jìn)一步分析,去除冗余的項(xiàng)。盡量使化簡(jiǎn)結(jié)果最簡(jiǎn)最優(yōu)。l (2)卡諾圖化簡(jiǎn)算法2 在卡諾圖中首先選取出所有的。因?yàn)楸匾|(zhì)蘊(yùn)涵覆蓋了至少一個(gè)其它質(zhì)蘊(yùn)涵無(wú)法覆蓋的最小項(xiàng)(最大項(xiàng)),所以它們不可能由其它質(zhì)蘊(yùn)涵來(lái)替代;即必要質(zhì)蘊(yùn)涵是邏輯化簡(jiǎn)時(shí)必須選取的。 對(duì)于剩余的非必要質(zhì)蘊(yùn)涵,則應(yīng)當(dāng)采用嘗試嘗試、搜索搜索的方法,從中選出一些PI,完成邏輯函數(shù)的,達(dá)到最優(yōu)化簡(jiǎn)的目的。l 顯然,卡諾圖化簡(jiǎn)算法2與卡諾

18、圖化簡(jiǎn)算法1相比,是一種十分嚴(yán)謹(jǐn)?shù)鼮閺?fù)雜的算法。l 如果將卡諾圖化簡(jiǎn)算法2與卡諾圖化簡(jiǎn)算法1相結(jié)合,就得到卡諾圖化簡(jiǎn)的算法3。l (3)卡諾圖化簡(jiǎn)算法3 在卡諾圖中首先選取出所有的。 對(duì)于剩余的非必要質(zhì)蘊(yùn)涵,選取對(duì)應(yīng)(即卡諾圖中最大的圈)的質(zhì)蘊(yùn)涵。但要遵循如下的原則:選取的質(zhì)蘊(yùn)涵,必須包含至少一個(gè)未被已經(jīng)選取質(zhì)蘊(yùn)涵用過(guò)的新的最小項(xiàng)(最大項(xiàng))。 重復(fù)步驟,直到卡諾圖中的全部最小項(xiàng)(最大項(xiàng))已經(jīng)被選取的質(zhì)蘊(yùn)涵所用過(guò)。也即選取的質(zhì)蘊(yùn)涵完成了對(duì)邏輯函數(shù)的一個(gè)覆蓋。 對(duì)選取的質(zhì)蘊(yùn)涵進(jìn)一步分析,去除冗余的項(xiàng)。盡量使化簡(jiǎn)結(jié)果最簡(jiǎn)最優(yōu)。l 卡諾圖化簡(jiǎn)算法3雖然沒(méi)有第2種方法嚴(yán)謹(jǐn),但操作起來(lái)更為簡(jiǎn)練。l 例2

19、-1用卡諾圖化簡(jiǎn)邏輯表達(dá)式 f(A,B,C,D)=ABCD+ ABCD +ABCD +BCl 解:畫出4變量的卡諾圖,填入真值為1的最小項(xiàng),合并化簡(jiǎn)如圖2-10所示。l 化簡(jiǎn)結(jié)果為:f(A,B,C,D)=ABCD+ ABD +BCl 例2-2用卡諾圖化簡(jiǎn)邏輯表達(dá)式 f(A,B,C,D)=ABC+ ABCD +ABCD +ABCD+ADl 解:卡諾圖化簡(jiǎn)結(jié)果如圖2-11a所示??梢钥闯?,2-11b中四個(gè)小方塊的合并項(xiàng)是冗余的。l 例2-3用卡諾圖化簡(jiǎn)邏輯函數(shù) (A,B,C,D)=m(1,2,3,4,5,6,8,9,11,12,13,14,15,)l 解:化簡(jiǎn)結(jié)果如圖2-12所示: f(A,B,C

20、,D)=AC+BD+CD+AD+ABCl 例2-4某邏輯函數(shù)的卡諾圖見(jiàn)下圖a,化簡(jiǎn)結(jié)果如下圖b所示。l 什么是SOP和POS?l 什么是最小項(xiàng)和最大項(xiàng)?l 如何找出邏輯函數(shù)中所包含的最小項(xiàng)?l 邏輯函數(shù)中所包含的最小項(xiàng)和最大項(xiàng)與函數(shù)的卡諾圖之間存在什么關(guān)系?l 3變量和4變量的卡諾圖,相鄰的兩行(列)有什么規(guī)律?l 為什么卡諾圖中相鄰兩個(gè)小方格中最小項(xiàng)可以合并?l 為什么是相鄰的4個(gè)、8個(gè)最小項(xiàng)能夠合并,而不是相鄰的6個(gè)最小項(xiàng)?l 卡諾圖中相鄰最小項(xiàng)合并后的結(jié)果如何確定?l 卡諾圖中為什么看起來(lái)不是相鄰、分處于一行(列)的兩端,或分處于四角的最小項(xiàng)實(shí)際上也是相鄰的?l 什么是蘊(yùn)涵?什么是質(zhì)蘊(yùn)涵

21、?什么是必要質(zhì)蘊(yùn)涵?l 什么是蘊(yùn)涵的包含關(guān)系?l 什么是隨意項(xiàng)?它也被稱做什么?l 為什么隨意項(xiàng)既可以當(dāng)作真值1?也可以當(dāng)作真值0?l 在考慮隨意項(xiàng)時(shí),EPI的條件是什么?l 什么是邏輯函數(shù)的一個(gè)“覆蓋”?l reducel optimizel Sum Of Productsl Product Of Sumsl canonical forml minterml maxterml Karnaugh mapl cover,minimal coverl dont care termsl Essential Prime Implicantl 2.1.4 l 與四變量的卡諾圖類似,我們也可以畫出五變量和

22、六變量的卡諾圖來(lái)。如圖2-13和圖2-14所示。l 與四變量卡諾圖時(shí)一樣,五、六變量卡諾圖中“相鄰”的最小項(xiàng)(最大項(xiàng))也可以合并化簡(jiǎn)。但五、六變量卡諾圖中的“相鄰”關(guān)系判別要比四變量卡諾圖來(lái)得復(fù)雜。l 實(shí)際上,任何卡諾圖中最小項(xiàng)(最大項(xiàng))的“相鄰”關(guān)系,就是通過(guò)它們彼此僅相差一個(gè)變量來(lái)決定的。如:ABCDE和ABCDE就是相鄰的。根據(jù)這個(gè)原則,我們就容易找出五、六變量卡諾圖中的“相鄰”關(guān)系了。l 通過(guò)分析,我們發(fā)現(xiàn)可以將五變量卡諾圖劃分成2個(gè)四變量卡諾圖。每個(gè)四變量卡諾圖中的合并化簡(jiǎn)規(guī)律,與前面所述的一樣。而這2個(gè)四變量卡諾圖上,對(duì)應(yīng)位置的小方格是“相鄰”關(guān)系。如圖2-15所示。指邏輯上的相鄰

23、,而非幾何上的相鄰l 圖中,字母A、BO、P是用于標(biāo)示小方格的符號(hào)。在2個(gè)四變量卡諾圖中,寫有相同字母的兩個(gè)小方格是相鄰的。l 在劃分出的2個(gè)四變量卡諾圖中,如果具有對(duì)應(yīng)位置相同的質(zhì)蘊(yùn)涵(PI),則它們可以進(jìn)一步合并化簡(jiǎn)。如圖2-16所示。l 同理,六變量卡諾圖也可以劃分成為4個(gè)四變量卡諾圖。而位于行(列)相同、列(行)相應(yīng)位置上的小方格,彼此兩兩相鄰。Y=BDE+BCEFl 如果在2個(gè)或者4個(gè)劃分出的四變量卡諾圖中,具有對(duì)應(yīng)位置相同的質(zhì)蘊(yùn)涵(PI),則它們可以進(jìn)一步合并化簡(jiǎn)。如右圖所示。l 2.1.5 l 最大項(xiàng)函數(shù)是“和之積(POS)”形式的邏輯函數(shù)。其特點(diǎn)是各和項(xiàng)取值為0時(shí),函數(shù)值為0。

24、各和項(xiàng)對(duì)應(yīng)于卡諾圖的最大項(xiàng)。l 所以當(dāng)應(yīng)用卡諾圖化簡(jiǎn)最大項(xiàng)函數(shù)時(shí),應(yīng)當(dāng)對(duì)圖中真值為0的最大項(xiàng)進(jìn)行合并化簡(jiǎn);并將化簡(jiǎn)結(jié)果中各變量取非后,以POS形式輸出即可。l 最大項(xiàng)邏輯函數(shù)的化簡(jiǎn),如圖2-18所示。l 2.2 l 隨著邏輯函數(shù)的輸入變量的增加,卡諾圖的尺寸將會(huì)隨之而增大。為此,MEV卡諾圖(Map Entered Variable)技術(shù)應(yīng)運(yùn)而生。所謂就是將某些輸入變量映射到卡諾圖的真值中,這樣就能夠用較小的卡諾圖表示和化簡(jiǎn)較多輸入變量的邏輯函數(shù)。如:用44的卡諾圖來(lái)處理5變量或6變量的邏輯函數(shù)問(wèn)題等。因此,MEV卡諾圖也被稱為。l 下面我們將對(duì)MEV卡諾圖的理論進(jìn)行詳細(xì)深入的分析研究。l M

25、EV卡諾圖的真值,就是填寫在MEV真值表中的內(nèi)容。前面我們知道,普通卡諾圖中的真值只有3種情況:0、1和x。而在映射變量時(shí),情況就復(fù)雜多了。l 1.一個(gè)映射變量的情況l 所謂一個(gè)映射變量,就是將某一個(gè)輸入變量作為真值內(nèi)容的一部分,填寫到真值表中;從而使MEV卡諾圖的尺寸減小為少去一個(gè)變量的卡諾圖尺寸的邏輯化簡(jiǎn)方法。l 為了分析的簡(jiǎn)單起見(jiàn),我們以五變量的邏輯函數(shù)為例,如圖2-19所示。l 分析可知,五變量卡諾圖中每2個(gè)橫向相鄰的小方格,映射于MEV卡諾圖中的一個(gè)小方格。例如:五變量卡諾圖中的m0、m1方格,映射到了MEV圖中第一行的左數(shù)第一個(gè)方格;五變量卡諾圖中的m4、m5方格,映射到了MEV圖

26、中第一行的右數(shù)第一個(gè)方格。其它以此類推。l 由于表示邏輯函數(shù)時(shí),五變量卡諾圖中每個(gè)小方格都有3種可能的取值: 、 和 ;所以映像到MEV圖中后,MEV圖中小方格的取值就有9種情況(33=9)。分析后我們知道,這9 種情況為:0、1、x、E、E、xE、xE、E+xE、E+xE。l 也就是說(shuō),此時(shí)MEV卡諾圖中所填寫的真值,應(yīng)當(dāng)為:0、1、x、E、 xE、xE、E+xE、E+xE 這9種值中的某一個(gè)。l 這里取值x表示真值可以?。?、1、E、 E這4種值的任意之一。取值xE表示真值可以任意?。?、E這2者之一。取值xE表示真值可以任意取:0、E這2者之一。l 其他情況以此類推。l 例2-5畫出五變

27、量邏輯函數(shù) f =m(7,10,16,17) +d(23)的四變量MEV圖。圖2-20 例2-5的圖l 2.2.2 l 1.MEV卡諾圖化簡(jiǎn)的法則l 除了隨意項(xiàng)之外,以SOP形式的邏輯函數(shù),MEV卡諾圖中所有填寫不為0真值(對(duì)于POS形式的邏輯函數(shù),則是不為1真值)的方格,均對(duì)應(yīng)原卡諾圖中的一個(gè)最小項(xiàng)(最大項(xiàng)),必須在化簡(jiǎn)過(guò)程中被覆蓋掉。l 填寫有相同真值的相鄰小方格可以合并化簡(jiǎn)。小方格的相鄰關(guān)系與普通卡諾圖的完全一致。l 填寫為1真值的方格,在合并化簡(jiǎn)時(shí),可以視為E+E ,或 F+F ,或EF+EF+EF+EF參與化簡(jiǎn)。l 在合并化簡(jiǎn)POS形式的邏輯函數(shù)時(shí),填寫為0真值的方格,可以視為EE,

28、或FF,或(E+F)(E+F)(E+F)(E+F)參與化簡(jiǎn)。l 2.一個(gè)映射變量MEV卡諾圖化簡(jiǎn)的步驟l 對(duì)含有真值E的方格進(jìn)行合并化簡(jiǎn)。l SOP函數(shù)時(shí),填寫1真值的方格,可以參與合并(相當(dāng)于隨意項(xiàng))。合并化簡(jiǎn)的結(jié)果為f(A,B,C,D) E形式。f(A,B,C,D)為僅含字母A、B、C、D的積項(xiàng),如:ABCD等。 l POS函數(shù)時(shí),填寫0真值的方格,可以參與合并(相當(dāng)于隨意項(xiàng))。合并化簡(jiǎn)的結(jié)果為g(A,B,C,D)+E形式。 g(A,B,C,D)為僅含字母A、B、C、D的和項(xiàng),如:A+B+C+D等。l 對(duì)含有真值E的方格進(jìn)行合并化簡(jiǎn)。l SOP函數(shù)時(shí),填寫1真值的方格,可以參與合并(相當(dāng)于

29、隨意項(xiàng))。合并化簡(jiǎn)的結(jié)果為f(A,B,C,D) E形式。f(A,B,C,D)為僅含字母A、B、C、D的積項(xiàng),如:ABCD等。l POS函數(shù)時(shí),填寫0真值的方格,可以參與合并(相當(dāng)于隨意項(xiàng))。合并化簡(jiǎn)的結(jié)果為g(A,B,C,D)+E形式。g(A,B,C,D)為僅含字母A、B、C、D的和項(xiàng),如:A+B+C+D等。l 對(duì)填寫1(或0)真值的方格進(jìn)行合并化簡(jiǎn)。l 如果填寫1(或0)真值的方格,已經(jīng)被充當(dāng)E和E各用過(guò)了至少一次,則該方格就是已經(jīng)被覆蓋了;這時(shí)該方格相當(dāng)于隨意項(xiàng)。否則,最后該方格還必須以真值1(或0)用至少一次。l 對(duì)于SOP函數(shù),E+xE、E+xE可以作為1真值參與化簡(jiǎn)。如果它們已經(jīng)作為

30、E、E用過(guò)了,則此時(shí)它們相當(dāng)于隨意項(xiàng);否則,它們必須作為真值1參與化簡(jiǎn)。l 對(duì)于POS函數(shù),xE、xE可以作為0真值參與化簡(jiǎn)。如果它們已經(jīng)作為E、E 用過(guò)了,則此時(shí)它們相當(dāng)于隨意項(xiàng);否則,它們必須作為真值0參與化簡(jiǎn)。l 實(shí)際上合并化簡(jiǎn)步驟中、的順序是可以交換的,不同的次序可以導(dǎo)致優(yōu)化結(jié)果的不同。l 例2-6用MEV圖化簡(jiǎn)邏輯函數(shù) Y=m(7,10,16,17,25,26,27)+d(23)l 解:畫出邏輯函數(shù)的MEV圖如圖2-23所示。 l 我們首先對(duì)真值為E的方格化簡(jiǎn),將與之相鄰的、1真值的方格充當(dāng)E參與化簡(jiǎn),得BCDE。l 而后對(duì)真值為E的方格化簡(jiǎn)。與之相鄰的、1真值的方格又充當(dāng)E參與化簡(jiǎn)

31、,得ABCE。另一個(gè)真值為E的方格與真值為xE的方格合并,得BCDE。l 對(duì)于那個(gè)既作為E用過(guò)、又作為E用過(guò)的真值為1的方格,就不必再考慮了。l 而另一個(gè)未用過(guò)、真值為1的方格,直接寫出得ABCD。l 當(dāng)輸入變量數(shù)目較多時(shí),采用卡諾圖法對(duì)邏輯函數(shù)進(jìn)行化簡(jiǎn)就不太實(shí)用了。因?yàn)楫?dāng)輸入變量數(shù)目較多時(shí),通過(guò)卡諾圖來(lái)尋找PI和EPI就不再容易了。而Q-M(Quine-McClusky)法卻能夠很好地解決任意多個(gè)輸入變量的邏輯函數(shù)化簡(jiǎn)問(wèn)題;同時(shí)Q-M法還是一種適宜于用計(jì)算機(jī)程序?qū)崿F(xiàn)的邏輯函數(shù)化簡(jiǎn)法。因此在邏輯函數(shù)化簡(jiǎn)技術(shù)領(lǐng)域中,Q-M法占有著十分重要的地位。l2.3 l Quine-McClusky法通過(guò)一

32、系列的步驟,最終求得函數(shù)的最優(yōu)化簡(jiǎn)結(jié)果。其程序流程如圖2-28所示。l 2.3.1 l 1.使用Q-M法時(shí)蘊(yùn)涵和質(zhì)蘊(yùn)涵的表示方法l 當(dāng)使用Q-M法化簡(jiǎn)邏輯函數(shù)時(shí),我們用一個(gè)二進(jìn)制數(shù)(字符串)來(lái)表示最小項(xiàng)(或最大項(xiàng))。如:將ABCDEFG表示為1101011、ABCDEFG表示為0101010等。l 如果兩個(gè)表示最小項(xiàng)(最大項(xiàng))的字符串僅在某一位上數(shù)值相異,而其它各位數(shù)值都相同;則這兩個(gè)最小項(xiàng)(或最大項(xiàng))可以合并成一個(gè)蘊(yùn)涵。我們用x替換掉相異的那一位,就得到了表示該蘊(yùn)涵的字符串。例如:11011001與11001001合并的結(jié)果為110 x1001。l 同理,兩個(gè)表示蘊(yùn)涵的字符串如果僅在某一位上

33、數(shù)值相異,而其它各位數(shù)值都相同;則這兩個(gè)蘊(yùn)涵可以合并化簡(jiǎn)成另一個(gè)新的蘊(yùn)涵。我們用x替換掉相異的那一位,就得到了表示化簡(jiǎn)結(jié)果的字符串。如:110 x1001與110 x1000合并的結(jié)果為110 x100 x。l 也就是說(shuō),在使用Q-M法時(shí),我們可以用由0、1和x組成的字符串來(lái)表示函數(shù)的蘊(yùn)涵和質(zhì)蘊(yùn)涵。l 2.用Q-M法求PI和EPI的步驟如下:l 求出邏輯函數(shù)所有的最小項(xiàng)(最大項(xiàng))。l 將邏輯函數(shù)的最小項(xiàng)(最大項(xiàng))用相應(yīng)的二進(jìn)制數(shù)(字符串)表示。l 分組:將表示邏輯函數(shù)最小項(xiàng)(最大項(xiàng))的二進(jìn)制數(shù),按它們中所含1的數(shù)目分別放置在不同的組中。l 如:第0組中是不含1的二進(jìn)制數(shù)、第1組中是含有一個(gè)1的

34、二進(jìn)制數(shù)、第2組中是含有兩個(gè)1的二進(jìn)制數(shù)對(duì)放在相鄰兩個(gè)組中的字符串逐位比較。如果它們除了在某一位數(shù)值不同外、其它各位數(shù)值均相同,則它們就能夠合并成一個(gè)新的蘊(yùn)涵。l 對(duì)于能夠合并的最小項(xiàng)(最大項(xiàng))做上標(biāo)記(一般是用打勾表示)。l 第一次生成的分組表稱為第1級(jí)分組表。l 將第1級(jí)分組表中所有帶標(biāo)記字符串的合并結(jié)果放入第2級(jí)分組表中:l 分屬于第1級(jí)分組表中兩個(gè)相鄰組、且兩個(gè)字符串僅有某一位相異時(shí),用x將相異的那一位替換掉,即得到表示兩個(gè)最小項(xiàng)(最大項(xiàng))合并結(jié)果的蘊(yùn)涵的字符串。并對(duì)該蘊(yùn)涵所覆蓋的最小項(xiàng)(最大項(xiàng))進(jìn)行記錄。l 然后將新產(chǎn)生的字符串按照所含1的數(shù)目分組放入第2級(jí)分組表。l 如果屬于前一級(jí)

35、分組表的某些字符串不帶標(biāo)記,則也將它放入到后一級(jí)分組表中。l 對(duì)放在相鄰兩個(gè)組中的字符串逐位比較。如果它們能夠進(jìn)一步合并成新的蘊(yùn)涵,則為它們加上標(biāo)記。l 按照步驟中的方法,由前一級(jí)分組表的合并結(jié)果得到后一級(jí)分組表,第n次生成的稱為第n級(jí)分組表。如此進(jìn)行,直到所有字符串全都無(wú)法進(jìn)一步化簡(jiǎn)為止。l 此時(shí)表中存放的字符串就是函數(shù)的質(zhì)蘊(yùn)涵PI了。l 對(duì)已經(jīng)獲得的質(zhì)蘊(yùn)涵PI進(jìn)行檢查。如果一個(gè)PI中所覆蓋的某個(gè)最小項(xiàng)或最大項(xiàng)(必須不是隨意項(xiàng)),是其它PI所沒(méi)有覆蓋的;也即存在著由該P(yáng)I單獨(dú)覆蓋的某個(gè)最小項(xiàng)(最大項(xiàng))時(shí),這個(gè)PI就是必要質(zhì)蘊(yùn)涵,即EPI。l 在分組表中將找出的EPI做上標(biāo)記(一般是用*號(hào)將單

36、獨(dú)覆蓋的最小項(xiàng)或最大項(xiàng)標(biāo)出)。l 至此,邏輯函數(shù)的EPI的求解完成。l 例2-8求邏輯函數(shù)f=m(9,10,11,14,15,25,26,27,30,41,57,61)的全部PI和EPI。l 解:如圖2-26b所示,將真值表中的二進(jìn)制數(shù)分組得第1級(jí)分組表。l 第1級(jí)分組表中的內(nèi)容合并、分組后得第2級(jí)分組表,如2-26c所示。l 如:001001與001011合并得0010 x1, 001001與011001合并得0 x1001, 001001與101001合并得x01001,001010與001011合并得00101x, 001010與001110合并得001x10, 001010與01101

37、0合并得0 x1010, 101001與111001合并得1x1001, 111001與111101合并得111x01等。l 第2級(jí)分組表中的內(nèi)容合并、分組后得第3級(jí)分組表,如2-29d所示。l 如:0 x1001與1x1001合并得xx1001, 0010 x1與0110 x1合并得0 x10 x1, 00101x與01101x合并得0 x101x, 001x10與011x10合并得0 x1x10, 001x10與001x11合并得001x1x等。l 列出質(zhì)蘊(yùn)涵表,即將每個(gè)PI所覆蓋的最小項(xiàng)情況用表格顯示出來(lái),如圖2-27所示。l 檢查質(zhì)蘊(yùn)涵表,找出被某個(gè)PI單獨(dú)覆蓋的最小項(xiàng),為它們打上*號(hào)

38、。表中凡是有*號(hào)的就是必要質(zhì)蘊(yùn)涵EPI?,F(xiàn)在EPI為:xx1001,0 x1x10,001x1x和111x01。l 2.3.2 l 所謂函數(shù)的,就是用最少的PI來(lái)覆蓋該函數(shù)所有的最小項(xiàng)(最大項(xiàng))。l 分析可知:必要質(zhì)蘊(yùn)涵EPI是必須選擇的PI;而對(duì)于剩下的非必要質(zhì)蘊(yùn)涵,選擇哪些PI能夠構(gòu)成函數(shù)的最優(yōu)覆蓋,則不是十分明顯的。l Q-M化簡(jiǎn)法提供了求解函數(shù)最優(yōu)覆蓋的一套完整方案,為實(shí)現(xiàn)函數(shù)的最優(yōu)化簡(jiǎn)提出了行之有效的方法。l Q-M化簡(jiǎn)法的算法流程如下:l 步驟1:從質(zhì)蘊(yùn)涵表生成簡(jiǎn)化質(zhì)蘊(yùn)涵表l 從質(zhì)蘊(yùn)涵表將EPI放入到中,把剩余的非必要質(zhì)蘊(yùn)涵PI放入到中。l 從簡(jiǎn)化質(zhì)蘊(yùn)涵表中,將被化簡(jiǎn)結(jié)果表中PI所

39、覆蓋的最小項(xiàng)(最大項(xiàng))全部除去。這時(shí)簡(jiǎn)化質(zhì)蘊(yùn)涵表存放的是尚未被化簡(jiǎn)結(jié)果覆蓋的最小項(xiàng)(最大項(xiàng))的情況。l 步驟2:從簡(jiǎn)化質(zhì)蘊(yùn)涵表中除去劣勢(shì)PIl 在簡(jiǎn)化質(zhì)蘊(yùn)涵表中,如果存在某一PIi ,(將被化簡(jiǎn)結(jié)果表中PI所覆蓋的最小項(xiàng)或最大項(xiàng)除去后)其所覆蓋的最小項(xiàng)(最大項(xiàng))在另一個(gè)PIj中全部能夠找到、且PIj中最小項(xiàng)(最大項(xiàng))的數(shù)目多于PIi ;則PIi 相對(duì)于PIj就是PI。l 由于PIj覆蓋的結(jié)果也一定會(huì)覆蓋PIi ,所以PIi 可以被PIj 取代。故我們找到劣勢(shì)PI后,把它們從簡(jiǎn)化質(zhì)蘊(yùn)涵表中除去。l 步驟3:循環(huán)操作l 當(dāng)除去劣勢(shì)PI后,就可能會(huì)有“某個(gè)PI中所覆蓋的某些最小項(xiàng)(最大項(xiàng)),沒(méi)有被其

40、它PI所覆蓋”的情況出現(xiàn);也即這個(gè)PI為EPI。l 將找到的新的EPI放入到化簡(jiǎn)結(jié)果表中,余下的PI留在簡(jiǎn)化質(zhì)蘊(yùn)涵表中。然后跳轉(zhuǎn)至步驟1的處。l 如此循環(huán)工作,直到簡(jiǎn)化質(zhì)蘊(yùn)涵表為空,完成函數(shù)的化簡(jiǎn)為止。l 這樣的化簡(jiǎn)過(guò)程實(shí)現(xiàn)了函數(shù)的最優(yōu)化簡(jiǎn),化簡(jiǎn)結(jié)果存放在化簡(jiǎn)結(jié)果表中。l 步驟4:從簡(jiǎn)化質(zhì)蘊(yùn)涵表中選取最低價(jià)格PI l 在上述的化簡(jiǎn)過(guò)程中,如果某一次循環(huán)時(shí)EPI不存在、或者找不到劣勢(shì)PI,化簡(jiǎn)工作就無(wú)法繼續(xù)下去了。這時(shí)可以采用選取最低價(jià)格PI的方法解決之。l 所謂PI,就是指在物理實(shí)現(xiàn)上價(jià)格最低的PI,也即字符串中包含x數(shù)目最多的PI。l 如果出現(xiàn)了多個(gè)字符串中x數(shù)目相同的情況,則可以任意選擇其

41、一,作為最低價(jià)格PI。l 將選取的最低價(jià)格PI放入到化簡(jiǎn)結(jié)果表中,更新簡(jiǎn)化質(zhì)蘊(yùn)涵表。然后跳轉(zhuǎn)至步驟1的處。l 如此循環(huán)工作,直到簡(jiǎn)化質(zhì)蘊(yùn)涵表為空,完成函數(shù)的化簡(jiǎn)為止。l 應(yīng)當(dāng)指出,選擇最低價(jià)格PI的方法,不能保證一定會(huì)得到最優(yōu)的函數(shù)覆蓋,只能保證得到較優(yōu)的化簡(jiǎn)結(jié)果。如果要得到最優(yōu)的函數(shù)覆蓋,就要使用搜索的方法,這樣顯然會(huì)增加解決問(wèn)題的難度。例2-9已知質(zhì)蘊(yùn)涵表如圖2-29所示,求函數(shù)的最優(yōu)化簡(jiǎn)結(jié)果。圖2-29 例2-9的質(zhì)蘊(yùn)涵表EPIl 解:圖2-30、圖2-31、圖2-32是利用Q-M法求最優(yōu)覆蓋的過(guò)程。l 1)首先將EPI放入化簡(jiǎn)結(jié)果表中,求得簡(jiǎn)化質(zhì)蘊(yùn)涵表,如圖2-30所示。l 2)然后,

42、檢查簡(jiǎn)化質(zhì)蘊(yùn)涵表中是否存在劣勢(shì)PI,若有則消去之。由于現(xiàn)在不存在劣勢(shì)PI,所以選擇一個(gè)最低價(jià)格PI,放入化簡(jiǎn)結(jié)果表中;再?gòu)挠嘞碌腜I中消去被該最低價(jià)格PI所覆蓋的最小項(xiàng),如圖2-31所示。l 3)從簡(jiǎn)化質(zhì)蘊(yùn)涵表中消去劣勢(shì)PI:xx001。l 4)從簡(jiǎn)化質(zhì)蘊(yùn)涵表中查找EPI,如圖2-32所示。除去除去1x00 x中所中所包含的最小項(xiàng)包含的最小項(xiàng)化簡(jiǎn)結(jié)果1x00 x選取的最低價(jià)格PI化簡(jiǎn)結(jié)果除去除去x100 x中所中所包含的最小項(xiàng)包含的最小項(xiàng)劣勢(shì)PI找到EPIl 5)將EPI放入化簡(jiǎn)結(jié)果表中,更新簡(jiǎn)化質(zhì)蘊(yùn)涵表,如圖2-33所示。l 6)從簡(jiǎn)化質(zhì)蘊(yùn)涵表中消去劣勢(shì)PI:0001x和1x0 x1。l 7

43、)從簡(jiǎn)化質(zhì)蘊(yùn)涵表中查找EPI,如圖2-34所示。l 8)將EPI放入化簡(jiǎn)結(jié)果表中,更新簡(jiǎn)化質(zhì)蘊(yùn)涵表。此時(shí)化簡(jiǎn)結(jié)果表中的PI已經(jīng)完成了函數(shù)的覆蓋,所以函數(shù)的優(yōu)化過(guò)程到此結(jié)束,化簡(jiǎn)結(jié)果為1x00 x、x100 x、x00 x1、0 x010和110 xx。劣勢(shì)PI劣勢(shì)PI被0 x010和110 xx覆蓋l 在實(shí)際工作中,除了單輸出函數(shù)外,還會(huì)遇到多輸出函數(shù)化簡(jiǎn)的情況。所謂,就是在一組輸入變量的情況下,同時(shí)存在多個(gè)函數(shù)輸出的問(wèn)題。這時(shí)某些邏輯門電路可以被多個(gè)輸出函數(shù)所共享,整個(gè)電路的化簡(jiǎn)工作應(yīng)當(dāng)針對(duì)所有的輸出來(lái)進(jìn)行。電路的化簡(jiǎn)優(yōu)化應(yīng)當(dāng)是一個(gè),這時(shí)電路的最小實(shí)現(xiàn)是指用最少的物理電路來(lái)實(shí)現(xiàn)多個(gè)輸出函數(shù)的

44、邏輯功能。2.6l 例如圖2-41是3個(gè)輸出函數(shù)的卡諾圖,其全局優(yōu)化的結(jié)果應(yīng)為:Yc=ACD,Yb=ACD+ABC,Ya=ACD+ACDl (其他內(nèi)容略去)l 2.7 是由作者本人研制編寫的、專門用于邏輯函數(shù)化簡(jiǎn)優(yōu)化的計(jì)算機(jī)軟件。l 卡諾圖軟件具有優(yōu)異的性能,目前國(guó)內(nèi)尚未見(jiàn)有同類軟件的報(bào)導(dǎo)。l 卡諾圖軟件具有功能完備、使用方便等許多優(yōu)點(diǎn),它既能夠用于解決邏輯設(shè)計(jì)的實(shí)際問(wèn)題,也能夠用于數(shù)字邏輯課程的輔助教學(xué)。在電腦日益普及的今天,卡諾圖軟件為讀者學(xué)習(xí)、應(yīng)用數(shù)字邏輯知識(shí)提供了極好的幫助。l 在本書(shū)中附帶有卡諾圖軟件2.0光盤,以供安裝使用。l 2.7.1 l 卡諾圖軟件的主要功能有:l 1)可以進(jìn)

45、行3、4、5、6變量邏輯函數(shù)的卡諾圖化簡(jiǎn)。l 2)具有MEV卡諾圖化簡(jiǎn)功能。l 3)提供Q-M(奎因表)化簡(jiǎn)功能l 4)具有銳積法、相容法化簡(jiǎn)功能。l 5)可以對(duì)“多輸出函數(shù)”進(jìn)行化簡(jiǎn)。l 6)具有多種輸入功能,包括真值表、最小項(xiàng)、最大項(xiàng)和表達(dá)式輸入功能等。l 其中表達(dá)式輸入功能,允許用戶直接用邏輯表達(dá)式,來(lái)輸入待優(yōu)化的邏輯函數(shù)。l 7)支持POS、SOP、正函數(shù)和反函數(shù)(有時(shí)采用正函數(shù)比采用反函數(shù)化簡(jiǎn)結(jié)果更優(yōu),有時(shí)則正好相反)等各種函數(shù)形式。l 8)單步操作模式,能夠清楚地顯示出邏輯化簡(jiǎn)的每一中間步驟。l 圖2-42是卡諾圖軟件的操作界面圖。l 2.7.2 l 如圖2-43所示,卡諾圖軟件的

46、操作界面包括菜單欄、工具條、真值輸入?yún)^(qū)、化簡(jiǎn)圖示區(qū)、化簡(jiǎn)結(jié)果輸出文本框、公式輸入文本框、函數(shù)形式選擇框等。 l 卡諾圖軟件的各種控件功能如下:l 1.菜單欄l 文件:可執(zhí)行裝入邏輯化簡(jiǎn)的例子、結(jié)束程序等操作。l 設(shè)置:可選擇程序工作于三元變量、四元變量、五元變量、六元變量、多輸出函數(shù)、奎因表和銳積/相容法等不同的工作狀態(tài)。l 輸入輸出:可執(zhí)行表達(dá)式輸入、選擇SOP或POS函數(shù)形式和執(zhí)行全1真值輸入、全0真輸入等操作。l 運(yùn)行:可執(zhí)行函數(shù)化簡(jiǎn)、單步化簡(jiǎn)和清除等操作。l 幫助:可查看軟件的幫助文件、獲取軟件的版本信息和作者信息等。l 2.工具條l 工具條提供了軟件各種操作的快捷手段,工具條中各按鈕

47、的功能如圖2-44所示。l 3.真值輸入?yún)^(qū)l 卡諾圖軟件提供有多種方法來(lái)完成真值輸入的任務(wù)。利用鼠標(biāo)直接點(diǎn)擊真值輸入?yún)^(qū)中的真值方格,就是一種常用的真值輸入方法。此時(shí),用鼠標(biāo)左鍵點(diǎn)擊某一真值方格,就可以改變方格中的值,從空(代表0值)變到1,從1變到0,從0變到x(當(dāng)“帶約束條件”被選中時(shí))。l 當(dāng)按下Ctrl+Z鍵后,可以直接查看到各個(gè)方格所對(duì)應(yīng)最小項(xiàng)(最大項(xiàng))的數(shù)值。因而能夠按邏輯函數(shù)的最小項(xiàng)(最大項(xiàng))形式來(lái)輸入該函數(shù)。l 4.化簡(jiǎn)圖示區(qū)l 當(dāng)函數(shù)輸入完畢后進(jìn)行邏輯化簡(jiǎn)時(shí),在化簡(jiǎn)圖示區(qū)我們可以看到函數(shù)的化簡(jiǎn)結(jié)果圖?;?jiǎn)結(jié)果中的每一個(gè)質(zhì)蘊(yùn)涵PI,都被一個(gè)彩色圖元所表示了。加上軟件具有查看化簡(jiǎn)結(jié)

48、果的單步功能,因此軟件顯示的化簡(jiǎn)結(jié)果具有非常直觀、生動(dòng)的效果。l 5.化簡(jiǎn)結(jié)果輸出文本框和表達(dá)式輸入文本框l 化簡(jiǎn)結(jié)果輸出文本框用于顯示化簡(jiǎn)結(jié)果的邏輯表達(dá)式。卡諾圖軟件支持SOP和POS的函數(shù)形式。在邏輯表達(dá)式中,卡諾圖軟件“!”來(lái)表示邏輯函數(shù)的“非”邏輯。l 利用表達(dá)式輸入文本框可以直接輸入函數(shù)的邏輯表達(dá)式。表達(dá)式輸入時(shí)允許使用多重小括號(hào)。輸入完畢后回車即提交輸入的內(nèi)容。l 例如可以輸入:ABCD+(!A!C+CD)(!B+D)等。其中!X表示 X。l 6.函數(shù)形式選擇框l 卡諾圖軟件不但支持SOP和POS函數(shù)形式,還支持正函數(shù)和反函數(shù)形式。當(dāng)選擇反函數(shù)形式時(shí),軟件按輸入真值表的反函數(shù)形式來(lái)

49、進(jìn)行邏輯化簡(jiǎn)。l 2.7.3 l 例2-10 化簡(jiǎn)邏輯函數(shù)f(A,B,C,D)=ABC+ACD+ABCD+ABCD 。l 分析可知函數(shù)由最小項(xiàng)ABCD、ABCD、ABCD、ABCD、ABCD和ABCD組成。l 用鼠標(biāo)點(diǎn)擊真值輸入?yún)^(qū)中相應(yīng)的方格,完成函數(shù)輸入工作。然后按“化簡(jiǎn)”按鈕,化簡(jiǎn)圖示區(qū)中就會(huì)顯示出化簡(jiǎn)結(jié)果圖,同時(shí)從化簡(jiǎn)結(jié)果文本框中讀到化簡(jiǎn)結(jié)果的邏輯表達(dá)式:!B!C+!CD。l 以上化簡(jiǎn)過(guò)程,如圖所示。l 例2-11 化簡(jiǎn)邏輯函數(shù)f(A,B,C,D)=m(1,3,4,6,7,8,15)+ d(0,5)l 首先按下ctrl+z鍵,真值輸入?yún)^(qū)將顯示出各個(gè)方格的最小(大)項(xiàng)數(shù)值。選擇“帶約束條件

50、”選項(xiàng),點(diǎn)擊鼠標(biāo)使m0、m5方格中的值為x,使m1、m3、m4、m6、m7、m8和m15方格中的值為1。然后按“化簡(jiǎn)”按鈕,即可完成函數(shù)化簡(jiǎn),結(jié)果為:!AB+!AD+BCD+!B!C!D。l 以上化簡(jiǎn)過(guò)程,如圖2-46 和圖2-47所示。圖2-46 查看最小項(xiàng)(最大項(xiàng))圖2-47 例2-11中的圖l 例2-12 化簡(jiǎn)邏輯函數(shù)f(A,B,C,D)=A+B(ACD+D(A+BC)l 點(diǎn)擊工具條上的“表達(dá)式輸入”按鈕,公式輸入文本框?qū)@示出來(lái)。將光標(biāo)置于公式輸入文本框中,用鍵盤輸入A+B(!A!CD+!D(A+!BC)后,按回車即可。得到的化簡(jiǎn)結(jié)果為:A+B!CD。l 以上化簡(jiǎn)過(guò)程,如圖2-48所示。圖2-48 例2-12的圖l 五變量和六變量的卡諾圖是如何畫出的? 圖中相鄰的兩行(列)之間仍然是只有一個(gè)變量相異嗎?l 五變量和六變量卡諾圖邏輯化簡(jiǎn)時(shí)的“相鄰”關(guān)系,是如何確定的?l 邏輯函數(shù)按最大項(xiàng)化簡(jiǎn)時(shí)與按最小項(xiàng)時(shí)的異同何在?l 什么是MEV?對(duì)于1個(gè)變量的MEV,1個(gè)小方格對(duì)應(yīng)于普通卡諾圖中的幾個(gè)方格?l MEV化簡(jiǎn)的步驟是怎么樣的?l 當(dāng)變量數(shù)目較多時(shí),應(yīng)當(dāng)采用何種方法進(jìn)行邏輯化簡(jiǎn)?l 什么是劣勢(shì)PI? 什么是最低價(jià)格PI?l 多輸出邏輯函數(shù)邏輯化簡(jiǎn)時(shí),應(yīng)當(dāng)按什么原則進(jìn)行?l 卡諾圖軟件的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論