The Stored Program Computer

Similar documents
Hardware Level Organization

Chapter 4 The Von Neumann Model

Chapter 4 The Von Neumann Model

Chapter 4 The Von Neumann Model

Introduction to Computer Engineering. CS/ECE 252 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison

Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Computing Layers

AS/A Level Computing Syllabus 2011

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.

LC-3 Architecture. (Ch4 ish material)

Outcomes. Lecture 13 - Introduction to the Central Processing Unit (CPU) Central Processing UNIT (CPU) or Processor

Memory General R0 Registers R1 R2. Input Register 1. Input Register 2. Program Counter. Instruction Register

Running Applications

2. Computer Evolution and Performance

Lecture1: introduction. Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit

C Functions and Pointers. C Pointers. CS270 - Fall Colorado State University. CS270 - Fall Colorado State University

Computer Architecture

Information Science 1

Computer Architecture Lecture No.10,11

THE MICROPROCESSOR Von Neumann s Architecture Model

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

COSC121: Computer Systems: Review

OPERATING SYSTEMS. Goals of the Course. This lecture will cover: This Lecture will also cover:

CPU Structure and Function

Computer Architecture Review CS 595

CPU ARCHITECTURE. QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system.

Computer Architecture (part 2)

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.

Chapter 05: Basic Processing Units Control Unit Design. Lesson 15: Microinstructions

(Advanced) Computer Organization & Architechture. Prof. Dr. Hasan Hüseyin BALIK (3 rd Week)

CMPUT101 Introduction to Computing - Summer 2002

COMPUTER SYSTEM. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U

The Von Neumann Architecture. Designing Computers. The Von Neumann Architecture. CMPUT101 Introduction to Computing - Spring 2001

CMPUT101 Introduction to Computing - Summer 2002

The von Neumann Machine

Designing Computers. The Von Neumann Architecture. The Von Neumann Architecture. The Von Neumann Architecture

General purpose registers These are memory units within the CPU designed to hold temporary data.

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

The Von Neumann Architecture Odds and Ends. Designing Computers. The Von Neumann Architecture. CMPUT101 Introduction to Computing - Spring 2001

Introduction to CPU architecture using the M6800 microprocessor

Chapter 5: Computer Systems Organization

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1

Chapter 5: Computer Systems Organization. Invitation to Computer Science, C++ Version, Third Edition

The Stored Program Computer

The von Neumann Architecture. IT 3123 Hardware and Software Concepts. The Instruction Cycle. Registers. LMC Executes a Store.

William Stallings Computer Organization and Architecture. Chapter 11 CPU Structure and Function

Department of Computer and Mathematical Sciences. Lab 4: Introduction to MARIE

ΗΜΥ 656 ΠΡΟΧΩΡΗΜΕΝΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Εαρινό Εξάμηνο 2007

The von Neumann Machine

Systems Architecture

Digital System Design Using Verilog. - Processing Unit Design

Von Neumann Architecture

Teaching London Computing

Chapter 2: Data Manipulation

Processing Unit CS206T

SCRAM Introduction. Philipp Koehn. 19 February 2018

The Institution of Engineers - Sri Lanka

Chapter 2 Data Manipulation

Latches. IT 3123 Hardware and Software Concepts. Registers. The Little Man has Registers. Data Registers. Program Counter

omputer Design Concept adao Nakamura

Computer Architecture and Organization (CS-507)

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 01, SPRING 2013

William Stallings Computer Organization and Architecture 10 th Edition Pearson Education, Inc., Hoboken, NJ. All rights reserved.

COMS 1003 Fall Introduction to Computer Programming in C. History & Computer Organization. September 15 th


A3 Computer Architecture

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 2, 2016

Chronological History of the Pre-Computer Developments

Wednesday, February 4, Chapter 4

C.P.U Organization. Memory Unit. Central Processing Unit (C.P.U) Input-Output Processor (IOP) Figure (1) Digital Computer Block Diagram

Control unit. Input/output devices provide a means for us to make use of a computer system. Computer System. Computer.

Why learn Computer Programming? Computer-based problem solving in Science and Engineering. Why learn Fortran? Elementary Computer Organization

The register set differs from one computer architecture to another. It is usually a combination of general-purpose and special purpose registers

Chapter 4. Computer Organization

Binghamton University. CS-120 Summer LC3 Memory. Text: Introduction to Computer Systems : Sections 5.1.1, 5.3

Basic Computer Architecture

Processors. Nils Jansen and Kasper Brink. (based on slides from Jeroen Keiren, Marc Seutter and David N. Jansen)

William Stallings Computer Organization and Architecture

The CPU and Memory. How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram:

Computer Organization II CMSC 3833 Lecture 33

Micro-Operations. execution of a sequence of steps, i.e., cycles

Block diagram view. Datapath = functional units + registers

