Professional Documents
Culture Documents
Chương 2
Chương 2
Chương 2:
MẠCH LOGIC
1
14/02/2022
Giới Thiệu
Các hoạt động của máy tính số được dựa
trên việc lưu trữ và xử lý dữ liệu nhị phân.
Chương này sẽ xem xét các thành phần cơ
bản mà từ đó tạo nên tất cả máy tính.
Bắt đầu bằng đại số Boolean, tiếp theo là
giới thiệu về một số cổng logic. Cuối cùng là
thiết kế một số mạch tổ hợp (mạch cộng,
trừ) và mạch tuần tự (chốt, flip-flop, thanh
ghi, bộ đếm) phổ biến từ các cổng logic.
2
14/02/2022
3
14/02/2022
4
14/02/2022
5
14/02/2022
6
14/02/2022
Hình 2.2: Sử
dụng các cổng
NAND để tạo ra
AND, OR, NOT.
7
14/02/2022
8
14/02/2022
9
14/02/2022
10
14/02/2022
11
14/02/2022
Giới Thiệu
Mạch số được chia làm hai loại: Mạch tổ
hợp (combinational circuit) và mạch tuần tự
(sequential circuit).
Trong mạch tổ hợp, khi các ngõ vào thay đổi
trạng thái, trạng thái các ngõ ra thay đổi
ngay lập tức (sau một khoảng thời gian trì
hoãn rất ngắn).
Mạch tổ hợp bao gồm n ngõ vào và m ngõ ra.
Các mạch cộng và trừ được trình bày sau
đây là các mạch tổ hợp.
12
14/02/2022
13
14/02/2022
14
14/02/2022
15
14/02/2022
16
14/02/2022
Bảng sự thật:
17
14/02/2022
18
14/02/2022
19
14/02/2022
20
14/02/2022
21
14/02/2022
Input Output
S R Qn+1
0 0 Qn
0 1 0
1 0 1
1 1 Cấm
2.4.3 Flip-Flop RS
Để kiểm soát ngõ ra và tạo sự đồng bộ,
mạch flip-flop RS được sử dụng thay cho
chốt RS.
Sự khác biệt chính giữa mạch chốt và flip-
flop là cơ chế kích hoạt.
Ngõ ra của mạch chốt có dữ liệu ngay lập
tức. Trong khi ngõ ra của flip-flop phụ thuộc
vào sự chuyển đổi tín hiệu xung clock.
22
14/02/2022
2.4.3 Flip-Flop RS
Để kiểm soát ngõ ra và tạo sự đồng bộ,
mạch flip-flop RS được sử dụng thay cho
chốt RS.
Input Output
S R CLK Qn+1
0 0 Qn
0 1 0
1 0 1
1 1 Cấm
Hình 2.13: Flip-flop RS.
Bảng 2.3: Bảng sự
thật của flip-flop RS.
ThS. GVC Tô Oai Hùng 45
2.4.4 Flip-Flop JK
Flip-flop JK (Jack Kilby – kỹ sư điện tử
người Mỹ, tạo ra mạch lật vào năm 1958)
khắc phục được trạng thái cấm của flip-flop
RS.
Input Output
J K CLK Qn+1
0 0 Qn
0 1 0
1 0 1
1 1 Qn
Hình 2.14: Flip-flop JK. Bảng 2.4: Bảng sự
thật của flip-flop JK.
ThS. GVC Tô Oai Hùng 46
23
14/02/2022
2.4.4 Flip-Flop JK
Lưu ý:
Giả sử Q = 0, Q
ഥ = 1 và gọi t là thời gian
dữ liệu truyền qua một cổng.
Khi J = K = 1 thì:
• t thứ 1: A = 0, B = 1.
• t thứ 2: Q = 1.
• t thứ 3: Qഥ = 0.
Vậy, sau 3t ngõ ra Q = 1, Qഥ = 0 (Qn+1 =
ഥ n).
Q
Sau 3t nữa, nếu clock còn ở mức cao thì
ഥ sẽ làm cho
sự hồi tiếp trở về của Q và Q
chúng có giá trị khác là Q = 0 và Qഥ = 1,
quá trình trên lặp lại.
ThS. GVC Tô Oai Hùng 47
2.4.4 Flip-Flop JK
Khi clock xuống thấp, chúng ta không
biết ngõ ra ở trạng thái nào. Điều này
được gọi là sự đu đưa vòng quanh (race-
around).
Để giải quyết vấn đề trên, chúng ta phải
sử dụng xung nhịp đồng hồ nhỏ hơn t
hoặc dùng mạch có flip-flop JK được cấu
tạo dạng chủ tớ.
24
14/02/2022
2.4.4 Flip-Flop D
Khi nối các ngõ vào của flip-flop RS (hoặc
JK), chúng ta được flip-flop D.
Ngõ ra của flip-flop D luôn bằng với giá trị
đã gán trước khi có xung nhịp cho ngõ vào.
Input Output
D CLK Qn+1
0 0
1 1
Hình 2.15: Flip-flop D.
Bảng 2.5: Bảng sự
thật của flip-flop D.
2.4.5 Chốt D
Trong flip-flop D, nếu thay ngõ vào đồng hồ
bằng ngỏ vào cho phép E (enable) tác động
ở mức cao, chúng ta được mạch chốt D.
Input Output
D E Qn+1
0 1 0
1 1 1
Hình 2.16: Chốt D.
Bảng 2.6: Bảng sự
thật của chốt D.
25
14/02/2022
26
14/02/2022
27
14/02/2022
2.4.10 Bộ Đếm
Một công dụng khác của mạch tuần tự là bộ
đếm (counter).
Bộ đếm là thanh ghi, nếu nó được tạo thành
từ n flip-flop thì có thể đếm từ 0 đến 2n – 1.
Một ví dụ về bộ đếm trong CPU là bộ đếm
chương trình.
Bộ đếm có thể được thiết kế không đồng bộ
(asynchronous) hoặc đồng bộ (synchro-
nous).
Bộ đếm đồng bộ nhanh hơn so với bộ đếm
không đồng bộ.
2.4.10 Bộ Đếm
Bộ đếm 4
bit không
đồng bộ.
Bộ đếm 4
bit đồng bộ.
28
14/02/2022
29
14/02/2022
30
14/02/2022
31
14/02/2022
32
14/02/2022
33
14/02/2022
34
14/02/2022
35