- •Завдання № 41
- •Тема проекту
- •Початкові дані:
- •1 . Синтез комбінаційних схем
- •Синтез комбінаційних схем у базисах
- •1.2 Синтез комбінваних схем на базі комутаторів (мультиплексорів)
- •1.3 Індикація цифро-буквенних повідомлень
- •2 . Автомати з пам`яттю
- •2.1 Автомат з пам`яттю – 2
- •2.2 Автомат з пам`яттю – 1
- •3 . Структурна схема дискретного пристрою
1 . Синтез комбінаційних схем
В багатьох залізничних пристроях використовується багато комбінаційних схем. Комбінаційні схеми – це логічні схеми, сигнал на виході яких у кожен момент часу визначається комбінацією вихідних сигналів у той же момент часу.
Поняття функції алгебри логіки (ФАЛ) є базовим у алгебрй логіки – математичному апараті, який використовується для опису умов функціювання, а також при перетворенні структур дискретних автоматів.
Головні аксіоми алгебри логіки, а також тотожні співвідношення, отримані на їх основі, дозволяють перетворювати логічні формули, не порушуючи еквівалентності ФАЛ.
Бульова алгебра базується на кількох аксіомах, з яких одержують основні закони перетворень ФАЛ.
Ось деякі з них:
1)Асоціативний:
2)Звернення:
якщо
,
то
3)Подвійної інверсії (заперечення):
4)Інверсії (правило де Моргана):
Для того щоб синтезувати комбінаційні схеми треба побудувати таблицю істинності, потім перейти від табличного способу завдання функції алгебри логіки (ФАЛ) до її запису у вигляді нормальних форм подання ФАЛ: досконалої диз'юнктивної нормальної форми (ДДНФ) і досконалої
6
к он’юнктивной нормальної форми (ДКНФ),і побудувати карту Карно.
Є
кілька
нормальних форм подання ФАЛ. Наприклад
дві
з них: ДДНФ
і ДКНФ.
Щоб
знайти
ДДНФ
вибирають із таблиці тільки ті рядки,
у яких стоять
набори змінних,
що перетворюють
функцію в 1. При цьому,
якщо аргумент
входить до
даного
набору як 1, він записується
в кон’юнкцію
(логічне
множення) без зміни (
). Якщо ж
входить
у набір як 0, то у відповідну кон’юнкцію
вписується його заперечення(
). З'єднуючи
ці кон’юнкції
знаками диз'юнкції (логічне додавання)
остаточно одержуємо ДДНФ.
Для знаходження ДКНФ вибирають із таблиці тільки ті рядки, у яких стоять набори змінних, що перетворюють функцію в 0. При цьому, якщо аргумент входить у даний набір як 0, він уписується в диз'юнкцію без зміни (xi). Якщо ж xi входить у набір як 1, то у відповідну диз'юнкцію вписується його заперечення ( ).З'єднуючи ці диз'юнкції знаками кон’юнкції остаточно одержуємо ДКНФ.
Якщо більшість значень функції одиничні, то її буде зручніше записувати в ДКНФ.
Карта Карно являє собою двокоординатну таблицю, у якій кожній клітинці поставлені у відповідність набори значенні змінних логічної функції. Набори, подані сусідніми клітинками, відрізняються значеннями тільки однієї змінної. Сусідніми називаються дві клітинки, які знаходяться поряд, розташовані в одному рядку або стовпці. Сусідніми також вважаються клітинки розташовані по кінцям кожного стовпця або рядка: нижня клітка в будь-якому стовпці є сусідньою по відношенню до верхньої клітинки того ж стовпця, а права клітка будь-якого рядка є сусідньої відносно лівої клітинки того ж рядка.
Карта Карно містить k=2i клітинок ( i- кількість змінних даної логічної
функції), що дорівнює кількості рядків у таблиці істинності функції або
7
ч ислу одиничних наборів змінних ДДНФ і нульових наборів змінних ДКНФ, разом узятих.
Властивість сусідства в карті Карно зручно використати для групування окремих одиничних наборів (коньюнктивних термів) у підкуби бо об'єднання з 2n одиничних наборів (n=0,1,2,3,4,…). Підкуби творяться з метою виключення однієї, двох, або декількох змінних, вхідних в одиничні набори, тому що при склеюванні відбувається виключення однієї або декількох змінних.
Мінімізацією ФАЛ називається процес скорочення кількості входжень незалежних змінних й операцій в аналітичні вираження для ФАЛ.
Щоб визначити внесок підкуба в мінімальну функцію, необхідно взяти диз'юнкцію або кон’юнкцію одиничних наборів змінних, що входять до підкуба. Існують мінімальна диз'юнктивна нормальна форма (МДНФ) і мінімальна кон’юнктивна нормальна форма (МКНФ).
Утворюючи підкуби для отримання мінімального значення функції треба дотримуватися таких правил:
утворити двоклітинкові підкуби з наборів, які мають тільки одного сусіда;
із наборів, що залишились, утворити підкуби максимальної величини ( якщо це можливо ), які не перетинаються ;
з наборів, що залишились, утворити підкуби максимального розміру, які перетинаються;
з наборів, що не мають жодного сусіда, утворити одноклітинкові підкуби;
закінчити утворення підкубів, якщо всі набори задіяні.
При використанні цього потрібно строго дотримуватися послідовності виконання пунктів.
