7/25/2019 MMX unit 1
1/33
PRESENTATION ON MMXTECHNOLOGY
Submitted by Nisha kumari(Dept. of IT)
UIET, P.U
7/25/2019 MMX unit 1
2/33
CONTENTS..
1. Introduction.
2. Types.
3. MMX Registers.
4. MMX instruction Set.
5. New data types.
6. Advantages and Disadvantages.
7. Summary.
7/25/2019 MMX unit 1
3/33
MMX TECH..
MMX technology was initiallynamed as MultiMedia eXtensions.Multiple Math eXtension, orMatrix Math eXtension.
MMX technology was introduced to
improve video compression /decompression,image manipulation,encryption,audio synthesis etc..
7/25/2019 MMX unit 1
4/33
MMX TECHNOLGY
. Its goal was to increase the speed atwhich certain "multimedia" operations areperformed. And, in fact, MMX technology
improves the performance of current andfuture graphics and communicationsapplications while maintaining
compatibility with the existing IntelArchitecture (IA) software base.
7/25/2019 MMX unit 1
5/33
MMX TECHNOLOGY
So in other words, Intel addedenhancements to their processorswhich could speed up multimediainstructions while remainingcompatible with everything already outthere. MMX is an extension of IA. Infact, MMX is IA's most significant
enhancement since 1985, when theIntel 386 processor was released. The386 extended the architecture to 32bits.
7/25/2019 MMX unit 1
6/33
MMX TECHNOLOGY
MMX includes new instructions and datatypes to achieve increased levels ofperformance on the host CPU byexploiting the parallelism inherent in agreat deal of the algorithms in theseapplications. MMX candeliver 50%-100%performance gains for multimedia and
communications applications over thesame applications run on the same typeof processor but without MMX technology.
7/25/2019 MMX unit 1
7/33
MMX TECH.
The main technique for maintainingcompatibility of MMX technology was to"hide" it inside the existing floating-pointstate and registers (current operating
systems and applications are designed towork with the floating-point state). Anoperating system doesn't need to know ifMMX technology is present, since it's
hidden in the floating-point state.Applications have to check for thepresence of MMX technology, and if it'sbuilt into the processor they use the new
instructions.
7/25/2019 MMX unit 1
8/33
MMX
These extensions (which include newregisters, data types and instructions) arecombined with the Single Instruction,Multiple Data (SIMD) Execution model.
Pentium II processorwith MMX technology
7/25/2019 MMX unit 1
9/33
How improve performance??
Technical overview of MMX tech:AllMMX chips have a larger internal L1 cachethan their non-MMX counterparts.
Developers guide of MMX tech:Intel'shas Intel Architecture (IA) instruction set.
It has 57 new commands or instructions ,called single instruction, multiple data
(SIMD).
7/25/2019 MMX unit 1
10/33
SIMD Technique..
The Single Instruction Multiple Data(SIMD)
The MMX instructions operate in parallelon the individual bytes.
Example:
The arithmetic or logical operations aredone.
7/25/2019 MMX unit 1
11/33
SIMD Features..
1. The SIMD Technique speeds upthesoftware performance
2. The SIMD instruction model can accessup to 8 bytes at a time.
3. The SIMD technology supports paralleloperations at one time.
7/25/2019 MMX unit 1
12/33
Types..
Pentium Processors with MMXTechnology has :
1. 200 MHz and 233 MHz Pentium
processors(MMX technology).2. Low-power Pentium processors with MMX
technologyof 166 MHz and 266 MHz.
NOTE: The 166 MHz Pentium processor hastemperature range -40C to +115C.
3. Intel 430TX PCIset.
http://www.intel.com/design/intarch/mmx/lpentium.htmhttp://www.intel.com/design/intarch/mmx/lpentium.htmhttp://www.intel.com/design/intarch/mmx/lpentium.htmhttp://www.intel.com/design/intarch/mmx/lpentium.htmhttp://www.intel.com/design/intarch/mmx/lpentium.htmhttp://www.intel.com/design/intarch/mmx/lpentium.htm7/25/2019 MMX unit 1
13/33
Low Power Intel Pentium Processorwith MMX Technology..
1. High Performance in a New Package forEmbedded Applications.
NOTE: Both are available in thin HL- PBGA,PPGA packaging.
2.Low Power.
3.Better Thermal Efficiency.
7/25/2019 MMX unit 1
14/33
MMX Register
The MMX technology gives the eight64-bit general purpose registers and 57instructions.
The general purpose registers are named
MM0 to MM7.
MMX Register Set
7/25/2019 MMX unit 1
15/33
Why general purpose registersthat are mapped on the floating-
point registers?
7/25/2019 MMX unit 1
16/33
Answer..
To reside MMX data to the 80-bit floatingpoint registers.
It reside MMX data to first 64 bits offloating point register.
All the mapping happen , inside the
processor, and we just only see thephysical floating point registers.
7/25/2019 MMX unit 1
17/33
When mapping is done.then??
Any applications which use MMXtechnology have to use 16 registers.
16Registers
Eight MMX
registers, thathold packed data.(each 64 bits insize)
Eight are integerregisters , used fordifferent operationslike addressing, loopcontrol , datamanipulation etc..
7/25/2019 MMX unit 1
18/33
Characteristics of MMX Register
1. MMX registers are random accessregisters.
2. MMX registers are used for holding
packet data only.
3. Floating point registers are 80 bit wide.
4. MMX registers are 64 bit wide.
7/25/2019 MMX unit 1
19/33
MMX Instruction set
The MMX instructions vary from oneanother by a few characteristics.
Arithmeticoperations. comparisonoperations .
conversioninstructions.
logicaloperations.
data transferinstructions.
http://www.tommesani.com/MMXArithmetic.htmlhttp://www.tommesani.com/MMXComparison.htmlhttp://www.tommesani.com/MMXConversion.htmlhttp://www.tommesani.com/MMXLogical.htmlhttp://www.tommesani.com/MMXDataTransfer.htmlhttp://www.tommesani.com/MMXDataTransfer.htmlhttp://www.tommesani.com/MMXLogical.htmlhttp://www.tommesani.com/MMXConversion.htmlhttp://www.tommesani.com/MMXComparison.htmlhttp://www.tommesani.com/MMXArithmetic.html7/25/2019 MMX unit 1
20/33
Cont..
Arithmetic and comparison instructionshave different opcode for each supporteddata.
All MMX instructions operate on twooperands:
1. The source
2. The destination operand.The instruction overwrites the destinationoperand with the result.
7/25/2019 MMX unit 1
21/33
For example, a two-operand instruction :
OPERATION DEST, SRC
would be decoded as:
DEST = DEST OPERATION SRC
7/25/2019 MMX unit 1
22/33
MMX instruction has syntax:
Prefix: P for Packed Instruction operation:- ADD, CMP, or XOR Suffix:
USfor Unsigned Saturation Sfor Signed saturation
B, W, D, Qfor the data type: packed byte(b),packed word(w), packed double word(d), orquadword(q).
Example: PADDSB is a MMX instruction (P)
that sums (ADD) the 8 bytes (B) of the source and destination
operands and saturates the result (S).
7/25/2019 MMX unit 1
23/33
MMX TECH
A majorfeature of MMX instructions issaturation arithmetic. Saturation arithmetic isimportant to many graphics routines. As anexample, assume you add together two medium-red pixels. Saturating arithmetic ensures the
result is a dark red or black. It's certainlydifferent than regular integer math, where youcould perform the above operation and end upwith a light-colored result. In other words,
saturation arithmetic handles "wrap-around"problems. This is a very handy thing to have.
MMX supports both signed and unsignedsaturating arithmetic.
7/25/2019 MMX unit 1
24/33
MMX TECH.
The parallelism and saturating arithmetic
in MMX are useful in some videoconferencing compression schemes.
7/25/2019 MMX unit 1
25/33
NEW DATA TYPES
Now the problem arises that element indata types is not fixed-point integer??
To overcome this problem MMXtechnology introduces four new data types
This all control by the user to specify the
place of the fixed point within theelements throughout the calculation.
7/25/2019 MMX unit 1
26/33
Four data types
Packed byte 8 bytes packed into 64 bits
Packed word 4 words packed into 64 bits
Packed doubleword2 doublewords packed into64 bits
Packed quadword 64 bits
7/25/2019 MMX unit 1
27/33
7/25/2019 MMX unit 1
28/33
Example..
Pixels are generally in 8-bit integers. Eight of these pixels are packed together
in a 64-bit quantity and moved into anMMX register.
With MMX ,it performs the arithmetic orlogical operation on all eight elements inparallel, and writes the result into an MMX
register. MOTIVE : The parallelism of MMX
technology depends on the size of data
No parallelism, when using 64-bit data.
Ad antages of MMX Tech O er
7/25/2019 MMX unit 1
29/33
Advantages of MMX Tech.. Overwithout MMX Tech..
MMX TECH.. WITHOUT MMX TECH..
1. 10 to 20 percent performanceboost .
1. As Previous is.
2. 57 new instruction . 2. It works on 5-6
operation/instruction set.
3. The extended temperature is-40C to +115C.
3. It works on normaltemperature.
4. The Intel 430TX PCIsetsupports synchronous DRAM[SDRAM] .
4. No type of Intel 430TX PCIset.
5. New embedded designs. 5. No new embedded designs.
7/25/2019 MMX unit 1
30/33
Disadvantages of MMX tech.
1. MMX work only on integer values andused the floating-point unit forprocessing, so time was lost when a shiftto floating-point operations.
2. The same processing is done on manydata points.
7/25/2019 MMX unit 1
31/33
MMX in embedded applications
Intel's XScaleprocessors.
USE :iwMMXt technology.
It provides arithmetic and logicoperations on 64-bit integer numbers.
It contains 16 data registers of 64-bitsand 8 control registers of 32-bits.
http://en.wikipedia.org/wiki/XScalehttp://en.wikipedia.org/wiki/XScale7/25/2019 MMX unit 1
32/33
SUMMARY
The Pentium processor is the firstmicroprocessor to support Intel MMXtechnology.
According to Intel, an MMXmicroprocessor runs a multimediaapplication up to 60%faster.
In addition, it runs other applicationsabout 10% faster.
7/25/2019 MMX unit 1
33/33
THANK YOU..