Разделы:


Best links:

Архитектура арифметического процессора

     Схема АП (рис. 2.2) включает два основных блока - сопряжения с шиной (БСШ) и исполнительный ИБ. Эти блоки, как и в ЦП, осуществляют конвейерный принцип обработки данных, при котором извлечение команд и операндов выполняется параллельно с вычислениями. Команды и операнды по мультиплексированной шине адреса/данных (ША/Д) ВМ, предварительно извлекаются из памяти и размещаются в соответствующих очередях. АП может работать только в паре с центральным процессором, который в этом случае должен быть установлен в максимальный режим. Когда процессоры включены совместно, команды передаваемые по ША/Д, поступают на оба процессора одновременно. В то время как ЦП выполняет команды, АП просто «прослеживает» их прохождение, не выполняя никаких действий.

ImageImageю

Рис. 2.2. Архитектура арифметического процессора Intel 8087

Это пассивное «прослеживание» продолжается до тех пор, пока в потоке команд не встречается команда ESC, которая предназначена для АП. С момента поступления команды ESC арифметический процессор начинает анализировать состояние очереди команд ЦП по сигналам QS1, QS0 (табл. 2.2). Поскольку команды в ЦП хранятся в очереди байтов команд, точный момент начала выполнения команды ESC определяется по концу выполнения предыдущей команды в очереди.

Таблица 2.2

Состояние очереди команд

Действия с очередью команд в ЦП

QS0

QS1

0

0

Очередь не изменилась

0

1

Первый байт команды взят из очереди

1

0

Очередь реинициализирована

1

1

Очередной байт команды взят из очереди

Как только сопроцессор определит, что последний байт предыдущей (перед ЕSС) команды взят из очереди, он приступает к выполнению своей команды. Команда ESC, как было отмечено в 1.9, обычно предваряется командой WAIT, которая переводит ЦП в состояние ожидания. Время нахождения центрального процессора в состоянии ожидания определяется активным сигналом на входе TEST. Арифметический процессор, приступая к выполнению команды, выставляет на выходе BUSY (занят) единичный сигнал, который подается на вход TEST центрального процессора и задерживает его в состоянии ожидания на время выполнения команды.

предыдущаяследующая