- •Міністерство освіти I науки, молоді та спорту україни
- •Мінімізація складних логічних функцій методичні вказівки
- •Мінімізація складних логічних функцій
- •1. Мета роботи
- •2. Короткі теоретичні відомості
- •2. Аналітичний метод мінімізації логічних функцій (метод Квайна)
- •3. Мінімізація логічних функцій за допомогою карт Карно
- •4. Побудова комбінаційної схеми
- •4. Контрольні запитання
- •4. Лабораторне завдання
- •5. Зміст звіту
- •6. Література
3. Мінімізація логічних функцій за допомогою карт Карно
В 1953 році Моріс Карно запропонував систему графічного представлення (карти Карно) й спрощення булевих виразів. При мінімізації логічних функцій в карті Карно обводять прямокутними контурами всі одиниці й далі записують мінімізовану функцію у вигляді суми логічних добутків, які описують ці контури.
При проведенні контурів притримуються правил:
контур повинний бути прямокутним;
всередині контуру повинні бути тільки клітини, заповненні одиницями;
число клітин, які знаходиться всередині контуру, повинно бути цілою степеню числа 2, тобто можна об’єднувати 1, 2, 4, 8,...,2к членів;
одні й ті ж клітини, заповнені одиницями, можуть входити в декілька контурів, тобто контури можуть пересікатись;
при проведенні контурів самий нижній й самий верхній рядки таблиці вважаються сусідніми, теж само - для крайнього лівого й крайнього правого стовпців;
число контурів повинно бути як можна меншим, а самі контури як можна більшими.
Кожен член МДНФ містить лиш ті аргументи, які для кожного контура мають значення або без інверсії або з інверсією.
Число кон’юнктивних членів в МДНФ рівне сумі об’єднань клітин.
Приклад. Логічна функція задана табл.7.
Таблиця істинності. Таблиця 7.
x1 |
x2 |
f |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
Знайти ДДНФ функції і провести мінімізацію за допомогою карти Карно.
Розв’язок: 1. Знаходять мінтерми:
-
x1
x2
mi
f
0
0
1
0
1
1
1
0
0
1
1
1
2. Логічна функція в формі ДДНФ:
.
3. Карта Карно логічної функції (рис.1.)
x1 x2 |
0 |
1 |
0 |
1 |
|
1 |
1 |
1 |
Рис.1. Карта Карно логічної функції
4. Одержуємо МДНФ функції
.
Чим більше клітин (2к ) входить в об’єднання, тим менше змінних - z входить в відповідний кон’юнктивний член, тобто простіша МДНФ.
z = n – k ,
де n – загальна кількість аргументів функції.
Процес отримання алгебраїчного виразу логічної функції, представленої на карті Карно, зводиться до зчитування об’єднань клітин. При цьому кожне об’єднання клітин зчитують в виді кон’юнктивного члена, в який входять змінні або їх інверсії, спільні для всіх мінтермів, відповідно цим клітинам.
Необ’єднані клітки зчитують в виді записаних в них мінтермів.
Приклад. Провести мінімізацію логічної функції, заданої в формі ДДНФ, за допомогою карти Карно (рис.2.).
x1x2 x3 |
00 |
01 |
11 |
10 |
0 |
1 |
1 |
|
|
1 |
1 |
1 |
1 |
|
Рис.2. Карта Карно.
Розв’язок. За допомогою перетворень, які виконуються за законами булевої алгебри, й з врахуванням об’єднаних на карті Карно клітин, отримують мінімізоване представлення (МДНФ) логічної функції:
;
,
.
В даному прикладі двом клітинам першого об’єднання відповідають мінтерми, які мають дві спільні змінні
.
Тому диз’юнкція цих мінтермів рівна цим двом спільним змінним: .
Чотирьом клітинам другого об’єднання відповідають мінтерми, які мають одну спільну змінну :
Диз’юнкція цих мінтермів також рівна спільній змінній .
Приклад. Мінімізувати за допомогою карти Карно (рис.3.) логічну функцію, задану в формі ДДНФ:
x1x2 x3 |
00 |
01 |
11 |
10 |
0 |
|
|
1 |
|
1 |
|
1 |
1 |
1 |
Рис.3. Карта Карно
Розв’язок: МДНФ функції:
.
Приклад . Мінімізувати за допомогою карти Карно (рис.4.) задану в формі ДДНФ логічну функцію:
.
x1x2 x3 |
00 |
01 |
11 |
10 |
0 |
1 |
1 |
1 |
1 |
1 |
|
1 |
|
1 |
Рис.4. Карта Карно:
Розв’язок: МДНФ функції: