Основные характерные черты RISC-архитектуры
Компьютеры с RISC (Reduced Instruction Set Computer) архитектурой содержат набор простых, часто употребляемых в программах команд. Основными являются операции типа «регистр — регистр».
Отличительными чертами архитектуры являются:
- сокращенное число команд;
- большинство команд выполняется за один машинный такт;
- постоянная длина команд;
- небольшое количество способов адресации и форматов команд;
- для простых команд нет необходимости в использовании микропрограммного управления;
- большое число регистров внутренней памяти процессора.
Основные характерные черты VLIW-архитектуры
VLIW-архитектура связана с кардинальной перестройкой всего процесса трансляции и исполнения программ. Уже на этапе подготовки программы компилятор группирует несвязанные операции в пакеты, содержимое которых строго соответствует структуре процессора.
Например, если процессор содержит 4 функционально независимых устройства , то максимум, что компилятор может «уложить» в один пакет — это четыре разнотипные операции. Сформированные пакеты операций преобразуются компилятором в командные слова, которые по сравнению с обычными инструкциями выглядят очень большими. Отсюда и название этих суперкоманд и соответствующей им архитектуры (Very Large Instruction Word — очень широкое командное слово). По идее, затраты на формирование суперкоманд должны окупаться скоростью их выполнения и простотой аппаратуры процессора, с которого снята вся «интеллектуальная» работа по поиску параллелизма несвязанных операций.
Компилятор VLIW производит статический анализ программы и создает точный план того, как процессор будет выполнять программу: указывается когда будет выполнена каждая операция, какие функциональные устройства будут работать и какие регистры будут содержать операнды.
Компилятор VLIW передает план вычисления аппаратному обеспечению, которое, в свою очередь, выполняет указанный план. Этот план позволяет VLIW использовать относительно простое аппаратное обеспечение, способное добиться высокого уровня параллелизма на уровне команд.
Однако даже при небольшом изменении начальных данных путь выполнения программы сколь угодно сильно изменяется.
Основные отличительные черты EPIC-концепции
Эта идеология направлена на то, чтобы упростить аппаратное обеспечение и, в то же время, извлечь как можно больше «скрытого параллелизма» на уровне команд, чем это можно сделать при реализации VLIW и суперскалярных стратегий, используя большую ширину «выдачи» команд и длинные (глубокие) конвейеры.
Одна из целей состояла в том, чтобы сохранить реализованный во VLIW принцип статического создания плана вычислений, но в то же время обогатить его возможностями, аналогичными возможностям суперскалярного процессора, позволяющими новой архитектуре лучше учитывать динамические факторы. EPIC предоставляет динамические механизмы на уровне аппаратуры так, что компилятор может управлять такими средствами, применяя их выборочно где это возможно. Столь широкие возможности помогают компилятору использовать правила управления этими механизмами более оптимально, чем это позволяет аппаратура.
Классификация способов организации SIMD-архитектуры
Архитектура SIMD связана с параллельной обработкой потоков данных. Возможны несколько способов построения компьютеров этого класса: матричная структура, векторно-конвейерная, технология ММХ и потоковые SIMD-расширения.
Суть матричного и векторно-конвеерного способов организации SIMD-архитектуры
Матричная структура
Имеется множество процессорных элементов, исполняющих одну и ту же команду над различными элементами матрицы, объединенных коммутатором. Основная проблема заключается в программировании обмена данными между процессорными элементами через коммутатор.
Векторно-конвейерная структура
Содержит конвейер операций, на котором обрабатываются параллельно элементы векторов и полученные результаты последовательно записываются в единую память. При этом отпадает необходимость в коммутаторе процессорных элементов.
Суть ММХ-технологии и потокового SIMD-расширения
Технология MMX
Разработана для ускорения выполнения мультимедийных и коммуникационных программ. Команды ММХ выполняют одну и ту же функцию с различными частями данных, например: 8 байт графических данных передаются в процессор как одно упакованное 64-х разрядное число и обрабатываются одной командой.
Потоковые SIMD-расширения
Реализуют новые SIMD-инструкции, оперирующие со специальными 128-битными регистрами. Каждый из этих регистров может хранить несколько упакованных целочисленных или вещественных данных. Таким образом, выполняя операцию над содержимым двух регистров под управлением команды SSE, процессор может обработать несколько пар операндов одновременно.