Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
эвм конспект лекций.doc
Скачиваний:
229
Добавлен:
30.03.2015
Размер:
910.34 Кб
Скачать

Основные режимы адресации бму

Ф1, Ф0

М1, М0

Формируемый адрес

Режим адресации

1 0

Х 0

Х 1

РАМК:= (РАМК) + 1

РАМК:= (РАМК) - 1

Счёт (Сч)

0 1

0 0

1 0

0 1

1 1

РАМК:= (А) + 1

РАМК:= (А) + 2

РАМК:= (А) - 3

РАМК:= (А)

Принудительная

адресация (ПА)

0 0

0 0

1 0

0 1

1 1

РАМК:= С + 1

РАМК:= С + 2

РАМК:= С - 1

РАМК:= С

Адресация по старшему байту регистра команд (РКС)

1 1

0 0

1 0

0 1

1 1

РАМК:= С + 1

РАМК:= С + 2

РАМК:= С - 1

РАМК:= С

Адресация по младшему байту регистра команд ( РКМ)


направления счёта. Если М0 используется как ЛУ, то возможна организация ветвления на предыдущий адрес (рис. 27 б).

Принудительная адресация (ПА) подразумевает использование в качестве основы адреса содержимое поля адреса А9...А0 МИ БМУ. Передача управления на этот адрес осуществляется при единичных значениях М1, М0. Если М1, М0 рассматриваются как условия многопараметрического ветвления, то осуществляется ветвление в четыре адреса (рис. 28) относительно принуди–тельного адреса А.

Подобным же образом выполняется модификация функции С в режимах адресации по РКС и РКМ. Однако в отличие от принудительного адреса А, задаваемого непосредственно в поле адреса МИ БМУ, формирование функции С определяется по табл. 6, описывающей дополнительные возможности БМУ в плане адресации.

Первые пять мнемокодов (МНК) определяют принудительно-базовую адресацию при формировании функций С, код которой образуется путём объединения ряда битов из поля А (принудительная часть адреса) и нескольких битов В из РКС или РКМ. Например, функция АДМ трактуется как адресация по двум младшим битам В1 и В0, которые могут рассматриваться как базовые константы адреса либо как биты условий. Механика формирования функции АДМ приведена на рис. 29, где х –принудительно задаваемые разработчиком биты адреса в поле А и базовая константа или биты условий, загружаемые с шины данных (ШД) БМУ в РКС, РКМ.

Таблица 6

Функции С адресации по РКС и РКМ

МНК

Адресное поле А

Функция адреса С

Биты B7…В0 РКС (РКМ)

АДМ

х х 0 0 х х х х х х

А9,А8,А5,А4,А3.А2,А1,А0,В1,В0

х х х х х х х х

АДС

х х 0 1 х х х х х х

А9,А8,А5,А4,А3.А2,А1,А0,В3,В2

х х х х х х х х

АТР

х х 1 0 0 х х х х х

А9,А8,В2,В1,В0,А4,А3,А2,А1,А0

х х х х х х х х

АТМ

х х 1 0 1 0 х х х х

А9,А8,В3,В2,В1,В0,А3,А2,А1,А0

х х х х х х х х

АТС

х х 1 0 1 1 х х х х

А9,А8,В7,В6,В5,В4,А3,А2,А1,А0

х х х х х х х х

АБ

х х 1 1 1 0 1 х х х

А9,А8,В7,В6,В5,В4,В3,В2,В1,В0

х х х х х х х х

АПС

х х 1 1 0 1 0 х х х

А9,А8,В7,В6,В5,В4,В3,А2,А1,А0

х х х х х х х х

ПТ

х х 1 1 0 0 х х х х

А9,А8,Р7,Р6,Р5,Р4,А3,А2,А1,А0

х х х х х х х х

ПТР

х х 1 1 1 0 0 х х х

А9,А8,А2,А1,А0,Р4,Р3,Р2,Р1,Р0

х х х х х х х х

ВМП

х х 1 1 1 1 0 х х х

А9,А8, 0 1 1 1 1 В2,В1,В0

0 х х х х х х х

х х 1 1 1 1 0 х х х

А9,А8, 0 1 1 1 0 В2,В1,В0

1 1 0 1 х х х х

х х 1 1 1 1 0 х х х

А9,А8, 0 1 1 1 0 В2,В1,В0

1 1 1 0 х х х х

х х 1 1 1 1 0 х х х

А9,А8, 1 1 0 0 0 В2,В1,В0

1 1 0 0 0 х х х

х х 1 1 1 1 0 х х х

