АВТОМАТИЗАЦИЯ СИНТЕЗА УПРАВЛЯЮЩИХ АВТОМАТОВ МИЛИ НА FPGA
Выприцкая П.А., Красичков А.А.
Тезисы доклада на III международной научно-технической конференции молодых учёных и студентов "Информатика и компьютерные технологии 2007", Донецк, ДонНТУ, 12 декабря 2007 г.
В настоящее время происходит автоматизация процессов во всех сферах знаний окружающего мира. В некоторых областях эта автоматизация сводится к созданию программного обеспечения для персонального компьютера, но в большинстве случаев требует создания специализированных ЭВМ. Для организации работы ЭВМ, как одна из его составляющих, необходим управляющий автомат. В его функции входит формирование управляющих сигналов на основе некоторого алгоритма для операционной части ЭВМ.
До недавнего времени считалось, что универсальными управляющими автоматами являются автоматы с программируемой логикой, поскольку они позволяют изменить алгоритм работы без изменения аппаратуры. С появлением ПЛИС с архитектурой FPGA проведенные исследования и разработки показали, что автоматы с жесткой логикой выигрывают по сравнению с автоматами с программируемой логикой не только по быстродействию, но и по аппаратным затратам [1]. Доказано, что для алгоритмов, в которых не менее 75% вершин составляют операторные, оптимизация аппаратных затрат в схеме автомата возможна за счет замены регистра памяти счетчиком [2] (Рис. 1).
Рис. 1. Структура автомата с жесткой логикой на счетчике.
Используем ряд определений из работы [2].
Определение 1.1. Линейной
последовательностью состояний (ЛПС) ГСА Г называется конечный кортеж ag =<ag1,.. agFg>,
такой, что для любой пары состояний agi, agi+1ÎA, где i – номер компоненты
кортежа ag, существует переход <agi,
agi+1> автомата,
интерпретирующего ГСА Г.
Определение 1.2. Состояние am Î Ag, где Ag
Í A – множество состояний,
входящих в кортеж ag, называется входом ЛПС ag, если существует переход
<as,am>, где as Ï Ag либо as
Î Ag и соответствует
компоненте с большим номером, чем am.
Определение 1.3. Состояние am Î Ag, называется
главным входом ЛПС ag, если am – начальное состояние
автомата, или am – вход ЛПС ag, переход в который
определяется последовательностью логических условий, в которой последний
компонент равен нулю.
Определение 1.4. Состояние am Î Ag, называется
выходом ЛПС ag, если существует
безусловный переход <am,as>, где as Ï Ag , либо выход
вершины, отмеченной состоянием am, связан с входом условной вершины.
Дальнейшие исследования и разработки в данной работе проводятся для автомата Мили.
Разбиение ГСА на ЛПС позволяет использовать двойную нумерацию состояний вида: <номер ЛПС>:<номер вершины внутри ЛПС>. Такой автомат в работе [1] предложено называть РС1R-автоматом (Рис. 2).
Рис.2. Структура РС1R-автомата.
При исследовании РС1R-автоматов было установлено, что для каждого конкретного алгоритма можно добиться экономии аппаратных затрат если использовать один из четырех предложенных вариантов ЛПС: произвольная ЛПС (более одного входа, более одного выхода), ЛПС с одним входом, ЛПС с одним выходом, ЛПС с одним входом и одним выходом.
Для того чтобы подобрать оптимальный вариант разбиения на ЛПС для конкретного алгоритма необходимо синтезировать достаточно большое число вариантов и проанализировать полученные результаты.
Сделать это «вручную» даже для сравнительно небольших ГСА требует значительного времени и не гарантирует отсутствия ошибок [3], поэтому актуальным является создание программного средства автоматизации синтеза РС1R-автоматов.
Требования к системе синтеза автоматов:
Для того чтобы система синтеза могла получить входные данные, предлагается следующее представление исходной ГСА в виде текстового файла:
Для исследования синтезированного системой автомата предлагается использовать среду A-HDL, поэтому результат система должна записать в виде готового VHDL-кода.
Таким образом, целью последующей разработки является создание системы автоматизированного синтеза РС1R-автоматов, а задачами – исследование при помощи разработанной системы различных вариантов реализации автоматов для одних и тех же ГСА.
Литература
[1] Красичков А.А. Методы синтеза управляющих автоматов на конфигурируемых логических блоках. Диссертация ... канд. техн. наук: 05.13.13 – Донецк: ДонНТУ, 2004. – 137с.
[2] Баркалов А.А. Синтез микропрограммных устройств управления. – Донецк: ДПИ, 1992. – 48 с.
[3] Баркалов А. А. Синтез устройств управления на программируемых логических устройствах. – Донецк: ДонНТУ, 2002 – 262 с.