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

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

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

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

Рассматриваются различные структурные модели конечных автоматов при их реализации на программируемых логических устройствах. Для каждой структуры приводятся оценки сложности реализации. Анализируется поведение моделей во времени при максимальном быстродействии. Исследуется производительность моделей в многоуровневых цифровых системах с последовательным и конвейерным способами обработки данных. Даются рекомендации по выбору и наиболее эффективному использованию моделей.

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

Models of state machines at their implementation on programmed logical devices

The different structural models of state machines are reviewed at their implementation on programmed logical devices. For each frame the estimations of complexity of implementation are adduced. The behavior of models in time is parsed at maximum response.

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

УДК 681.3

МОДЕЛИ КОНЕЧНЫХ АВТОМАТОВ ПРИ ИХ РЕАЛИЗАЦИИ НА ПРОГРАММИРУЕМЫХ ЛОГИЧЕСКИХ УСТРОЙСТВАХ*

СОЛОВЬЕВ В.В.

Рассматриваются различные структурные модели конечных автоматов при их реализации на программируемых логических устройствах. Для каждой структуры приводятся оценки сложности реализации. Анализируется поведение моделей во времени при максимальном быстродействии. Исследуется производительность моделей в многоуровневых цифровых системах с последовательным и конвейерным способами обработки данных. Даются рекомендации по выбору и наиболее эффективному использованию моделей.

Введение

В настоящее время хорошо исследованы две модели автоматов: автомат Мили [1] и автомат Мура [2]. Известна также модель автомата [3,4], в которой наборы выходных сигналов совпадают с кодами его внутренних состояний. В отдельных работах предлагается использовать регистры на входах и выходах автомата для буферизации входных и согласо -вания выходных сигналов с сигналами синхронизации [5].

Однако до сих пор не исследованы все возможные модели конечных автоматов, допускающих реализацию на современных программируемых логических устройствах (ПЛУ - Programmable Logic Devices - PLDs), влияние установки регистров на входах и выходах на поведение автомата, вопросы временного согласования сигналов автоматов при передаче значений между различными уровнями в многоуровневых цифровых системах с различными способами обработки данных, не определена сложность реализации на ПЛУ различных моделей конечных автоматов и др. Указанные проблемы становятся особенно острыми, когда необходимо достичь максимального быстродействия устройства, приближающегося к предельной частоте функционирования ПЛУ.

Рассмотрим структурные модели конечных автоматов, допускающие реализацию на ПЛУ. Для этого введем различные классы конечных автоматов, на основании которых определим все возможные структурные модели. Основной целью исследования является выявление свойств каждой модели с точки зрения быстродействия и стоимости реализации.

1. Структура ПЛУ

Обобщенная структура ПЛУ изображена на рис. 1,а. Оно состоит из комбинационной части CP, вход-

* Данная работа выполнена в рамках “працы влас-ной” W/II/4/99 Белостокского политехнического института (Польша).

РИ, 2001, № 1

ных макроячеек IMCi-IMCn, выходных макроячеек OMCi-OMCm и скрытых макроячеек BMC1-BMCr. Комбинационная часть CP представляет собой основной логический преобразователь ПЛУ, который состоит из двух матриц: матрицы AND и матрицы OR. Выходы матрицы AND, называемые промежуточными шинами, подсоединяются ко входам матрицы OR. Матрица AND является программируемой, а матрица OR имеет фиксированную настройку, причем она реализуется в виде отдельных вентилей, находящихся в выходных и скрытых макроячейках ПЛУ. В сложных ПЛУ (Complex PLD - CPLD), состоящих из нескольких функциональных блоков, комбинационная часть дополнительно включает матрицу переключений для передачи сигналов между функциональными блоками [6].

а

D/L Q

[=>

б в

ОЕ

D/L Q

>_____

г

ОЕ

D Q >

П

D Q

>

ОЕ

ж

д

е

Рис.1. Обобщенная структура ПЛУ: а - общая структура; б-г - возможные конфигурации входных макроячеек; д-ж - возможные конфигурации выходных макроячеек

Входные макроячейки служат для предварительной обработки входных сигналов. Они позволяют выполнять буферизацию входных сигналов в триггерах или защелках (latchs), а также обеспечивают обычный прямой вход. Для некоторых ПЛУ, не имеющих входных макроячеек, буферизация входных сигналов может выполняться с помощью выходных или скрытых макроячеек [6].

101

Выходные макроячейки, как правило, включают вентиль OR (часть матрицы OR), триггер и управляемый буфер с тремя состояниями. К каждой макроячейке OMQ подсоединяется q промежуточных шин ПЛУ, i= 1,m. Все выходные макроячейки ПЛУ имеют обратную связь с комбинационной частью CP. В общем случае выходные макроячейки ПЛУ допускают следующие конфигурации: комбинационный выход (рис. 1 ,д), регистровый выход (рис.1,е) и комбинационный выход с регистром в цепи обратной связи (рис. 1,ж).

Выходные макроячейки ПЛУ, не имеющие связи с внешними выводами, а только с комбинационной частью CP, принято называть скрытыми (buried). Скрытые макроячейки служат для реализации промежуточных функций проекта, например, функций переходов конечного автомата.

2. Структуры конечных автоматов

На практике наибольшее распространение получили два типа конечных автоматов: автомат Мили [1] и автомат Мура [2]. Поведение автомата Мили описывается с помощью следующих уравнений:

at+1 = ф( Zb at); (1)

Wt = ф( Zt, at);

здесь функция переходов j определяет следующее состояние автомата at+1, а функция выходов у — формируемый выходной набор wt. Характерным для автомата Мили является то, что выходной набор wt зависит как от входного набора zt, так и от внутреннего состояния at, где t — автоматное время [3], t=1,2,3... .

В автомате Мура функция выходов зависит только от состояния at и не зависит от входного набора, поэтому описание поведения автомата Мура имеет вид

at+1 ф( Zt, at); (2)

Wt = ф( at ).

При построении конечных автоматов функции переходов ср и выходов у реализуются с помощью комбинационных схем СЕф и СЕф соответственно, а память автомата реализуется в виде регистра RG, где в каждый момент автоматного времени t хранится код внутреннего состояния at. Структурные схемы автоматов Мили и Мура показаны на рис.2,а и рис.2,б соответственно.

Если каждый выходной набор wt автомата Мура совпадает с кодом его внутреннего состояния at, то поведение автомата можно описать следующим образом:

at+1 = ф( zb at); (3)

wt = at .

Данный тип автомата называют автоматом класса С [7], аналогично, автоматы Мили (рис.2,а) и Мура (рис.2,б) называют автоматами классов A и B соответственно. Структура автомата Мура класса С показана на рис.2,в. Отметим, что данная структура легко реализуется на ПЛУ, поскольку все регист-

102

ровые выходы имеют цепи обратной связи с комбинационной частью ПЛУ.

Если каждый выходной набор wt автомата Мили совпадает с кодом его следующего состояния at+i, то имеем автомат класса D [8], поведение которого описывается следующими уравнениями:

at+1 ф( Zt, at); (4)

wt = at +1.

Структура автомата Мили класса D показана на рис.2,г. Необходимым условием реализации автоматов класса D на ПЛУ является возможность конфигурирования выходных макроячеек с регистром в цепи обратной связи (рис.1,ж).

Преимущество автоматов классов С и D, по сравнению с автоматами классов A и B, заключается в том, что, во-первых, упрощается комбинационная часть автомата, поскольку отпадает необходимость в реализации комбинационной схемы СЬу, и, во-вторых, уменьшается число используемых выходных макроячеек, так как память автомата и выходные функции реализуются на одних и тех же макроячейках ПЛУ.

Если каждый входной набор zt автомата Мили совпадает с кодом следующего состояния at+1, то имеем автомат класса E, уравнения функционирования которого имеют вид

at+1 Zt; (5)

wt = ф( Zt, at ).

Аналогично, если каждый входной набор Zt автомата Мура совпадает с кодом следующего состояния at+1, то имеем автомат класса F, поведение которого можно описать следующим образом:

at+1 Zt; (6)

wt = ф( at ).

Особенностью структур автоматов классов E (рис.2,д) и F (рис.2,е) является отсутствие комбинационной схемы CLj. Необходимым условием реализации на ПЛУ автоматов классов E и F является возможность буферизации в регистрах входных сигналов. Кроме того, для построения автомата класса E входы ПЛУ должны иметь два типа связи с комбинационной частью ПЛУ: прямую и буферизированную.

Преимущество автоматов классов E и F, по сравнению с автоматами классов A и B, заключается в том, что, во-первых, упрощается комбинационная часть автомата, поскольку отпадает необходимость в реализации комбинационной схемы СЕф, и, во-вторых, сокращается число используемых скрытых (либо выходных, если скрытые отсутствуют) макроячеек, так как память автомата реализуется с помощью входных буферов ПЛУ.

Для устойчивой работы конечных автоматов входные наборы должны формироваться в заданные промежутки времени, определяемые сигналом синхронизации СЕК. Если это не так, в структуры автоматов вводится входной буфер RGi, построен-

РИ, 2001, № 1

ный на триггерах или защелках. Определим следующие модели автоматов с регистрами на входах: ABi, Ci, Di и Ei, соответствующие автоматам классов A, B, C, D и Е (модель ABI является общей для автоматов классов А и В). Отметим, что автомат класса F уже имеет входной буфер и для него модель с регистром на входе совпадает с самой моделью автомата класса F. Во всех моделях ABI, CI, DI и EI регистр RGI реализуется на входных макроячейках ПЛУ, причем в структуре Е1 передача сигналов с выходов регистра RGI на вход регистра RG осуществляется через комбинационную часть ПЛУ.

а

б

А

е _| и at+i RG г Ц

1 CLK

в

С

CL.

* RG

wt

1 CLK

г

д

> W,

1 CLK

е

Рис.2. Основные структуры конечных автоматов: а -Мили класса A; б - Мура класса B; в - Мура класса C; г - Мили класса D; д - Мили класса Е; е - Мура класса F

Для некоторых устройств важно, чтобы время формирования выходных наборов определялось сигналом синхронизации. C этой целью используются модели автоматов, на выходах которых находится дополнительный выходной регистр RGO. Определим следующие модели автоматов с регистрами на выходах: ABO, Do, Eo и FO, соответствующие автоматам классов A, B, D, Е и F. Отметим, что автомат класса C уже имеет выходной регистр RG, на котором реализована память автомата. Во всех моделях ABO, Do, Eo и FO регистр RGO реализуется на выходных макроячейках ПЛУ.

В некоторых случаях в структуры конечных автоматов приходится одновременно вводить входной регистр RGI и выходной регистр RGO. Определим следующие модели автоматов с регистрами на входах и выходах: ABIO, DIO и EIO, соответствующие автоматам классов A, B, D и Е. Отметим, что для автомата класса C регистры на входе и выходе имеет модель CI, а для автомата класса F - модель FO. Модели с регистрами на входах, когда вместо тирггеров используются защелки, будем обозначать ABi’, Ci’, Di’, Ei’, ABio’, Dio’ и Ею’.

3. Сложность реализации

Пусть конечный автомат характеризуется числом L входных переменных, числом N выходных переменных и числом R разрядов кода внутренних состояний, причем R может принимать значения от intlog2M до M, где M - число внутренних состояний автомата.

На выбор модели конечного автомата при его реализации на современных ПЛУ наибольшее влияние оказывают значения следующих параметров: тип входа tI и выхода tO (r — регистровый, c-комбинационный, l — буферизация входа с помощью защелок); число nIB входных буферов; число

*

nBMC скрытых макроячеек; число n BMC макроячеек, когда буферизация входных сигналов осуществляется с помощью скрытых или выходных макроячеек; общее число nMC скрытых и выходных макроячеек; суммарное число nP+BMC внешних выводов и скрытых макроячеек и др. Нижние границы указанных параметров для различных моделей конечных автоматов в зависимости от значения величин L, N и R приведены в табл.1.

Оценить сложность реализации различных моделей конечных автоматов достаточно трудно, поскольку неясно, какой параметр принимать в качестве величины сложности реализации. Традиционно, при реализации конечных автоматов на ПЛУ в качестве ее сложности использовалась суммарная площадь матриц AND и OR. Однако данный параметр никак не может быть принят в качестве оценки сложности реализации для современных ПЛУ, поскольку последние, как правило, не имеют матрицу OR (она реализуется в виде совокупности вентилей OR выходных макроячеек ПЛУ), а площадь матрицы AND весьма слабо влияет на реальную стоимость проекта (например, для современных CPLD наибольшую площадь на кристалле занимает матрица межсоединений).

Наиболее универсальным параметром, позволяющим оценить сложность реализации различных моделей, является число nBMC требуемых скрытых макроячеек ПЛУ. Если ячейки ввода-вывода ПЛУ не имеют входных буферов (т.е. буферизация входных сигналов осуществляется с помощью скрытых или выходных макроячеек ПЛУ), то вместо

* *

параметра nBMC следует использовать n BMC, n BMC =

= nBMC + nIB. При реализации конечного автомата на CPLD, когда размер входного буфера не крити-

РИ, 2001, № 1

103

Таблица 1

Параметры моделей конечных автоматов

Модель ti tO nIB nBMC n*BMC nMC nP+BMC Tpos tos Tsd Q

A c c - R R N+R L+N+R 0 tPD tS + tH tPD

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

B c c - R R N+R L+N+R 0 tPD tP tPD

C c r - - - N L+N 0 0 tP 0

D c c - - - N L+N 0 tPD tS + tH tPD

E c c L - L N L+N 0 tpD tS + tH tpD

F c c L - L N L+N 0 tpD tp tpD

ABi r c L R L+R N+R L+N+R tP tpD tp tp + tpD

Ci r r L - L N L+N tp 0 tp tp

Di r c L - L N L+N tp tpD tp tp + tpD

Ei r c L L 2L L+N 2L+N tp tpD tp tp + tpD

ABo c r - R R N+R L+N+R tp 0 tp tp

Do c r - N N 2N L+2N tp 0 tp tp

Eo c r L - L N L+N tp 0 tp tp

Fo r r L - L N L+N tP 0 tP tP

ABIO r r L R L+R N+R L+N+R 2tp 0 tP 2tp

DIO r r L N L+N 2N L+2N 2tp 0 tP 2tp

EIO r r L L 2L L+R 2L+N 2tp 0 tP 2tp

ABI’ l c L R L+R N+R L+N+R 0 tpD tS + tH tPD

Ci’ l r L - L N L+N 0 0 tP 0

Di’ l c L - L N L+N 0 tPD tS + tH tPD

Ei’ l c L L 2L L+N 2L+N 0 tpD tS + tH tPD

abio’ l r L R L+R N+R L+N+R tp 0 tP tP

Dio’ l r L N L+N 2N L+2N tp 0 tp tp

Eio’ l r L - 2L L+R 2L+N tp 0 tp tp

чен, сложность реализации модели можно оценить по общему числу Имс скрытых и выходных макроячеек, имс = пвмс + N. Наоборот, при реализации конечного автомата на стандартных ПЛУ (Standard PLD - SPLD), когда наблюдается дефицит числа внешних выводов и скрытых макроячеек, в качестве оценки сложности реализации может выступать параметр np+вмс, np+вмс = пвмс + L + N.

Анализ табл.1 (параметра пвмс) показывает, что среди моделей конечных автоматов с комбинационными входами и выходами наилучшими с точки зрения сложности реализации являются модели D и E; с комбинационными входами и регистровыми выходами — с и EO; с регистровыми входами и комбинационными выходами — F и Di (Di’); с регистровыми входами и выходами — Q (Q’) и FO.

4. Функционирование во времени

Наиболее важными временными параметрами ПЛУ являются следующие: ^O - время установки регистровых выходов; tPD - время задержки на комбинационной части ПЛУ; tS - время удержания (минимальное время стабилизации значений сигналов на входах и в цепях обратных связей до прихода синхроимпульса); tH - время задержки данных на входах триггеров после прихода синхроимпульса. Минимальный период tP времени смены состояний триггеров ПЛУ определяется величиной

tP - tS + Ro . (7)

Временные диаграммы функционирования основных моделей автоматов показаны на рис.3.

CLK _ П П

< is а , ten , . ь , L ten ,

Ж

Ж

л (

ШЩ

В, F

с Ж

АВ0, D0, my Е,„ Fos С, Mi

АВ10, DIO, Ею Ж

t

Ж

жкш

W,

W,

W,

ж

ж

ж

t+1

же

>j K Ірр >!<

jooooqc ! DOcjc

ts+tn

D0000000CC

qoaoot

ж:

ж:

же

с

З - стабильное состояние сигнала (0 или 1)

оооооооа - изменяемое состояние сигнала

Рис.3. Временные диаграммы функционирования основных структур конечных автоматов

Промежуток времени, в течение которого автомат находится в определенном состоянии, будем называть тактом автомата. Начало каждого такта на рис. 3 определяется установкой стабильного внутреннего состояния автомата. В каждом такте сигна-

РИ, 2001, № 1

104

лы цепей обратных связей, определяющие код внутреннего состояния автомата, и входные сигналы должны быть стабильными на протяжении времени tS до прихода импульса синхронизации CLK и должны оставаться стабильными во время tH после его прихода. Код следующего состояния появится на выходах триггеров через время tCO после прихода синхроимпульса, причем этому моменту будет предшествовать короткий промежуток времени нестабильности регистровых выходов.

Для структуры автомата Мили класса А набор выходных сигналов wt на комбинационной схеме CLy будет сформирован через время tPD после установки кода состояния at и будет оставаться стабильным на протяжении не менее времени tS + tH стабильности входных сигналов набора zt. Для корректной работы автомата в каждом такте входные сигналы могут изменяться с момента времени tS + tH от начала такта до начала следующего такта. В остальное же время в пределах каждого такта входные сигналы должны быть стабильными.

Выходные сигналы автоматов классов Мили D и E формируются в те же моменты времени, как в структуре А. Выходные сигналы автомата Мура классов В и F формируются так же, как в автомате класса A, но остаются стабильными больший промежуток времени. В автомате Мура класса С выходные сигналы изменяются одновременно со сменой состояния.

В структурах автоматов ABO, DO, EO и FO с регистрами на выходах выходные сигналы формируются так же, как в автомате класса С, но с задержкой на один такт. Отметим, что с установкой регистров на выходах автомата устраняется непосредственная зависимость выходных сигналов автомата Мили от изменения входных сигналов. Более того, выходные сигналы как автомата Мили, так и автомата Мура формируются в начале каждого такта, т.е. одновременно с установкой кода внутреннего состояния автомата. Недостатком данных структур является задержка на один такт последовательности формируемых выходных сигналов.

Смена состояний в структурах ABi, Q, Di и Ei осуществляется в начале каждого такта, но с задержкой на один такт по сравнению со структурами A, B, C, D и E. Отсюда следует, что и выходные сигналы будут формироваться с задержкой на один такт: в структурах ABI, DI и EI через время tPD после смены состояния, а в структуре CI одновременно со сменой состояния. Недостатком структур ABI, CI, DI и Ei с регистрами на входах является то, что автоматы будут функционировать с запаздыванием на один такт. Кроме того, не достигнута главная цель: возможность изменения входных сигналов в произвольные моменты времени. Дело в том, что для корректной работы регистров RGI сигналы zt должны изменяться так же, как в рассмотренных ранее структурах: в строго определенный промежуток времени в пределах каждого такта.

Структурам ABIO, DIO и EIO с регистрами одновременно на входах и выходах присущи все недостатки

структур с регистрами на входах и на выходах. Регистры на входах вызывают запаздывание функционирования автомата (смены состояний) на один такт, а регистры на выходах являются причиной задержки еще на один такт формируемых выходных сигналов. Таким образом, в структурах ABIO, DIO и EIO выходные сигналы формируются с запаздыванием на два такта.

Для буферизации входных сигналов, которые могут изменяться в произвольные моменты времени, следует применять не триггеры, а защелки. При этом используются раздельные сигналы синхронизации: CLKI - для входных защелок и CLK - для остальных частей схемы (рис.4). В ПЛУ защелки пропускают входные сигналы без изменений при высоком значении сигнала синхронизации CLKI и сохраняют последние значения входных сигналов при низком значении CLKI. Если время tWL низкого значения сигнала синхронизации CLKI принять равным tS + tH, а время tWH его высокого значения принять равным tCO - tH, то получим структуру автомата с защелками на входах, работающего на максимальной частоте и допускающего изменение входных сигналов в произвольные моменты времени.

zt Остальная

L Q —

часть

автомата

^ Д

CLKT

CLK

а

( > - стабильное состояние сигнала (0 или 1)

ооооооок - изменяемое состояние сигнала

б

Рис. 4. Структура автомата с защелками на входах (а) и временная диаграмма его работы (б)

Структуры ABi’, Q’, Di’, Ei’, ABro’, Dro’ и Ero’ с защелками на входах функционируют аналогично структурам ABi, Ci, Di, Ei, ABro, Dio и Ero с регистрами на входах, но на один такт быстрее.

РИ, 2001, № 1

105

5. Использование моделей конечных автоматов в цифровых системах

Структуру многоуровневой цифровой системы S, состоящей из K уровней, можно представить в виде совокупности последовательно соединенных подсистем Si,...,Sk.

При выборе модели конечного автомата важнейшими временными параметрами являются следующие: TpoS — время задержки формирования выходных сигналов от начала такта, измеряемое в периодах; TOS — время задержки формирования выходных сигналов в пределах такта; TSD — время стабильного значения выходов в пределах такта. На основании этих параметров можно определить полное время задержки выходных сигналов от началатакта:

Q = tpos + tos . (8)

В цифровой системе с общей синхронизацией все подсистемы S i,...,Sk тактируются одним и тем же синхросигналом CLK. Период синхросигнала CLK определяется по самой медленной модели. На основе изложенного выше быстродействие последовательной цифровой системы в случае общей синхронизации выражается следующим образом:

P2 = K-(Qmax + tp), (10)

где Qmax — максимальное значение параметра Q из всех используемых в цифровой системе моделей.

Для возможности построения конвейерной цифровой системы на всех уровнях должны применяться модели с одинаковыми временными параметрами, т.е. принадлежать одной из групп М1,...,Мб (табл.2). Конвейерная цифровая система S должна также иметь общую синхронизацию, т.е. все подсистемы тактируются одним и тем же синхросигналом C LK.

Значения параметров TPOS, TOS, TSD и Q для рассматриваемых моделей конечных автоматов приведены в табл. 1.

При выборе модели конечного автомата важно, чтобы временные параметры выходных сигналов, определяемые значениями Q и TSD, были одинаковы. В зависимости от значений параметров Q и TSD все модели конечных автоматов можно разделит на шесть групп М1,...,Мб (табл.2).

Известны два основных способа обработки данных в цифровой системе: последовательный и конвейерный. Рассмотрим два случая многоуровневых последовательных цифровых систем: с раздельной и общей синхронизацией.

В последовательной цифровой системе с раздельной синхронизацией каждая подсистема Sk тактируется отдельным синхросигналом CLKk,

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

k= 1,K. Поскольку начало каждого такта следующего уровня должно начинаться не ранее установки стабильного состояния выходов предыдущего уровня, то быстродействие (время прохождения обрабатываемых данных со входа на выход системы) последовательной системы S определяется следующим выражением:

Таблица 2

Группы моделей конечных автоматов в зависимости от временных параметров и быстродействия

Группа Q TsD tc G Модели

M1 0 tp tp Gi= (k-l)-tp C, Ci’

M2 tpD tp tp+tpD G2= (k- 1)*(tP+tPD)+tPD B, F

M3 tpD ts+tH tp+tpD G3= (k-1)-(tp+tpD)+tpD A, D, E, ABi’, Di’, Ei’

M4 tp tp tp G4= k-tp Ci, ABo, Do, Eo, Fo, ABio’, Dio’, Ею’

M5 tp+tpD tp tp+tpD G5= k-(tp+tpD) ABi, Di, Ei

M6 2tp tp tp £ II 40 0 ABIO, Dio, eio

Pi = I (Qk + tp), (9)

k=1

где Qk — максимальное значение параметра Q для моделей конечных автоматов, используемых на уровне k, k= 1,K.

Таблица 3

Параметры для выбора модели конечного автомата

№ класса Модель Тип автомата ti to nBMC (n*OBMC) G Q Приме- чания

1 A Мили с c R (R) G3 tpD

1 B Мура с c R (R) G2 tpD

1 D Мили с c 0 (0) G3 tpD *

1 E Мили с c 0 (L) G3 tpD *

2 C Мура с г 0 (0) G1 0 *

2 ABo - с г R (R) G4 tp

2 Do Мили с г N (N) G4 tp

2 Eo Мили с г 0 (L) G4 tp

3 F Мура Г c 0 (L) G2 tpD *

3 ABi - г c R (R+L) G5 tp+tpD

3 Di Мили Г c 0 (L) G5 tp+tpD

3 Ei Мили Г c L (2L) G5 tp+tpD

4 Ci Мура Г г 0 (L) G4 tp *

4 Fo Мура Г г 0 (L) G4 tp *

4 ABio - Г г R (R+L) G6 2tp

4 Dio Мили Г г N (N+L) G6 2tp

4 Eio Мили Г г L (2L) G6 2tp

5 ABi’ - l c R (R+L) G3 tpD

5 Di’ Мили l c 0 (L) G3 tpD *

5 Ei’ Мили l c L (2L) G3 tpD

6 Ci’ Мура l г 0 (L) G1 0 *

6 ABio’ - l г R (R+L) G4 tp

6 Dio’ Мили l г N (N+L) G4 tp

6 Eio’ Мили l г L (2L) G4 tp

106

РИ, 2001, № 1

Если значение параметра Tos для используемых моделей равно нулю, то период tC синхросигнала CLK принимается равным tP; если TOS = tPD, то tC= = tP + tPD. Таким образом, быстродействие конвейерной многоуровневой цифровой системы можно выразить следующим образом:

G = (K - 1)-tc + Q. (11)

Значения G1,...,G6 быстродействия конвейерной многоуровневой цифровой системы для различных групп моделей М1,...,Мб приведены в табл.2. Для величин G1,...,G6 справедливы следующие неравенства:

Gi < G4 < G6 ;

Gi < G2(Gs) < G5 ; (12)

G4 < G5.

Самой быстродействующей группой моделей конечных автоматов является группа М1. Модели групп М2(М3) и М5 могут иметь преимущество по сравнению с моделями групп М4 и Мб соответственно только для малых значений K. С ростом числа уровней K преимущество моделей групп М4 и Мб становится очевидным.

6. Выбор модели автомата

На выбор подходящей структуры конечного автомата влияют такие факторы: тип автомата; тип входов и выходов; сложность реализации; временные параметры выходных сигналов; способ обработки данных в цифровой системе (последовательный или конвейерный); возможности построения автоматов различных классов (C-F) и др.

В табл.3 приведены некоторые параметры рассматриваемых моделей конечных автоматов, которые наиболее часто учитываются при выборе конкретной модели. По типам входов и выходов все модели разбиты на шесть классов. На основании неравенств (12), а также значений параметров n^C (п*ВМо) и Q можно для каждого класса определить лучшую модель конечного автомата с точки зрения стоимости и быстродействия. Эти модели в табл .3 обозначены звездочками в столбце “Примечания”.

Из анализа табл.3 видно, что для первого класса (комбинационные входы и выходы) лучшими являются модели D и E; для второго (комбинационные входы и регистровые выходы) - модель C; для третьего (регистровые входы и комбинационные выходы) - модель F; для четвертого (регистровые входы и выходы) - модели Ci и FO; для пятого (буферизированные в защелках входы и комбина-

ционные выходы) - модель D’i; для шестого (буферизированные в защелках входы и регистровые выходы) - модель С’1.

7. Заключение

Проведенный анализ структурных моделей конечных автоматов показывает, что для реализации на ПЛУ лучшими являются модели, соответствующие классам автоматов C, D, E и F. Однако возможность построения автоматов данных классов зависит как от свойств самого конечного автомата, так и от архитектурных возможностей ПЛУ. Поэтому для повышения производительности цифровых систем на ПЛУ важно развивать специальные методы синтеза конечных автоматов классов C- F, а также разрабатывать новые архитектуры ПЛУ, отвечающие требованиям эффективной реализации конечных автоматов [9].

Литература: 1. Mealy G.H. A method for synthesizing sequential sircuits // Bell System Techn. J., 1955. Vol.34. P. 1045-1079. 2. Moore E.F. Gedanhen-experiments on sequential machines // In C.Shannon and JMcCarthy editors // Automata Studies Princeton University Press, 1956, P. 129-153. 3. Глушков B.M. Синтез цифровых автоматов. М.: Физматгиз, 1962. 476 с. 4. Соловьев B.B. Синтез микропрограммных автоматов на программируемых матрицах логики // Вєсці Акадэмп Навук Беларусь Сер. физ.-техн. наук. 1994. № 1. С. 68-72. 5. PomeranzI., ChengK.T. STOIC: state assignment based on output/input functions // IEEE Transactions on CAD, August 1993. Vol. 12, № 8. P. 613-622. 6. Соловьев B.B., Васильев А.Г. Программируемые логические интегральные схемы и их применение. Минск: Беларуская навука, 1998. 270 с. 7. Programmable Logic. - Intel, 1994.

8. Solovjev V., Mazalewski J., Chyzy M. Models of robotics control systems on programmable logic devices. // Proceedings of the Fourth International Symposium on Methods and Models in Automation and Robotics, 26-29 August 1997, Miedzyzdroje, Poland, Vol 3. P. 1019-1024. 9. Solovjev V., Chyzy M. Refined CPLD macrocell architecture for the effective FSM implementation // Proc. of the 25th EUROMICRO Conference, МіПп, Italy, September 8-10, 1999. Vol. 1. P. 102-109.

Поступила в редколлегию 12.07.2000

Рецензент: д-р техн. наук, проф. Хаханов В.И.

Соловьев Валерий Васильевич, канд. техн. наук, доцент, адъюнкт Белостокского политехнического института (Польша). Адрес: Dr inz. W. Solowjew, Instytut Informatyki Politechnika Bialostocka, ul.Wiejska 45A, 15351, Bialystok, Poland, тел. +48 85 428206; адрес для переписки (домашний): 220118, г. Минск, ул. Алибего-ва, 3, кв. 144, тел. (0172) 72-32-62.

E-mail: [email protected]

P^ 2001, № 1

107

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