Научная статья на тему 'Уменьшение аппаратурных затрат при реализации схемы автомата Мура на гибридных FPGA'

Уменьшение аппаратурных затрат при реализации схемы автомата Мура на гибридных FPGA Текст научной статьи по специальности «Математика»

CC BY
89
18
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
УМЕНЬШЕНИЕ АППАРАТУРНЫХ ЗАТРАТ / МПА МУРА / ГИБРИДНЫЕ FPGA / ПСЕВДОЭКВИВАЛЕНТНЫЕ СОСТОЯНИЯ / ВСТРОЕННЫЕ ЭЛЕМЕНТЫ PLA

Аннотация научной статьи по математике, автор научной работы — Цололо С. А.

В работе предлагается метод уменьшения аппаратурных затрат в схеме микропрограммного автомата (МПА) Мура при реализации в базисе современных гибридных FPGA. Метод использует особенности МПА Мура и элементного базиса FPGA, и основан на использовании двух источников классов псевдоэквивалентных состояний благодаря большому количеству входов встроенных элементов PLA в гибридных FPGA. Ил.: 3. Библиогр.: 17 назв.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Уменьшение аппаратурных затрат при реализации схемы автомата Мура на гибридных FPGA»

УДК 4.274

С.О. ЦОЛОЛО, канд. техн. наук, доц., ГВУЗ "ДонНТУ",

Красноармшськ

ЗМЕНШЕННЯ ВИТРАТ АПАРАТУРИ ПРИ РЕАЛ1ЗАЦП

СХЕМИ АВТОМАТА МУРА НА Г1БРИДНИХ FPGA

У робот пропонуеться метод зменшення витрат апаратури у cxeMi мжропроцесорного автомату (МПА) Мура при реалiзацiï в базисi гiбридниx FPGA. Метод використовуе особливосп МПА Мура i елементного базису FPGA та заснований на використанш двох джерел клаав псевдоеквiвалентниx станiв завдяки великш юлькоста вxодiв вбудованих елементiв PLA в сучасних пбридних FPGA. 1л.: 3. Бiблiогр.: 17 назв.

Ключов1 слова: зменшення витрат апаратури, МПА Мура, гтбридш FPGA, псевдое^валентш стани, вбудоваш елементи PLA.

Постановка проблеми та анал1з досл1джень. Одним з сучасних напрямшв у технологи FPGA е так називаш пбридш FPGA [1, 2]. До складу под1бних ПЛ1С входять табличш елементи типу LUT (look-up table) i вбудоваш програмувальш лопчш матриц (PLA, programmable logic array). У лггератур1 практично вщсутш методи синтезу пристро1в керування, що ор1ентоваш на пбридш FPGA. Модель мшропрограмного автомата (МПА) Мура часто використовуеться при реал1заци схем пристроï'в керування [3, 4], як1 е важливою частиною цифрових схем [5]. У наш час програмувальш лопчш штегральш схеми (ПЛ1С) типу FPGA (field programmable gate arrays) е популярним базисом для реал1зацп складних цифрових систем [6, 7]. При цьому велике значення мае зменшення площ1 кристала, яку займае схема будь-якого блоку системи, у тому числ й МПА [8].

В якосп одного 1з способ1в оргашзацп пристро1в керування часто використовуються автомати Мура i Мш. У [9, 10] детально розглянуп алгоритми побудови керуючих та операцшних автомапв, що об'еднуються для реалiзацiï' цифрових пристроï'в. У цих роботах авторами пропонуються так1 орипнальш шдходи до синтезу лопчних схем керуючих автомапв, як багатор1внев1 структури, принцип перетворення код1в об'екпв, можливосп модифiкацiï' вихвдних граф-схем алгоритм1в, реалiзацiï' на л1чильниках, використання блоков пам'яп.

Важливим для р1вня витрат апаратури логiчноï' схеми автомата Мура е етап кодування сташв. В [11, 12] наведеш ефективш алгоритми кодування сташв автомапв i пристроï'в керування на ï'x основа

На даний момент ключовим моментом ршення задач1 зменшення витрат апаратури у схем1 керуючого автомата е врахування особливостей

© С.О. Цололо, 2015

елементного базису, в якому буде виконана лопчна схема пристрою. Так, в роботах [13, 14] пропонуються способи оптимiзацi! лопчно! схеми автомата Мура в базисах CPLD i FPGA, в основi яких лежить використання поняття псевдоеквивалентних станiв, особливостей цiльового базису, специфiчнi засоби кодування внутрiшнiх сташв. В роботi [15] були запропоноваш метод кодування наборiв мiкрооперацiй i принцип розширення кодiв станiв переходу для ефективно! реалiзацi! автоматiв Мура на схемах, що замовляються (ASICs).

Таким чином, можна зробити висновок, що тематика розробки методiв зменшення апаратурних завтра в логiчних схемах автомата Мура для рiзних елементних базиав е актуальною. Так, в данш роботi розглядаеться базис пбридних FPGA.

Мета та завдання дослвджень. Мета - розробка методу зменшення витрат апаратури для схеми автомата Мура при i! реалiзацi! у базиа. Для досягнення мети були сформульоваш i вирiшенi так1 завдання:

- аналiз особливостей автомата (наявшсть класiв псевдоеквiвалентних станiв) та елементного базису для !х ефективного врахування в методi, що розробляеться;

- розробка способу зменшення схеми формування функцш збудження пам'ятi автомата;

- вибiр структурно! схеми автомата Мура, що дозволяе зменшити витрати апаратури при збереженш рiвня швидкоди пристрою.

Результати розробки i дослiджень. Нехай алгоритм керування цифрово! системи представлений ГСА (граф-схемою алгоритму) Г = Г(В, E), де B = {b0, bE} u Ex u E2 - множина вершин; b0 -початкова вершина ГСА; bE - к1нцева вершина ГСА; Ej - множина операторних вершин; E2 - множина умовних вершин, E = {< bq, bt >\bq, bt e B} - множина дуг. У вершинах bq е E1 записуються набори мжрооперацш Y(bq) с Y, де Y = {yl,...,yN} -

множина мжрооперацш операцiйного автомата цифрово! системи [1]. У вершинах bq е E2 записуються елементи множини логiчних умов

X = {xl,...yxL}. Початкова i кiнцева вершини ГСА ввдповщають стану

^ е A = {flj,...,ам}, де A - множина сташв автомата Мура, а кожна

вершина bq е E1 ввдповвдае одному з елеменпв множини A [3]. Лопчна

схема МПА Мура задаеться системою рiвнянь

Ф = Ф(Е, X), (1)

Y = Y(T), (2)

де Ф = {D1,...,DR} - множина функцiй порушення TpnrepiB пам'яп сташв; T = {T ,...Tr } - множина внутрiшнiх змшних, що кодують стани am е A, R = |~log2 M]; M - шльшсть станiв. Система (1), (2) формуеться на основi прямо! структурно! таблиц (ПСТ) 3i стовпцями: ПA = {B1,...,BI} - поточний стан; K(am) - код стану am е A ; as - стан переходу; K(as) - код стану as е A ; Xh - кон'юнкщя деяких елементiв множини X (або !хшх заперечень), що визначае перехвд < am, as >; Фh - набiр функцiй збудження пам'ятi МПА, що приймають одиничне значення для перемикання пам'ятi з K(am) в K(as); h = 1,...,H1(T) -

номер рядка таблищ. У стовпщ am записуеться набiр мiкрооперацiй Y(am) с Y, що сформован у сташ am е A. Вiдмiтимо, що Y(am) = Y(bq), де вершина bq е E1 вiдзначена станом am е A.

Система (1), (2) визначае модель U1 автомата Мура (рис. 1), що включае блок переходiв (БП), блок мжрооперацш (БМО) i регiстр сташв Рг.

