Гибридная архитектура

RISC

Термин RISC впервые был использован Д.Паттерсоном и Д.Дитцелем в 1980 году. Основная идея заключается в том, что список команд вычислительной машины ограничивается до некоторого значения. Это наиболее часто используемые простые команды. Эти команды оперируют с данными, расположенными в регистрах процессора. Обращение к памяти допускается только с помощью специальных команд чтения/записи. Впервые элементы RICS появились в CDC660 и СуперЭВМ компании Cray Research. Современные RISC архитектуры – Alpha (DEC) и серия PA (Hewlett Packard), Power PC.

Основные характерные черты:

1. Выполнение всех или 75% процентов команд за один машинный цикл – это время, в течение которого производится выборка двух операндов из памяти, обработка их в АЛУ и запоминание результатов в регистре.

2. Одинаковая длина команд (а точнее однословная – 16 бит = длине слова и ширине шины данных).

3. Ограниченное число команд (не более 128).

4. Малое число форматов команд (не более 4).

5. Малое число способов адресации (2-3).

6. Осуществление доступа к памяти посредством специальных команд чтение/записи (минимизация обращения к внешней памяти)

7. Все команды (за исключением чтения/записи) используют внутрипроцессорные, межрегистровые пересылки.

8. Устройство управления реализовано на жёсткой логике.

9. Большой файл регистров общего назначения. Количество регистров общего назначения может достигать 512 (от 32 до 512).

10. Использование механизмов перекрывающихся регистровых окон.

11. Несовместимость с CISC архитектурой.

 

Основные достоинства: УУ занимают всего 6-10% площади кристалла, тем самым освобождая места для других узлов процессора или других устройств (кэш). Унифицированный набор команд. Ориентация на потоковую конвейерную обработку. Унификация размера команд и длительности их выполнения.

Все эти факторы положительно сказываются на быстродействии процессора. Быстродействие RISC больше, чем CISC.

Недостатки: на выполнение ряда функций приходится тратить несколько команд RICS вместо одной CISC. Это удлиняет код программы примерно на 30% (по сравнению с CISC), а так же увеличивает загрузку памяти и увеличивает трафик между оперативной памятью и процессором.

 

Называется она CISC архитектура на основе RISC ядра.

В процессор встраивается аппаратный транслятор, который преобразует длинные x86 команды в короткие RISC команды (ROP).

На примере процессора К5, К6, К7 (AMD):

К5

  …
Команда x86
Команда x86
Команда x86
Дешифратор команд
ROP
ROP
ROP
ROP
Исполнительный блок 1
Исполнительный блок 6
1-4 ROP

Х86 команды поступают на дешифратор или аппаратный транслятор. Дешифратор каждую команду х86 превращает в одну-четыре ROP. Хранятся в буфере, а затем назначаются на исполнение одного из исполнительных устройств. Исполнительное устройство – это АЛУ какого-то вида. В К5 их 6.

 

К6

  ….
КЭШ (L1)
Двойной декодер команд
Буфер-планировщик (24ROP)
Устройство управления команд
ИБ1
ИБ7
1-6 ROP

Кэш команд первого уровня. Буфер планировщика в динамике анализирует и изменяет выбранную для исполнения последовательность команд, обеспечивая максимальную загрузку исполнительных устройств. Одновременно может обрабатываться до 6 ROP в следующих узлах ядра: узел сохранения, узел загрузки, два целочисленных АЛУ, узел перехода, блок MMX, блок операции с плавающей точкой или запятой.

Процессор К7 (Athlon AMD) может декодировать х86 команд в 6 ROP операции, после декодирования ROP попадают в буфер, который одновременно содержит 72 ROP (в три раза больше) и выдаёт 9 ROP на 9 исполнительных блоков.