Tối thiểu hóa hàm logic bằng phương pháp đại số

You're Reading a Free Preview
Pages 4 to 6 are not shown in this preview.

Để thực hiện một hàm logic bằng mạch điện tử, người ta luôn luôn nghĩ đến việc sử dụng lượng linh kiện ít nhất. Muốn vậy, hàm logic phải ở dạng tối giản, nên vấn đề rút gọn hàm logic là bước đầu tiên phải thực hiện trong quá trình thiết kế. Có 3 phương pháp rút gọn hàm logic:

- Phương pháp đại số

- Phương pháp dùng bảng Karnaugh

- Phương pháp Quine Mc. Cluskey

Phương pháp này bao gồm việc áp dụng các tính chất của hàm logic cơ bản. Một số đẳng thức thường được sử dụng được nhóm lại như sau:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Chứng minh các đẳng thức 1, 2, 3:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Các đẳng thức (1’), (2’), (3’) là song đối của (1), (2), (3).

Các qui tắc rút gọn:

-Qui tắc 1:Nhờ các đẳng thức trên nhóm các số hạng lại.

Thí dụ:Rút gọn biểu thức

Tối thiểu hóa hàm logic bằng phương pháp đại số

Theo (1)

Tối thiểu hóa hàm logic bằng phương pháp đại số

Vậy

Tối thiểu hóa hàm logic bằng phương pháp đại số

Theo (3)

Tối thiểu hóa hàm logic bằng phương pháp đại số

Và kết quả cuối cùng:

Tối thiểu hóa hàm logic bằng phương pháp đại số

-Qui tắc 2:Ta có thể thêm một số hạng đã có trong biểu thức logic vào biểu thức mà không làm thay đổi biểu thức.

Thí dụ:Rút gọn biểu thức:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Thêm ABC vào để được:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Theo (1) các nhóm trong dấu ngoặc rút gọn thành: BC + AC + AB

Vậy:

Tối thiểu hóa hàm logic bằng phương pháp đại số
- Qui tắc 3: Có thể bỏ số hạng chứa các biến đã có trong số hạng khác

Thí dụ 1: Rút gọn biểu thức AB +

Tối thiểu hóa hàm logic bằng phương pháp đại số
C + AC

Biểu thức không đổi nếu ta nhân một số hạng trong biểu thức với 1, ví dụ (B+

Tối thiểu hóa hàm logic bằng phương pháp đại số
):

Tối thiểu hóa hàm logic bằng phương pháp đại số

Triển khai số hạng cuối cùng của vế phải, ta được:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Thừa số chung:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Tóm lại:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Trong bài tóan này ta đã đơn giản được số hạng AC.

Thí dụ 2: Rút gọn biểu thức (A+B).(

Tối thiểu hóa hàm logic bằng phương pháp đại số
+C).(A+C)

Biểu thức không đổi nếu ta thêm vào một thừa số có trị =0, ví dụ B.

Tối thiểu hóa hàm logic bằng phương pháp đại số

Theo (2’)

Tối thiểu hóa hàm logic bằng phương pháp đại số

Vậy:

Tối thiểu hóa hàm logic bằng phương pháp đại số
Trong bài tóan này ta đã bỏ số hạng A+C

- Qui tắc 4:Có thể đơn giản bằng cách dùng hàm chuẩn tương đương có số hạng ít nhất.

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 của f:

Tối thiểu hóa hàm logic bằng phương pháp đại số
Vậy f(A,B,C) = A+B

Dùng bảng Karnaugh cho phép rút gọn dễ dàng các hàm logic chứa từ 3 tới 6 biến.

Xét hai tổ hợp biến AB và A

Tối thiểu hóa hàm logic bằng phương pháp đại số
hai tổ hợp này chỉ khác nhau một bit, ta gọi chúng là hai tổ hợp kề nhau.

Ta có: AB + A

Tối thiểu hóa hàm logic bằng phương pháp đại số
= A , biến B đã được đơn giản .

Phương pháp của bảng Karnaugh dựa vào việc nhóm các tổ hợp kề nhau trên bảng để đơn giản biến có giá trị khác nhau trong các tổ hợp này.

Công việc rút gọn hàm được thực hiện theo bốn bước:

ω Vẽ bảng Karnaugh theo số biến của hàm

