Основные стадии выполнения команд
Процесс выполнения команды состоит из двух этапов: выборка и выполнение. Цикл процессора – цикл выборки и выполнения команды. Выборка начинается со считывания из счетчика команд номера ячейки ОЗУ, содержащей код команды. После считывания содержимое счетчика команд сразу увеличивается на 1. Номер ячейки ОЗУ передается через регистр адреса памяти и адресную шину в дешифратор ОЗУ. Дешифратор ОЗУ выбирает ячейку ОЗУ, содержащую код команды. Код команды считывается из ОЗУ и через шину данных передается в регистр данных памяти. Из регистра данных памяти код команды передается в регистр команд, где он хранится до конца выполнения команды, и передается в АЛУ. АЛУ анализирует код команды и, если не нужно дополнительного обращения к памяти, переходит к выполнению. Если же нужно дополнительное обращение к памяти, то МП переходит ко второму машинному циклу, который также начинается с выборки. МП запрашивает в ОЗУ дополнительные данные и выполняет команды. Команды могут выполняться за 1 или несколько машинных циклов. В каждом машинном цикле происходит только одно обращение к памяти. Выполнение команды происходит под управлением сигналов, вырабатываемых устройством управления. При выполнении команды АЛУ взаимодействует с РОН. РОН используются для кратковременного хранения операндов и результатов. Затраты времени на выполнение одной команды можно определить, умножая число тактов синхронизации, необходимых для выполнения команды, на период синхронизации. Это время можно выразить в виде суммы базового времени выполнения (которое зависит от команды и режима адресации) и времени вычисления эффективного адреса, если привлекается операнд из памяти. Базовое время выполнения предполагает, что выполняемая команда уже выбрана и находится в очереди команд. В противном случае требуется учесть дополнительные такты синхронизации, необходимые для выборки команды.
|