6、邏輯代數的化簡(公式法和卡諾圖法)


一、邏輯函數的化簡

將一個邏輯表達式變得最簡單、運算量最少的形式就叫做化簡。由於 運算量越少,實現邏輯關系所需要的門電路就越少,成本越低,可靠性相對較高,因此在設計邏輯電路時,需要求出邏輯函數的最簡表達式。

邏輯函數化簡

由此可以看到,函數化簡是為了簡化電路,以便用最少的門實現它們,從而降低系統的成本,提高電路的可靠性。

通常來說,我們化簡的結果會有以下五種形式

五種常用最簡形式

為什么是這五種情況,這個跟我們實現的邏輯電路的元器件是有關系的。在所有的邏輯電路中,都是通過與、或、非三種邏輯電路來實現的,之前說過邏輯“與或”、“或與”、“與或非”組合邏輯電路是具有完備性的,也就是說能夠通過它們不同數量的組合能夠實現任何電路。

通過不同的“與或”電路組成的電路,最后化簡的表達式就是“與或”表達式,其他同理。

二、將使用“與或”表達式的化簡

與或表達式的化簡

  • 表達式中乘積項的個數應該是最少的

    ​ 表達了最后要用到的與門是最少的,因為每一個乘積項都需要一個與門來實現。同時也對應了或門輸入端的個數變少,有2個與項或門就有2個輸入端,有3個與項或門就有3個輸入端。

​ 所以第一個條件是為了我們的與門和或門最少。

  • 每一個乘積項中所含的變量個數最少

    它是解決每一個與門的輸入端最少。

邏輯函授的化簡有三種方法

邏輯函數的化簡的三種方法

三、邏輯函數的代數化簡法

代數化簡法

3.1 並項法

並項法就是將兩個邏輯相鄰(互補)的項合並成一個項,這里就用到了“合並律”

並項法1

將公因子A提取出來合並成一項,b和b非相或的結果就等於1,所以最后的結果就是A。

並項法2

並項法3

並項法4

3.2 吸收法

吸收法是利用公式“吸收律”來消去多余的項

吸收法1

吸收法2

吸收法3

3.3 消項法

消項法又稱為吸收律消項法

吸收律2-16379836976041

消項法1

3.4 消因子法(消元法)

消因子法

3.4 配項法

配項法

左邊的例子用到了方法1,右邊的例子用到了方法2。

3.5 邏輯函數的代數法化簡的優缺點

優點:對變量的個數沒有限制。在對定律掌控熟練的情況下,能把無窮多變量的函數化成最簡。

缺點:需要掌握多個定律,在使用時需要能夠靈活應用,才能把函數化到最簡,使用門檻較高。在有些函數下,並不能化到最簡。

綜上所述,代數法化簡的缺點遠遠大於它的優點,因而引出了卡諾圖化簡法。

四、卡諾圖化簡

4.1 概念

  • 卡諾圖是由美國工程師卡諾(Karnaugh)首先提出的一種用來描述邏輯函數的特殊方格圖。

  • 在學習卡諾圖之前有個概念需要清楚:

    • 最小項的定義:一個函數的某個乘積項包含了函數的全部變量,其中每個變量都以原變量或反變量的形式出現,且僅出現一次,則這個乘積項稱為該函數的一個標准積項,通常稱為最小項

      簡單來說最小項就是變量只有與非的表達式,3變量的與非表達式能夠組合出8種不同的形式。它們的特點是8種不同的與非表達式,輸入同樣的變量取值,如:000,最后只有一種表達式會得1,其余得0,所以叫做最小項。

      最小項3-16380011292052

    • 邏輯相鄰最小項,如果兩個最小項之間,只有一個變量不同,其余都相同,這個就叫做邏輯相鄰最小項。

編號 A B F
m0 0 0 0
m1 0 1 1
m2 1 0 1
m3 1 1 0

這個真值表是AB變量的數值是按照順序來變化的,可以看到編號為m1和m2之間變量並不相鄰,都互相取反了。我們可以通過調整順序,將這個真值表變成邏輯相鄰(格雷碼)。

編號 A B F
m0 0 0 0
m1 0 1 1
m3 1 1 0
m2 1 0 1

將m3和m2進行位置的互換以后,可以看到只有1位變量的值,發生了變化,這樣就叫做邏輯相鄰(格雷碼)。

邏輯相鄰

邏輯相鄰(格雷碼)給我們找到了一個化簡的途徑,在卡諾圖中正是利用了這個原理進行化簡的。

4.2 卡諾圖的構成

卡諾圖主要的做法就是畫一個二維的方格圖,在這個圖里面,我們把邏輯相鄰的最小項都擺放成位置相鄰。

  • 在這個方格圖中,每一個方格代表邏輯函數的一個最小項,而且幾何相鄰(在幾何位置上,上下或左右相鄰)的小方格具有邏輯相鄰性(格雷碼),即兩相鄰小方格所代表的最小項只有一個變量取值不同

  • 對於有n個變量的邏輯函數,其最小項有2^n個。因此該邏輯函數的卡諾圖由 2^n 個小方格構成,每個小方格都滿足邏輯相鄰項的要求。