А9,А8, 1 1 0 0 1 В2,В1,В0

1 1 0 0 1 х х х

х х 1 1 1 1 0 х х х

А9,А8, 1 0 В5,В4,В3,В2,В1,В0

1 0 х х х х х х

*Вх

х х 1 1 1 1 1 х х х

А9,А8, 0 1 0 0 0 А2,А1,А0

х х х х х х х х

*Вых

х х 1 1 0 1 1 х х х

Р9,Р8,Р7,Р6,Р5,Р4,Р3,Р2,Р1,Р0

+ 0 . . . 0 А2,А1,А0

х х х х х х х х

Пусть в поле А задан код функции АДМ вида 0100101101, а содержимое РКС 10001110 рассматривается как базовая константа. Тогда функция С примет значение 1010110110 и в РАМК1, в зависимости от условий на входах модификации М1, М0, будет загружен один из возможных адресов: 1010110110 (С); 1010110111 (С+1); 1010111000 (С+2); 1010110101 (С-1). Если при том же коде функции АДМ биты В1 и В0 будут рассматриваться как условия и состояние РКС полностью не определено

100011ХХ, то возможно формирование четырёх функций С: 1010110100 (для В1,В0 = 00), 1010110101 (для В1,В0 = 01), 1010110110 (для В1,В0 = 10), 1010110111 (для В1,В0 = 11).

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

Следующие две функции ПТ и ПТР формируют функцию С по принципу относительно-принудительной адресации с автоинкрементом, где биты Р – биты

текущего адреса микрокоманды, находящиеся в рабочем РАМК1. Эти биты имеют конкретное значение, следовательно, функция С будет иметь единственное значение и может быть в дальнейшем подвергнута только автоинкрементной модификации: С; С - 1; С + 1; С +2 .

Отличие функций ПТ и ПТР состоит только в количестве используемых битов РАМК1 и размещении этих битов в конечной функции С: ПТ использует четыре средних Р7…Р4, а ПТР – пять младших Р4…Р0 разрядов текущего адреса.

Функция ВМП определяет выбор микропрограммы. Управляющий код для всех шести функций одинаков. Конкретная микропрограмма задаётся фиксированными битами в РКМ или РКС, определяющими различные страницы для различных функций. Для первых пяти функций ВМП с помощью битов В2, В1, В0 можно задать 8 начальных адресов микропрограмм, шестая функция даёт 64 начальных адреса микропрограмм. С учётом модификаций на каждой странице может быть задано три дополнительных адреса. В итоге функции ВМП (с учётом перекрытия двух из них) определяют выбор 111 микропрограмм, что позволяет разместить в УП систему команд средней микроЭВМ.

Функции Вх* и Вых* применяются соответственно для одноуровневого вызова процедур и возврата в основную микропрограмму. Символ * говорит о переключении стека РАМК – РАМК1 и РАМК2 изменяют свои индексы и назначение.

Функция Вх* обеспечивает сохранение в резервном РАМК текущего адреса в качестве адреса возврата и формирование в рабочем РАМК адреса вызова процедуры, которая может начинаться в фиксированной области УП. Принудительный адрес задаётся программистом пятью битами А9, А8, А2, А1, А0, что с учётом модификации позволяет вызвать 35 процедур.

Процедура должна завершаться функцией возврата Вых*, восстанавливающей прежнее назначение и индексацию РАМК. В РАМК1 формируется адрес возврата

модифицированный с учётом битов М1, М0 и принудительного трёхразрядного приращения А. Подобная модификация позволяет получить относительное смещение от исходного адреса возврата в диапазоне от -1 до +9. Работа функций Вх* и Вых* поясняется рис. 31, где области ОМП и ПМП соответствуют размещению основной микропрограммы и подмикропрограммы.

Операции в регистре команд определяются битами Р1, Р0 микроинструкции БМУ в соответствии с табл. 7.

Таблица 7

Операции регистра команд БМУ

Р1,Р0

Операция

Примечание

00

РК:= (РК)

Хранение

01

РКС, РКМ:= (ШД15-0)

Буферы РК в режиме ввода

10

ШД7-0:= (РКМ)

ШД = 0…0х…х, считывается младший байт РК в младшие разряды ШД

11

ШД15-8:= (РКМ)

ШД = х…х0…0, считывается младший байт РК в старшие разряды ШД

Синхронизация БМУ двухтактная: по синхроимпульсу СИ1 в регистре микроинструкции (РМИ) фиксируется МИ БМУ, поступающая по шине ШМИ; по СИ2 – формируется адрес микрокоманды следующего цикла и защёлкивается в РАМК1.