Формування мінімальної днф
Позначимо через І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 = (I1 + I3)(I2 + I3 + I4)I13(I2 + I5 + I7 + I8 + I13)(I4 + I6 + I11 + I13)(I7 + I9)*
*(I11 + I12)(I8 + I10)(I9 + I10 + I12 + I13)I13 ;
Після спрощення отримаємо:
F = (I1 + I3)(I2 + I3 + I4)(I7 + I9)(I11 + I12)(I8 + I10)I13 =
= (I1*I2*I13 + I2*I3*I13 + I1*I3*I13 + I3*I13 + I1*I4*I13 + I3*I4*I13) *
* (I7*I8*I11 + I7*I10*I11 + I8*I9*I11 + I9*I10*I11 + I7*I8*I12 + I7*I8*I12 +
+ I7*I10*I12 + I8*I9*I12 + I9*I10*I12);
І після розкриття дужок функція F вказує на 54 ненадмірних покриття. Їм відповідають 54 мінімальних ДНФ. Серед них є два ненадмірних покриття, які, у залежності від обраного способу склеювання сусідніх еаборів у картах Карно, співпадають з результатом, визначеним у наступній задачі 2.3.
f = I1*I2*I3*I9*I10*I13; f = /bc/de v /ade v /ace v a/cd v ab/c v bd;
f = I1*I2*I4*I9*I10*I13; f = /bc/de v /ade v /acd v a/cd v ab/c v bd.
Завдання 2.3
Мінімізувати за «1» за допомогою карт Карно функцію, що задана таблицею 1 із завдання 2.2. Після мінімізації доповнити функції сполучними термами, підкреслити вирази для цих термів в аналітичному виразі функції і позначити їх на картах Карно.
Виконання завдання
На картах Карно кожному з 2n наборів відповідає одна клітинка. Якщо на даному наборі аргументів функція дорівнює 1, то у тій клітинці, яка відповідає даному набору, записується 1. Клітинки, які відповідають наборам, де функція недовизначена, заповнюються позначкою Х. Номери наборів проставлені у верхніх лівих кутках карт у шістнадцятковому коді.
Карта «/а» Карта «a»
/d d /d d
---------------- ----------------- ----------------- -----------------
0
|
1
|
3
X |
2
|
4
|
5
1 |
7
1 |
6
X |
С
X |
D
|
F
X |
E
1 |
8
|
9
X |
B
1 |
A
1 |
10
|
11
|
13
1 |
12
X |
1 4
|
15
X |
17
|
16
1 |
1С
|
1D
|
1F
1 |
1E
X |
18
X |
19
1 |
1B
X |
1A
1 |
|
|
| /b
|
|
|
|
| b
|
|
------ ----------------- ------- ------ ----------------- -------
/e e /e /e e /e
Результати склеювання позначені у зображеннях карт.
Склеєні набори:
1). Клітинки 7, 6. F, E - результат /acd, зникли 2 змінні - b, e. Це склеювання потрібне, щоб мінімізувати набори 7 і E, на яких функція визначена і дорівнює 1.
2). Клітинки F, E, B, A, 1F, 1E, 1B, 1A – результат bd, зникли 3 змінні - a, c, e. Це склеювання потрібне, щоб мінімізувати набори A, B, E, 1F, 1A, на яких функція визначена і дорівнює 1.
3). Клітинки 18, 19, 1B, 1A – результат ab/c, зникли 2 змінні - d, e. Це склеювання потрібне, щоб мінімізувати набори 19 і 1A, на яких функція визначена і дорівнює 1.
4). Клітинки 13, 12, 1В, 1A – результат a/cd, зникли 2 змінні - b, e. Це склеювання потрібне, щоб мінімізувати набори 13 і 1A, на яких функція визначена і дорівнює 1.
5). Клітинки 12, 16, 1E, 1A – результат ad/e, зникли 2 змінні – b, c. Це склеювання потрібне, щоб мінімізувати набори 16 і 1А, на яких функція визначена і дорівнює 1.
6). Клітинки 5, 15 – результат /bc/de, зникла 1 змінна a. Це склеювання потрібне, щоб мінімізувати набір 5, на якому функція визначена і дорівнює 1.
Невизначені набори функції у клітинках (наборах) 3, С, 19 довизначаємо як «0», оскільки вони не допомагають при склеюванні за «1».
Невизначені набори функції у клітинках (наборах) 6, F, 12, 15, 1E, 18, 1B довизначаємо як «1», оскільки вони допомагають при склеюванні за «1».
Набори 5, 15, 7, 6, B, A, 13, 16, 1F, 1F, 18, 19 – кожен бере участь в одному склеюванні.
Набори F, E, 12, 1E – кожен бере участь у двох склеюваннях.
Набір 1B бере участь у 3-х склеюваннях.
Набір 1A бере участь у 4-х склеюваннях.
Остаточний результат:
F = bd v /acd v ab/c v a/cd v ad/e v /bc/de
Визначення сполучних термів.
Щоб позбутися негативного ефекту «гонок» сигналів, необхідно об’єднати всі сусідні набори, на яких функція приймає значення «1» і які не об’єднані в результаті мінімізації спільним склеюванням (спільним термом). Для цього використовують сполучний терм. У даній задачі всі склеєні набори сполучені між собою крім 6-го (клітинки 5, 15). Останній набір має сусідню клітинку 7, яка входить до 1-го склеєного набору, тому доцільно включити сполучний терм у клітинки 5, 7 (/a/bce). Результуюча функція прийме вигляд:
F = bd v /acd v ab/c v a/cd v ad/e v /bc/de v /a/bce
Завдання 2.4
Мінімізувати за «0» за допомогою карт Карно функцію, що задана таблицею 1 із завдання 2.2. Після мінімізації доповнити функції сполучними термами, підкреслити вирази для цих термів в аналітичному виразі функції і позначити їх на картах Карно.
