MMX unit 1

download MMX unit 1

of 33

Transcript of MMX unit 1

  • 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.htm
  • 7/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.html
  • 7/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/XScale
  • 7/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..