320 likes | 722 Views
數位邏輯 Digital Logic. 陳以德 助理教授 : 濟世 CS912 07-3121101 轉 2782 itchen@kmu.edu.tw. 學習目標. 布林運算與邏輯閘 布林代數化簡 半加器與全加器 積之和 v.s. 和之積 卡諾圖化簡 多工器與解多工器 編碼器與解碼器 Summery. 布林代數. 用來處理只有二個值的數學系統 true ; false on ; off 1 ; 0 基本布林運算 : AND 、 OR 、 NOT 其他邏輯閘 - NAND 、 NOR 、 XOR 、 XNOR.
E N D
數位邏輯Digital Logic 陳以德 助理教授: 濟世CS912 07-3121101轉 2782 itchen@kmu.edu.tw
學習目標 • 布林運算與邏輯閘 • 布林代數化簡 • 半加器與全加器 • 積之和 v.s.和之積 • 卡諾圖化簡 • 多工器與解多工器 • 編碼器與解碼器 • Summery
布林代數 用來處理只有二個值的數學系統 • true ; false • on ; off • 1 ; 0 • 基本布林運算: AND、OR、NOT • 其他邏輯閘-NAND、NOR、XOR、XNOR
基本布林運算 • 真值表
基本數位電路(MOS電晶體) NMOS: G=1 S,D 導通 G=0 S,D 不通 PMOS: G=1 S,D 不通 G=0 S,D 導通 蔡哲民老師提供
基本數位電路(NOT 閘) A=1 A=0 NOT Gate: A=1 C=0 A=0 C=1 蔡哲民老師提供
基本數位電路(NOR 閘) NOR閘: A B C 0 0 1 0 1 0 1 0 0 1 1 0 蔡哲民老師提供
基本數位電路(NAND 閘) NAND閘: A B C 0 0 1 0 1 1 1 0 1 1 1 0 蔡哲民老師提供
AB+AB 基本數位電路(XOR 閘) XOR閘: A B C 0 0 0 0 1 1 1 0 1 1 1 0 蔡哲民老師提供
多輸入邏輯閘 • Logisim 邏輯自由軟體
X⊕Y=XY+XY 基本布林運算 • NAND、NOR、XOR、XNOR
組合電路 • 寫出下列電路數算式
組合電路 – 半加器 111111 10101101 + 11011 A B 11001000 一位元的全加器 大約需要30個電 晶體
Sum Sum Sum Sum Cout Cout Cout Cout Cin Cin Cin Cin 一位元全加器 一位元全加器 一位元全加器 一位元全加器 B B B B A A A A 四位元加法器 1 byte (位元組) = 8 bit (位元) Word (字元) = ? bit 蔡哲民老師提供
布林代數化簡 • XY=YX • (XY)Z=X(YZ) • X+YZ=(X+Y)(X+Z) • X+Y = Y+X • (X+Y)+Z = X+(Y+Z) • X(Y+Z) = XY+XZ • X(X+Y)=X • X+XY=X • (XY)=X+Y • (X+Y)=X Y • 0X = 0 • 1X = X • XX = X • XX = 0 • 0+X = X • 1+X = 1 • X+X = X • X+X = 0 DeMorgan’s Law
練習 試化簡F(X,Y,Z) = (X+Y)(X+Y)(XZ)
積之和 v.s.和之積 • 積之和 (sum-of-products)相互AND變數, 用 OR串起來 • F(X,Y,Z)=XY+XZ+YZ • 和之積 (product-of-sums)相互OR變數, 用 AND串起來 • F(X,Y,Z)=(X+Y)(X+Z)(Y+Z)
SOP (Sum-of-Products) • F(X,Y,Z)=XY+Z = X Y Z+X Y Z+X Y Z+ X Y Z+ X Y Z X Y Z X Y Z X Y Z X Y Z X Y Z X Y Z X Y Z X Y Z
卡諾圖化簡 也有人用'表示 Y=AB'C+A'B'C+BC =C B A C
卡諾圖化簡練習 • Y = A'B' + AB'C'D'+ ABC'D' D B A C
D0 多工器 D1 Y D2 D3 S1 S0 多工器Multiplexer
解多工器Demultiplexer Data Data 解多工器 Data . . . Data … Sn S0 1對4解多工器
七段顯示器 試設計解碼器 zh.wikipedia.org
基本數位電路(多工器) C0-C3同時只能有一 個為1 C0=1時out = A, 只要控制C0-C3哪一 個為1,就能控制到底 哪一個輸入會送到Out 去 A0 A1 A2 A3 0 Shift 移位器 蔡哲民老師提供 B0 B1 B2 B3
算術邏輯單元(ALU) 依賴控制信號控制 多工器與移位器的 輸出、藉以完成加 減乘除與邏輯運算 127 x 101 (十進位) (二進位) 一連串的控制 信號就組成 「程式」 127 0000 12700 12827
時脈與算數邏輯單元 在每一個同步信號週期中,電路作一個運算。
由基本電路到簡單的電腦 資料 0110.....1 1011.....0 1010.....1 控制 信號 ALU 結果 解決問題需要一連串 的控制信號 例如:計算梯形面積: (上底+下底)x高/2 把程式和資料都放在 記憶體中循序取出執行
SUMMARY • 布林運算與邏輯閘 • 布林代數化簡 • 半加器與全加器 • 積之和 v.s.和之積 • 卡諾圖化簡 • 多工器與解多工器 • 編碼器與解碼器