Рабочий цикл процессора

Функционирование процессора состоит из повторяющихся рабочих циклов, каждый из которых соответствует выполнению либо целой команды, либо её части. Завершив рабочий цикл процессор переходит к выполнению следующего рабочего цикла. Предположим, что процессор может выполнять четыре типа команд:

- основные (арифметические, логические, пересылочные операции);

- передачи управления;

- ввода-вывода;

- системные (установка маски прерываний, состояния процессора и др.).

Рассмотрим рабочий цикл, выполняющийся по командно (существуют рабочие циклы, выполняющиеся по машинным циклам).

Рабочий цикл начинается (см. рисунок 4.6) с определения состояния процессора - СЧЕТ или ОЖИДАНИЕ. Процессор никаких действий в состоянии ожидания не выполняет и может выйти из него только при активизации некоторых внешних сигналов, например, запроса на прерывание ЗПр.

В состоянии СЧЕТ (в этом режиме происходит последовательная выборка и выполнение команд), если сигнал ЗПр отсутствует, то последовательно выполняются этапы рабочего цикла: формирование исполнительных адресов операндов, выборка операндов, выполнение операций и запоминание результата. После этого процессор переходит к выборке следующей команды и цикл повторяется. Если поступил запрос прерывания, процессор сбрасывает триггер прерывания ТПр, запоминает свое текущее состояние (например, путем записи адреса следующей команды в стек) и переходит к выполнению подпрограммы обработки прерывания путем передачи адреса подпрограммы в СчК.

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

При выполнении команд передачи управления проверяется условие перехода по вышеуказанным признакам для команд условных переходов. Если условие перехода не выполняется, то выбирается следующая по порядку команда по подвинутому адресу, хранящемуся в СчК. Если условие выполняется, то в СчК заносится адрес перехода.

 

Рисунок 4.6- Рабочий цикл процессора

 

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