徐 兵 朱鵬遠
(1,2.昌吉學院物理系 新疆 昌吉 831100)
基于卡諾圖在處理邏輯函數(shù)方面的應用研究
徐 兵1朱鵬遠2
(1,2.昌吉學院物理系 新疆 昌吉 831100)
卡諾圖是數(shù)字電路邏輯設計中必不可少的工具,它在邏輯函數(shù)的處理方面有著較多的應用,如簡化函數(shù)、邏輯運算、形式轉換等。很好地利用卡諾圖所具有的功能,可以使邏輯電路的設計方案達到最佳。
卡諾圖;邏輯函數(shù);原變量;反變量
卡諾圖是數(shù)字電路邏輯設計中必不可少的工具,其基本用途是對邏輯函數(shù)進行簡化,但它還有很多被人們開發(fā)出來的其它用途。在邏輯電路的設計中,常常要求使用個數(shù)及種類均較少的邏輯器件來實現(xiàn)特定的邏輯功能,這就必須對已知的邏輯函數(shù)進行適當?shù)奶幚聿拍軌蜻_到目的,滿足設計要求。本文就卡諾圖在處理邏輯函數(shù)方面的應用做一些探討性的研究。
邏輯函數(shù)主要有兩種表示方法:邏輯函數(shù)表達式和卡諾圖,在對邏輯函數(shù)進行化簡和運算時,應用卡諾圖相對比較簡單直觀,而且不需要套用很多的定理和公式,易于掌握。當函數(shù)包含的變量個數(shù)不太多時,用卡諾圖進行邏輯函數(shù)的化簡和運算顯得尤其方便,這也是卡諾圖的最基本的應用。
2.1 邏輯函數(shù)的卡諾圖表示
卡諾圖的一個重要的特征是能夠在圖形上直觀地反映最小項的相鄰關系,它將邏輯函數(shù)所涉及的n個變量分為兩組,兩組變量均按照循環(huán)碼排列,構成一個二維表格。其中,每一個小格對應于邏輯函數(shù)的一個最小項,二維表格恰好包含了 n變量的邏輯函數(shù)的全部最小項。當函數(shù)的變量取值與某小方格代表的最小項相同時,函數(shù)值為1,小方格中也就對應地填入 1。因此,對于任意一個“與—或”邏輯表達式,只要充分利用AB+=A的關系,就可以快速地將邏輯函數(shù)填入卡諾圖中。如:將 F=AC+用卡諾圖表示出來。該函數(shù)涉及四個變量A、B、C、D,對于第一個“與”項AC,它在卡諾圖中對應的小方格的集合為 A=1,C=1的所有小方格的集合,即:{m10,m11,m14,m15},不必考慮B、D的取值情況;第二個“與”項在卡諾圖中對應的小方格的集合為 A=1,B=1,C=0的所有小方格的集合,即:{m12,m13},不必考慮D的取值;第三個“與”項在卡諾圖中對應的小方格的集合為 A=1,B= 0,D=1的所有小方格的集合,即:{m9,m11},不必考慮 C的取值。第四個與項在卡諾圖中對應的小方格的集合為A=0,B=0,D=1的所有小方格的集合,即:{m1,m3},也不必考慮 C的取值;用這種方法可以快速地得到邏輯函數(shù)的卡諾圖表示結果,如圖 1所示。
2.2 用卡諾圖化簡邏輯函數(shù)
①將卡諾圖中 2n個相鄰的“1”格畫在一個矩形圈內(nèi)(即卡諾圈);
②圈內(nèi)“1”格要盡量地多;圖上表征邏輯函數(shù)取值為 1的相鄰最小項的相鄰小方格進行合并,達到以簡單的一個“與”項替代若干個最小項的目的。
卡諾圖變量取值組合按循環(huán)碼的規(guī)律排列,使處在相鄰位置的最
③每個“1”格可以被重復圈用;
④每個“1”格必須至少被圈過 1次;
⑤每個圈中至少有一個從未被圈過的”1”格;
⑥卡諾圈的個數(shù)要最少。
寫出最簡“與—或”邏輯表達式的方法:一個卡諾圈寫 1個“與”項,將圈中沒有發(fā)生 0、1變化的變量相乘即可。其中,始終為 1的變量寫為原變量,而始終為 0的變量寫為反變量。然后將所有與項相加,就獲得了邏輯函數(shù)的最簡“與—或”表達式。如圖 2所示,按照圈“1”規(guī)則,可畫得三個卡諾圈,因此最簡“與—或”邏輯表達式為:
3.1 用卡諾圖獲得邏輯函數(shù)的反函數(shù)最簡“與—或”式
原函數(shù)的卡諾圖中的“0”格所對應的最小項即為反函數(shù)所對應的最小項。將它們按照圈“1”格的規(guī)則進行操作,即把相鄰的 2n個“0”格圈為一個卡諾圈,將其中對應的沒有發(fā)生 0、1變化的變量相乘,作為一個“與”項。其中,始終為 1的變量寫為原變量,而始終為 0的變量寫為反變量。照此把所有的卡諾圈完成后,將所得的各個“與”項相加,既得邏輯函數(shù)的反函數(shù)的最簡“與—或”表達式。如我們將圖 1所示的邏輯函數(shù)的“0”格全部標出,并畫出卡諾圈,如圖 3。則反函數(shù)的最簡“與—或”形式為:
3.2 用卡諾圖獲得邏輯函數(shù)的對偶函數(shù)最簡“與—或”式
首先,由原函數(shù)的卡諾圖獲得其反函數(shù)的全部最小項編號 (即原函數(shù)卡諾圖中的 0格所對應編號)。那么對偶函數(shù)中的最小項與反函數(shù)中的最小項一一對應,其關系為:若反函數(shù)中最小項編號為 i,則對偶函數(shù)中有編號為 (2n-1)—i的最小項 [n為函數(shù)變量個數(shù) ][3]。由此獲得對偶函數(shù)的全部最小項,填出對應的卡諾圖,然后進行圈“1”格的操作,即可寫出對偶函數(shù)的最簡“與—或”表達式。如我們
對圖 1所示的邏輯函數(shù)求對偶函數(shù),過程如下:由原函數(shù)的卡諾圖可知反函數(shù)的全部最小項編號為{0,2,4,5,6,7, 8},則可得對偶函數(shù)的全部最小項的編號應該是{15,13,11,10,9,8,7},
畫出對應的卡諾圖如圖 4,進行圈“1”格的操作,得對偶函數(shù)最簡“與—或”式為:
在數(shù)字邏輯設計運算中,最基本的邏輯運算是“與”、“或”、“非”三種運算,通過這三種基本運算邏輯函數(shù)可表示成許多不同的形式,常見的有“與—或”式、“或—與”式、“與非—與非”式、“或非—或非”式、“與—或—非”式等五種形式。利用卡諾圖可以很方便地實現(xiàn)邏輯函數(shù)在這五種形式之間轉換,方法簡單,不易出錯。
邏輯函數(shù)的最簡“與—或”式的獲得方法已在 2.2中細說,這里就不再舉例說明了。
4.1 將邏輯函數(shù)轉換為“或—與”式
將邏輯函數(shù)填入卡諾圖中,然后按照圈“1”格的方法,對卡諾圖中的“0”格畫出卡諾圈,如圖 3。一個圈寫 1個“或”項,將卡諾圈中沒有發(fā)生 0、1變化的變量相加即為“或”項。其中,始終為 1的變量寫為反變量,而始終為 0的變量寫為原變量。然后將各“或”相相乘,既得邏輯函數(shù)的最簡“或—與”式。如我們寫出圖 1所示的邏輯函數(shù)的最簡“或—與”式:
4.2 將邏輯函數(shù)轉換為“或非—或非”式
要獲得邏輯函數(shù)的“或非—或非”式,只需要將所獲得的“或—與”式利用 F=和
進行變換即可。如對 4.1中獲得的“或—”與式進行變換可得“或非—或非”式:
4.3 將邏輯函數(shù)轉換為“與—或—非”式
要獲得邏輯函數(shù)的“與—或—非”式,只要求出其反函數(shù)的最簡“與—或”式,然后對等式兩邊再求一次反即可。我們寫出圖 1所示的邏輯函數(shù)的“與—或—非”式:
在設計實際的數(shù)字系統(tǒng)時,為了減少所用器件的數(shù)目,往往不限于使用單一邏輯功能的門電路,這時希望得到的最簡邏輯式可能既不是單一的“與—或”式,也不是單一的“與—非”式,而是一種混合的形式。因此,究竟將函數(shù)化簡、變換成哪種形式最為有利,還要根據(jù)選用哪些種類的電子器件而定[4]。通過探究,我們更加充分地了解了卡諾圖在處理邏輯函數(shù)方面的應用,為選用器件的種類提供了方便。
[1][4]閆石.數(shù)字電路技術基礎(第四版)[M].北京:高等教育出版社,1998.
[2]華成英.數(shù)字電路技術基礎[M].北京:高等教育出版社,2002.
[3]王毓銀.數(shù)字電路邏輯設計(第三版)[M].北京:高等教育出版社,1999.
TN702
A
1671-6469(2010)03-0096-03
2010-05-21
徐兵 (1956-),女 ,甘肅民勤人,昌吉學院物理系,副教授,研究方向:電工、電子技術理論與實踐的教學與研究。
(責任編輯:代琴)