У цифровій схемотехніці цифровий сигнал - це сигнал, який може приймати два значення, яке вважається логічна "1" і логічний "0".
Логічні схеми реалізуються на логічних елементах: "НЕ", "І", "АБО", "І-НЕ", "АБО-НЕ", "Що виключає АБО" і "Еквівалентність". Перші три логічних елемента дозволяють реалізувати будь-яку, як завгодно складну логічну функцію в булевом базисі . Ми будемо вирішувати завдання на логічні схеми, реалізовані саме в булевом базисі.
Для позначення логічних елементів використовується кілька стандартів. Найбільш поширеними є американський (ANSI), європейський (DIN), міжнародний (IEC) і російський (ГОСТ). На малюнку нижче наведені позначення логічних елементів в цих стандартах (для збільшення можна натиснути на малюнок лівою кнопкою миші).
На цьому уроці будемо вирішувати завдання на логічні схеми, на яких логічні елементи позначені в стандарті ГОСТ.
Завдання на логічні схеми бувають двох видів: завдання синтезу логічних схеми і завдання аналізу логічних схем. Ми почнемо з завдання другого типу, так як в такому порядку вдається швидше навчитися читати логічні схеми.
Найчастіше в зв'язку з побудовою логічних схем розглядаються функції алгебри логіки:
- трьох змінних (будуть розглянуті в задачах аналізу і в одному завданню синтезу);
- чотирьох змінних (в задачах синтезу, тобто в двох останніх параграфах).
Розглянемо побудову (синтез) логічних схем
- в булевом базисі "І", "АБО", "НІ" (в передостанньому пункті);
- в також поширених базисах "І-НЕ" і "АБО-НІ" (в останньому параграфі).
Завдання аналізу полягає у визначенні функції, реалізованої заданої логічної схемою. При вирішенні такого завдання зручно дотримуватися такої послідовності дій.
- Логічна схема розбивається на яруси. Ярусах присвоюються послідовні номери.
- Висновки кожного логічного елемента позначаються назвою шуканої функції, забезпеченим цифровим індексом, де перша цифра - номер ярусу, а решта цифри - порядковий номер елемента в ярусі.
- Для кожного елемента записується аналітичний вираз, що зв'язує його вихідну функцію з вхідними змінними. Вираз визначається логічною функцією, яка реалізується даним логічним елементом.
- Проводиться підстановка одних вихідних функцій через інші, поки не вийде булева функція, виражена через вхідні змінні.
Приклад 1. Знайдіть булеву функцію логічної схеми і складіть таблицю істинності для логічної схеми.
Рішення. Розбиваємо логічну схему на яруси, що вже показано на малюнку. Запишемо всі функції, починаючи з 1-го ярусу:
Тепер запишемо всі функції, підставляючи вхідні змінні:
В результаті отримаємо функцію, яку реалізує на виході логічна схема:
.
Таблиця істинності для даної логічної схеми:
Приклад 4. Знайдіть булеву функцію логічної схеми і складіть таблицю істинності для логічної схеми.
Рішення. Розбиваємо логічну схему на яруси. Запишемо всі функції, починаючи з 1-го ярусу:
Тепер запишемо всі функції, підставляючи вхідні змінні:
В результаті отримаємо функцію, яку реалізує на виході логічна схема:
.
Таблиця істинності для даної логічної схеми:
Приклад 5. Знайдіть булеву функцію логічної схеми і складіть таблицю істинності для логічної схеми.
Рішення. Розбиваємо логічну схему на яруси. Структура даної логічної схеми, на відміну від попередніх прикладів, має 5 ярусів, а не 4. Але одна вхідна змінна - сама нижня - пробігає всі яруси і безпосередньо входить в логічний елемент в першому ярусі. Запишемо всі функції, починаючи з 1-го ярусу:
Тепер запишемо всі функції, підставляючи вхідні змінні:
В результаті отримаємо функцію, яку реалізує на виході логічна схема:
.
Таблиця істинності для даної логічної схеми:
Розробка логічної схеми по її аналітичному опису має назву завдання синтезу логічної схеми.
Кожній диз'юнкції (логічного сумі) відповідає елемент "АБО", число входів якого визначається кількістю змінних в диз'юнкції. Кожній кон'юнкції (логічного твору) відповідає елемент "І", число входів якого визначається кількістю змінних в кон'юнкції. Кожному заперечення (інверсії) відповідає елемент "НІ".
Часто розробка логічної схеми починається з визначення логічної функції, яку повинна реалізувати логічна схеми. У цьому випадку дана тільки таблиця істинності логічної схеми. Ми розберемо саме такий приклад, тобто, вирішимо завдання, повністю зворотний розглянутої вище задачі аналізу логічних схем.
Приклад 6. Побудувати логічну схему, що реалізує функцію з цією таблицею істинності:
Рішення. Розбираємо таблицю істинності для логічної схеми. Визначаємо функцію, яка вийде на виході схеми і проміжні функції, які на вході приймають аргументи і. У першому рядку результатом реалізації вихідний функції при тому, що значення вхідних змінних рівні одиницям, повинен бути логічний "0", у другому рядку - при різних значеннях вхідних змінних на виході теж повинен бути логічний "0". Тому потрібно, щоб вихідна функція була кон'юнкція (логічним твором).
Тепер підбираємо проміжні функції. Отримуємо наступну таблицю для проміжних функцій і вихідний функції - кон'юнкції проміжних функцій:
Для побудови логічної схеми необхідно елементи, що реалізують логічні операції, зазначені в вихідний функції, розташовувати в порядку, заданої цією функцією. З виразу видно, що знадобляться 3 схеми "НЕ", дві двухвходових схеми "І" та одна двухвходових схема "АБО". Відповідно до вихідний функцією отримуємо наступну логічну схему:
А тепер черга дійшла до функцій алгебри логіки чотирьох змінних. Спочатку виконаємо синтез логічної схеми в булевом базисі.
Приклад 7. Побудувати в булевом базисі логічну схему, що реалізує функцію алгебри логіки
Рішення. Для побудови логічної схеми будуть потрібні 4 схеми "НЕ", одна трёхвходовая схема "І", 2 двухвходових схеми "І" та одна трёхвходовая схема "АБО". Відповідно до цього отримуємо наступну логічну схему:
Часто для скорочення числа мікросхем використовують елементи "І-НЕ" або / та "АБО-НІ". Рассмтрім приклади, як побудувати схему, що реалізує ту ж функцію, що в попередньому прикладі, але, перш за все в базисі "І-НЕ", а потім в базисі "АБО-НІ".
Приклад 8. Побудувати в базисі "І-НЕ" логічну схему, що реалізує функцію алгебри логіки .
Рішення. Логічна функція повинна бути приведена до вигляду, який містить тільки операції логічного множення (кон'юнкції) і інвертування (заперечення). Це робиться за допомогою подвійного інвертування вихідного вираження функції і застосування закону де Моргана :
Для побудови логічної схеми будуть потрібні 8 схем "І-НЕ". Отримуємо наступну логічну схему: