數位邏輯設計與實習
ch04 組合邏輯電路設計
電子一A 4990K076 李峻揚 組合電路筆記
心得:P73
2
組合邏輯電路定義
任何時刻的
輸出與當時
的輸入有關
組合邏輯電路設計步驟
由電路的規格,決定所需的輸入與輸出的個 數,並且對每一個輸入與輸出安排一個變數 符號。
導出真值表並定義輸入與輸出間所需的關 係。
對每一個輸出求出以輸入變數為函數之簡化 的布林函數。4
組合電路種類
算術電路(加法器、減法器、乘法器)
解碼器
編碼器
多工器
解多工器
比較器
數碼轉換器
同位元產生器/檢查器常見
加法器/減法器
1bit 加法器
1bit 減法器
4bit 並加器(漣波加法器)
4bit 加減器
4bit 加減器有旗號指示
1位數BCD加法器6
1bit加法器定義
半加器 :一位元與一位元相加, 不考慮進位
全加器 :一位元與一位元相加, 考慮前一級 進位半加器設計
Si=Σ(1,2)=Ai♁Bi Ci+i=Σ(3)=Ai*Bi
0 1
1 1
1 0
0 1
1 0
1 0
0 0
0 0
S i
C
i+1B i A i
真值表
和
進 位
8
全加器設計
全加器真值表
0 1
1 0
1
1 0
0 0
1
0 1
1 1
0
1 0
0 1
0
1 0
1 0
0
0 0
0 0
0
S C i+1
C i B
A
10
全加器布林式
Si
=Σ(1,2,4,7)=Ai
♁Bi
♁Ci
C
i+1
=Σ(3,5,6,7)=Ai
Bi
+Ai
Ci
+Bi
Ci
=Ai
Bi
+Ci
(Ai
♁Bi
)用半加器設計全加器
12
1bit 減法器
半減器 :一位元與一位元相減,不考慮借位
全減器 :一位元與一位元相減, 考慮前一級 借位半減器設計
Di
=Σ(1,2)=Ai
♁Bi
Bi+1
=Σ(1)= A'B14
全減器設計
Di
=Σ(1,2,4,7)=Xi
♁ Yi
♁ Bi
B
i+1
=Σ(1,2,3,7)=Xi
Yi
+Xi
Bi
+Yi
Bi
真值表4bit 並加器(漣波加法器)
16
4bit 加減法器分析
4 bit減法器
方法一:
方法二:用加法代替減法
4bit 加減器
18
4bit 加減器有旗號指示
ZF(Zero Flag)
CF(Carry Flag)
SF(Sign Flag)
OF(Over Flag)4bit 加減器有旗號指示電路圖
FA FA FA FA
A A A A
OF ZF SF CF
A
S3 S2 S1 S0
C1 C2
C3 C4
A3B3 A2B2 A1B1 A0B0
C0
S:1 減
S:0 加
20
1位數BCD加法器分析
1位數BCD加法器
22
漣波加法器缺點
進位傳遞延遲進位前看加法器(Carry Look-ahead Adder,CLA)
己知:A3
A2
A1
A0
,B3
B2
B1
B0
,C0
未知: C4
,C3
,C2
,C1
Si
=(Ai
♁ Bi
) ♁ Ci
Ci+1
=Ai
Bi
+ Ci
(Ai
♁Bi
)
令Gi
=Ai
Bi
(進位產生)
Pi
=Ai
♁ Bi
(進位傳遞)24
進位前看加法器
C
i+1
=Gi
+Ci
Pi
i=0 C
1
=G0
+Co
Po
i=1 C2
=G1
+C1
P1
=G
1
+G0
P1
+Co
Po
P1
i=2 C3
=G2
+C2
P2
=G
2
+G1
P2
+G0
P1
P2
+Co
Po
P1
P2
i=3 C4
=G3
+C3
P3
=
G 3 +G 2 P 3 +G 1 P 2 P 3 +G 0 P 1 P 2 P 3 +C o P o P 1 P 2 P 3
進位前看產生電路圖
26
進位前看加法器
漣波
乘法器
1bit 乘法器
2bit 乘法器(用HA,FA)28
1bit 乘法器
真值表
2bit 乘法器真值表
30
2bit 乘法器
1 2 4 5
6 U2A 7421
9 10 11
8 U3C
7411
1 2 13
12 U4A
7411
3 4 5
6 U4B
7411
9 10 11
8 U4C
7411 1 2 13
12 U3A
7411
3 4 5
6 U3B
7411
5 6
U1C
7404
8 9
U1D
7404
12 13
U1F
7404
10 11
U1E
7404
1 2
U1A
7404
3 4
U1B
7404
4 5
6 U6B
7432
8 9
10 U6C 7432
11 12
13 U6D 7432 1
2
3 U6A7432
1 2
3 U5A
7408
A1 A0 B1 B0
P3
P1 P2
P0
2bit 乘法器(用HA,FA分析)
32
2bit 乘法器(用HA,FA)
1BIT乘法器
3bit 乘法器(用HA,FA)
34
解碼器方塊圖
解碼器
輸入 輸出
有致能解碼器方塊圖
有些解碼器電路沒有致 能控制線;有些電路為 高電位啟動。
Y
0Y
1解碼器 輸
入 端
輸出端
致能控制線
Y
m-1Y
m-2⎫
⎬⎪
⎭⎪
n m
×E x
0x
1x
n-1x
n-2⎧
⎨
⎪ ⎪
⎩
⎪ ⎪
(a) 非反相輸出
Y
0Y
1解碼器 輸
入 端
輸 出 端
致能控制線
Y
m-1Y
m-2⎫
⎬⎪
⎭⎪
n m
×E x
0x
1x
n-1x
n-2⎧
⎨
⎪ ⎪
⎩
⎪ ⎪
(b) 反相輸出
36
2對4解碼器(高態輸出)
方塊圖
有致能端2對4解碼器(高態輸出)
(a) 方塊圖
0 x1 x0
0 1 0 1 0
Y0 Y1 Y2 Y3 E
1 0 0 0 0
1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0
0 0 0
φ φ
1 1
Y0 x1
Y2 Y3 E
Y1 x0
2 4 解碼器
x1
x0
E
Y0
Y1
Y2
Y3
低態
38
有致能端2對4解碼器(低態輸出)
(a) 方塊圖
(b) 功能表 (c) 邏輯電路
x1
x0
E
Y0
Y1
Y2
Y3 Y0
x1
Y2 Y3 E
Y1 x0
2 4 解碼器
0 x1 x0
0 1 0 1 0
Y0 Y1 Y2 Y3 E
1 1 1 1 1
0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 0
0 0 0
φ φ
1 1
3對8解碼器—利用2對4解碼器
Y0 x0
Y2 Y3 E
Y1 x1
2 4 解碼器
Y0 x0
Y2 Y3 E
Y1 x1
2 4 解碼器
x2 x0 x1
Y0 Y1 Y2 Y3
Y4 Y5 Y6 Y7 A
B
40
4對16解碼器—利用2對4解碼器
編碼器方塊圖
編碼器
輸
入 輸
出
4*2編
碼器 8*3編
碼器
42
8對3編碼器
(a) 功能表 0
I2 I3
0 0 1 0 1
I4 I5 I6 I7
0 0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
1 0 0 0
1 0 0
0 0 0 I1
I0 Y2 Y1 Y0
1 0 0 0 0
0 0
0 1 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1
0 0 1 0 1 1 0
0 0 0 1 1 1 1
(b) 邏輯電路 I0
I2 I3 I1
I4
I6 I7 I5
Y2 Y1 Y0
8*3優先編碼器
8對3優先權編碼器
44
多工器方塊圖
多工
輸 器
入 端
輸 出 端
選擇線n條
2對1多工器
Y I
0I
1S MUX
2 1 ×
(a) 方塊圖 (b) 功能表
S Y
0 1
I
0I
1(c) 邏輯電路 S
I
0I
1Y
46
Verilog 程式
module mux_2_1(
input a, input b, input s, output f );
wire s0,sa,sb;
not( s0, s );
and( sa, a, s0 );
and( sb, b, s );
or( f, sa, sb );
endmodule
4對1多工器
Y I0
I1 MUX4 1× I2
I3 S1 S0
Y
0 1
I0 I1 S1 S0
0 0
0 1 1 1
I2 I3
I0
I1
Y I2
I3
S1 S0
48
有致能端2對1多工器
(a) 功能表 (b) 邏輯電路
S Y
0 1
I
0I
1E
1 1
0 φ 0
S I
0I
1Y
E
高態致能
4對1多工器—利用2對1多工器
S I0
多工器Y 2 ×1
I1 E
S I0
多工器Y 2 ×1
I1 E I0
Y I1
I2
I3
50
8對1多工器—利用2對1多工器
解多工器方塊圖
解多 工器
輸
入 輸
出
52
1 對2解多工器
(a) 方塊圖 (b) 功能表 (c) 邏輯電路
S Y
00 1
D 0
Y
1D 0 D
Y
0Y
1S
DeMUX 1 2 ×
S
D Y
0Y
1有致能端1 對4解多工器
D
0 S1 S0
0 1 0 1 0
Y0 Y1 Y2 Y3 E
1 0 0 0 0
D 0 0 0 0 D 0 0 0 0 D 0 0 0 0 D 0
0 0 0
φ φ
1 1
1 4 DeMUX
D
Y0 Y1 Y2
Y3 S0 S1 E
Y0
S1 S0 E
Y1
Y2
Y3
低態致能
54
8對1解多工器—利用4對1解多工器
1 4 DeMUX
D
Y0 Y1 Y2
Y3 S0 S1
E
1 4 DeMUX
D
Y0 Y1 Y2
Y3 S0 S1
E
Y0 Y1 Y2 Y3
Y4 Y5 Y6 Y7 D
S2
S1 S0 S1 S0
1bit比較器方塊圖
56
4 bit比較器方塊圖
8 bit比較器—利用4 bit比較器
A
0A
1A
3A
2B
0B
1B
3B
2I
A>BI
A=BI
A<BO
A>BO
A=BO
A<B4位元比較器
A
0A
1A
3A
2B
0B
1B
3B
2I
A>BI
A=BI
A<BO
A>BO
A=BO
A<B4位元比較器
0 1 0
B
0B
1B
3B
2A
0A
1A
3A
2B
4B
5B
7B
6A
4A
5A
7A
6A B
58
XOR特性1
N=2
N=4XOR特性2
N=360
2進制對葛雷碼轉換器
葛雷碼 對2進制轉換器
62
BCD碼對加三碼的轉換電路
輸入BCD碼 輸出加三碼
w x y z D C B A
0 0 0 0 0 0 1 1
0 0 0 1 0 1 0 0
0 0 1 0 0 1 0 1
0 0 1 1 0 1 1 0
0 1 0 0 0 1 1 1
0 1 0 1 1 0 0 0
0 1 1 0 1 0 0 1
0 1 1 1 1 0 1 0
1 0 0 0 1 0 1 1
1 0 0 1 1 1 0 0
z = D'
y = CD +C'D‘
x = B'C + B'D+BC'D‘
w = A+BC+BD
w
x
y
z
D
C
B
A
64
BCD碼對七段的轉換電路
送1時亮
送0時亮
同位元產生器/檢查器
同位產生器與檢查
偶同位位元: P = x ♁ y ♁ z
同位檢查器: C = x ♁ y ♁ z ♁ P
C =1:奇數個資料位元錯誤發生
C = 0:資料正確或偶數個資料位元錯誤發 生66
3bit同位元產生器/檢查器
可規劃邏輯元件(PLD)
PLD: Programmable Logic Device
PROM (Programmable Read Only Memory )
PAL (Programmable Array Logic )
PLA (Programmable Logic Array)
FPGA –現場可規劃邏輯陣列 (field- programmable gate array)68
ROM
唯讀記憶體
PROM
可編程式唯讀記憶體
70
PLD區別
PLA
可程式邏 輯陣列
72
PLA內部圖
3bit平方電路--分析
心得:藉由製作此筆記讓我更了解數位邏輯這門課程,作筆記的同時 又讓我複習一次的課程,讓我更了解數位邏輯設計的原理及理論,可 以說是一舉兩得,數位邏輯與實習在電 程領域是必備的知識與技 能,數位邏輯給我的感覺,我覺得是 相當有趣的課程,經由0與
74