Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 77

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 71 72 73 74 75 76 < 77 > 78 79 80 81 82 83 .. 528 >> Следующая

скорость выполнения операций преобразования изображений и звуковых
сигналов. Процессоры, поддерживающие технологию ММХ, имеют расширенный
набор команд, обрабатывающих данные, представленные в форматах
упакованных чисел. В процессоре Pentium III метод обработки данных по
принципу SIMD получил дальнейшее развитие. Расширенные возможности
процессора Pentium III объединены под термином Streaming SIMD Extension
(SSE) - "потоковое SIMD-расширение". В этих процессорах реализована
технолотя SSE, обеспечивающая обработку потока данных, представленных в
формате с плавающей точкой, по принципу SIMD. Кроме того, в процессорах
Pentium III введены дополнительные команды, расширяющие возможности ММХ-
технопогии. Современные модели процессоров семейства Р6 поддерживают
технологии ММХ и SSE. Чтобы определить, реализует ли данный процессор
технологию ММХ и расширение SSE, следует воспользоваться командой CPUID.
Ниже дается перечень MMX-команд, разбитых по функциональным группам.
Команды, помеченные символом *, выполняются только процессорами,
реализующими SSE-расширение.
Команды пересылки данных
MOVD - Пересылка 32-разрядных данных MOVQ - Пересылка 64-разрядных данных
PEXTRW- Пересыпка слова из MMX-регистра в регистр общего назначения
PINSRW'- Пересылка слова из регистра общего назначения в ММХ-регистр
PMOVMSKB'- Пересыпка знаковых битов из MMX-регистра в регистр общего
назначения EMMS - Пересылка числа FFFFh в регистр тегов TW (освобождение
ММХ-регистров)
Команды преобразования PACKSS[WB,DW] - Упаковка со знаковым насыщением
PACKUSWB - Упаковка с беззнаковым насыщением PUNPCKH[BW,WD,DQ] -
Распаковка из старших половин PUNPCKL[BW,WD,DQ] - Распаковка из младших
половин PSHUFW'- Переупорядочивание слов
Арифметические команды
PADD[B,W,D] - Сложение с циклическим переносом PSUB[B,W,D] - Вычитание с
циклическим переносом PADDS[B,W] - Знаковое сложение с насыщением
PSUBS[B,W] - Знаковое вычитание с насыщением PADDUS[B,W] - Беззнаковое
сложение с насыщением PSUBUS[B,W] - Беззнаковое вычитание с насыщением
СИСТЕМА КОМАНД: ОПЕРАЦИИ ММХ
PMULHW - Знаковое умножение с сохранением старшей половины результата
PMULLW - Знаковое умножение с сохранением младшей половины результата
PMULHUW- Беззнаковое умножение с сохранением старшей половины результата
PMADDWD - Знаковое умножение с накоплением PSADBW'- Сложение абсолютных
разностей байтов PAVG[B,W]'- Нахождение среднего значения
Команды нахождения максимума и минимума
PMAXSW'- Нахождение большего значения (знаковые слова)
PMAXUB'- Нахождение большего значения (беззнаковые байты)
PMINSW'- Нахождение меньшего значения (знаковые слова) а,,
PMINUB'- Нахождение меньшего значения (беззнаковые байты)
Команды сравнения г.?
PCMPEQ[B,W,D] - Сравнение на равенство PCMPGT[B,W,D] - Сравнение на
большее значение
Команды логических операций
PAND - Логическое И PANDN - Логическое НЕ-И POR - Логическое ИЛИ PXOR -
Исключающее ИЛИ
Команды сдвига
PSLL[W,D,Q] - Логический сдвиг влево PSRL(W,D,Q] - Логический сдвиг
вправо PSRA[W,D] - Арифметический сдвиг вправо
При выполнении MMX-команд процессор использует для хранения операндов
восемь арифметических регистров R7-0 блока FPU (см. рис. 2.4),
реализующего обработку чисел с плавающей точкой. В этом случае
арифметические регистры получают обозначения ММ7-0. Так как MMX-команды
обрабатывают 64-разрядные операнды, то ММХ-реги-стры имеют разрядность 64
бит, используя только 64 младших разряда в 80-разрядных регистрах FPU
(см. рис. 2.22).
2.5.1. ФОРМАТЫ ПРЕДСТАВЛЕНИЯ ДАННЫХ И ВЫПОЛНЕНИЕ ОПЕРАЦИЙ
Почти все мнемокоды MMX-команд начинаются с префикса Р (Packed), которые
указывает, что технолотя ММХ имеет депо с упакованными данными. За
префиксом следует полное или сокращенное название выполняемой операции,
например, OR, СМР, SUB. После названия операции может стоять несколько
суффиксов, имеющих следующее значение:
US (Unsigned Saturation) - беззнаковое насыщение;
S (Signed saturation) - знаковое насыщение;
В, W, D, Q (Byte, Word, Doubleword, Quadword)- формат используемых
упакованных данных.
Если при выполнении MMX-команды используется арифметика с насыщением,
особенности которой описаны ниже в данном разделе, то в мнемокоде сначала
указывается суффикс US или S, определяющий вид насыщения (беззнаковое или
знаковое). Мнемокоды команд, не использующих принцип насыщения, не
содержат этот суффикс. Далее в мнемокоде указывается суффикс,
определяющий формат обрабатываемых данных. Команды, использующие
различные форматы для представления исходных данных и результата,
содержат
ПРОЦЕССОРЫ ОБЩЕГО НАЗНАЧЕНИЯ И СИСТЕМЫ НА ИХ ОСНОВЕ
ОРС MODR/M SIB DISP IMM
OFh OpCode MOD REG (mmxreg) R/M (mmxreg) SS INDEX BASE
d8/d16/d32 im8
Рис. 2.21. Формат ММХ-команд
два суффикса, определяющие формат: первый задает формат результата, а
второй - формат исходных данных. Например, в команде PACKUSWB название
операции задается мнемокодом PACK (упаковка), первый суффикс US указывает
Предыдущая << 1 .. 71 72 73 74 75 76 < 77 > 78 79 80 81 82 83 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed