Керуючі автомати з жорсткою логікою будуються на базі логічних й запам’ятовуючих елементів, які об’єднуються в логічну схему, яка функціонує в відповідності з заданим законом.
Розрізняється два типи автоматів: Мура і Мілі. Мура простіший в розумінні, Мілі – складніший, при реалізації – навпаки. У Мура Вихідні сигнали пов’язані тільки зі станами, для Мілі вихідні сигнали залежать як від станів, так і від вхідних сигналів.
Коли графік програми позначають станами, то для Мура станами позначають операційні вершини, для Мілі – зв’язки між операційними вершинами так, щоб витратити якомога менше станів, причому, щоб кожна операційна вершина знаходилась між двома станами, і між двома операційними вершинами був стан.
2.2 Розробка алгоритму роботи автомату
Перейдемо від блок-схеми алгоритму до блок-схеми автомата позначивши станами зв’язки між операційними вершинами так, щоб витратити якомога менше станів, причому, щоб кожна операційна вершина знаходилась між двома станами, і між двома операційними вершинами був стан.
Позначаємо через X умовні вершини, якщо зустрічаються однакові умовні вершини, то і їх позначаємо однаково. Отримали всього 5 різних умовних вершин.
Через Y позначимо операції, якщо зустрічаються однакові операції, то вони теж позначаються однаково. Якщо між операціями немає умовної вершини то їх об’єднуємо в одну операційну вершину і між ними не ставиться стан. Кількість розставлених станів дорівнює 10, для їх кодування використаємо 4 двійкових розрядів.
2.3 Побудова графа автомата
Наступним кроком у синтезі керуючого автомату є перехід до графу автомата. Якщо станам поставити в відповідність вершини графа, а шляхам переходу від одного стану до іншого через умовні та операційні вершини – дуги (з цієї вершини в наступну), які відмічені набором значень вхідних та вихідних сигналів, то отримаємо граф який буде визначати закон функціонування автомата Мілі. Відмітимо, що дуги на графі автомата відмічаються тільки тими вхідними сигналами, які визначають можливість переходу між станами, і тими вихідними сигналами, які в даній ситуації приймають відповідне значення.
2.4 Побудова таблиці функціонування
Таблиця функціонування – це таблиця переходів. В ній кожна стрічка це перехід між станами автомата, де вказується попередній стан, його код, наступний стан і його код, вхідні сигнали, які викликають цей перехід, вихідні сигнали, які пов’язані з цим переходом, сигнали збудження входів запам’ятовуючих елементів (тригерів).
Автомат вказаний на графі має 10 станів, для їх кодування використовуємо 4 двійкових розряди, тому потрібно 4 тригера. Закодуємо стани автомата таким чином: а1 = 0001, а2 = 0010, а3 = 0011, а4 =0100, а5 = 0101, а6 = 0110, а7= 0111, а8 = 1000, а9 = 1001, а10 = 1001.
Попереднійстан | КодТ4Т3Т2Т1 | Наступнийстан | КодТ4Т3Т2Т1 | Вхіднісигнали | Вихіднісигнали |
a10 | 1010 | a1 | 0001 | X5X5 | Y14Y15 |
a1 | 0001 | a2 | 0010 | Y1 | |
a2 | 0010 | a3 | 0011 | X1 | Y2 |
a2a3 | 00100011 | a4 | 0100 | X1 | Y3Y3 |
a4 | 0100 | a5 | 0101 | X2 | Y4 |
a4a5 | 01000101 | a6 | 0110 | X2 | Y3Y3 |
a6 | 0110 | a7 | 0111 | X3 | Y5 |
a6a7a9 | 011001111001 | a8 | 1000 | X3 | Y3 Y6 Y7 Y8Y3 Y6 Y7 Y8Y3 Y11 Y12 |
a8 | 1000 | a9 | 1001 | X4 X2X4 X2 | Y9Y10 |
a8 | 1000 | a10 | 1010 | X4 | Y13 |
2.5 Синтез схеми керуючого автомату
На основі таблиці функціонування складаємо рівняння збудження тригерів:
Для вхідних сигналів:
DT1 = a10 + a2 x1 + a4 x2 + a6x3 + a8x4; DT2 = a1 + a2 x1 + a4 x2+ a5 + a6x3 + a8 x4; DT3 = a2 x1 + a3 + a4 +a5 + a6x3; DT4 = a7 + a6x3 + a9+ a8;Для вихідних сигналів:
y1 = a1;
y2 = a2x1;
y3 = a2x1+a3+a4x2+a5+a6x3+a7+a9;y4 = a4x2;
y5 = a6x3;
y6 =a6x3+a7; y7 = a6x3+a7; y8 = a6x3+a7; y9 = a8x4x2; y10= a8x4x2;y11= a9;
y12= a9;
y13= a8x4;
y14= a10x5;
y15= a10x5.На основі цих рівнянь синтезуємо схему керуючого автомату. Для зручності побудови використаємо шину. Оскільки автомат має 10 станів, для кодування яких потрібно 4 двійкових розряди то для побудови схеми використаємо 4 D-тригера з керуючими тактовими входами.
2.6 Побудова структурної схеми автомату
Побудуємо також структурну схему автомату:
Висновок
У першому розділ курсової роботи було розроблено алгоритм виконання вказаної операції над числами.
Друга частина – присвячена розробці автомата Мілі: побудова граф схеми автомата, побудова таблиці переходів, синтез керуючого автомата і побудова структурної схеми автомата.
Використана література
1. А.Я. Савльев «Прикладна теория цифрових автоматів» – Москва В. Шк. – 1987.
2. Методичні вказівки до вивчення курсу «Прикладна теорія цифрових автоматів» – Вінниця ВДТУ-1997.
3. Каган Б.М. «Электронные вычислительные машины и системы». Москва Энергоатомиздат 1991 г. с. 592
4. Методические указания к практическим занятиям по курсу «Теория и проектирование ЦВМ» – Винница ВПИ-1982.
5. К.Г. Самофалов «Цифровые ЭВМ» – ВШ – 1989.