基本邏輯運算
Logic Gates
Not Gates
- Symbol

- Truth Table
X01XorX’10
And Gates
- Symbol

- Truth Table
X0011Y0101Z=X⋅Y0001
Or Gates
- Symbol

- Truth Table
X0011Y0101Z=X+Y0111
布林表達式與真值表(Boolean Expression and Truth Table)
- Boolean expression
- 用
' 代表 NOT
- 用
+ 代表 OR
- 用
. 代表 AND
- 將輸入用上面的運算子表示成算式,如:(A+C)(B′+C)
- Truth Table
A00001111B00110011C01010101B′11001100AB′00001100AB′+C01011101A+C01011111B′+C11011101(A+C)(B′+C)01011101
基本運算定理
NOT gate 的基本運算定理
(x′)′=x
AND gate 的基本運算定理
x+0x+1x+xx+x′====x1x1
OR gate 的基本運算定理
x⋅0x⋅1x⋅xx⋅x′====0xx0
進階運算定理
交換律 Commutative Law
xyx+y==yxy+x
結合律 Associative Law
(xy)z(x+y)+z==x(yz)x+(y+z)
分配律 Distributive Law
x(y+z)x+yz==xy+xz(x+y)(x+z)
Multiplying out and factoring
- 將算式化整成各個輸入端先 AND 後再 OR
- 例: ABC+AB′C+AB′C′
- 將算式化整成各個輸入端先 OR 後再 AND
- 例: (A+B+C)(A+B′+C)(A+B′+C′)
Multiplying out:
- 將算式化簡成 SOP form
- 善用(A+B)(A+C)=A+BC
- 範例:
(A+BC)(A+D+E)
=(A+x)(A+y)
=A+xy
=A+BC(D+E)
=A+BCD+BCE
Factoring:
- 將算式化簡成 POS form
- 善用A+BC=(A+B)(A+C)
- 範例:
AB′+C′D
=(AB′+C′)(AB′+D)
=(A+C′)(B′+C′)(A+D)(B′+D))
2-level realization
- 利用 Multiplying out 與 Factoring 可以將電路簡化成 2-level circuit
- 因為減少了 Delay propagation 可以減少 Total Time Delay
DeMorgan’s Laws and Duality
DeMorgan’s Laws
- 方法:
- AND↔OR
- A↔A′
(x+y+z+...)′(xyz...)′==x′y′z′...x′+y′+z′...
- Truth Table 證明
x00001111y00110011z01010101x′11110000y′11001100z′10101010x+y+z01111111(x+y+z)′10000000x′y′z′10000000
- 範例
[(A′B+C′)(D′+EF′)+GH+W]′
=[(A+B′)C+D(E′+F)](G′+H′)W′
Duality
-
方法
- AND↔OR
- 0↔1
[f(=f(x1,x1,x2,x2,...,...,xn,xn,0,1,1,0,+,⋅,⋅+)]D)
-
性質
- F=G→FD=GD
-
範例
(x+y′)y=xy→x⋅y′+y=x+y
-
回顧分配律 Distributive Law,即為 Duality 的表現。
x(y+z)x+yz==xy+xz(x+y)(x+z)
Exclusive-OR and equivalence operations
Exlusive-OR(XOR,⊕)
- Symbol

- Truth Table
X0011Y0101Z=X⊕Y0110
- 性質:
x⊕0x⊕1x⊕xx⊕x′x⊕y(x⊕y)⊕zx(y⊕z)x⊕y========xx′01y⊕xx⊕(y⊕z)xy⊕xzxy+x′y′
Equivalence(≡)
- Symbol

- Truth Table
X0011Y0101Z=X≡Y1001
- 性質:
x≡0x≡1x≡xx≡x′x≡y(x≡y)≡zx(y≡z)x≡y========x′x10y≡xx≡(y≡z)xy≡xzxy′+x′y
連鎖律 The consensus thorem
- 公式:
- xy+x′z+yz=xy+x′z
- (x+y)(x′+z)(y+z)=(x+y)(x′+z)
- 證明:
xy+x′z+yz
=xy+x′z+(x+x′)yz
=xy+xyz+x′z+x′yz
=xy(1+z)+x′z(1+y)
=xy+x′z
簡化布林表達式的流程
- 利用 xy+xy′=x(y+y′)=x(AND性質)
- 利用 x+xy+...=x(1+y+...)=x(OR性質)
- 利用 xy+x′z+yz=xy+x′z(連鎖律)
- 利用 x+x′y=x(y+y′)+x′y=xy+xy′+x′y=x+y
- 必要時加入 redundant terms
如何證明布林表達式的正確性?
- 建構 Truth Table
- 簡化 LHS 和 RHS