期末考數位邏輯整理

Download Report

Transcript 期末考數位邏輯整理

期末考數位邏輯整理
組合電路與循序電路
組合電路
組合邏輯電路 是邏輯電路的一種,它是由輸入
變數、輸出變數和許多邏輯閘組合而成,由於
不包含任何記憶元件 與反饋線 ,因此輸出訊號
值只和目前的輸入訊號值有關。
循序電路
 循序電路使用閂鎖器 或正反器 來暫存資料或
狀態,它的輸出結果除了和目前的輸入值有關
之外,也與先前的輸入值、輸出值都有關係。
BCD碼轉換為2421碼
1. BCD碼這邊寫上a,b,c,d
2. 2421碼那邊寫上w,x,y,z
3. 畫出真值表(w,x,y,z分別代
表2,4,2,1 ; 如 0101 = 5 , wxyz 就
是 1(2)0(0)1(2)1(1) 由左得知 ()
內2+0+2+1=5 , 9以下就是 X)
X = 可忽略 , 也可拿來帶入
BCD碼轉換為2421碼
4. 畫出卡諾圖
然後看真值表由
上而下分成
w,x,y,z ; 剩下後
的 X 全部補上
BCD碼轉換為2421碼
bd+bc+a
bd`+bc+a
b`c+bc`d+a
d
5. 卡諾圖化簡
X 這時候就可以
拿來補上化簡
BCD碼轉換為2421碼
6. 畫出邏輯電路
BCD碼轉換為2421碼
7. 利用自補定理
轉nand電路
BCD碼轉換為2421碼
 nand電路
組合電路 – 加法器
 加法器分為 RCA 與 CLA 兩種
 RCA – 面積小 , 速度慢
 CLA – 成本高 , 速度快
組合電路 – 加法與減法運算







相加後有四種可能:
0 + 0 = 0、0 + 1 = 1、1 + 0 = 1、1 + 1 = 10
其中 1 為進位 , 或稱進位輸出
其中 0為總和
相減後有四種可能:
0 − 0 = 0、0 − 1 = 11、1 − 0 = 1、1 − 1 = 0
其中 1為借位,或稱借位輸出
組合電路 – 半加法器
 積之和布林代數表示式:
 S = A`B + AB` = A ⊕ B
 C = AB
組合電路 – 半加法器
組合電路 – 全加法器
 半加法器輸入的加數與被加數都是一位元,於是需
要多位元時,則需要全加法器
 0 + 0 + 0 = 0、0 + 0 + 1 = 1、0 + 1 +0 = 1、0 + 1 + 1 = 10
、1 + 0 + 0 = 1、1 + 0 + 1 = 10、1 + 1 + 0 = 10、1 +1 + 1 =
11(1+1=10 ; 10+1=11)
 全加法器分為
1. RCA – 漣波進位加法器 – 面積小 – 速度慢
2. CLA – 進位前看加法器 – 成本高 – 速度快
組合電路 – 全加法器
 Cout=ab+bc+ab
 S=ab`c`+a`b`c+abc+a`bc`
ab+bc+ab
ab`c`+a`b`c+abc+a`bc`
組合電路 – 全加法器
 卡諾圖化簡後就可得到以下兩個電路圖,當然這也
能利用自補定理換成 nand(參考第九頁)
組合電路 – 全加法器
 所以可以推導出xor全加法器
 S=ab`c`+a`b`c+abc+a`bc`
=c`(ab`+a`b)+c(a`b`+ab)
=c`(a ⊕b)+c(a ⊕b)`
=c ⊕(a ⊕b) .. 別問我 , 這裡我也不會
 Cout = AB′Cin + A′BCin + ABCin + ABCin′
 = Cin(AB′ + A′B) + AB(Cin + Cin′)
= Cin(A ⊕ B) + AB .. 別問我 , 這裡我也不會
反正這裡的重點只是要你搞成 ⊕的形式,不會就用背的吧。
組合電路 – 全加法器
 要搞出一個全加法器,也可以用兩個半加法器加上
一個or閘,也能搞的出來~
漣波進位加法器 - RCA
 漣波進位加法器速度慢,那是因為每次都要等一級
算好才能算下一級,而以下圖片是四位元,若是八
位元漣波進位加法器,那就要搞八級次才能出來
延遲時間長,需要等
待前一級算好,是串
連的方式(考選擇)
進位前看加法器 - CLA
 優點 – 速度快
 缺點 – 成本高
 進位前看加法器的主要目的是讓「進位傳遞延遲時
間儘量不隨著加法器位元數目的增多而增加」
 Ci + 1 決定速度快慢
進位前看加法器 - CLA
 至於CLA為什麼成本高? 看下面就知道嘛~ 太複雜了!
組合電路 – 半減法器




最簡積項的和布林代數式:
D = A`B + AB` = A ⊕ B
M = A`B
0-0=0 , 0-1=11 , 1-0=1 , 1-1=0
借位
組合
組合電路 – 全減法器
 全減法器比半減法器多了一個N
 0-0-0=0 , 0-0-1=11 , 0-1-0=11 , 0-1-1=10 , 1-0-0=1 , 1-0-1=0
 1-1-0=0 , 1-1-1=11 (1-1=0 , 0-1=11)
A`N+ABN+A`N
AB`N`+A`B`N+ABN+ABN
`
組合電路 – 全減法器
 於是全減法器就變成了這付德行
組合電路 – 全減法器









然後老師說推一推就把電路圖出來了..好簡單!
D = AB`N` + A`B`N + ABN + A`BN`
= (AB` + A`B)N` + (A`B` + AB)N
= (A ⊕ B)N` + (A ⊕ B)`N
= (A ⊕ B) ⊕ N
=A⊕B⊕N
M = A`B+ BN + A`N`
= A`(B`N + BN`) + (A` + A)BN
= A`(B ⊕ N) + BN
組合電路 – 比較器






gt = 大於 ; lt = 小於 ; eq = 等於
所以套用 C++ 語法的話
If A>B ; gt=1 ; else gt=0
If A<B ; lt=1 ; else lt=0
If A=B ; eq=1 ; else eq=0
比較器不用畫真值表,會死人
組合電路 – 比較器
 從高比到低
 <相等> ,同時為1 ,同時為0就相等,若有一個不等於,結
果不成立
 <大於> 其中有一大於 ,其餘相等,則大於,反之不成立
 <小於> 其中有一小於 , 其餘相等,則小於,反之不成立
 X=eq <等於是其他兩著的基本>
 <相等>,Xi = AiBi + Ai`Bi` i = 0, 1, 2, 3
 <大於>,gt = A3B3` + X3A2B2` + X3X2A1B1` + X3X2X1A0B0`
 <小於>,lt = A3`B3 + X3A2`B2 + X3X2A1`B1 + X3X2X1A0`B0
組合電路 – 比較器