Computer architecture and the fetch execute cycle
Download
1 / 28

Computer Architecture and the Fetch-Execute Cycle - PowerPoint PPT Presentation


  • 400 Views
  • Updated On :

Computer Architecture and the Fetch-Execute Cycle. Parallel Processor Systems. Learning Objectives. Discuss parallel processing systems (co-processor, parallel processor and array processor), their uses, their advantages and their disadvantages.

Related searches for Computer Architecture and the Fetch-Execute Cycle

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Computer Architecture and the Fetch-Execute Cycle' - odell


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Learning objectives
Learning Objectives

  • Discuss parallel processing systems (co-processor, parallel processor and array processor), their uses, their advantages and their disadvantages.


A von neumann architecture instruction can be in one of three phases
A Von Neumann Architecture instruction can be in one of three phases:

  • Fetched (from memory).

  • Decoded (by the control unit).

  • Executed (by the control unit).


Disadvantages of von neumann architecture
Disadvantages of Von Neumann Architecture three phases:

  • Executes instructions serially.

  • Limited by the time it takes to process each instruction.

  • Some registers are idle (not being used) during the Fetch - Decode - Execute - Reset cycle.


Pipelining
Pipelining three phases:

  • Overlaps the three phases of a Von Neumann Architecture instruction and uses idle registers.


  • This helps with the speed of throughput unless the next instruction in the pipe is not the next one that is needed.

    • E.g. Instruction 2 is a jump to Instruction 10.

      • Then Instructions 3, 4 and 5 need to be removed from the pipe & Instruction 10 needs to be loaded into the fetch part of the pipe.

      • Thus, the pipe will have to be cleared and the cycle restarted.


Effect of pipe lining
Effect of pipe lining instruction in the pipe is not the next one that is needed.

  • Three instructions dealt with at the same time.

  • Registers no longer idle.

  • This SHOULD reduce the execution times considerably (to approximately 1/3 of the standard times), however, this would only be true for a very linear program.

  • Once jump instructions are introduced the problem arises that the wrong instructions are in the pipe line waiting to be executed, so every time the sequence of instructions changes, the pipe line has to be cleared and the process started again.


Parallel processor systems
Parallel Processor Systems instruction in the pipe is not the next one that is needed.

  • An alternative to Von Neumann Architecture (serial processors) with many independent processors (or ALUs – see array processor later in this presentation) working in parallel on the same run of a program / job.


Parallel processing is needed when applications are
Parallel Processing is needed when applications are: instruction in the pipe is not the next one that is needed.

  • Time sensitive (results are needed in a very short period of time).

  • Contain vast quantities of data.

  • Require large amounts of processing / calculations.

  • Processes are interrelated.

  • Calculations can be done at same time which speeds up processing.

  • e.g. Weather Forecasting (next slide)


Weather forecasting
Weather Forecasting instruction in the pipe is not the next one that is needed.

  • Data collected about present conditions to includewind / speed / humidity / temperature / pressure.

  • Also details about conditions close to required location.

  • Predictions made (forecast) matched against actual results.

  • Hone predictions next time.

  • Data collected by weather balloons / satellites / weather stations.


Types of parallel processing system processors
Types of instruction in the pipe is not the next one that is needed. “Parallel Processing System”Processors


True parallel processor s
True instruction in the pipe is not the next one that is needed. Parallel Processors

  • Many processors to perform a single job / program.

    • Each processor is a general-purpose processor in its own right.

      • Serial processors in parallel.

  • Used to perform any task which is a part of the entire problem.


An array processor
An instruction in the pipe is not the next one that is needed. Array processor

  • One main processor but with many ALUs.

  • Allows a single instruction to be carried out simultaneously on a number of data locations in an array and is used to process all the values in the array at the same time.

  • Note: A kind of sub form of a parallel processing system: not a true parallel processor as cannot process all tasks which are part of an entire problem, only multiple values in an array(e.g. cannot fetch multiple instructions from memory, execute multiple program flow control instructions, do multiple input/output operations, etc…).


Coprocessor s
Coprocessor/ instruction in the pipe is not the next one that is needed. s

  • Not general-purpose processors in their own right (a kind of sub form of a parallel processing system).

    • Cannot fetch instructions from memory, execute program flow control instructions, do input/output operations, etc….

    • They require the host main processor to fetch the instructions and handle all other operations aside from the coprocessor’s specific functions.

  • They basically offload the burden of carrying out certain operations from the main processor.

    • There are two types:

      • Maths Coprocessors

        • Separate units which carry out all mathematical operations.

          • e.g. floating point arithmetic, graphics, signal processing, string processing or encryption.

      • Floating Point Coprocessors

        • Separate units which can carry out only calculations on floating point values.

          • These only carry out all mathematical operations including floating point calculations whereas Floating Point Coprocessors can only carry out floating point calculations but not other mathematical operations.


  • What s a bus
    What's a bus? instruction in the pipe is not the next one that is needed.

    • Early computer buses were literally parallel electrical wires with multiple connections, but the term is now used for any transmission path.

      • A wire basically.


    Types of buses
    Types of Buses instruction in the pipe is not the next one that is needed.

    • Address

    • Data

    • Control


    Control instruction in the pipe is not the next one that is needed.

    Control

    Control

    Address

    Control

    Data

    Data

    1

    Address

    4

    3

    Control

    2

    Data


    http://en.wikipedia.org/wiki/File:Computer_system_bus.svg instruction in the pipe is not the next one that is needed.


    Types of buses1
    Types of Buses instruction in the pipe is not the next one that is needed.

    • Address

      • Carries the address of a memory location.

        • e.g. Address of location in memory from MAR.

    • Data

      • To carry data from one location to another in processor.

        • e.g. from MDR to CIR

    • Control

      • Carries control signals around processor to synchronise the operation of the processor components.

        • e.g. Memory read/write completed.

          • In reality there are many lines/wires and each line carries a different signal.


    Plenary
    Plenary instruction in the pipe is not the next one that is needed.

    • How does pipelining speed up the processing done by a computer?


    Plenary1
    Plenary instruction in the pipe is not the next one that is needed.

    • All instructions have three phases which are treated separately, by different parts of the processor so that more than one instruction can be being dealt with simultaneously.


    Plenary2
    Plenary instruction in the pipe is not the next one that is needed.

    • What type of instruction would cause the pipeline system to be reset and why?


    Plenary3
    Plenary instruction in the pipe is not the next one that is needed.

    • Jump instruction

      • The instructions in the pipeline are no longer the ones to be dealt with next so the pipeline has to be reset.


    Plenary4
    Plenary instruction in the pipe is not the next one that is needed.

    • How does parallel processing differ from serial processing?


    Plenary5
    Plenary instruction in the pipe is not the next one that is needed.

    • Many processors are used simultaneously all doing some processing required by the application.

    • Special non-linear programs must be produced.


    Plenary6
    Plenary instruction in the pipe is not the next one that is needed.

    • Why is parallel architecture needed when processing some simulations?

      • Give an example application.


    Parallel processing is needed when applications are1
    Parallel Processing is needed when applications are: instruction in the pipe is not the next one that is needed.

    • Time sensitive (results are needed in a very short period of time).

    • Contain vast quantities of data.

    • Require large amounts of processing / calculations.

    • Processes are interrelated.

    • Calculations can be done at same time which speeds up processing.

    • e.g. Weather Forecasting.


    ad