Формування мінімальної днф
Позначимо через І1,І2,...І13 всі прості імпліканти функції f. Побудуємо імплікантну таблицю (таблицю покриття) по функції f.( Таблиця 2.2.3) Її рядки відповідають одиничним наборам функції f, а колонки - простим імплікантам. На перехрещенні рядка n і графи Ij проставимо знак +, якщо імпліканта покриває набір n, у протилежному випадку не ставимо нічого.
Імплікантна таблиця 2.2.3 відповідає функції, що задана у таблиці 2.2.1 і простим імплікантам, знайденим за допомогою таблиці 2.2.2. З клітинок таблиці 2.2.3, позначених знаком +, по кожному рядку складемо диз’юнкцію і візьмемо їхній добуток по всіх рядках. Отримаємо функцію F, яка для таблиці 2.2.3 має вигляд:
Після спрощення отримаємо:
F = (І9 + І13) І10*І8 (І13 + І15 І16 + І17) =
І після розкриття дужок функція F вказує на 8 ненадмірних покриття. Їм відповідають 8 мінімальних ДНФ. Серед них є одне ненадмірне покриття (підкреслене), якe співпадає з результатом, визначеним у наступній задачі 2.3.
F = I8 * I10 * I12 * I13
Таким чином, встановлюємо остаточний результат мінімізованої функції:
fДНФ = /abcd v /a/de v /cd/e v /bde
Завдання 2.3 Мінімізувати за «1» за допомогою карт Карно функцію, що задана таблицею 1 із завдання 2.2. Після мінімізації доповнити функції сполучними термами, підкреслити вирази для цих термів в аналітичному виразі функції і позначити їх на картах Карно.
Виконання завдання
На картах Карно кожному з 2n наборів відповідає одна клітинка. Якщо на даному наборі аргументів функція дорівнює 1, то у тій клітинці, яка відповідає даному набору, записується 1. Клітинки, які відповідають наборам, де функція недовизначена, заповнюються позначкою Х. Номери наборів проставлені у верхніх лівих кутках карт у шістнадцятковому коді.
Карта «/а» Карта «a»
/b b /b b
---------------- ----------------- ----------------- -----------------
0
|
4
X |
C
|
8
|
1
X |
5
1 |
D
X |
9
1 |
3
1 |
7
X |
F
1 |
B
|
2
1 |
6
|
B
1 |
A
X |
10
X |
14
|
1C
X |
18
|
1 1
|
15
|
17
|
19
X |
13
X |
17
1 |
1F
X |
1B
|
12
1 |
16
X |
1E
|
1A
1 |
/c c /c /c c /c
Результати склеювання позначені у зображеннях карт.
Склеєні набори:
1). Клітинки 2, 12, A, 1A - результат /cd/e, зникли 2 змінні - a, b. Це склеювання потрібне, щоб мінімізувати набори 2, 12 i 1A, на яких функція визначена і дорівнює 1.
2). Клітинки 3, 7, 13, 17 – результат /bde, зникли 2 змінні - a, c. Це склеювання потрібне, щоб мінімізувати набори 3 і 17, на яких функція визначена і дорівнює 1.
3). Клітинки 1, 5, D, 9 – результат /a/de, зникли 2 змінні - b, c. Це склеювання потрібне, щоб мінімізувати набори 5 і 9, на якому функція визначена і дорівнює 1.
4). Клітинки F, E, – результат /abcd, зниклa 1 зміннa – e. Це склеювання потрібне, щоб мінімізувати набори F і E, на яких функція визначена і дорівнює 1.
Невизначені набори функції у клітинках (наборах) 1, D, 7, A, 13 довизначаємо як «1», оскільки вони допомагають при склеюванні за «1».
Невизначені набори функції у клітинках (наборах) 4, 10, 1C, 19, 1F, 16 довизначаємо як «0», оскільки вони не допомагають при склеюванні за «1».
Всі набори беруть участь в одному склеюванні.
Остаточний результат:
FДНФ = = /abcd v /a/de v /cd/e v /bde
Значення функції співпадає з одним із результатів мінімізації у задачі 2.2.
Визначення сполучних термів.
Щоб позбутися негативного ефекту «гонок» сигналів, необхідно об’єднати всі сусідні набори, на яких функція приймає значення «1» і які не об’єднані в результаті мінімізації спільним склеюванням (спільним термом). Для цього використовують сполучний терм. У даній задачі групи1 і 2 мають сусідні клітинки (набори) на яких функція приймає значення «1» і які не об’єднані в результаті мінімізації спільним склеюванням. Доцільно поставити сполучний терм у клітинках 2 і 3 - /a/b/cd. Тоді
FДНФ = = /abcd v /a/de v /cd/e v /bde v /a/b/cd
Завдання 2.4 Мінімізувати за «0» за допомогою карт Карно функцію, що задана таблицею 1 із завдання 2.2. Після мінімізації доповнити функції сполучними термами, підкреслити вирази для цих термів в аналітичному виразі функції і позначити їх на картах Карно.
