- •Теоретичні відомості Закон функціонування.
- •Графи автоматів
- •Таблична форма закону функціонування автоматів
- •Визначення закону функціонування Автомату Мілі
- •Канонічні засоби структурного синтезу автоматів
- •Структурна таблиця автомату Мілі рис. 7.12
- •Синтез автомату Мілі на тригерах зі лічильним входом
Визначення закону функціонування Автомату Мілі
Нехай мікропрограма задана у виді закодованого графа (рис. 7.1, а) і для її інтерпретації використовується автомат Мілі з законом функціонування
A (t+1)=[А
(t), X (t)];
Y (t)=[A (t), X (t)]
Де А={а1, а2..., аn} — множина станів автомату, t=0, 1, 2,... і А (0)=a1 — початковий стан автомату. Мікропрограма оперує з чотирма логічними умовами X={x1,..., x4} і п'ятьма мікроопераціями Y= {y1,..., y5} Тому автомат, що реалізує цю мікропрограму, повинен мати чотири входу x1,..., x4 і п'ять виходів y1,..., y5. Необхідний набір станів автомату визначається шляхом позначки графа мікропрограми, що виробляється в наступному порядку:
1) символом a1 відмічається вхід першої верхівки, наступної за початком, а також вхід кінцевої верхівки;
Рис. 7.1. Граф мікропрограми і відповідний їй граф автомату Мілі
2) входи верхівок, наступних за операторними верхівками, відмічаються символами a2, a3,...
3) входи двох різних верхівок, за винятком кінцевої, не можуть бути відмічені однаковими символами;
4) вхід верхівки може визначатися тільки одним символом. Приклад позначки графа мікропрограми станами a1, a2,..., a6 автомату наведений на рис. 7.1, а. Припускається, що в початковому стані a1 автомат формує нульові значення на всіх виході y1,..., y5 По закінченню роботи автомат вертається в цей же стан a1.
Перехід по графу мікропрограми з позначки аi, в позначку aj в напрямку дуг графа визначає шлях
(1)
Де
якщо шлях проходить через вихід умовної
верхівки х, відмічений значенням
1, і
,
якщо шлях 'проходить через вихід,
відмічений значенням 0; ya
yb,..., y—
множина мікрооперацій, означена в єдиній
операторній верхівці, через яку проходить
даний шлях. Наприклад, на графі рис. 7.1,
а з позначки а1
в позначку а2
можна перейти двома шляхами:
а1
1у1у2а2
і а1х1у2а2 А з
позначки а2 в а4-по
єдиному шляху a2x2x3y1y4a4.
Шлях, що не проходить через умовні
верхівки, містить порожню множину
логічних умов aiyayb
... yaj.
Деякі шляхи, ведучі до позначки а1
— кінцевої верхівки графа, можуть
містити порожню множину мікрооперацій:
(2)
Очевидно, що увся множина шляхів виду (1) або (2) визначає множину переходів між станами ai і aj, автомату Мілі.
Якщо станам а1,
а2,..., an
поставити в відповідність верхівки
графа, а шляхам (1) і (2)-дуги, спрямовані
з верхівки аi
в верхівку aj і
відмічені наборами
значень вхідних і вихідних сигналів,
те отриманий граф буде визначати закон
функціонування автомату Мілі. Так, граф
мікропрограми рис. 7.1, a породжує автомат
Мілі з законом функціонування рис. 7.1,
б. Помітимо, що дуги на графі автомату
відмічаються тільки тими вхідними
сигналами X, що визначають можливість
переходу з стану ai
в стан aj і тими
вихідними сигналами У, що в даній
ситуації приймають значення 1. При Цьому
припускається, що всі інші вихідні
сигнали мають нульове значення.
Коли автомат не працює (мікропрограма не виконується), він знаходиться в початковому стані a1 При запуску (ініціюванні мікропрограми) автомат зберігає стан а1 на пртязі одного такту, за час якого виконуються мікрооперації, відповідні поточним значенням вхідних сигналів X. По закінченню першого такту автомат перемикається в черговий стан aj, що передбачаеться законом функціонування, і в ОА починає виконуватися наступний набір мікрооперацій. Момент закінчення мікропрограми відмічається поверненням автомату в початковий стан a1.
Для запуску автомату використовується спеціальний сигнал B, що відноситься до групи вхідних сигналів і має тривалість, рівну такту. Щоб виключити можливість появи вихідних сигналів y в моменти, коли автомат знаходиться в стані a1 і не працює, дугам, вихідним з верхівки a1 додатково приписується пускаючий сигнал В (рис. 7.1, б), тільки при одиничному значенні якого вихідним сигналам У присвоюється значення 1 і стає можливим перехід автомату в наступний стан. При В=0 автомат зберігає початковий стан і всі вихідні сигнали мають нульові значення. Введення сигналу В в закон функціонування автомату відповідає включенню верхівки ,що чекає В в граф мікро-
Рис. 7.2. Засіб введення додаткових станів
програми (рис. 7.1, в), з допомогою якої відзначається той факт, що виконання мікропрограми починається тільки при В=1.
Автомат Мілі може інтерпретувати мікропрограму коректно тільки в тому випадку, якщо для всіх переходів виду (1) виконується умова незалежності логічних умов x, x,..., x від результатів виконання мікрооперацій y, y,..., y.
Умова незалежності порушується, якщо на деякому переході aixx ... xyayb ... yaj спостерігається функціональна залежність x=f (yr). В такому випадку виконання мікрооперації уr може призвести до модифікації значення умови x, і автомат, реагуючи на новий набір вхідних сигналів, сформує набір вихідних сигналів, не відповідний мікропрограмі. Для запобігання цьому негативному ефекту необхідно проаналізувати всі переходи, що мають місце в автоматі, виявити-вхідні сигнали x, x,..., x що залежать від мікрооперації. Що породжуються ними, і структурними засобами виключити вплив цих сигналів на процес виконання мікрооперацій. Для цієї мети можна використати наступні засоби: 1) запам'ятовування значень сигналів x, x,..., x на проміжок часу, рівний тривалості такту; 2) введення в автомат додаткових станів; 3) реалізація автомата по схемі Мура.
Запам'ятовування сигналів x, x,..., x виробляється на тригерах, що перемикаються в стані x, x,..., x в кінці такту, водночас з переключенням автомату в новий стан. Порядок введення додаткових станів ілюструється рис. 7.2, а. Припускається, що x=(ya, yb) т. т. умова незалежності для даного фрагменту мікропрограми порушується. Як видно з рис. 7.2, б, додаткові стану аr і al виключають можливість переключення сигналів ya і уb при модифікації значення x. Введення додаткових станів наводить до додаткових затрат обладнання і збільшує час виконання мікропрограмми. Реалізація останнього засобу розглядається нижче.