Рис. 1. Структурна схема МПА Мура Uj

У cxeMi на рис. 1 блок БП реалiзуe функцii (1), а блок БМО - функцп (2). Коди сташв am е A збертаються в pericTpi, що скидаеться сигналом Start i перемикаеться за сигналом Clock.

Як правило, число переходiв И1 (Г) бiльше числа переходiв И0 (Г) еквiвалентного автомата Милi [1]. Це призводить до збшьшення апаратурних витрат у схемi МПА Мура в порiвняннi i3 цим показником еквiвалентного автомата Миль Параметр И (Г) можна зменшити, завдяки наявностi псевдоеквiвалентних станiв (ПЕС) МПА Мура [16].

187

Стани am, as е A називаються ПЕС, якщо виходи вщповщних i'm вершин з'eднанi i3 входом одше! й Tie! ж вершини ГСА Г. Нехай ПА = {Bx ,...,B7} - розбивка множини А на класи ПЕС (I < M). Побудуемо систему функцiй

I

Bi = v CmiAm, (i = 1,...,I), (3)

i=i

де COT- - булева змiнна, що дорiвнюe одиницi якщо i тiльки якщо am е Bi; Am - кон'юнкцiя внутрiшнiх змiнних Tr е T , що ввдповвдають коду K(am) стану am е A. Закодуемо стан am е A так, щоб будь-яка функщя системи (3) представлялася одним кон'юнктивним термом. Назвемо таке кодування оптимальним кодуванням станiв.

Такий шдхвд веде до моделi U2, структура яко! збiгаeться 3i

структурою моделi U1, але число термiв вщповвдае H0 (Г). Однак таке кодування не завжди можливо [4] через особливосп ГСА. Наприклад, для R = 2, B = {a}, B = {ai, a, a4} оптимальне кодування станiв, що скорочуе параметр И2(Г) до И0(Г), неможливо. Тут ми вводимо позначення Ht (Г), що визначае число рядшв у моделi U при штерпретацп ГСА Гу.

Число рядшв ПСТ гарантоване дорiвнюe H0 (Г), якщо використати наступний шдхщ. Поставимо у вiдповiднiсть класу B еП^ двiйковий код K(Bi) розрядностi RB = |~log2 I] i використаемо змiннi Tr ет для такого кодування, де |т| = RB. У цьому випадку МПА Мура представляеться у виглядi структури U 3 (рис. 2).

У МПА Uз блок БП формуе функцп

ф = ф(т, X), (4)

а блок перетворювача кодiв (БПК) реалiзуe систему функцiй

т = t(T) . (5)

При цьому код K(Bi) класу Bt еПA формуеться на основi кодiв станiв am е Bi. Блок БМО реалiзуe систему (2).

X

Блок ф Рг А А T Блок мжро-опчрацш

пчрчходш

Clock

Блок перетворювача кодiв

Рис. 2. Структурна схема МПА Мура U3

У робот [16] показано, що Н3(Г) = Н0(Г). Недолжом моделi U 3 е наявшсть блоку БПК, що споживае деяш ресурси ПЛИС. У роботi пропонуеться метод синтезу МПА Мура, що дозволяе зберегти позитивнi та усунути негативнi якостi моделi U3.

Як вже було ввдзначено, метод орiентований на технологш пбридних FPGA. У цьому випадку пропонуеться реалiзувати схему БП на вбудованих PLA, а схеми РГ, БМО i БПК - на LUT-елементах. При цьому необхвдно зменшувати число термiв у функцiï (4). Число LUT елеменпв можна зменшити, якщо використати калька джерел кодiв клаав ПЕС.

Закодуемо стани am е A оптимальним чином. Нехай T(Bt ) - число термiв у функцiï Bt еПA. Представимо множину Пa у виглядi об'еднання множин ПB i Пс . При цьому розподш класiв виконуеться в такий спосiб:

(T (Б, ) = 1) ^ Б, еП в, (T(Б,) > 1)^Б, еПс.

