Методы низкоуровневого микропрограммирования

Содержание

Слайд 2

Вертикальное микропрограммирование. - Функциональному сигналу ставится в соответствие не разряд, а

Вертикальное микропрограммирование.

- Функциональному сигналу ставится
в соответствие не

разряд, а
двоичный код операционной части
микрокоманды ( есть даже код
отсутствия микрооперации).
* * * * *
m – число функциональных сигналов
n – число разрядов операционной
части микрокоманды
. . . . m ≈ 100 сигналов

n = log2 (m+1) = 8
Достоинства метода: малая длина микрокоманды (8-16 разрядов)
Недостатки: 1. сложность дешифрации кода сигнала микрооперации 2. Одной микрокоманде соответствует всего один функциональный сигнал поэтому число микрокоманд в пакете должно соответствовать числу функциональных сигналов.

дешифратор

1
2
3
4
m

Слайд 3

Вертикально-горизонтальное микропрограммирование. Сочетает достоинства горизонтального и вертикального методов. Множество микроопераций разбивается

Вертикально-горизонтальное микропрограммирование.
Сочетает достоинства горизонтального и вертикального методов. Множество

микроопераций разбивается на несколько подмножеств. Микрооперации внутри подмножеств кодируются горизонтально.

- В каждое подмножество сводят
типовые наборы микроопераций,
встречающиеся в одном такте.
Подмножества строят равно-
. . . . . . объемными, чтобы уравнять
разрядность микрокоманд.

Достоинства метода: 1. Малая длина микрокоманды (8-32 разряда) 2. Сигналы представлены в явной форме и не требуют дешифрации.
Недостатки: 1. Вся совокупность микроопераций реализуется несколькими микрокомандами за несколько тактов, при этом необходимо соблюдать порядок следования микрокоманд в пакете.

1
2
3
K

Слайд 4

Горизонтально-вертикальное микропрограммирование. Здесь также, как и в вертикально-горизонтальном методе все функциональные

Горизонтально-вертикальное микропрограммирование.
Здесь также, как и в вертикально-горизонтальном методе

все функциональные сигналы разбиваются на несколько подмножеств, которые располагаются горизонтально, т.е. в одной микрокоманде. Но внутри каждого подмножества сигналы кодируются (вертикально) и, следовательно, реализоваться в каждом такте будет только один сигнал из подмножества. Поэтому в подмножества сводят сигналы, которые не могут появляться одновременное с другими сигналами подмножества.

K
n = ∑ log2 (ml+1) = 4 – 7 разрядов
l=1
Достоинства метода: микрокоманда выполняется за один такт
Недостатки: 1. сложность дешифрации кода сигнала микрооперации 2. Сложность сведения функциональных сигналов в подмножества.

- Дешифраторы подгрупп

Слайд 5

6. Проектирование и программирование микропрограммного автомата (МПА). Принцип микропрограммного управления. Для

6. Проектирование и программирование микропрограммного
автомата (МПА).
Принцип микропрограммного управления.
Для выполнения операций

над информацией используются операционные устройства (ОУ) – регистры, АЛУ, мультиплексоры, шифраторы, дешифраторы, контроллеры и т.д..
Функцией операционного устройства является выполнение заданного множества операций F={f1, f2, …, fk} над входными словами из множества DIN с целью вычисления множества DOUT, представляющих результаты операций DOUT=fk(DIN).
Организация архитектуры МПА базируется на следующих принципах:
1. Любая операция fk, реализуемая ОУ, рассматривается, как сложный процесс, состоящий из последовательности элементарных действий над словами информации, называемых микрооперациями.
2. Порядок выполнения микроопераций может определяться наличием логических условий (сигналов оповещения).
3. Процесс выполнения операции fk описывается в форме алгоритма и называется микропрограммой.
4. Микропрограмма используется как форма представления (активации) функций устройства, на основе которой определяется структура и порядок функционирования устройства во времени.
Строится тактовая диаграмма сигналов управления.
Слайд 6

Концепция операционного и управляющего автоматов. В функциональном отношении любое операционное устройство,

Концепция операционного и управляющего автоматов.
В функциональном отношении любое операционное устройство,

входящее в состав ЭВМ, удобно представлять разделенным на две части: операционный и управляющий автоматы.

Операционный автомат

Управляющий автомат

DIN

DOUT

{u}

{v}

Z

g

Операционный автомат служит для приема слов информации DIN в различном формате, их хранения, преобразования и выдачи во внешнюю среду DOUT. Этот процесс сопровождается выработкой множества осведомительных сигналов {u}, используемых в качестве логических условий для управляющего автомата.
Управляющий автомат генерирует последовательность управляющих сигналов {u}, распределенных во времени, обеспечивающих выполнение в операционном автомате заданную последовательность элементарных действий, которая реализуется алгоритмом выполняемой операции.
Обычно управляющие автоматы объединяют в единый блок, называемый центральным устройством управления, а конкретный алгоритм (микропрограмма) активируется кодом операции, который дешифруется в конкретный сигнал Z, определяющий тип выполняемой операции.
После завершения операции управляющий автомат активирует сигнал g, отмечающий завершение операции и готовность выходных данных DOUT.

Слайд 7

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

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

операционного автомата являются:
Описание формата входных и выходных слов (множеств {DIN} и {DOUT}),
Список множества операций из F, которые должны выпоняться над словами.
Разработка общей структуры операционного автомата.
Тактовая диаграмма сигналов управления.
В качестве примера операционного автомата разработаем схему сумматора простых чисел.
Определение формата данных.
Будем считать, что в операции сложения участвуют два 32-х разрядных числа.
Слагаемые поступают с системной шины памяти по адресам памяти, определенным схемой страничной адресации, которая в данной структуре операционного автомата не рассматривается.
Сумма помещается в постоянно открытый аккумулятор, а из него во внешний буфер обмена системной шины для размещения по адресу второго операнда.
Основным логическим условием состоявшейся операции сложения будет служить отсутствие сигнала переполнения разрядной сетки - Error.
Признаком завершения – сигнал – DBIN (открытие внешнего регистра на чтение).
Слайд 8

Разработка структуры операционного автомата Внешний регистр Регистр 1 Регистр 2 Регистр

Разработка структуры операционного автомата

Внешний регистр

Регистр 1

Регистр 2

Регистр 2

Системная шина памяти

сумматор

WR1

WR

WR2

IN

Error

S

Ready

DBIN

Основные сигналы

управления;
1. WR – открытие внешнего регистра системной шины на запись (сигнал постоянно активен, т.е. регистр постоянно открыт на шину данных).
2. WR1 – открытие первого буферного регистра на запись.
3. WR2 – открытие второго буферного регистра на запись.
4. S – сигнал активации сдвигового сумматора АПУ.
5. IN - открытие регистра - аккумулятора на запись (сигнал постоянно активен, т.е. регистр постоянно открыт в сторону сумматора).
6. DBIN – открытие внешнего регистра на чтение данных в память.
Слайд 9

Оповещающие сигналы: 1. Ready – сигнал готовности контроллера памяти к операции

Оповещающие сигналы:
1. Ready – сигнал готовности контроллера памяти к операции

чтение-запись.
2. Error – сигнал, источником которого является единица в старшем (дополнительном) разряде сумматора (переполнения разрядной сетки).
Тактовая диаграмма сигналов управления:

Error - E
Ready - R
1. WR - A
2. WR1 - B
3. WR2 - C
4. S - S
5. IN - D
6. DBIN - F

Слайд 10

Разработка алгоритма выполнения операции сложения двух чисел. начало R=Ready R=1 нет

Разработка алгоритма выполнения операции сложения двух чисел.

начало

R=Ready

R=1

нет

WR=1

WR=0, WR1=1

R=Ready

R=0

нет

R=Ready

R=1

нет

WR=1

WR=0, WR2=1

WR1=0, WR2=1,

S=1

E=1

да

DBIN=1

E=Error

конец

конец

Слайд 11

7. Разработка структуры управляющего микропрограммного автомата. Принципиальная схема управляющего микропрограммного автомата.

7. Разработка структуры управляющего микропрограммного автомата.
Принципиальная схема управляющего микропрограммного

автомата.
Схема микропрограммного автомата синхронизируется с элементами операционного автомата с помощью генератора синхроимпульсов «Г».
ППЗУ является энергонезависимой долговременной памятью и синхронизации не подлежит, т.к. выдает данные на выход при появлении на входе адреса памяти.
Для сопряжения ППЗУ с остальной схемой используется регистр.

A PROM D

RG

C

Г

L+M
Z

L+M L
M

N-M
Управляющие сигналы
V

вход оповещающих сигналов
U
L

M
N
N-M

Слайд 12

Порядок построения простой горизонтальной микропрограммы для микропрограммного автомата схемы генерации сигналов.

Порядок построения простой горизонтальной микропрограммы для микропрограммного автомата схемы генерации

сигналов.
В ответ на положительный уровень сигнала, определяемого кодом операции сложения двух чисел, управляющим автоматом вырабатывается последовательность выходных сигналов, которые в нужные моменты времени открывают или закрывают буферные регистры, активируют сумматор.
Во некоторые моменты времени при формирования выходной последовательности автомат не должен реагировать на входной сигнал, а после ее окончания должен ожидать следующего положительного уровня оповещающего сигнала готовности контроллера памяти.
Для упрощения задачи примем все временные сдвиги равными 1 мкс. Поэтому частота тактового генератора должна быть 1 Мгц.
Как видно из временной (тактовой) диаграммы сигналов управления, выходная последовательность состоит из девяти тактовых моментов (включая все единичные уровни). Поэтому требуется, как минимум, 3 адресных входа ППЗУ (8 возможных состояний).
Кроме этого адресная часть формируется двумя входными сигналами, следовательно количество адресных разрядов ППЗУ должно быть не менее пяти, а количество разрядов регистра должно быть равно 9 (к трем разрядам адреса добавляется 6 разрядов данных, определяющих выходные сигналы).
Слайд 13

A PROM D RG C Г 1 2 3 4 5

A PROM D

RG

C

Г

1 2 3 4 5
Z

5 4

3 21

выход 1 выход 2 выход 3 выход 4 выход 5 выход 6
V

вход оповещающих сигналов
U

В микропрограмме реализованы следующие режимы:
1. Последовательный перебор адресов (при отработке выходной последовательности).
2. Останов с ожиданием.
3. Отключение реакции на входной сигнал (путем дублирования последовательного перебора в зоне адресов, соответствующей изменению входного сигнала).

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