Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
1
Chương 8
HỆ TỔ HỢP
Mạch sô ñược chia làm hai loại:
- Mạch tô hợp (Combinational Circuit)
- Mạch tuần tư (Sequential Circuit).
Mạch tô hợp là mạch mà các ngo ra chỉ phu thuộc vào các ngo
vào hiện tại.
NGUYÊN TẮC THIẾT KẾ HỆ TỔ HỢP
1. Phát biểu bài toán.
2. Xác ñịnh các ngo vào va các ngo ra.
3. Lập bảng chân trị nêu lên mối quan hê giữa các ngo ra va
các ngo vào theo yêu cầu của bài toán.
4. Xác ñịnh hàm Boole ñược ñơn giản hóa cho các hàm ngo ra.
5. Ve sơ ñô logic.
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
2
Ví dụ: Thiết kế mạch tổ hợp nhận một số vào là số nhị phân 4
bit ABCD (với D là LSB). Hệ có 2 ngõ ra F và G, ngõ ra F là 1
khi giá trị nhị phân của ngõ vào là 1 số chia hết cho 2 hoặc 3
và ngược lại; ngõ ra G bằng 1 khi tổng số bit 1 ở ngõ vào lớn
hơn tổng số bit 0 và ngược lại.
Sơ ñồ khối
A
B
C
D
F
G
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
3
Bảng chân trị
Ngõ vào
Ngõ ra
A B
C D F G
0 0
0 0 1 0
0 0
0 1 0 0
0 0
1 0 1 0
0 0
1 1 1 0
0 1
0 0 1 0
0 1
0 1 0 0
0 1
1 0 1 0
0 1
1 1 0 1
Ngõ vào
Ngõ ra
A B
C D F G
1 0
0 0 1 0
1 0
0 1 1 0
1 0
1 0 1 0
1 0
1 1 0 1
1 1
0 0 1 0
1 1
0 1 0 1
1 1
1 0 1 1
1 1
1 1 1 1
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
4
Xác ñịnh các hàm ngõ ra
∑
∑∑
∑
=
==
= )15,14,12,10,9,8,6,4,3,2,0()D,C,B,A(F
∑
∑∑
∑
=
==
= )15,14,13,11,7()D,C,B,A(G
F
AB
CD
1 1 1 1
1
1 1
1 1 1 1
00 01 11 10
00
01
11
10
G
AB
CD
1
1 1
1 1
00 01 11 10
00
01
11
10
CBACBACBADF +
++
++
++
++
++
+=
==
=
DCBDBADCAG +
++
++
++
+=
==
=
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
5
CBACBACBADF +
++
++
++
++
++
+=
==
=
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
F
A
B
C D
•
••
•
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
6
DCBDBADCAG +
++
++
++
+=
==
=
G
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
•
••
•
A
B
C D
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
7
Trường hợp hệ tổ hợp không sử dụng hết 2
n
tổ hợp của ngõ vào
thì tại các tổ hợp không sử dụng ñó ngõ ra có giá trị tùy ñịnh.
Ví du: Thiết kê một mạch tô hợp có 4 ngõ vào ABCD (với D là
MSB) biểu diễn cho sô BCD. Các ngõ ra giải mã cho ñèn led 7
ñoạn loại anode chung.
Sơ ñô khối
C
A
B
D
a
b
c
d
e
f
g
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
8
Bảng chân trị
01100001100
01001000100
11110011000
10000000000
11110001110
00000100110
00100101010
00110010010
gfedcbaABCD
OutputsInputs
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
9
Bảng chân trị
XXXXXXX1101
XXXXXXX0101
00100001001
00000000001
XXXXXXX1111
XXXXXXX0111
XXXXXXX1011
XXXXXXX0011
gfedcbaABCD
OutputsInputs
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
10
Các hàm ngo ra
1 X
1 X
X X
X X
00 01 11 10
00
01
11
10
DC
BA
a
A.B.C.DA.B.Ca +
++
+=
==
=
X
1 X
X X
1 X X
00 01 11 10
00
01
11
10
DC
BA
b
A.B.CA.B.Cb +
++
+=
==
=
A.B.Cc =
==
=
A.B.C.DA.B.CA.B.Cd +
++
++
++
+=
==
=
B.CAe +
++
+=
==
=
A.C.DB.CA.Bf +
++
++
++
+=
==
=
A.B.CB.C.Dg +
++
+=
==
=
Thực hiện rút gọn trên bìa K, ta có các hàm ngo ra:
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
11
a. Mạch cộng bán phần (Half Adder – HA)
Mạch cộng bán phần là mạch cộng 2 sô nhi phân 1 bit X và
Y, mạch tạo ra 1 bit tổng S(Sum) va 1 bit nhơ C(Carry).
Sơ ñô khối
CÁC MẠCH TỔ HỢP THÔNG DỤNG
I. MẠCH CỘNG – TRỪ NHỊ PHÂN
1. MẠCH CỘNG - ADDER
X
Y
S
C
H.A
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
12
Bảng chân trị
SCYX
Ngõ raNgõ vào
0
0
0 0
0
1
0 1
1
0
0 1
1
1
1 0
Các hàm ngo ra
YXY.XY.XS ⊕
⊕⊕
⊕=
==
=+
++
+=
==
=
C = X.Y
Sơ ñô mạch
•
•
X
Y
S
C
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
13
b. Mạch cộng toàn phần (Full Adder – FA)
Mạch cộng toàn phần thực hiện phép cộng 3 sô nhi phân 1 bit
X + Y + Z, mạch tạo ra 1 bit tổng S(Sum) va 1 bit nhớ
C(Carry).
Sơ ñô khối
X
Z
S
C
Y
F.A
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
14
Bảng chân trị
SCZYX
Ngõ raNgõ vào
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
1
0
1
1
1
0
1
1
0
1
0
0
1
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
15
Các hàm ngo ra
Z.Y.XZ.Y.XZ.Y.XZ.Y.XS +
++
++
++
++
++
+=
==
=
ZYXS
⊕
⊕⊕
⊕
⊕
⊕⊕
⊕
=
==
=
Z.XZ.YY.XC
+
++
+
+
++
+
=
==
=
00 01 11 10
0
1
XY
Z
S
00 01 11 10
0
1
XY
Z
C
∑
∑∑
∑
=
==
= )7,4,2,1(S
∑
∑∑
∑
=
==
= )7,6,5,3(C
1
1
1
1
1
1
1
1
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
16
Sơ ñô mạch
•
•
X
Z
S
C
Y
•
•
•
•
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
17
X
Y
D
B
H.S
B Dx y
0 0
0 1
1 0
1 1
0 0
1 1
0 1
0 0
X
Y
D
B
2. MẠCH TRỪ - SUBTRACTOR
a. Mạch trừ bán phần – Half Subtractor (H.S)
Mạch trừ bán phần thực hiện phép trừ số học 2 số nhị phân ở
ngõ vào X và Y. Hệ có 2 ngõ ra: bit hiệu D (Diffirence) và bit
mượn B(Borrow)
YXYXYXD ⊕
⊕⊕
⊕=
==
=+
++
+=
==
=
YXB =
==
=
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
18
X
Y
D
B
F.S
Z
B DX Y Z
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0 0
1 1
1 1
1 0
0 1
0 0
0 0
1 1
xy
z
D
0
1
00 01 11 10
1
1
1
1
xy
z
B
0
1
00 01 11 10
11 1
1
b. Mạch trừ toàn phần – Full Subtractor (F.S)
Mạch trừ toàn phần thực hiện phép trừ số học 3 bit X – Y – Z
(Z:biểu diễn cho bit mượn từ vị trí có trọng số nhỏ hơn).
)YX(Z
ZYXZYXZYXZYXD
⊕
⊕⊕
⊕⊕
⊕⊕
⊕=
==
=
+
++
++
++
++
++
+=
==
=
)YX(ZYX
ZYZXYXC
+
++
++
++
+=
==
=
+
++
++
++
+=
==
=
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
19
74283
M: M3 M2 M1 M0
N: N3 N2 N1 N0
S0S1S2S3
C1C2
+
C3
C4
X Y
Z
C
S
F.A
X Y
Z
C
S
F.A
X Y
Z
C
S
F.A
X Y
Z
C
S
F.A
M0 N0M1 N1M2 N2M3 N3
S0
C0
= 0
C1 C2 C3
S1 S2 S3
C4
3. MẠCH CỘNG/TRỪ NHỊ PHÂN SONG SONG
a. Mạch cộng nhị phân
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
20
M – N = M + Bù_2(N) = M + Bù_1(N) + 1
M0 N0M1 N1M2 N2M3 N3
C0
= 1
X Y
Z
C
S
F.A
Z Y
Z
C
S
F.A
X Y
Z
C
S
F.A
X Y
Z
C
S
F.A
C1 C2 C3
S0 S1 S2 S3
C4
b. Mạch trừ nhị phân
- Sử dụng các mạch trừ toàn phần F.S.
- Hoặc thực hiện bằng phép cộng với số bù 2 của số trừ.
Chú ý
: Nếu C4 = 1 kết quả là số dương và ngược lại.
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
21
M0 N0M1 N1M2 N2M3 N3
C0
x y
z
C
S
F.A
x y
z
C
S
F.A
x y
z
C
S
F.A
x y
z
C
S
F.A
C1 C2 C3
S0 S1 S2 S3
C4
C
0
y
i
Phép toán
0 N
i
CỘNG
TRỪ
1 N
i
T = 0: Cộng
T = 1:
Trừ
Ngõ vào ñiều khiển
C
0
= T
y
i
= T
⊕
⊕⊕
⊕
N
i
T
c. Mạch cộng/trừ nhị phân
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
22
III. HỆ CHUYỂN MÃ (Code Conversion):
- Hệ chuyển mã là hệ tổ hợp làm cho 2 hệ thống tương thích
nhau, mặc dù mỗi hệ thống dùng mã nhị phân khác nhau.
- Hệ chuyển mã có ngõ vào cung cấp các tổ hợp mã nhị phân A
và các ngõ ra tạo ra các tổ hợp mã nhị phân B. Như vậy, ngõ vào
và ngõ ra phải có số lượng từ mã bằng nhau.
Mã
nhị phân B
Hệ
chuyển
mã
Mã
nhị phân A
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
23
Ví dụ:
Thiết kế hệ chuyển mã BCD thành mã BCD quá 3.
A B C D
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1
W X Y Z
X X X X
X X X X
X X X X
X X X X
X X X X
X X X X
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
W = A + B (C + D)
X = B
⊕
⊕⊕
⊕
(C + D)
Y = C
⊕
⊕⊕
⊕
D
Z = D
A
B
C
D
W
X
Z
Y
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
24
IV. MẠCH GIẢI MÃ (DECODER):
- Mạch giải mã là hệ chuyển mã thực hiện chuyển ñổi mã nhị
phân cơ bản n bit ở ngõ vào thành mã 1 trong m ở ngõ ra.
Mã
1 trong m
X
0
X
1
X
n-1
Mã
nhị phân
Y
0
Y
1
Y
m-1
m = 2
n
- Có 2 loại: ngõ ra tích cực cao (mức 1) và ngõ ra tích cực thấp
(mức 0).
- Với giá trị
i
của tổ hợp nhị phân ở ngõ vào, thì ngõ ra
Y
i
sẽ
tích cực và các ngõ ra còn lại sẽ không tích cực.
Bài giảng môn Kỹ thuật ðiện tử C
GV: Lê Thị Kim Anh
25
a. Mạch giải mã ngõ ra tích cực cao:
X
0
(LSB)
X
1
Y
0
Y
1
Y
2
Y
3
Y
3
Y
2
Y
1
Y
0
X
1
X
0
0 0
0 1
1 0
1 1
0 0 0 1
0 0 1 0
0 1 0 0
1 0 0 0
Y
0
= X
1
X
0
= m
0
Y
1
= X
1
X
0
= m
1
Y
2
= X
1
X
0
= m
2
Y
3
= X
1
X
0
= m
3
X
0
X
1
Y
0
Y
1
Y
2
Y
3
Ngõ ra: Y
i
= m
i
(i = 0, 1, , 2
n
-1)