ω Chuyển hàm cần đơn giản vào bảng Karnaugh

ω Gom các ô chứa các tổ hợp kề nhau lại thành các nhóm sao cho có thể rút gọn hàm tới mức tối giản

ω Viết kết quả hàm rút gọn từ các nhóm đã gom được.

- Bảng Karnaugh thực chất là một dạng khác của bảng sự thật, trong đó mỗi ô của bảng tương đương với một hàng trong bảng sự thật.

Để vẽ bảng Karnaugh cho n biến, người ta chia số biến ra làm đôi, phân nửa dùng để tạo 2n/2 cột, phân nửa còn lại tạo 2n/2 hàng (nếu n là số lẻ, người ta có thể cho số lượng biến trên cột lớn hơn số lượng biến cho hàng hay ngược lại cũng được). Như vậy, với một hàm có n biến, bảng Karnaugh gồm 2n ô, mỗi ô tương ứng với tổ hợp biến này. Các ô trong bảng được sắp đặt sao cho hai ô kề nhau chỉ khác nhau một đơn vị nhị phân (khác nhau một bit), điều này cho thấy rất thuận tiện nếu chúng ta dùng mã Gray. Chính sự sắp đặt này cho phép ta đơn giản bằng cách nhóm các ô kề nhau lại.

Với 2 biến AB, sự sắp đặt sẽ theo thứ tự: AB = 00, 01, 11, 10 (đây là thứ tự mã Gray, nhưng để cho 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 3 biến (A = MSB, và C = LSB) (H 2.3)

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.3)

Với 3 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 ý là ta có thể thiết lập bảng Karnaugh theo chiều nằm ngang hay theo chiều đứng.

Do các tổ hợp ở các bìa trái và phải kề nhau nên ta có thể coi bảng có dạng hình trụ thẳng đứng và các tổ hợp ở bìa trên và dưới cũng kề nhau nên ta có thể coi bảng có dạng hình trụ trục nằm ngang. Và 4 tổ hợp biến ở 4 góc cũng là các tổ hợp kề nhau.

Hình (H 2.4) là bảng Karnaugh cho 4 biến.

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.4)

Trong mỗi ô của bảng ta đưa vào giá trị của hàm tương ứng với tổ hợp biến, để đơn giản chúng ta có thể chỉ ghi các trị 1 mà bỏ qua các trị 0 của hàm. Ta có các trường hợp sau:

Từ hàm viết dưới dạng tổng chuẩn:

Thí dụ 1 :

Tối thiểu hóa hàm logic bằng phương pháp đại số

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.5)

Nếu hàm không phải là dạng chuẩn, ta phải đưa về dạng chuẩn bằng cách thêm vào các số hạng sao cho hàm vẫn không đổi nhưng các số hạng chứa đủ các biến.

Thí dụ 2 :

Tối thiểu hóa hàm logic bằng phương pháp đại số

Hàm này gồm 4 biến, nên để đưa về dạng tổng chuẩn ta làm như sau:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Và Hàm Y được đưa vào bảng Karnaugh như sau (H 2.6):

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.6)

Từ dạng số thứ nhất, với các trọng lượng tương ứng A=4, B=2, C=1

Thí dụ 3: f(A,B,C) = Σ(1,3,7). Hàm số sẽ lấy giá trị 1 trong các ô 1,3 và 7.

Từ dạng tích chuẩn: Ta lấy hàm đảo để có dạng tổng chuẩn và ghi trị 0 vào các ô tương ứng với tổ hợp biến trong tổng chuẩn này. Các ô còn lại chứa số 1.

Thí dụ 4 :

Tối thiểu hóa hàm logic bằng phương pháp đại số

Và bảng Karnaugh tương ứng (H 2.7).

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.7)

Từ dạng số thứ hai:

Thí dụ 5 : f(A,B,C) = Π(0,2,4,5,6)

Hàm sẽ lấy các trị 0 ở các ô 0, 2, 4, 5, 6. Dĩ nhiên là ta phải ghi các giá trị 1 trong các ô còn lại (H 2.7).

Từ bảng sự thật:

Thí dụ 6 : Hàm f(A,B,C) cho bởi bảng sự thật

Tối thiểu hóa hàm logic bằng phương pháp đại số

