Pentium MMX Processor:
Pentium MMX Processor – MMX stands for Multimedia Extension, Multiple Math Extension, or Matrix Math Extension. The MMX is a Single Instruction Multiple Data (SIMD) instruction and it was designed by Intel in 1996. The MMX TM technology has the following new extensions in Intel Architecture 32-bit Pentium processor:
- It has eight MMX registers such as MM0-MM7.
- Four MMX data types such as packed bytes, packed words, packed double words and quad words. In packed bytes, eight bytes are packed into one 64-bit quantity. In packed words, four 16 bit words are packed into one 64-bit quantity. In packed double words, two 32-bit double words packed into one 64-bit quantity. The quad word is one 64-bit quantity.
- It has a 57 MMX instruction set.
- MMX technology supports saturating arithmetic and wraparound mode.
In 1997, Intel developed Pentium MMX processor incorporating the multimedia extension (MMX) technology for different multimedia applications such as 2D and 3D image processing. In multimedia applications, most of the operations involve pixels. During representation of a color image, one pixel consists of three components such as red, green and blue. Each component of a pixel is an 8-bit integer. The intensity of each component of a pixel can be varied from 0 to 255. The image processing and image compression operations require matrix multiplication and matrix convolution type computations and also require operations on multiple numbers of pixels simultaneously. Therefore, all multimedia applications need a Single Instruction Multiple Data (SIMD) type architecture.
The Pentium MMX processor has eight 64-bit MMX registers known as MM0 through MM7. The MMX instructions access the MMX registers directly. These registers can be used to perform computations with MMX data types. Intel provides a set of 57 MMX instructions which are used for improving graphic performance in image processing, image filtering, image enhancement and coding, etc. Pentium processors (P5) can operate on two pixels simultaneously, whereas MMX instructions of Pentium MMX processor can operate eight pixels at the same time. The Pentium MMX processors has the following drawbacks:
- MMX instructions work with integers only, though 2D and 3D graphics often require floating point arithmetic operations.
- MMX instructions and floating-point unit instructions can share registers, but MMX and FPU instructions do not work simultaneously.