Виконання завдання
На картах Карно кожному з 2n наборів відповідає одна клітинка. Якщо на даному наборі аргументів функція дорівнює 1, то у тій клітинці, яка відповідає даному набору, записується 1. Клітинки, які відповідають наборам, де функція недовизначена, заповнюються позначкою Х. Номери наборів проставлені у верхніх лівих кутках карт у шістнадцятковому коді.
Карта «/а» Карта «a»
/b b /b b
---------------- ----------------- ----------------- -----------------
0
0 |
4
X |
C
0 |
8
0 |
1
X |
5
|
D
X |
9
|
3
|
7
X |
F
|
B
0 |
2
|
6
0 |
B
|
A
X |
10
X |
14
0 |
1C
X |
18
0 |
1 1
0 |
15
0 |
17
0 |
19
X |
13
X |
17
|
1F
X |
1B
0 |
12
|
16
X |
1E
0 |
1A
|
/c c /c /c c /c
Результати склеювання позначені у зображеннях карт.
Склеєні набори:
1). Клітинки 0, 4, C, 8, 10, 14, 1C, 18 - результат /d/e, зникли 3 змінні - a, b, c. Це склеювання потрібне, щоб мінімізувати набори 0, C, 8, 14, 18 на яких функція визначена і дорівнює 0.
2). Клітинки 10, 14, 1C, 18, 11, 15, 1D, 19 – результат a/d, зникли 3 змінні - b, c, e. Це склеювання потрібне, щоб мінімізувати набори 11, 15 і 1D, на яких функція визначена і дорівнює 0.
3). Клітинки 1C, 1F, 1D, 1E – результат abc, зникли 2 змінні - d, e. Це склеювання потрібне, щоб мінімізувати набІр 1E, на якому функція визначена і дорівнює 0.
4). Клітинки 4, 6, 14, 16 – результат /bc/e, зникли 2 змінні – а, d. Це склеювання потрібне, щоб мінімізувати набір 6, на якому функція визначена і дорівнює 0.
5) Клітинки B, 1B – результат b/cde, зникла 1 змінна – а, d. Це склеювання потрібне, щоб мінімізувати набори B, 1B, на яких функція визначена і дорівнює 0
Невизначені набори функції у клітинках (наборах) 1, D, 7, A, 13 довизначаємо як «1», оскільки вони не допомагають при склеюванні за «0».
Невизначені набори функції у клітинках (наборах) 4, 10, 1C, 19, 1F, 16 довизначаємо як «0», оскільки вони допомагають при склеюванні за «0».
Набори 0, 4, C, 8, 6, 11, 15, 19, 1F, 1B, 16, 1E беруть участь в одному склеюванні.
Набори 14, 18, 1D, беруть участь у двох склеюванні.
Набір 1С бере участь у трьох склеюваннях.
Результат:
/FДНФ = /d/e v a/d v abc v /bc/e v b/cde
Пряме значення функції f буде отримане згідно з правилами де Моргана у вигляді кон’юктивної нормальної форми:
/(/f ДНФ )= f КНФ = /(/d/e v a/d v abc v /bc/e v b/cde) =
=(d + e)(/a + d)(/a + /b + /c)(b +/c + e)(/b + c + /d + /e)
Визначення сполучних термів.
Щоб позбутися негативного ефекту «гонок» сигналів, необхідно об’єднати всі сусідні набори, на яких функція приймає значення «1» і які не об’єднані в результаті мінімізації спільним склеюванням (спільним термом). Для цього використовують сполучний терм. У даній задачі всі групи вже сполучені між собою.
Завдання 3.1
Реалізувати функцію, отриману у результаті виконання завдання 2.3, у базисі Буля. На виході кожного елемента написати формулу сигналу, який даним елементом реалізується. Елементи можуть мати довільну кількість входів. Для 5 довільних вхідних наборів визначити рівні сигналів (0 або 1) на виході кожного елемента. Навести таблиці істинності задіяних елементів.
Функція для реалізації:
FДНФ = = /abcd v /a/de v /cd/e v /bde
Результати синтезу наведені на рисунку 3.1.
Таблиці істинності логічних елементів у базисі Буля:
Номер набору |
Аргументи |
Функція |
|||
a |
b |
c |
I (&) |
АБО (+) |
|
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
2 |
0 |
1 |
0 |
0 |
1 |
3 |
0 |
1 |
1 |
0 |
1 |
4 |
1 |
0 |
0 |
0 |
1 |
5 |
1 |
0 |
1 |
0 |
1 |
6 |
1 |
1 |
0 |
0 |
1 |
7 |
1 |
1 |
1 |
1 |
1 |
Номер набору |
Аргументи |
Функція |
а |
НЕ |
|
0 |
0 |
1 |
1 |
1 |
0 |
Завдання 3.2
Реалізувати функцію, отриману у результаті виконання завдання 2.3, у базисі Буля. На виході кожного елемента написати формулу сигналу, який даним елементом реалізується. Елементи повинні мати не більше двох входів. Для 5 довільних вхідних наборів визначити рівні сигналів (0 або 1) на виході кожного елемента. Навести таблиці істинності задіяних елементів.
ДНФ функція для реалізації:
FДНФ = = /abcd v /a/de v /cd/e v /bde
Результати синтезу наведені на рисунку 3.2.1
Визначення рівнів вихідних сигналів на виходах елементів зображена на рисунку 3.2.2:
Таблиці істинності двовходових логічних елементів у базисі Буля:
Номер набору |
Аргументи |
Функція |
||
a |
b |
I (&) |
АБО (+) |
|
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
2 |
1 1 |
0 |
0 |
1 |
3 |
1 |
0 |
1 |
|
Номер набору |
Аргументи |
Функція |
а |
НЕ |
|
0 |
0 |
1 |
1 |
1 |
0 |
Завдання 3.3
Реалізувати функцію, отриману у результаті виконання завдання 2.3, у монобазисі І-НЕ (базисі Шиффера). На виході кожного елемента І-НЕ написати формулу сигналу, який даним елементом реалізується. Елементи можуть мати довільну кількість входів. Для 5 довільних вхідних наборів визначити рівні сигналів (0 або 1) на виході кожного елемента. Навести таблиці істинності задіяних елементів.
Функція для реалізації:
FДНФ = = /abcd v /a/de v /cd/e v /bde
Результати синтезу наведені на рисунку 3.3.
Таблиця істинності логічних елементів у базисі Шиффера І - НЕ:
Номер набору |
Аргументи |
Функція |
||
A |
b |
c |
І – НЕ |
|
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
2 |
0 |
1 |
0 |
1 |
3 |
0 |
1 |
1 |
1 |
4 |
1 |
0 |
0 |
1 |
5 |
1 |
0 |
1 |
1 |
6 |
1 |
1 |
0 |
1 |
7 |
1 |
1 |
1 |
0 |
Завдання 3.4
Реалізувати функцію, мінімізовану у завданні 2.3, у монобазисі Шеффера (І - НЕ). На виході кожного елемента написати формулу сигналу, який даним елементом реалізується. Елементи повинні мати не більше двох входів. Навести таблицю істинності елемента Шеффера.
Функція для реалізації:
FДНФ = = /abcd v /a/de v /cd/e v /bde
Таблиця істинності двовходових елементів у базисі Шиффера І - НЕ:
Номер набору |
Аргументи |
Функція |
|
a |
b |
І – НЕ |
|
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
2 |
1 |
0 |
1 |
3 |
1 |
1 |
0 |
Схема реалізації функції f у монобазисі І – НЕ зображена на рис 3.4.1
Значення рівнів вихідних сигналів на виходах елементів зображене на рисунку 3.4.2:
Завдання 3.5
Реалізувати у монобазисі АБО-НЕ (базисі Пірса) функцію, отриману в результаті виконання завдання 2.4. На виході кожного елемента АБО-НЕ написати формулу сигналу, який даним елементом реалізується. Елементи можуть мати довільну кількість входів. Для 5 довільних вхідних наборів визначити рівні сигналів (0 або 1) на виході кожного елемента схеми. Навести таблиці істинності задіяних елементів.
/FДНФ = /d/e v a/d v abc v /bc/e v b/cde
Пряме значення функції f буде отримане згідно з правилами де Моргана у вигляді кон’юктивної нормальної форми:
/(/f ДНФ )= f КНФ = /(/d/e v a/d v abc v /bc/e v b/cde) =
=(d + e)(/a + d)(/a + /b + /c)(b +/c + e)(/b + c + /d + /e)
Схема реалізації функції f зображена на рис. 3.5.
Таблиця істинності для логічних елементів у монобазисі АБО-НЕ (базисі Пірса):
Номер набору |
Аргументи |
Функція |
||
A |
b |
c |
АБО-НЕ |
|
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
2 |
0 |
1 |
0 |
0 |
3 |
0 |
1 |
1 |
0 |
4 |
1 |
0 |
0 |
0 |
5 |
1 |
0 |
1 |
0 |
6 |
1 |
1 |
0 |
0 |
7 |
1 |
1 |
1 |
0 |
Завдання 3.6
Реалізувати у монобазисі АБО-НЕ (базисі Пірса) функцію, отриману в результаті виконання завдання 2.4. На виході кожного елемента АБО-НЕ написати формулу сигналу, який даним елементом реалізується. Елементи повинні мати не більше двох входів. Для 5 довільних вхідних наборів визначити рівні сигналів (0 або 1) на виході кожного елемента схеми. Навести таблицю істинності елемента Пірса.
/FДНФ = /d/e v a/d v abc v /bc/e v b/cde
Пряме значення функції f буде отримане згідно з правилами де Моргана у вигляді кон’юктивної нормальної форми:
/(/f ДНФ )= f КНФ = /(/d/e v a/d v abc v /bc/e v b/cde) =
=(d + e)(/a + d)(/a + /b + /c)(b +/c + e)(/b + c + /d + /e)
Таблиця істинності для двовходових логічних елементів у монобазисі Пірса АБО-НЕ:
Номер набору |
Аргументи |
Функція |
|
a |
b |
АБО-НЕ |
|
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
2 |
0 |
1 |
0 |
3 |
0 |
1 |
0 |
Схема реалізації функції f зображена на рис. 3.6.1.
Визначення рівнів сигналів на виходах елементів схеми при 5-ти довільних вхідних наборах подане на рис. 3.6.2:
Завдання 3.7
Реалізувати функцію, мінімізовану у завданні 2.3. за допомогою дешифраторів. У кожного із задіяних дешифраторів кількість виходів не повинна перевищувати 16. Навести таблиці істинності, які пояснюють роботу задіяних дешифраторів.
Функція, яку потрібно синтезувати за допомогою дешифраторів:
FДНФ = = /abcd v /a/de v /cd/e v /bde
З функції отримуємо:
/abcd – 0111x – відповідає наборам - 01110, 01111 = (E, F)16 = (14, 15)10 .
/a/de – 0xx01 - відповідає наборам - 00001, 00101, 01001, 11101= (1, 5, 9, 1D)16 =
= (1, 5, 9, 29)10 .
/cd/e –xx010 - відповідає наборам - 00010, 01010, 10010, 11010 = (2, A, 12, 1A)16 =
= (2, 10, 18, 26)10.
/bde – x0x11 - відповідає наборам - 00011, 00111, 10011, 10111 = (3, 7, 13, 17)16 =
= (3, 7, 19, 23)10 .
Для реалізації функції використовуємо три дешифратори: D0, D1, D2.
D0 – “1 у 2”; D1 – “4 у 16”; D2 – “4 у 16”.
Таблиця істинності для дешифратора D0.
N |
Входи |
Виходи |
||
a |
|
|||
1 |
ВК |
1 |
0 |
|
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
X |
Х |
0 |
0 |
0 |
Таблиця істинності для дешифратора D1.
N |
Входи |
Виходи |
|||||||||||||||||||
b |
c |
d |
e |
|
|||||||||||||||||
8 |
4 |
2 |
1 |
BK |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
2 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
3 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
4 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
5 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
6 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
7 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
8 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
9 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
10 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
11 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
12 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
13 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
14 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
15 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
X |
X |
X |
X |
X |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Таблиця істинності для дешифратора D2.
N |
Входи |
Виходи |
|||||||||||||||||||
b |
c |
d |
e |
|
|||||||||||||||||
8 |
4 |
2 |
1 |
ВК |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
16 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
17 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
18 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
19 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
20 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
21 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
22 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
23 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
24 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
25 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
26 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
27 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
28 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
29 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
30 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
31 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Х |
Х |
Х |
Х |
Х |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Схема реалізації функції f зображена на рис. 3.7.
Завдання 3.8
Реалізувати функцію, мінімізовану у завданні 2.3 за допомогою мультиплексорів. У кожного із задіяних мультиплексорів кількість входів не повинна перевищувати 16. Навести таблиці істиності, які пояснюють роботу задіяних мультиплексорів.
Функція, яку потрібно синтезувати за допомогою мультиплексорів:
FДНФ = = /abcd v /a/de v /cd/e v /bde
З функції отримуємо:
/abcd – 0111x – відповідає наборам - 01110, 01111 = (E, F)16 = (14, 15)10 .
/a/de – 0xx01 - відповідає наборам - 00001, 00101, 01001, 11101= (1, 5, 9, 1D)16 =
= (1, 5, 9, 29)10 .
/cd/e –xx010 - відповідає наборам - 00010, 01010, 10010, 11010 = (2, A, 12, 1A)16 =
= (2, 10, 18, 26)10.
/bde – x0x11 - відповідає наборам - 00011, 00111, 10011, 10111 = (3, 7, 13, 17)16 =
= (3, 7, 19, 23)10 .
Для реалізації функції використовуємо три мультиплексори: D0, D1, D2.
D0 – “16 в 4”; D1 – “16 в 4”; D2 – “2 в 1”.
Схема реалізації функції f зображена на рис. 3.8.
Таблиця істинності для мультиплексора D0.
№ набору |
Входи |
На виході f сигнал з інформаційного |
|||
b |
c |
d |
e |
||
8 |
4 |
2 |
1 |
||
0 |
0 |
0 |
0 |
0 |
входу 0 |
1 |
0 |
0 |
0 |
1 |
входу 1 |
2 |
0 |
0 |
1 |
0 |
входу 2 |
3 |
0 |
0 |
1 |
1 |
входу 3 |
4 |
0 |
1 |
0 |
0 |
входу 4 |
5 |
0 |
1 |
0 |
1 |
входу 5 |
6 |
0 |
1 |
1 |
0 |
входу 6 |
7 |
0 |
1 |
1 |
1 |
входу 7 |
8 |
1 |
0 |
0 |
0 |
входу 8 |
9 |
1 |
0 |
0 |
1 |
входу 9 |
10 |
1 |
0 |
1 |
0 |
входу 10 |
11 |
1 |
0 |
1 |
1 |
входу 11 |
12 |
1 |
1 |
0 |
0 |
входу 12 |
13 |
1 |
1 |
0 |
1 |
входу 13 |
14 |
1 |
1 |
1 |
0 |
входу 14 |
15 |
1 |
1 |
1 |
1 |
входу 15 |
Таблиця істинності для мультиплексора D1.
№ набору |
Входи |
На виході f сигнал з інформаційного |
|||
b |
c |
d |
e |
||
8 |
4 |
2 |
1 |
||
16 |
0 |
0 |
0 |
0 |
входу 0 |
17 |
0 |
0 |
0 |
1 |
входу 1 |
18 |
0 |
0 |
1 |
0 |
входу 2 |
19 |
0 |
0 |
1 |
1 |
входу 3 |
20 |
0 |
1 |
0 |
0 |
входу 4 |
21 |
0 |
1 |
0 |
1 |
входу 5 |
22 |
0 |
1 |
1 |
0 |
входу 6 |
23 |
0 |
1 |
1 |
1 |
входу 7 |
24 |
1 |
0 |
0 |
0 |
входу 8 |
25 |
1 |
0 |
0 |
1 |
входу 9 |
26 |
1 |
0 |
1 |
0 |
входу 10 |
27 |
1 |
0 |
1 |
1 |
входу 11 |
28 |
1 |
1 |
0 |
0 |
входу 12 |
29 |
1 |
1 |
0 |
1 |
входу 13 |
30 |
1 |
1 |
1 |
0 |
входу 14 |
31 |
1 |
1 |
1 |
1 |
входу 15 |
Таблиця істинності для мультиплексора D2.
N |
Входи |
На виході f сигнал з інформаційного |
а |
||
1 |
||
0 |
0 |
входу 0 |
1 |
1 |
входу 1 |
Завдання 3.9
Реалізувати функцію, мінімізовану у завданні 2.3, за допомогою постійного запам’ятовуючого пристрою (ПЗП). Скласти таблицю прошиття ПЗП. Функція, яку потрібно синтезувати за допомогою постійного запам’ятовуючого пристрою:
FДНФ = = /abcd v /a/de v /cd/e v /bde
Таблиця прошиття ПЗП
Номери наборів |
Входи (Адреси) |
Виходи (дані) |
||||
a |
b |
c |
d |
e |
f |
|
A4 |
A3 |
A2 |
A1 |
A0 |
D0 |
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
2 |
0 |
0 |
0 |
1 |
0 |
1 |
3 |
0 |
0 |
0 |
1 |
1 |
1 |
4 |
0 |
0 |
1 |
0 |
0 |
0 |
5 |
0 |
0 |
1 |
0 |
1 |
0 |
6 |
0 |
0 |
1 |
1 |
0 |
1 |
7 |
0 |
0 |
1 |
1 |
1 |
1 |
8 |
0 |
1 |
0 |
0 |
0 |
0 |
9 |
0 |
1 |
0 |
0 |
1 |
1 |
10 |
0 |
1 |
0 |
1 |
0 |
0 |
11 |
0 |
1 |
0 |
1 |
1 |
1 |
12 |
0 |
1 |
1 |
0 |
0 |
0 |
13 |
0 |
1 |
1 |
0 |
1 |
0 |
14 |
0 |
1 |
1 |
1 |
0 |
0 |
15 |
0 |
1 |
1 |
1 |
1 |
1 |
16 |
1 |
0 |
0 |
0 |
0 |
0 |
17 |
1 |
0 |
0 |
0 |
1 |
1 |
18 |
1 |
0 |
0 |
1 |
0 |
0 |
19 |
1 |
0 |
0 |
1 |
1 |
1 |
20 |
1 |
0 |
1 |
0 |
0 |
0 |
21 |
1 |
0 |
1 |
0 |
1 |
0 |
22 |
1 |
0 |
1 |
1 |
0 |
0 |
23 |
1 |
0 |
1 |
1 |
1 |
0 |
24 |
1 |
1 |
0 |
0 |
0 |
0 |
25 |
1 |
1 |
0 |
0 |
1 |
1 |
26 |
1 |
1 |
0 |
1 |
0 |
1 |
27 |
1 |
1 |
0 |
1 |
1 |
1 |
28 |
1 |
1 |
1 |
0 |
0 |
0 |
29 |
1 |
1 |
1 |
0 |
1 |
0 |
30 |
1 |
1 |
1 |
1 |
0 |
1 |
31 |
1 |
1 |
1 |
1 |
1 |
0 |
На ПЗП зручно реалізувати ДДНФ набору функцій, оскільки ДДНФ безпосередньо вказує на ті набори, на яких функція приймає значення “1”. Для реалізації таких функцій необхідно завести на входи ПЗП усі змінні, з яких формуються функції, кожній функції поставити у відповідність один з виходів ПЗП і скласти таблицю прошиття.
Таблиця прошиття задає логічну функцію, яка використовувалася у завданнях 2.2, 2.3, 2.4 з метою її мінімізації. Але не визначенні значення замінені на визначені у залежності допомагають, чи не допомагають вони мінімізації за «1», як це зроблено у завданні 2.3.
Функціональна схема ПЗП:
Для виконання нашого завдання використовуємо ПЗП об’ємом 256 * 4. Кількість входів адрес ПЗП дорівнює 8, оскільки 256 = 28, кількість виходів ПЗП дорівнює 4. Розряди адрес А5 . . . А7 і даних D1 . . . D3 – не використовуються. У даному випадку використовується тільки 32 з 256 можливих адрес (0 . . 31) і тільки один з 4-х виходів (D0).
Завдання 3.10
Реалізувати функцію, мінімізовану у завданні 2.3, за допомогою програмованої логічної матриці (ПЛМ) типу PLA. Скласти таблиці прошиття (програмування) ПЛМ. Навести функціональну схему запрограмованої ПЛМ.
Програмована логічна матриця (ПЛМ, PLA – Programmable Logic Array) – це комбінаційна багатовходова схема з одним або кількома виходами. ПЛМ складається з трьох основних частин:
набору (матриці) інверторів вхідних сигналів;
набору (матриці) програмованих елементів І (кон’юнкторів);
набору (матриці) програмованих елементів АБО (диз’юнкторів).
На ПЛМ зручно реалізувати мінімізовані ДНФ набору функцій. Для їхньої реалізації необхідно завести на адресні входи ПЛМ всі змінні, з яких формуються функції, кожній функції поставити у відповідність один з виходів ПЛМ і скласти таблицю прошиття.
Функція, яку потрібно синтезувати за допомогою програмованої логічної матриці:
FДНФ = = /abcd v /a/de v /cd/e v /bde
Функціональна схема ПЛМ
Кількість елементів у матриці АБО залежить від кількості виходів ПЛМ, яких може бути 4, 8. 14, 16 і т. д. У ПЛМ типу PLA на кожний елемент АБО заведені виходи всіх елементів І. ПЛМ, функціональна схема якої зображена вище, має 5 адресних входів, що відповідає кількості аргументів логічної функції, 12 елементів І, 4 елементів АБО, 4 виходи. Які саме елементи І та АБО будуть використовуватися визначає користувач. У нашому завданні ми повинні реалізувати одну логічну функцію, тому буде використаний тільки один вихід D1.
Внутрішня структура запрограмованої ПЛМ зображена на рис. 3.10.
Терм /abcd - реалізований на кон’юнкторі І0;
Терм /a/de - реалізований на кон’юнкторі І1;
Терм /cd/e - реалізований на кон’юнкторі І3;
Терм /bde - реалізований на кон’юнкторі І5;
Кон’юнктори І2, І4, І6, І7, І8, I9, І10 та І11 не використовуються.
Таблиця прошиття ПЛМ
N |
Входи (Адреси) |
Виходи (Дані) |
|||||
A0 |
A1 |
A2 |
A3 |
A4 |
D0 |
D1 |
|
a |
b |
c |
d |
e |
- |
f |
|
I0 |
L |
H |
H |
H |
- |
- |
A |
I1 |
L |
- |
- |
L |
H |
- |
A |
I2 |
0 |
0 |
0 |
0 |
0 |
A |
A |
I3 |
- |
- |
L |
H |
L |
- |
A |
I4 |
0 |
0 |
0 |
0 |
0 |
A |
A |
I5 |
- |
L |
- |
H |
H |
- |
A |
I6 |
0 |
0 |
0 |
0 |
0 |
A |
A |
I7 |
0 |
0 |
0 |
0 |
0 |
A |
A |
I8 |
0 |
0 |
0 |
0 |
0 |
A |
A |
I9 |
0 |
0 |
0 |
0 |
0 |
A |
A |
I10 |
0 |
0 |
0 |
0 |
0 |
A |
A |
I11 |
0 |
0 |
0 |
0 |
0 |
A |
A |
У таблиці прошиття ПЛМ прийняті наступні позначення:
N - позначення елемента І;
На перетині рядка з номером Nі та графи з номером адресного входу Аі можуть стояти такі символи:
Н – сигнал з даного входу заведений на відповідний кон’юнктор І у прямому коді (від High – високий рівень);
L - сигнал з даного входу заведений на відповідний кон’юнктор І у інверсному коді (від Low – низький рівень);
“ – “ – сигнал з даного входу від’єднаний від відповідного елемента І;
0 – даний кон’юнктор не використовується.
На перетині рядка з номером елемента Іі та графи з номером виходу Di (тобто, номером елемента АБО) можуть стояти такі символи:
“ – “ – сигнал з даного елемента І від’єднаний від входу відповідного елемента АБО і не проходить на відповідний вихід ПЛМ;
А - сигнал з даного елемента І заведений на вхід відповідного елемента АБО і проходить через елемент АБО на відповідний вихід ПЛМ.
Завдання 3.11
Реалізувати функцію, мінімізовану в завданні 2.4, за допомогою програмованої матриці логіки (ПМЛ) типу PAL. Скласти таблиці прошиття (програмування) ПМЛ. Навести функціональну схему запрограмованої ПМЛ.
На ПМЛ зручно реалізувати мінімізовані ДНФ набору функцій. Для їхньої реалізації необхідно завести на входи ПМЛ усі змінні, з яких формуються функції, кожній з функцій поставити у відповідність один з виходів ПМЛ і скласти таблицю прошиття.
/FДНФ = /d/e v a/d v abc v /bc/e v b/cde
Пряме значення функції f буде отримане згідно з правилами де Моргана у вигляді кон’юктивної нормальної форми:
/(/f ДНФ )= f КНФ = /(/d/e v a/d v abc v /bc/e v b/cde) =
=(d + e)(/a + d)(/a + /b + /c)(b +/c + e)(/b + c + /d + /e)
Tаблиця прошиття (програмування) ПМЛ.
/d/e v a/d v abc v /bc/e v b/cde
N |
Вхід/Вихід |
Входи |
Вихід |
При-міт-ки |
|||||||||
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
A4 |
A3 |
A2 |
A1 |
A0 |
|||
|
|
|
|
|
|
a |
b |
c |
d |
e |
|||
I0 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
L |
L |
D0 |
|
I1 |
- |
- |
- |
- |
- |
- |
H |
- |
- |
L |
- |
D0 |
|
I2 |
- |
- |
- |
- |
- |
H |
- |
- |
- |
- |
- |
D1 |
|
I3 |
- |
- |
- |
- |
- |
- |
H |
H |
H |
- |
- |
D1 |
|
I4 |
- |
- |
- |
- |
H |
- |
- |
- |
- |
- |
- |
D2 |
|
I5 |
- |
- |
- |
|
- |
- |
- |
L |
H |
- |
L |
D2 |
|
I6 |
- |
- |
- |
H |
- |
- |
- |
- |
- |
- |
- |
D3 |
|
I7 |
- |
- |
- |
- |
- |
- |
- |
H |
L |
H |
H |
D3 |
|
I8 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
D4 |
/f |
I9 |
- |
- |
H |
- |
- |
- |
- |
- |
- |
- |
- |
D4 |
|
I10 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
D5 |
f |
I11 |
- |
H |
- |
- |
- |
- |
- |
- |
- |
- |
- |
D5 |
|
У таблиці подаються такі скорочення:
N – позначення елемента Іі;
На перетині рядка з позначенням елемента Іі та граф з номером входу (Аі) і номером зворотнього зв’язку (Di) можуть стояти такі символи:
«Н» - сигнал з даного входу заведений на відповідний елемент І в прямому коді;
«L» - сигнал з даного входу заведений на відповідний елемент І в інверсному коді;
“ – “ - сигнал з даного входу від’єднаний від відповідного елемента І;
“ 0 ” - сигнал з даного входу заведений на відповідний елемент І одночасно в прямому та інверсному кодах (початковий стан ПМЛ, даний елемент І не використовується).
Функціональне позначення ПМЛ
Внутрішня структура запрограмованої ПMЛ зображена на рис. 3.11. Пряме значення функції f отримане шляхом використання внутрішнього інвертора зворотнього зв’язку.
Терм /d/e - реалізований на кон’юнкторі І0;
Терм a/d - реалізований на кон’юнкторі І1;
Терм abc - реалізований на кон’юнкторі І3;
Терм /bc/e - реалізований на кон’юнкторі І5;
Терм b/cde - реалізований на кон’юнкторі І7
Функція /fДНФ формується на виході D3. Функція fКНФ реалізована шляхом інверсії функції /fДНФ на інверторі D3, елементі АБО 4 і формується на виході D4.
Завдання 3.12
Для схем, побудованих у завданнях 3.1. – 3.7., визначити їх “ціну”, підрахувавши кількість корпусів задіяних елементів. Визначити оптимальний (найдешевший) варіант.
№ п/п |
Номер завдання |
Варіант реалізації функції |
Кількість корпусів |
1 |
3.1 |
У базисі Буля з довільною кількістю входів |
10 |
2 |
3.2 |
У базисі Буля з кількістю входів не більше 2 |
17 |
3 |
3.3 |
У монобазисі І-НЕ з довільною кількістю входів |
10 |
4 |
3.4 |
У монобазисі Шеффера з двовходовими елементами |
24 |
5 |
3.5 |
У монобазисі АБО-НЕ з довільною кількістю входів |
11 |
6 |
3.6 |
У монобазисі Пірса з двовходовими елементами |
21 |
7 |
3.7 |
За допомогою дешифраторів |
4 |
Отже з порівняльної таблиці видно, що найбільш оптимальним (найдешевшим) варіантом реалізації функції за кількістю корпусів задіяних елементів є реалізація функції на дешифраторах. Використовується 4 дешифратори. При реалізації на елементарній логіці найменше корпусів є у монобазисах АБО – НЕ, І - НЕ і базисі Буля з довільною кількістю входів (10 корпусів).
Завдання 3.13
Для схем, побудованих у завданнях 3.1. – 3.7., визначити їх “ціну”, підрахувавши кількість виводів задіяних елементів. Визначити оптимальний (найдешевший) варіант.
№ п/п |
Номер завдання |
Варіант реалізації функції |
Кількість виводів |
1 |
3.1 |
У базисі Буля з довільною кількістю входів |
32 |
2 |
3.2 |
У базисі Буля з кількістю входів не більше 2 |
46 |
3 |
3.3 |
У монобазисі І-НЕ з довільною кількістю входів |
32 |
4 |
3.4 |
У монобазисі Шеффера з двовходовими елементами |
70 |
5 |
3.5 |
У монобазисі АБО-НЕ з довільною кількістю входів |
33 |
6 |
3.6 |
У монобазисі Пірса з двовходовими елементами |
61 |
7 |
3.7 |
За допомогою дешифраторів |
58 |
Отже з порівняльної таблиці видно, що найбільш оптимальним (найдешевшим) варіантом реалізації функції за кількістю виводів задіяних елементів є реалізація функції у базисі Буля та моно базисі І - НЕ з довільною кількістю входів. Використовується 32 виводи.
Завдання 3.14
Для схем, побудованих у завданнях 3.1. – 3.7., визначити час проходження сигналів від входу до виходу. Визначити оптимальний (найшвидший) варіант.
№ п/п |
Номер завдання |
Варіант реалізації функції |
Час проход-ження |
1 |
3.1. |
У базисі Буля з довільною кількістю входів |
3 |
2 |
3.2. |
У базисі Буля з кількістю входів не більше 2 |
5 |
3 |
3.3. |
У монобазисі І-НЕ з довільною кількістю входів |
3 |
4 |
3.4. |
У монобазисі Шеффера з двовходовими елементами |
7 |
5 |
3.5. |
У монобазисі АБО-НЕ з довільною кількістю входів |
3 |
6 |
3.6. |
У монобазисі Пірса з двовходовими елементами |
9 |
7 |
3.7. |
За допомогою дешифраторів |
3 |
Отже з порівняльної таблиці видно, що найбільш оптимальним (найшвидшим) варіантом реалізації функції за часом проходження сигналів від входу до виходу є реалізація функції за допомогою дешифраторів, у базах Буля, Шеффера (І – НЕ) і Пірса (АБО – НЕ) з довільною кількістю входів (3 одиниці часу).
