1. 程式人生 > >1.5節 卡諾圖以及布林代數(SOP,POS) part2

1.5節 卡諾圖以及布林代數(SOP,POS) part2

我們回來,有認真的去看上面列出的公理(Axiom)和單變數定理麼?

(對於其證明,有興趣的人可以看一下,沒興趣的可以跳過。這裡我就證明(b)裡面的T4:由於A1和其雙對可知,我們是在處理二進位制問題。所以根據A2我們進行兩次A2操作,也就相當於第一次進行了A1操作,第二次進行A1'的操作,結果是原數的本身。所以得證//)

那麼讓我們繼續多變數的(多輸入,2個或2個以上)的處理方法。

(c)205643474.png

注意處理多變數,只要想加減多項式的運演算法則就好了。(就是小學多項式計算)

T6(和T6’一樣):加法(OR)交換律了

T7(和T7’一樣):加法(OR)結合律

T8:分配律

///////////////////以下是二進位制運算特有的/////////////////

T8':比較特殊,是OR分配於AND,而一般代數運算沒有把加法分配於乘法的,只有乘法分配率。可以這樣看:

T9:覆蓋律

T10:組合律

T11:共識律

T12:就是摩爾根定律咯!

想證明這些定理麼?必須的,這就是大家的任務咯。把每一條驗證一下。不會證明?二進位制只有1和0,列真值表也就是窮舉法證明即可。不要偷懶哦。有能力的人,可以自己用(b)和(c)裡的某些定理出發推到你想要的定理。

比如:為了證明T9':用T8':B+(B*C)=(B+B)*(B+C)= B*(B+C)= B,因為B OR C,結果可以取B和C,如果取B則得到結果。//

話說Morgan定律幾乎是萬能的可以匯出上面所有的定理(當然和其他的加以組合)!

這裡我給出共識律的證明方法:

213151597.png。看錶自然明瞭了吧。

有人說了,這麼多,記不住怎麼辦?重點在這:只有一個方法,,也是能讓你成為大師的開端:就是不厭其煩的去動手用(下面講怎麼用),配上下面即將講的卡諾圖!如果能做到卡諾圖和上述定理靈活運用,你已經離大師進了一步了。

(不要靠Verilog,HDL神馬的自動工具,這也是因為為什麼大多數人走向碼農的原因。太自動了,自己大腦懶得動,以後我們設計VLSI的時候,當然要用那些工具,但是整合上百萬CMOS的時候,機器沒有那麼聰明,因為它體會不到設計的藝術和直覺。相信我,Intel和AMD神馬的高階工程師都是在幾千CMOS組合中很快能找出優化策略的人,因為他們見的多了,也就在腦中形成模組了。所以當自己有能力做到這一點的時候,才能算得上大師級。)

那麼下面我們來講應用吧~上面這些理論,目標只有一個,用更少的CMOS做更多的事!

例如:化簡Y=~A~B~C+A~B~C+A~BC

第一種化簡方法:(Justification列出了應用了哪條定理)

223527994.png

第二種化簡方法:(Justification列出了應用了哪條定理)

223732374.png

注意這裡應用B=B+B+B+...的定理也就是T3等冪定理的雙對定理。

到這裡,大家又要動筆了 任務就是 1:自己證明(c)裡定理的正確性,不要懶哦

2.把最後一個例子用邏輯圖實現一下(兩種化簡方法都要做)