Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОргЭВМ 2 курс 1 сем / comput_org_2018 / Теория / Уч_пос_АрхКомп_2017.docx
Скачиваний:
47
Добавлен:
01.09.2020
Размер:
626.15 Кб
Скачать
  1. Управление выполнением команд в компьютерах.

Пример: Пусть требуется описать этапы цикла процессора при реализации команды Аdd ax, Mem1, которая размещается в памяти в двух 16-битных словах в виде

КОП

Add

АХ, режим адресации 2-го операнда

(K+0

15 8 7 0

Mem 1

(K+2

Опишем на уровне элементарных операций основные этапы выполнения команды, применительно к структурной схеме процессора с памятью, показанной на рис. 3.1.

  1. Выборка и дешифрация первого слова команды.

ПСч  РАП ; переслать значение программного счетчика в регистр адреса контроллера памяти

Код “Чт”  КонтрЗУ ; загрузить код операции «Чтение» в контроллер памяти

“0”  ГОТЗУ, пуск ЗУ ; сбросить флаг «Готовность ЗУ», запустить операцию в памяти

Проверить условие:

ГОТЗУ = 1

Если условие «ложно», то ожидать завершения операции в памяти, иначе продолжить дальше.

РДП  РгКом ; переслать содержимое регистра данных контроллера памяти в регистр команд процессора;

(ПСч)+2  (ПСч) ; подготовить в ПСч адрес следующего слова команды;

РгКом.КОПДешКОП ; поле КОП (код опреации) регистра команд подать на вход дешифратора операций;

РгКом.РАДеш.РA ; поле РА (режим адресации) регистра команд подать на вход дешифратора режимов адресации.

  1.  Выборка второго слова команды.

ПСч  РАП | Эту последовательность операций

Код “ЧТ”  КонтрЗУ | обозначим в дальнейшем

“0”  ГОТЗУ, пуск ЗУ | как “ЧТ”ЗУ

Ожидание ГОТЗУ = 1 |

РДП  БуфРг ; переслать содержимое регистра данных контроллера памяти в БуфРг (буферный регистр процессора)

ПСч + 2  ПСч ; подготовить в ПСч адрес следующей команды.

3. Выборка операнда из Mem1.

БуфРг  РАП

“ЧТ”ЗУ

РДП  РгBх АЛУ ; переслать содержимое регистра данных контроллера памяти в РгBх – входной регистр АЛУ.

4. Исполнение операции.

РгAX +РгBх  РгАХ ; суммирование аккумулятора РгАХ и РгBх АЛУ

Учет переносов

{Qi}  РгССП ; установка флажков в регистре Слова Состояния Процессора по результату завершения операции.

Для описания элементарных операций, составляющих процесс выполнения команды, будем использовать язык межрегистровых передач (ЯМРП) [6], любой оператор которого описывается в следующем виде:

<ОП_ЯМРП> : : = [ метка ] условие : список _ действий

где: условие – булевское выражение, содержащее временную привязку списка действий к такту процессора; список действий – набор микроопераций, выполняемых параллельно в данном такте; микрооперация – действие, выполняемое аппаратными средствами за один такт генератора.

Совокупность микроопераций, выполняемых за один такт, называют микрокомандой.

Последовательность микрокоманд, реализующих всю команду, называют микропрограммой.

Примеры описания на языке МРП элементарных операций, использовавшихся выше при реализации этапов выполнения команды, приведены в табл. 4.1

Таблица 4.1.

Выполняемые операции

Описание операций на ЯМРП

1. ПCч  РАП

ВЫБК.& ГОТЗУ & Т1: ПСч  ША (У1)

ША  РАП (У2)

2. Код “Чт.”  Контр. ЗУ

0  ГОТЗУ

ВЫБК.& ГОТЗУ & Т2: “Чт”  ШУ (УЗ)

ШУ  РгУ КонтрЗУ (У4)

“0”  РгСостКонтрЗУ.ГОТЗУ (У5)

3. РДП  Рг ком.

ПСч + 2  ПСч

Рг Ком. КОП  ДешКОП

Рг Ком.РежА  ДешРА

ВЫБК.& ГОТЗУ & Т3: РДП  ШД (У6)

ШД  Рг Ком. (У7)

ПСч + 2  ПСч. (У8)

Рг Ком.КОП  ДешКОП (У9)

Рг Ком.РежА  ДешРА (У10)

В табл. 4.1, наряду с использовавшимися выше, применяются обозначения: ВЫБК – этап выборки команды, Тi – i-й такт генератора, Уi – i-й сигнал управления, ША – шина адреса, ШУ – шина управления, ШД – шина данных.

Для формирования сигналов Уi, управляющих выполнением элементарных операций в процессорах, используются два основных способа:

  1. Аппаратный, реализуемый на основе жесткой логики (Wired Logic).

  2. Микропрограммный, реализуемый на основе программируемой логики (Stored /Programmed Logic).