Chapter 5: Computer Systems Organization Invitation to Computer Science, C++ Version, Third & Fourth Edition Added to by S. Steinfadt - Spring 2008 Additional.

Slides:



Advertisements
Similar presentations
Chapter 2 Data Manipulation Dr. Farzana Rahman Assistant Professor Department of Computer Science James Madison University 1 Some sldes are adapted from.
Advertisements

The Central Processing Unit: What Goes on Inside the Computer.
Chapter 5 Computing Components. The (META) BIG IDEA Cool, idea but maybe too big DATA – Must be stored somewhere in a storage device PROCESSING – Data.
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.
CHAPTER 4 COMPUTER SYSTEM – Von Neumann Model
Chapter 5: Computer Systems Organization Invitation to Computer Science, Java Version, Third Edition.
Chapter 5 Computing Components Nell Dale John Lewis.
Chapter 5: Computer Systems Organization Invitation to Computer Science, C++ Version, Third Edition Added to by S. Steinfadt - Spring 2005 Additional source.
©Brooks/Cole, 2003 Chapter 5 Computer Organization.
Chapter 0 Introduction to Computing
Chapter 5: Computer Systems Organization Invitation to Computer Science, C++ Version, Fourth Edition Updated on 1 April 2009*
Elements of the Computer (How a processor works)
Chapter 5 Computing Components. 2 Chapter Goals Read an ad for a computer and understand the jargon List the components and their function in a von Neumann.
Computer Systems CS208. Major Components of a Computer System Processor (CPU) Runs program instructions Main Memory Storage for running programs and current.
0 What is a computer?  Simply put, a computer is a sophisticated electronic calculating machine that:  Accepts input information,  Processes the information.
5.1 Chaper 4 Central Processing Unit Foundations of Computer Science  Cengage Learning.
Computers Are Your Future Eleventh Edition Chapter 2: Inside the System Unit Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
BLOCK DIAGRAM OF COMPUTER
The Computer Systems By : Prabir Nandi Computer Instructor KV Lumding.
What is a Computer ? Computers are Electronic Machines that process (performs calculation and manipulation) Data under the control of Set of Instructions.
Invitation to Computer Science 5th Edition
CS 1308 Computer Literacy and the Internet Computer Systems Organization.
Chapter 5: Computer Systems Organization Invitation to Computer Science, Java Version, Third Edition.
Computer Systems Organization CS 1428 Foundations of Computer Science.
Computers Are Your Future Eleventh Edition Chapter 2: Inside the System Unit Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
Introduction to Computing Systems from bits & gates to C & beyond The Von Neumann Model Basic components Instruction processing.
Advanced Computer Architecture 0 Lecture # 1 Introduction by Husnain Sherazi.
Chapter 5: Computer Systems Organization Invitation to Computer Science, C++ Version, Third Edition.
Chapter 5 Computing Components Nell Dale John Lewis.
5-1 Computer Components Consider the following ad.
Von Neumann Machine Objectives: Explain Von Neumann architecture:  Memory –Organization –Decoding memory addresses, MAR & MDR  ALU and Control Unit –Executing.
CPU How It Works. 2 Generic Block Diagram CPU MemoryInputOutput Address Bus Data Bus.
Invitation to Computer Science 6th Edition Chapter 5 Computer Systems Organization.
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.
© 2005 Pearson Addison-Wesley. All rights reserved Figure 2.1 This chapter focuses on key hardware layer components.
General Concepts of Computer Organization Overview of Microcomputer.
Module 2 : Part 1 INTRODUCTION TO HARDWARE & SOFTWARE INTRODUCTION TO HARDWARE & SOFTWARE.
SKILL AREA: 1.2 MAIN ELEMENTS OF A PERSONAL COMPUTER.
Computer Science 101 Computer Systems Organization.
Computer Organization & Assembly Language © by DR. M. Amer.
CSCI-100 Introduction to Computing Hardware Part I.
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
Computer Architecture 2 nd year (computer and Information Sc.)
Computer Organization. The digital computer is a digital system that performs various computational tasks Digital computer use binary number system which.
CS 1308 Computer Literacy and the Internet. Objectives In this chapter, you will learn about:  The components of a computer system  Putting all the.
Machine Architecture CMSC 104, Section 4 Richard Chang 1.
Chapter 5 Computing Components. 2 Computer Components Consider the following ad:
Computer Organization. The Five Hardware Units General purpose computers use the "Von Neumann" architecture Also referred to as "stored program" architecture.
Invitation to Computer Science 6 th Edition Chapter 5 Computer Systems Organization.
Computer Systems. Bits Computers represent information as patterns of bits A bit (binary digit) is either 0 or 1 –binary  “two states” true and false,
Basic Computer Organization Rashedul Hasan.. Five basic operation No matter what shape, size, cost and speed of computer we are talking about, all computer.
Chapter 5 Computer Systems Organization. Levels of Abstraction – Figure 5.1e The Concept of Abstraction.
Simple ALU How to perform this C language integer operation in the computer C=A+B; ? The arithmetic/logic unit (ALU) of a processor performs integer arithmetic.
Chapter 5: Computer Systems Organization Invitation to Computer Science,
Main Memory Main memory – –a collection of storage locations, –each with a unique identifier called the address. Word- –Data are transferred to and from.
Von Neumann Machines. 3 The Von Neumann Architecture Model for designing and building computers, based on the following three characteristics: 1)The.
1 Chapter 1 Basic Structures Of Computers. Computer : Introduction A computer is an electronic machine,devised for performing calculations and controlling.
Introduction to Programming. Key terms  CPU  I/O Devices  Main memory  Secondary memory  Operating system  User interface  Application  GUI 
Computer Architecture Adapted from CS10051 originally by Professor: Johnnie Baker Computer Science Department Kent State University von Neuman model.
The Processor and Machine Language
Computer Organization
Computer Systems Organization
Chapter 5: Computer Systems Organization
The Von Neumann Architecture Odds and Ends
The Von Neumann Architecture
Chapter 5 Computer Organization
Presentation transcript:

Chapter 5: Computer Systems Organization Invitation to Computer Science, C++ Version, Third & Fourth Edition Added to by S. Steinfadt - Spring 2008 Additional source from J. Baker and M. Scherger’s slides

Invitation to Computer Science C++, Fourth Edition - Spring Objectives In this chapter, you will learn about: The components of a computer system Putting all the pieces together – the Von Neumann architecture The future: non-Von Neumann architectures

Invitation to Computer Science C++, Fourth Edition - Spring Machine Language Instructions InstructionBinary Op CodeMeaning 0 Load 1 Store 2 Clear 3 Add 4 Increment 5 Subtract 6 Decrement 7 Compare 8 Jump 9 Jump GT 10 Jump EQ 11 Jump LT 12 Jump NEQ 13 In 14 Out 15 Halt

Invitation to Computer Science C++, Fourth Edition - Spring Introduction Computer organization examines the computer as a collection of interacting “functional units” Functional units may be built out of the circuits already studied Higher level of abstraction assists in understanding by reducing complexity

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.1 The Concept of Abstraction

Invitation to Computer Science C++, Fourth Edition - Spring The Components of a Computer System Von Neumann architecture has four functional units:  Memory  Input/Output  Arithmetic/Logic unit  Control unit Sequential execution of instructions Stored program concept

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.2 Components of the Von Neumann Architecture

Invitation to Computer Science C++, Fourth Edition - Spring Computer Organization Logical organization of computer CPU InputOutput Memory Secondary Storage ALU

Invitation to Computer Science C++, Fourth Edition - Spring Memory and Cache Information stored and fetched from memory subsystem Random Access Memory maps addresses to memory locations Cache memory keeps values currently in use in faster memory to speed access times

Invitation to Computer Science C++, Fourth Edition - Spring Memory and Cache (continued) RAM (Random Access Memory ) Often called memory, primary memory  Memory made of addressable “cells”  Current standard cell size is 8 bits  All memory cells accessed in equal time  Memory address Unsigned binary number N long Address space is then 2 N cells

Invitation to Computer Science C++, Fourth Edition - Spring Memory and Cache (continued)  Rapid access, low capacity “warehouse”  Retains information entered through input unit  Retains info that has already been processed until can be sent to output unit

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.3 Structure of Random Access Memory

Invitation to Computer Science C++, Fourth Edition - Spring Powers of 2 - How much information? 2 10 = 1K = KB = 1 kilobyte 2 20 = 1M = 1,048,576 1MB = 1 megabyte 2 30 = 1G = 1,073,741,824 1GB = 1 gigabyte 2 40 = 1T = 1,099,511,627,776 1TB = 1 terabyte 2 50 = 1P = 1,125,899,906,842,6241PB = 1 petabyte If you have 16 address bits to address bytes… 2 16 = 2 6 * 2 10 = 64 * 2 10 = 64KB = 65,536 bytes How many bits is that?

Invitation to Computer Science C++, Fourth Edition - Spring Powers of 10 More examples and information at much-info/datapowers.htmlhttp://www2.sims.berkeley.edu/research/projects/how- much-info/datapowers.html Quantity in BytesBase-10 Value Amount of Textual Information 1 byte10 0 One character 1 kilobyte10 3 ≈ 2 10 One typed page 1 megabyte10 6 ≈ 2 20 Two or three novels 1 gigabyte10 9 ≈ 2 30 A departmental library or a large personal library 1 terabyte10 12 ≈ 2 40 The library of a major academic research university