Ta ghi 1 vào các ô tương ứng với các tổ hợp biến ở hàng 1, 3 và 7, kết quả giống như ở thí dụ 1.

Trường hợp có một số tổ hợp cho giá trị hàm không xác định: nghĩa là ứng với các tổ hợp này hàm có thể có giá trị 1 hoặc 0, do đó, ta ghi dấu X vào các ô tương ứng với các tổ hợp này, lúc gom nhóm ta sử dụng nó như số 1 hay số 0 một cách tùy ý sao cho có được kết quả rút gọn nhất.


Page 2

Thí dụ 7: f(A,B,C,D) = Σ(3,4,5,6,7) với các tổ hợp từ 10 dến 15 cho hàm có trị bất kỳ (không xác định) (H 2.8).

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.8)

Các tổ hợp biến có trong hàm logic hiện diện trong bảng Karnaugh dưới dạng các số 1 trong các ô, vậy việc gom thành nhóm các tổ hợp kề nhau được thực hiện theo qui tắc sau:

- Gom các số 1 kề nhau thành từng nhóm sao cho số nhóm càng ít càng tốt. Điều này có nghĩa là số số hạng trong kết quả sẽ càng ít đi.

- Tất cả các số 1 phải được gom thành nhóm và một số 1 có thể ở nhiều nhóm.

- Số số 1 trong mỗi nhóm càng nhiều càng tốt nhưng phải là bội của 2k (mỗi nhóm có thể có 1, 2, 4, 8 ... số 1). Cứ mỗi nhóm chứa 2k số 1 thì tổ hợp biến tương ứng với nhóm đó giảm đi k số hạng.

- Kiểm tra để bảo đảm số nhóm gom được không thừa.

- Kết quả cuối cùng được lấy như sau:

Hàm rút gọn là tổng của các tích: Mỗi số hạng của tổng tương ứng với một nhóm các số 1 nói trên và số hạng này là tích của các biến, biến A (hay A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {}) là thừa số của tích khi tất cả các số 1 của nhóm chỉ chứa trong phân nửa bảng trong đó biến A có giá trị 1 (hay 0). Nói cách khác nếu các số 1 của nhóm đồng thời nằm trong các ô của biến A và A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {} thì biến A sẽ được đơn giản. Hình dưới đây minh họa việc lấy các thừa số trong tích

Thí dụ đối với bảng (H 2.9) ta có kết quả như sau:

- Hàm Y là hàm 4 biến A,B,C,D

Tối thiểu hóa hàm logic bằng phương pháp đại số
(H 2.9)

- Nhóm 1 chứa 2 số 1 (k=1), như vậy nhóm 1 sẽ còn 3 biến, theo hàng, 2 số 1 này ở 2 ô ứng với A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {}B và AB, biến A sẽ được đơn giản và theo cột thì 2 ô này ứng với tổ hợp

Tối thiểu hóa hàm logic bằng phương pháp đại số
.

Kết quả ứng với nhóm 1 là:

Tối thiểu hóa hàm logic bằng phương pháp đại số

- Nhóm 2 chứa 4 số 1 (4=22 , k=2), như vậy nhóm 2 sẽ còn 2 biến, theo hàng, 4 số 1 này ở 2 ô ứng với tổ hợp A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {}

Tối thiểu hóa hàm logic bằng phương pháp đại số
và A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {}B, biến B sẽ được đơn giản và theo cột thì 4 ô này ứng với tổ hợp CD và C
Tối thiểu hóa hàm logic bằng phương pháp đại số
, cho phép đơn giản biến D .

Kết quả ứng với nhóm 2 là: A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {}C.

- Nhóm 3 chứa 4 số 1 (4=22 , k=2), như vậy nhóm 2 sẽ còn 2 biến, theo hàng, 4 số 1 này ở ô ứng với tổ hợp A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {}B, theo cột 4 số 1 này chiếm hết 4 cột nên 2 biến Cvà D được đơn giản.

Kết quả ứng với nhóm 3 là: A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {}B.

Và hàm Y rút gọn là: Y =

Tối thiểu hóa hàm logic bằng phương pháp đại số

Dưới đây là một số thí dụ

Thí dụ 1 :Rút gọn hàmY =

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.10)

(H 2.10)

cho

Tối thiểu hóa hàm logic bằng phương pháp đại số

