- •Лекция 3. Архитектура системы команд. Cisc и risc архитектуры процессоров
- •Многоуровневая компьютерная организация
- •Многоуровневая компьютерная организация
- •Организация risc мп dec Alpha 21x64
- •Структура процессора Alpha 21064
- •Особенности архитектуры
- •Микропроцессор Alpha 21164
- •Стековая архитектура
- •3D станции;
- •Развитие архитектур современных мп
- •Регистровая архитектура
- •Архитектура с выделенным доступом к памяти
Регистровая архитектура
Третье поколение вычислительной техники (1963–1972) ознаменовалось переходом от дискретных полупроводниковых элементов к интегральным микросхемам, что обусловило скачок производительности. Зарождаются принципы конвейеризации и суперскалярности (принципы мелкозернистого параллелизма). Появляются многозадачные ОС. Архитектура системы команд (ISA) сильно развивается, предоставляя программистам более развитые команды. Такую ISA впоследствии назовут CISC.
В машинах с регистровой архитектурой процессор включает в себя массив регистров (регистровый файл), известных как регистры общего назначения (РОН). Эти регистры, в каком-то смысле, можно рассматривать как явно управляемый кэш для хранения недавно использовавшихся данных.
Размер регистров обычно фиксирован и совпадает с размером машинного слова. К любому регистру можно обратиться, указав его номер. Количество РОН в архитектурах типа CISC обычно невелико (от 8 до 32), и для представления номера конкретного регистра необходимо не более пяти разрядов, благодаря чему в адресной части команд обработки допустимо одновременно указать номера двух, а зачастую и трех регистров (двух регистров операндов и регистра результата). RISC-архитектура предполагает использование существенно большего числа РОН (до нескольких сотен), однако типичная для таких ВМ длина команды (обычно 32 разряда) позволяет определить в команде до трех регистров.
Регистровая архитектура допускает расположение операндов в одной из двух запоминающих сред: основной памяти или регистрах. С учетом возможного размещения операндов в рамках регистровых АСК выделяют три подвида команд обработки:
регистр-регистр;
регистр-память;
память-память.
В варианте «регистр-регистр» операнды могут находиться только в регистрах. В них же засылается и результат. Подтип «регистр-память» предполагает, что один из операндов размещается в регистре, а второй в основной памяти. Результат обычно замещает один из операндов. В командах типа «память-память» оба операнда хранятся в основной памяти.
Вариант |
Достоинства |
Недостатки |
Регистр-регистр |
Простота реализации, фиксированная длина команд, простая модель формирования объектного кода при компиляции программ, возможность выполнения всех команд за одинаковое количество тактов |
Большая длина объектного кода, из-за фиксированной длины команд часть разрядов в коротких командах не используется |
Регистр-память |
Данные могут быть доступны без загрузки в регистры процессора, простота кодирования команд, объектный код получается достаточно компактным |
Потеря одного из операндов при записи результата, длинное поле адреса памяти в коде команды сокращает место под помер регистра, что ограничивает общее число РОН. СРI зависит от места размещения операнда |
Память-память |
Компактность объектного кода, малая потребность в регистрах для хранения промежуточных данных |
Разнообразие форматов команд и времени их исполнения, низкое быстродействие из-за обращения к памяти |
Вариант «регистр-регистр» является основным в вычислительных машинах типа RISC. Команды типа «регистр-память» характерны для CISC-машин. Наконец, вариант «память-память» считается неэффективным, хотя и остается в наиболее сложных моделях машин класса CISC.
К достоинствам регистровых АСК следует отнести: компактность получаемого кода, высокую скорость вычислений за счет замены обращений к основной памяти на обращения к быстрым регистрам. С другой стороны, данная архитектура требует более длинных инструкций по сравнению с аккумуляторной архитектурой. В наши дни этот вид архитектуры системы команд является преобладающим.
