Introduction to Computing Systems from bits & gates to C & beyond Chapter 4 The Von Neumann Model Basic components Instruction processing.

Slides:



Advertisements
Similar presentations
Processor Data Path and Control Diana Palsetia UPenn
Advertisements

Chapter 4 The Von Neumann Model
Chapter 4 The Von Neumann Model
Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 7 LC-2 Assembly Language.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 7 LC-2 Assembly Language.
Computer Systems. Computer System Components Computer Networks.
CHAPTER 4 COMPUTER SYSTEM – Von Neumann Model
Execution of an instruction
Midterm Wednesday Chapter 1-3: Number /character representation and conversion Number arithmetic Combinational logic elements and design (DeMorgan’s Law)
The processor and main memory chapter 4, Exploring the Digital Domain The Development and Basic Organization of Computers.
Overview The von Neumann Machine - the programmable digital computer Introducing the LC-3 Computer - A “toy” computer for us to learn from Computer machine.
Computer Science 210 Computer Organization The Instruction Execution Cycle.
The von Neumann Model – Chapter 4 COMP 2620 Dr. James Money COMP
Introduction to Computing Systems from bits & gates to C & beyond Chapter 3 Digital Logic Structures Transistors Logic gates & Boolean logic Combinational.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 3 Digital Logic Structures Transistors Logic gates & Boolean logic Combinational.
CS 1308 Computer Literacy and the Internet Computer Systems Organization.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 5 The LC-2 Instruction Set Architecture Operate instructions Data Movement instructions.
Computer Science 210 Computer Organization The von Neumann Architecture.
Introduction to Computing Systems from bits & gates to C & beyond The Von Neumann Model Basic components Instruction processing.
Chapter 4 The Von Neumann Model
The von Neumann Model – Chapter 4
Introduction to Computer Engineering ECE/CS 252, Fall 2010 Prof. Mikko Lipasti Department of Electrical and Computer Engineering University of Wisconsin.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 5 The LC-3 Instruction Set Architecture ISA Overview Operate instructions Data.
Chapter 5 The LC-3. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 5-2 Data Movement Instructions Load --
Introduction to Computer Engineering CS/ECE 252, Fall 2009 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin – Madison.
The LC-3. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 5-2 Instruction Set Architecture ISA = All of the.
Execution of an instruction
Introduction to Computing Systems from bits & gates to C & beyond Chapter 4 The Von Neumann Model Basic components Instruction processing.
The von Neumann Model – Chapter 4 COMP 2620 Dr. James Money COMP
Dale & Lewis Chapter 5 Computing components
Von Neumann Model Computer Organization I 1 September 2009 © McQuain, Feng & Ribbens The Stored Program Computer 1945: John von Neumann –
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Control Unit.
CS61C L20 Datapath © UC Regents 1 Microprocessor James Tan Adapted from D. Patterson’s CS61C Copyright 2000.
March R. Smith - University of St Thomas - Minnesota ENGR 330: Today’s Class Connecting Hardware to InstructionsConnecting Hardware to Instructions.
Chapter 4 The Von Neumann Model
Introduction to Computing Systems from bits & gates to C & beyond Chapter 10 The Stack Stack data structure Interrupt I/O (again!) Arithmetic using a stack.
Designing a CPU –Reading a programs instruction from memory –Decoding the instruction –Executing the instruction –Transferring Data to/From memory / IO.
Computer Organization Instructions Language of The Computer (MIPS) 2.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Control Unit.
Click to edit Master title style Click to edit Master text styles – –Second level Third level – –Fourth level » »Fifth level 1 – –Second level Third level.
Logic Gates Dr.Ahmed Bayoumi Dr.Shady Elmashad. Objectives  Identify the basic gates and describe the behavior of each  Combine basic gates into circuits.
Dr.Ahmed Bayoumi Dr.Shady Elmashad
Computer Organization and Machine Language Programming CPTG 245
Control Unit Operation
Chapter 4 The Von Neumann Model
Computer Science 210 Computer Organization
Chapter 4 The Von Neumann Model
Introduction to Computer Engineering
Chapter 4 The Von Neumann Model
Computer Science 210 Computer Organization
The Processor and Machine Language
Chapter 4 The Von Neumann Model
Computer Science 210 Computer Organization
Computer Science 210 Computer Organization
Introduction to Computer Engineering
Topic 6 LC-3.
The Von Neumann Model Basic components Instruction processing
MARIE: An Introduction to a Simple Computer
Computer Architecture
Chapter 4 The Von Neumann Model
The Stored Program Computer
Basic components Instruction processing
Information Representation: Machine Instructions
Objectives Describe common CPU components and their function: ALU Arithmetic Logic Unit), CU (Control Unit), Cache Explain the function of the CPU as.
Introduction to Computer Engineering
Introduction to Computer Engineering
Introduction to Computer Engineering
Introduction to Computer Engineering
Chapter 4 The Von Neumann Model
Presentation transcript:

