Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Altera / MAX+PLUS II - AHDL.doc
Скачиваний:
139
Добавлен:
10.12.2013
Размер:
7.02 Mб
Скачать

2.4.2 Назначение автомату сигналов синхронизации, сброса, разрешения по входу

Сигналы синхронизации (Clock), сброса (Reset), разрешения по входу (Enable) являются управляющими сигналами для автомата. Они назначаются автомату в секции логических уравнений (Logic Section).

Впримере 2.25 (simple1.tdf) синхронизация устройства осуществляется сигналомclk. Асинхронный сброс автомата будет осуществляться сигналомreset,разрешение синхронизации (по входу) осуществляется сигналом ena.

2.4.3 Кодирование состояний автомата

Бит состояния – выход триггера, используемый для хранения одного бита данных автомата. В большинстве случаев компилятор MAX+PLUS IIавтоматически производит назначение и минимизацию числа бит состояний.

Однако, быстродействие некоторых автоматов выше, если число бит состояний не минимально, т.е. иногда эти биты выгоднее назначать вручную.

В следующем примере выходы устройства phase[3..0]определены еще как биты автоматаss,описываемого графом переходов.

Примечание:

При построении временных диаграмм для данного устройства не забываете, что сигналы ccw и cwне могут одновременно быть равны «Лог.1», т.к. это может привести к непредсказуемым результатам (КомпиляторMAX+PLUS IIне сможет выбрать строку таблицы истинности, соответствующую входам).

2.4.4 Описание автомата Мура (Moore machine)

Если выходы автомата зависят только от текущего внутреннего состояния, а текущее внутреннее состояние зависит от предыдущего состояния и предыдущего состояния входов, то такой автомат называется автоматом Мура (Moore machine).

Граф переходов для автомата Мура представлен на рисунке 2.12

В следующем примере (moore1.tdf) спроектировано устройство, являющееся автоматом Мура с четырьмя состояниями.

SUBDESIGN moore1

(

clk : INPUT;

reset : INPUT;

y : INPUT;

z : OUTPUT;

)

VARIABLE

% текущее текущий %

% сост. выход %

ss: MACHINE OF BITS (z)

WITH STATES (s0 = 0,

s1 = 1,

s2 = 1,

s3 = 0);

BEGIN

ss.clk = clk;

ss.reset = reset;

TABLE

% текущее текущий след. %

% сост. вход сост. %

ss, y => ss;

s0, 0 => s0;

В данном примере состояния автомата указаны при его объявлении. Условия переходов заданы с помощью таблицы переходов, которая реализована в виде таблицы истинности.

На рисунке 2.13 показана схема устройстваmoore1.tdf (из примера 2.27)

Существует и другой метод задания автоматом Мура – без описания значений состояний. В следующем примере 2.28 (moore2.tdf), проиллюстрирован этот подход.

При данном подходе вместо определения выходов как значений состояний автомата, в таблицу переходов введен еще один столбец «следующий выход». При использовании этого метода требуется засинхронизировать выход сигналом Clock, что в рассматриваемом примере делается с помощьюD-триггера.

2.4.5 Описание автомата Мили (Mealy machine)

В автомате Мили выходы – есть функция от входов в данный момент времени и текущего состояния.

Граф переходов для автомата Мили представлен на рисунке 2.14.

В

SUBDESIGN mealy

(

clk : INPUT;

reset : INPUT;

y : INPUT;

z : OUTPUT;

)

VARIABLE

ss: MACHINE WITH STATES (s0, s1, s2, s3);

BEGIN

ss.clk = clk;

ss.reset = reset;

TABLE

% текущ. текущ. текущ. след. %

% сост. вход выход cост. %

ss, y => z, ss;

s0, 0 => 0, s0;

s0, 1 => 1, s1;

следующем примере (mealy.tdf) спроектировано устройство, являющееся автоматом Мили с четырьмя состояниями.

На рисунке 2.15показана схема устройстваmealy.tdf (из примера 2.29)

Соседние файлы в папке Altera