MMX

Summary

MMX es un Conjunto de instrucciones SIMD diseñado por Intel e introducido en 1997 en sus microprocesadores Pentium MMX. Fue desarrollado a partir de un set introducido en el Intel i860. Ha sido soportado por la mayoría de fabricantes de microprocesadores x86 desde entonces.

Pentium MMX
Información
Tipo conjunto de instrucciones
Fabricante
Fecha de lanzamiento 1997
Datos técnicos
Conjunto de instrucciones MMX
Empaquetados
Estandarización
Uso SIMD


Microprocesador Intel Pentium MMX.

Fue presentado como un acrónimo de MultiMedia eXtension o Multiple Math o Matrix Math eXtension, pero oficialmente solo es un juego de consonantes sin significado, usado con la única intención de poder poner cortapisas legales de marca registrada a los desarrollos de terceros que trataran de usarlo.

Descripción

editar
 
Microprocesador Intel Pentium MMX. Parte frontal.

MMX agregó 8 nuevos registros a la arquitectura, conocidos como MM0 al MM7 (en adelante llamados MMn). En realidad, estos nuevos registros son meros alias de los registros de la pila de la FPU x87. Por ello cualquier cosa que se haga con la pila de la FPU afecta a los registros MMX. A diferencia de la pila de coma flotante, los registros MMn son fijos en vez de relativos, por lo que pueden accederse aleatoriamente.

Cada uno de los registros MMn es un número entero de 64 bits. Sin embargo, uno de los conceptos principales del juego de instrucciones MMX es el concepto del tipo de datos compactados (packed data types), que significa en lugar de usar el registro completo para un solo número entero de 64 bits (palabra cuádruple o quadword), se puede usar para almacenar dos enteros de 32 bits (palabra doble o doubleword), cuatro enteros de 16 bits (palabra o word) u ocho enteros de 8 bits (byte u octeto).

Para simplificar el diseño y evitar modificar el sistema operativo para preservar el estado adicional a través de los interruptores de contexto, MMX reutiliza los ocho registros existentes de la FPU. Por ello es muy difícil trabajar con la FPU y MMX a la vez. Para maximizar el rendimiento, los programadores deben utilizar el procesador exclusivamente en un modo o el otro, retrasando todo lo posible el lento paso de un modo a otro.

Referencias

editar

Véase también

editar

Enlaces externos

editar
  • Página oficial de Intel sobre MMX (en inglés)
  • Intel Pentium Processor with MMX Technology Documentation (en inglés)
  • The MMX Instruction Set from The Art of Assembly Language (en inglés)
  • IA Software Developer's Manual, Vol 1 (PDF), see chapter 8 for MMX programming (en inglés)
  •   Datos: Q904336