Invitation to Computer Science C++, Fourth Edition - Spring Memory and Cache (continued) Parts of the memory subsystem  Fetch/store controller Fetch: retrieve a value from memory Store: store a value into memory  Memory address register (MAR)  Memory data register (MDR)  Memory cells, with decoder(s) to select individual cells

Invitation to Computer Science C++, Fourth Edition - Spring Memory and Cache (continued) Fetch operation  The address of the desired memory cell is moved into the MAR  Fetch/store controller signals a “fetch,” accessing the memory cell  The value at the MAR’s location flows into the MDR

Invitation to Computer Science C++, Fourth Edition - Spring Memory and Cache (continued) Store operation  The address of the cell where the value should go is placed in the MAR  The new value is placed in the MDR  Fetch/store controller signals a “store,” copying the MDR’s value into the desired cell

Invitation to Computer Science C++, Fourth Edition - Spring Memory and Cache (continued) Memory register  Very fast memory location  Given a name, not an address  Serves some special purpose  Modern computers have dozens or hundreds of registers

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.7 Overall RAM Organization

Invitation to Computer Science C++, Fourth Edition - Spring Cache Memory Memory access is much slower than processing time Faster memory is too expensive to use for all memory cells Locality principle  Once a value is used, it is likely to be used again Small size, fast memory just for values currently in use speeds computing time

Invitation to Computer Science C++, Fourth Edition - Spring Input/Output and Mass Storage Communication with outside world and external data storage  Input unit “Receiving” section of computer Obtains data from input devices  Usually a keyboard, mouse, disk or scanner Places data at disposal of other units  2. Output unit “Shipping” section of computer Puts processed info on various output devices  Screens, paper printouts, speakers Makes info available outside the computer

Invitation to Computer Science C++, Fourth Edition - Spring Input/Output and Mass Storage  Human interfaces: monitor, keyboard, mouse  Archival storage: not dependent on constant power External devices vary tremendously from each other

Invitation to Computer Science C++, Fourth Edition - Spring Input/Output and Mass Storage (continued) Volatile storage  Information disappears when the power is turned off  Example: RAM Nonvolatile storage  Information does not disappear when the power is turned off  Example: mass storage devices such as disks and tapes

Invitation to Computer Science C++, Fourth Edition - Spring Input/Output and Mass Storage (continued) Mass (secondary) storage devices  Direct access storage device Hard drive, CD-ROM, DVD, etc. Uses its own addressing scheme to access data  Sequential access storage device Tape drive, etc. Stores data sequentially Used for backup storage these days

Invitation to Computer Science C++, Fourth Edition - Spring Input/Output and Mass Storage (continued)  Mass or Secondary storage unit Long-term, high-capacity “warehouse” Stores programs or data not currently being used by other units on secondary storage devices (like discs) Takes longer to access than primary memory data location

Invitation to Computer Science C++, Fourth Edition - Spring Input/Output and Mass Storage (continued) Direct access storage devices  Data stored on a spinning disk  Disk divided into concentric rings (sectors)  Read/write head moves from one ring to another while disk spins  Access time depends on: Time to move head to correct sector Time for sector to spin to data location

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.8 Overall Organization of a Typical Disk

Invitation to Computer Science C++, Fourth Edition - Spring Input/Output and Mass Storage (continued) I/O controller  Intermediary between central processor and I/O devices  Processor sends request and data, then goes on with its work  I/O controller interrupts processor when request is complete

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.9 Organization of an I/O Controller

Invitation to Computer Science C++, Fourth Edition - Spring The Arithmetic/Logic Unit Arithmetic and Logic Unit  “Manufacturing” section of computer  Contains decision mechanisms and can make comparisons Actual computations are performed Primitive operation circuits  Arithmetic [+, -, *, /]  Comparison [equality or CE, GT, LT, NEQ]  Logic [AND, OR, NOT, XOR] Data inputs and results stored in registers Multiplexor selects desired output

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.12 Using a Multiplexor Circuit to Select the Proper ALU Result

Invitation to Computer Science C++, Fourth Edition - Spring The Arithmetic/Logic Unit (continued) ALU process  Values for operations copied into ALU’s input register locations  All circuits compute results for those inputs  Multiplexor selects the one desired result from all values  Result value copied to desired result register

Invitation to Computer Science C++, Fourth Edition - Spring The Control Unit Manages stored program execution Task  Fetch from memory the next instruction to be executed  Decode it: determine what is to be done  Execute it: issue appropriate command to ALU, memory, and I/O controllers

Invitation to Computer Science C++, Fourth Edition - Spring Machine Language Instructions Can be decoded and executed by control unit Parts of instructions  Operation code (op code) Unique unsigned-integer code assigned to each machine language operation  Address field(s) Memory addresses of the values on which operation will work

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.14 Typical Machine Language Instruction Format