Thí dụ 2 :Rút gọn hàmY =f(A,B,C,D) = Σ(0,2,4,5,8,10,12,13) với A=MSB

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.11)

(H 2.11) cho

Tối thiểu hóa hàm logic bằng phương pháp đại số

Thí dụ 3 :Rút gọn hàm S cho bởi bảng sự thật:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Bảng Karnaugh: (H 2.12)

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.12)

Kết quả

:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Để rút gọn các hàm nhiều biến (5 và 6 biến) người ta có thể dùng bảng Karnaugh 4 biến. Dưới đây là vài thí dụ:

Thí dụ 4: 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 nhất vẽ 2 bảng Karnaugh cho 4 biến BCDE, một ứng với A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {} và một với A
  • Bảng ứng với A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {} dùng cho các số từ 0 đến 15
  • Bảng ứng với A dùng cho các số từ 16 đến 31
  • Nhóm các số 1 có cùng vị trí ở hai bảng, kết quả sẽ đơn giản biến A

- Nhóm các số 1 của từng bảng cho đến hết , kết quả được xác định như cách làm thông thường, nhớ A và A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {} trong từng nhóm (H 2.13).

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.13)

nhóm (1) cho :

Tối thiểu hóa hàm logic bằng phương pháp đại số
; (2) cho : BCE ; (3) cho :

Tối thiểu hóa hàm logic bằng phương pháp đại số

Vậy

Tối thiểu hóa hàm logic bằng phương pháp đại số

Thí dụ 5: 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)

Tương tự như trên nhưng phải vẽ 4 bảng cho:

A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {}

Tối thiểu hóa hàm logic bằng phương pháp đại số
cho các số (0-15) ; A__ size 12{ { size 24{A} } cSup { size 8{"__"} } } {}B cho các số (16-31) ;

AB cho các số (48-63) và A

Tối thiểu hóa hàm logic bằng phương pháp đại số
cho các số (32-47).

Tối thiểu hóa hàm logic bằng phương pháp đại số

(H 2.14)

Kết quả: (1) cho

Tối thiểu hóa hàm logic bằng phương pháp đại số
;

Tối thiểu hóa hàm logic bằng phương pháp đại số

Vậy:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Phương pháp Quine-Mc. Cluskey cũng dựa trên tính kề của các tổ hợp biến để đơn giản số biến trong các số hạng của biểu thức dạng tổng (minterm). Trong quá trình đơn giản này có thể xuất hiện các số hạng giống nhau mà ta có thể bỏ bớt được.

Phương pháp được thực hiện qua 2 giai đọan:

Giai đọan 1: Dựa trên tính kề của các tổ hợp biến để đơn giản số biến trong các số hạng của biểu thức dạng tổng (minterm).

Giai đọan 2: Kiểm tra và thực hiện việc tối giản .

Thí dụ dưới đây minh họa cho việc thực hiện phương pháp để rút gọn một 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 1

- Các minterm được nhóm lại theo số số 1 có trong tổ hợp và ghi lại trong bảng theo thứ tự số 1 tăng dần:

Trong thí dụ này có 3 nhóm:

Nhóm chứa một số 1 gồm các tổ hợp 1, 2, 4

Nhóm chứa hai số 1 gồm các tổ hợp 5, 6, 10, 12

Nhóm chứa ba số 1 gồm các tổ hợp 13, 14

Bảng 1:

Tối thiểu hóa hàm logic bằng phương pháp đại số
Tối thiểu hóa hàm logic bằng phương pháp đại số


Page 3

- Mỗi tổ hợp trong một nhóm sẽ được so sánh với mỗi tổ hợp trong nhóm kế cận. Nếu 2 tổ hợp chỉ khác nhau một biến, ta có thể dùng biểu thức AB + A___ size 12{ {A} cSup { size 8{"___"} } } {}B = B để đơn giản được 1 biến. Biến đã đơn giản được thay bởi dấu -. Đánh dấu x vào các tổ hợp đã xét để tránh sai sót

Như vậy, tổ hợp thứ nhất của nhóm thứ nhất 0001 so sánh với tổ hợp thứ nhất của nhóm thứ hai 0101 vì chúng chỉ khác nhau ở biến B, vậy chúng có thể đơn giản thành 0-01. Hai số hạng 1 và 5 đã được gom lại thành nhóm (1,5) và được ghi vào bảng 2.

