Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
A_K_2-2.doc
Скачиваний:
11
Добавлен:
18.11.2019
Размер:
478 Кб
Скачать
☆

2.7 Команды sse и 3Dnow!

Основное отличие новой технологии «ММХ-2», так называемое, потоковое расширение – SSE (Streaming SIMD Extensions), получившей официальное название «Новый набор инструкций KATMAI» – KNI (Katmai New Instruction), – использование параллельных вычислений над числами с плавающей запятой одинарной точности (SIMD-FP, Single Instruction Multiple Data –– Floating Point). В добавление к 57 ММХ-командам процессор PЕNTIUM-3 (более раннее название – KATMAI) имеет еще 70 команд, ориентированных на SIMD-FP (направленных на обработку 3D-приложений), а также дополнительные целочисленные инструкции с регистрами ММХ и команды управления кэшированием. Добавлены специализированные команды для ускорения трансформации трехмерных объектов, эффектов освещения, атмосферных эффектов и др.

В архитектуру процессора PENTIUM-3 (1999 г.) добавлены восемь новых 128-ми битовых регистра ХММ0…ХММ7 (eXtended MultiMedia) и 32-х битовый регистр состояния-управления MXCSR для одновременной обработки четырех чисел с плавающей запятой одинарной точности (4 * 32 = 128 бит). Это позволяет использовать одновременно либо обработку вещественных чисел в блоке SIMD-FP и целых – в ММХ, либо SIMD-FP и основной блок с плавающей запятой двойной точности.

Расширение 3Dnow!, введенное фирмой AMD в процессорах К6-2 (1998 г.), расширяет возможности ММХ. Оно позволяет оперировать с новым типом данных – парой упакованных чисел в формате с плавающей точкой. Эти числа занимают по 2 * 32 бита в 64-х битовых регистрах ММХ.

Процессор К6-2 (и последующие процессоры фирмы AMD) имеет ДВА ИСПОЛНИТЕЛЬНЫХ БЛОКА, которые способны одновременно выполнять операции с плавающей точкой над своими регистрами. Каждая такая операция занимает всего 2 такта, операции полностью конвейеризуются.

В систему команд добавлена 21 новая инструкция, большая часть которых предназначена для обработки упакованных чисел с плавающей точкой. Имеется и новая целочисленная ММХ-инструкция усреднения восьми пар 8-ми битовых чисел, предназначенная для декодеров MPEG-2.

Технология 3Dnow! дает заметный результат при обработке графики, хотя не претендует на вытеснение графических ускорителей, а призвана служить их мощным дополнением. При этом сохраняется программная совместимость с прежними процессорами и операционными системами (поскольку регистры ММХ отображаются на регистры FPU, для них работают традиционные механизмы сохранения контекста в многозадачных ОС).

Расширение 3Dnow! работает с упакованными целочисленными форматами ММХ, а также с упакованными данными в FP-формате одинарной точности. В случае выхода результата за границы представимых величин в FP-формате возвращаемый результат соответствует граничным представимым числам (не бесконечностям), т.е. FP-арифметика выполняется с насыщением. В случае исчезновения значащих разрядов – результат обнуляется.

Округление результатов операции выполняется всегда только в сторону ближайшего числа. В инструкциях преобразования целочисленных форматов в FP и обратно округление выполняется в сторону нуля (усечение).

В процессорах Athlon набор инструкций 3Dnow! был дополнен. Появилось 5 новых инструкций для сигнальных процессоров (DSP), работающими с упакованными FP-числами. Еще 19 инструкций расширяют набор инструкций ММХ, а также служат для управления кэшированием.

В процессорах Athlon-МР (2001 г.) добавлен еще и полный набор инструкций SSE фирмы INTEL.

Расширение SSE-2. В новом процессоре PENTIUM-4 (2000 г.) основные нововведения направлены на ускорение обработки потоковых данных, что обеспечивает максимальную производительность при обработке видео, графических изображений, работе с мультимедиа и в других сложных задачах. Поток в данном контексте подразумевает, что с его данными должны выполняться однотипные операции. Кроме того, данные, уже прошедшие обработку, в дальнейшем этим вычислительным процессом использоваться не будут и ими не следует засорять КЭШ.

Добавлены дополнительные 144 команды (SSE-2), ускоряющие работу широкого спектра потоковых ресурсоемких приложений.

В процессоре PENTIUM-4 добавлены новые форматы данных:

  • упакованная пара чисел с плавающей точкой двойной точности (2 * 64 = 128 бит);

  • упакованные целые числа: 16 байт (16 * 8 = 128 бит), 8 слов (8 * 16 = 128 бит), 4 двойных слова (4 * 32 = 128 бит) и 2 счетверенных слова (2 * 64 = 128 бит).

В процессор введены новые команды целочисленной арифметики SIMD – 128-ми разрядные для регистров ХММ и такие же 64-х разрядные для регистров ММХ; ряд старых инструкций ММХ распространили и на ХММ (в 128-ми разрядном варианте); добавлены инструкции преобразования для новых форматов данных. Кроме того, расширена поддержка управлением кэшированием и порядком исполнения операций с памятью.

Расширение SSE-3. В процессор PENTIUM-4 на ядре PRESCOTТ (который появился в конце 2003 г.) добавлены еще 13 новых команд SIMD-FP, получившие название SSE-3.

Расширение SSE-4. В процессоре CORE-i7 в 2007 г. появились дополнительные 7 команд SSE-4.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]