- •1. Синтез микропрограммных автоматов (мпа) с жесткой логикой.
- •1.1. Синтез автомата Мили по гса.
- •1) Разметка состояний автомата по гса.
- •2) Прямая таблица переходов.
- •3) Кодирование состояний автомата.
- •4) Обратная структурная таблица.
- •5) Запись функций выходов и переходов автомата.
- •6) Построение схемы автомата Мили (рис.2).
- •Р ис. 2. Функциональная схема автомата Мили на жесткой логике.
- •1.2. Синтез автомата Мура по гса.
- •1) Разметка состояний.
- •2) Прямая таблица переходов.
- •3) Кодирование состояний.
- •4) Обратная структурная таблица.
- •5) Запись функции выходов и переходов автомата.
- •6) Построение функциональной схемы автомата Мура (рис.5).
- •2. Синтез мпа на программируемых логических матрицах (плм).
- •2.1. Синтез автомата Мили.
- •2.2. Синтез автомата Мура.
Самарский Государственный Технический Университет
Кафедра «Вычислительная техника»
Проектирование цифровых управляющих автоматов.
Методические указания
Самара 2005
Введение.
Микропрограммный автомат (МПА) - конечный автомат, обеспечивающий выполнение микропрограммы (МП) операционным устройством (ОУ), состоящим из операционного и управляющего автоматов (ОА и УА).
Микропрограмма описывает алгоритм выполнение какой-либо сложной операции в терминах микроопераций (МО).
К микрооперациям относятся простейшие действия, выполняемые элементами операционного автомата (инверсия слова, сложение двух слов, сдвиг влево или вправо). МП наглядно представляется в виде ГСА, в вершинах которой записываются микрооперации или логические условия. Идентификаторами этих операций, условий является обозначения элементов операционных автоматов.
Например:
RA - регистр A.
RA[0] - нулевой разряд регистра A.
СТ - содержимое счетчика и т.д.
В микрооперациях возможны следующие действия над переменными.
Присваивание: RA := A
RA := L1(RA).0 - сдвиг влево на 1 разряд
RA := 0.R1(RA) - сдвиг вправо на 1 разряд и т.д.
Микрооперации, которые можно выполнять одновременно называются совместимыми и могут быть записаны в одной операторной вершине. МП записанная в терминах микрооперации и логических условий называют функциональной или содержательной.
К аждая МО в операционном автомате инициируется микрокомандой, которую вырабатывает управляющий автомат в зависимости от значений логических условий. По МП может быть построена ГСА управляющего автомата. По топологии ГСА УА совпадает с МП ОА. Отличаем является дополнительная условная вершина в начале ГСА («Пуск автомата») и дополнительная операторная – «операция выполнена».
В операционных вершинах ГСА УА записываются Yi - микрокоманды, а в условных Xi - логические условия.
На практике наибольшее распространение получили автоматы двух типов: Мили и Мура.
Различие автоматов состоит в том, что выходная буква Wt автомата Мили зависит не только от его состояния am, но и от входной буквы zt. У автомата Мура выходная буква зависит только от am.
Обычно в автоматах используют синхронные триггера, у которых реакция на входные сигналы приходит только при наличии сигнала синхронизации С (его положительным или отрицательным фронтом).
1. Синтез микропрограммных автоматов (мпа) с жесткой логикой.
Автоматы на жесткой логике построены на элементной базе и, или, не, и-не и т.п. и триггерах. Функция автомата определяется его функциональной схемой.
1.1. Синтез автомата Мили по гса.
Порядок синтеза автомата рассмотрим на примере автомата заданного ГСА рис.1.
1) Разметка состояний автомата по гса.
Состояние:
a1 – начальное (оно же конечное) состояние, отмечается на входе вершины, следующей за начальной и на входе вершины «конец».
а2, а3,... - входы всех вершин, следующих за операторами.
Микрокоманда y6 вырабатывается УА при завершении его работы по ГСА. y6 — соответствует событию «операция выполнена». Искусственно введем y6 при любых переходах в начальное (конечное) состояние а0.
При разметке состояний автомата Мили можно использовать так называемые узлы . Их введение в ГСА, как правило, сокращает количество переходов в автомате Мили, упрощает функции переходов и выходов, а также — схему автомата. Использование узлов показано на примере в п. 1.2.
Рис. 1. Размеченная ГСА автомата Мили.
2) Прямая таблица переходов.
Прямая таблица переходов строится по размеченной ГСА (рис.1). В ней указываются все возможные пути переходов из состояния аm в состояние аs, условия при которых переход из аm в аs, происходит по данному пути (X(am,as)), микрокоманда (Y(am,as)), вырабатывается автоматом на данном переходе.
Таблица 1.
№ |
am |
as |
X(am,as) |
Y(am,as) |
1 |
a0 |
a0 |
|
y6 |
2 |
|
a1 |
|
y1y4y5 |
3 |
|
a2 |
|
y1y2y3 |
4 |
|
a3 |
|
y1y2y5 |
5 |
|
a3 |
|
y3y4y5 |
6 |
a1 |
a1 |
|
y1y4y5 |
7 |
|
a2 |
|
y1y2y3 |
8 |
|
a3 |
|
y1y2y5 |
9 |
|
a3 |
|
y3y4y5 |
10 |
a2 |
a3 |
|
y3y4y5 |
11 |
|
a3 |
|
y1y2y5 |
12 |
a3 |
a0 |
|
y6 |
13 |
|
a3 |
|
y3y4y5 |
14 |
|
a3 |
|
y1y2y5 |
3) Кодирование состояний автомата.
УА с жесткой логикой имеет память состояний, которая обычно выполнена на D- или RS- триггерах, синхронизируемых фронтом. Каждое состояние кодируется двоичным числом. Минимальное количество триггеров для памяти состояний должно быть больше или равно log2 (количество состояний автомата). В данном примере |А| - количество состояний автомата = 4, поэтому число элементов памяти = 2. Закодируем состояния автомата:
k(a0)=11
k(a1)=10
k(a2)=01
k(a3)=00