stringtranslate.com

Расширения для ускорения мультимедиа

Multimedia Acceleration eXtensions или MAX — это расширения набора инструкций для архитектуры набора инструкций Hewlett-Packard PA-RISC (ISA). MAX был разработан для повышения производительности мультимедийных приложений, которые становились все более распространенными в 1990-х годах.

Инструкции MAX работают с 32- или 64-битными типами данных SIMD, состоящими из нескольких 16-битных целых чисел, упакованных в регистры общего назначения . Доступные функции включают сложения, вычитания и сдвиги.

Первая версия, MAX-1 , была для 32-битной PA-RISC 1.1 ISA. Вторая версия, MAX-2 , была для 64-битной PA-RISC 2.0 ISA.

Известность

Подход примечателен тем, что набор инструкций намного меньше, чем в других мультимедийных ЦП, а также более универсален. Небольшой набор и простота инструкций снижают текущие затраты на электронику, а также затраты и сложность конструкции. Универсальный характер инструкций увеличивает их общую ценность. Эти инструкции требуют лишь небольших изменений в арифметико-логическом блоке ЦП. Подобный подход к проектированию обещает стать успешной моделью для мультимедийных инструкций других конструкций ЦП. [1] [2] [3] Набор также мал, поскольку ЦП уже включал мощные инструкции сдвига и битовой манипуляции: «сдвиг пары», которая сдвигает пару регистров, «извлечение» и «депозит» битовых полей и все общие побитовые логические операции (и, или, исключающее ИЛИ и т. д.). [2]

Этот набор мультимедийных инструкций также доказал свою производительность. В 1996 году 64-битные инструкции "MAX-2" позволили в реальном времени обрабатывать видео MPEG-1 и MPEG-2 , увеличив при этом площадь RISC-процессора всего на 0,2%. [1]

Реализации

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

Основной подход к арифметике в MAX-2 заключается в «прерывании переносов» между 16-битными подсловами и выборе между модульной арифметикой, знаковым и беззнаковым насыщением. Это требует лишь небольших изменений в арифметико-логическом блоке. [2]

МАКС-1

МАКС-2

Инструкции MAX-2 — это инструкции «регистр-регистр», которые работают с несколькими целыми числами в 64-битных количествах. Все они имеют задержку в один цикл в микропроцессоре PA-8000 и его производных. Доступ к памяти осуществляется через стандартные 64-битные загрузки и сохранения.

Инструкции "MIX" и "PERMH" являются заметным новшеством, поскольку они переставляют слова в наборе регистров без доступа к памяти. Это может существенно ускорить многие операции. [2]

Ссылки

  1. ^ abc Lee, Ruby B. (август 1996 г.). "Subword Parallelism with MAX-2" (PDF) . IEEE Micro . 16 (4): 51–59. doi :10.1109/40.526925 . Получено 21 сентября 2014 г. .
  2. ^ abcdefg Ли, Руби ; Хак, Джерри (25 февраля 1996 г.). "64-битные и мультимедийные расширения в архитектуре PA-RISC 2.0". COMPCON '96. Технологии для информационной супермагистрали Digest of Papers . стр. 152–160. doi :10.1109/CMPCON.1996.501762. ISBN 0-8186-7414-8. S2CID  13081443.
  3. ^ Ли, Руби Б. (апрель 1995 г.). «Ускорение мультимедиа с помощью усовершенствованных микропроцессоров» (PDF) . IEEE Micro . 15 (2): 22–32. doi :10.1109/40.372347 . Получено 21 сентября 2014 г. .