(6)

В цьому випадку пчрчаворчнню тдлягаюаь ашьки коди саашв am е Б, для блошв Б, еПС. Посаавимо у ввдповвднюаь кожному класу Б, еПс двшковий код K(Б,) розрядноса1

Rc ={log2(Ic +1)],

(7)

де IC =|П C|. Призначення одинищ у формулi (7) пояснимо шзшше.

Нехай наступнi умови виконуються для PLA, що виходить до складу пбридно! FPGA:

L + R + RC < 5, (8)

Hо(Г) < q . (9)

В вирази (8), (9) входить число входiв S i TepMiB q блоку PLA. При виконанш (8), (9) блок БП реал1зуеться у виглядi лише одного блоку PLA. У робот пропонуеться наступна модель U4 автомата Мура (рис. 3).

Рис. 3. Структурна схема МПА Мура U 4

У МПА U4 блок PLA формуе функцiï (8). Блок LUTer складаеться з LUT елементiв i формуе вихвдт сигнали (2) i функцп (5). У МПА U4 е два джерела кодiв класiв ПЕС. Коди клаав Bt еПB збертаються в регiстрi Рг, а коди клaсiв Bt еПC формуються блоком LUTer.

Для iдентифiкaцiï джерела коду ПЕС необх1дний спещальний код. Умовимося, що цей код визначаеться виразом

(г = 1, Rc ).

^ = 0 (г = 1,Rc )

Наявнютю цього коду й визначаеться необхвдшсть додавання одиницi у виразi (7).

Таким чином, у po6oTi пропонуеться метод синтезу МПА Мура U4 за вiдзначеною ГСА, що включае наступнi етапи:

1. Формування розбивки ПА = B,...,B7}.

2. Оптимальне кодування станiв am е A.

3. Формування множин Пв i Пс.

4. Кодування клаав Bt еПc .

5. Формування вмiсту блоку PLA.

6. Формування таблиц блоку LUTer.

7. Формування системи функцш, що задають схему МПА.

8. Реалiзацiя схеми в заданому елементному базисi.

Висновок. Технолопя гiбридних FPGA вимагае адаптацп методiв синтезу МПА, орiентованих на базис FPGA. Ввдсутшсть вбудованих блоков пам'яп викликае необхiднiсть реалiзацil системи мжрооперацш на табличних елементах типу LUT. При виконанш умови (8) для реалiзацil кожно! мжроопераци досить використати пльки один LUT. Система функцш збудження пам'ятi реалiзуеться на вбудованих блоках PLA. У робот пропонуеться метод зменшення апаратурних витрат у схемi МПА Мура. Метод базуеться на використанш двох джерел клаав псевдоеквiвалентних станiв. Це можливо, завдяки великий кiлькостi входiв PLA. Наприклад, у гiбридних FPGA APEX20K фiрми Altera цей параметр дорiвнюе 32. Застосування запропонованого методу доцiльно при виконанш умов (8), (9), при цьому схема формування функцш збудження пам'яп реалiзуеться на одному блощ PLA. Аналiз стандартних ГСА з бiблiотеки [17] показав, що умови (8), (9) виконуються для 87% прикладiв (для FPGA APEX 20K).

Наукова новизна запропонованого методу полягае в урахуванш особливостей автомата Мура i елементного базису гiбридних FPGA для зменшення апаратурних витрат у схемi автомата. Практична значимють методу полягае в зменшенш вартостi схеми автомата Мура на пбридних FPGA у порiвняннi з вiдомими з лггератури аналогами.

