Цифрова логіка: вентилі, карти Карно та тригери: задачі з покроковими розв’язками
Безкоштовні задачі з теми Цифрова логіка: вентилі, карти Карно та тригери з рисунками, підказками й повними розв’язками. Щоразу нові значення, трьох рівнів: вентилі, таблиці істинності та затримки, булева алгебра, карти Карно та мультиплексори, байдужі стани, тригери та лічильники.
Безкоштовна задачаЛегка
NAND і NOR — універсальні вентилі: будь-яку логічну функцію можна побудувати лише з одного з них. Яка мінімальна кількість N 2-вхідних вентилів NAND потрібна, щоб побудувати показану функцію NOT?
Середнябулева алгебра, карти Карно та мультиплексори
Складнабайдужі стани, тригери та лічильники
Як розв’язувати задачі на тему «Цифрова логіка: вентилі, карти Карно та тригери»
Для схеми рухайтеся від входів до виходу вентиль за вентилем і записуйте значення на кожному дроті, або запишіть її вираз і заповніть таблицю істинності.
Для спрощення занесіть одиниці (а байдужі стани як X) на карту Карно з рядками й стовпцями в коді Грея: 00, 01, 11, 10.
Покрийте одиниці якомога меншою кількістю якомога більших груп по 1, 2, 4, 8 або 16 клітинок, з переходом через краї; кожна група — це один добуток зі змінних, що лишаються сталими. Для форми POS групуйте нулі.
Для тригерів і лічильників читайте входи на кожному активному фронті такту, записуйте стан після кожного фронту й пам’ятайте, що n-розрядний лічильник переходить через максимум після 2ⁿ станів.
Типові помилки
Упорядкування карти Карно як 00, 01, 10, 11 замість коду Грея 00, 01, 11, 10.
Забування, що групи можуть переходити через краї, або групи по 3 чи 6 клітинок.
Покриття байдужих станів, які не збільшують групу.
Забування, що лічильник переходить через максимум, або читання Q₃Q₂Q₁Q₀ у неправильному порядку.
Основні формули
Базові вентилі
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Правила булевої алгебри
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
Закони де Моргана
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Порядок на карті Карно
00, 01, 11, 10 (Gray code)
Група з 2ᵏ клітинок
втрачає k змінних
Мультиплексор 4-до-1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Тригери
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Лічильники
n-розрядний: 2ⁿ станів; за модулем N: найменше n з 2ⁿ ≥ N; fout = fclk/N
Послідовний лічильник
fmax = 1/(n·tpd)
Кільцевий лічильник і лічильник Джонсона
n і 2n станів
Вивчайте тему «Цифрова логіка: вентилі, карти Карно та тригери» з нуля
Цифрові схеми працюють із двома значеннями: 0 (низька напруга, хибність) і 1 (висока напруга, істина). Логічний вентиль приймає один або кілька входів і дає один вихід.
AND дає 1 лише тоді, коли всі входи дорівнюють 1. Записується A·B або AB.
OR дає 1, коли принаймні один вхід дорівнює 1. Записується A + B.
NOT інвертує: 0 стає 1, а 1 стає 0. Записується A′ (або з рискою над A).
NAND і NOR — це AND і OR з наступним NOT; маленьке коло на позначенні означає «інвертований».
XOR (A ⊕ B) дає 1, коли входи різні.
Таблиця істинності перелічує вихід для кожної комбінації входів: 2ⁿ рядків для n входів. Рядок ABC = 101 має номер 5 і називається мінтермом m₅.
Самоперевірка A = 1 і B = 0. Що видає вентиль NAND?
0
1
Залежить від попереднього виходу
Нічого: NAND потребує, щоб обидва входи дорівнювали 1
Відповідь: 1. AND від 1 і 0 дорівнює 0, а NAND інвертує його в 1. NAND дорівнює 0 лише тоді, коли всі його входи дорівнюють 1.
2Булева алгебра
Логічні вирази підпорядковуються правилам, схожим на звичайну алгебру, плюс кілька власних. Найкорисніші:
X + X′ = 1 X·X′ = 0 X + X = X X + X·Y = X
X·Y + X·Y′ = X Де Морган: (X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Правило склеювання X·Y + X·Y′ = X — серце спрощення: два доданки, що відрізняються однією змінною, зливаються, і ця змінна зникає.
Сума добутків (SOP) — це OR з AND-доданків, наприклад F = AB′ + C. Добуток сум (POS) — це AND з OR-доданків, наприклад F = (A + B)(B′ + C). Кожен доданок побудований із літералів: змінних зі штрихом або без нього.
3Карти Карно
Карта Карно — це таблиця істинності, намальована у вигляді сітки, де сусідні клітинки відрізняються рівно однією змінною. Саме тому рядки й стовпці йдуть у порядку 00, 01, 11, 10 (код Грея), а не в двійковому порядку.
Запишіть 1 у клітинку кожного мінтерма; маленьке число в кожній клітинці — це номер мінтерма.
Обведіть прямокутниками по 1, 2, 4, 8 або 16 клітинок одиниці. Групи можуть переходити через краї: ліва й права колонки — сусіди, так само верхній і нижній рядки.
Робіть кожну групу якомога більшою, а груп — якомога менше, доки кожну 1 не буде покрито.
Читайте кожну групу як добуток: залишайте лише змінні, що не змінюються всередині неї. Група з 2ᵏ клітинок втрачає k змінних.
На карті вище чотири 1 утворюють одну групу. Усередині неї змінюються A і C, лишається сталою лише B = 1, тож F = B.
Клітинки з позначкою X — це байдужі стани: комбінації входів, що ніколи не трапляються. Використовуйте X як 1, коли це збільшує групу, а в іншому разі ігноруйте. Групування нулів замість одиниць дає мінімальну форму POS.
Самоперевірка Скільки літералів дає група з 4 клітинок на карті з 4 змінними?
1
2
3
4
Відповідь: 2. Чотири клітинки — це 2², тож усередині групи змінюються дві змінні, які випадають. З чотирьох змінних залишаються дві.
4Розв’язаний приклад
Простежте кожен крок. Спробуйте передбачити наступний, перш ніж його відкрити.
Розв’язаний приклад
Знайдіть мінімальну форму SOP для F(A, B, C) = Σm(0, 2, 4, 5, 6) і порахуйте її літерали.
1
Заповніть карту
Рядки A = 0, 1; стовпці BC = 00, 01, 11, 10. Одиниці стоять у m0, m2 (рядок 0, стовпці 00 і 10) та m4, m5, m6 (рядок 1, стовпці 00, 01 і 10).
2
Найбільша група
Стовпці BC = 00 і BC = 10 є сусідніми через край. Разом вони містять m0, m2, m4 і m6: група з чотирьох. Стала лише C = 0, тож ця група — C′.
3
Покрийте останню 1
m5 (A = 1, BC = 01) досі не покрита. Об’єднайте її із сусідом m4: у цій парі сталими лишаються A = 1 і B = 0, тож доданок — AB′.
4
Зчитайте відповідь
F = C′ + AB′
Три літерали у двох доданках. Групування m5 окремо дало б AB′C — довший доданок: завжди робіть групи якомога більшими, навіть якщо вони перекриваються.
Відповідь
F = C′ + AB′, 3 літерали.
5Тригери та лічильники
Вентилі реагують на входи одразу. Тригер зберігає один біт і змінюється лише за активним фронтом тактового сигналу (зазвичай переднім фронтом).
D-тригер: Q стає рівним D за кожним фронтом такту (Q⁺ = D).
T-тригер: перемикається, коли T = 1, і зберігає стан, коли T = 0.
JK-тригер: JK = 00 зберігає, 01 скидає в 0, 10 встановлює в 1, 11 перемикає.
Тригер, що перемикається, змінюється за кожним переднім фронтом, тож його вихід має вдвічі меншу частоту, ніж такт. Ланцюжок із n таких тригерів дає n-розрядний двійковий лічильник з 2ⁿ станами. Лічильник за модулем N рахує 0, 1, …, N − 1 і повертається до 0; йому потрібне найменше n, для якого 2ⁿ ≥ N, а його останній вихід має частоту fclk/N.
У послідовному лічильнику кожен ступінь тактується попереднім, тому затримки додаються: період такту має бути не меншим за n·tpd. Лічильники на зсувних регістрах використовують менше станів: кільцевий лічильник із n тригерів має n станів, лічильник Джонсона — 2n.
Самоперевірка 4-розрядний двійковий лічильник на додавання показує 13. Яке значення він покаже після ще 5 імпульсів такту?
18
2
3
8
Відповідь: 2. 4-розрядний лічильник має 16 станів і переходить з 15 до 0: 13 + 5 = 18, а 18 mod 16 = 2. Відповідь 18 не враховує переповнення.
6Типові помилки
Записувати стовпці карти Карно як 00, 01, 10, 11. Порядок — код Грея: 00, 01, 11, 10.
Забувати, що групи переходять через краї карти.
Робити групи по 3 або 6 клітинок. Групи мають 1, 2, 4, 8 або 16 клітинок.
Покривати байдужий стан, який не допомагає: X ніколи не мусить бути покритий.
Читати групу, залишаючи змінні, що змінюються. Залишайте лише ті, що лишаються сталими.
Забувати, що лічильник переходить через максимум: n-розрядний лічильник рахує за модулем 2ⁿ.
7Як виглядають екзаменаційні запитання
Легкий: обчислити вихід вентильної схеми для заданих входів, порахувати 1 у її таблиці істинності, розмістити мінтерм на карті Карно, кількість вентилів NAND для функції або найгіршу затримку поширення.
Середній: спростити вираз, знайти мінімальну форму SOP або POS за допомогою карти Карно, функція на мультиплексорі або ізольована 1 на карті.
Складний: карти з байдужими станами, істотні прості імпліканти, часові діаграми тригерів, лічильники після багатьох імпульсів, кількість тригерів або вихідна частота, а також зсувні регістри.
Перевірте спрощений вираз, підставивши один чи два рядки таблиці істинності: початковий і спрощений вигляди мають давати той самий вихід.
NAND і NOR — універсальні вентилі: будь-яку логічну функцію можна побудувати лише з одного з них. Яка мінімальна кількість N 2-вхідних вентилів NAND потрібна, щоб побудувати показану функцію AND?
F = A·B
Знайти: N
Показати підказки
Вентиль NAND зі з’єднаними входами є інвертором.
AND = NAND з наступним інвертором; OR = NAND від інвертованих входів (де Морган).
Рахуйте кожен вентиль, включно з тими, що використані як інвертори.
Показати відповідь і покроковий розв’язок
Логічні вентилі: кожен вхід і вихід дорівнює 0 або 1. AND дає 1 лише тоді, коли всі входи дорівнюють 1; OR дає 1, коли принаймні один вхід дорівнює 1; NOT інвертує. NAND і NOR — це AND і OR з наступним NOT, а XOR дає 1, коли входи різні. Проходьте схему від входів до виходу, вентиль за вентилем. Таблиця істинності перелічує вихід для всіх 2ⁿ комбінацій входів; номер рядка — це двійкове значення входів, тож рядок ABC = 101 є мінтермом m₅.
Побудуйте її з вентилів NAND
Закон де Моргана: A + B = (A′·B′)′, тож OR — це NAND від інвертованих входів.
F = A·B = NOT(NAND(A, B))
Порахуйте вентилі
N = 2
Відповідь
N = 2
Приклад 2Середня
На цій карті Карно рівно одна 1 не має сусідньої 1, тож у мінімальній формі SOP вона лишається групою з однієї клітинки (повний мінтерм із чотирьох літералів). Сусіди через краї карти враховуються. Клікніть цю клітинку.
F = Σm(0, 3, 4, 10, 13, 14, 15)
1AB = 00, CD = 00
2AB = 00, CD = 01
3AB = 00, CD = 11
4AB = 00, CD = 10
5AB = 01, CD = 00
6AB = 01, CD = 01
7AB = 01, CD = 11
8AB = 01, CD = 10
9AB = 11, CD = 00
10AB = 11, CD = 01
11AB = 11, CD = 11
12AB = 11, CD = 10
13AB = 10, CD = 00
14AB = 10, CD = 01
15AB = 10, CD = 11
16AB = 10, CD = 10
Показати підказки
Сусідні клітинки відрізняються рівно однією змінною.
Крайній лівий і крайній правий стовпці є сусідніми, так само верхній і нижній рядки.
Перевірте чотирьох сусідів (вгорі, внизу, ліворуч, праворуч, з переходом через край) кожної 1.
Показати відповідь і пояснення
Карти Карно: клітинки впорядковано за кодом Грея (00, 01, 11, 10), тож сусідні клітинки, зокрема через краї, відрізняються рівно однією змінною. Групуйте одиниці в прямокутники по 1, 2, 4, 8 або 16 клітинок, якомога більші й у якомога меншій кількості, доки кожну 1 не буде покрито. Кожна група — це один добуток: змінні, що лишаються сталими всередині неї. Група з 2ᵏ клітинок втрачає k змінних. Байдужі стани (X) можна використовувати, щоб групи були більшими, але їх не обов’язково покривати. Групування нулів замість одиниць дає мінімальну форму POS.
Сусіди кожної 1
1 із сусідньою 1 може приєднатися до групи з двох або більше.
m3: m2, m1, m7, m11 → 0
Ізольована 1
m3 = A′B′CD → AB = 00, CD = 11
Відповідь
AB = 00, CD = 11
Приклад 3Складна
Синхронний лічильник за модулем 12 рахує 0, 1, …, 11, а потім повертається до 0. Він починає з 8. Яке значення Q (у десятковому вигляді) він покаже після 36 імпульсів такту?
Q0 = 836N = 12
Знайти: Q
Показати підказки
Лічильник має 12 станів і повторюється через 12 імпульсів.
Після k імпульсів значення дорівнює (8 + k) mod 12.
36 mod 12 = 0.
Показати відповідь і покроковий розв’язок
Тригери та лічильники: тригер змінюється лише за активним фронтом такту. D копіює свій вхід (Q⁺ = D); T перемикається, коли T = 1; JK зберігає стан за 00, скидає за 01, встановлює за 10 і перемикає за 11. n-розрядний двійковий лічильник має 2ⁿ станів і рахує за модулем 2ⁿ; лічильник за модулем N рахує 0, 1, …, N − 1 і повертається до 0, і йому потрібне найменше n, для якого 2ⁿ ≥ N тригерів. Кожен ступінь послідовного лічильника ділить частоту навпіл, тож останній вихід лічильника за модулем N має частоту fclk/N. Лічильник Джонсона з n тригерів має 2n станів, кільцевий — n.
Повні цикли
Кожні 12 імпульсів повертають лічильник у той самий стан.
36 = 3·12 + 0
Значення після решти імпульсів
Q = (8 + 0) mod 12 = 8
Q = 1000₂
Відповідь
Q = 8
Запитання й відповіді
Цифрова логіка: вентилі, карти Карно та тригери: що це?
Цифрові схеми працюють із двома значеннями: 0 (низька напруга, хибність) і 1 (висока напруга, істина). Логічний вентиль приймає один або кілька входів і дає один вихід.
Цифрова логіка: вентилі, карти Карно та тригери: як розв’язувати задачі крок за кроком?
Для схеми рухайтеся від входів до виходу вентиль за вентилем і записуйте значення на кожному дроті, або запишіть її вираз і заповніть таблицю істинності.
Для спрощення занесіть одиниці (а байдужі стани як X) на карту Карно з рядками й стовпцями в коді Грея: 00, 01, 11, 10.
Покрийте одиниці якомога меншою кількістю якомога більших груп по 1, 2, 4, 8 або 16 клітинок, з переходом через краї; кожна група — це один добуток зі змінних, що лишаються сталими. Для форми POS групуйте нулі.
Для тригерів і лічильників читайте входи на кожному активному фронті такту, записуйте стан після кожного фронту й пам’ятайте, що n-розрядний лічильник переходить через максимум після 2ⁿ станів.
Цифрова логіка: вентилі, карти Карно та тригери: які помилки найпоширеніші?
Упорядкування карти Карно як 00, 01, 10, 11 замість коду Грея 00, 01, 11, 10.
Забування, що групи можуть переходити через краї, або групи по 3 чи 6 клітинок.
Покриття байдужих станів, які не збільшують групу.
Забування, що лічильник переходить через максимум, або читання Q₃Q₂Q₁Q₀ у неправильному порядку.
Цифрова логіка: вентилі, карти Карно та тригери: що ви тренуєте?
Легка: вентилі, таблиці істинності та затримки
Середня: булева алгебра, карти Карно та мультиплексори
Складна: байдужі стани, тригери та лічильники
Кожна задача має нові значення, тож ви вивчаєте метод, а не відповідь. Застрягли? Спершу відкрийте невелику підказку, а повне пояснення — лише коли воно знадобиться.
Як проходить тренування
Кожна задача має нові значення, тож ви вивчаєте метод, а не відповідь.
Застрягли? Спершу відкрийте невелику підказку, а повне пояснення — лише коли воно знадобиться.
Ваш прогрес, помилки та збережені задачі зберігаються, тож перед іспитом ви зможете все повторити.