How the cpu works
Download
1 / 29

How the CPU Works - PowerPoint PPT Presentation


  • 101 Views
  • Uploaded on

How the CPU Works. The “Little Man Computer” Version. Download the tutorial. You can download your own copy of the Little Man Computer simulation from the University of Hertfordshire Start the download now Save it to your hard drive We will use it shortly

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 ' How the CPU Works' - penda


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
How the cpu works

How the CPU Works

The “Little Man Computer”Version


Download the tutorial
Download the tutorial

  • You can download your own copy of the Little Man Computer simulation from the University of Hertfordshire

    • Start the download now

    • Save it to your hard drive

    • We will use it shortly

  • The link: http://www.herts.ac.uk/lis/ltdu_temp/ltdu/projects/mm5/#

  • You can access this link directly from my website



Lmc instruction codes
LMC Instruction Codes

  • LOAD instruction – op code 1

    • The Little Man goes to the mailbox specified

    • Reads the three-digit number in the mailbox

    • Puts that into the Calculator

  • Note:

    • The number in the mailbox is unchanged

    • The number in the calculator is replaced by the new number


Lmc instruction codes1
LMC Instruction Codes

  • STORE instruction – op code 2

    • The Little Man goes to the Calculator and reads the number there

    • He writes the number down on a slip of paper and puts it into the mailbox specified in the instructions

  • Note:

    • The number in the Calculator does not change

    • The number in the Mailbox is replaced with the new value


Lmc instruction codes2
LMC Instruction Codes

  • ADD instruction – op code 3

    • The Little Man walks over to the mailbox address specified in the instructions

    • He reads the number and adds this number to the number already in the calculator.

  • Note:

    • The number in the mailbox is unchanged


Lmc instruction codes3
LMC Instruction Codes

  • SUBTRACTION – op code 4

    • Same as the ADD instruction, except the number is subtracted

      • For this model we will assume that the Little Man handles negative numbers correctly, though we will not deal with it here.

  • Note:

    • The number in the mailbox is left unchanged


Lmc instruction codes4
LMC Instruction Codes

  • INPUT (or READ) – op code 5, “address” 00 (the 00 is ignored for this special instruction code)

    • The Little Man gets a slip of paper in from the in-basket

    • He types this number into the calculator

    • Each INPUT instruction handles only 1 slip of paper

    • The Little Man will ignore the address portion of this code


Lmc instruction codes5
LMC Instruction Codes

  • OUTPUT (or PRINT) – op code 6, “address” 00 (the 00 is ignored for this special instruction code)

    • The Little Man walks to the calculator and writes down the number on a slip of paper

    • This slip is put in to the out basket

    • Each OUTPUT instruction places 1 piece of paper in the out basket

    • The Little Man will ignore the address portion of this code


Lmc instruction codes6
LMC Instruction Codes

  • COFFEE BREAK (or HALT) – op code 7

    • The Little Man takes a break.

    • He will ignore the address portion of the instruction


A simple program
A Simple Program

  • A few items

    • We need to store the instructions somewhere

    • We need a method to tell the Little Man where to find the particular instructions that he is supposed to perform at any given time


A simple program1
A Simple Program

  • Assumed Solutions

    • Assume that the instructions are stored in the mailbox starting at mailbox number 00

    • The Little Man will perform instructions by looking at the value in the instruction location counter and execute the instruction found in the mailbox whose address has that value


A simple program2
A Simple Program

  • Assumed Solutions

    • Each time the LM completes and instruction, he will increment the Instruction Location Counter and do the instruction specified by the counter


A simple program3
A Simple Program

  • Look at a program where the USER uses the Little Man Computer to add two numbers.

  • The User will place two numbers in the in basket

  • The sum of the two will appear as a result in the out basket


A simple program4
A Simple Program

  • INPUT 500

    • The first step is to give the LM access to the data

    • This instruction has the LM read the first number from the in basket in to the calculator


A simple program5
A Simple Program

  • STORE 99 299

    • It is not possible for the LM to simply read another number into the calculator.

    • It would destroy the first number

    • We must save the first number somewhere

    • Mailbox 99 is chosen so that we don’t have any conflicts with other data or programs

      • Discuss this


A simple program6
A Simple Program

  • INPUT 500

    • The LM reads the second number into the calculator

  • ADD 399

    • We do not need to save the 2nd number in the example, but we could have.

    • The 1st number from mailbox 99 is added to the 2nd number in the calculator


A simple program7
A Simple Program

  • OUTPUT 600

    • The LM puts the result in to the out basket

  • COFFEE BREAK 700

    • The program terminates

  • Note:

    • These instructions are stored sequentially starting from mailbox 00.

    • This is so we could run the program again


A simple program8
A Simple Program

  • Code Summary

    Mailbox Instruction

    Step code description

    00 500 INPUT

    01 299 STORE DATA

    02 500 INPUT 2ND #

    03 399 ADD 1ST # TO it

    04 600 OUTPUT RESULT

    05 700 STOP

    99 DATA


Run the cpu simulator
Run the CPU Simulator

  • Now you try it.

  • Do the sample program included with the simulation

  • Write your own program (and show me that they work)

    • Write a program to add 3 numbers

    • Write a program that correctly calculates x + y + z – a – b (Ex. 1 + 2 + 3 – 4 – 5 = -3)

  • For the bold and intelligent ones:

    • Write the last program only using 2 mailboxes!


How the cpu works1

How the CPU Works

A More Complex View


Overview
Overview

  • We saw in the “Little Man Computer” a simplified version of how a CPU works.

    • Memory, the Control Unit, the Accumulator (calculator) were all located in the same area

    • Decimal system used for communication of instructions

    • Memory was limited to 100 “mailboxes”


Cpu components
CPU Components

  • 3 Major Parts

    • Arithmetic/Logic Unit (ALU)

    • Control Unit (CU)

    • Memory

  • The ALU & CU are known as the Central Processing Unit


Block diagram of system

CPU

Memory

ALU

Control UnitProgram Counter

I/O

Block Diagram of System


Direct comparison of lmc cpu
Direct Comparison of LMC & CPU

ControlUnit

ALU

I/OInterface

Memory

ProgramCounter


Arithmetic logic unit alu

CPU

Memory

ALU

Control UnitProgram Counter

I/O

Arithmetic/Logic Unit (ALU)

  • The component where data is held temporarily

  • Calculations occur here

  • It knows how to perform operations such as ADD, SUB, LOAD, STORE, SHIFT.

  • It knows the commands that make up the machine language of the CPU

  • It is the calculator


Control unit

CPU

Memory

ALU

Control UnitProgram Counter

I/O

Control Unit

  • Interprets and controls the execution of instructions

  • This control corresponds to the “fetch-execute” cycle

    • The fetch cycle gets the instructions

    • The execute cycle does the work specified in the instruction

Note


Registers

CPU

Memory

ALU

Control UnitProgram Counter

I/O

Registers

  • “A Register is a single, permanent storage location within the CPU used for a PARTICULAR, defined purpose.”

  • “A register is used to hold a binary value temporarily for storage, for manipulation, and/or for simple calculations.”

  • Registers have special addresses



ad