Кодування наборів мікрооперацій в трьохрівневому суміщеному автоматі
DOI:
https://doi.org/10.18372/2310-5461.44.14314Ключові слова:
суміщений мікропрограмний автомат, синтез, FPGA, LUT, розбиття, набори мікроопераційАнотація
В даний час моделі мікропрограмних автоматів (МПА) широко використовуються для завдання поведінки пристроїв керування (ПК). До однієї з таких моделей відноситься суміщений МПА (СМПА). Його характерною рисою є наявність двох типів вихідних сигналів. Вихідні сигнали автомата Милі існують при переходах між станами автомата. Вихідні сигнали автомата Мура визначаються тільки станами автомата і тривають майже цілий такт. У силу універсальності цієї моделі вона стала базовою для досліджень наведених в даній статті.
Найбільш популярним базисом, який використовується для реалізації цифрових систем, є мікросхеми FPGA (field-programmable logic arrays). Основними елементами FPGA, які використовуються для реалізації МПА, є елементи табличного типу LUT (look-up table), програмовані тригери і програмовані міжз’єднання.
В роботі запропоновано метод зменшення апаратурних витрат у схемі суміщеного автомата, що реалізовується в спільному базисі елементів LUT і блоків пам'яті EMB. Метод заснований на заміні логічних умов і розбитті множини логічних станів на класи. Кожен клас відповідає окремому блоку схеми. Такий підхід призводить до схем з регулярною структурою і трьома логічними рівнями. Це спрощує завдання розміщення і трасування при реалізації схеми суміщеного мікропрограмного автомата (СМПА). Позитивною рисою запропонованої моделі є той факт, що сигнали синхронізації і запуску пов'язані тільки з одним блоком схеми. Це дозволяє уникнути проблем, пов'язаних з так званим перекосом синхронізації.
Аналіз спеціальної бібліотеки показав, що запропонований метод доцільно використовувати для 78% тестових прикладів. Дослідження проводилися для мікросхем сімейства Virtex-6 (S = 6). При цьому розроблені моделі СМПА відрізнялися великою швидкодією, ніж їх аналоги, що мають попередню структуру. Для решти 22% тестових прикладів виграш був значно менше, так як спеціалізовані блоки LUT реалізовувалися у вигляді багаторівневих схем.
Подальший напрям досліджень пов'язаний з: 1) заміною деяких LUT блоками EMB і 2) використанням методів кодування логічних умов для зменшення параметра K.Посилання
Grout I. Digital Systems Design with FPGAs and CPLDs. Amsterdam: Elseveit, 2008. 784 pp.
Баркалов А.А., Титаренко Л. А., Визор Я. Е., Матвиенко А. В., Горина В. В. Уменьшение числа LUT элементов в схеме совмещенного автомата. Управляющие системы и машины. 2016. №3.
С. 16–22.
Грушницкий Р. И., Мурсаев А. Х., Угрюмов Е. П. Проектирование систем с использованием микросхем программируемой логики. СПб: БХВ. Петербург, 2002. 608 с.
Skliarova I., Sklyarov V., Sudnitson A. Design of FPGA–based circuits using Hierarchical Finite State Machines. Tallinn: TUT Press, 2012. 240 pp.
Jozwiak L., Chojnski A. Effective and efficient FPGA synthesis through general functional decomposition. Journal of System Architecture. 2003. №4. Pp. 247–265.
Баркалов А. А., Титаренко Л. А., Визор Я.Е., Матвиенко А.В. Уменьшение аппаратурных затрат в совмещенных автоматах. Управляющие системы и машины. 2017. №4. С. 43–50.
Баркалов А.А., Титаренко Л.А., Визор Я.Е., Матвиенко А.В. Реализация схемы совмещенного автомата в базисе FPGA. Комп’ютернi засоби, мережi та системи. К.: Ін-т кібернетики імені
В. М. Глушкова НАН України, 2016. С. 10–19.
Baranov S. Logic Synthesis for Control Automata. Dordrecht: Kluwer Academic Publishers, 1994. 312 pp.
Intel. FPGAs and Programmable Devises. URL: www.altera.com (date access 15.09.2019).
Xilinx. Adaptable & Real-Time AI Inference Acceleration. URL: www.xilinx.com (date access 15.09.2019).
Yang S. Logic Synthesis and optimization benchmarks user guide. Microelectronics Center of North Carolina. 1991. 43 pp.
Kubica M., Kania D., Kulisz J. A technology mapping of FSMs based on a graph of excitations and outputs. IEEE Access. 2018. №6. Pp. 16123–16131.
Rawski M., Tomaszewicz P., Borowski G., Łuba T. Logic Synthesis Method of Digital Circuits Designed for Implementation with Embedded Memory Blocks on FPGAs. Design of Digital Systems and Devises. LNEE 70. Berlin: Springer, 2011. Pp. 121–144.
Barkalov A., Titarenko L. Logic Synthesis for FSM–based Control Units. Berlin: Springer, 2009. 233 pp.
Barkalov A., Titarenko L., Mazurkiewicz M. Foundations of embedded systems. Berlin: Springer, 2019. 196 pp.
Баркалов А.А., Титаренко Л.А., Визор Я.Е., Матвиенко А.В. Реализация схемы совмещенного микропрограммного автомата в базисе FPGA. Проблеми інформатизації та управління. 2015. Вип. 3(51). С. 5–13.
Соловьев В.В. Проектирование цифровых схем на основе программируемых логических интегральных схем. М. : Горячая линия ТЕЛЕКОМ, 2001. 636 с.
Jozwiak L. Using FPGAs in Cyber-Physical Synthesis. Journal of System Architecture. 2013. №2. Pp. 124–1365.
Opara A., Kubica M., Kania D. Method of improving time efficiency of decomposition dedicated at FPGA structures and using BDD in process of cyber-physical synthesis. IEEE Access. 2019. №1. Pp. 18101–18113.
Barkalov A., Titarenko L., Mielcatek K. Twofold state assignment for FPGA - based Mealy FSMs. Proceedings of International Conference
MOCAST-18 (Thessaloniki, Greece. – New York). IEEE Explore. 2018. Pp. 1–4.
Barkalov A., Titarenko L., Mielcatek K. Hardware Reduction for LUT-based Mealy FSMs. International Journal of Applied Mathematics and Computer Science. 2018. V. 28. № 3. Pp. 595–607. doi.org/10.2478/amcs-2018-0046.
Sklyarov V., Skliarova I., Barkalov A., Titarenko L. Synthesis and Optimization of FPGA-based Systems. Berlin: Springer, 2014. 432 pp.