Міністерство освіти і науки України
Національний університет
”Львівська політехніка”
Кафедра АСУ
про виконання розрахунково-графічної роботи № 2
“Синтез цифрового автомата послідовнісного типу”
Вступ
Цифрові автомати (ЦА) оперують з інформацією, представленою у вигляді цифрових (дискретних) значень фізичних величин. Будь-яке число реалізується комбінацією станів окремих фізичних елементів. Оскільки в ЦА в основному застосовується двійкова система числення, то як елементи використовуються найпростіші фізичні елементи, що володіють тільки двома стійкими станами. Точність представлення будь-якої математичної змінної в ЦА залежить тільки від вибраного числа розрядів двійкового коду, що принципово забезпечує високу точність рішення задач. Великою перевагою ЦА є те, що вони є алгоритмічно універсальні перетворювачі інформації з гнучким програмним управлінням і з повною автоматизацією рішення задачі. Ця обставина дозволяє використовувати ЦА для вирішення принципово будь-яких задач, що мають алгоритм рішення. Проте алгоритмічне рішення будь-якої задачі пов'язане з послідовністю виконання елементарних операцій, тому час рішення задач на ЦА залежить від кількості таких операцій і часу їх виконання, тобто у ряді випадків швидкодія ЦА може бути недостатньою для вирішення задач в реальному масштабі часу або при необхідності обробки великих масивів інформації.
Все різноманіття елементів, вузлів, блоків і пристроїв, з яких складається будь-який комп’ютер, є прикладом різних типів того або іншого ступеня складності перетворювачів цифрової інформації — цифрових автоматів. Методи теорії цифрових автоматів, що є математичною моделлю цифрових (дискретних) пристроїв, використовуються як теоретична база для аналізу і синтезу різних цифрових вузлів і пристроїв обчислювальних машин. Оскільки, при вивченні цифрових автоматів мають справу з математичними моделями, то вживання основних положень теорії цифрових автоматів не обмежується конкретною областю, наприклад комп’ютером, а може бути використано для аналізу і синтезу різних автоматичних пристроїв в багатьох областях науки і техніки.
Під цифровим автоматом розуміється пристрій, призначений для перетворення цифрової (дискретної) інформації, здатний переходити під впливом вхідних сигналів з одного стану в інший і видавати вихідні сигнали. Відмітні особливості цифрових автоматів полягають в тому, що вони мають дискретну множину внутрішніх станів і перехід з одного стану в інший здійснюється стрибкоподібно. Дискретність інформації, перетворюваної в автоматі, полягає в тому, що вона представляється за допомогою набору слів скінченої довжини в деякому алфавіті. У двійковому алфавіті, слова представляються у вигляді ланцюжка з нулів і одиниць.
Цифрові автомати функціонують в дискретні моменти часу, часовий інтервал T між якими називається тактом. Залежно від того, чим визначається час Т, розрізняють автомати синхронної і асинхронної дії.
Для цифрового автомата синхронної дії вхідні сигнали діють в строго певні моменти часу при Т=const, визначені генератором синхронізуючих імпульсів, в які можливий перехід автомата з одного стану в інший.
Для цифрового автомата асинхронної дії Т≠const і визначається моментами надходження вхідних сигналів, а перехід автомата з одного стану в інший здійснюється при незмінному стані входу.
Для цифрових автоматів, що ідеалізуються, коли не враховуються перехідні процеси в елементах схеми автомата, різниця у фактичних величинах Т для правильного функціонування автомата не має значення, тому для опису законів функціонування цифрових автоматів вводять абстрактний час, що приймає цілі позитивні значення t=0, 1, 2 ...
По ступеню деталізації опису довільних цифрових автоматів розрізняють автомати абстрактні і структурні. Відповідно до цих класів розрізняють абстрактну і структурну теорію цифрових автоматів.
Абстрактні цифрові автомати розглядаються як «чорний ящик», один вхід і один вихід, тобто при розгляді таких автоматів не вдаються до подробиць структури як самого цифрового автомата, так і його вхідних X(t) і вихідних Y(t) сигналів.
Цифрові автомати, закон функціонування яких визначається рівняннями які залежать від вхідних сигналів, називаються автоматами Милі. На відміну від них є автомати, для яких вихідні сигнали залежать тільки від стану автомата і не залежать від значення вхідних сигналів. Такі автомати називаються автоматами Мура.
Таблиця переходів і виходів або граф цифрового автомата в явному вигляді задає функцію переходів і виходів і реалізує відображення множини слів вхідного алфавіту в множину слів вихідного алфавіту, тобто будь-якому вхідному слову з вхідного алфавіту автомата відповідатиме чітко визначене вихідне слово з вихідного алфавіту.
У разі, коли два цифрові автомати із загальним вхідним і вихідним алфавітом індукують одне і те ж відображення множини слів у вхідному алфавіті в множину слів у вихідному алфавіті, такі автомати - еквівалентні.
Структурний цифровий автомат на відміну від абстрактного є його подальшою деталізацією, коли розглядається як його внутрішня структура, так і структура вхідних і вихідних сигналів. Це означає, що в теорії таких автоматів вивчаються методи побудови автоматів з елементарних автоматів, способи кодування внутрішніх станів автомата, а також кодування вхідних і вихідних сигналів елементарними сигналами що подаються по реальних фізичних вхідних і вихідних каналах. При рішенні питань кодування кожному стану абстрактного автомата ставиться у відповідність комбінації станів елементарних автоматів, що мають два внутрішні стани, а кожному вхідному (вихідному) сигналу — комбінація елементарних двозначних сигналів, що одночасно подаються по вхідних (вихідних) реальних фізичних каналах.
Одна з основних задач теорії цифрових автоматів, вирішуваних стосовно побудови різних цифрових пристроїв комп’ютерів, полягає в тому, щоб задачу аналізу і синтезу таких пристроїв звести до задачі аналізу і синтезу комбінаційних схем. При цьому як основний математичний апарат використовується апарат алгебри логіки.
Лічильники імпульсів є дуже поширеними функціональними вузлами, без яких не обходяться більшість цифрових автоматів. Їх призначення: підрахунок імпульсів, які надходять на вхід лічильника; тимчасове зберігання кожного стану; перетворення послідовності імпульсів, що надходять на вхід лічильника, в паралельний двійковий код на його виходах; ділення частоти вхідного імпульсного сигналу.
Лічильники можна поділити на чотири основні групи: прямої лічби (підсумовуючі); зворотної лічби (віднімаючі); реверсивні (підсумовуючі і віднімаючі); подільники частоти.
Лічильники прямої лічби працюють за принципом підсумовування імпульсів, які надходять на вхід. Загальна кількість імпульсів відображається на виходах лічильників у паралельному двійковому коді. Основою лічильників прямої лічби є лічильні тригери. Щоб визначити більшу кількість імпульсів, що їх може полічити такий лічильник, треба збільшити розрядність лічильника, тобто додати до схеми додаткову кількість тригерів.
Широко застосовують реверсивні лічильники, призначені для лічби в двох напрямах. Лічильники різних типів випускають в інтегральному виконанні; вони можуть містити ще деякі додаткові пристрої, наприклад регістри.
У ряді вузлів цифрової техніки виникає необхідність на кожні m вхідних імпульсів видавати n вихідних. Наприклад, у цифрових годинниках на кожні 60 секундних імпульсів видається один вихідний імпульс, який надходить на лічильник хвилин і т. д. Такі пристрої називають подільниками частоти. Відношення m/n=k називають коефіцієнтом поділу (коефіцієнтом перерахунку). Як подільники частоти використовують лічильники. Ідея побудови подільника частоти з будь-яким коефіцієнтом поділу така. До лічильника додають вузол, який після відлічування певної кількості імпульсів, що дорівнює коефіцієнту поділу, скидає лічильник на нуль, а потім процес відлічування знову продовжується. Таким чином можна побудувати лічильник-подільник з будь-яким коефіцієнтом поділу.
Технічне завдання
Синтезувати цифровий автомат на базі лічильника імпульсів, який послідовно відтворює цифри Вашої залікової книжки, при чому: a – остання цифра залікової книжки; b – передостання цифра залікової книжки.
Тип тригерів:
D-тригери, якщо b парна;
JK-тригери, якщо b непарна.
Реалізувати цифровий автомат на мікросхемах серії ТТЛШ, якщо a парна, КМОН – якщо а непарна.
Цифровий автомат повинен мати такий вигляд:
С – синхронізуючий вхід;
R – вхід сигналу перезапуску;
Q0-Qn – виходи розрядів цифри (Q0 – молодший розряд). Кількість
розрядів (n) залежить від розрядності максимальної цифри
номера залікової книжки.
Синтез цифрового автомата
Номер залікової книжки: 0208372
Визначення розрядності лічильника
Цифровий автомат потрібно виконати на основі 4-розрядного лічильника, бо для представлення максимальної цифри залікової книжки (8) у двійковому коді необхідно чотири розряди.
Таблиця станів лічильника
№ станів
Цифри
Розряди
Q3
Q2
Q1
Q0
0
0
0
0
0
0
1
2
0
0
1
0
2
0
0
0
0
0
3
8
1
0
0
0
4
3
0
0
1
1
5
7
0
1
1
1
6
2
0
0
1
0
Часові діаграми роботи автомату
Графи переходів станів автомата
Граф з безумовним переходом
Граф з умовним переходом
Таблиця переходів автомата
№ станів
Цифри
Розряди (в мом. часу t)
Розряди (в мом. часу t + 1)
Q3
Q2
Q1
Q0
Q3
Q2
Q1
Q0
0
0
0
0
0
0
0
0
1
0
1
2
0
0
1
0
0
0
0
0
2
0
0
0
0
0
1
0
0
0
3
8
1
0
0
0
0
0
1
1
4
3
0
0
1
1
0
1
1
1
5
7
0
1
1
1
0
0
1
0
6
2
0
0
1
0
0
0
0
0
Характеристична таблиця роботи JK-тригера
Qt
Qt+1
J
K
0
0
0
-
0
1
1
-
1
0
-
1
1
1
-
0
Таблиці переходів тригерів
Y0
Q2 Q3
00
01
11
10
Q0 Q1
00
00
01
00
01
00
00
11
11
10
10
Y1
Q2 Q3
00
01
11
10
Q0 Q1
00
01
01
00
01
10
10
11
11
11
10
Y2
Q2 Q3
00
01
11
10
Q0 Q1
00
00
00
00
01
00
00
11
01
10
10
Y3
Q2 Q3
00
01
11
10
Q0 Q1
00
00
10
01
01
00
00
11
00
00
10
Мінімізація функцій лічильника за допомогою карт Карно
J0
Q2 Q3
00
01
11
10
Q0 Q1
00
0
1
0
01
0
0
11
-
-
10
J1
Q2 Q3
00
01
11
10
Q0 Q1
00
1
1
0
01
-
-
11
-
-
10
J0 = Q3Q2Q1Q0 J11 = Q3Q2Q1Q0 + Q3Q2Q1Q0 = Q2Q1Q0
J1 = Q3Q2Q1Q0
J2
Q2 Q3
00
01
11
10
Q0 Q1
00
0
0
0
01
0
0
11
1
-
10
J3
Q2 Q3
00
01
11
10
Q0 Q1
00
0
-
1
01
0
0
11
0
0
10
J2 = Q3Q2Q1Q0 J3 = Q3Q2Q1Q0
K0
Q2 Q3
00
01
11
10
Q0 Q1
00
-
-
-
01
-
-
11
0
1
10
K1
Q2 Q3
00
01
11
10
Q0 Q1
00
-
-
-
01
1
1
11
0
0
10
K0 = Q3Q2Q1Q0 K1 = Q3Q2Q1Q0
K2
Q2 Q3
00
01
11
10
Q0 Q1
00
-
-
-
01
-
-
11
-
1
10
K3
Q2 Q3
00
01
11
10
Q0 Q1
00
-
1
-
01
-
-
11
-
-
10
K2 = Q3Q2Q1Q0 K3 = Q3Q2Q1Q0
Структурна схема автомата
Принципова схема автомата (на мікросхемах ТТЛШ логіки)