Invitation to Computer Science C++, Fourth Edition - Spring Machine Language Instructions (continued) Operations of machine language  Data transfer Move values to and from memory and registers  Arithmetic/logic Perform ALU operations that produce numeric values

Invitation to Computer Science C++, Fourth Edition - Spring Machine Language Instructions (continued) Operations of machine language (continued)  Compares Set bits of compare register to hold result  Branches Jump to a new memory address to continue processing

Invitation to Computer Science C++, Fourth Edition - Spring Control Unit Registers And Circuits Parts of control unit  Links to other subsystems  Instruction decoder circuit  Two special registers: Program Counter (PC)  Stores the memory address of the next instruction to be executed Instruction Register (IR)  Stores the code for the current instruction

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.16 Organization of the Control Unit Registers and Circuits

Invitation to Computer Science C++, Fourth Edition - Spring Putting All the Pieces Together—the Von Neumann Architecture Subsystems connected by a bus  Bus: wires that permit data transfer among them At this level, ignore the details of circuits that perform these tasks: Abstraction! Computer repeats fetch-decode-execute cycle indefinitely

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.18 The Organization of a Von Neumann Computer

Invitation to Computer Science C++, Fourth Edition - Spring The Future: Non-Von Neumann Architectures Physical limitations on speed of Von Neumann computers Non-Von Neumann architectures explored to bypass these limitations Parallel computing architectures can provide improvements: multiple operations occur at the same time

Invitation to Computer Science C++, Fourth Edition - Spring The Future: Non-Von Neumann Architectures (continued) SIMD architecture  Single instruction/Multiple data  Multiple processors running in parallel  All processors execute same operation at one time  Each processor operates on its own data  Suitable for “vector” operations

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.21 A SIMD Parallel Processing System

Invitation to Computer Science C++, Fourth Edition - Spring Kent State ASsociative Computing Model (ASC) Associative Computer: A SIMD computer with a few additional features supported in hardware. These additional features can be supported (less efficiently) in traditional SIMDs in software. The name “associative” is due to its ability to locate items in the memory of PEs by content rather than location.

Invitation to Computer Science C++, Fourth Edition - Spring Busy- idle Dodge Ford Make Subaru Color PE1 PE2 PE3 PE4 PE5 PE6 PE7 red blue white red Year Model Price On lot IS Typical Data Structure for ASC Model Make, Color – etc. are fields the programmer establishes Various data types are supported. Some examples will show string data, but they are not supported in the ASC simulator.

Invitation to Computer Science C++, Fourth Edition - Spring Dodge Ford Make Subaru Color PE1 PE2 PE3 PE4 PE5 PE6 PE7 red blue white red Year Model Price On lot Busy- idle IS The Associative Search IS asks for all cars that are red and on the lot. PE1 and PE7 respond by setting a mask bit in their PE.

Invitation to Computer Science C++, Fourth Edition - Spring Modern SIMD-like Hardware NVIDIA Tesla C870 GPU Computing Processor ClearSpeed Advance X620 PCI-X Parallel Accelerator

Invitation to Computer Science C++, Fourth Edition - Spring MIMD architecture  Multiple instruction/Multiple data  Multiple processors running in parallel  Each processor performs its own operations on its own data  Processors communicate with each other The Future: Non-Von Neumann Architectures (continued)

Invitation to Computer Science C++, Fourth Edition - Spring Figure 5.22 Model of MIMD Parallel Processing

Invitation to Computer Science C++, Fourth Edition - Spring Cluster Computing cluster nodes: Athlon XP "Barton" 2.8 GHz 1 GB RAM, 120 GB Hard disk CD-ROM Drive 1 Gbit/s-Ethernet One single gateway node: Athlon XP "Barton" 2.8 GHz 1 GB RAM 2x 200GB Hard disk (200 GB RAID-1 mirrored) CDROM 1 Gbit/s-Ethernet internal; 100 Mbit/s external. Rack Mount cluster: 24 nodes with 1 gateway node Total 4TB of hard disk space

Invitation to Computer Science C++, Fourth Edition - Spring Quantum Computing Online introduction for class reading computer.htm/printable computer.htm/printable For a slightly more in-depth introduction

Invitation to Computer Science C++, Fourth Edition - Spring Summary of Level 2 Focus on how to design and build computer systems Chapter 4  Binary codes  Transistors  Gates  Circuits

Invitation to Computer Science C++, Fourth Edition - Spring Summary of Level 2 (continued) Chapter 5  Von Neumann architecture  Shortcomings of the sequential model of computing  Parallel computers

Invitation to Computer Science C++, Fourth Edition - Spring Summary Computer organization examines different subsystems of a computer: memory, input/output, arithmetic/logic unit, and control unit Machine language gives codes for each primitive instruction the computer can perform, and its arguments Von Neumann machine: sequential execution of stored program Parallel computers improve speed by doing multiple tasks at one time