Керування та контроль багатьох сучасних виробничих процесів уже давно виконується з використанням автоматизованих систем керування. Багато сучасних процесів дуже вимогливі до систем керування, що їх обслуговують. Одні вимагають високої швидкодії, інші - низької вартості. Це диктує необхідність розробки нових методів синтезу керувальних пристроїв з метою оптимізації їх характеристик.
        Відомо, що найбільшої швидкодії досягають автомати з "жорсткою" логікою, найбільш гнучкими є автомати з "програмувальною" логікою. Композиція цих двох автоматів одержала назву композиційного мікропрограмного пристрою керування.
Рисунок 1. Базова структура композиційного мікропрограмного пристрою керування (Flash-анімація. Використовуйте елементи керування для перегляду анімації)
        Класична структура КМУУ має ряд переваг:
формат МК містить тільки операційну частину (мінімізація розрядності керувальної пам'яті (КП));
використання природної адресації МК, однак в КП відсутні МК переходів (мінімізація ємності КП);
багатоспрямовані мікропрограмні переходи виконуються за один такт, що мінімізує час виконання мікропрограми.
        Мінімізація апаратурних витрат для реалізації пристрою є класичною проблемою. Одним з напрямків діяльності кафедри ЕОМ Донецького національного технічного університету є розробка й оптимізація керувальних пристроїв. Мені було запропоноване дослідження композиційних мікропрограмних пристроїв керування (КМПК) як перспективного методу рішення основних недоліків класичних типів керувальних пристроїв.
Досліджені в роботі алгоритми оптимізації автомата дозволяють знайти рішення даній проблемі для даного типу керувальних пристроїв.
        Метою даної роботи є синтез і дослідження композиційних мікропрограмних пристроїв керування з базовою структурою в базисі сучасних великих інтегральних схем (ВІС).
        Для досягнення даної мети вирішуються такі задачі:
розгляд і вивчення методів синтезу КМУУ, що існують у теперішній час;
аналіз алгоритмів оптимізації пристроїв;
аналіз елементного базису ПЛИС, що існує зараз;
вибір оптимального алгоритму оптимізації для реалізації КМПК на ПЛИС;
створення інструмента дослідження КМПК з метою практичної реалізації обґрунтованих алгоритмів оптимізації.
        Для практичного дослідження алгоритмів оптимізації розроблена система автоматизованого проектування (САПР) КМПК. Основний недолік КМПК - недостатня гнучкість у перепрограмуванні. Навіть при незначній зміні граф-схеми алгоритму синтез автомата необхідно виконувати спочатку. Застосування такого інструмента як САПР не вирішить проблему недостатньої гнучкості КМПК у перепрограмуванні, але дозволить заощаджувати людські та часові ресурси в процесі перепроектування керуючого автомата.
        САПР написана мовою С++, для збирання та відлагодження проекту було використане середовище Vіsual C++ 2005 Express Edіtіon, що доступне для вільного використання.
        Для тестування САПР використовувався редактор граф-схем алгоритму FSM-Edіtor, що розроблений магістром Лавриком А.С. у рамках проекту. Тестові граф-схеми алгоритмів виконувалися як вручну, так і за допомогою автоматичного генератора. При автоматичній генерації були отримані ГСА з заданими параметрами розгалуженості, середній кількості мікрооперацій в операторной вершині, кількості логічних умов і т.п.
даного проекту полягає в обґрунтуванні залежності вибору визначеної архітектури керувального пристрою від характеристик граф-схеми алгоритму керування. Планується досліджувати різні архітектури КМПК із базовою структурою для різних значень параметрів граф-схем алгоритмів керування. Відшукання закономірностей дозволить ще до етапу генерації керувального пристрою передбачити його характеристики у залежності від обраної архітектури та вибрати оптимальну з урахуванням обмежень на швидкодію та апаратурні витрати автомата.
        Кафедра ЕОМ Донецького національного технічного університету веде дослідження з напрямку "Синтез та оптимізація керувальних пристроїв" вже не перший рік. По даній тематиці були захищені як магістерські роботи, так і кандидатські дисертації, що говорить про визначні досягнення.
        Магістр
Цололо Сергій Олексійович
займався дослідженням методів синтезу пристроїв керування на програмувальних користувачем вентильних матрицях. Основну увагу приділив схемам FPGA фірми Xіlіnx.
       
Шишко Сергій Миколайович
виконував дослідження питання розробки та дослідження композиційних мікропрограмних пристроїв керування з кеш-пам'яттю. Основною задачею досліджень було збільшення швидкодії композиційних мікропрограмних пристроїв керування за рахунок зменшення середнього часу доступу до керувальної пам'яті.
       
Костянок Тетяна Миколаївна
розробляла методи синтезу мікропрограмних автоматів Милі з кодуванням об'єктів.
       
Войтенко Сергій Аркадійович
та
Бережок Олексій Юрійович
досліджували застосування UML при проектуванні кервальних автоматів. Підсумком роботи стала САПР, вхідними параметрами для якої є UML-схема реалізації керувального автомата.
        Робота
Скоропада Олександра Сергійовича
має назву "Розробка підсистеми САПР і верифікації керувального автомата Мура з багаторівневою архітектурою". Робота дужецікава з погляду використання в ній мови опису граф-схем алгоритму, що описує як зв'язки між вершинами, так і вміст вершин. Для пояснення синтаксичних конструкцій мови опису ГСА використовуються так названі форми Бекуса-Науера, що викорустовуються для опису граматик формальних мов.
       
Силуанов Антон Федорович
займався розробкою системи автоматизованого проектування микропрограмных автоматів Милі з перетворенням об'єктів у базисі FPGA. Кінцевим продуктом даної САПР є VHDL-файли опису архітектури пристроїв.
       
Боровльов Артем Сергійович
виконував схожу роботу, але об'єктом його досліджень був автомат Мура. По опису граф-схеми алгоритму виконується синтез VHDL-моделі автомата з застосуванням алгоритмів, що оптимізують.
        Найбільш близькою темою займався
Данилов Максим Васильович, робота якого має назву "Розробка i дослiдження системи автоматизованного проектування композицiйних мiкропрограмних пристроїв керування". Керівником є Ковальов Сергій Олександрович. Зазначена робота використовує специфічну мову опису граф-схем алгоритму, що ускладнює її використання. А також у ній не передбачені алгоритми оптимізації. Істотною перевагою поточного проекту в порівнянні з проектом Данилова Максима Васильовича є наділення САПР певним ступенем інтелекту, що полягає в попередньому оцінюванні характеристик керувального автомата та видачі рекомендацій з генерації певного типу архітектури автомата.
        САПР на даному етапі розробки реалізує синтез архітектури композиційного мікропрограмного пристрою керування з базовою структурою без алгоритмів оптимізації. Прийнята у вхідному XML-файлі стратегія кодування операторних та умовних вершин приймається як основна для іменування станів автомата, що не дає оптимального набору адрес переходів.
        Синтез комбінаційної схеми формування адреси наступного операторного лінійного ланцюжка виконаний тривіальним образом, без мінімізації використання однакових сигналів при формуванні багатоспрямованих переходів. Схема лічильника виконана на D-тригерах і залежить від кількості розрядів адреси керувальної пам'яті. Сама пам'ять виконана зовнішнього типу, що дозволяє використовувати отриманий VHDL-файли для реалізації в базисі CPLD. Вміст керувальної пам'яті на даному етапі зберігається в текстовий файл, що створюється в тій же директорії, що і вхідний XML-файл.
        У перспективі планується реалізувати модулі, що підключаються, які б виконували синтез оптимизованних архітектур автоматів. Крім реалізації алгоритмів, що зменшують розрядності адреси, вхідних шин умов і вихідних шин реакцій, планується реалізувати алгоритми оптимального іменування станів, що дозволить зменшити кількість функцій порушення пам'яті. Також при формуванні функцій порушення пам'яті можливо альтернативне використання як D-, так і T-тригерів, що дозволить мінімізувати кількість функцій порушення пам'яті.
        Модулі синтезу оптимизованных структур керувальних автоматів планується виконати у вигляді динамічних бібліотек, що дозволить зробити САПР більш гнучкою і розширюваною.
        Для досягнення поставленої мети були розглянуті методи синтезу КМПК із базовою структурою, що існують у теперішній час, а також алгоритми оптимізації архітектури пристрою з метою мінімізації його апаратурних витрат і часових характеристик. Для реалізації КМПК було вивчене різноманіття сучасного елементного базису ПЛИС, обрані основні характеристики інтегральних схем з метою синтезу оптимальних для реалізації в базисі керувальних пристроїв.
        Для дослідження алгоритмів оптимізації була створена САПР КМПК, що може бути також використана не тільки в наукових, але й у промислових цілях.
        Згідно з станом проекту на сьогоднішній день можна зробити висновок про те, що ціль буде досягнута після реалізації в САПР алгоритмів оптимізації КМПК, а також проведення ряду досліджень по визначенню межевих значень характеристик ГСА, що будуть використані за основу при аналізі довільної ГСА з метою рекомендації оптимальної для кожного конкретного випадку архітектури керувального автомату.
Баркалов А.А. Микропрограммное устройство управления как композиция автоматов с жесткой и программируемой логикой // АВТ. - 1983. - №4. - С. 42-50.
Баркалов А.А., Швец А.Г., Синтез композиционного микропрограммного устройства управления с модифицированной адресацией микрокоманд // АВТ. - 1994. - №5. - С.22-30.
Саломатин В.А., Баркалов А.А., Стародубов К.Е. Оптимизация логической схемы микропрограммного устройства управления на ПЛМ и ПЗУ // УСиМ. - 1987. - №2. - С. 57-60.
Соловьев В.В. Проектирование цифровых систем на основе программируемых логических интегральных схем. - М.: Горячая линия-Телеком, 2001. - 636с. ил.