Tiếp tục so sánh tổ hợp 0001 này với các tổ hợp còn lại của nhóm 2 (0110, 1010, 1100), vì chúng khác nhau nhiều hơn 1 bit nên ta không được kết quả nào 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 này để ghi nhớ.

Công việc tiến hành tương tự cho nhóm thứ hai và thứ ba.

Lưu ý: Nhận xét về việc so sánh các tổ hợp với nhau ta thấy có thể thực hiện nhanh được bằng cách làm bài toán trừ 2 số nhị phân tương ứng của 2 tổ hợp, nếu kết quả là một số có trị = 2k (1, 2, 4,8 ...) thì 2 tổ hợp đó so sánh được và biến được đơn giản chính là biến có trọng số =2k (thí dụ 2 tổ hợp 1 và 5 có hiệu số là 4 nên đơn giản được biến B), nếu hiệu số ≠ 2k thì 2 tổ hợp đó không so sánh được, tức không có biến được đơn giản.

Kết quả cho bảng thứ hai

- Bảng thứ hai gồm các tổ hợp đã được rút gọn và chỉ còn lại 2 nhóm (giảm một nhóm so với bảng 1).

Bảng 2

Tối thiểu hóa hàm logic bằng phương pháp đại số

Thực hiện công việc tương tự như trên với hai nhóm trong bảng thứ hai này, các số hạng sẽ được nhóm lại nếu chúng chỉ khác nhau một biến và có vị trí dấu - trùng nhau. Ta được bảng thứ 3.

Bảng 3:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Quan sát bảng thứ 3 ta thấy có các tổ hợp giống nhau, như vậy ta có thể lọai bỏ bớt các tổ hợp này và chỉ giữ lại một.

Kết quả của hàm rút gọn gồm tổng các số hạng tương ứng với các tổ hợp không gom thành nhóm trong các bảng đầu tiên, đó là tổ hợp (1,5) trong bảng 2, trị tương ứng là A___ size 12{ {A} cSup { size 8{"___"} } } {}C__ size 12{ {C} cSup { size 8{"__"} } } {}D với các tổ hợp còn lại trong bảng cuối cùng, đó là các tổ hợp (2,6 ; 10,14) mà trị tương ứng là C C__ size 12{ {C} cSup { size 8{"__"} } } {}D__ size 12{ {D} cSup { size 8{"__"} } } {} , (4,5 ; 12,13) cho B C__ size 12{ {C} cSup { size 8{"__"} } } {} và (4,6 ; 12,14) cho B D__ size 12{ {D} cSup { size 8{"__"} } } {} trong bảng 3. Vậy:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Đến đây, nếu quan sát các tổ hợp cho các kết quả trên, ta thấy các tổ hợp còn chứa các số hạng giống nhau (số 4 và số 12 chẳng hạn), như vậy kết quả trên có thể là chưa tối giản.

Giai đọan 2:

Để có thể rút gọn hơn nữa ta lập một bảng như sau:

Cột bên trái ghi lại các tổ hợp đã chọn được trong giai đoạn 1, các cột còn lại ghi các trị thập phân có trong hàm ban đầu.

Trên cùng hàng của tổ hợp ta đánh dấu * dưới các cột có số tương ứng (ví dụ hàng chứa tổ hợp 1,5 có các dấu * ở cột 1 và 5). Tương tự cho các tổ hợp khác.

Bảng 4

Tối thiểu hóa hàm logic bằng phương pháp đại số

Xét các cột chỉ chứa một dấu *, đó là các cột 1,2,10 và 13, các tổ hợp ở cùng hàng với các dấu * này sẽ được chọn, đó là các tổ hợp (1,5), (2,6 ; 10,14), (4,5 ; 12,13), tương ứng với A___ size 12{ {A} cSup { size 8{"___"} } } {}C__ size 12{ {C} cSup { size 8{"__"} } } {}D + C D__ size 12{ {D} cSup { size 8{"__"} } } {} + B C__ size 12{ {C} cSup { size 8{"__"} } } {}. Đánh dấu X dưới các cột tương ứng với các số có trong các tổ hợp đã chọn. Nếu tất cả các cột đều được đánh dấu thì các tổ hợp đã chọn đủ để diễn tả hàm ban đầu.

