Модуль 7. Синтез микропрограммных автоматов с жёсткой...

21
Модуль 7. Синтез микропрограммных автоматов с жёсткой логикой 1. Преобразование граф - схемы алгоритма (Г СА) в граф автомата Мили 2. Реализация ГСА в тактах автомата Мили 3. Преобразование ГСА в граф автомата Мура 4. Реализация ГСА в тактах автомата Мура 5. Интерпретационный метод синтеза микропрограммных управляющих автоматов (УА) на основе структурной таблицы 6. Синтез УА Мили 7. Синтез УА Мура 8. Контрольные вопросы 1/21 Теория автоматов. Модуль 7

description

Модуль 7. Синтез микропрограммных автоматов с жёсткой логикой. 1. Преобразование граф - схемы алгоритма (ГСА) в граф автомата Мили 2. Реализация ГСА в тактах автомата Мили 3. Преобразование ГСА в граф автомата Мура 4. Реализация ГСА в тактах автомата Мура - PowerPoint PPT Presentation

Transcript of Модуль 7. Синтез микропрограммных автоматов с жёсткой...

Page 1: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Модуль 7. Синтез микропрограммных автоматов с жёсткой логикой

1. Преобразование граф - схемы алгоритма (ГСА) в граф автомата Мили2. Реализация ГСА в тактах автомата Мили3. Преобразование ГСА в граф автомата Мура4. Реализация ГСА в тактах автомата Мура5. Интерпретационный метод синтеза микропрограммных управляющих автоматов (УА) на основе структурной таблицы6. Синтез УА Мили 7. Синтез УА Мура8. Контрольные вопросы

1/21Теория автоматов.

Модуль 7

Page 2: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Преобразование граф - схемы алгоритма (ГСА) в граф автомата Мили

2/21Теория автоматов.

Модуль 7

Начало

КонецkY

Пуск

1x

2x

3x

1Y

2Y

3Y 4Y

0Y

0

0

0

0

1

1

1

1a

2a

1a

3a

4a

Как отмечалось в предыдущем 6-м модуле, ГСА (функция УА) представляет собой кодированную форму графа микропрограммы (МП) и получается путем замены микрокоманд, указанных в операторных вершинах, управляющими сигналами Yt, а флагов условий в условных вершинах - логическими условиями xk (сигнал ПУСК также относится к множеству X={xk}).

))t(X),t(a(λ)t(Y =))t(X),t(a(δ)t(a =1+Где A={a1, …, aM} – множество состояний

автомата, каждое из которых задаётся комбинацией триггеров Q1, … , QR ;

X(t)={x1, …, xk} представляет собой вектор входных двоичных переменных (логических условий); Y(t)=Yt – принадлежит множеству управляющей последовательности микрокоманд для заданной микропрограммы, например, {Y2, Y5, …,}.Набор микроопераций выполняемых

одновременно за один такт автоматного времени, образует микрокоманду Yt (t =1, … , T), которая и составляет содержимое операторных вершин графа МП. В ГСА каждая микрокоманда Yt отождествляется с управляющим сигналом, имеющим то же обозначение.

Автомату Мили свойственен следующий закон функционирования

Page 3: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Правило разметки для интерпретация ГСА автоматом Мили

3/21Теория автоматов.

Модуль 7

1a

2a

3a

4a

Пуск

421 Y/xx1Y/Пуск

21xx21 Y/x

3Y

3x3x

– символом a1 отмечается вход вершины, следующей за начальной, а также вход конечной вершины;– входы вершин, следующих за операторными, отмечаются символами a2 , a3 , ... аm , при этом входам различных вершин даются различные символы.

Если отметкам a1, ..., am поставить в соответствие вершины графа и соединить их дугами, число и направление которых определяется всевозможными переходами между одноименными отметками ГСА, то получим граф автомата Мили.

Каждый переход может включать произвольное число условных вершин, но не более одной операторной.

Каждая дуга помечается символом xk (без инверсии, если путь проходит через выход условной вершины, отмеченный символом "1") и выходным сигналом Yt , если путь проходит через операторную вершину.

Page 4: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Корректность полученного графа автомата

4/21Теория автоматов.

Модуль 7

1a

2a

3a

4a

Пуск

421 Y/xx1Y/Пуск

21xx21 Y/x

3Y

3x3x

Корректность графа автомата определяется выполнением условий для функций перехода. Рассмотрим выполнение этих условий для функции перехода, которыми помечены выходные дуги вершины :- Свойство ортогональности (из всего множества выходов из вершины а2 реализуется только один)

- Свойство полноты (выход из вершины а2 обязательно будет реализован)

0* ,0* ,0* 2121211211 xxxxxxxxxx

112121 xxxxx

Page 5: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Реализация ГСА в тактах автомата Мили

5/21Теория автоматов.

Модуль 7

Работа автомата по выполнению микропрограммы является циклической, поэтому рассмотрим его функционирование в течение одного машинного такта, совпадающего с одним тактом синхронизации сигнала СLK. Будем также считать, что временные такты работы УА и операционного автомата (ОА) совпадают во времени.

Функционирование ГСА для первых 2-х тактов автомата Мили, а также временные диаграммы работы УА с ОА в течение i-го такта приведены на следующих слайдах.

Page 6: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Функционирование ГСА для первых 2-х тактов

6/21Теория автоматов.

Модуль 7

Начало

Пуск

1Y

0Y

0

1

1a

2a такт1

1x

2x2Y

4Y

0

0

1

1

такт2

В течение 1-го такта сохраняется состояние a1.В начале такта (срез сигнала Clk), при условии Пуск=1, вырабатывается выходной упр. сигнал Y1 и сигналы возбуждения триггеров памяти автомата, которые обеспечат переключение автомата в состояние a2 при смене такта. Прежде, чем синхросигнал Clk переведёт УА из состояния a1 → a2 из ОА должны быть получены признаки условий x1 и x2 на основе выполнения им микрокоманды Y1. В начале 2-го такта по срезу сигнала Clk УА переходит в

состояние a2 , которое сохраняется неизменным в течение всего такта, также как и значения признаков x1 и x2 , независимо от условий выполнения ОА микрокоманды Y2 или Y4 . Это главная особенность (независимость признаков, выработанных в предыдущем такте, от результатов выполнения МК в следующем такте) функционирования автомата Мили. Её невыполнение приведёт к сбою в работе УА. На основе известных значений признаков x1 и x2 УА выработает сигнал Y2 (если x1=0) и сигналы возбуждения триггеров , обеспечивающих переключение автомата a2 →a3 (при x1=1 & x2=0 сигнал Y2 не вырабатывается), или сигнал Y4 и сигналы возбуждения триггеров (i=2) , обеспечивающих переключение автомата a2→a1 , если x1=1 и x2 =1. ОА, выполнив МК (Y2 или Y4 ), установит в конце такта (Clk=1) значения, соответствующих выполненной МК признаков условий x1 и x2.

Page 7: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Временные диаграммы работы УА Мили с ОАв течение такта

7/21Теория автоматов.

Модуль 7

i- ый такт работы УА и ОА

Семейство X (i-1), выработанных ОА в i-1 такте для i такта УА

Выполнение ОА МК Yt(i) в i -

такте

Фиксация ОА признаков X (i) для (i+1) такта

( )itY

( )i

Clk

( )iX Неопр-Сост для i +1

УА

УА

ОА

ОА

,ai

Page 8: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Преобразование ГСА в граф автомата Мура

8/21Теория автоматов.

Модуль 7

5a

Поскольку в автомате Мура выходные МК Yt связаны только с состояниями автомата, то каждой операторной вершине графа ГСА следует поставить в соответствие одно из состояний a2, a3, ... . Символом a1 помечаются начальная и конечная вершины.

1a

Пуск

21xx

3x

3x

Пуск

12 Y/a 45 Y/a

23 Y/a

1x

21xx

34 Y/a

В отличие от графа автомата Мили, в графе автомата Мура выходные сигналы помещаются внутри кружка вместе с состоянием aj. В общем случае автомат Мура имеет большее число состояний, чем автомат Мили, поэтому его реализация требует больших аппаратных затрат.

kY

Пуск

1x

2x

3x

1Y

2Y

3Y 4Y

0Y

0

0

0

0

1

1

1

1a

2a

1a

3a

4a

Конец

Начало

Page 9: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Реализация ГСА в тактах автомата Мура

9/21Теория автоматов.

Модуль 7

В силу цикличности работы автомата по выполнению микропрограммы рассмотрим его функционирование в течение одного машинного такта, совпадающего с одним тактом синхронизации сигнала СLK (начало такта задаётся срезом сигнала СLK)

Начало

Пуск

0Y

0

1

1a

1x

2x

1Y

0

0

1

1

2a

2Y 3Y 4Y3a 4a 5a

такт1

такт2

Состояние a1 и сигнал Пуск сохраняются в течение всего 1-го такта. Выходной сигнал (МК) в 1-м такте автомата Мура не вырабатывается. В конце такта в УА должны быть сформированы сигналы возбуждения (i=1) триггеров для перехода автомата из состояния a1 → a2

В момент среза сигнала Clk устанавливается состояние a2, которое сохраняется в течение всего 2-го такта. УА в начале такта должен выработать МК Y1 . По окончанию выполнения МК Y1 ОА (Clk=1) вырабатываются признаки условия x1 и x2 ,на основании которых в УА формируются сигналы возбуждения триггеров (i=2) для реализации одного из переходов:

a2 → a3 ,a2 → a4 ,a2 → a5 .

( )i

( )i

Page 10: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

10/21

Теория автоматов. Модуль 7

Временные диаграммы работы УА Мура с ОАв течение такта.

i- ый такт работы УА и ОА

Выполнение ОА МК Yt(i)

в i -тактеФиксация ОА признаков X (i) для i такта

( )itY

Clk

( )iX( )1-iX

ia

( )i( )1-i

для ОА УА

УА

ОА Н-Сост

Н-Сост

Page 11: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Интерпретационный метод синтез УА на основе структурной таблицы

11/21

Теория автоматов. Модуль 7

Канонический метод синтеза структурного автомата (Мили или Мура) на основе таблицы истинности для выходных сигналов и сигналов возбуждения триггеров является универсальным методом, позволяющим получить схему автомата с минимальными аппаратными затратами. Однако этот метод становится трудоёмким для реализации ГСА с большим числом операторных вершин, порождающих автоматы с большим числом состояний.

В таких случаях используется интерпретационный метод синтез УА на основе структурной таблицы.

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

1. Кодирование состояний автомата с использованием какого-либо способа.

2. Выбор типа триггера3. Составление структурной таблицы (прямой или обратной)4. Запись логических выражений для выходных сигналов

управления Yt и сигналов возбуждения триггеров φj .5. Составление структурной схемы автомата. При этом элементы

структуры автомата как бы моделируют содержательную часть столбцов структурной таблицы (этот момент предопределил название метода)..

6. Построение функциональной схемы.

Page 12: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

12/21

Теория автоматов. Модуль 7

Синтез УА Мили на основе прямой структурной таблицы

1. Кодирование состояний автомата.Рассмотренная выше структура (топология) графа автомата Мили

очень простая, и полностью удовлетворят требованиям соседнего кодирования.

1a

2a

3a

4a

Пуск

421 Y/xx1Y/Пуск

21xx21 Y/x

3Y

3x3x

Таким образом:

10

0

a21

1Q

a3

a1 a4 2Q

( ) 00== 211 QQaK

( ) 10== 212 QQaK

( ) 11== 213 QQaK

( ) 01== 214 QQaK

2. Выбор типа триггера.Используемые триггеры должны быть синхронного типа с динамическим управлением записью информации, Кроме того триггеры должны тактироваться срезом сигнала Clk, если мы хотим оставить принцип синхронизации, указанный на временных диаграммах. Выбираем синхронный D –триггер SN 7474, дополнив его инвертором в цепи синхронизации.

111001110000

1+→ tt QQ tD

Триггерный словарь D-триггера

Page 13: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

3. Составление структурной таблицы автомата Мили

13/21

Теория автоматов. Модуль 7

В прямой структурной таблицы, в графе «Исходные состояния» перечисляются все состояния автомата, начиная с первого (в обратной таблице указанная последовательность перечисления состояний автомата производится в графе «Состояния переходов»). Переход автомата из состояния am в aS контролируется частной функцией перехода Fi(am, aS) = am X(am, aS), которая и определяет значения выходных сигналов Yt и функций возбуждения φi для каждого перехода.

00

01

01

11

11

00

10

00

Код сост.перехода

K (as)=Q1Q2

-- a4 x3a1018

D2-a401a47

D2Y3a3a411a36

D1 D2Y2a3105

D1 D2-a3104

-Y4a2 x1x2a110a23

D1Y1a1пускa2002

--a100a11

СигналыВозбуждени

яφi (am, as)

ВыходныеСигналыYi(am, as)

Частные функциипереходаFi (am, as)

Состояния

переходовas

Кодисход.сос

тK (am)=

Q1Q2

Исходныесостояни

еam

№переход

а

пускa1

212 xxa

12xa

34xa

Page 14: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

4. Запись логических выражений для выходных сигналов управления Yt и сигналов возбуждения триггеров φj

14/21

Теория автоматов. Модуль 7

Дополнение к П.3. В колонке «Сигналы возбуждения φi (am, as)» выписываются значения Di , принимающие единичные значения.

Аналитические выражения для определения функций Yt и i записываются на основе объединения по ИЛИ соответствующих функций переходов (в данной таблице отсутствуют одинаковые выходные сигналы для разных функций перехода).

Y4=F3=a2x1x2

Y3=F6=a3

Y1=F2=a1&пуск

Сигналы возбуждения триггеровВыходные сигналы управления

1252 == xaFY

( ) 34321276542 ∨∨∨=∨∨∨= xaaxxaFFFFD

( )21225421 ∨∨=∨∨= xxaПускaFFFD

Page 15: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

5. Составление структурной схемы автомата Мили

15/21

Теория автоматов. Модуль 7

Структурная схема управляющего автомата Мили включает три составные части: регистр состояний (состоит из триггеров, которые были выбраны перед составлением структурной таблицы), дешифратор состояний и комбинационной части, предназначенной для реализации выражений для выходных сигналов управления Yt и сигналов возбуждения триггеров.

DC

RG

ПУСК,

.

.

.

Q1

QR

CLK

a1

aM -KC

Y-KC

X={x1, x2, …, xk}

Сигналы возбуждения триггеров

.

.

.

"a.Уст 1" сост. tY

Page 16: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

6. Построение функциональной схемы

16/21

Теория автоматов. Модуль 7

Здесь ограничимся лишь двумя фрагментами структурной схемы, связанными с регистром состояний автомата и схемой задания входных управляющих сигналов для отладки и проверки работоспособности автомата

"a.Уст 1" сост. 2D

1D

D

D

C

C

R

R

2T

1T

121 =aQQ

221 =aQQ

321 =aQQ

2Q

1Q

DC1

2

E

0

1

2

3

421 =aQQ

( )мл

( )ст

Clk

Схема автомата

2Q1Q 1Y 2Y

Схема задания входных управляющих сигналов для отладки и проверки работоспособности автомата

Y4

Пуск""1

"a.Уст 1" сост.

XWG

Ключ

Data Ready

CLKx1x2

Y3

1=12xaИндикация для ,

10

0

a21

1Q

a3

a1 a4 2Q

12 Y

WGОт

Page 17: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Синтез УА Мура на основе прямой структурной таблицы

17/21

Теория автоматов. Модуль 7

1a

Пуск

21xx

3x

3x

Пуск

12 Y/a 45 Y/a

23 Y/a

1x

21xx

34 Y/a

1. Кодирование состояний автомата (5 состояний – 3 триггера) с использованием какого-либо способа. Выберем способ приоритетного кодирования логически смежных состояний.Правило 1. Два или группа состояний автомата из которых возможны переходы в одно и тоже третье состояние, называются логически смежными (ЛСС-1).

Правило 2. Два или группа состояний, в которые может быть осуществлён переход из одного какого-либо состояния, также называются логически смежными (ЛСС-2)

Таким образом, имеем.ЛСС-1: (2,3); (4,5). ЛСС-2: (3,4,5)

Следовательно:

( ) 000== 3211 QQQak

( ) 001== 3212 QQQaK

( ) 011== 3213 QQQaK

( ) 111== 3214 QQQaK

( ) 101== 3215 QQQaK10110100

3210

451

1Q

32QQ

Page 18: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

2 & 3. Выбор типа триггера и составление структурной таблицы

18/21

Теория автоматов. Модуль 7

Память состояний автомата Мура выполним на JK-триггерах с отрицательным фронтом синхронизации типа SN 7473. Структурная табл. автомата Мура имеет на один столбец меньше, т.к. ВЫХОДНОЙ СИГНАЛ Y(am) и ИСХОДНЫЕ СОСТОЯНИЯ объединены в одном столбце. В колонке «Сигналы возбуждения φi (am, as)» выписываются значения Ji и Ki , принимающие единичные значения.

0*111*01*110*000

QtQt+1 tJ tK

K1, K3a5000a1101a5/Y49

K1, K2, K3a4x3000a18

111a4111a4/Y37

J1a3111a4011a3/Y26

J1a2x1x2101a55

J1, J2111a44

J2 011a3001a2/Y13

J3a1Пуск 001a22

000a1000a11

Сигналывозбуждени

яφi (am, as)

Частные функциипереходаFi (am, as)

Код сост.перехода

K (as)=Q1Q2Q3

Состояния

переходовas

Кодисход.сост

K (am)=Q1Q2Q3

Исход.cост./Вых. сигнал

am/Y(am)

№переход

а

12xa

212 xxa

34xa

Пускa1

Page 19: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

4 & 5. Запись логических выражений для выходных сигналов управления Yt и сигналов возбуждения триггеров φj .

Составление структурной схемы автомата Мура.

19/21

Теория автоматов. Модуль 7

4. Запись логических выражений для выходных сигналов управления Yt и сигналов возбуждения триггеров φj . Аналитические выражения для определения функций Yt и i для автомата Мура записываются на основе объединения по ИЛИ соответствующих функций переходов, т.е. также как это было показано для автомата Мили.5. Составление структурной схемы автомата Мура. Схема имеет отличия от схемы автомата Мили лишь в части формирования выходных сигналов Yt , которые зачастую представляют собой выходы дешифратора DC

DC

RG

ПУСК,

.

.

.

Q1

QR

CLK

a1

aM

-KC

Y-KC

X={x1, x2, …, xk}

Сигналы возбуждения триггеров

Выходныесигналыуправления

.

.

.

"a.Уст 1" сост.

Page 20: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

5. Построение функциональной схемы.

20/21

Теория автоматов. Модуль 7

1321 aQQQ

12321 YaQQQ

23321 YaQQQ

34321 YaQQQ

C

C

R

2T

1T

2Q

DC1

2

E

0

1

2

3

( )мл"a.Уст 1" сост.

CLK

C

R

R

1Q ( )ст

7

Q3

4

4

от КС

В КС, для формирования сигналов возбуждения

1

От WG

5

K

K

J

J

K

J

T3

K1

J3

J1

K3

)( 45321 YaQQQ

SN7473

Здесь ограничимся рассмотрением лишь интерфейса регистра состояний и дешифратора состояний.

Page 21: Модуль 7. Синтез микропрограммных  автоматов с жёсткой логикой

Контрольные вопросы

21/21

Теория автоматов. Модуль 7

1. Изложите правила разметки ГСА с целью преобразования её в граф автомата Мили.

2. Как определяется корректность полученного графа автомата.3. Какова важная особенность функционирования автомата Мили в

течение машинного такта4. Изложите правила разметки ГСА с целью преобразования её в граф

автомата Мура.5. Назовите этапы синтеза схемы управляющего автомата Мили

(Мура) на основе использования структурных таблиц.6. Нарисуйте форму прямой (обратной) структурной таблицы для

автомата Мили.7. Нарисуйте структурную схему автомата Мили.8. В чём отличие формы структурной таблицы для синтеза автомата

Мура от соответствующей таблицы для автомата Мили.