Мікропрограмні автомати
Найпростіші Мікропрограмні автомати
В керуючих системах поряд зі схемами керуючих пристроїв з жорсткою логікою широко застосовуються автомати, що програ-муються, різної міри універсальності і складності. Загальною для них є наявність в їх структурі керуючої програми.
Найпростіші керуючі автомати, що програмуються, ґрунтують-ся на простому переборі керуючих команд. У цьому випадку кож-на подальша команда Аі+1 виконується після закінчення поперед-ньої Aі, і= 1, 2, ..., п, що забезпечується асинхронною роботою ав-томата, коли на його тактований вхід надходять сигнали від кінце-вих вимикачів керованого ним обладнання. Граф-схема алгоритму (ГСА) такого автомата є лінійною, являючи собою тільки послі-довність керуючих команд, і не має ні розгалужень, ні циклів (див. рис. 4.1).
Рисунок 4.1. Лінійна ГСА
Програма роботи автомата, що відповідає такій ГСА, най-більш проста і складається з послідовного перебору станів автома-та. Ці стани, подані в двійковій формі, називаються макрокоманда-ми, а створені ними програми — мікропрограмами.
Означення 1. Цифрові автомати, що використовують для своєї роботи мікропрограми, називаються мікропрогромними автомата-ми (МПА).
Структура найпростішого МПА, що реалізує лінійну ГСА, на-ведена на рис. 4.2.
Рисунок 4.2. Найпростіший керуючий МПА на регістрі
Вона містить регістр RG, дешифратор DC. блок формування команд керування (БФКК) і блок формування мікро-команД (БФМК).
Блок формування команд керування вирішує завдання підсилення і формування команд керування, які надходять потім на виконавчі органи об'єкта керування.
Блок формування микрокоманд призначений для перетворення вихідних сигналів дешифратора DC в мікрокоманди, що являють собою двійкові кодові комбінації.
Функціонально цей блок є шифратором, що перетворює сигнал на одному із своїх р входів в п=]log2p[ .
Рисунок 4.3. Найпростіший керуючий МПА на лічильнику
Працює МПА, що розглядається, таким чином. У початковою стані за відсутності тактового імпульсу ТІ регістр RG встановлений сигналом Уст»0» в початковий нульовий стан. Відповідно на виході «0» дешифратора DC буде вироблятись сигнал, який надходить на відповідний йому вхід БФМК, де він перетворюється у двійкову кодову комбінацію мікрокоманди довжини п, яка потім подається на відповідні входи регістра RG. Одночасно із цим сигнал з дешифратора DC надходить також на відповідний йому вхід БФКК, де відбувається його формування і підсилення.
При надходженні тактового імпульсу ТІ на синхровхід С регіст-ра RG в нього заноситься нова микрокоманда з БФМК, яка повин-на виконатися услід за початковою мікрокомандою, і потім цикл роботи МПА повторюється відповідно до вищеописаного.
Розглянуту на рис. 4.2 структуру МПА можна спростити, ввівши замість регістра лічильник, наприклад, з вісьмома стана-ми—000, 001, 010, 011, 100, 101, ПО, 111 (див. рис. 4.3).
Тоді нова структура МПА буде містити двійковий лічильник СТ2 на три розряди, дешифратор DC із вісьмома виходами і БФКК.
У початковий нульовий стан керуючий автомат встановлюється імпульсом на вході Уст «0». За тактовими імпульсами ТІ, що надходять на лічильний вхід «+1», лічильник послідовно проводить перебір своїх станів, які потім розшифровуються дешифраторів подаються на входи БФКК. У результаті на виходах БФКК послідовно з'являються керуючі команди А0, А1, ..., А7, які подаються на об'єкт керування до появи кінцевого сигналу Ак = А7 про закінчення процесу керування.
МПА можна також реалізовувати за допомогою розподільників імпульсів, які набули широкого розповсюдження в різних керуючих пристроях внаслідок простоти своєї структури і доброї надійності. Однак число тригерів, що міститься в них, дорівнює не ]log2 р[, як це було в МПА з регістрами чи лічильниками, а р, що при великій кількості команд керування призводить до додаткових апаратурних витрат.
Важливим показником ефективності МПА є час перемикання команд керування, а також час «перекриття» команд, які зміню-ються.
Час перекриття являє собою час, протягом якого співіснують дві команди, перша з яких виконується, а друга в цей час прихо-дить. Процес перекриття називають ще гонками.
Час перемикання МПА впливає на його швидкодію, а гонки — на його надійність. Тому час перемикання І гонок намагаються зменшувати, підвищуючи таким чином швидкодію і надійність МПА. Це досягається застосуванням складних структур лічиль-ників та розподільників імпульсів з протигоночними елементами І спеціальним кодуванням.
Мудрець не любить багатства,
але віддає йому перевагу над бідністю.
Сенека
Лекція 25. Універсальні мікропрограмні автомати Уїлкса
Розвиваючи структуру найпростішого керуючою мікропрограмного автомата, легко перейти до універсального мікропрограмного автомата, суттєвою відміною якого від найпростішого є те що в ньому допускаються цикли і розгалуження у мікропрограмі, яка ним виконується.
Означення 1. Автомат, алгоритм якого задається введеною в нього мікропрограмою, що містить цикли і розгалуження, нази-вається універсальним мікропрограмним автоматом.
Таким автоматом є автомат Уїлкса. Мікропрограмний автомат Уїлкса складається із регістра RG, дешифратора DC, блока пе-ревірки логічних умов (БПЛУ), блока формування команд керу-вання (БФКК) і блока формування микрокоманд (БФМК), який яв-ляє собою звичайний шифратор (див. рис. 4.4 і рис. 4.7).
БПЛУ має дві групи входів, на одну з яких надходять сигнали із р виходів дешифратора, а на другу — логічні умови х1, х2,..., хр від датчиків, що знаходяться на керованому об'єкті. Перевірка цих умов і вироблення на їх основі подальшого шляху виконання мікропрограми є основною функцією БПЛУ. Завдяки такій функції можливе здійснення розгалужень і циклів, що реалізуються мікропрстрамами у автоматах.
Число умов може бути будь-яке, але не більше числа виходів де-шифратора р. Тому максимальне число виходів в БПЛУ не може перевершувати 2р.
Кожна логічна умова в автоматі Уїлкса перевіряється за допо-могою логічного вузла у БПЛУ, який реалізується двома двовходовими схемами І (див. рис. 4.5), на один із двох входів яких надходить сигнал z(t) із дешифратора, що діє в