Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 28 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
28
Dung lượng
1,93 MB
Nội dung
Chương – Đại sớ boole CHƯƠNG 1: ĐẠI SỚ BOOLE Năm 1854 Georges Boole, triết gia đồng thời nhà toán học người Anh cho xuất tác phẩm lý luận logic, nội dung tác phẩm đặt mệnh đề mà để trả lời người ta phải dùng hai từ (có, yes) sai (khơng, no) Tập hợp thuật tốn dùng cho mệnh đề hình thành mơn Đại sớ Boole Đây mơn tốn học dùng hệ thớng sớ nhị phân mà ứng dụng kỹ thuật mạch logic, tảng kỹ thuật sớ Chương khơng có tham vọng trình bày lý thuyết Đại số Boole mà giới hạn việc giới thiệu hàm logic tính chất cần thiết để giúp sinh viên hiểu vận hành hệ thống logic 1.1 HÀM LOGIC CƠ BẢN 1.1.1 Một số định nghĩa - Trạng thái logic: trạng thái thực thể Xét mặt logic thực thể tồn tại hai trạng thái Thí dụ, đới với bóng đèn ta quan tâm trạng thái nào: tắt hay cháy Vậy tắt / cháy trạng thái logic - Biến logic dùng đặc trưng cho trạng thái logic thực thể Người ta biểu diễn biến logic ký hiệu (chữ hay dấu) nhận giá trị : Thí dụ trạng thái logic cơng tắc đóng mở, mà ta đặc trưng trị - Hàm logic diễn tả nhóm biến logic liên hệ phép toán logic Cũng biến logic, hàm logic nhận giá trị: tùy theo điều kiện liên quan đến biến Thí dụ, mạch gồm nguồn hiệu cấp cho bóng đèn qua hai cơng tắc mắc nới tiếp, bóng đèn cháy cơng tắc đóng Trạng thái bóng đèn hàm theo biến trạng thái công tắc Gọi A B tên biến cơng tắc, cơng tắc đóng ứng với trị hở ứng với trị Y hàm trạng thái bóng đèn, đèn cháy đèn tắt Quan hệ hàm Y biến A, B diễn tả nhờ bảng sau: A (hở) (hở) (đóng) (đóng) B (hở) (đóng) (hở) (đóng) Y=f(A,B) (tắt) (tắt) (tắt) (cháy) 1.1.2 Biểu diễn biến hàm logic 1.1.2.1 Giản đồ Venn Còn gọi giản đồ Euler, đặc biệt dùng lãnh vực tập hợp Mỗi biến logic chia không gian vùng khơng gian con, vùng giá trị biến (hay=1), vùng lại vùng phụ giá trị biến sai (hay=0) Thí dụ: Phần giao hai tập hợp A B (gạch chéo) biểu diễn tập hợp A B (A AND B) (H 1.1) (H 1.1) 1.1.2.2 Bảng thật Nếu hàm có n biến, bảng thật có n+1 cột n + hàng Hàng tên biến hàm, hàng lại trình bày tổ hợp n biến n tổ hợp có Các cột đầu ghi giá trị biến, cột cuối ghi giá trị hàm tương ứng với tổ hợp biến hàng (gọi trị riêng hàm) Thí dụ: Hàm OR biến A, B: f(A,B) = (A OR B) có bảng thật tương ứng A B 0 1 1 f(A,B) = A OR B 1 1.1.2.3 Bảng Karnaugh Đây cách biểu diễn khác bảng thật hàng bảng thật thay ô mà tọa độ (gồm hàng cột) xác định tổ hợp cho biến Bảng Karnaugh n biến gồm 2n ô Giá trị hàm ghi tại ô bảng Bảng Karnaugh thuận tiện để đơn giản hàm logic cách nhóm lại với Thí dụ: Hàm OR diễn tả bảng Karnaugh sau A\ B 0 1 1 1.1.2.4 Giản đồ thời gian Dùng để diễn tả quan hệ hàm biến theo thời gian, đồng thời với quan hệ logic Chương – Đại sớ boole Thí dụ: Giản đồ thời gian hàm OR biến A B, tại thời điểm có (hoặc 2) biến có giá trị hàm có trị hàm có trị tại thời điểm mà biến (H 1.2) 1.1.3 Qui ước Khi nghiên cứu hệ thống logic, cần xác định qui ước logic Qui ước không thay đổi śt q trình nghiên cứu Người ta dùng mức điện thấp cao để gán cho trạng thái logic Qui ước logic dương gán điện thấp cho logic điện cao cho logic Qui ước logic âm ngược lại 1.1.4 Hàm logic (Các phép toán logic) 1.1.4.1 Hàm NOT (đảo, bù) : Bảng thật Y=A A Y=A 1 1.1.4.2 Hàm AND [tích logic, tốn tử (.)] : Bảng thật A 0 1 B 1 Y = A.B Y=A.B 0 Ký hiệu cổng AND ngõ vào cho biến Nhận xét: Tính chất hàm AND phát biểu sau: - Hàm AND (hay nhiều) biến có giá trị tất biến - Hàm AND (hay nhiều) biến có giá trị có biến 1.1.4.3 Hàm OR [tổng logic, toán tử (+)] : Y=A+ B Bảng thật A 0 1 - Ký hiệu cổng OR ngõ vào B 1 Y=A + B 1 Nhận xét: Tính chất hàm OR phát biểu sau: - Hàm OR (hay nhiều) biến có giá trị tất biến - Hàm OR (hay nhiều) biến có giá trị có biến 1.1.4.4 Cổng NAND - Là kết hợp cổng AND cổng NOT, thực hàm Y = A.B (Ở xét cổng NAND ngã vào, độc giả tự suy trường hợp nhiều ngõ vào) - Ký hiệu cổng NAND (Gồm AND NOT, cổng NOT thu gọn lại vòng tròn) - Tương tự cổng AND, cổng NAND ta dùng ngõ vào làm ngõ kiểm soát Khi ngã kiểm soát = 1, cổng mở cho phép tín hiệu logic ngõ vào lại qua cổng bị đảo, ngõ kiểm soát = 0, cổng đóng, ngõ ln - Khi nối tất ngõ vào cổng NAND lại với nhau, hoạt động cổng đảo Chương – Đại số boole 1.1.4.5 Cổng NOR - Là kết hợp cổng OR cổng NOT, thực hàm Y = A + B Ký hiệu cổng NOR (Gồm cổng OR NOT, cổng NOT thu gọn lại vòng tròn) Các bảng thật giản đồ thời gian cổng NAND, NOR, sinh viên tự thực lấy Y = A⊕B 1.1.4.6 Hàm EX-OR (OR loại trừ) Bảng thật A 0 1 B 1 Y = A⊕B 1 Ký hiệu cổng EX-OR ngõ vào Nhận xét: Một sớ tính chất hàm EX - OR: - Hàm EX - OR biến có giá trị hai biến khác ngược lại Tính chất dùng để so sánh biến - Hàm EX - OR biến cho phép thực cộng hai số nhị phân bit mà không quan tâm tới số nhớ - Từ kết hàm EX-OR biến ta suy bảng thật cho hàm biến A 0 0 1 1 B 0 1 0 1 C 1 1 Y = A ⊕ B⊕ C 1 0 - Trong trường hợp biến (và suy rộng cho nhiều biến), hàm EX - OR có giá trị sớ biến sớ lẻ Tính chất dùng để nhận dạng chuỗi liệu có sớ bit chẵn hay lẻ thiết kế mạch phát chẵn lẻ 1.1.4.7 Cổng EX-NOR - Là kết hợp cổng EX-OR cổng NOT - Cổng EX-NOR có ngã vào ngõ - Hàm logic ứng với cổng EX-NOR Y = A ⊕ B = A B + A.B - Ký hiệu (H 3.10) - Các tính chất cổng EX-NOR giớng cổng EX-OR có ngõ đảo lại 1.1.5 Tính chất hàm logic bản: 1.1.5.1 Tính chất bản: ♦ Có phần tử trung tính cho tốn tử (+) (.): A + = A ; phần tử trung tính hàm OR A = A ; phần tử trung tính hàm AND ♦ Tính giao hốn: A+ B= B +A A B =B A ♦ Tính phới hợp: (A + B) + C = A + (B + C) = A + B + C (A B) C = A (B C) = A B C ♦ Tính phân bớ: - Phân bớ đối với phép nhân: A (B + C) = A B + A C - Phân bố đối với phép cộng: A + (B C) = (A + B) (A + C) Phân bố đối với phép cộng tính chất đặc biệt phép tốn logic ♦ Khơng có phép tính lũy thừa thừa số: A+A+ +A=A A.A A=A ♦ Tính bù: A=A A+A = A.A = 1.1.5.2 Tính song đối : Chương – Đại sớ boole Tất biểu thức logic [thay phép toán (+) phép (.) 1] hay ngược lại Điều chứng minh dễ dàng cho tất biểu thức Thí dụ : Α+Β = Β+Α ⇔ Α.Β = Β.Α Α+ AΒ = Α+Β ⇔ Α( A +Β) = Α.Β A+ = ⇔ A.0 = 1.1.5.3 Định lý De Morgan Định lý De Morgan phát biểu hai biểu thức: A + B + C = A B.C A.B.C= A + B + C Định lý De Morgan cho phép biến đổi qua lại hai phép cộng nhân nhờ vào phép đảo Định lý De Morgan chứng minh cách lập bảng thật cho tất trường hợp có biến A, B, C với hàm AND, OR NOT chúng 1.1.5.4 Sự phụ thuộc lẫn hàm logic Định lý De Morgan cho thấy hàm logic khơng độc lập với nhau, chúng biến đổi qua lại, biến đổi cần có tham gia hàm NOT Kết ta dùng hàm (AND NOT) (OR NOT) để diễn tả tất hàm Thí dụ: Chỉ dùng hàm AND NOT để diễn tả hàm sau: Y = A.B+ B.C+ A C Chỉ cần đảo hàm Y hai lần, ta kết quả: Y = Y = A.B+ B.C+ A C = A.B.B.C.A C Nếu dùng hàm OR NOT để diễn tả hàm làm sau: Y = A.B+ B.C+ A C = A + B + B + C + A + C 1.2 CÁC DẠNG CHUẨN CỦA HÀM LOGIC Một hàm logic biểu diễn tổ hợp tổng tích logic ♦ Nếu biểu thức tổng tích, ta có dạng tổng f(X,Y, Z) = XY + XZ + Y Z Thí dụ : ♦ Nếu biểu thức tích tổng, ta có dạng tích f(X,Y, Z) = (X + Y).(X + Z).(Y + Z) Thí dụ : Một hàm logic gọi hàm chuẩn số hạng chứa đầy đủ biến, dạng nguyên hay dạng đảo chúng f(X,Y, Z) = XYZ + X Y Z + XY Z tổng chuẩn Thí dụ : Mỗi số hạng tổng chuẩn gọi minterm f(X,Y, Z) = (X + Y + Z).(X+ Y + Z).(X + Y + Z) tích chuẩn Mỗi sớ hạng tích chuẩn gọi maxterm Phần sau cho phép viết hàm dạng tổng chuẩn hay tích chuẩn có bảng thật diễn tả hàm 1.2.1 Dạng tổng chuẩn Để có hàm logic dạng chuẩn, ta áp dụng định lý triển khai Shanon Dạng tổng chuẩn có từ triển khai theo định lý Shanon thứ nhất: Tất hàm logic triển khai theo biến dạng tổng hai tích sau: f(A,B, ,Z) = A.f(1,B, ,Z) + A f(0,B, ,Z) (1) Hệ thức (1) chứng minh dễ dàng cách cho A giá trị 1, ta có kết vế (1) luôn Thật Cho A=0: f(0,B, ,Z) = 0.f(1,B, ,Z) + f(0,B, ,Z) = f(0,B, ,Z) Cho A=1: f(1,B, ,Z) = 1.f(1,B, ,Z) + f(0,B, ,Z) = f(1,B, ,Z) Với biến, hàm f(A,B) triển khai theo biến A : f(A,B) = A.f(1,B) + A f(0,B) Mỗi hàm hai hàm vừa tìm lại triển khai theo biến B f(1,B) = B.f(1,1) + Β.f(1,0) & f(0,B) = B.f(0,1) + B f(0,0) Vậy: f(A,B) = AB.f(1,1) + A B.f(0,1) + A B f(1,0) + A B f(0,0) f(i,j) giá trị riêng f(A,B) A=i B=j bảng thật hàm Với biến, trị riêng f(A, B, C) f(i, j, k) A=i, B=j C=k ta được: f(A,B,C) = A.B.C.f(1,1,1) + A.B C f (1,1,0) + A B C.f(1,0,1) + A B C f(1,0,0) + A B.C.f(0,1,1) + A B C f(0,1,0) + A B C.f(0,0,1) + A B C f(0,0,0) Khi triển khai hàm biến ta tổng 22 = số hạng Khi triển khai hàm biến ta tổng 23 = số hạng Khi triển khai hàm n biến ta tổng 2n số hạng Mỗi sớ hạng tích tổ hợp biến trị riêng hàm Hai trường hợp xảy ra: - Giá trị riêng = 1, sớ hạng thu gọn lại biến: A B C.f(0,0,1) = A B C f(0,0,1) = - Giá trị riêng = 0, tích : A B C f(0,0,0)= f(0,0,0) = số hạng biến biểu thức tổng chuẩn Thí du: Cho hàm biến A,B,C xác định bảng thật: Chương – Đại số boole Hàng A B C 0 0 1 1 0 1 0 1 1 1 Z=f(A,B,C ) 1 1 Với hàm Z cho ta có trị riêng f(i, j, k) xác định bởi: f(0,0,1) = f(0,1,0) = f(0,1,1) = f(1,0,1) = f(1,1,1) =1 f(0,0,0) = f(1,0,0) = f(1,1,0) = - Hàm Z có trị riêng f(0,0,1)=1 tương ứng với giá trị tổ hợp biến hàng (1) A=0, B=0 C=1 đồng thời, A B C số hạng tổng chuẩn - Tương tự với tổ hợp biến tương ứng với hàng (2), (3), (5) (7) số hạng tổng chuẩn, tổ hợp: A B C , A B.C, A B C A.B.C - Với hàng lại (hàng 0,4,6), trị riêng f(A,B,C) = nên khơng xuất triển khai Tóm lại ta có: Z = A B C + A B C + A B.C + A B C + A.Β.C - Ý nghĩa định lý Shanon thứ nhất: Nhắc lại tính chất hàm AND OR: b 1.b2 bn = b1, b2 , bn đồng thời để a + a2 + + ap = cần biến a 1, a2, , ap Trở lại thí dụ trên, biểu thức logic tương ứng với hàng (A=0, B=0, C=1) viết A B C =1 A = , B = 1, C = đồng thời Biểu thức logic tương ứng với hàng A B C =1 A=0 ( A = 1), B=1, C=0 ( C = 1) đồng thời Tương tự, với hàng 3, ta có kết quả: A B.C , A B C A.Β.C Như vậy, thí dụ Z = hàng + hàng + hàng + hàng + hàng Z = A B C + A B C + A B.C + A B C + A.Β.C Tóm lại, từ hàm cho dạng bảng thật, ta viết biểu thức hàm dạng tổng chuẩn sau: - Số số hạng biểu thức số giá trị hàm thể bảng thật - Mỗi số hạng tổng chuẩn tích tất biến tương ứng với tổ hợp mà hàm có trị riêng 1, biến giữ nguyên có giá trị đảo giá trị = 1.2.2 Dạng tích chuẩn Đây dạng hàm logic có từ triển khai theo định lý Shanon thứ hai: Tất hàm logic triển khai theo biến dạng tích hai tổng sau: f(A,B, ,Z) = [ A + f(1,B, ,Z)].[A + f(0,B, ,Z)] (2) Cách chứng minh định lý Shanon thứ hai giống chứng minh định lý Shanon thứ Với hai biến, hàm f(A,B) triển khai theo biến A f(A,B) = [ A + f(1,B)].[A + f(0,B)] Mỗi hàm hai hàm vừa tìm lại triển khai theo biến B f(1,B) = [ B + f(1,1)].[B + f(1,0)] & f(0,B) = [ B + f(0,1)].[B + f(0,0)] f(A,B) = A + [ B + f(1,1)].[B + f(1,0)].A + [ B + f(0,1)].[B + f(0,0)] Vậy: f(A,B) = [ A + B + f(1,1)].[ A +B + f(1,0)].[A+ B + f(0,1)].[A+B + f(0,0)] Cũng dạng chuẩn thứ nhất, f(i,j) giá trị riêng f(A,B) A=i B=j bảng thật hàm Với hàm biến: f(A,B,C)=[ A + B + C +f(1,1,1)].[ A + B +C+f(1,1,0)].[ A +B+ C +f(1,0,1)].[ A +B+C+f(1,0,0)] [A+ B + C +f(0,1,1)].[A+ B +C+ f(0,1,0)].[A+B+ C +f(0,0,1)].[A+B+C+f(0,0,0)] Số số hạng triển khai n biến n Mỗi số hạng tổng (OR) biến trị riêng hàm - Nếu trị riêng số hạng rút gọn lại biến (0 trị trung tính phép cộng logic) A + B + C + f(0,0,0) = A + B + C f(0,0,0) = - Nếu trị riêng 1, số hạng triển khai = A + B + C + f(0,0,1) = f(0,0,1) = biến biểu thức tích chuẩn Lấy lại thí dụ trên: 10 Vậy: (A+B).( B +C).(A+C) = (A+B).( B +C) Trong tóan ta bỏ số hạng A+C - Qui tắc 4: Có thể đơn giản cách dùng hàm chuẩn tương đương có sớ hạng Thí dụ: Hàm f(A,B,C) = Σ(2,3,4,5,6,7) với trọng lượng A=4, B=2, C=1 Hàm đảo f: f(A, B,C) = Σ(0,1)= A B.C + A B.C = A B = A + B Vậy f(A,B,C) = A+B 1.3.2 Dùng bảng Karnaugh Dùng bảng Karnaugh cho phép rút gọn dễ dàng hàm logic chứa từ tới biến 1.3.2.1.Nguyên tắc Xét hai tổ hợp biến AB A B , hai tổ hợp khác bit, ta gọi chúng hai tổ hợp kề Ta có: AB + A B = A , biến B đơn giản Phương pháp bảng Karnaugh dựa vào việc nhóm tổ hợp kề bảng để đơn giản biến có giá trị khác tổ hợp Công việc rút gọn hàm thực theo bốn bước: Vẽ bảng Karnaugh theo số biến hàm Chuyển hàm cần đơn giản vào bảng Karnaugh Gom ô chứa tổ hợp kề lại thành nhóm cho rút gọn hàm tới mức tối giản Viết kết hàm rút gọn từ nhóm gom 1.3.2.2 Vẽ bảng Karnaugh - Bảng Karnaugh thực chất dạng khác bảng thật, bảng tương đương với hàng bảng thật Để vẽ bảng Karnaugh cho n biến, người ta chia số biến làm đôi, phân nửa dùng để tạo 2n/2 cột, phân nửa lại tạo 2n/2 hàng (nếu n sớ lẻ, người ta cho sớ lượng biến cột lớn số lượng biến cho hàng hay ngược lại được) Như vậy, với hàm có n biến, bảng Karnaugh gồm n ơ, ô tương ứng với tổ hợp biến Các ô bảng đặt cho hai ô kề khác đơn vị nhị phân (khác bit), điều cho thấy thuận tiện dùng mã Gray Chính đặt cho phép ta đơn giản cách nhóm ô kề lại Với biến AB, đặt theo thứ tự: AB = 00, 01, 11, 10 (đây thứ tự mã Gray, dễ ta dùng số nhị phân tương ứng để đọc thứ tự này: 0, 1, 3, 2) Thí dụ : Bảng Karnaugh cho hàm biến (A = MSB, C = LSB) (H 2.3) 14 Chương – Đại số boole (H 1.3) Với biến ABC, ta được: ABC = 000, 001, 011, 010, 110, 111, 101, 100 (số nhị phân tương ứng: 0, 1, 3, 2, 6, 7, 5, 4) Lưu ý ta thiết lập bảng Karnaugh theo chiều nằm ngang hay theo chiều đứng Do tổ hợp bìa trái phải kề nên ta coi bảng có dạng hình trụ thẳng đứng tổ hợp bìa kề nên ta coi bảng có dạng hình trụ trục nằm ngang Và tổ hợp biến góc tổ hợp kề Hình (H 1.4) bảng Karnaugh cho biến (H 1.4) 1.3.2.3 Chuyển hàm logic vào bảng Karnaugh Trong ô bảng ta đưa vào giá trị hàm tương ứng với tổ hợp biến, để đơn giản ghi trị mà bỏ qua trị hàm Ta có trường hợp sau: ♦ Từ hàm viết dạng tổng chuẩn: Thí dụ : f(A,B,C) = A B C + A B.C + A.B.C 15 (H 1.5) ♦ Nếu hàm dạng chuẩn, ta phải đưa dạng chuẩn cách thêm vào số hạng cho hàm không đổi sớ hạng chứa đủ biến Thí dụ : Y = A BC + AB D + A B C + A C D Hàm gồm biến, nên để đưa dạng tổng chuẩn ta làm sau: Y = A BC(D+ D ) + AB D (C+ C ) + A B C(D+ D ) + A C D(B+ B ) Y = A BCD+ A BC D + ABC D + AB C D + A B CD + A B C D + AB C D +A B CD Và hàm Y đưa vào bảng Karnaugh sau (H 1.6): (H 12.6) ♦ Từ dạng số thứ nhất, với trọng lượng tương ứng A=4, B=2, C=1 Thí dụ : f(A,B,C) = Σ(1,3,7) Hàm số lấy giá trị ô 1,3 ♦ Từ dạng tích chuẩn: Ta lấy hàm đảo để có dạng tổng chuẩn ghi trị vào ô tương ứng với tổ hợp biến tổng chuẩn Các ô lại chứa sớ Thí dụ : Y = f(A,B,C) = (A+B+C).(A+ B +C).( A +B+C).( A +B+ C ).( A + B C) Y = A B C + A B C + A B C + A B C + A.B C Và bảng Karnaugh tương ứng (H 1.7) 16 Chương – Đại số boole (H 1.7) ♦ Từ dạng số thứ hai: Thí dụ : f(A,B,C) = Π(0,2,4,5,6) Hàm lấy trị ô 0, 2, 4, 5, Dĩ nhiên ta phải ghi giá trị lại (H 2.7) ♦ Từ bảng thật: Thí dụ : Hàm f(A,B,C) cho bảng thật N A 0 0 1 1 B 0 1 0 1 C 1 1 f(A,B,C) 1 0 Ta ghi vào ô tương ứng với tổ hợp biến hàng 1, 7, kết giớng thí dụ ♦ Trường hợp có số tổ hợp cho giá trị hàm khơng xác định: nghĩa ứng với tổ hợp hàm có giá trị 0, đó, ta ghi dấu X vào tương ứng với tổ hợp này, lúc gom nhóm ta sử dụng sớ hay sớ cách tùy ý cho có kết rút gọn Thí dụ 7: f(A,B,C,D) = Σ(3,4,5,6,7) với tổ hợp từ 10 dến 15 cho hàm có trị (không xác định) (H 1.8) (H 1.8) 17 1.3.2.4 Qui tắc gom nhóm Các tổ hợp biến có hàm logic diện bảng Karnaugh dạng sớ ơ, việc gom thành nhóm tổ hợp kề thực theo qui tắc sau: - Gom số kề thành nhóm cho sớ nhóm tớt Điều có nghĩa sớ sớ hạng kết - Tất sớ phải gom thành nhóm sớ nhiều nhóm - Sớ sớ nhóm nhiều tớt phải bội k (mỗi nhóm có 1, 2, 4, sớ 1) Cứ nhóm chứa k sớ tổ hợp biến tương ứng với nhóm giảm k sớ hạng - Kiểm tra để bảo đảm sớ nhóm gom khơng thừa 1.3.2.4 Qui tắc rút gọn - Kết cuối lấy sau: Hàm rút gọn tổng tích: Mỗi sớ hạng tổng tương ứng với nhóm sớ nói sớ hạng tích biến, biến A (hay A ) thừa sớ tích tất sớ nhóm chứa phân nửa bảng biến A có giá trị (hay 0) Nói cách khác sớ nhóm đồng thời nằm biến A A biến A đơn giản Hình minh họa việc lấy thừa sớ tích Thí dụ đới với bảng (H 1.9) ta có kết sau: - Hàm Y hàm biến A,B,C,D - Nhóm chứa sớ (k=1), nhóm biến, theo hàng, sớ ô ứng với A B AB, biến A đơn giản theo cột ô ứng với tổ hợp C D Kết ứng với nhóm là: B C D - Nhóm chứa sớ (4=22 , k=2), nhóm biến, theo hàng, số ô ứng với tổ hợp A B A B, biến B đơn giản theo cột ứng với tổ hợp (H 1.9) CD C D , cho phép đơn giản biến D Kết ứng với nhóm là: A C - Nhóm chứa số (4=2 , k=2), nhóm biến, theo hàng, số ô ứng với tổ hợp A B, theo cột số chiếm hết cột nên biến Cvà D đơn giản Kết ứng với nhóm là: A B Và hàm Y rút gọn là: Y = BC D +A C + A B Dưới sớ thí dụ Thí dụ : Rút gọn hàm Y = f(A,B,C) = A B C+ A B.C+A B C +A B C+A.B.C 18 Chương – Đại số boole (H 1.10) (H 1.10) cho Y = A B + C Thí dụ : Rút gọn hàm Y = f(A,B,C,D) = Σ(0,2,4,5,8,10,12,13) với A=MSB (H 1.11) (H 1.11) cho Y = B C + BD Thí dụ : Rút gọn hàm S cho bảng thật: N 10→15 A 0 0 0 0 1 B 0 0 1 1 0 C 0 1 0 1 0 D 1 1 S 0 1 1 0 0 x (Không xác định) Bảng Karnaugh: (H 1.12) 19 (H 1.12) Kết : S = B C + B C 1.3.2.6 Rút gọn hàm nhiều biến cách dùng bảng Karnaugh biến: Để rút gọn hàm nhiều biến (5 biến) người ta dùng bảng Karnaugh biến Dưới vài thí dụ: Thí dụ : Rút gọn hàm f(A,B,C,D,E) = ∑ (0,2,8,10,13,15,16,18,24,25,26,29,31) với (7,9,14,30) không xác định - Trước vẽ bảng Karnaugh cho biến BCDE, ứng với A với A - Bảng ứng với A dùng cho số từ đến 15 - Bảng ứng với A dùng cho sớ từ 16 đến 31 - Nhóm sớ có vị trí hai bảng, kết đơn giản biến A - Nhóm số bảng hết , kết xác định cách làm thông thường, nhớ A A nhóm (H 1.13) (H 1.13) nhóm (1) cho : C E ; (2) cho : BCE ; Vậy f(A,B,C,D,E) = C E + BCE + BDE (3) cho : BDE Thí dụ : Rút gọn hàm f(A,B,C,D,E,F)=∑(2,3,6,7,8,9,12,13,14,17,24,25,28,29,30,40,41,44,45,46,56,57, 59,60,61,63) 20 Chương – Đại số boole Tương tự phải vẽ bảng cho: A B cho số (0-15) ; A B cho số (16-31) ; AB cho số (48-63) A B cho số (32-47) (H 1.14) Kết quả: (1) cho C E ; (2) A CDF + BCDF ; (3) A BCE ; (4) A BDEF ; (5) ABCF Vậy: f(A,B,C,D,E,F) = C E + A BCE + ABCF + A CDF + BCDF + A BDEF 1.3.3 Phương pháp Quine-Mc Cluskey Phương pháp Quine-Mc Cluskey dựa tính kề tổ hợp biến để đơn giản số biến số hạng biểu thức dạng tổng (minterm) Trong trình đơn giản xuất sớ hạng giớng mà ta bỏ bớt Phương pháp thực qua giai đọan: Giai đọan 1: Dựa tính kề tổ hợp biến để đơn giản số biến số hạng biểu thức dạng tổng (minterm) Giai đọan 2: Kiểm tra thực việc tới giản Thí dụ minh họa cho việc thực phương pháp để rút gọn hàm logic Thí dụ 1: Rút gọn hàm f(A,B,C,D) = Σ(1,2,4,5,6,10,12,13,14) ♣ Giai đọan - Các minterm nhóm lại theo sớ sớ có tổ hợp ghi lại bảng theo thứ tự số tăng dần: Trong thí dụ có nhóm: 21 Nhóm chứa số gồm tổ hợp 1, 2, Nhóm chứa hai sớ gồm tổ hợp 5, 6, 10, 12 Nhóm chứa ba sớ gồm tổ hợp 13, 14 Bảng 1: x x x x x x x x x 10 12 13 14 A 0 0 1 1 B 0 1 1 1 C 0 1 0 D 0 0 - Mỗi tổ hợp nhóm so sánh với tổ hợp nhóm kế cận Nếu tổ hợp khác biến, ta dùng biểu thức AB + A B = B để đơn giản biến Biến đơn giản thay dấu - Đánh dấu x vào tổ hợp xét để tránh sai sót Như vậy, tổ hợp thứ nhóm thứ 0001 so sánh với tổ hợp thứ nhóm thứ hai 0101 chúng khác biến B, chúng đơn giản thành 0-01 Hai số hạng gom lại thành nhóm (1,5) ghi vào bảng Tiếp tục so sánh tổ hợp 0001 với tổ hợp lại nhóm (0110, 1010, 1100), chúng khác nhiều bit nên ta không kết khác Như vậy, ta so sánh xong tổ hợp thứ nhất, đánh dấu x trước tổ hợp để ghi nhớ Công việc tiến hành tương tự cho nhóm thứ hai thứ ba Lưu ý: Nhận xét việc so sánh tổ hợp với ta thấy thực nhanh cách làm toán trừ số nhị phân tương ứng tổ hợp, kết số có trị = 2k (1, 2, 4,8 ) tổ hợp so sánh biến đơn giản biến có trọng số =2k (thí dụ tổ hợp có hiệu số nên đơn giản biến B), hiệu số ≠ 2k tổ hợp khơng so sánh được, tức khơng có biến đơn giản Kết cho bảng thứ hai - Bảng thứ hai gồm tổ hợp rút gọn lại nhóm (giảm nhóm so với bảng 1) Bảng A B C D 1,5 0 x 2,6 22 Chương – Đại số boole x x x x x x x x x 2,10 4,5 4,6 4,12 5,13 6,14 10,14 12,13 12,14 0 1 1 1 1 1 0 1 - 0 0 Thực công việc tương tự với hai nhóm bảng thứ hai này, sớ hạng nhóm lại chúng khác biến có vị trí dấu - trùng Ta bảng thứ Bảng 3: 2,6 ; 10,14 2,10 ; 6,14 4,5 ; 12,13 4,6 ; 12,14 4,12 ; 5,13 4,12 ; 6,14 A - B 1 1 C 1 0 - D 0 0 Quan sát bảng thứ ta thấy có tổ hợp giớng nhau, ta lọai bỏ bớt tổ hợp giữ lại Kết hàm rút gọn gồm tổng số hạng tương ứng với tổ hợp không gom thành nhóm bảng đầu tiên, tổ hợp (1,5) bảng 2, trị tương ứng A C D với tổ hợp lại bảng ći cùng, tổ hợp (2,6 ; 10,14) mà trị tương ứng C D , (4,5 ; 12,13) cho B C (4,6 ; 12,14) cho B D bảng Vậy: f(A,B,C,D) = A CD + CD + BC + BD Đến đây, quan sát tổ hợp cho kết trên, ta thấy tổ hợp chứa sớ hạng giớng (số số 12 chẳng hạn), kết chưa tới giản ♣ Giai đọan 2: Để rút gọn ta lập bảng sau: Cột bên trái ghi lại tổ hợp chọn giai đoạn 1, cột lại ghi trị thập phân có hàm ban đầu 23 Trên hàng tổ hợp ta đánh dấu * cột có sớ tương ứng (ví dụ hàng chứa tổ hợp 1,5 có dấu * cột 5) Tương tự cho tổ hợp khác Bảng 1,5 ← 2,6 ; 10,14 ← 4,5 ; 12,13 ← 4,6 ; 12,14 *↓ *↓ *↓ x 10 12 13 *↓ *↓ *↓ * x x * x * x x 14 *↓ *↓ *↓ * x x * x Xét cột chứa dấu *, cột 1,2,10 13, tổ hợp hàng với dấu * chọn, tổ hợp (1,5), (2,6 ; 10,14), (4,5 ; 12,13), tương ứng với A C D + C D + B C Đánh dấu X cột tương ứng với sớ có tổ hợp chọn Nếu tất cột đánh dấu tổ hợp chọn đủ để diễn tả hàm ban đầu Trong trường hợp toán này, sau chọn tổ hợp nói tất cột đánh dấu kết ći (sau loai bỏ tổ hợp B D ): f(A,B,C,D) = A CD + CD + BC Thí dụ 2: Rút gọn hàm f(A,B,C,D) = Σ(3,4,6,7,8,11,12,15) ♣ Giai đọan Bảng 1: A B C D x 0 x x 0 1 1 x 0 x 12 x 1 x 11 1 x 15 1 1 So sánh tổ hợp nhóm gần ta kết cho bảng thứ hai - Bảng thứ hai gồm tổ hợp rút gọn lại nhóm (giảm nhóm so với bảng 1) Bảng 4,6 24 A B C - D Chương – Đại số boole x x x x 4,12 8,12 3,7 3,11 6,7 7,15 11,15 0 1 1 - 0 1 1 0 1 1 Bảng 3: A - 3,7 ; 11,15 3,11 ; 7,15 B - C 1 D 1 Kết hàm rút gọn gồm tổng số hạng tương ứng với tổ hợp khơng gom thành nhóm: (4,6), (4,12), (8,12), (6,7) (3,7;11,15) f(A,B,C,D) = CD+ A B D + B C D + A C D + A BC ♣ Giai đọan 2: Bảng 3,7;11,15 ← 4,6 4,12 8,12 ← 6,7 *↓ * * * *↓ 11 12 *↓ * *↓ *↓ * x * x x 15 *↓ x x x Các cột 3, chứa dấu *, tổ hợp hàng với dấu * chọn, tổ hợp (3,7;11,15) , (8,12), tương ứng với CD AC D Đánh dấu X cột tương ứng với sớ có tổ hợp chọn Đến ta thấy cột chưa có dấu X, lúc đến tổ hợp để chọn Dĩ nhiên trường hợp ta cần chọn tổ hợp (4,6) ( A B D ) thay chọn (4,12) (6,7) đủ dấu X để lấp đầy cột Tóm lại: f(A,B,C,D) = CD + A B D + A C D Thí dụ tốn đầy đủ: Thí dụ 1: Cho hàm logic F(A, B, C) thỏa tính chất: F(A,B,C) = có biến a- Lập bảng thật cho hàm F 25 b- Rút gọn hàm F c- Diễn tả hàm F dùng hàm AND NOT Giải a Dựa vào điều kiện tốn ta có bảng thật hàm F: A 0 0 1 1 B 0 1 0 1 C 1 1 F(A,B,C) 1 0 b Rút gọn hàm F Bảng Karnaugh F(A,B.C) = A BC + A BC + A BC c Diễn tả hàm F dùng hàm AND NOT Dùng địnhlý De Morgan, lấy đảo lần hàm F: F(A,B.C) = F(A,B.C) = A BC + A BC + A BC = A BC.A BC.A BC Thí dụ 2: Cho hàm logic F(A, B, C, D) thỏa tính chất: F(A,B,C,D) = có biến a- Rút gọn hàm F b- Diễn tả hàm F dùng hàm OR NOT Giải a- Rút gọn hàm F Ta đưa hàm vô bảng Karnaugh mà không cần vẽ bảng thật Ta đưa số vào tất ô chứa trị trở lên 26 Chương – Đại số boole Và kết hàm rút gọn là: F(A,B,C,D) = ABC + ABD + ACD + BCD b- Diễn tả hàm F dùng hàm OR NOT Dùng định lý De Morgan cho số hạng tổng Viết lại hàm F: F(A,B,C,D) = ABC + ABD + ACD + BCD = A + B+ C + A + B+ D + A + C + D + B+ C + D BÀI TẬP Diễn tả mệnh đề biểu thức logic: a/ Tất biến A,B,C,D b/ Tất biến A,B,C,D c/ Ít biến X,Y,Z,T d/ Ít biến X,Y,Z,T e/ Các biến A,B,C,D có giá trị 0,1,1,0 Tính đảo hàm sau: a/ f1 = (A + B)( A + B ) b/ f2 = (A + B + C )(B + C + D)( A + C + D) c/ f3 = A(C + D) + ( A + C)( B + C + D) d/ f4 = (AB + C)(BC + D) + A BC + C D e/ f5 = A B C + A B C + A(BC + B C ) Chứng minh đại số biểu thức sau: a/ A.B + A B = A B + A.B b/ A.B + A C = (A + C)(A + B) c/ A.C + B.C = A C + B.C d/ (A + B)(A + C)(B+ C) = (A + B)(A + C) e/ (A + C)(B+ C ) = (A + C)(B + C ) Viết dạng tổng chuẩn hàm xác định bởi: a/ f(A,B,C) = số nhị phân (ABC)2 số chẵn b/ f(A,B,C) = có biến sớ = c/ f(A,B,C) = số nhị phân (ABC)2 >5 d/ f(A,B,C) = số biến số sớ chẵn e/ f(A,B,C) = có biến số =1 27 Viết dạng tích chuẩn hàm tập Viết dạng số tập Viết dạng số tập Rút gọn hàm phương pháp đại số (A = MSB) a/ f1 = ABC + A B C + AB C D b/ f2 = (A+BC) + A ( B + C )(AD+C) c/ f3 = (A+B+C)(A+B+ C )( A +B+C)( A +B+ C ) d/ f4(A,B,C,D) = Σ(0,3,4,7,8,9,14,15) e/ f5 = A B + AC + BC f/ f6 = (A+ C )(B+C)(A+B) Dùng bảng Karnaugh rút gọn hàm sau: (A = MSB) a/ f(A,B,C) = Σ(1,3,4) b/ f(A,B,C) = Σ(1,3,7) c/ f(A,B,C) = Σ(0,3,4,6,7) d/ f(A,B,C) = Σ(1,3,4) Các tổ hợp biến 6,7 cho hàm không xác định e/ f(A,B,C) = A B.C + A B.C + A.B.C + A.B.C f/ f(A,B,C,D) = Σ(5,7,13,15) g/ f(A,B,C,D) = Σ(0,4,8,12) h/ f(A,B,C,D) = Σ(0,2,8,10) i/ f(A,B,C,D) = Σ(0,2,5,6,9,11,13,14) j/ f(A,B,C,D) = Π(0,1,5,9,10,15) k/ f(A,B,C,D) = Π (0,5,9,10) với tổ hợp biến (2,3,8,15) cho hàm không xác định l/ f(A,B,C,D,E) = Σ(2,7,9,11,12,13,15,18,22,24,25,27,28,29,31) m/ f(A,B,C,D.E) = Σ(0,2,8,10,13,15,16,18,24,25,26,29,31) với tổ hợp biến (7,9,14,30) cho hàm không xác định n/ f(A,B,C,D,E,F) = Σ(2,3,6,7,8,9,12,13,14,17,24,25,28,29,30,40,41,44,45,46,56,57,59,60,61,63 ) o/ f(A,B,C,D,E,F) = Σ(9,11,13,15,16,18,20,22,25,27,29,31,32,34,36,38,41,43,45,47,48,50,52,54 ) 10 Làm lại tập từ 9f phương pháp Quine-Mc Cluskey 28