- •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. 5. Функціонально повні системи перемикальних
функцій (базиси функцій).
Проблема функціональної повноти систем перемикальних функцій є однією з найважливіших проблем теорії цифрових автоматів. На практиці для побудови складних логічних схем використовують порівняно невеликий набір логічних елементів, тобто функції від багатьох аргументів подаються за допомогою принципу суперпозиції функціями від меншої кількості аргументів. Отже, системи логічних функцій, за допомогою яких можна аналітично подати будь-яку як завгодно складну перемикальну функцію. Можливість такого перетворення пов’язана з поняттям функціональної повноти систем перемикальних функцій. Знання функціонально повних систем необхідне при розробці комплектів інтегральних мікросхем, за допомогою яких можна побудувати довільний цифровий автомат.
Визначимо, які властивості повинні мати функції, що складають функціонально повні системи.
Будь-яку сукупність функцій можна вважати класом. Розрізняють функціонально замкнені та функціонально повні класи.
Клас функцій є функціонально повним, якщо за допомогою функцій даного класу можна представити методом суперпозиції будь-яку перемикальну функцію від будь-якої кількості аргументів.
Функціонально замкненим називають клас функцій, будь-яка суперпозиція функцій в якому не виводить за межі даного класу.
Серед функціонально замкнутих класів виділяють класи особливого типу, що називаються передповними.
Передповним називають такий клас функцій, додавання до якого будь-якої функції, яка не входить у даний клас, робить клас функцій функціонально повним.
Теорема про функціональну повноту систем функцій базується на приналежності функцій передповним класам.
Існують п’ять передповних класів перемикальних функцій:
− функцій, що зберігають 0 (К0);
− функцій, що зберігають 1 (К1);
− самодвоїстих функцій (КС);
− монотонних функцій (КМ);
− лінійних функцій (КЛ).
Розглянемо пердповні класи докладніше.
До
перемикальних функцій класу К0,
що зберігають 0, належать усі функції
,
для яких справедливе співвідношення
.
Іншими словами, це функція, яка на наборі нульових значень її змінних приймає значення 0. Серед елементарних функцій однієї змінної (табл. 1. 3) таких функцій дві: і . Серед елементарних функцій двох змінних – вісім: функції , , ..., (табл. 1. 4).
Оскільки
таблиця істинності для функцій, що
зберігають 0, у першому рядку значень
функції містить 0, то існує рівно
таких функцій.
До
функцій класу К1,
що зберігають 1, належать усі функції
,
для яких справедливе співвідношення
.
Прикладами
перемикальних функцій, що зберігають
1, є функції однієї змінної
і
(табл.. 1. 3) і функції двох змінних
,
,
,
,
,
,
(табл.. 1. 4). Оскільки таблиця істинності
для функцій, що зберігають 1, у останньому
рядку значень функції містить 1, то існує
рівно
таких функцій.
Перед тим як ввести поняття класу самодвоїстих функцій, визначимо, які функції називаються двоїстими.
Перемикальні
функції
і
називаються двоїстими
одна одній, якщо виконується співвідношення
.
Наприклад, двоїстими являються функції і , і , і та інші (табл. 1. 4).
До самодвоїстих перемикальних функцій належать такі функції, які двоїсті відносно до самих себе, тобто справедливе співвідношення
.
Якщо
домовитися називати протилежними
наборами набір (
і набір
,
то можна дати наступне визначення
самодвоїстої функції.
Булева функція називається самодвоїстою, якщо на будь-яких двох протилежних наборах вона приймає протилежні значення.
Самодвоїстими
являються функції
,
,
,
(табл. 1. 4). Із визначення самодвоїстої
функції виходить, що вона повністю
визначається своїми значеннями на
першій половині рядків таблиці істинності.
Тому число всіх самодвоїстих булевих
функцій дорівнює
.
Перше ніж дати визначення класу КМ монотонних функцій, дамо наступне визначення.
Двійковий
набір
не менший двійкового набору
,
(тобто
),
якщо для кожної пари (
,
)
справедливе співвідношення
.
Такі набори називають порівнянними.
Якщо
для двох наборів не виконується ні
співвідношення
,
ні співвідношення
,
то набори вважаються непорівнянними.
Наприклад набори 1001 і 1000 порівнянні
(1001
1000). а набори 1001 і 0110 є непорівнянні, так
як для них не виконується ні співвідношення
,
ні
.
Функція
називається монотонною,
якщо для двох будь-яких порівнянних
наборів
і
таких, що
має місце нерівність
.
Монотонними
є функції
,
,
,
,
,
(табл. 1. 4). Функція
із табл. 1. 4 не монотонна, так як
,
хоча набір (1, 0) менший, ніж набір (1, 1)
Функція називається лінійною (належить до класу КЛ), якщо є лінійним її поліном Жегалкіна, тобто
,
де
− коефіцієнти.
Лінійними є перемикальні функції , , , , , , , (табл. 1.4), так як
;
;
;
;
;
;
;
.
Оскільки
лінійна функція однозначно визначається
задаванням коефіцієнтів
,
,
...,
.
То число лінійних функцій дорівнює
.
Теорема Поста-Яблонського.
Для того щоб система перемикальних функцій була функціонально повною, необхідно і достатньо, щоб до її складу входила хоча б одна функція, що не зберігає 0, хоча б одна функція, що не зберігає 1, хоча б одна несамодвоїста функція, хоча б одна нелінійна функція і хоча б одна немонотонна функція.
Іншими словами, система функцій є функціонально повною тоді і тільки тоді, коли вона цілком не міститься в жодному із передповних класів.
Розглянемо приклади функціонально повних систем перемикальних функцій. Для більшої наглядності елементарні функції двох аргументів зведені у табл. 1. 10, в якій показана належність кожної з них передповним класам. У табл. 1. 10 знак „+“ відповідає належності, а знак „−“ − неналежності до відповідного класу.
Таблиця 1. 10
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 0 0 1 1 0 1 1 |
0 0 0 0 |
0 0 0 1 |
0 0 1 0 |
0 0 1 1 |
0 1 0 0 |
0 1 0 1 |
0 1 1 0 |
0 1 1 1 |
1 0 0 0 |
1 0 0 1 |
1 0 1 0 |
1 0 1 1 |
1 1 0 0 |
1 1 0 1 |
1 1 1 0 |
1 1 1 1 |
К0 |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
− |
− |
− |
− |
− |
− |
− |
− |
К1 |
– |
+ |
– |
+ |
− |
+ |
− |
+ |
− |
+ |
− |
+ |
− |
+ |
− |
+ |
КС |
− |
– |
− |
+ |
− |
+ |
− |
− |
− |
− |
+ |
− |
+ |
− |
− |
− |
КМ |
+ |
+ |
– |
+ |
− |
+ |
− |
+ |
− |
− |
− |
− |
− |
− |
− |
+ |
КЛ |
+ |
− |
− |
+ |
− |
+ |
+ |
− |
− |
+ |
+ |
− |
+ |
− |
− |
+ |
Ознакою функціональної повноти є, очевидно, наявність знака „−“ в кожному стовпці табл. 1. 10. Усі розглянуті алгебри мають функціонально повні системи перемикальних функцій, що видно із цієї таблиці.
Як приклад, у табл. 1. 11 показано входження функцій булевої алгебри до передповних класів (знак „+“ означає входження, а знак „−“ означає не входження до відповідних класів).
Таблиця 1. 11
-
Функція
Клас
К0
К1
КС
КМ
КЛ
І
+
+
−
+
−
АБО
+
+
−
+
−
НЕ
−
−
+
−
+
Алгебра Буля має надлишкову систему функцій, що видно з табл. 1. 11. З цієї системи можна вилучити функцію І або функцію АБО. Для забезпечення функціональної повноти достатньо залишити пару функцій: {І, НЕ} чи {АБО, НЕ}. В кожній колонці таблиці при цьому залишиться знак „−“, тобто буде виконана вимога теореми функціональної повноти.