二變量的卡諾圖

這是一個二變量的卡諾圖,變量A寫在左側,0和1表示那一列A不同的取值。變量B寫在上方,0和1表示那一行B不同的取值。格子里面是存放的是左側與上側的變量結合出來的最小項表達式。結合成最小項時,左側的變量A在高位,上側的變量B在低位。

相鄰方格位置之間的最小項只有一個變量發生了變化,這個就叫做位置相鄰

在卡諾圖中多變量那一行,需要按照邏輯相鄰(格雷碼)的概念進行排序。

三變量的卡諾圖

四變量的卡諾圖

N變量的表達式有N種不同的最小項,這個原理在卡諾圖中也是一樣的。在N變量的卡諾圖中,任意位置的最小項都能找到N個對應位置相鄰的最小項。

最小項編號具有格雷碼的循環特性,所以在卡諾圖中邊緣的最小項能夠跟它最上面和最左、右邊的最小項位置相鄰。

四變量的卡諾圖2

對於5變量的卡諾圖,我們也應該提供給每一個最小項都有5個位置相鄰的最小項。但是在二維表中,只有上下左右,因此沒有辦法在一個表中提供5個位置相鄰的最小項。那么一張不行,我們就把它定義成2張卡諾圖。

假設,5個變量分別為:ABCDE,我們把A變量單獨拿出來,將A=0的情況,用一張表來表示;將A=1的情況,再用一張表表示。每個表都是4變量的卡諾圖,結合成最小項時,A變量在最高位,接下來是左側的變量BC,上側的變量DE在低位。

五變量的卡諾圖

卡諾圖的特點

4.3邏輯函數的卡諾圖表示

邏輯函數的卡諾圖表示

最小項之和式

邏輯函數的卡諾圖表示2

邏輯函數的卡諾圖表示3

最大項之積式

邏輯函數的卡諾圖表示4

邏輯函數的卡諾圖表示5

4.4 真值表轉換成卡諾圖

真值表轉換成卡諾圖

4.5 一般“與或”式的邏輯函數轉換成卡諾圖

1、將式子的不同變量提取出來,變成N變量的卡諾圖。

邏輯函數為“一般卡諾圖”

2、觀察結果F 在何種狀態下結果會變為1,上面式子通過觀察可知,只要有一個與項的結果等於1,其結果F就會等於1.

3、將會使結果F等於1的變量值和卡諾圖對應上,其格子填上1。

邏輯函數為“一般卡諾圖”2

邏輯函數為“一般卡諾圖”3

4、所有F=1的情況,列出來以后,其他就=0了。

邏輯函數為“一般卡諾圖”4

4.6 一般“或與”式的邏輯函數轉換成卡諾圖

1、將式子的不同變量提取出來,變成N變量的卡諾圖。

邏輯函數為一般“與或式”轉卡諾圖4

2、觀察結果F 在何種狀態下結果會變為0,上面式子通過觀察可知,只要有一個或項的結果等於0,其結果F就會等於0.

3、將會使結果F等於0的變量值和卡諾圖對應上,其格子填上0。

邏輯函數為一般“或與式”轉卡諾圖

邏輯函數為一般“或與式”轉卡諾圖2

4、所有F=0的情況,列出來以后,其他就=1了。

邏輯函數為一般“或與式”轉卡諾圖3

4.7 邏輯函數為其他形式轉換成卡諾圖

邏輯函數為其他形式轉換成卡諾圖

邏輯函數為其他形式轉換成卡諾圖2

4.7 卡諾圖的性質

卡諾圖的性質

卡諾圖的運算“乘”

4.8 卡諾圖的運算

卡諾圖的運算“加”

卡諾圖的運算“異或”

卡諾圖的運算1

卡諾圖的運算2

卡諾圖的運算3

4.9 利用卡諾圖化簡邏輯函數

4.9.1 最小項合並規律

最小項合並規律

最小項合並規律2

這個圈就叫做卡諾圈。

最小項合並規律3

最小項合並規律4

最小項合並規律5

1、求最簡“與或”式(最小項)

求最簡與或式

最小覆蓋原則

用卡諾圖化簡邏輯函數

2、圈組合並時注意事項

圈組合並時注意事項

圈組合並時注意事項2

圈組合並時注意事項3

圈組合並時注意事項4

圈組合並時注意事項5

圈組合並時注意事項6

3、求最簡“或與”式(最大項)

求最簡或與式

求最簡或與式2

4.9.2 多輸出邏輯函數的卡諾圖化簡法

多輸出邏輯函數的卡諾圖化簡法

多輸出邏輯函數的卡諾圖化簡法2


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM