Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава 29. Методы повышения производительности процессоров.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
318.98 Кб
Скачать

Глава 29. Методы повышения производительности процессоров

29.1. Основные подсистемы компьютера

Упрощенная блок-схема компьютера и процессора представлена на рис. 29.1.

Рис. 29.1. Структура компьютера и процессора

29.2. Последовательность действий процессора при выполнении команд

При обработке машинной команды процессор выполняет следующие операции:

  • Чтение команды процессор считывает команду из оперативной памяти.

  • Дешифрация команды, — процессор расшифровывает команду и опре­деляет, какие действия ему предстоит выполнить.

  • Чтение данных — читаются данные из регистров или оперативной памяти.

  • Выполнение — выполняется заданная в команде операция над операндами.

  • Запись результата операции — результат операции записывается в регистр или оперативную память.

  • Подготовка адреса следующей команды - изменение содержимого счетчика команд.

  • Прерывание.

На первом шаге в фазе «Чтение команды», называемой также "Выборка из подсистемы памяти очередной команды", из ячейки оперативной памяти, адрес которой содержится в счетчике команд (регистре номера команды), извлекается команда и помещается в соответствующий регистр (буфер) для последующего декодирования. Содержимое регистра счетчика команд обычно определяет, какая следующая команда будет выбираться. Первоначально предполагается, что команды программы при последовательном алгоритме размещаются в ячейках оперативной памяти с последовательными адресами. Эта последовательность размещения команд интуитивно понимается как порядок написания команд программистом при формулировании им алгоритма решаемой задачи с помощью предоставленного набора команд процессора. Поэтому для определения адреса следующей команды процессор увеличивает содержимое счетчика команд на количество байт выполненной команды, или заменяет содержимое адресом перехода в случае выполнения команд условного или безусловного перехода.

На следующем шаге, называемом "Дешифрация" команда расшифровывается (декодируется).

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

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

В случае, когда один из операндов (или результат операции) задан в оперативной памяти, то выполняется фаза «Чтение данных» из оперативной памяти. Для этого в соответствии с заданным способом адресации формируется адрес операнда, который посылается в подсистему памяти. В ответ из подсистемы памяти через некоторое время процессор получает операнд. После этого фазе «Выполнение» выполняется заданная операция над операндами.

В фазе «Запись результата операции» результат операции заносится по заданному адресу.

После записи результата операции выполняется фаза «Подготовка адреса следующей команды» - содержимое счетчика команд увеличивается на величину, равную числу байтов выполняемой команды, т.е. готовится адрес следующей команды.

В завершающей фазе выполнения команды проверяется наличие запросов на прерывание от внешних источников. При наличии запроса на прерывание от внешнего источника и при разрешении выполняется фаза «Прерывание». Анализируется тип запроса на прерывание, определяется адрес программы обработки этого прерывания, и управление передается программе обслуживания запроса на прерывание.