Introduction to Computer Organization

Download Report

Transcript Introduction to Computer Organization

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
Introduction to computing systems
from bits & gates to C & beyond
yale n. patt & sanjay j. patel
©2001
Introduction to Computing Systems
from bits & gates to C & beyond
Chapter 1
Welcome Aboard!
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
Understanding Computer Systems
 Three
basic questions associated with
understanding computing systems:
 What are computing systems used for?
 How are computing systems implemented?
 What are computing systems able to do and how well can they
do it?
1-3
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
Computing Machines

Ubiquitous ( = everywhere)
 General purpose: servers, desktops, laptops, PDAs, etc.
 Special purpose: cash registers, ATMs, games, telephone
switches, etc.
 Embedded: cars, hotel doors, printers, VCRs, industrial
machinery, medical equipment, etc.

Distinguishing Characteristics
 Speed
 Cost
 Ease of use, software support & interface
 Scalability
1-4
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
This course is about:
• What computers consist
of
• How computers work
• How they are organized
internally
• What are the design
tradeoffs
• How design affects
programming and
applications
1-5
• How to fix computers
• How to build myself one
real cheap
• Which one to buy
• Knowing more about
how a PentiumIII or
PowerPC works
internally
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
What is Computer Organization?
Electronic
Devices
Desired
Behavior
… a very wide gap between the intended behavior and the raw
(unorganized) electronic devices.
The forerunners to modern computers attempted to assemble the raw
devices (mechanical, electrical, or electronic) into a separate
purpose-built machine for each desired behavior.
1-6
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
Role of General Purpose Computers
computer
organization
Electronic
Devices
software
General
Purpose
Computer
Desired
Behavior
We will break the gap into multiple levels and build an island in the
middle.
A general purpose computer is an island that bridges the gap
between the desired behavior (application) and the raw material
(electronic devices).
1-7
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
Two Important Ideas
 Universal
Computational Devices
 Given enough time and memory, all computers are capable of
computing exactly the same things (irrespective of speed, size
or cost).
 Turing’s Thesis: every computation can be performed by some
“Turing Machine” - a theoretical universal computational device
(not mathematically proven, but taken to be true).
 Problem
Transformation
 The ultimate objective is to transform a problem expressed in
natural language into electrons running around a circuit!
 That’s what Computer Science and Computer Engineering are all
about!
1-8
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
Problem Transformation
- finer breakdown
Desired Behavior:
application
Natural Language
Algorithm
Program
Machine Architecture
Micro-architecture
Raw Material:
electronic devices
Logic Circuits
Devices
1-9
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
Levels of Description
 These levels do not necessarily correspond
to discrete components, but to
predetermined (fixed) standard interfaces.
Natural Language
Algorithm
 Standard interfaces provide



portability
third party software/hardware
wider usage
 These levels are to some extent arbitrary there are other ways to draw the lines.
Program
Machine Architecture
Micro-architecture
Logic Circuits
Devices
1 - 10
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 Program Level
 Most computers run a special
management program called the
operating system (OS).
Application Program
Operating System
 Application programs interface to the
machine architecture via the OS.
Program (Software)
An example:
1 - 11
This lecture
Data
PowerPoint
Application Program
Windows NT
Operating System
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 Machine Level
 Machine
Architecture
This is the formal specification of all the functions a particular
machine can carry out, known as the Instruction Set Architecture
(ISA)
 Microarchitecture
The implementation of the ISA in a microprocessor - i.e. the way
in which the specifications of the ISA are actually carried out.
 Logic
Circuit
Each element of the microarchitecture is composed of simple
logic circuits
 Devices
Finally, each logic circuit is actually built of electronic devices
such as CMOS or NMOS or GaAs (etc.) transistors
1 - 12
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
Course Outline - What is Next?

How to represent numbers

The building blocks of computers: logic gates

The basic algorithm: the von Neumann model

An example: the LC-2 structure and language

Programming the machine: assembly language

A higher-level language: C
1 - 13