Multimedia Acceleration eXtensions — Википедия

Multimedia Acceleration eXtensions или MAX — набор процессорных инструкций, расширение системы команд Hewlett-Packard PA-RISC. Разработан для улучшения производительности в мультимедийных приложениях, которые начали преобладать в 1990-х годах. Команды MAX оперируют 32-х или 64-битными SIMD типами данных, состоящими из множества 16-битных значений, которые был упакованы и находились в регистрах общего назначения. Набор функциональных возможностей включал различные виды сложения, вычитания и сдвигов.

Первая версия, MAX-1, расширяла 32-битную систему команд PA-RISC 1.1. MAX-1 впервые была реализована в микропроцессоре PA-7100LC в 1994 году. Его обычно называют первым SIMD-расширением для процессорной системы команд. Вторая версия, MAX-2, расширяла 64-битную систему команд PA-RISC 2.0. Впервые была реализована в микропроцессоре PA-8000 в 1996 году.

MAX-1[править | править код]

Instruction Description
HADD Параллельное сложение по модулю
HADD,ss Параллельное сложение с насыщением со знаком
HADD,us Параллельное беззнаковое сложение с насыщением
HSUB Параллельное вычитание по модулю
HSUB,ss Параллельное вычитание с насыщением со знаком
HSUB,us Параллельное беззнаковое вычитание с насыщением
HAVE Параллельное вычисление среднего
HSHLADD Параллельный сдвиг влево и сложение с насыщением со знаком
HSHRADD Параллельный сдвиг вправо и сложение с насыщением со знаком

MAX-2[править | править код]

Команды MAX-2 выполняли операции над несколькими 64-битными целочисленным значениями. Все имели задержку в 1 такт в процессоре PA-8000 и производных от него.

Instruction Description
HADD Параллельное сложение по модулю
HADD,ss Параллельное сложение с насыщением со знаком
HADD,us Параллельное беззнаковое сложение с насыщением
HSUB Параллельное вычитание по модулю
HSUB,ss Параллельное вычитание с насыщением со знаком
HSUB,us Параллельное беззнаковое вычитание с насыщением
HSHLADD Параллельный сдвиг влево и сложение с насыщением со знаком
HSHRADD Параллельный сдвиг вправо и сложение с насыщением со знаком
HAVG Параллельное вычисление среднего
HSHR Параллельный сдвиг вправо со знаком
HSHR,u Параллельный сдвиг вправо без знака
HSHL Параллельный сдвиг влево
MIXH Смешивание
MIXW Смешивание
PERMH Перестановка

Ссылки[править | править код]