Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МПС2 Проектирование аппаратного и программного...doc
Скачиваний:
22
Добавлен:
02.09.2019
Размер:
1.67 Mб
Скачать

Управляющий блок

УБ предназначен для управления ходом вычислительного процесса, т. е. управления последовательностью операций. Типовая структура УБ приведена на рис. 1.4.

УБ содержит программный счетчик РС, регистр команды RGI, мультиплексор адреса MSA, управляющий автомат (УА) СА и генератор тактовых импульсов GI. Программный счетчик РС обеспечивает хранение адреса очередной команды, подлежащей выполнению. Регистр команды служит для приема и хранения команды в процессе ее исполнения. Мультиплексор адреса MSA обеспечивает коммутацию на шину адреса либо адреса команды из РС, либо адреса операнда из RGI. Управляющий автомат СА обеспечивает управление работой всего устройства. В качестве задатчика машинного времени используется генератор импульсов GI.

Работа УБ сводится к реализации цикла интерпретации команд, включающего фазы выборки и исполнения команды. На фазе выборки команды УА прежде всего формирует такой сигнал управления мультиплексором MSA, при котором на шину адреса выдается адрес очередной команды из РС. Затем УА формирует сигнал чтения памяти MEMR. В результате команда извлекается из памяти и поступает по шине данных в УБ. После этого УА генерирует сигнал CI на входе записи регистра RGI, что обеспечивает прием команды в этот регистр. Затем УА вырабатывает сигнал на выходе +1, что вызывает инкрементирование содержимого РС, подготавливая адрес очередной команды. На этом фаза выборки команды заканчивается.

Рис. 1.4. Типовая структура управляющего блока процессора

Реализация фазы исполнения зависит от типа команды. В качестве примера рассмотрим исполнение управляющей команды и операционной команды, реализующей двухместную операцию над содержимым аккумулятора и операндом из памяти с прямой адресацией.

На фазе исполнения такой операционной команды УА прежде всего формирует сигнал управления мультиплексором MSA, при котором на шину адреса выдается адрес операнда из адресного поля RGI. Далее УА формирует сигнал MEMR, что приводит к считыванию заданного операнда из памяти. После этого УА формирует последовательность КУВОП, обеспечивающую прием операнда в регистр RG ОБ, выполнение заданной операции в АЛУ и запись результатов в аккумулятор АС и регистр флагов RGF. На этом выполнение операционной команды заканчивается.

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

На фазе исполнения команды условного перехода УА прежде всего проверяет истинность заданного условия. Если фактическое состояние флага совпадает с заданным, т. е. условие истинно, УА формирует сигнал на выходе С. Этот сигнал поступает на вход параллельной записи РС, что обеспечивает запись в него адреса перехода из адресного поля команды. В результате следующей будет выбрана команда по этому адресу, что и соответствует выполнению перехода. Если же условие на переход ложно, то УА никаких действий не производит. В результате содержимое РС не изменяется, и следующей будет выбрана очередная команда в естественном порядке.

Безусловный переход является частным случаем условного перехода. На фазе исполнения команды безусловного перехода никакие флаги не анализируются, и адрес перехода из команды сразу же загружается в РС.