Introduction to Computing Systems from bits & gates to C & beyond Chapter 4 The Von Neumann Model Basic components Instruction processing

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Notations Sets of Bits  A[3:0] denotes a set of 4 bits: A 0, A 1, A 2, A 3  The content of an n-bit register R is referred to as R[n-1:0]  R n-1 is the most significant bit (MSB), or leftmost bit  R 0 is the least significant bit (LSB), or rightmost bit  Given R[31:0], R[7:4] refers to the four bits from R 4 to R 7 Bit Assignment R[5:0]  I[13:8]  Means that bits 5 to 0 of register R get assigned the values of bits 13 to 8 of register I.

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside The von Neumann Model - 1  Memory: holds the instructions and data  Processing Unit: processes the information  Input: external information into the memory  Output: produces results for the user  Control Unit: manages computer activity Memory Processing Unit Input Output MARMDR ALUTEMP Control Unit PCIR *keyboard *monitor

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside The von Neumann Model - 2 Memory (RAM)  Each location has an address and contents  Address: set of bits that uniquely identify a memory location  (eg. 20 bits gives an address space of 2 20 locations)  Addressability (Byte vs. Word): Note: a Word is the basic unit of data used by the processing unit (usually multiple bytes)  The size of the memory location referenced by a given address Input & Output  LC2 deals only with keyboard and monitor  More details later

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside The von Neumann Model - 3 Processing Unit  ALU (Arithmetic and Logic Unit)  Generally operates on entire words of data  Some also work on subsets of words (eg. bits and bytes)  Registers:  Small, fast “on-board” storage for words  Close to the ALU (much faster access than RAM)  Control Unit  Program Counter (PC) or Instruction Pointer Holds the address of the next instruction to be executed  Instruction Register (IR) Holds the instruction being executed  The control unit coordinates all actions needed to execute the instruction

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside The LC-2 Data and Control Paths

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside LC 2 Instructions Instruction word: 16 bits  Opcode  defines (names) the instruction to be executed  bits[15:12]: 4 bits allow 16 instructions  Operands  Registers: 8 registers (i.e. require 3 bits for addressing)  Address parameters: Offset (9 bits) or Index (6 bits) (more later)  Immediate value: 5 bits Examples  ADD DR, SR1, SR2 ; DR  (SR1) + (SR2) [15:12] [11:9] [8:6] [2:0] - Note: (Reg1) means “content of Reg1”  LDR DR, BaseR, Offset ; DR  Mem[BaseR + Offset] [15:12] [11:9] [8:6] [5:0] - Note: Mem[loc] means “content of memory location loc”

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Instruction Cycle - 1 Six phases (steps)  Fetch: load IR with instruction from memory  Decode: determine action to take (which instructions)  Evaluate address: compute memory address of operands, if any  Fetch operands: read operands from memory or registers  Execute: perform instruction  Store results: write result to destination (register or memory)

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Instruction Cycle - 2 Fetch  This actually takes several steps, represented here as “micro- instructions”, each of which can take a number of machine cycles to implement:  MAR  (PC) ; use the value in PC to access memory  MDR  Mem[MAR] ; read memory location to MDR  IR  (MDR) ; move (MDR) to IR  PC  (PC) + 1 ; increment the value of PC Decode  A decoder reads the opcode bit pattern & sets up the next state of the machine to appropriately use the remaining bits of the instruction.

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Instruction Cycle - 3 Evaluate Address  Computes the address of the memory location required to process the instruction (if any): e.g. the location from which to obtain a value. This is known as the Effective Address (EA). Fetch Operands  Obtains the source operand(s) (if any) either from Registers or from memory, i.e. from the EA calculated in the previous step.

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Instruction Cycle - 4 Execute  Carries out the execution of the instruction - e.g. add two operands present at the input of the ALU Store Result  Writes the result (if any) to its designated destination, either register or memory (using the EA calculated earlier) Start over …  Recall that the PC was incremented already in the first step, so the next Fetch will bring back the next instruction - unless the instruction just executed changed the PC.

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Instruction Cycle - 5 Some instructions don't need all 6 phases  If only using registers, skip Evaluate Address  If only moving data, skip Execute Control Instructions  These change the sequence of instructions  Branch  Loop  Function or procedure call  Execute phase changes the content of the PC, so the next instruction will be out of sequence.

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Stopping the Computer Operating System  controls the computer  when a program completes:  it exits  it returns control to the operating system  OS is ready for next command or program External Control  kill or halt a program  reset a computer

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside The Clock The Drum Beat of the Computer  every operation happens in multiples of a clock cycles clock Q Clock generator (crystal) S R Run Latch  if the run latch is set (output Q = 1) then the clock output is the same as the clock generator  if the latch is reset (off) then the clock output is disabled 0 volts one clock cycle 2.9 volts time