
- •1.1. Подання інформації в цифровій обчислювальній техніці
- •1.2. Перемикальні функції і логічні схеми
- •1.3. Елементарні функції та їх властивості
- •1. 4. Алгебри перемикальних функцій
- •1. 4. 1. Алгебра Буля
- •1.4.2. Алгебра Шефера
- •1.4.3. Алгебра Пірса
- •1.4.4. Алгебра Жегалкіна
- •1. 5. Функціонально повні системи перемикальних
- •1. 3. 2. Перетворення нормальних форм перемикальних функцій.
- •2. Комбінаційні схеми
- •2. 1. Проблема мінімізації перемикальних функцій
- •1. 6. 2. Метод мінімізації Квайна
- •1. 6. 3. Метод мінімізації Квайна – Мак-Класкі.
- •1. 4. 4. Графічний метод мінімізації функцій
- •1. 4. 5. Дужкова мінімізація булевих функцій
- •1. 4. 6. Мінімізація частково визначених функцій
- •1. 5. Мінімізація систем перемикальних функцій
- •1. 6. Методи опису електронних схем
- •1. 6. 1. Логічні оператори електронних схем
- •2. 1. Основні поняття
- •3. 4. Проектування комбінаційних схем на пзп.
- •3. 5. Проектування комбінаційних схем на плм
- •4. 1. Канонічний метод структурного синтезу автоматів
- •4. 2. Синтез мікропрограмних автоматів.
- •4.3. Забезпечення стабільної роботи автоматів.
1. 4. 5. Дужкова мінімізація булевих функцій
Розглянуті методи мінімізації булевих функцій дозволяють одержати мінімальну ДНФ. В деяких випадках мінімальна ДНФ піддається подальшому спрощенню за рахунок винесення за дужки спільних компонентів. Така операція називається дужковою мінімізацією або факторизацією булевих функцій. Процес факторизації описується за допомогою факторного алгоритму.
Розглянемо процес факторизації булевої функції на прикладі.
Приклад. Допустимо, що мінімальна ДНФ функції має вигляд:
.
Позначимо
кожну кон’юнкцію,
що входить в
,
буквами
,
,
,
відповідно:
;
;
;
.
Знайдемо спільні компоненти всіх можливих пар кон’юнкцій:
(
,
)
-
;
(
,
)
-
;
(
,
)
-
;
(
,
)
-
;
(
,
)
-
;
(
,
)
-
.
Пара (
,
)
має найбільше спільних компонентів
(
).
Запишемо мінімальну ДНФ функції, винісши
за дужки тільки
в парі кон’юнкцій (
,
):
.
Позначимо
утворені кон’юнкції
МДНФ функції
буквами
,
,
:
;
;
.
Знайдемо спільні компоненти всіх можливих пар кон’юнкцій:
( , ) - ; ( , ) - ; ( , ) - .
Довжина спільних компонентів однакова, тому в цьому разі можна вибрати один із можливих варіантів:
.
Порівняння одержаної дужкової форми функції з вихідною показує, що число входжень змінних в формулу зменшилось.
На
практиці зустрічаються автомати, що
мають декілька виходів. Вони описуються
системою функцій
,
,
...,
,
де
- число різних виходів. Виникає задача
сумісної мінімізації даних функцій,
котра може бути розв’язана
за два етапи. Спочатку спрощується кожна
функція окремо, а потім вилучається
спільна частина всіх функцій, для
реалізації котрої будується спеціальна
схема. Сигнали з виходу останньої
подаються на входи інших схем, що
виробляють ту чи іншу функцію. Однак
таке спрощення приводить до збільшення
числа ступенів (ярусів) автомата, що
зменшує його швидкодію.
1. 4. 6. Мінімізація частково визначених функцій
У реальних системах можливі випадки, коли не всі набори змінних подаються на входи комбінаційної схеми, тобто існують заборонені вхідні комбінації змінних. На таких наборах перемикальна функція вважається невизначеною, що дає додаткові можливості для спрощення комбінаційної схеми.
У таблиці істинності невизначені значення функції позначаються довільним символом, відмінним від 0 і 1, наприклад – прочерком.
Мінімізацію частково визначених функцій можна здійснювати будь-яким з наведених вище методів мінімізації. Для забезпечення найефективнішої мінімізації доцільно провести до визначення перемикальної функції на заборонених наборах таким чином, щоб спростити функцію за рахунок більших можливостей склеювання.
Мінімізація частково визначених функцій методом Вейча
Під час використання метода Вейча прочерки розглядають як одиниці в тих випадках, коли це приводить до збільшення розміру прямокутника, що відповідає імпліканті. В протилежному випадку прочерки розглядаються як нулі.
Приклад. Виконати мінімізацію перемикальної функції, заданої діаграмою Вейча (рис. 2.6).
Для визначення мінімальної форми запису функції замінюємо певні прочерки одиницями для збільшення розміру прямокутників, тобто отримання імплікант з меншою кількістю букв. Значення функції на наборі 1101, який не увійшов в прямокутники, вважаємо рівним нулю.
Диз’юнкція визначених простих імплікант дає МДНФ до визначеної перемикальної функції
.
Мінімізація частково визначених функцій аналітичними методами
Під час використання аналітичних методів, таких як методи Квайна та Квайна – Мак-Класкі, виконуються ті самі етапи мінімізації, що й для повністю визначених функцій.
Особливістю мінімізації частково визначених функцій в диз’юнктивних формах булевої алгебри складається з того, що перед початком мінімізації у ДДНФ перемикальної функції вводять усі конституенти заборонених наборів, тобто до визначають функцію на цих наборах одиничним значенням.
Далі виконують стандартні процедури мінімізації, але під час побудови таблиці покриття конституенти заборонених наборів не включають у заголовки стовпців таблиці покриття.
Приклад. Виконати мінімізацію частково визначеної перемикальної функції, що задана таблицею істинності (табл. ), методом Квайна.
Таблиця
Таблиця істинності
-
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
1
1
0
−
−
−
1
−
Без урахування наборів, на яких функція невизначена, маємо
.
Після доповнення конституентами одиниці, що відповідають забороненим наборам (помічені зірочками), аналітичний запис функції приймає вигляд
.
Для наглядності процесу мінімізації конституенти та імпліканти записуємо стовпцями. У дужках для конституент вказуємо їх номери, а для імплікант – номери конституент, що склеювалися. Терми, що поглинаються, викреслюємо.
(закреслюються перші два стовпці)
Виконавши всі можливі склеювання та поглинання, одержуємо СДНФ заданої перемикальної функції, що довизначена на заборонених наборах:
.
Але таке довизначення перемикальної функції на заборонених наборах можливо не є оптимальним. Для перевірки цього будуємо таблицю покриття (табл. 2. 15), в яку включаємо тільки ті конституенти одиниці. Котрі відповідають наперед визначеним одиничним значенням заданої перемикальної функції.
Таблиця 2. 15
Таблиця покриття
Виходячи з таблиці покриття знаходимо ТДНФ перемикальної функції, яка є її мінімальною МДНФ:
.
Мінімізація систем частково визначених функцій
Під час мінімізації систем частково визначених функцій використовується такий саме підхід, як і під час мінімізації окремих частково визначених функцій. На заборонених наборах значення функцій вважається одиничним, але на етапі вибору конституенти, що відповідають забороненим наборам, не включаються в таблицю покриття.
Приклад. Виконати мінімізацію системи частково визначених перемикальних функцій, заданих таблицею істинності (табл. ), методом Квайна – Мак-Класкі.
Таблиця
Параметри функцій
-
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
−
1
0
1
1
0
0
−
1
1
0
1
−
−
0
1
−
0
0
1
1
1
0
1
Виписуємо 0-куби, що відповідають забороненим наборам і наборам, на яких функції приймають одиничне значення. При цьому позначаємо належність конституент до заданих функцій. Виконуємо всі можливі склеювання і поглинання:
000(1, 2, 3) X00(1, 2, 3)
− − − − − − − X01(2)
001(1, 2) X11(1, 2, 3) X0X(2)
100(1, 2, 3) − − − − − − − X0X(2)
=
− − − − − − −
=
0X1(1,
2)
=
XX1(2)
011(1, 2, 3) 1X1(2, 3) XX1(2)
101(2, 3) − − − − − − −
− − − − − − − 00X(1, 2)
111(1, 2, 3) 10X(2, 3)
X00(1, 2, 3)
X11(1, 2, 3)
0X1(1, 2)
Z = 1X1(2, 3)
00X(1, 2)
10X(2, 3)
X0X(2)
XX1(2)
Складаємо таблицю покриття (табл. 2. 17), на підставі якої знаходимо форми функцій вихідної системи:
Таблиця 2.17
Таблиця покриття
;
;
.
Зауважимо, що для визначення мінімального покриття можна використовувати метод Петрика.
В дійсності часто буває так, що значення булевої функції на деяких наборах не визначено і може довизначуватися довільно. В цьому випадку довизначення функції було б доцільно виконувати так, щоб її мінімальна нормальна форма мала найменше число букв із всіх можливих варіантів довизначення.
Алгоритм пошуку мінімальної ДНФ частково визначеної функції можна представити наступним чином.
1. Знайти будь-яким відомим способом скорочену ДНФ функції, яка одержується довизначенням одиницями вихідної функції на всіх невизначених наборах.
2. Вибрати мінімальну ДНФ по імплікантній матриці, де в стовпцях виписані тільки ті конституенти одиниці функції , котрі відповідають повністю визначеним одиничним наборам.
Аналогічний алгоритм (з довизначенням нульовими наборами) може бути запропонований для пошуку КНФ. При цьому довизначення таблиці істинності функції може бути виконане по різному для КНФ і ДНФ. У випадках, коли мінімальних форм кілька, наводиться одна з них.
Приклад. Функція задана діаграмою Вейча , представленою табл.
1. 18, а.
Таблиця 1. 18
-
0
1
0
0
0
1
0
0
0
1
0
0
1
-
1
-
1
1
1
1
1
-
1
-
-
1
-
-
1
1
1
1
-
1
-
-
0
-
-
0
0
1
-
0
0
-
0
0
а) б) в)
Для пошуку мінімальної ДНФ заданої функції довизначемо її одиницями так, як показано на діаграмі Вейча, представленої табл. 1. 18, б.
Тоді
МДНФ заданої функції матиме вигляд:
.
Щоб одержати мінімальну КНФ даної функції необхідно її діаграму Вейча доповнити нулями, як показано на діаграмі, представленої табл. 1. 18, в, і записати заперечення функції по нулях:
.