劉玲
摘要:卡諾圖是一種體現(xiàn)邏輯相鄰關(guān)系的幾何圖形,多用于邏輯函數(shù)的表示和化簡。通過實例,展示了卡諾圖在求解邏輯函數(shù)的反函數(shù)、判斷競爭冒險現(xiàn)象以及組合邏輯電路和時序邏輯電路設(shè)計中的應用。靈活運用卡諾圖,將大大簡化數(shù)字電路的分析和設(shè)計過程,起到事半功倍的效果。
關(guān)鍵詞:卡諾圖 數(shù)字電路 邏輯函數(shù) 應用
中圖分類號:TN79 文獻標識碼:A 文章編號:1007-9416(2016)05-0000-00
Abstract:Karnaugh map is a kind of geometric figure that reflects the relation between the adjacent, which is used in the representation and simplification of logic function. Though a number of examples, it shows the application of karnaugh map such as solving the inverse function of logic function, judging the phenomenon of competitive adventure and the design of combinational logic circuit and sequential logic circuit . It can greatly simplify the process of analysis and design of digital circuit by flexibly applying karnaugh map, which can have a great effect.
keywords:karnaugh map; digital circuit; logic function; application
1 引言
卡諾圖是由2n個方格組成的、并能體現(xiàn)最小項邏輯相鄰關(guān)系的幾何圖形。從卡諾圖上能直觀地找出具有相鄰關(guān)系的最小項并將其合并化簡,這種方法無需特殊的技巧和熟記公式,只要按照正確的步驟和一定的化簡原則就能容易地得到最簡結(jié)果,因此卡諾圖在邏輯函數(shù)化簡中得以廣泛的應用。
事實上,卡諾圖除了可以化簡邏輯函數(shù),還有很多其他的用途,只要靈活運用,即可大大化簡數(shù)字電路的分析和設(shè)計過程。本文通過實例,闡述了卡諾圖在邏輯函數(shù)化簡之外的幾點巧妙應用。
2 卡諾圖在數(shù)字電路中的巧妙應用
2.1利用卡諾圖求邏輯函數(shù)的反函數(shù)
利用反演規(guī)則可以比較容易地求出邏輯函數(shù)的反函數(shù),但得到的表達式并一定最簡。如果利用卡諾圖,對邏輯函數(shù)表達式中沒有出現(xiàn)的最小項之和進行化簡,即采用包圍0的方法,得到的表達式即為邏輯函數(shù)反函數(shù)的最簡與或式。
例1:求邏輯函數(shù)的反函數(shù)。
解:畫出邏輯函數(shù)的卡諾圖(如圖1),在卡諾圖中對0加包圍圈,可求出反函數(shù)的最簡與或式,即得。
2.2利用卡諾圖分析組合邏輯電路中的競爭冒險
在組合邏輯電路中,門電路的兩個不同電平輸入信號同時向相反方向轉(zhuǎn)換的現(xiàn)象稱為競爭,由競爭而可能產(chǎn)生輸出干擾脈沖的現(xiàn)象稱為冒險。為保證電路正常工作,設(shè)計時需注意判斷和消除競爭冒險現(xiàn)象。判斷和消除競爭冒險的方法有代數(shù)法、實驗室法,其中利用卡諾圖判斷有無競爭冒險,并用增加冗余項消去互補變量的方法,直觀、簡便。
卡諾圖法的步驟是:先畫出邏輯函數(shù)的卡諾圖,然后在卡諾圖上畫出與表達式中的乘積項相對應的包圍圈,如果圈與圈之間出現(xiàn)相切,且相切處沒有被其他圈包圍,即可判斷出現(xiàn)競爭冒險現(xiàn)象。
例2:判斷邏輯函數(shù)是否有可能產(chǎn)生競爭冒險,如果可能應如何消除。
解:由邏輯函數(shù)畫出卡諾圖(圖2),并按、畫出包圍圈(圖2上用實線表示),從圖上可看出兩個圈相切,且相切處沒有被其他圈包圍,表明產(chǎn)生了競爭冒險,此時,若對相切部分的相鄰項加包圍圈(圖2上用虛線表示),即增加冗余項,從而實現(xiàn)競爭冒險現(xiàn)象的消除。此時邏輯函數(shù)的表達式變?yōu)椤?/p>
2.3利用卡諾圖實現(xiàn)“用具有n 個地址輸入端的數(shù)據(jù)選擇器設(shè)計m變量(n 用具有n 個地址輸入端的數(shù)據(jù)選擇器設(shè)計m變量(n 卡諾圖法步驟是:先畫出邏輯函數(shù)的卡諾圖,然后選定地址變量,并以地址變量的變化組合在卡諾圖上畫包圍圈,再根據(jù)包圍圈中出現(xiàn)1的方格寫出除地址變量外的變量形式,該變量形式即為數(shù)據(jù)數(shù)據(jù)端的輸入量Di。 例3:用8選1數(shù)據(jù)選擇器CC4512實現(xiàn)邏輯函數(shù)。 解:畫出邏輯函數(shù)的卡諾圖(圖3),選地址A2A1A0變量為ABC,即把ABC接在器件的地址輸入端A2A1A0。然后在卡諾圖上以ABC的八種取值組合畫包圍圈(用虛線圈表示),由每個包圍圈中出現(xiàn)1的方格,可得數(shù)據(jù)輸入端分別為:,,,按此結(jié)果可畫出相應的邏輯電路圖(圖4)。 2.4利用卡諾圖實現(xiàn)“用JK觸發(fā)器設(shè)計時序邏輯電路” 時序邏輯電路設(shè)計步驟一般是先根據(jù)邏輯功能確定欲實現(xiàn)電路的狀態(tài)表,再選定觸發(fā)器類型,然后求取輸出方程和觸發(fā)器的激勵方程,最后進行自啟動檢查,畫出邏輯圖。若選擇JK觸發(fā)器,電路的激勵方程需要間接導出。借助卡諾圖可快速容易地求出JK觸發(fā)器的激勵方程。 例4:已知某時序電路的狀態(tài)表如表1所示,用JK觸發(fā)器實現(xiàn)該電路。 傳統(tǒng)方法:結(jié)合時序電路的狀態(tài)表(表1)和JK觸發(fā)器激勵表(表2)可得表3,據(jù)此畫出兩個JK觸發(fā)器的輸入J、K和電路輸出Y共計5個卡諾圖。然后遵循卡諾圖化簡原則即可找到觸發(fā)器的激勵方程和輸出方程。這種方法要求能準確寫出JK觸發(fā)器激勵表,而且卡諾圖使用個數(shù)較多。 巧妙方法:直接根據(jù)表1畫出次態(tài)卡諾圖(圖5),在卡諾圖上按變量Q1取值為1、為0把卡諾圖分成兩部分(用虛線劃分),并在每個部分對出現(xiàn)1的格子畫包圍圈,根據(jù)每個包圍圈寫出與項式并相加得到次態(tài)表達式,與JK觸發(fā)器的激勵方程對比,則很容易地得到觸發(fā)器1的激勵方程,同樣的方法可得到觸發(fā)器0的激勵方程。 3 結(jié)語 綜上所述,卡諾圖在數(shù)字電路中應用廣泛,不僅可以化簡邏輯函數(shù),還可以在求邏輯函數(shù)的反函數(shù)、組合電路中競爭冒險判定、組合邏輯電路設(shè)計、時序邏輯電路設(shè)計等方面體現(xiàn)其優(yōu)越性。靈活巧妙地運用卡諾圖,對提高數(shù)字電路課程的教學效果和簡化數(shù)字電路的分析設(shè)計過程,都起到了事半功倍的效果。 參考文獻 [1]康華光 主編.電子技術(shù)基礎(chǔ)數(shù)字部分(第五版)[M].高等教育出版社,2006. [2]江曉安 主編.數(shù)字電子技術(shù)(第四版)[M].西安電子科技大學出版社,2015.