Author : Dalbir Singh, Computer Science Deptt. CPU Structure and Functions. 1. Processor Organization

What Are The Main Differences Between Program Counter Pc And Instruction Register Ir

Wednesday, September 13, Chapter 4

CPU Structure and Function

Examining the complete instruction cycle for one instruction illustrates the operation of the P8 CPU. Assume the following conditions: C C C

Class Notes. Dr.C.N.Zhang. Department of Computer Science. University of Regina. Regina, SK, Canada, S4S 0A2

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 3, 2015

SISTEMI EMBEDDED. Computer Organization Central Processing Unit (CPU) Federico Baronti Last version:

Where Does The Cpu Store The Address Of The

1. Fundamental Concepts

Module 5 - CPU Design

Top-Level View of Computer Organization

COSC 122 Computer Fluency. Computer Organization. Dr. Ramon Lawrence University of British Columbia Okanagan

Chapter 1. Preview. Reason for Studying OPL. Language Evaluation Criteria. Programming Domains

CS501_Current Mid term whole paper Solved with references by MASOOM FAIRY

Microprocessors. Microprocessors and rpeanut. Memory. Eric McCreath

Microprocessors and rpeanut. Eric McCreath

CPU Structure and Function. Chapter 12, William Stallings Computer Organization and Architecture 7 th Edition

Chapter 5 - ISA. 1.The Von Neumann Model. The Stored Program Computer. Von Neumann Model. Memory

Transcription:

The Stored Program Computer 1 1945: John von Neumann Wrote a report on the stored program concept, known as the First Draft of a Report on EDVAC also Alan Turing Konrad Zuse Eckert & Mauchly The basic structure proposed in the draft became known as the von Neumann machine (or model). a memory, containing instructions and data a processing unit, for performing arithmetic and logical operations a control unit, for interpreting instructions

von Neumann Model 2 stores both program instructions and data implements a next state function Abstraction of von Neumann

Memory 3 2 k x m array of stored bits Address unique (k-bit) identifier of location Contents m-bit value stored in location Basic Operations LOAD read a value from a memory location STORE write a value to a memory location 0000 0001 0010 0011 0100 0101 0110 1101 1110 1111 00101101 10100010

Interface to Memory How does processing unit get data to/from memory? MAR: Memory Address Register MDR: Memory Data Register MEMORY 4 To LOAD a location (A): Write the address (A) into the MAR. Send a read signal to the memory. Read the data from MDR. MAR MDR To STORE a value (X) to a location (A): Write the data (X) to the MDR. Write the address (A) into the MAR. Send a write signal to the memory.

Hardware Level Organization 5 Major components: - memory - central processing unit - registers - the fetch/execute cycle CPU PC IR Ex Unit MAR MBR I/O AR I/O BR System Bus Main Memory 0 (the hardware process) I/O Module Data Data Data n-1 buffers PC IR MAR MBR I/O AR I/O BR = program counter = instruction register = memory address register = memory buffer register = I/O address register = I/O buffer register

Central Processing Unit Control - decodes instructions and manages CPU s internal resources 6 Registers - general-purpose registers available to user processes - special-purpose registers directly managed in fetch/execute cycle - other registers may be reserved for use of operating system - very fast and expensive (relative to memory) - hold all operands and results of arithmetic instructions (on RISC systems) - save bits in instruction representation Data path or arithmetic/logic unit (ALU) - operates on data

Stored Program Concept s are collections of bits Programs are stored in memory, to be read or written just like data 7 memory for data, programs, compilers, editors, etc. Main Memory 0 PC CPU MAR IR MBR Ex Unit I/O AR I/O BR Data Data Data n-1 Fetch & Execute Cycle s are fetched and put into a special register Bits in the register "control" the subsequent actions Fetch the next instruction and continue

Stored Program Concept 8 Of course, on most systems several programs will be stored in memory at any given time. On most contemporary systems instructions of only one of those will be executed at any given instant. Main Memory PowerPoint pgm (machine code) vim (machine code) GIS source code (data) CPU PC IR Ex Unit MAR MBR I/O AR I/O BR g++ (machine code) The operating system will rapidly switch among the eligible processes, producing the illusion that several programs are executing at the same time.

Fetch/Execute Cycle Sometimes called the hardware process executes continuously. 9 Fetch Stage Execute Stage START Fetch Next Execute HALT Steps: - fetch an instruction from memory to the instruction register - increment the program counter register (by the instruction length) - decode the instruction (in the control unit) - fetch operands, if any, usually from registers - perform the operation (in the data path); this may modify the PC register - store the results, usually to registers

Simplified MIPS Datapath 10 ALU Memory Register File Memory

Finite State Machine So, where's the FSM? 11 Next Input Execute Input devices Current State Output devices Contents of registers and memory

Control Unit State Diagram Here's a state machine diagram for the MIPS control logic we'll be studying: 12