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 году.
Instruction | Description |
---|---|
HADD | Параллельное сложение по модулю |
HADD,ss | Параллельное сложение с насыщением со знаком |
HADD,us | Параллельное беззнаковое сложение с насыщением |
HSUB | Параллельное вычитание по модулю |
HSUB,ss | Параллельное вычитание с насыщением со знаком |
HSUB,us | Параллельное беззнаковое вычитание с насыщением |
HAVE | Параллельное вычисление среднего |
HSHLADD | Параллельный сдвиг влево и сложение с насыщением со знаком |
HSHRADD | Параллельный сдвиг вправо и сложение с насыщением со знаком |
Команды 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 | Перестановка |