Список л1тератури: 1. Kabiani A. The Hybrid Field Programmable Architecture / A. Kabiani, S. Brown. - IEEE Design & Test of Computers. - 1999. - Vol. 16. - № 4. - P. 74-83. 2. Altera Corporation APEX20K PLD Family Data Sheet (2004) [електронний ресурс]. - Режим доступу: www.altera.com. 3. Baranov S. Logic Synthesis for Control Automata / S. Baranov. - Kluwer Academic Publishers, 1994. - 312 p. 4. DeMicheli G. Synthesis and Optimization of Digital Circuits / G. DeMicheli. - McGraw-Hill, 1994. - 636 p. 5. Соловьев В.В. Проектирование цифровых схем на основе программируемых логических интегральных схем / В.В. Соловьев. - М.: Горячая линия-ТЕЛЕКОМ, 2001. - 636 с. 6. Грушницкий Р.И. Проектирование систем с использованием микросхем программируемой логики / Р.И. Грушницкий, А.Х. Мурсаев, Е.П. Угрюмов. - СПб: БХВ. - Петербург, 2002. - 608 с. 7. Skliarova I. Design of FPGA-based circuits using Hierachical Finite State Machines / I. Skliarova, U. Sklyarov, A. Sudnitson. -Tallinn: TUT Press, 2012. - 240 p. 8. Czerwinslci R. Finite State Machine Logic Synthesis for complex programmable Logic Devices / R. Czerwinslci, D. Kania. - Berlin: Springer, 2013. -172 p. 9. Barkalov A.A. Synthesis of operational and control automata / A.A. Barkalov, L.A. Titarenko. - Donetsk: DonNTU, TechPark DonNTU UNITECH, 2009. - 256 p. 10. Баркалов А.А. Синтез микропрограммных автоматов на заказных и программируемых СБИС / А.А. Баркалов, Л.А. Титаренко. - Донецк: ДонНТУ, Технопарк ДонНТУ УНИТЕХ, 2009. - 336 с. 11. El-Maleh A. Finite state machine state assignment for area and power minimization / A. El-Maleh, S.M. Sait, F.N. Khan // Proceedings of IEEE International Symposium on Circuits and Systems. - 2006. - P. 5303-5306. 12. KubatovaH. FEL-Code: FSM internal state encoding method / H. Kubatova, M. Becvar // Proceedings of 5th International Workshop on

Boolean Problems. - Freiberg, 2002. - P. 109-114. 13. Баркалов А.А. Оптимизация схемы МПА Мура на CPLD / А.А. Баркалов, С.А. Ковалев, С.А. Цололо // Материалы Восьмого международного научно-практического семинара "Практика и перспективы развития партнерства в сфере высшей школы". - Донецк - Таганрог, 2007. - Том 3. - С. 26-36. 14. Баркалов А.А. Оптимизация логической схемы автомата Мура на FPGA / А.А. Баркалов, А.А. Красичков, С.А. Цололо // Наукош пращ ДонНТУ (Серия "Проблеми моделювання та автоматизацп проектування динамiчних систем"). - Донецк. - 2006. - № 5 (116). - С. 162168. 15.МальчеваР.В. Матричная реализация автомата Мура с расширением кодов состояний перехода / Р.В. Мальчева, К.А. Солдатов // Науковi пращ ДонНТУ. (Серия "1нформатика, юбернетика та обчислювальна техшка"). - Донецк. - 2010. - N° 11 (164). -С. 79-83. 16. Баркалов А.А. Принципы оптимизации логической схемы микропрограммного автомата Мура // Кибернетика и системный анализ. - 1998. - № 1. - С. 65-72. 17. Yang S. Logic Synthesis and optimization bench-marks user guide / S. Yan. // Microelectronics Center of North Carolina, 1991. - 43 p.

Bibliography (transliterated): 1. Kabiani A. The Hybrid Field Programmable Architecture /A. Kabiani, S. Brown. - IEEE Design & Test of Computers.- 1999. - Vol. 16. - № 4. - P. 74-83. 2. Altera Corporation APEX20K PLD Family Data Sheet (2004) [elektronnij resurs]. - Rezhim dostupu: www.altera.com. 3. Baranov S. Logic Synthesis for Control Automata / S.Baranov. -Kluwer Academic Publishers, 1994. - 312 p. 4. DeMicheli G. Synthesis and Optimization of Digital Circuits / G. DeMicheli. - McGraw-Hill, 1994. - 636 p. 5. Solov'ev V. V. Proektirovanie cifrovyh shem na osnove programmiruemyh logicheskih integral'nyh shem / V.V. Solov'ev. - M.: Gorjachaja linija-TELEKOM, 2001. - 636 p. 6. Grushnickij R.I. Proektirovanie sistem s ispol'zovaniem mikroshem programmiruemoj logiki / R.I. Grushnickij, A.H. Mursaev, E.P. Ugrjumov. - SPb: BHV. - Peterburg, 2002. - 608 p. 7. Skliarova I. Design of FPGA-based circuits using Hierachical Finite State Machines / I. Skliarova, U. Sklyarov, A. Sudnitson. -Tallinn: TUT Press, 2012. - 240 p. 8. Czerwinslci R. Finite State Machine Logic Synthesis for complex programmable Logic Devices / R. Czerwinslci, D. Kania. - Berlin: Springer, 2013. -172 p. 9. Barkalov A.A. Synthesis of operational and control automata / A.A. Barkalov, L.A. Titarenko. - Donetsk: DonNTU, TechPark DonNTU UNITECH, 2009. - 256 p. 10. Barkalov A.A. Sintez mikroprogrammnyh avtomatov na zakaznyh i programmiruemyh SBIS / A.A. Barkalov, L.A. Titarenko. - Doneck: DonNTU, Tehnopark DonNTU UNITEH, 2009. -336 s. 11. El-Maleh A. Finite state machine state assignment for area and power minimization / A. El-Maleh, S.M. Sait, F.N. Khan // Proceedings of IEEE International Symposium on Circuits and Systems. - 2006. - P. 5303-5306. 12. Kubatova H. FEL-Code: FSM internal state encoding method / H. Kubatova, M. Becvar // Proceedings of 5th International Workshop on Boolean Problems. - Freiberg, 2002. - P. 109-114. 13. Barkalov A.A. Optimizacija shemy MPA Mura na CPLD / A.A. Barkalov, S.A. Kovalev, S.A. Cololo // Materialy Vos'mogo mezhdunarodnogo nauchno-prakticheskogo seminara "Praktika i perspektivy razvitija partnerstva v sfere vysshej shkoly". - Doneck - Taganrog, 2007. - Tom 3. - P. 26-36. 14. Barkalov A.A. Optimizacija logicheskoj shemy avtomata Mura na FPGA / A.A. Barkalov, A.A. Krasichkov, S.A. Cololo // Naukovi praci DonNTU. (Serija "Problemi modeljuvannja ta avtomatizacii proektuvannja dinamichnih sistem"). - Doneck, 2006. - № 5 (116). - P. 162-168. 15. Mal'cheva R.V. Matrichnaja realizacija avtomata Mura s rasshireniem kodov sostojanij perehoda / R.V. Mal'cheva, K.A. Soldatov // Naukovi praci DonNTU. (Serija "Informatika, kibernetika ta obchisljuval'na tehnika"). - Doneck. - 2010. - № 11 (164). - P. 79-83. 16. Barkalov A.A. Principy optimizacii logicheskoj shemy mikroprogrammnogo avtomata Mura // Kibernetika i sistemnyj analiz. - 1998. - № 1. - P. 65-72. 17. Yang S. Logic Synthesis and optimization bench-marks user guide / S. Yan // Microelectronics Center of North Carolina. - 1991. - 43 p.

Надтшла (received) 25.08.2015

Статтю представив д.т.н., проф. ДонНТУ Святний В.А.

Tsololo Sergii, PhD Tech

Donetsk National Technical University

Sq. Shibankova, 2, Krasnoarmiysk, Ukraine, 85300

tel./phone: 093 883 21 28, e-mail: s.solos@gmail.com

ORCID ID: 0000-0002-6425-4769

i Надоели баннеры? Вы всегда можете отключить рекламу.