Professional Documents
Culture Documents
Chương 5 – phần 2
Mạch tổ hợp:
Các loại mạch khác
CuuDuongThanCong.com https://fb.com/tailieudientucntt
1
Nội dung
1. Mạch cộng (Carry Ripple (CR) Adder)
CuuDuongThanCong.com https://fb.com/tailieudientucntt
4
Mạch giải mã (Decoder)
• Nhiều ngõ vào/ nhiều ngõ ra
• Ngõ vào (n) thông thường ít hơn ngõ ra (m)
• Chuyển mã ngõ vào thành mã ngõ ra
• Ánh xạ 1-1:
– Mỗi mã ngõ vào chỉ tạo ra một mã ngõ ra
• Các mã ngõ vào:
– Mã nhị phân
enable
– Your Code! inputs
CuuDuongThanCong.com https://fb.com/tailieudientucntt
7
Chip 74x139: giải mã nhị phân 2-to-4
Ký hiệu
luận lý
Bảng sự thật
CuuDuongThanCong.com https://fb.com/tailieudientucntt
8
Mạch giải mã hoàn chỉnh 74x139
CuuDuongThanCong.com https://fb.com/tailieudientucntt
9
Chip 74x138: Giải mã nhị phân 3-to-8
Bảng sự thật
CuuDuongThanCong.com https://fb.com/tailieudientucntt
10
74x138
Ký hiệu
luận lý
Mạch luận lý
CuuDuongThanCong.com https://fb.com/tailieudientucntt
11
Ghép mạch giải mã
Mạch giải mã
4-to-16
CuuDuongThanCong.com https://fb.com/tailieudientucntt
12
Ứng dụng của mạch giải mã
• Một ứng dụng phổ biến là giải mã địa chỉ cho các
chip nhớ
CuuDuongThanCong.com https://fb.com/tailieudientucntt
13
Giải mã BCD ra LED 7 đoạn
CuuDuongThanCong.com https://fb.com/tailieudientucntt
14
LED 7 đoạn (7-segment display)
• LED 7 đoạn là cách phổ biến để hiển thị số thập phân
hoặc số thập lục phân
– Sử dụng LED cho mỗi đoạn
CuuDuongThanCong.com https://fb.com/tailieudientucntt
15
LED 7 đoạn (7-segment display)
CuuDuongThanCong.com https://fb.com/tailieudientucntt
16
Giải mã BCD ra LED 7 đoạn
Chuyển số BCD sang thông tin thích hợp để hiển thị trên đèn 7
đoạn
CuuDuongThanCong.com https://fb.com/tailieudientucntt
17
Mạch mã hoá (Encoder)
• Nhiều ngõ vào/ nhiều ngõ ra
output
• Chức năng ngược lại với input code
code
mạch giải mã
ENCODER
CuuDuongThanCong.com https://fb.com/tailieudientucntt
18
Encoders vs. Decoders
Decoder Encoder
CuuDuongThanCong.com https://fb.com/tailieudientucntt
19
Mạch mã hoá nhị phân
(Binary Encoder)
Ký hiệu
Bảng sự thật 20
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Hiện thực mạch mã hóa 8-ra-3
Ngõ vào Ngõ ra
I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0
1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 1
0 0 1 0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0 0 1 1
0 0 0 0 1 0 0 0 1 0 0
0 0 0 0 0 1 0 0 1 0 1
0 0 0 0 0 0 1 0 1 1 0
0 0 0 0 0 0 0 1 1 1 1
I0
• Rút gọn: I1
Y2
Y0 = I1 + I3 + I5 + I7 I2
Y1 = I2 + I3 + I6 + I7 Y1
I3
Y2 = I4 + I5 + I6 + I7
I4
I5
I6 Y0
I7
CuuDuongThanCong.com https://fb.com/tailieudientucntt
21
Hiện thực mạch mã hóa 8-ra-3
I0
• Giới hạn: I1
Y2
• Ứng dụng: I6 Y0
CuuDuongThanCong.com https://fb.com/tailieudientucntt
22
Cần có độ ưu tiên trong hầu hết các ứng dụng
CuuDuongThanCong.com https://fb.com/tailieudientucntt
23
Mạch mã hoá có độ ưu tiên (Priority Encoder)
• Khi có nhiều hơn 1 ngõ vào tích cực, ngõ ra tạo ra mã của ngõ
vào có độ ưu tiên cao nhất.
Priority encoder
• Priority Encoder: Priority Circuit Binary encoder
H7=I7 (Độ ưu tiên cao nhất) I7 I7 H7 I7
H6=I6.I7’
H5=I5.I6’.I7’ I6 I6 H6 I6
H4=I4.I5’.I6’.I7’ I5 I5 H5 I5 Y2 A2
H3=I3.I4’.I5’.I6’.I7’
H2=I2.I3’.I4’.I5’.I6’.I7’ I4 I4 H4 I4 Y1 A1
H1=I1. I2’.I3’.I4’.I5’.I6’.I7’ I3 I3 H3 I3 Y0 A0
H0=I0.I1’. I2’.I3’.I4’.I5’.I6’.I7’ I2 I2 H2 I2
IDLE= I0’.I1’. I2’.I3’.I4’.I5’.I6’.I7’
I1 I1 H1 I1
• Encoder I0 I0 H0
IDLE
I0
IDLE
A0=Y0 = H1 + H3 + H5 + H7
A1=Y1 = H2 + H3 + H6 + H7
A2=Y2 = H4 + H5 + H6 + H7
CuuDuongThanCong.com https://fb.com/tailieudientucntt
24
8-input priority encoder
CuuDuongThanCong.com https://fb.com/tailieudientucntt
25
74x148 8-input priority encoder
CuuDuongThanCong.com https://fb.com/tailieudientucntt
26
74x148 – Bảng sự thật
CuuDuongThanCong.com https://fb.com/tailieudientucntt
27
74x148
Sơ đồ luận lý
28
CuuDuongThanCong.com https://fb.com/tailieudientucntt
28
Ghép các priority
encoders
CuuDuongThanCong.com https://fb.com/tailieudientucntt
29
6. Multiplexer (MUX)/
Demultiplexer (DeMUX)
CuuDuongThanCong.com https://fb.com/tailieudientucntt
30
Multiplexer (MUX)
• Một MUX truyền một trong những ngõ vào
của nó ra ngõ ra dựa trên tín hiệu Select
CuuDuongThanCong.com https://fb.com/tailieudientucntt
31
2-to-1 Multiplexer
Minh họa
với Sel = 0
Ký hiệu
Sel Out
0 I0
1 I1
Out =Sel * I0 + Sel * I1
Biểu thức đại số
Mạch logic
CuuDuongThanCong.com https://fb.com/tailieudientucntt
32
4-to-1 Mux
• 4-to-1 Mux xuất ra một trong bốn ngõ vào dựa trên
giá trị của 2 tín hiệu select
Bảng sự thật
Ký hiệu
Biểu thức đại số
CuuDuongThanCong.com https://fb.com/tailieudientucntt
33
Xây dựng MUX 4-to-1
• Từ MUX 2-to-1
CuuDuongThanCong.com https://fb.com/tailieudientucntt
34
Chip 74x151: 1-bit multiplexer 8-to-1
Ký hiệu
Bảng sự thật
Sơ đồ luận lý
CuuDuongThanCong.com https://fb.com/tailieudientucntt
35
Demultiplexer
• Demultiplexer (DEMUX) lấy ngõ vào duy nhất và
phân phối nó ra một ngõ ra.
– Mã ngõ vào SELECT sẽ xác định ngõ ra nào sẽ được kết
nối với ngõ vào
CuuDuongThanCong.com https://fb.com/tailieudientucntt
36
DEMUX
1-to-8 demultiplexer
CuuDuongThanCong.com https://fb.com/tailieudientucntt
37
Tổng hợp các hàm logic từ MUX
• Cách hiện thực LUT (Look-up table)
- Sử dụng MUX để chọn một giá trị (hằng số) từ 1 LUT
Ví dụ hàm XOR
CuuDuongThanCong.com https://fb.com/tailieudientucntt
38
Tổng hợp các hàm logic từ MUX
• Giải pháp ở slide trước không hiệu quả vì phải sử dụng
MUX 4-to-1
• Nhận xét:
CuuDuongThanCong.com https://fb.com/tailieudientucntt
39
Tổng hợp các hàm logic từ MUX
• Ví dụ: Hiện thực mạch với bảng sự thật sau bằng một
MUX và các cổng khác
A B X
0 0 1
0 1 1
1 0 0
1 1 1
CuuDuongThanCong.com https://fb.com/tailieudientucntt
40
Tổng hợp các hàm logic từ MUX
• XOR 3 ngõ vào có thể hiện thực bằng 2 MUX 2-to-1
CuuDuongThanCong.com https://fb.com/tailieudientucntt
41
Tổng hợp các hàm logic từ MUX
• Ví dụ: Hiện thực mạch với bảng sự thật sau bằng một
MUX và các cổng logic khác
A B C X
0 0 0 1
0 0 1 1 - Với A là ngõ vào điều khiển
0 1 0 0
0 1 1 1 - Với C là ngõ vào điều khiển
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
CuuDuongThanCong.com https://fb.com/tailieudientucntt
42
Biểu thức Shannon
• Bất kì hàm Boolean f(w1,w2, …, wn) có thể được viết
dưới dạng:
CuuDuongThanCong.com https://fb.com/tailieudientucntt
43
Biểu thức Shannon
• Ví dụ 1:
f(w1,w2, w3)= w1w2 + w1w3 + w2w3
CuuDuongThanCong.com https://fb.com/tailieudientucntt
44
Biểu thức Shannon
CuuDuongThanCong.com https://fb.com/tailieudientucntt
45
Biểu thức Shannon
• Ví dụ 2:
CuuDuongThanCong.com https://fb.com/tailieudientucntt
46
Biểu thức Shannon
• Ví dụ 3:
CuuDuongThanCong.com https://fb.com/tailieudientucntt
47
Ví dụ
• Dùng MUX 4-to-1 và các cổng luận lý cần thiết để hiện
thực hàm sau:
F (a, b, c, d) = SOP (1, 3, 5, 6, 8, 11, 15)
• Yêu cầu: c và d là các ngõ vào điều khiển của MUX 4-ra-1
CuuDuongThanCong.com https://fb.com/tailieudientucntt
48
Ví dụ
• Dùng MUX 4-to-1 và các cổng luận lý cần thiết để
hiện thực hàm sau:
F (a, b, c, d) = SOP (1, 3, 5, 6, 8, 11, 15)
CuuDuongThanCong.com https://fb.com/tailieudientucntt
49
7. Parity Generator/ Checker
CuuDuongThanCong.com https://fb.com/tailieudientucntt
50
Cổng Exclusive OR và Exclusive NOR
Bảng sự thật
CuuDuongThanCong.com https://fb.com/tailieudientucntt
51
XOR and XNOR Symbols
• Các biểu tượng tương đương của cổng XOR
CuuDuongThanCong.com https://fb.com/tailieudientucntt
52
Ứng dụng của XOR: Mạch Parity
• Mạch Parity chẵn (EVEN): tổng số bit 1 trong chuỗi bit (kể cả bit parity) là số
chẵn.
– Parity bit = 1, nếu số bit 1 trong chuỗi bit (không kể parity) là số lẻ
– Parity bit = 0, nếu số số 1 trong chuỗi bit (không kể parity) là số chẵn
• Mạch Parity lẻ (ODD): tổng số bit 1 trong chuỗi bit (kể cả bit parity) là số lẻ.
• Ví dụ: Mạch tạo Parity 4-bit
Input Even Parity Odd Parity
ODD
0000 0 1
EVEN
0001 1 0
1101 1 0
ODD
1111 0 1
EVEN
1100 0 1
CuuDuongThanCong.com https://fb.com/tailieudientucntt
53
Ứng dụng của XOR: Mạch tạo Parity
EVEN
Daisy-Chain Structure
EVEN
CuuDuongThanCong.com
Tree structure https://fb.com/tailieudientucntt
54
Ứng dụng của XOR: Mạch Parity
Source: http://en.wikipedia.org/wiki/Parity_bit
CuuDuongThanCong.com https://fb.com/tailieudientucntt
55
Chip 74x280: tạo parity chẵn/lẽ từ dữ
liệu 9-bit
Chú ý: Chip 74x280 định nghĩa even/odd parity
ngược lại với định nghĩa trong các slide trước
=> cẩn thận khi sử dụng chip này
CuuDuongThanCong.com https://fb.com/tailieudientucntt
56
Bộ tạo và kiểm tra Parity
(Parity generator and checker)
• Cổng XOR và XNOR rất hữu dụng trong các mạch với
mục đích tạo (bộ phát) và kiểm tra (bộ nhận) parity bit
CuuDuongThanCong.com https://fb.com/tailieudientucntt
57
Ứng dụng của XOR: Mạch tạo Parity
Source: http://en.wikipedia.org/wiki/Parity_bit 58
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Ứng dụng cổng XOR: kiểm tra Parity
Source: http://en.wikipedia.org/wiki/Parity_bit 59
CuuDuongThanCong.com https://fb.com/tailieudientucntt
8. Comparator
CuuDuongThanCong.com https://fb.com/tailieudientucntt
60
Mạch so sánh (Comperator)
• Mạch so sánh 2 số
– Xuất ra 1 nếu chúng bằng nhau
– Xuất ra 0 nếu chúng khác nhau
• Dựa trên cổng XOR, trả về 0 nếu ngõ vào giống nhau
và 1 nếu chúng khác nhau
CuuDuongThanCong.com https://fb.com/tailieudientucntt
61
Mạch so sánh 1 bit
a b gt eq lt
0 0 0 1 0
0 1 0 0 1
1 0 1 0 0
1 1 0 1 0
CuuDuongThanCong.com https://fb.com/tailieudientucntt
62
Mạch so sánh 4 bit
a0
b0
a1
b1
eq
a2
b2
a3
b3
CuuDuongThanCong.com https://fb.com/tailieudientucntt
63
Mạch so sánh 4 bit
a0
b0
a1
b1
gt
a2
b2
a3
b3
CuuDuongThanCong.com https://fb.com/tailieudientucntt
64
Mạch so sánh 4 bit
lt
CuuDuongThanCong.com https://fb.com/tailieudientucntt
65
Mạch so sánh 4-bit
• 74x85 là mạch so sánh tiêu chuẩn với những đặc tính sau:
• Chý ý: 3 ngõ vào l, e và g được sử dụng khi ghép nối để tạo mạch
so sánh với số bit nhiều hơn
4
A
B
4
lt
eq
l
gt
e
g
CuuDuongThanCong.com https://fb.com/tailieudientucntt
66
Mạch so sánh 16 bit
• Ghép 4 IC 74x85 để xây dựng một mạch so sánh 16 bit
a[ 15:0 ]
b[ 15:0 ]
4 A 4 A 4 A 4 A
4 B lt 4 B
lt 4 B
lt 4 B
lt
eq eq eq 0 eq
l gt l gt l gt l gt
e e e 1 e
g g g 0 g
gt eq lt
Final results of
comparison
CuuDuongThanCong.com https://fb.com/tailieudientucntt
67
Mạch so sánh 16 bit
• Mạch sẽ đầu tiên so sánh 4 bit cao nhất ở 2 ngõ vào
CuuDuongThanCong.com https://fb.com/tailieudientucntt
68
Ví dụ
• Thiết kế mạch tìm số lớn nhất, số nhỏ nhất trong 4 số
4-bit sử dụng mạch so sánh và MUXs
CuuDuongThanCong.com https://fb.com/tailieudientucntt
69
Any question?
CuuDuongThanCong.com https://fb.com/tailieudientucntt
70