Экономическая информатика-стр.63

Основные функции микропроцессора - выполнение вычислений, пересылка данных между внутренними регистрами, управление ходом вычислительного процесса. Микропроцессор непосредственно взаимодействует с оперативной памятью и контроллерами системной платы. Главными носителями информации внутри процессора служат регистры.

В состав микропроцессора входят АЛУ, устройство управления, внутренние регистры. Устройство управления вырабатывает управляющие сигналы для выполнения команд, АЛУ - арифметические и логические операции над данными. Оно может состоять из нескольких блоков, например блока обработки целых чисел и блока обработки чисел с плавающей точкой.

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

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