Bài giảng Kiến trúc máy tính và hợp ngữ - Chương 06: Lạch Logic - Lê Quốc Hòa
Là thiết bị điện tử hoạt động với 2 mức điện áp:
– Cao: thể hiện bằng giá trị luận lý (quy ước) là 1
– Thấp: thể hiện bằng giá trị luận lý (quy ước) là 0
• Được xây dựng từ những thành phần cơ bản là cổng luận lý (logic
gate)
– Cổng luận lý là thiết bị điện tử gồm 1 / nhiều tín hiệu đầu vào (input) -
1 tín hiệu đầu ra (output)
– output = F(input_1, input_2, …, input_n)
– Tùy thuộc vào cách xử lý của hàm F sẽ tạo ra nhiều loại cổng luận lý
• Hiện nay linh kiện cơ bản để tạo ra mạch số là transistor
– Cao: thể hiện bằng giá trị luận lý (quy ước) là 1
– Thấp: thể hiện bằng giá trị luận lý (quy ước) là 0
• Được xây dựng từ những thành phần cơ bản là cổng luận lý (logic
gate)
– Cổng luận lý là thiết bị điện tử gồm 1 / nhiều tín hiệu đầu vào (input) -
1 tín hiệu đầu ra (output)
– output = F(input_1, input_2, …, input_n)
– Tùy thuộc vào cách xử lý của hàm F sẽ tạo ra nhiều loại cổng luận lý
• Hiện nay linh kiện cơ bản để tạo ra mạch số là transistor
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kiến trúc máy tính và hợp ngữ - Chương 06: Lạch Logic - Lê Quốc Hòa", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
- bai_giang_kien_truc_may_tinh_va_hop_ngu_chuong_06_lach_logic.pdf
Nội dung text: Bài giảng Kiến trúc máy tính và hợp ngữ - Chương 06: Lạch Logic - Lê Quốc Hòa
- • Là thiết bị điện tử hoạt động với 2 mức điện áp: – Cao: thể hiện bằng giá trị luận lý (quy ước) là 1 – Thấp: thể hiện bằng giá trị luận lý (quy ước) là 0 • Được xây dựng từ những thành phần cơ bản là cổng luận lý (logic gate) – Cổng luận lý là thiết bị điện tử gồm 1 / nhiều tín hiệu đầu vào (input) - 1 tín hiệu đầu ra (output) – output = F(input_1, input_2, , input_n) – Tùy thuộc vào cách xử lý của hàm F sẽ tạo ra nhiều loại cổng luận lý • Hiện nay linh kiện cơ bản để tạo ra mạch số là transistor 2
- AND OR NOT A B out A B out A out 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 1 1 1 1 1 1 4
- A A A+B A.B A.B A+B 6
- x + 0 = x x . 0 = 0 x + 1 = 1 x . 1 = x x + x = x x . x = x x + x’ = 1 x . x’ = 0 x + y = y + x xy = yx x + (y + z) = (x + y) + z x(yz) = (xy)z x(y + z) = xy + xz x + yz = (x + y)(x + z) (x + y)’ = x’.y’ (De Morgan) (xy)’ = x’ + y’ (De Morgan) (x’)’ = x 10
- • Chip 7400 có 4 cổng NAND. • Hai chân bổ sung cung cấp nguồn (+5 V) và nối đất (GND). 12
- • Bằng ngôn ngữ • Bằng bảng chân trị – n input – m output – 2n hàng – (n + m) cột • Bằng công thức (hàm luận lý) • Bằng sơ đồ 14
- • Giả sử đã có bảng chân trị cho mạch n đầu vào x1, ,xn và 1 đầu ra f • Ta dễ dàng thiết lập công thức (hàm) logic theo thuật toán sau: – Ứng với mỗi hàng của bảng chân trị có đầu ra = 1 ta tạo thành 1 tích có dạng u1.u2 un với: xi nếu xi = 1 ui = (xi)’ nếu xi = 0 – Cộng các tích tìm được lại thành tổng công thức của f 16
- • Trường hợp số hàng có giá trị đầu ra = 1 nhiều hơn = 0, ta có thể đặt g = (f)’ • Viết công thức dạng SOP cho g • Lấy f = (g)’ = (f’)’ để có công thức dạng POS (Tích các tổng) của f 18
- • Sau khi viết được hàm logic, ta có thể vẽ sơ đồ của mạch tổ hợp từ những cổng luận lý cơ bản – Ví dụ: f = xy + xz • Tuy nhiên ta có thể viết lại hàm logic sao cho sơ đồ mạch sử dụng ít cổng hơn – Ví dụ: f = xy + xz = x(y + z) • Cách đơn giản hoá hàm tổng quát? Một số cách phổ biến: – Dùng đại số Bun (Xem lại bảng 1 số đẳng thức cơ bản để áp dụng) – Dùng bản đồ Karnaugh (Cac-nô) 20
- • Mỗi tổ hợp biến trong bảng chân trị gọi là bộ trị (tạm hiểu là 1 dòng) Biểu diễn hàm có n biến thì sẽ cho ra tương ứng 2n bộ trị, với vị trí các bộ trị được đánh số từ 0 Thông tin trong bảng chân trị có thể cô đọng bằng cách: – Liệt kê vị trí các bộ trị (minterm) với giá trị đầu ra = 1 (SOP) – Liệt kê vị trí các bộ trị (maxterm) với giá trị đầu ra = 0 (POS) 22
- B B 24 B BC A 0 1 A 00 01 11 10 0 0 1 0 0 1 3 2 A 1 2 3 A 1 4 5 7 6 C C CD AB 00 01 11 10 00 0 1 3 2 01 4 5 7 6 B 11 12 13 15 14 A 10 8 9 11 10 D
- • Bộ trị giữa 2 ô liền kề trong bản đồ chỉ khác nhau 1 biến – Biến đó bù 1 ô, không bù ở ô kế hoặc ngược lại Các ô đầu / cuối của các dòng / cột là các ô liền kề 4 ô nằm ở 4 góc bản đồ cũng coi là ô liền kề 26
- • F(A, B, C) = Σ(3, 4, 6, 7) B B BC BC A 00 01 11 10 A 00 01 11 10 0 1 0 1 A 1 1 1 1 A 1 1 1 1 C C F(A, B, C) = BC + AC’ 28
- • F(A, B, C, D) = Σ(0, 1, 2, 6, 8, 9, 10) C C CD CD AB 00 01 11 10 AB 00 01 11 10 00 1 1 1 00 1 1 1 01 1 01 1 B B 11 11 A A 10 1 1 1 10 1 1 1 D D F(A, B, C) = B’D’ + B’C’ + A’CD’ 30
- • F(A, B, C, D) = Σ(0, 1, 2, 5, 8, 9, 10) C C CD CD AB 00 01 11 10 AB 00 01 11 10 00 1 1 0 1 00 1 1 0 1 01 0 1 0 0 01 0 1 0 0 B B 11 0 0 0 0 11 0 0 0 0 A A 10 1 1 0 1 10 1 1 0 1 D D F’(A, B, C) = CD + BD’ + AB F = (F’)’ = (A’ + B’)(C’ + D’)(B’ + D) 32
- • F(A, B, C) = Σ(0, 2, 6) • d(A, B, C) = Σ(1, 3, 5) Vị trí A B C F 0 0 0 0 1 1 0 0 1 x 2 0 1 0 1 3 0 1 1 x 4 1 0 0 0 5 1 0 1 x 6 1 1 0 1 7 1 1 1 0 34
- • Yêu cầu: Thiết kế mạch tổ hợp 3 ngõ vào, 1 ngõ ra, sao cho giá trị logic ở ngõ ra là giá trị nào chiếm đa số trong các ngõ vào 36
- f(x, y, z) = Σ(3, 5, 6, 7) y y yz yz x 00 01 11 10 x 00 01 11 10 0 1 0 1 x 1 1 1 1 x 1 1 1 1 z z f(x, y, z) = xz + xy + yz = x.(y+z) + yz 38
- • Mạch toàn cộng (Full adder) • Mạch giải mã (Decoder) • Mạch mã hoá (Encoder) 40
- A A AB AB Ci 00 01 11 10 Ci 00 01 11 10 0 1 1 0 1 Ci 1 1 1 Ci 1 1 1 1 B B S = F(A, B, Ci) = Σ(1, 2, 4, 7) C0 = F(A, B, Ci) = Σ(3, 5, 6, 7) S = A’BCi’ + AB’Ci’ + A’B’Ci + ABCi C0 = AB + BCi + ACi S = A B Ci (Lưu ý: x y = x’y + xy’) 42
- • Ngõ vào: X0, X1, X2, X3 • Ngõ ra: Y0, Y1 Y0 = X1+ X3 Y1 = X2 + X3 44