Computer Architecture and the Fetch-Execute Cycle Parallel Processor Systems.

Slides:



Advertisements
Similar presentations
The CPU The Central Presentation Unit What is the CPU?
Advertisements

Computer Architecture and the Fetch-Execute Cycle
Computer Organization and Architecture
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
Higher Computing: Unit 1: Topic 3 – Computer Performance St Andrew’s High School, Computing Department Higher Computing Topic 3 Computer Performance.
The CPU. Parts of the CPU Control Unit Arithmetic & Logic Unit Registers.
Chapter 5 Computing Components Nell Dale John Lewis.
Room: E-3-31 Phone: Dr Masri Ayob TK 2123 COMPUTER ORGANISATION & ARCHITECTURE Lecture 5: CPU and Memory.
Processor Technology and Architecture
Chapter 5: Computer Systems Organization Invitation to Computer Science, Java Version, Third Edition.
Chapter 5 Computing Components Nell Dale John Lewis.
The CPU - Outline. Components of CPU Englander p
Chapter 4 Processor Technology and Architecture. Chapter goals Describe CPU instruction and execution cycles Explain how primitive CPU instructions are.
GCSE Computing - The CPU
Basic Computer Organization CH-4 Richard Gomez 6/14/01 Computer Science Quote: John Von Neumann If people do not believe that mathematics is simple, it.
CPU Fetch/Execute Cycle
Processor Structure & Operations of an Accumulator Machine
Higher Computing Computer Systems S. McCrossan 1 Higher Grade Computing Studies 2. Computer Structure Computer Structure The traditional diagram of a computer...
Computer Systems 1 Fundamentals of Computing The CPU & Von Neumann.
Higher Computing Computer Systems S. McCrossan 1 Higher Grade Computing Studies 3. Computer Performance Measures of Processor Speed When comparing one.
CS 1308 Computer Literacy and the Internet Computer Systems Organization.
ECE 456 Computer Architecture
Chapter 5: Computer Systems Organization Invitation to Computer Science, Java Version, Third Edition.
Pipeline And Vector Processing. Parallel Processing The purpose of parallel processing is to speed up the computer processing capability and increase.
Presented by: Sergio Ospina Qing Gao. Contents ♦ 12.1 Processor Organization ♦ 12.2 Register Organization ♦ 12.3 Instruction Cycle ♦ 12.4 Instruction.
Parallel Processing - introduction  Traditionally, the computer has been viewed as a sequential machine. This view of the computer has never been entirely.
Computer Architecture and the Fetch-Execute Cycle
Computer Architecture and the Fetch-Execute Cycle
Chapter 5 Computing Components Nell Dale John Lewis.
5-1 Computer Components Consider the following ad.
Computer Organization - 1. INPUT PROCESS OUTPUT List different input devices Compare the use of voice recognition as opposed to the entry of data via.
Chapter 5 Computing Components. 5-2 Chapter Goals List the components and their function in a von Neumann machine Describe the fetch-decode-execute cycle.
General Concepts of Computer Organization Overview of Microcomputer.
Vector/Array ProcessorsCSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Vector/Array Processors Reading: Stallings, Section.
Chapter 2 Data Manipulation. © 2005 Pearson Addison-Wesley. All rights reserved 2-2 Chapter 2: Data Manipulation 2.1 Computer Architecture 2.2 Machine.
The fetch-execute cycle. 2 VCN – ICT Department 2013 A2 Computing RegisterMeaningPurpose PCProgram Counter keeps track of where to find the next instruction.
Fetch-execute cycle.
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
Computer Structure & Architecture 7b - CPU & Buses.
Stored Programs In today’s lesson, we will look at: what we mean by a stored program computer how computers store and run programs what we mean by the.
CS 1308 Computer Literacy and the Internet. Objectives In this chapter, you will learn about:  The components of a computer system  Putting all the.
Stored Program A stored-program digital computer is one that keeps its programmed instructions, as well as its data, in read-write,
Excellence Publication Co. Ltd. Volume Volume 1.
Group 1 chapter 3 Alex Francisco Mario Palomino Mohammed Ur-Rehman Maria Lopez.
Computer Architecture and the Fetch-Execute Cycle Buses, CPU Clock & Ports.
1 3 Computing System Fundamentals 3.2 Computer Architecture.
CPUz 4 n00bz.
Chapter 11 System Performance Enhancement. Basic Operation of a Computer l Program is loaded into memory l Instruction is fetched from memory l Operands.
What’s going on here? Can you think of a generic way to describe both of these?
Computer Architecture Adapted from CS10051 originally by Professor: Johnnie Baker Computer Science Department Kent State University von Neuman model.
Computer Architecture 1 CPU IAS (The computer’s main memory) Store (e.g. Disk, DVD) Input/output Interfaces Clock Bus Keyboard, printer, mouse monitor,
Stored Program Concept Learning Objectives Learn the meaning of the stored program concept The processor and its components The fetch-decode-execute and.
STUDY OF PIC MICROCONTROLLERS.. Design Flow C CODE Hex File Assembly Code Compiler Assembler Chip Programming.
CPU Lesson 2.
OCR GCSE Computer Science Teaching and Learning Resources
Systems Architecture Keywords Fetch Execute Cycle
A Level Computing – a2 Component 2 1A, 1B, 1C, 1D, 1E.
Chapter 10: Computer systems (1)
3.3.3 Computer architectures
Lesson Objectives A note about notes: Aims
Buses.
System Architecture 1 Chapter 2.
Chapter 5: Computer Systems Organization
1.1 The Characteristics of Contemporary Processors, Input, Output and Storage Devices Types of Processors.
1-2 – Central Processing Unit
Unit 1.1 System Architecture Lesson 2
GCSE OCR 1 The CPU Computer Science J276 Unit 1
Objectives Describe common CPU components and their function: ALU Arithmetic Logic Unit), CU (Control Unit), Cache Explain the function of the CPU as.
Presentation transcript:

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.

A Von Neumann Architecture instruction can be in one of three phases: 1.Fetched (from memory). 2.Decoded (by the control unit). 3.Executed (by the control unit).

Disadvantages of Von Neumann Architecture 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 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. 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 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 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. array processor array processor

Parallel Processing is needed when applications are: 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 Data collected about present conditions to include wind / 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

“Parallel Processing System” Processors True Parallel Processors (serial processors in parallel) Array Processor (one serial type processor with multiple ALUs) Coprocessors (Not general-purpose processors in their own right) Maths Coprocessors Floating Point Coprocessors

True Parallel Processor s Many processors to perform a single job / program. Each processor is a general-purpose processor in its own right. 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 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 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: There are two types: Maths Coprocessors Separate units which carry out all mathematical operations. 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. 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? Early computer buses were literally parallel electrical wires with multiple connections, but the term is now used for any transmission path. A wire basically. A wire basically.

Types of Buses 1.Address 2.Data 3.Control

Address Data Control Single headed arrow = Uni -directional Double headed arrow = Bi -directional Control

Types of Buses 1.Address Carries the address of a memory location. Carries the address of a memory location. e.g. Address of location in memory from MAR. 2.Data To carry data from one location to another in processor. To carry data from one location to another in processor. e.g. from MDR to CIR 3.Control Carries control signals around processor to synchronise the operation of the processor components. 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. In reality there are many lines/wires and each line carries a different signal.

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

Plenary 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.

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

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

Plenary How does parallel processing differ from serial processing?

Plenary Many processors are used simultaneously all doing some processing required by the application. Special non-linear programs must be produced.

Plenary Why is parallel architecture needed when processing some simulations? Give an example application.

Parallel Processing is needed when applications are: 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.