Trong trường hợp của bài toán này, sau khi chọn các tổ hợp nói trên thì tất cả cột đã được đánh dấu do đó kết quả cuối cùng là (sau khi loai bỏ tổ hợp B D__ size 12{ {D} cSup { size 8{"__"} } } {}):

Tối thiểu hóa hàm logic bằng phương pháp đại số

Thí dụ 2: Rút gọn hàm f(A,B,C,D) = Σ(3,4,6,7,8,11,12,15)

Giai đọan 1

Bảng 1:

Tối thiểu hóa hàm logic bằng phương pháp đại số

So sánh các tổ hợp của 2 nhóm gần nhau ta được kết quả cho bảng thứ hai

- Bảng thứ hai gồm các tổ hợp đã được rút gọn và chỉ còn lại 3 nhóm (giảm một nhóm so với bảng 1).

Bảng 2

Tối thiểu hóa hàm logic bằng phương pháp đại số

Bảng 3:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Kết quả của hàm rút gọn gồm tổng các số hạng tương ứng với các tổ hợp không gom thành nhóm: (4,6), (4,12), (8,12), (6,7) và (3,7;11,15)

Tối thiểu hóa hàm logic bằng phương pháp đại số

Giai đọan 2:

Bảng 4

Tối thiểu hóa hàm logic bằng phương pháp đại số

Các cột 3, và 8 chỉ chứa một dấu *, các tổ hợp ở cùng hàng với các dấu * này sẽ được chọn, đó là các tổ hợp (3,7;11,15) và , (8,12), tương ứng với CD và A C__ size 12{ {C} cSup { size 8{"__"} } } {}D__ size 12{ {D} cSup { size 8{"__"} } } {}.

Đánh dấu X dưới các cột tương ứng với các số có trong các tổ hợp đã chọn.

Đến đây ta thấy còn 2 cột 4 và 6 chưa có dấu X, trong lúc chúng ta còn đến 3 tổ hợp để chọn. Dĩ nhiên trong trường hợp này ta chỉ cần chọn tổ hợp (4,6) ( A___ size 12{ {A} cSup { size 8{"___"} } } {}BD__ size 12{ {D} cSup { size 8{"__"} } } {}) thay vì chọn (4,12) và (6,7) thì đủ dấu X để lấp đầy các cột.

Tóm lại:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Thí dụ về bài toán đầy đủ:

Thí dụ 1:

Cho hàm logic F(A, B, C) thỏa tính chất: F(A,B,C) = 1 nếu có một và chỉ một biến bằng 1

a- Lập bảng sự thật cho hàm F.

b- Rút gọn hàm F.

c- Diễn tả hàm F chỉ dùng hàm AND và NOT

Giải

a. Dựa vào điều kiện của bài toán ta có bảng sự thật của hàm F:

Tối thiểu hóa hàm logic bằng phương pháp đại số

b. Rút gọn hàm F

Bảng Karnaugh

Tối thiểu hóa hàm logic bằng phương pháp đại số
Tối thiểu hóa hàm logic bằng phương pháp đại số

c. Diễn tả hàm F chỉ dùng hàm AND và NOT

Dùng địnhlý De Morgan, lấy đảo 2 lần hàm F:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Thí dụ 2:

Cho hàm logic F(A, B, C, D) thỏa tính chất: F(A,B,C,D) = 1 khi có ít nhất 3 biến bằng 1

a- Rút gọn hàm F.

b- Diễn tả hàm F chỉ dùng hàm OR và NOT

Giải

a- Rút gọn hàm F

Ta có thể đưa hàm vô bảng Karnaugh mà không cần vẽ bảng sự thật.

Ta đưa số 1 vào tất cả các ô chứa 3 trị 1 trở lên

Tối thiểu hóa hàm logic bằng phương pháp đại số

Và kết quả của hàm rút gọn là:

F(A,B,C,D) = ABC + ABD + ACD + BCD

b- Diễn tả hàm F chỉ dùng hàm OR và NOT

Dùng định lý De Morgan cho từng số hạng trong tổng

Viết lại hàm F:

Tối thiểu hóa hàm logic bằng phương pháp đại số

Tối thiểu hóa hàm logic bằng phương pháp đại số