環球熱文:FPGA:邏輯函數的卡諾圖化簡法

2023-01-14 11:31:31 來源:51CTO博客

最小項與最小項表達式

最小項的定義

n 個變量 的最小項是 n 個因子的乘積,每個變量 都以它的原變量或非變量的形式在乘積項中出現,且僅出 現一次。一般 n 個變量的最小項應有 個。

例如, A , B 、 C 三個邏輯變量的最小項有 個, 即 。 等則不是最小項。


(資料圖片僅供參考)

最小項的性質

三個變量的所有最小項的真值表

對于任意一個最小項,只有一組變量取值使得它的值為1;

對于變量的任一組取值,任意兩個最小項的乘積為0;

對于變量的任一組取值,全體最小項之和為1。

邏輯函數的最小項表達式

邏輯函數的最小項表達式:

為“與-或”邏輯表達式;

在“與-或”式中的每個乘積項都是最小項。

示例:

將 化成最小項表達式。

示例:

將 化成最小項表達式。a.去掉非號 b.去括號

代數法化簡在使用中遇到的困難:

1.邏輯代數與普通代數的公式易混淆,化簡過程要求對所有公式熟練掌握;

2.代數法化簡無一套完善的方法可循,它依賴于人的經驗和靈活性;

3.用這種化簡方法技巧強,較難掌握。特別是對代數化簡后得到的邏輯表達式是否是最簡式判斷有一定困難。

卡諾圖化簡法

卡諾圖法可以比較簡便地得到最簡的邏輯表達式,但是其邏輯變量的個數受限。

用卡諾圖表示邏輯函數

卡諾圖的引出

卡諾圖:將n變量的全部最小項都用小方塊表示,并使具有邏輯相鄰的最小項在幾何位置上也相鄰地排列起來,這樣,所得到的圖形叫n變量的卡諾圖。

邏輯相鄰的最小項:如果兩個最小項只有一個變量互為反變量,那么,就稱這兩個最小項在邏輯上相鄰。

如最小項 與 在邏輯上相鄰。

兩變量卡諾圖

三變量卡諾圖

四變量卡諾圖

卡諾圖的特點:各小方格對應于各變量不同的組合,而且上下左右在幾何上相鄰的方格內只有一個因子有差別,這個重要特點成為卡諾圖化簡邏輯函數的主要依據。

已知邏輯函數真值表,畫卡諾圖

邏輯函數真值表

邏輯函數的卡諾圖

已知邏輯函數畫卡諾圖

當邏輯函數為最小項表達式時,在卡諾圖中找出和表達式中最小項對應的小方格填上1,其余的小方格填上0(有時也可用空格表示),就可以得到相應的卡諾圖。任何邏輯函數都等于其卡諾圖中為1的方格所對應的最小項之和。

示例:

畫出下列邏輯函數的卡諾圖。

示例:

畫出下式的卡諾圖

解:

1.將邏輯函數化為最小項表達式

2.填寫卡諾圖

相應的小方格內填寫0(反邏輯),其余填寫1.

示例:

已知 L = ABCD + B,畫出卡諾圖。

解:

容易發現利用吸收律 L = B , 即B 等于1的方格填1,其他方格填0。

用卡諾圖化簡邏輯函數

化簡的依據

$ \bar{A} \bar{B} \bar{C} D+\bar{A} \bar{B} C D=\bar{A} \bar{B} D $$ \bar{A} B \bar{C} D+\bar{A} B C D=\bar{A} B D $$ \bar{A} \bar{B} D+\bar{A} B D=\bar{A} D $$ A \bar{B} D+A B D=A D $$ \bar{A} D+A D=D $

化簡的步驟

用卡諾圖化簡邏輯函數的步驟如下:

(1)將邏輯函數寫成最小項表達式;

(2)按最小項表達式填卡諾圖,凡式中包含了的最小項,其對應方格填1,其余方格填0;

(3)合并最小項,即將相鄰的1方格圈成一組(包圍圈),每一組含個方格,對應每個包圍圈寫成一個新的乘積項;

(4)將所有包圍圈對應的乘積項相加。

畫包圍圈時應遵循的原則:

(1)包圍圈內的方格數一定是個,且包圍圈必須呈矩形;

(2)循環相鄰特性包括上下底相鄰,左右邊相鄰和四角相鄰;

(3)同一方格可以被不同的包圍圈重復包圍多次,但新增的包圍圈中一定要有原有包圍圈未曾包圍的方格;

(4)一個包圍圈的方格數要盡可能多,包圍圈的數目要可能少。

示例:

用卡諾圖法化簡下列邏輯函數

解:

(1) 由L 畫出卡諾圖。

(2) 畫包圍圈合并最小項,得最簡與-或表達式

用卡諾圖化簡含無關項的邏輯函數

什么叫無關項

在真值表內對應于變量的某些取值下,函數的值可以是任意的,或者這些變量的取值根本不會出現,這些變量取值所對應的最小項稱為無關項或任意項。

在含有無關項邏輯函數的卡諾圖化簡中,它的值可以取0或取1,具體取什么值,可以根據使函數盡量得到簡化而定。

示例:

要求設計一個邏輯電路,能夠判斷1位十進制數是奇數還是偶數,當十進制數為奇數時,電路輸出為1,當十進制數為偶數時,電路輸出為0。

解:

(1)列出真值表

(2)畫出卡諾圖

(3) 卡諾圖化簡 L = D

參考文獻:

Verilog HDL與FPGA數字系統設計,羅杰,機械工業出版社,2015年04月Verilog HDL與CPLD/FPGA項目開發教程(第2版), 聶章龍, 機械工業出版社, 2015年12月Verilog HDL數字設計與綜合(第2版), Samir Palnitkar著,夏宇聞等譯, 電子工業出版社, 2015年08月Verilog HDL入門(第3版), J. BHASKER 著 夏宇聞甘偉 譯, 北京航空航天大學出版社, 2019年03月

標簽: 邏輯函數

上一篇:【世界熱聞】復盤逝去的年華,展望全新的未來
下一篇:今日聚焦!【Redis實戰專題】「性能監控系列」全方位探索Redis的性能監控以及優化指南