Similar presentations:
Теория автоматов
1. Теория автоматов
• Абстрактные цифровые автоматы• Структурные цифровые автоматы
• Канонический метод структурного синтеза
• Работа автомата и обеспечение устойчивости
функционирования
• Операционные устройства
• Интерпретационный метод синтеза
• Синтез УА на ПЛУ
• УУ с программируемой логикой
2. Предмет теории автоматов
Теория автоматов ─ раздел теории управляющих
систем, изучающий математические модели
преобразователей дискретной информации,
называемых автоматами.
Автомат
1. Некое устройство, выполняющее свои функции без
участия человека (цифровые ─ устройства для
преобразования цифровой информации).
2. Математическая модель реальных технических
устройств. Как математическая модель, автомат
рассматривается как чёрный ящик, имеющий
конечное число входов и выходов и некоторое
множество внутренних состояний, в которые он
переходит практически мгновенно под действием
входных сигналов.
3. В ТА математические модели создаются с целью решения задач: - анализа; - синтеза.
• В ТА математические модели создаются с цельюрешения задач:
- анализа;
- синтеза.
• Под анализом автомата понимают определение закона
его функционирования при заданной структуре
автомата.
• Под синтезом – построение, проектирование автомата из
более простых, элементарных автоматов по заданному
закону функционирования.
• Цель ТА:
– изучение принципов построения и методов синтеза
операционных устройств, представляемых в виде
композиции операционного и управляющего
автоматов и ориентированных на использование в
вычислительной технике и устройствах автоматики.
4. Схема операционного устройства (ОУ)
ОУКоманды
УА
X
Y
Операнды
ОА
Результаты
УА – управляющий автомат
ОА – операционный автомат
УА вырабатывает распределённую
во времени последовательность
управляющих сигналов (Y),
порождающих в ОА нужную
последовательность
микроопераций.
ОА принимает из внешней среды
операнды, преобразовывает их и
выдает результаты
преобразования, формирует по
результатам обработки
осведомительные сигналы (Х).
5. Абстрактные цифровые автоматы (АЦА)
АЦА - это математическая модель дискретного цифровогоустройства
S = (A, Z, W, δ, λ, aнач )
A - множество состояний автомата: А = {a1, … , аM}
Z - множество входных сигналов: Z = {z1, … , zF}
W - множество выходных сигналов: W = {w1, … , wG}
δ - функция переходов автомата. Определяет состояние
автомата в следующий момент времени в зависимости от
состояния am и входного сигнала zf в момент времени t :
as = δ (am, zf)
λ - функция выходов. Определяет выходной сигнал wg в
зависимости от состояния am и входного сигнала zf :
wg = λ (am, zf)
aнач = a1 - начальное состояние автомата в начальный
момент времени
6. Цифровой автомат – математическая модель некоторого устройства, предназначенного для преобразования (приём, хранение,
обработка, передача) информации.Свойства ЦА:
дискретность входной информации;
дискретность выходной информации;
дискретность состояний;
дискретность времени;
конечность.
Вход
ЦА
Выход
7. Задача: УУ осуществляет сканирование входного текста посимвольно и выполняет запись на магнитный носитель последовательностей
символов, ограниченных двумя символамирешетки:
…##<text1>##...#... ##<text2>##...
Z:
z1 - любой символ, кроме ‘#’
z2 - символ ‘#’
текст
W: w1 - включение накопителя
w2 - выключение накопителя
w3 - пусто
A: a1 - aнач - ожидание первого символа #
a2 - ожидание второго подряд символа #
a3 - ожидание конца сообщения
a4 - ожидание второго подряд символа #
УУ
вкл/
выкл
МН
8. Задача: УУ осуществляет сканирование входного текста посимвольно и выполняет запись на магнитный носитель последовательностей
символов, ограниченных двумя символами решетки:…##<text1>##...
…#... ##<text2>##
amzf as wg комментарии
a1 z1 a1 w3
z1/w3
a1
z2/w2
z2/w3
z1/w3
a1 z2 a2 w3
a2
z2/w1
a2 z1 a1 w3
a2 z2 a3 w1
включение
накопителя
a3 z1 a3 w3
запись
z2/w3
a4
z1/w3
a3
z1/w3
нет
записи
a3 z2 a4 w3
a4 z1 a3 w3
a4 z2 a1 w2 выключение
накопителя
9. Классы абстрактных автоматов (АА)
Классификация АА по свойствам:– детерминированным называется автомат, для которого
выполняется условие однозначности функции перехода.
Автомат под действием любого входного сигнала не
может перейти более чем в одно другое состояние;
– вероятностный автомат – автомат, у которого функция
переходов может принимать различные значения.
as/p1
p1, p2 - вероятность
δ (am, zf) = a /p
as, ak - состояния
k 2
По свойствам входных/выходных сигналов и множеству
состояний:
– конечный – автомат, у которого множества A, Z, W
конечные (счетные);
– бесконечный – автомат, у которых хотя бы одно из
множеств A, Z, W бесконечно.
10. Классы абстрактных автоматов
По количеству различных состояний, в которых будет находиться АА:– с памятью – имеет более чем одно состояние;
– тривиальный – имеет только одно состояние.
А={a1} => S*= (Z, W, λ)
λ - функция выхода, S* - комбинационная схема
По области определения функций переходов и выходов:
– полностью определенный автомат, если функции переходов и
выходов определены для всех возможных пар состояний и
входных сигналов;
– частичный - функции переходов и выходов определены не для
всех пар состояний и входных сигналов.
По наличию начального состояния:
– инициальный – для автомата определено начальное
состояние;
– неинициальный – автомат начинает свою работу из любого из
возможных состояний.
11. Классы абстрактных автоматов
По устойчивости состояний:– асинхронный автомат - все состояния устойчивы;
– синхронный - если существует хотя бы одно неустойчивое
состояние.
Устойчивое состояние автомата - если при поступлении
любого входного сигнала, вызывающего переход в это
состояние, автомат остается в том же самом состоянии.
δ (am, zf) = as
δ (as, zf) = as
zf
zf
as
Неустойчивое состояние (существует риск проскока).
δ (am, zf) = as
δ (as, zf) = ak
zf
as
zf
ak
12. Классификация АА по способу формирования выходных сигналов
Автомат Мили (Mealy)Выходной сигнал зависит и от состояния и от
входного сигнала
w (t) = λ (a(t), z(t))
a(t+1)= δ (a(t), z(t))
Автомат Мура (Moore)
Выходной сигнал в текущий момент зависит только
от состояния
w (t) = λ (a(t))
a(t+1)= δ (a(t),z(t))
13. Модель С-автомата
ZАА
W
Выходной сигнал I рода
U
Выходной сигнал II рода
Имеет 2 выходных канала: по одному формируются
выходные сигналы автомата Мили, а по другому –
выходные сигналы автомата Мура
a (t+1) = δ (a(t), z(t))
w (t) = λ1 (a(t), z(t))
u (t) = λ2 (a(t))
14. Языки задания АА
• Начальные языки• Автоматные языки
Способы явного задания функций
переходов и выходов
Табличный
Графический
Матричный
15. Табличный способ задания
Таблица переходовδ:
a:
z:
z1
z2
a1
a2
a3
a4
a1
a2
a1
a3
a3
a4
a3
a1
λ:
Таблица выходов
a:
a1 a2 a3 a4
z:
z1 w3 w3 w3 w3
z2 w3 w1 w3 w2
Совмещенная таблица переходов и выходов для
автомата Мили
δ/λ:
a:
z:
a1
a2
a3
a4
z1
a1/w3
a1/w3 a3/w3 a3/w3
z2
a2/w3 a3/w1 a4/w3 a1/w2
16. Отмеченная таблица переходов автомата Мура
w1w2
w3
w1
a1
a2
a3
a4
z1
a2
a3
a4
a1
z2
a3
a4
a1
a2
z3
a4
a1
a2
a3
δ:
a:
z:
17. Графический способ задания функций переходов и выходов
Автомат задается с помощью графа переходов ориентированного связного графа, вершины которогосоответствуют состояниям, а дуги - переходам между ними.
z3
w1
a1
z2
z2
z3
w1
a4
a2
z1
z2
z3
w2
z1
z3
z1
a3
z1
w3
z2
18. Пример: Отец, в зависимости от того, какие оценки сын приносит домой, выбирает разные методы воспитания. Сын может приносить
только двойки или пятерки.Z:
z2 – сын принес «2»
z5 – сын принес «5»
Граф автомата, моделирующий
умное поведение родителя
z5/w4
z2/w3
a2
z2/w2
z2/w3
a3
z2/w1
W: w1 – брать ремень
w2 – ругать сына
w3 – успокаивать сына
w4 – надеяться
w5 – радоваться
w6 – ликовать
a1
z5/w5
z5/w4
a4
z5/w6
19. Табличный способ задания
δ:Таблица переходов
a:
z:
z2
z5
a1
a2
a3
a4
a2
a4
a3
a1
a3
a1
a2
a4
λ:
Таблица выходов
a:
a1 a2 a3 a4
z:
z2 w3 w2 w1 w3
z5 w5 w4 w4 w6
Совмещенная таблица переходов и выходов
для автомата Мили
δ/λ:
a:
z:
a1
a2
a3
a4
z2
a2/w3 a3/w2 a3/w1 a2/w3
z5
a4/w5 a1/w4 a1/w4 a4/w6
20. Матричный способ задания
z1 / w 3 z 2 / w 3z / w
z
/
w
3
2
1
Матрица связей для C 1
автомата Мили
z1 / w 3 z 2 / w 3
z1 / w 3
z 2 / w 2
Матрицы, описывающие автомат Мура
Матрица-столбец
Матрица соединений
выходных сигналов
z1 z 2 z 3
z z z
3
1
2
C
z 2 z 3 z1
z1 z 2 z 3
w1
w
2
/
C
w 3
w1
21. Преобразование автомата Мура в автомат Мили
S1 = (Z1, W1, A1, δ1, λ1, a11 ) - автомат МураS2 = (Z2, W2, A2, δ 2, λ 2, a12 ) - автомат Мили
Z2 = Z1
Эквивалентные автоматы
2
1
W =W
Для эквивалентности требуется, чтобы реакции на любую
входную последовательность совпадали:
выбираем множество состояний исходного автомата
A2 = A1;
в качестве функций переходов берем ту же функцию δ2= δ1;
в качестве начального состояния - то же состояние a12= a11.
22. Преобразование автомата Мура в автомат Мили
Из условийδ1 (am, zf) = as
λ1 (as ) = wg
zf
am
as
wg
λ2 (am, zf) = wg
zf /wg
am
as
23. Преобразование автомата Мили в автомат Мура
S1 = (Z1, W1, A1, δ1, λ1, a11 ) - автомат МилиS2 = (Z2, W2, A2, δ 2, λ 2, a12 ) - автомат Мура
Z2 = Z1
Эквивалентные автоматы
2
1
W =W
Каждому состоянию автомата Мили A1 поставлено в
соответствие множество пар As={(as,wg)}
As = {(as,w1),(as,w2),(as,w3)}
M
A AS
2
S 1
δ1 (am, zf) = as
λ1 (am, zf) = ws
24. Преобразование автомата Мили в автомат Мура
z1/wiz2/wj
zf /wk
as
am
z3/wn
zf
as/wk
am/wi
Am
am/wj
zf
As
as/wn
25. Эквивалентность автоматов
Автоматы с одинаковыми наборами входных и выходных сигналовназываются эквивалентными, если после установки в начальное
состояние их реакции на любые входные воздействия совпадают.
• Совмещенная таблица переходов
и выходов автомата Мили S1
a:
a1
z:
a2
a2/w1
a3/w3
a2/w3
z2
a3/w2
a2/w1
a1/w1
S1:
z2
w1 w1 w1 w2 w3
a3
z1
z1
z1
z2
a:
a2
a3
a1
z2
a3
S2: w1 w1 w1 w3 w1 w2
a1
a2
a2
a5
a1
a1
a2 a3 a4
a5
z1
a2
a5 a5 a3
a2
z2
a4
a2 a2 a1
a1
z:
w1 w1 w3 w1 w2
a2
• Отмеченная таблица переходов
автомата Мура S2
a4
26. Задача минимизации АА
Задача нахождения автомата с минимальным числомвнутренних состояний в классе эквивалентных между
собой автоматов
Два автомата одного типа эквивалентны, если для
каждого состояния am первого автомата существует
эквивалентное состояние ak второго автомата и
наоборот
Два состояния эквивалентны, если для всевозможных
входных слов реакции автоматов в этих состояниях
совпадают
Класс
SA=SB
MA≠MB
a
A
=
m
a
B
s
...
a
B
k
эквивалентных
состояний
27. Структурные цифровые автоматы (СЦА)
СЦА описывает реальное устройство как сложный объект,
состоящий из совокупности определенным образом
связанных более простых узлов - элементарных автоматов
Задание СЦА
1) описание поведения и свойств элементарных автоматов;
2) задание схемы соединения автоматов между собой.
Особенности задания СЦА
наличие нескольких входных/выходных каналов;
работа со структурными входными/выходными
дискретными сигналами;
определение состояния автомата, как набора состояний
составляющих СЦА элементарных автоматов.
28. Структурные цифровые автоматы (СЦА)
x.
1 .
.
СЦА
.
.
.
yN
.
.
.
xL
y1
r1
rD
y - выходные сигналы
первого рода
(автомат Мили)
r - выходные сигналы
второго рода
(автомат Мура)
Закон функционирования СЦА
{x l }
СЦА
{y n }
{rd }
a(t 1) ({ x l (t ), a(t )})
y n (t ) 1 ({ x l (t )}, a(t ))
rd (t ) 2 (a(t ))
29. Установление соответствия абстрактных и структурных сигналов
• Установление соответствия абстрактных и структурныхсигналов выполняется кодированием:
– выбрать количество структурных каналов;
– закодировать абстрактные сигналы в структурные.
• Определение количества каналов:
• L ≥ log2F = ] log2F [ F - число абстрактных входных сигналов
• N ≥ log2G = ] log2G [ G - число абстрактных выходных
сигналов первого рода
• D ≥ log2H = ] log2H [ H - число абстрактных выходных
сигналов второго рода
• Кодирование сигналов:
• произвольное;
• оптимизирующее:
• уменьшающее затраты оборудования;
• обеспечивающее устойчивость функционирования.
30. Пример установления соответствия между сигналами
• Определение количества каналов (разрядностивходных/выходных сигналов)
L = ] log23 [ = 2
N = ] log25 [ = 3
D = ] log24 [ = 2
Z = {z1, z2, z3}
W = {w1, w2, w3, w4, w5}
U = {u1, u2, u3, u4}
• Произвольное кодирование
Z
z1
z2
z3
x1 x2
0 0
0 1
1 0
W
w1
w2
w3
w4
w5
y1
0
0
0
0
1
y2
0
0
1
1
0
y3
0
1
0
1
0
U
u1
r1 r 2
0 0
u2
u3
u4
0
1
1
1
0
1
31. Методы структурного синтеза ЦА
Основой всех методов является каноническаяструктура ЦА
1.
2.
3.
4.
Канонический метод структурного синтеза.
Графический метод структурного синтеза.
Интерпретационный метод структурного
синтеза.
Группа методов структурного синтеза,
ориентированных на использование больших
интегральных схем (БИС).
32. Канонический метод структурного синтеза
• Основой метода является сведение задачи синтезаструктурной схемы к задаче синтеза комбинационной
схемы (КС)
• Этапы
– получение канонической структуры ЦА;
– синтез КС.
• Обобщенная каноническая структура
{xl}
КС1
{yn}
{ r }
П
{ r }
КС2
{rd}
33. Типовая каноническая структура ЦА
y n f ny ({ ij }, {x l })rk fr ,k ({ ij }, {x l })
x1. . . xl
rd fdD ({ ij })
...
КС1
...
y1. . . yn
11
12
1
П1
r
2
Пr
r
КС2
...
...
...
...
r
1
r1
rd
34. Синтез автомата на триггерах
• Триггер - физический прибор, имеющий 2 устойчивыхсостояния, в каждом из которых он может находиться в течение
заданного промежутка времени.
• С точки зрения ТА, триггер - это автомат Мура с полной
системой переходов и выходов.
Асинхронный RS-триггер
R 0
01
1
Синхронный RS-триггер
S
&
&
&
C
1
S 01
S
R
10
T
R
&
S – установка
R – сброс
С – синхроимпульс
35. Виды стандартных триггеров
• По логике работы и количеству входовразличают следующие стандартные триггеры
D-триггер - триггер-задержка;
T-триггер - со счетным входом;
RS-триггер - с раздельными входами
установки и сброса;
JK-триггер - универсальный с раздельными
входами установки и сброса.
36. D-триггер
D
D-триггер - повторяет входной сигнал:
D T
через время срабатывания триггер
-
устанавливается в состояние,
CИ
С
соответствующее входному сигналу
У D-триггера закодированная • Граф переходов D-триггера
таблица переходов автомата
1
совпадает с закодированной
1
0
1
0
0
таблицей функций
возбуждения
• Функция входов D-триггера
Таблица переходов D-триггера
τ исх
D
τ пер
τ
δ:
0
0
0
0 1
D
0
1
1
0
0 0
1
0
0
1
1 1
1
1
1
37. T-триггер
T
T-триггер - меняет свое состояние на
противоположное при поступлении
“1”-го сигнала
У T-триггера оба
состояния неустойчивы:
синхронизация
обязательна
0
T
CИ
T
-
С
Граф переходов T-триггера
1
0
1
1
Таблица переходов
T-триггера
δ:
τ
Функция входов T-триггера
τ исх
T
τ пер
0
1
0
0
0
0
0
1
0
1
1
1
1
0
1
1
0
1
0
1
T
0
38. RS-триггер
SS
CИ
T
Таблица переходов RS-триггера
δ:
-
C
R
R
Функция входов RS-триггера
τ
0
1
00
0
1
01
1
1
10
0
0
11
─
─
RS
τ исх
RS
τ пер
τ исх
RS
τ пер
0
00 v 10
0
0
─0
0
0
01
1
0
01
1
1
10
0
1
10
0
1
00 v 01
1
1
0─
1
39. JK-триггер
JТаблица переходов JK-триггера
δ:
-
C
K
T
J
CИ
K
Функция входов JK-триггера
τ
0
1
00
0
1
01
0
0
10
1
1
11
1
0
JK
τисх
JK
τпер
τисх
JK
τпер
0
00 v 01
0
0
0─
0
0
10 v 11
1
0
1─
1
1
01 v 11
0
1
─1
0
1
00 v 10
1
1
─0
1
40. Минимизация комбинационной части автомата
• Цель минимизации– уменьшение затрат оборудования при
последующей реализации канонических
уравнений.
• Основные направления минимизации
– классическая (в классе нормальных форм)
по СДНФ получаем МДНФ;
– доопределение функций с целью их последующей
минимизации;
– получение абсолютно минимальных форм.
41. Классическая минимизация
СДНФ(СКНФ) => МДНФ(МКНФ)Нормальная форма
ДНФ => МДНФ
ДНФ => СДНФ => МДНФ
y x1 x 3 x1 x 2 x1 x 3 ( x 2 x 2 ) x1 x 2 ( x 3 x 3 )
x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3
Минимизации подлежат системы булевых
функций
Чаще всего для минимизации булевых функций
используются карты Карно или диаграммы Вейча
42. Получение абсолютных минимальных форм (АМФ)
• АМФ - форма представления булевой функции,содержащая минимально возможное число информации в
рамках заданной функционально полной системы
логических функций
f x1 x 2 x 3 x 4 x1 x 2 x 3 x 4 x1 x 2 x 3 x 4
x1 x 2 x 3 x1 x 2 x 4
МДНФ
f x1 x 2 ( x 3 x 4 )
АМФ
x1
x2
x3
x4
Цена схемы по
Квайну С=8
&
&
f
1
Цена схемы по
Квайну С=6
43. Упрощенная методика получения АМФ
• Факторизация1 2 3 x1 x 2 x 3 1 2 3 x1 x 2 x 3 1 x 3
1 3 x1 x 3 ( 2 x 2 2 x 2 ) 1 x 3
1 ( 3 x1 x 3 ( 2 x 2 2 x 2 ) x 3 )
2
&
x2
2
x2
3
x1
x3
1
С = 17
2τ - задержка
С = 15
5τ - задержка
&
&
1
&
&
x3
1
44. Упрощенная методика получения АМФ
Декомпозиция
5 1 2 x1
2 1 2
C 5
1
2
&
2
&
5
x1
z 1 2
5 z x1
2 z
C 4
1
2
x1
1
&
&
2
5
2
45. Кодирование сигналов и состояний Сложность комбинационной части автомата
Сложность КЧ автомата зависит от выбранного
варианта кодирования сигналов и состояний
Кодирование выходных сигналов, уменьшающее
сложность КС
1) для каждого выходного сигнала подсчитывается
число появлений в таблице выходов
2) выходные сигналы упорядочиваются по убыванию
частоты их появления в таблице выходов
3) поставить в соответствие выходным сигналам коды:
сначала “0” код, затем коды, содержащие одну “1”,
затем коды, содержащие две “1” и т.д.
46.
Произвольное кодированиеλ:
u1
u2
u1
a1
a2
a3
w3
w4
w2
w3
w1
w2
w3
a
z
z1
z2
z3
λ:
w1
w2
w3
w4
u1
u2
00
01
10
11
0
1
λ:
τ1 τ 2
x1x2
00
01
10
0
1
0
00
01
10
10
11
01
y1y2
4 3
10
00
01
10
0
1
0
00
01
10
00
11
01
y1y2
2 3
00
10
01
00
Оптимизирующее кодирование - самый популярный
сигнал использует коды с меньшим числом единиц
a
z
z1
z2
z3
u1
u2
u1
a1
a2
a3
w3
w4
w2
w3
w1
w2
w3
1
2
3
1
2
1
w1
w2
w3
w4
u1
u2
10
01
00
11
0
1
λ:
τ1 τ2
x1x2
00
01
10
47. Задача: построить СЦА на основе заданной таблицы переходов и выходов
АА задан таблицей переходов и выходовδ:
a
z
a1
a2
a3
λ:
a
z
u1
u2
u1
a1
a2
a3
z1
a2
-
a1
z2
a3
a1
-
z1
w3
-
w2
z3
a2
a3
a3
z2
w4
w3
-
z3
w2
w1
w3
Выбранный элемент памяти — T-триггер
L = ] log23 [ = 2 - количество входных сигналов
N =] log24 [ = 2 - количество выходных сигналов I рода
D =] log22 [ = 1 - количество выходных сигналов II рода
R =] log23 [ = 2 - число элементов памяти
48.
КодированиеКодирование выходных
сигналов I рода по частоте
Произвольное кодирование
входных сигналов
W
y 1y 2
Z
x1x2
1
w1
10
z1
00
2
w2
01
z2
01
3
w3
00
z3
10
1
w4
11
Кодирование выходных
сигналов II рода по частоте
Произвольное кодирование
состояний автомата
A
τ1τ2
U
r
a1
00
2
u1
0
a2
01
1
u2
1
a3
10
49.
Закодированная таблица выходовСистема канонических
τ1τ2 0 1 0
λ:
уравнений для выходных
00 01 10
x1x2
сигналов
00
00
01
01
10
11
01
00
10
y1 x1x2 1 2 x1x2 1 2
y 2 x1x2 1 2 x1x2 1 2 x1x2 1 2
r1 1 2
00
y1y2
2 3
y 1:
Карта Карно для выходных сигналов
τ1τ2
x1x2
00
01
11
10
00 01 11 10
0
1
0
-
0
-
-
-
-
-
0
1
-
0
y1 x2 2 x1 2 1 2
α1
α2
τ1τ2
r: τ1
x1x2 00 01 11 10
τ2
0 1
00 0 - - 1
0 0 1
01 1 0 - 1 0 11 - - - r1 2
10 1 0 - 0
y 2 x 2 2 x1 1 x1 1 2 1 3 4
y2:
α1
α3
α4
50.
Получение функций возбуждения, используя таблицупереходов и функцию входов
Закодированная таблица переходов
τ1τ2
δ:
x1 x2
00
01
10
Функция входов T-триггера
τисх
T
τпер
0
0
0
00
01
-
00
0
1
1
01
10
00
-
1
1
0
10
01
10
10
1
0
1
Закодированная таблица функций возбуждения
φ:
τ1τ2
00
01
10
T1 x1x2 1 2 x1x2 1 2 x1x2 1 2
00
01
-
10
T2 x1 x 2 1 2 x1 x 2 1 2
01
10
01
-
10
01
11
00
x1x2
T1T2
3 4
x1 x 2 1 2 x 1 x 2 1 2
51. Карта Карно для функций возбуждения
T1:τ1τ2
x1x2 00 01
00 0
-
T2:
11
10
-
1
11
10
-
0
01
1
0
-
-
01
0
1
-
-
11
-
-
-
-
11
-
-
-
-
10
0
1
-
0
10
1
1
-
0
T1 x 2 2 x1 2 x1 1 1 2 3
α1
τ1τ2
x1x2 00 01
00 1
-
α2
α3
T2 x2 1 2 5 2
α5
52. Каноническая структура ЦА
x1x2
1 2 3 4
КС1
T1
y1
T
T
1
1
1
2
2
y2
C
T2
СИ
1
T
T
C
2
2
3
3
4
4
КС2
r1
53. Функциональная схема УУ
x15
1
7
6
4
5
3
6
&
1
1
7 5
2
8 4
8
1
1
2
3
& 2
2 6
&
3
1
x2
1
3
4
1
5
5
2
СИ 9
3
6 6
y1 x2 2 x1 2 1 2
1
4 2
1
3
5
4
&
10
10
1
&
T1
1
T2
y1
y2
11
T
TT
1
2
9
11
1
C
1
T
TT
2
3
4
9
C
2
r1
y 2 x 2 2 x1 1 x1 1 2 1 3 4
T1 x 2 2 x1 2 x1 1 1 2 3
T2 x2 1 2 5 2
54. Работа автомата и обеспечение устойчивости функционирования
55. Двоичные сигналы и уровни их представления
Сигнал - значение некоторой физической величины,характеризующее состояние какого-либо процесса в
заданный момент времени.
Уровни представления сигнала:
– физический;
– структурный;
U
– абстрактный.
Реальный физический
сигнал
t
56.
При работе со структурными сигналами используется их квантование как поуровню, так и по времени
Вводится 2 уровня a и b:
U
– U ≥ a - S=1
|| S=0
– U ≤ b - S=0
|| S=1
a
Время переключения из 0 в 1:
– θ1 = t2 - t1
Время переключения из 1 в 0:
b
– θ0 = t4 - t3
t1 t2
t3 t4
t
Среднее время переключения:
0
– θср =(θ1 + θ2 )/2
U
U
1
1
0
0
t1 t2
t3 t4
t
t
Идеальный двоичный сигнал
57.
В абстрактном сигнале к квантованию по уровнюдобавляется квантование по времени
U
1
0
1
t
58. Распространение сигнала в схеме
Распространение сигнала в схеме– сигнал в реальной схеме всегда распространяется с
задержкой, которая и определяет быстродействие схемы
x
Входной
Выходной
t
t
y
1
0
τ
0
θ
0
t
t
τ1
θ1
τ0 θ0
59. Задержка распространения на элементах памяти
СИt
t
t
t
τ
1
τ
0
60. Синхронизация
• Под синхронизацией ЦА понимается управлениемоментами смены состояния устройства с помощью
специальных внешних сигналов, называемых
синхроимпульсами или тактовыми импульсами
• Цель введения синхронизации
—обеспечение правильного взаимодействия цифровых
автоматов между собой по входу-выходу
—обеспечение устойчивости функционирования ЦА
1
{x }
2
S1
{x }
1
{y }
3
S2
{x }
2
{y }
S3
61. Способы введения синхронизации в схему ЦА
Возможны 4 способа введения синхронизацииС
x
КЧ
y r
С1
С
П
С
62.
I. Синхронизация функций возбуждения1
&
1
T
Недостатки
C
1 – усложнение схемы автомата: вводится
...
дополнительная линейка конъюнкторов
...
...
– используется только для тех элементов
k
&
Ck памяти, которые не меняют своих
СИ
состояний при “0” входных сигналах
II. Синхронизация элементов памяти
...
T
C
...
k
СИ
T
C
T
1 Достоинство
– отсутствует необходимость
1
усложнять КЧ автомата
...
Недостаток
k – необходимо использовать
только синхронизированные
k
триггеры (несущественно)
63.
...III. Синхронизация состояний
Недостатки
1
&
С
1
– усложнение КЧ автомата
...
– снижение быстродействия
k
С
&
– существование сигналов
k
обратной связи только при
СИ
наличии синхроимпульсов
...
...
IV. Синхронизация КЧ автомата
Достоинство
{x}, { } &
– позволяет реализовать
1
многофазную
y i , j , rd
синхронизацию
...
Недостаток
&
{x}, { }
– существенное
СИ
усложнение КЧ автомата
...
64. Факторы неустойчивой работы ЦА
1.2.
3.
Неодновременное поступление входных сигналов.
Неустойчивость состояний.
«Гонки» («состязания») в автомате.
Источники неустойчивости работы ЦА
1.
2.
3.
Взаимодействия с другими автоматами по входувыходу.
Особенности работы самого ЦА (синхронные и
асинхронные автоматы).
Различные задержки распространения сигналов в
схеме.
65. Синхронные и асинхронные ЦА
Условия устойчивостисостояния
zk
zf
as
zk
Условно-устойчивые
состояния
При некоторых условиях
условно-устойчивые
состояния могут вести
себя, как неустойчивые
zf
ak
as
zf
as
zf
zf
zf
am
66. Временная диаграмма работы автомата с неустойчивым состоянием
zfzf
ak
as
СИ
t
За один такт
автомат
t
переходит из
состояния ak в
состояние am,
проскакивая
t
состояние as
{x}
{ }
{ }
ak
as
am
t
am
67. Работа асинхронного автомата без введения синхронизации
• Рассматриваем– С-автомат
– с канонической структурой
– обеспечена устойчивость функционирования
автомата
– смена значений входных сигналов осуществляется в
моменты автоматного времени t =1, 2, 3…
– подача входных сигналов осуществляется в начале
каждого следующего такта
Обобщенная каноническая структура
68. Временная диаграмма
Тt2
А
{x }
l
ТА - такт автомата
τφ - задержка
формирования функции
возбуждения
t
{y n }
переключения памяти
относительно момента
формирования φ
t
{ r }
t
τзап - запас времени
t
{ }
t
{
П
Тмин
} { r } { зап }
τr - задержка от
момента формирования
нового сигнала
Тмин - минимально
необходимый период
времени
{ r }
{r }
d
τп - задержка
69. Согласование автоматов по входу-выходу
x1ЦА
x2
{y}
{r}
01
01
am
am
11
x1 : 0 → 1
x2 : 1 → 0
10
10
as
as
10
ak
10
aj
Предположим:
x1 – изменится быстрее;
x2 – запаздывает.
При неодновременном
поставлении входных
сигналов нарушается
закон функционирования
ЦА: существует риск
сбоя и возможность с
большей вероятностью
перейти в другое
состояние
70. Диаграмма перехода в другое состояние при неодновременной подаче входных сигналов
0111
01
10
am
11
x1
10
10
ak
t
x2
t
{y },{ }
t
{ r }
am
ak
aj
t
as
10
aj
71. Причины нарушения
Наличие разброса моментов переключения входныхсигналов
Влияние функций переходов автомата
Различные задержки формирования сигналов в схеме
автомата
Правильная работа ЦА при неодновременном
поступлении входных сигналов обеспечивается
введением синхронизации в схему автомата
72. Методы обеспечения устойчивости состояний
• Ограничить длительность синхроимпульса –импульсная синхронизация
• Многофазная синхронизация, то есть
синхронизация автомата несколькими сериями
синхроимпульсов, сдвинутых друг относительно
друга
• Использование двухступенчатых элементов памяти
• Использование элементов памяти (триггеров) с
динамическим управлением по входу
синхронизации
73. I. Импульсная синхронизация
СИn max СИ n min min
t
{ }
t
{ }
П
t
r
Недостатки импульсной синхронизации
1. Высокие требования к параметрам генератора
синхроимпульсов
2. Сложность обеспечения требуемой длительности
74. II. Многофазная синхронизация
• Синхроимпульсы вводятся в. &
{ }, { } ..
схему непосредственно на
1
конъюнкторы,
...
обеспечивающие
.
&
.
.
{
},
{
}
формирование сигналов
СИ1
r возбуждения памяти.
{ }, { }
СИ2
&
.
.
.
...
{ }, { } .. &
СИ1
.
СИ2
СИ1
zf
СИ2
am
zf
as
ТА
ТА
75.
II. Многофазная синхронизация• Возможность использования многоступенчатой синхронизации
зависит от графа перехода автомата. В нем не должно быть
замкнутых контуров с нечетным количеством вершин.
Попадание и выход из состояния
под действием одной и той же
синхронизации
Искусственная развязка контуров
с нечетным числом вершин путем
введения новых вершин
СИ1/y1
СИ1/y1
am
am
as
as
СИ2/y2
СИ2/-
СИ1/y3
ak
СИ2/y2
ag
Недостаток - увеличивается число состояний
дополнительные затраты оборудования
при работе появляются пустые такты
ak
СИ1/y3
76. III. Использование двухступенчатых элементов памяти
● Достоинство: обеспечивает стабильную работу автомата● Недостаток : затраты оборудования
&
{ }
&
S
R
T
1
&
&
S
R
T
2
1
СИ
S
C
R
TT
{ }
{ }
{ }
77.
III. Использование двухступенчатых элементов памятиПринцип действия основан на разделении во времени
процесса смены состояний автомата и формирования новых
значений функций возбуждения
Когда отсутствует СИ, вторая ступень закрыта и на выходе не
изменяются сигналы, при этом через инвертор открывается
1-ая ступень и под действием не изменившихся функций
возбуждения в 1-ой ступени формируется новое состояние (на
выходе - старое)
По приходу СИ первая ступень закрывается, но открывается
вторая и новое состояние переписывается из первой ступени
во вторую. На выходе появляются новые сигналы состояний,
по цепи обратной связи формируют новые функции
возбуждения, но первая ступень все ещё закрыта и повторного
переключения памяти не происходит
78. Временная диаграмма введения синхронизации элементов памяти
Тси=ТАmax
max
Tси max( max
;
)
x / си
П / си
/ x ,П
СИ
t
{x}
t
{ }
t
{y },{ }
t
{r}
r
y ,
t
Тси – длительность
такта ЦА
- задержка
r
выходных
сигналов
II рода
y , - задержка
выходных сигналов
I рода
79. IV. Использование триггеров с динамическим управлением по входу синхронизации
DC
TT
• D - меняет своё состояние
только по определенному
фронту СИ
C
– по переднему или
– по заднему
Задний фронт
D
TT
C
t
D
t
t
Предельный случай
импульсной
синхронизации
– анализируется или
передний, или
задний фронт СИ
80. Гонки в автомате
• Гонки могут возникать только на тех переходах, которыесвязаны с одновременным переключением двух и более
элементов памяти. Если переходы только из состояния в
состояние, то никаких гонок нет
{ x}
КС1
{ }
П
{ }
K155 n <= 500 нс
{50 <= n<= 500}
Причины возникновения гонок
– разное время срабатывания элементов памяти
– разное время формирования функций возбуждения
81.
Гонки в автомате• В частичных автоматах, где используются не все коды
состояний , гонки могут приводить к появлению
промежуточных ходов, соответствующих несуществующим
состояниям. Дальнейшее поведение автомата определяется
поведением функции возбуждения
1) - некритические
1001
1010
f
2) - критические
z
am
aj
zf
1000
zf
1
ak
1011
as
zf
2
ai
82. Способы устранения гонок
Аппаратныеимпульсная синхронизация
использование двухступенчатых элементов памяти
использование триггеров с динамическим
управлением по входу синхронизации
Структурные – использование специальных методов
кодирования состояния
соседнее кодирование
кодирование с учетом условий развязки пар
переходов
83. Соседнее кодирование
• Условия возможности соседнего кодирования– отсутствие в графе автомата контуров с нечетным числом вершин
– два соседних состояния второго порядка не должны иметь более
двух состояний, лежащих между ними
• Замечание
– графы, не допускающие соседнее кодирование, могут быть
преобразованы к виду с четным числом вершин в контурах,
путем введения новых вершин
am
zk / wd
am
as
zk / wd
zs / wh
zf / zf / wg
ak
zs / wh
as
an
zf / wg
ak
84. Пример соседнего кодирования
000• На всех переходах должен
меняться только 1 разряд
a1
100
001 a
2
• Применение кодирования,
близкого к соседнему,
проблему гонок не решает
a3
101
a4
111
a5
011
a6
010
a7
τ2τ3
τ1
00
01
11 00
0 a1
a2
a6
a7
1 a3
a4
a5
-
85. Кодирование с учетом условий развязки пар переходов
Теоремагонки в автомате отсутствуют, когда для любых двух пар
переходов, происходящих под действием одного и того же
сигнала, соответствующие пары кодов состояний развязываются
пары кодов состояний называют развязанными, если какой-либо
разряд кода принимает одно значение в первой паре и
противоположное в другой
zf
(a m , a s )
zf
(ak , an )
0010 1110
0111 1101
Методика
– выявить все пары переходов, происходящих под действием
одних входных сигналов
– закодировать состояния взаимно развязанными парами кодов
86. Операционные устройства
• ОУ предназначено для выполнения набора операций(F) над множеством входных слов (D) с целью
вычисления слов результатов (R)
F
D
ОУ
R
Работа ОУ осуществляется на основе принципа
программного управления по хранимой в памяти
программе
87. Концепция операционного и управляющего автоматов
• Y={ym} – управляющиесигналы для задания
Данные
микроопераций
g
• X={xℓ} – набор
ОУ
осведомительных
сигналов, формируемых
УА
по значению операндов
• D - множество входных
X
шин, по которым
Y
поступают словаD
R
операнды
ОА
Результаты • R - множество выходных
Данные
шин, на которые
выставляются словарезультаты
88. Концепция операционного и управляющего автоматов
DY
R
ОА
X
g
X
УА
Y
• ОА предназначен для
непосредственного выполнения
действий над словами информации
• ОА осуществляет
– хранение слов
– выполнение над ними
микроопераций
– вычисление логических условий
• УА предназначен для управления
порядком следования
микроопераций во времени
• Основная функция УА
– реализация управляющего
алгоритма
89. Операционный элемент (ОЭ)
• Операционный элемент - устройство, предназначенноедля выполнения совокупности микроопераций над одним
словом информации
D
d1
.
ОЭ
.
.
di
А
...
...
r1
R
yn
yk
...
rq
ОЭ
xj
xm
X
ОЭ
yf
Y
ОЭ
90. Структура ОЭ
d1...
di
yt
...
yd
Рг
1
n
R
...
ОЭ
xm
xp
91. Типовые микрооперации, выполняемые ОЭ с памятью
Прием слов1
B
32
E
1
25
D
25
1
C
32
32
32
y1: C := D
y2: C := B
y3: C{25:32} := E{25:32}
32
y1
y2
y3
16
y1
y2
y3
Установки
1
A
y1: A := 0
y2: A := 2910
y3: A{1:8} := FF16
92.
Сдвиги1
A
8
y1
y2
y3
y4
y1:
y2:
y3:
y4:
A := L1(A).0
A := 10.R2(A)
A := L3(A).A{1:3}
A{1:4} := 0.R1(A{1:4})
Aисх
1111 1111
0000 0001
0001 1100
1111 0000
Aконеч
L1(A).0
10.R2(A)
L3(A).A{1:3}
0.R1(A{1:4})
1111 1110
1000 0000
1110 0000
0111 0000
93.
Инверсия - изменение значения разряда слова напротивоположное
A
1
16
y1
y2
8
y1
y2
y3
y1: A := ¬A
y2: A{5:15} := ¬A{5:15}
Счет
1
Сч
x1
y1: Сч := 0
y2: Сч := Сч + 1
y3: Сч := Сч – 1
x1: Сч = 0
94. Формирование логических условий
А1
1
32
30
31 32
x1
x7
КС1
x2
DC
x3 x4 x5 x6
x1:
x2:
x3:
x4:
x5:
x6:
x7:
A{1}
A=0
A{30:31}=00
A{30:31}=01
A{30:31}=10
A{30:31}=11
A{32}
95. Типовые ОЭ комбинационного типа (без памяти)
Схемы сравнения1
A
16
B
1
1
Сх. Ср.
x1
x2
16
32
x1: A > B{1:16}
x2: A = B{1:16}
96.
Сумматоры1
Комбинационный сумматор
A
16
1
16
1
1
C
2
B
1
1
16
y1
y2
y3
16
17
17
17
y1:
y2:
y3:
∑ = A +B
∑ = C{2:17} + B
∑ = A + 1.¬B{2:16} + 1
97.
Накапливающий сумматорA
1
16
1
16
1
1
1
1
Cм
2
B
16
16
17
y1
y2
17
17
y1: См : = A + B
y2: См : = А + См{2:17}
98.
Арифметико-логическое устройство (АЛУ)Y
X
1
16
АЛУ
y1
16
16
...
1
1
yn
Z
Z X Y;
Z X Y;
Z X Y;
Z X 1. Y{2 : 16} 1;
Z X Y;
Z 1. X{2 : 16} Y.
99. Использование закодированных микропрограмм
1. Используют при минимизации микропрограммy10
...
y10
...
y10
y10
2. Используют для объединения
отдельных микропрограмм
3. При синтезе микропрограммных
автоматов
x1
0
1
yk, yn
x1
1
0
100. Совместимость микроопераций
• Совместимость микроопераций - свойство микроопераций,гарантирующее их параллельное совместное выполнение
Алгоритмическая
Совместимые
B
D
A := B
C := D
A
C
Несовместимые
B
D
C := B
B := B + 1
A
Структурная
Совместимые - имеют
индивидуальные шины
A := B
C := D
Несовместимые - система
связей с общей шиной
C
A := B
C := D
101. Объединение и минимизация микропрограмм
Цель
– получение минимальной с точки зрения затрат
оборудования микропрограммы
Для того, чтобы УА был минимальным необходимо
– кодирование операций
– получение объединенной микропрограммы
– минимизация микропрограммы
1. Кодирование
K log 2 G
─0
01
11
f1
f2
f3
P2
+
*
/
P1
0
1
0
f1
─
1
f2
f3
102.
2. Получение объединенной микропрограммыP1P2
00
01
f
+
-
10
11
*
/
начало
B
0
1
0
0
"+"
P2
P1
1
1
0
"-"
"*"
конец
P2
1
"/"
103.
3. Минимизация объединенной микропрограммы возможна,если для реализации однотипных действий используются
одинаковые ОЭ и микрооперации
P1
A B A ( B)
1
0
B : B 1
"+"
Существуют специальные методы минимизации
методы минимизации числа условных вершин
методы минимизации числа операторных вершин
104. Интерпретация микропрограммы автоматом Мили
Отметка закодированного графа микропрограммы (ГМП) получение множества состояний автомата
Порядок отметки
1. a1 - отметка входа в вершину, следующую за начальной, и
входа конечной вершины
2. Входы всех вершин, следующих за операторными
отмечаются: a2, a3,…
3. Вход вершины может быть отмечен только одним
символом
4. Входы различных вершин, за исключением конечной,
отмечаются различными символами
105. Содержательный граф микропрограммы
началоA
0
1
B
B{32}
1
A:=d1
B:=d2
0
1
A{1}=B{1}
C{1}:=0
0
C:=C+A{2:32}
C:=R1(C)
B:=C{32}.R1(B)
Сч:=Сч-1
C{1}:=1
Сч=0
1
Сч:=31
C{2:32}:=0
C:=R1(C)
B:=C{32}.R1(B)
A
конец
0
106. Закодированный ГМП. Пример отметки ГМП
началоa1
A
0
B
1
a4
B{32}
1
A:=d1
B:=d2
a2 1
0
a5
A{1}=B{1}
C{1}:=0
0
C:=C+A{2:32}
C{1}:=1
C:=R1(C)
B:=C{32}.R1(B)
Сч:=Сч-1
a6
Сч=0
a3
1
Сч:=31
C{2:32}:=0
A
C:=R1(C)
B:=C{32}.R1(B)
a1
конец
0
107.
y 1 : A : d1начало
a1
B
0
a4
1
y 3 : A{1} : 0
x2
y 4 : A{1} : 1
0
y7
1
a2
x1
0
a6
x3
1
a3
y8, y9
y 5, y 6
A
y 6 : С{2 : 32} : 0
y8, y9, y10
y4
y3
y 5 : Cч : 31
a5
y1, y2
1
y 2 : B : d 2
A
a1
конец
y 7 : С : С A{2 : 32}
0
y 8 : С : R1(C)
y 9 : B : C{32}.R1(B )
y 10 : Сч : Сч - 1
x1 : A{1} B{1}
x 2 : B{32}
x 3 : Cч 0
108. Пути перехода в ГМП
Путь перехода в общем виде1) a i ~
x ...~
x y k ...y z a j
a i X(a i , a j )Y(a i , a j )a j
ai
Путь
перехода, не проходящий
через условные вершины
2) a i y k ...y z a j a i Y(a i , a j )a j
x , x 1,
~
x
x , x 0.
x
0
1
yk...yz
...
x
1
yk...yz
aj
ai
0
aj
109. Пути перехода в ГМП. Исключения
Путьперехода в отметку а1, не
содержащий операторных вершин
3) ai ~
x ...~
x a1 ai X(ai , a1 )a1
перехода из отметки,
предшествующей последовательности
условных вершин в ту же отметку
4) ai ~x ...~x ai ai X(ai , ai )ai
x
x
0
ai 1
...
ai
Путь
0
xg
1
...
x
1
0
xf
1
a1
1
...
конец
0
0
x
1
0
110. Работа с оперативной памятью
АА
РАОП
Чт
Зп
ОП
xОП
РАРОН
РДОП
РДРОН
Чтение
Запись
РАОП:=А
РАОП:=А
0
Запись
РАРОН:=А
РАОП:=А
Чт
РДОП:=Д
С:=РДОП
Зп
Зп
1
С:=РДОП
Чтение
РДОП:=Д
Чт
xОП
Чт
Зп
РОН
xОП
1
0
111. Интерпретация микропрограммы автоматом Мили
B / y 1y 2B /
x1 / y 4
a2
x1 / y 3
a1
x3 / y 8y 9
x 2 / y 8 y 9 y 10
a6
x 3 x 2 / y 8 y 9 y 10
1 / y 8 y 9 y 10
x3x2 / y 7
a5
a3
1 / y 5y 6
a4
x2 / y 7
112. Корректность интерпретации микропрограммы автоматом Мили
• Корректная интерпретация микропрограммы автоматом Мили возможнапри выполнении условия независимости функций перехода от результатов
выполнения микроопераций yij, соответствующих этому переходу, для
всех переходов автомата
X(a i a j ) f {Y(a i a j )}
• Если на некотором переходе есть функциональная зависимость
x f {Y(a i a j )}
выполнение микрокоманды функционального оператора Y(aiaj) может
привести к изменению логического условия xρ
• Проверить корректность интерпретации микропрограммы автоматом
Мили можно путем анализа распределения сдвигов, определяющего для
каждого функционального оператора Y(aiaj) подмножество
осведомительных сигналов, которые могут меняться при его выполнении
Yi Bi {xk ,..., xn }
113. Распределение сдвигов
y 1 : A : d1y 2 : B : d 2
y 3 : A{1} : 0
y 4 : A{1} : 1
a1
0
1
a2
1
y 6 : С{2 : 32} : 0
a3
x1
A
x2
0
y7
y1, y2
y3
y 8 : С : R1(C)
B
a4
1
y 5 : Cч : 31
y 7 : С : С A{2 : 32}
начало
a5
a6
0
y4
y8, y9, y10
x3
0
1
y5, y6
a1
A
y8 , y 9
конец
Y1 {y 1 , y 2 }
B1 { x1 , x 2 }
Y2 {y 3 }
B 2 { x1 }
Y3 {y 4 }
B 3 { x1 }
Y4 {y 5 , y 6 }
B 4 {x 3 }
x 2 : B{32}
Y5 {y 7 }
B5
x 3 : Cч 0
Y6 {y 8 , y 9 , y 10 }
y 9 : B : C{32}.R1(B )
y 10 : Сч : Сч - 1
x1 : A{1} B{1}
B 6 { x1 , x 2 , x 3 }
114. Интерпретация микропрограммы автоматом Мура
a1начало
A
0
1
B
1
a2
a6
A:=d1
B:=d2
1
0
C{1}:=0
C{1}:=1
0
C:=C+A{2:32}
a
A{1}=B{1}
a3
B{32}
C:=R1(C)
B:=C{32}.R1(B)
7
Сч:=Сч-1
a4
Сч=0
1
a5
Сч:=31
C{2:32}:=0
a8
C:=R1(C)
B:=C{32}.R1(B)
A
a1
конец
0
115.
Пути перехода в ГМП. ИсключенияПуть перехода в общем виде
1) a i ~x ...~x a j a i X(a i , a j )a j
перехода, не проходящий
через условные вершины
x , x 1,
~
x
x , x 0.
ai
x
0
1
...
x
1
aj
Путь
yk...yz
0
2) a i a j
ai
yn...yt
aj
yk...yz
116.
Пути перехода в ГМП. ИсключенияПуть
перехода из отметки, предшествующей последовательности
условных вершин в ту же отметку
3) ai ~x ...~x ai ai X(ai , ai )ai
ai
1
...
x
0
xg
0
1
xf
1
...
0
x
1
0
117. Прямая таблица переходов
началоa1
B
A
0
1
x2
0
Состояние
перехода
ai
aj
a1
a1
a2
y7
1
a2
x1
y3
y8, y9, y10
0
a6
y4
x3
y8, y9
A
a1
конец
Управляющие
сигналы
X(ai , aj )
Y(ai , aj )
B
B
y1 y2
y3
a3
a3
a4
1
y5 y6
a4
a5
y7
y8 y9 y10
y8 y9 y10
a3
a4
a5
x2
x2
x2
a5
a6
1
a6
a1
a6
1
a3
y 5, y 6
0
Осведомительные
сигналы
x1
x1
a2
a5
y1, y2
1
a4
Исходное
состояние
a5
a6
y4
-
x3
y8 y9
x2 x3
y7
x 2 x 3 y8 y9 y10
118.
Обратная таблица переходовначало
a1
B
A
0
y1, y2
1
x1
y3
1
x2
0
1
a2
a4
ai
aj
a1
a1
Осведомительные
сигналы
Управляющие
сигналы
X(ai , aj )
Y(ai , aj )
B
-
x3
y8 y9
a6
a5
a1
a2
B
y1 y2
a2
a3
x1
x1
y3
1
y5 y6
y8, y9, y10
0
a6
a2
x3
1
a3
y8, y9
A
Состояние
перехода
y7
y4
y 5, y 6
Исходное
состояние
a1
конец
0
a3
a4
a4
a5
y4
x2
x2 x3
x2
y8 y9 y10
a5
1
y8 y9 y10
a6
x2 x3
y8 y9 y10
a6
a4
a6
y7
y7
119. Структурная организация ЦА с жесткой логикой
Структура ЦА с жесткой логикойКаноническая структура автомата Мили на практике
модифицируется введением в схему дешифратора (ДШ)
состояний
{ x}
ДШ - это комбинационная схема, преобразующая
позиционный код в унитарный
КС1
{y }
{ }
П
{ }
ДШ
{a}
{r }
КС2
120. Синтез УА с жесткой логикой
Исходными данными являются закодированный графмикропрограммы со списком микроопераций и списком
логических условий.
Основные методы
синтеза
Канонический
Интерпретационный
121. Интерпретационный метод синтеза
Метод синтеза, основанный на непосредственной
интерпретации ГМП элементами КС
1.
Синтез КС по обратной структурной таблице переходов.
КС автомата разбивается на ряд подсхем
{ x}
{a}
{ }
Сх Т
КС мпа
{T}
Сх Y
{Y}
Сх
{ }
122. Получение сигналов термов
φ(ai , aj )Ti ai K(ai ) aj K(aj) X(ai , aj ) Y(ai , aj )
T1 a3 1011 a8 0101
T2 a5 1110
T3 a7 0010
Сх T
a3
x1
x2
a5
x1
x3
a7
x2
x3
&
&
&
T1
T2
T3
1
1
2
3
1
2
x1 x 2
x1 x 3
x2x3
y1 y4 y7
y1 y4 y5
R1 S2 R3 *
R1 * R3 S4
y1 y7
* S2 R3 S4
Сх
Сх Y
1
1
y1
y4
2
3
2
1
y5
1
3
1
y7
1
2
1
3
1
2
3
2
3
1
R1
1
S2
1
R3
1
S4
123. Дешифратор
12
3
τ1 τ2 τ3 f0 f1 f2 f3 f4 f5 f6 f7
f0
f1
ДШ
f6
f7
0 0
0
1
0
0
0
0
0
0
0
f 0 1 2 3
0 0
1
0
1
0
0
0
0
0
0
f1 1 2 3
…
...
…
1 1
0
0
0
0
0
0
0
1
0
1 1
1
0
0
0
0
0
0
0
1
...
• ДШ - КС, преобразующая
позиционный двоичный код в
унитарный
• Унитарный код - код, в любой
кодовой комбинации которого
содержится одна единица
f 6 1 2 3
f 7 1 2 3
124. Схема дешифратора
11
1
2
3
4
5
f0
&
f1
1
5
1
6
3
6
1
3
5
&
&
f6
f7
0
1
...
4
...
4
2
&
...
1
3
1 2
4
2 6
2
ДШ
8
14
15
f 0 1 2 3
f1 1 2 3
...
f 6 1 2 3
f 7 1 2 3
125. Трехразрядный дешифратор
a1a2
a3
a4
a5
000
100
001
111
011
τ2τ3
τ1 00 01 11 10
0
1
a1 a3 a5
a2 - a4
-
С=10
a1
a2
a3
a4
a5
1 3
1 2
2 3
1 2
1 2
a1
a2
a3
a4
a5
1 3
1 3
1 2 3
1 3
2
С=15
τ2τ3
τ1 00 01 11 10
0
1
a1 a3 a5
a2 a4 С=9
-
126. Построение двухступенчатого ДШ
34
5
& 1
1
& 2
& a8
& a9
2
3
4
5
& 2
1
& 1
2
& a1
τ3τ4τ5 β1 β2 β3
τ1τ2
000 001 011
α1
00
α2
01
…
…
α4
11
β7
…
111
a1
…
a8
a9
…
…
…
Выходная ступень
дешифратора состояний
Преддешифратор
состояний
…
…
…
127. Предварительное объединение сигналов термов
• Предварительное объединение - декомпозиция схемыформирования выходных сигналов I рода и функций
возбуждения путем вынесения общих частей дизъюнкторов
C=5
T1
T2
T3
1
1
C=4
yk
T1
T2
yn
T3
1
y k T1 T2 Z
y n T1 T2 T3 Z T3
yk
1
1
yn
2
128. Доопределение функций возбуждения
TiK(ai )
aj
K(aj)
X(ai , aj )
Y(ai , aj )
φ(ai , aj )
T1
0000
a8
0100
y4 y7 y8
R 1 S2 R 3 R 4
T2
0001
x1
x1
y4 y7 y8
R 1 S2 R 3 R 4
T3
0010
x2 x3
y4 y7 y8
R 1 S2 R 3 R 4
T4
1010
x4
y4 y7 y8
R 1 S2 R 3 R 4
T5
1100
y4 y7
R 1 S2 R 3 R 4
T6
0011
x 5 x8
x6 x7
y3
R 1 S2 R 3 R 4
T1
T2
T3
T4
T5
T6
1
2
1
2
1
1
1
2
1
1
6
1
6
y4
y7
y8
y3
2
1
1
1
6
1
6
1
6
1
R1
S2
R3
R4
129. Узлы в схеме алгоритма
n...
af
as
X(af ,Qk)
as
X(as,Qk)
Qk
Qk
Минимальный
узел
X(Qk,ap)
Y(Qk,ag)
Y(Qk,ap)
ap
X(Qk,ag)
...
m
ag
130. Выигрыш при использовании узлов
• Таблица переходов графа без введения узловn
ai
...
af
as
X(af ,Qk)
X(as,Qk)
n
Qk
af
aj
X(ai , aj )
Y(ai , aj ) φ(ai , aj )
ap
X(af ,Qk)/\
X(Qk,ap)
Y(Qk,ap) φ(Qk,ap)
…
…
…
…
as
X(as,Qk)/\
X(Qk,ap)
Y(Qk,ap) φ(Qk,ap)
X(af ,Qk)/\
X(Qk,ag)
Y(Qk,ag) φ(Qk,ag)
…
X(Qk,ap)
X(Qk,ag)
n
Y(Qk,ag)
Y(Qk,ap)
ap
...
ag
af
ag
…
…
as
X(as,Qk)/\
X(Qk,ag)
…
m
…
…
Y(Qk,ag) φ(Qk,ag)
n*m
131.
Выигрыш при использовании узлов• Таблица переходов графа с введением узлов
n
...
af
X(af ,Qk)
aj
X(as,Qk)
af
Qk X(a ,Q )
f
k
n
…
as
Qk
X(Qk,ap)
X(Qk,ag)
m
Y(Qk,ag)
Y(Qk,ap)
ap
...
m
ag
X(ai , aj ) Y(ai , aj ) φ(ai , aj )
ai
as
—
—
…
—
—
X(as ,Qk)
—
—
Qk ap X(Qk,ap) Y(Qk,ap) φ(Qk,ap)
… …
Qk a g
…
…
…
X(Qk,ag) Y(Qk,ag) φ(Qk,ag)
n+m
132. Пример отметки ГМП с использованием узлов
началоa1
A
a4
Q1
0
B
1
B{32}
1
A:=d1
B:=d2
a2 1
0
a5
A{1}=B{1}
C{1}:=0
0
C:=C+A{2:32}
C{1}:=1
a6
C:=R1(C)
B:=C{32}.R1(B)
Сч:=Сч-1
Сч=0
a3
1
Сч:=31
C{2:32}:=0
A
C:=R1(C)
B:=C{32}.R1(B)
a1
конец
0
133. Обратная таблица переходов с учетом узла Q1
началоa1
B
A
0
a4
Q 11
x2
1
a2
1
x1
y3
0
a5
y4
a6
A
a1
aj
a4
Q1
a1
a6
x3
1
y 5, y 6
ai
a1
y8, y9, y10
a3
Состояние
перехода
a6
0
y7
y1, y2
Исходное
состояние
0
Осведомительные
сигналы
Управляющие
сигналы
X(ai , aj )
Y(ai , aj )
1
-
x3
-
B
-
x3
y8 y9
a1
a2
B
y1 y2
a2
a3
x1
x1
y3
a2
y4
a3
a4
1
y5 y6
y8, y9
Q1
a5
x2
y7
конец
a5
a6
1
y8 y9 y10
x2
y8 y9 y10
Q1
134. Учет узлов при построении комбинационной части автомата
afT1
...
&
&
X(Qk,ag)
...
...
X(as,Qk)
1
...
as
&
X(Qk,ap)
...
X(af ,Qk)
&
Tm
• Использование узлов позволяет уменьшить цену схемы
• Но уменьшает быстродействие
135. Функции возбуждения на переходах из узлов
• Функции возбуждения при переходе из узла в состояниемогут формироваться двумя способами
– с учетом всех переходов в узел
– по коду состояния перехода
ai K(ai )
aj
K(aj)
as
Qk
Qk
─
─
─
0010
─
an ...
─
am 1011
an 0110
φ(ai , aj)
am ...
ap
1. R1 R2 S4
0011
(2.R1 R2 S3 S4)
Qk
ap
as
136. Начальная установка автомата
11
8
2
2
7
3
3
7
{φ}
4
4
8
5
5
8
6
6
7
&
9
8
15
C
10
10
1
11
1
11
S
T
15
C
12
12
&
13
13
15
1
14
15
14
a1 010
T
R
&
СИ
1
S
1
7
R
9
R
2
S
T
• Триггеры с
дополнительными
асинхронными
входами
C
R
3
S
{φ }
S
S
C
R
R
R
T
137. Запуск автомата
Реализация запуска автомата :на микропрограммном
уровне;
на аппаратном уровне.
начало
a1
B
1
ГСИ
R
1
B
a1
aj X(ai , aj)
a1
a1
B
a1
a2
B
СИ
&
СИУА
z1
1
1
0
ai
z2
1.
2.
3.
4.
R=0, B=0, a1=1, z2=0
R=0, B=1, a1=1, z1=z2=1
R=B=0, a1=0, → z2=1
R=1, → z1=0
138. Схема запуска автомата на триггере
СИG
&
S
B
1
&
R
R
a1
1
T
СИУА
139. Пример синтеза УА интерпретационным методом
началоa1
x1
0
B
y1
1
a2
y8
x4
0
Q2
0
0
1
0
x3
x2
1
y2
1
a3
1
0
y3,y4
x4
Q3 1
y5
a4
1
x5
0
y5,y6
a5
x2
0
1
y7
1
a6
x6
Q1 0
a1
y8
конец
140. Обратная структурная таблица переходов
№ai
K(ai )
aj
K(aj)
X(ai , aj)
Y(ai , aj)
φ(ai , aj)
1
a4
011
Q1
─
─
─
2
a5
110
─
x5
x2
─
─
3
a6
111
─
1
─
─
4
Q1
─
─
─
─
5
a1
000
─
x6
Bx1x 2
─
─
6
a2
001
─
1
─
─
7
Q2
─
─
x3
─
─
8
a3
100
─
1
─
─
9
a5
110
─
─
─
10
Q1
─
y8
R1 R2 R3
11
a1
000
─
─
12
a1
000
a2
001
y1
S3
13
a1
000
a3
100
y2
S1
14
Q2
─
a4
011
y3 y4
R1 S2 S3
15
Q3
─
y5
R1 S2 S3
16
Q3
─
a5
110
y5 y6
S1 S2 R3
17
Q2
─
a6
111
y3
S1 S2 S3
18
a4
011
y7
S1
Q2
Q3
a1
000
x2
x6
B
Bx1
Bx1x 2
x3 x4
x4
x4
x 3 x4
x5
141. Системы канонических уравнений
Кодирование состоянийa1 a2 a3 a4 a5 a6
4 1 1 2 2 1
a1 1 3
a 4 1 2
a5 2 3
a2 2 3
a 3 1 2
a 6 1 3
τ2τ3
τ1 00 01 11 10
0
1
a1 a2 a4
a3
─
y 1 T11
y 2 T12
y 3 T13 T16
y 4 T13
y 5 T14 T15
y 6 T15
y 7 T17
y 8 T10
─
a6 a5
142. Системы канонических уравнений
Q 1 a 6 a 1 x 5 a 5 x 2Q 2 a 2 a1Bx1 x 2 Q1x 6
Q a Q x a x
3
2 3
5 1
3
R 1 R T10 F4 R 2 F 4
R 2 R T10
R R T T R T
10
15
2
15
3
F4 T13 T14
F6 T16 T17
S1 (T12 T15 F6 ) R
S 2 (F4 T15 F6 ) R
S 3 (T11 F4 F6 ) R
143. Управляющий автомат
x110 7
11 19
12 9
13 12
&
&
1
14 7
15 24
16 10
17 13
&
1
18 40
19 20
20 41
21 14
22 9
23 11
24 1
&
1
x2
1
x3
1
x4
x5
x6
R
B
СИ
1
1
25 5
&
30
36
1
Q1
30
31
31
37
1
Q2
32
32 33
38
34
41
1
Q3
34
33 35
4
40
&
42
a2 37
5
&
&
35
1
&
a3 38
4
36
Q1 a6 a1x5 a5 x 2
Q 2 a 2 a1Bx1x2 Q1x6
40
21
7
24
11
7
24
10
12
41
15
16
42
17
42
16
41
15
17
8
18
&
&
T10
T11
50
51
a2 2 3
&
T12
&
52
T13
53
&
T14
54
&
T15
55
T16
56
T17
57
&
&
a1 1 3
a 3 1 2
a 4 1 2
a5 2 3
a 6 1 3
Q 3 a 3 Q 2 x 3 a5 x1
144.
y 1 T11Управляющий автомат
58
1
F4 60 52
54
56
F6 61
57
22
1
1
60
62
1
1
56
54
55
1
67
1
67 23
61
68
R1 63
51
R3 64 61
51 y1
y
y3 52 2
53 y4
55 y6
y5
57 y7
50 y8
69
&
23
R2 62 60
60
55
53
61
55
50
62
66 66
55
1
y 2 T12
1
23
1
68
&
&
S
S1 69 25
C
63
70
R
S
S2 70 25
S3 71
62
71
25
64
TT
1
TT
C
R
S
2
&
2 6
3 2
&
a1 7
a4 8
4 3
1
TT
C
R
1
5
6
3
&
6
1
R 1 R T10 F4 R 2 F 4
R 2 R T10
R R T T R T
10
15
2
15
3
S1 (T12 T15 F6 ) R
S 2 (F4 T15 F6 ) R
S 3 (T11 F4 F6 ) R
y 3 T13 T16
y 4 T13
y 5 T14 T15
y 6 T15
a5 9
y 7 T17
y 8 T10
a1 1 3
a 4 1 2
a5 2 3
F4 T13 T14
F6 T16 T17
145. Синтез УА на программируемых логических устройствах
146. ПЛУ с матричной структурой
+E• В местах пересечения
– диоды
x1
1
x2
1
x3
P1 x1 x 2 x 3
1
P1
P2
P3
P4
Схема реализует
конъюнктивные матрицы
P2 x1 x 3
P3 x1 x 2
P4 x 2
147.
ПЛУ с матричной структурой• Схема реализует
дизъюнктивные матрицы
P1 P2 P3 P4
В местах пересечения
– транзисторы
+E
y1
y2
y 1 P1 P2 P3
y 2 P2 P4
148. ПЛУ с матричной структурой
+Ex1
x2
x3
x1
1
x2
1
M1
P1 P2 P3 P4
x3
1
M2
P1
P2
P3
y1
y2
P4
P1 P2 P3 P4
y1
y 1 x1 x 2 x 3 x 1 x 3 x 1 x 2
y2
y 2 x1 x 3 x 2
149. Организация ПЛУ с матричной структурой
11
...
...
&
&
M
M1
s
s
1
Программируемые
инверторы
...
M2
1
t
&
1
1
...
...
s
1
q
1
q
...
1
...
q
t
150. ПЛМ
• ПЛМ (S, t, q): Sплм S(M1 ) S(M 2 ) 2S q q t q( 2S t )• Система булевых функций:
y 1 f1 ( x1 , x 2 ,..., x L )
L S
y 1 x1 x 3 x 4 x1 x 2 x 4 x 2 x 4
...
N t
y N f N ( x1 , x 2 ,..., x L )
B q
y 2 x 2 x4 x 3 x4
x1
x2
x3
x4
y1 y2 y3
y 3 x1 x 3 x 4 x1 x 3 x 4
x1 x2 x3 x4 y1 y2 y3
1 ─ 0 1 1 • 1
1 1 ─ 0 1 •
─ 0 ─ 1 1
─ 1 ─ 1 • 1
─ ─ 1 0 • 1
1 ─ 0 0
1
151. ПЗУ
• Дешифратор имеет 2s выходовS ПЗУ 2S 2 2 t 2 ( 2S t )
S
S
S
y 1 x1x2 x3 x1x 2 x3 x1x 2 x3
0
2
6
5
x1
y 2 x1x 2 x3 x1x2 x 3
2
Адрес
0
2
5
6
y1
1
1
1
y2
1
1
x2
x3
0
1
2
ДШ
3
4
5
6
7
152. Использование ПЗУ в качестве запоминающего устройства
AS
ПЗУ
0
1
DC
1
...
2s-1
1
1
t
t
• Характеристики
S
E
2
– емкость
– разрядность n t
t
...
MUX
1
t
1
A
ПЗУ
D
s
y1
t
D
Чт
1
Рг A
s
y1
ПЗУ
1
Рг D
t
y2
y 1 : РгА : d1
y 2 : РгД : ПЗУ ( РгА )
153. Синтез УА на ПЛМ
I. Одноуровневая тривиальная реализация на 1 ПЛМR
q
1
п
...
xL
... ...
x1
1
...
&
1
R
...
y1 y N
(R L) S
(N k R ) t
B q
1 одновходовые триггеры
k
2 двухвходовые триггеры
154. Пример синтеза на ПЛМ
aiK(ai)
a1
000
a2
001
a3
011
a4
010
aj
K(aj)
X(ai , aj)
Y(ai, aj)
φ(ai , aj)
a1
000
—
—
a2
001
y1 y2
S3
a3
011
B
B
x1
y3
S2
a3
011
x1
y4
S2
a4
010
1
y5 y6
R3
a5
100
x2
y7
S1 R2
a6
110
x2
y8 y9 y10
S1
τ1 τ2 τ3 B x1 x2 x3 x4 y1 y3 y4 y5 y7 y8 y10 R1 S1 R2 S2 R3 S3
y2
y6
y9
2
0
0
0
1
─
─ ─ ─
1
1
3
0
0
1 ─
0
─ ─ ─
1
1
4
0
0
1 ─
1
─ ─ ─
1
1
5
0
1
1 ─ ─
─ ─ ─
1
1
6
0
1
0 ─ ─
1 ─ ─
1
1
1
7
0
1
0 ─ ─
0 ─ ─
1
1
1
155.
II. Одноуровневая тривиальная реализация на несколькихПЛМ
1) Собственно одноуровневая
{x l } { r } X* {x l }*, l 1, L *
{y n } { r } Y* {y n }*, n 1, N *
...
1
r
...
x1
xL
& 1
Система уравнений
{ }
q
...
y1 y N
П
{ }
L* S
N* t
B q
L* L R
N* N k R
156. II. Одноуровневая тривиальная реализация на нескольких ПЛМ
2) Расширение ПЛМ по входам&
x1
1
...
...
xL
Система уравнений
Y1
q
ПЛМ 1
...
&
1
...
...
q
ПЛМ H
YH
L* S
N* t
B q
L* L R
N* N k R
Y Y1 Y2 ... YH
Yi Yj 0 i , j 1, H
157.
II. Одноуровневая тривиальная реализация на несколькихПЛМ
3) Расширение ПЛМ по внутренним шинам
& 1
...
...
X*
Y*
Система уравнений
q
ПЛМ 1
L* S
N* t
B q
...
& 1
...
...
q
ПЛМ H
*
4) L S
a
f
a
b
1
b
Одноуровневая тривиальная
реализация невозможна
f
158.
III. Одноуровневая нетривиальная реализация на одной илинескольких ПЛМ
1
...
... ...
X1
&
Y1
q
ПЛМ 1
Y*
...
X*
&
1
...
...
XL
• Функции на выходе
зависят не от всех
входных переменных
q
ПЛМ H
YH
X* X1 X 2 ... X H
Y* Y1 Y2 ... YH
159. Пример одноуровневой нетривиальной реализации
L1 3 x 2 x 4 x 5y 1 x2x4 x5 x4x5
y 2 x1 x 3 x 5 x1 x 3 x 5
y 3 x 1 x 3 x1 x 3
L 2 3 x1 x 3 x 5
L 3 2 x1 x 3
y 4 x 2 x4 x 2 x4 x5
L 4 3 x 2 x 4 x 5
L 5 3
Lmax 3
*
ПЛМ (3, 2, 4)
x2
x4
x5
x1
x3
& 1
Задачи, решаемые при реализации
y1
4
y4
& 1
y2
4
y3
1. Преобразование системы
канонических уравнений к виду,
отвечающему условию Lmax ≤ s
2. Распределение уравнений по
различным ПЛМ таким образом,
чтобы для каждой ПЛМ выполнялось
условие Li ≤ Lmax (≤ s)
160.
IV. Многоуровневая реализация• В КЧ автомата сигнал от входа к выходу проходит более чем
через одну ПЛМ
• Используется
– если систему уравнений нельзя свести к виду Lmax S
– если одноуровневая реализация слишком избыточна
1) Схема с обратной связью
...
...
q
1
...
...
X*
&
Y*
161.
IV. Многоуровневая реализация2) Собственно многоуровневая
&
...
X1
&
1
1
q
...
&
1
...
XH
Y*
q
q
3) Комбинированная
&
1
...
...
X1
&
1
q
...
q
1
...
...
XH
&
q
Y*
162. Устройство управления с программируемой логикой
• Структура микрокомандыОперационная
часть
Адресная часть
Дополнительные поля
• Хранение микропрограммы
– используется запоминающее устройство
микропрограммы (ЗУМП), в качестве которого
могут использоваться ОП или ПЗУ
1
A
s
1
D
s
z1
t
z2
ПЗУ
ПЗУ
1
Рг A
t
микрокоманда
1
Рг D
163. Структура УУ с программируемой логикой
z1РМК
1
ОЧ
k k+1 АЧ n
k
1
k+1
n
{xl}
СхФУС
...
СхФАМ
yl yn yf
R
B
АМК
ВУА
1
А
nA
ЗУМП
1
z1
n
164. Организация операционной части
• В общем случае ОЧ состоит из нескольких полей...
Y1
...
Yk
YH
• Кодирование наборов микроопераций
1
Y1
n1
...
1
Yk
nk
...
...
Ym
1
YH
1
СхФУС
DC1
DC2
DCH
...
...
...
Y1={yi}
{yk}
ym
yF
nH
{yH}
165. Кодирование наборов микроопераций
• УА осуществляет кодирование микрокоманд, состоящих изнабора совместимых микроопераций. Микрооперации,
входящие в каждую микрокоманду, описываются булевой
матрицей вхождения
YH – микрокоманда;
yM – микрооперация.
Y {Y1 , Y2 ,..., YH }
Yi {y , y ,..., y }
k 11 k 12
k 21 k 22
K
. .
k N 1 k N 2
... k 1M
... k 2 M
.
... k NM
1 Код микрокоманды n
АЧ
СхФУС
1
А
n
ПЗУ
1
M
...
yl y2 yM yF
166. Способы организации адресной части (АЧ) автомата
• Принудительная адресация с двумя адресами1
Y
nY 1
l ,
X{1 : n x }
0
X
A1 ,
АМК
A2 ,
A1
nA 1
1 l L
n x log (L 1)
2
nX 1
x 0, ( x l ) ( x l 0)
( x l ) ( x l 1)
A2
nA
167. Принудительная адресация с двумя адресами
{xl}z 1: РМК : ЗУМП
СхПрЛУ
0
Y
1
nY 1
nx
2 1
X
nX 1
A1
1
СИ
xL
1
yF
nA 1
A2
nA 1
СхФУС
B
1
X*
&
nX
nY
{ym}
&
...
DC
1
1
...
z 2: АМК А1
z 3: АМК А 2
x1
nA
МПА
z2
А
z3
nA
ЗУМП
ВУА
1
z1
z1
nA
n
1
168. Мультиплексор – схема коммутации
xlx{1 : n x }
D
МП
X*
S
nx log 2 (L 1)
n n y n x 2n А
n А log 2 P
Р – общее число микрокоманд в
микропрограмме – длина микропрограммы
169. Пример разработки микропрограммы
началоРаспределение микроопераций по
совместно-кодированным полям
Y1 {y 1 , y 3 , y 4 }
y1, y2
0
Y2 {y 2 , y 5 , y F }
x1
Y3 {y 6 }
1
y3
y4, y5, y6
x2
1
конец
0
y 1 01
Y1 y 3 10
y 11
4
Y3
y
6
1
y 2 01
Y2 y 5 10
y 11
F
x1 01
X
x 2 10
170. Пример разработки микропрограммы
Структура микрокоманды1
Y1
Операционная часть
начало
y1, y2
0
x1
1
2
1
Y2
Y3
2
X
1 1
2 1
A1
3
1
A2
Адресная часть
Микропрограмма
y3
Адрес
Y1
Y2
Y3
X
y4, y5, y6
000
01
01
0
00 001 000
001
00
00
0
01
011 010
-/переход по x1
010
10
00
0
00
011 000
y3/БП
011
11
10
1
10 001 100
y4 y5 y6/переход
по x2
100
00
11
0
00 000 000
yF
x2
1
конец
0
• Исходные данные
A1
A2
Комментарии
y1 y2 /БП
3
171. Принудительная адресация с одним адресом
ОЧX
1
nA
( )x l
Сч А
1
x l 0 A
x l 1 A x l
1
А
ЗУМП
СхПрЛУ
nA
n
172. Принудительная адресация с одним адресом
x11
y3
y4, y5, y6
x2
Y1
1
y1, y2
0
Структура микрокоманды
начало
0
1
конец
• Исходные данные
2
1
Y2
Y3
2
1 1
Операционная часть
X
2 1
A1
3
Адресная часть
Микропрограмма
Адрес
Y1
Y2
Y3
X
A1
Комментарии
000
01
01
0
00
001
y1 y2/БП
001
00
00
0
01
010
-/проверка x1
010
11
10
1
10
100
y4 y5 y6/
проверка x2
011
10
00
0
00
010
y3/БП
100
00
00
0
00
001
-/БП
101
00
11
0
00
000
yF
173. Естественная адресация
• При естественной адресации используют микрокомандыдвух типов
Микрокоманды
Операционные
ПТ
0
1
Y
Управляющие
Задают набор
микроопераций и неявно
полагают адрес следующей
микрокоманды равным А+1,
где А – адрес текущей
микрокоманды
A A 1
ПТ
1
nY
1
X
nX
1
nA
Используются для изменения
естественного порядка следования
микрокоманд путем реализации
условных переходов
X{1 : n x } l
x l 0 A A 1
x l 1 A
и безусловных переходов
X 0 A
174. Естественная адресация
z 1: РМК : ЗУМП(СчА )"1"
z 2: СчА : СчА 1
xl
D
MUX
X*
SD
z 3: СчА :
CE
nX
1 1
X
ПТ
z1
Y
nY
nA
1
1
1
СхФУС
{ym}
X*
B
yF
1
СчА
1
А
ВУА
ЗУМП
1
{zi}
nA
z2
z3
nA
n
z1
175. Работа ВУА
началоa1
a3
B
0
1
РМК:=
ЗУМП(СчА)
a2
ПТ
1
X*
0
yF
a1
1
конец
0
1
0
СчА:=СчА+1
СчА:=
176. Пример разработки микропрограммы
n max{ n y , (n X n A )} 10
начало
ПТ
0
1
y1, y2
ПТ
1
1
x1
Y1
X
Адрес ПТ
1
y3
y4, y5, y6
x2
0
1
конец
• Исходные данные
2
Y1
1
Y2
2
1
Y2
Y3
α
X
Y3
2 1
3
Комментарии
000
0
01
01
0
y1 y2
001
1
01
01
1
проверка x1
010
1
00
10
0
БП
011
0
10
00
0
y3
100
0
11
10
1
y4 y5 y6
101
1
10
11
1
проверка x2
110
1
00
00
1
БП
111
0
00
11
0
yF
177. Сегментация адреса микрокоманд
z 1: РМК : ЗУМП( РгА )X*
{xl}
z 2: РгА {1 : n A } : A 1
СхПрЛУ
z 3: РгА {1 : n A } : A 2
z 4: РгА {1 : n S } : S РМК
ОЧ
XS
1
nX
X
A1
1
nA
1
A2
nA
S
1
nS
1
nS
1
nA
yF X * X S
1
B
ВУА
1
1
nS 1
РгА
nA
nA
nA
ЗУМП
{zi}
z1
1
n
z2
z3
z4
z1
178. Работа ВУА
началоa1
B
a3
0
1
РМК:=
ЗУМП(РгА)
Xs
1
РгА{1:nS}:=
SРМК
0
a2
X*
yF
a1
1
конец
0
1
0
РгА{1:nA}:=
A1
РгА{1:nA}:=
A2