Регистровая архитектура

В машинах данного типа процессор включает в себя массив регистров общего назначения (РОН). Разрядность регистров обычно совпадает с размером машинного слова. К любому регистру можно обратиться, указав его номер. Количество РОН в архитектурах типа CISC обычно невелико (от 8 до 32), и для представления номера конкретного регистра необходимо не более пяти разрядов, благодаря чему в адресной части команд обработки допустимо одновременно указать номера двух, а зачастую и трех регистров (двух регистров операндов и регистра результата). RISC-архитектура предполагает использование существенно большего числа РОН (до нескольких сотен), однако типичная для таких вычислительных машин длина команды (обычно 32 разряда) позволяет определить в команде до трех регистров.

Регистровая архитектура допускает расположение операндов в одной из двух запоминающих сред: основной памяти или регистрах. С учетом возможного размещения операндов в рамках регистровых архитектур системы команд выделяют три подвида команд обработки:

• регистр-регистр;

• регистр-память;

• память-память.

В варианте «регистр-регистр» операнды могут находиться только в регистрах. В них же засылается и результат. Подтип «регистр-память» предполагает, что один из операндов размещается в регистре, а второй в основной памяти. Результат обычно замещает один из операндов. В командах типа «память-память» оба операнда хранятся в основной памяти. Результат заносится в память. Каждому из вариантов свойственны свои достоинства и недостатки (табл. 2.15).

Таблица 2.15. Сравнительная оценка вариантов размещения операндов

Вариант Достоинства Недостатки
Регистр-регистр (0, 3) Простота реализации; Фиксированная длина команд; Простая модель формирования объектного кода при компиляции программ; Возможность выполнения всех команд за одинаковое количество тактов Большая длина объектного кода; Из-за фиксированной длины команд часть разрядов в коротких командах не используется
Регистр-память (1, 2) Данные могут быть доступны без загрузки в регистры процессора; Простота кодирования команд; Объектный код получается достаточно компактным Потеря одного из операндов при записи результата; Длинное поле адреса памяти в коде команды сокращает место под номер регистра, что ограничивает общее число РОН; CPI зависит от места размещения операнда
Память-память (3, 3) Компактность объектного кода; Малая потребность в регистрах для хранения промежуточных данных Разнообразие форматов команд и времени их исполнения; Низкое быстродействие из-за обращения к памяти

В выражениях вида , приведенных в первом столбце таблицы, m означает количество операндов, хранящихся в основной памяти, а n – общее число операндов в команде арифметической или логической обработки.

Формат «регистр-регистр» является основным в вычислительных машинах типа RISC. Команды формата «регистр-память» характерны для CISC-машин. Формат «память-память» считается неэффективным, хотя и остается в наиболее сложных моделях машин класса CISC.

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

Операции загрузки регистров из памяти и сохранения содержимого регистров в памяти идентичны таким же операциям с аккумулятором. Отличие состоит в этапе выбора нужного регистра, обеспечиваемого соответствующими селекторами.

Выполнение операции в АЛУ включает в себя:

• определение местоположения первого операнда (регистр или память);

• выбор регистра первого операнда или считывание первого операнда из памяти;

• определение местоположения второго операнда (регистр или память);

• выбор регистра второго операнда или считывание второго операнда из памяти;

• подачу на вход АЛУ операндов и выполнение операции;

• выбор регистра результата или ячейки памяти и занесение результата операции из АЛУ.

Рис. 2.51. Архитектура вычислительной машины на базе регистров общего назначения

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

К достоинствам регистровых архитектур системы команд следует отнести: компактность получаемого кода, высокую скорость вычислений за счет замены обращений к основной памяти на обращения к быстрым регистрам. С другой стороны, данная архитектура требует более длинных инструкций по сравнению с аккумуляторной архитектурой.

В наши дни этот вид архитектуры системы команд является преобладающим, в частности такую архитектуру имеют современные персональные компьютеры.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: