- •Міністерство освіти I науки, молоді та спорту україни
- •Мінімізація складних логічних функцій методичні вказівки
- •Мінімізація складних логічних функцій
- •1. Мета роботи
- •2. Короткі теоретичні відомості
- •2. Аналітичний метод мінімізації логічних функцій (метод Квайна)
- •3. Мінімізація логічних функцій за допомогою карт Карно
- •4. Побудова комбінаційної схеми
- •4. Контрольні запитання
- •4. Лабораторне завдання
- •5. Зміст звіту
- •6. Література
2. Аналітичний метод мінімізації логічних функцій (метод Квайна)
Метод Квайна базується на застосуванні основних законів булевої алгебри.
2.1.Алгоритм одержання МДНФ (мінімальної диз’юнктивної нормальної форми) логічної функції:
Логічна функція представляється в ДДНФ. Причому, якщо вона задана таблицею істинності, то представляють функцію через записи “за одиницями”.
В одержаній ДДНФ проводять всі можливі операції неповного склеювання і потім поглинання.
w x + w x’ = w (x+x’) = w ( операція склеювання );
w + w z = w (1+z) = w ( операція поглинання ).
В результаті отримують скорочену диз’юнктивну нормальну форму (СДНФ), тобто диз’юнкцію самих коротких з всіх можливих елементарних добутків (прості імпліканти), які входять в дану логічну функцію.
Знаходять мінімальні диз’юнктивні нормальні форми за імплікантною матрицею.
Імплікантна матриця - це таблиця, на вертикальні й горизонтальні входи якої записують відповідно член ДДНФ и прості імпліканти з СДНФ заданої логічної функції.
Клітини імплікантної матриці, утворені на перехресті рядків з імплікантами та стовпців з членами СДНФ, відмічають хрестиками.
МДНФ знаходять як диз’юнкцію мінімального числа імплікант, які сумісно накривають хрестиками все колонки імплікантної матриці.
Приклад . Мінімізувати логічну функцію:
Розв’язок: 1. Функція задана в алгебраїчній формі, застосовуємо операції розгортання
для одержання ДДНФ, яка містить шість членів:
2. Операції склеювання проводять в наступному порядку:
виконуються всі можливі склеювання 1-ого члена з рештою;
виконуються всі можливі склеювання 2-ого члена з рештою, крім 1-ого;
виконуються всі можливі склеювання 3-ого члена з рештою, крім 1-ого и другого і т.д.
Склеюватися можуть тільки ті члени, у яких число змінних з запереченням відрізняється на одиницю. Результати склеювання й поглинання:
Зірочками відмічають ті члени ДДНФ, які поглинаються добутками, що утворились після склеювання.
В даному прикладі поглинаються всі шість початкових членів, тому ДДНФ заданої функції має вид:
До цього виразу операції склеювання й поглинання застосувати вже не можна, відповідно, вираз являється скороченою диз’юнктивною нормальною формою логічної функції, а його члени - простими імплікантами.
3. Формують для заданої функції імплікантну матрицю (табл.3)
Таблиця 3. Імплікантна матриця.
Прості |
Члени СДНФ | |||||
імпліканти (мінтерми) | ||||||
1 |
2 |
3 |
4 |
5 |
6 | |
X |
X |
|
|
|
| |
|
X |
X |
|
|
| |
|
|
X |
X |
|
| |
|
|
|
X |
X |
| |
|
|
|
|
X |
X |
Для отримання МДНФ необхідно знайти мінімальне число імплікант, які сумісно накривають хрестиками всі стовпці імплікантної матриці:
Складність логічної функції визначається числом змінних, що входять у її вираз: в заданій функції 14, в мінімальній - 9.
2.2. Перший алгоритм одержання МКНФ (мінімальної кон’юнктивної нормальної форми) логічної функції:
Логічну функцію представляють в ДКНФ. Якщо вона задана таблицею істинності, то її записують “за нулями”; якщо вона задана алгебраїчно в довільній кон’юнктивній формі, то для запису в СКНФ виконують всі можливі операції розгортування.
В отриманій СКНФ виконують всі можливі операції неповного склеювання і далі поглинання. В результаті отримують скорочену кон’юнктивну нормальну форму, члени якої являються простими макстермами.
МКНФ знаходять за макстермною матрицею.
Приклад. Логічна функція задана табл.4.Знайти МКНФ даної функції.
Таблиця істинності. Таблиця 4.
x1 |
x2 |
x3 |
f |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
Розв’язок:
1. Виписують задану функцію в СКНФ “по нулям” таблиці істинності:
2. Проводять операції склеювання й поглинання:
В даному прикладі поглинаються всі чотири члена початкового виразу, тому відповідно, СКНФ
3. Макстермна матриця задана табл.5.
Макстермна матриця. Таблица 5.
Прості імпликанти |
Члени СКНФ | |||
(макстерми) |
1 |
2 |
3 |
4 |
X |
X |
|
| |
X |
|
|
X | |
|
|
X |
X |
4. МКНФ логічної функції:
.
2.3. Другий алгоритм одержання МКНФ (мінімальної кон’юнктивної нормальної форми) логічної функції:
Логічна функція представляється в ДДНФ для заданої функції, взятої з запереченням.
Якщо функція задана таблицею істинності, то виписують ряд добутків всіх аргументів і з’єднують їх знаками диз’юнкції; кількість добутків повинно бути рівним числу наборів, на яких задана функція переходить в нуль; під кожним добутком записують набір аргументів, на яких функція рівна нулю, і над аргументами, рівними нулю, ставлять знаки заперечення. Якщо функція задана алгебраїчно в довільній формі, то спочатку знаходять її ДДНФ, а далі записують диз’юнкцію всіх добутків аргументів, котрі не ввійшли в ДДНФ. Знаходять МДНФ за розглянутим вище алгоритмом. Від одержаної МДНФ беруть заперечення і, після перетворень за формулами Де Моргана, отримують МКНФ.
Приклад. Знайти МКНФ, функції заданої табл.6.
Таблиця істинності. Таблица 6.
-
x1
x2
x3
f
0
0
0
1
0
0
1
1
0
1
0
0
0
1
1
0
1
0
0
0
1
0
1
1
1
1
0
0
1
1
1
1
Розв’язок: 1. ДДНФ, взята з запереченням:
2. Результати склеювання й поглинання:
3. МДНФ, взята з запереченням:
4. Взявши від обох частин останньої рівності заперечення й застосувавши формулу Де Моргана, отримують МКНФ логічної функції:
.