Sie sind auf Seite 1von 26

EE 344

Digital Computer Systems


Lecture 1
Prof. Bruce Kim

Admin

Instructor:
Prof. Bruce Kim, Room: ST-635,
Assistant: Saikat Mondal, Lab, ST-630
Phone: 212-650-7934,
E-mail: bruce.kim@ieee.org
Office Hours: Monday and Wednesday
from 2:00-3:30PM, or by appointment

Student Learning Outcomes


At the conclusion of this course, the
students in this class should be able to
understand microprocessor
architectures, instruction sets, binary
data representations, evaluation of
computer performance, memory
systems, and computer programming on
MIPS simulator.

Textbook
Computer Organization and
Design:
The Hardware/Software
Interface, Revised
4th Edition by Morgan
Kaufmann
Plus Lecture notes

Tentative Outline of Topics

Overview of a computer system (1.5 lectures)


CPU performance evaluation (2 lectures)
High Level Languages (2.5 lectures)
Assembly Languages (2.5 lectures)
Instruction Set Architecture, binary data representations
(3.5 lectures)
CPU microarchitecture, pipelines (5 lectures)
Control Unit design and Microprogramming (5 lectures)
Memory system (3 lectures)
I/O (2 lectures)
Midterms (2 lectures)

Grading Policy
The final grade will be determined on a maximum
score of 100% based on:
Homework
15%
Quizzes
10%
Mid-term 1
20% (~mid March)
Mid-term 2
20% (~end April)
Final (cumulative)
35% (optional >90%)
(Wednesday, May 20@10:30AM-12:45PM; 6PM-8:15PM)

Grade Scale: A+(100-97); A(96-91); A-(90);


B+(89); B(88-81); B-(80); C+(79); C(78-71); C-(70);
D+(69); D(68-61); F(60-0)

Policy on Missed Exams &


Coursework
Missed quizzes will not be made up under any
circumstances.
I will accept late homework only if you notify me
before it is due for special circumstances. Late
homework will receive penalty of 20% per day
including weekends.
If you miss a test, the final exam will count extra
in order to make up for the missed test. A student
must get instructors permission before the test is
given.

Homeworks
Homeworks are due at the start of the
lecture
Homeworks can be done in groups but hand
in separately and provide independent
answers
If I feel that you copied the solutions
from others, youll get a zero in that
homework.

Class Make-Up
Due to attending research meetings, conferences and site visits
for my research, there may be a conflict with the class
schedule. In those circumstances, we will resolve in the
following manner:

Reschedule class to other time


Compensate by having earlier midterm exam
Compensate by substitute instructor
I will announce any class conflicts due to travel in
class and Blackboard.

Goals of this Course


Understand how computers work
Understand the relationship between
assembly language, machine language,
and high-level language using MIPS
simulator
Understand the interaction between
software and hardware
Understand the basics of computer
hardware design in high abstract
level

Things not covered are:


Any specific details of
hardware/circuits
All HW circuits are in blocks, i.e.,
Controller, Adder, memory, etc.
Exactly how the circuits connect
Exact HW configurations
This is not a HW course!

Why do you need to learn this?


To write more efficient programs
To design better computer systems
To be able to use computers in different
applications and environments
To be able to analyze the performance of
any computer system
To be able to make a purchasing decision or
offer expert advice

Blackboard: The Course


Webpage

Always look at the Announcements section


You will find the lecture slides in pdf
You will find the reading assignments
Homework

The Course Web Page will be constructed soon.

How to get an A in this


course?
You have three sources of information:

These lectures (on the course web page)


Your own notes (lectures are not enough)
The textbook (webpage shows which sections to read)

Computer Organization and Design: The Hardware/Software


Interface,
Revised 4th Edition Morgan Kaufmann; (2012)

Never wait till near the exam to study


Always ask about anything you dont understand.
Never be shy!
Dont memorize!
Keep an eye on the course webpage announcements

SoWhat is a computer?
The Computer is only a fast idiot, it has no imagination;
it cannot originate action. It is, and will remain, only a tool
to human beings.
American Library Associations reaction to UNIVAC computer
Exhibit at the 1964 New York Worlds fair.

Computers
are dumb!

Inside PC

10

Processors

The Motherboard

Opening the Box of Laptop

11

Classes of Computers

Desktop computers
Designed to deliver good performance to a single user at low cost
usually executing 3rd party software, usually incorporating a graphics
display, a keyboard, and a mouse

Servers
Used to run larger programs for multiple, simultaneous users typically
accessed only via a network and that places a greater emphasis on
dependability and (often) security

Supercomputers
A high performance, high cost class of servers with hundreds to
thousands of processors, terabytes of memory and petabytes of
storage that are used for high-end scientific and engineering
applications

Embedded computers (processors)


A computer inside another device used for running one predetermined
application

Basic Definitions

Kilobyte 210 or 1,024 bytes

Megabyte 220 or 1,048,576 bytes


sometimes rounded to 106 or 1,000,000 bytes

Gigabyte 230 or 1,073,741,824 bytes


sometimes rounded to 109 or 1,000,000,000 bytes

Terabyte 240 or 1,099,511,627,776 bytes


sometimes rounded to 1012 or 1,000,000,000,000 bytes

Petabyte 250 or 1024 terabytes


sometimes rounded to 1015 or 1,000,000,000,000,000
bytes

12

The Processor Market

It all starts with a problem

13

Hardware and Software

14

The Program
System software
Operating system supervising program that interfaces
the users program with the hardware (e.g., Linux,
MacOS, Windows) - Handles basic input and output
operations - Allocates storage and memory - Provides for
protected sharing among multiple applications
Compiler translate programs written in a high-level
language (e.g., C, Java) into instructions that the
hardware can execute

Program

15

Advantages of Higher Level

Higher-level languages
Allow the programmer to think in a more natural language and for their
intended use (Fortran for scientific computation, Cobol for business
programming, Lisp for symbol manipulation, Java for web programming,
)
Improve programmer productivity more understandable code that is
easier to debug and validate
Improve program maintainability
Allow programs to be independent of the computer on which they are
developed (compilers and assemblers can translate high-level language
programs to the binary instructions of any machine)
Emergence of optimizing compilers that produce very efficient
assembly code optimized for the target machine
As a result, very little programming is done today at the assembler level

Hardware Organization
CPU
Input
Data Path
Memory

Control Unit

Output

Storage

16

Hardware vs Software
Logically equivalent
Price/performance
Depends on the application

Computer History
Eckert and Mauchly

1st working electronic


computer (1946)
18,000 Vacuum tubes
1,800 instructions/sec
3,000 ft3

17

Computer History
Maurice Wilkes

EDSAC 1 (1949)
http://www.cl.cam.ac.uk/UoCCL/misc/EDSAC99/

1st stored program


computer
650 instructions/sec
1,400 ft3

Transistor History
Transistor William Shockley, Walter Brattain,
John Bardeen (Bell Labs) in 1947
Bipolar transistor Schockley in 1949
First bipolar digital logic gate Harris in 1956
First monolithic IC Jack Kilby in 1959
First commercial IC logic gates Fairchild 1960

18

Intel 4004 Die Photo


Introduced in 1970
First
microprocessor

2,250 transistors
12 mm2
108 KHz

Intel 8086 Die Scan

29,000 transistors
33 mm2
5 MHz
Introduced in 1979
Basic architecture
of the IA32 PC

19

Intel 80486 Die Scan


1,200,000
transistors
81 mm2
25 MHz
Introduced in 1989
1st pipelined
implementation of
IA32

Pentium Die Photo


3,100,000
transistors
296 mm2
60 MHz
Introduced in 1993
1st superscalar
implementation of
IA32

20

Pentium III
9,500,000
transistors
125 mm2
450 MHz
Introduced in 1999

http://www.intel.com/intel/museum/25anniv/hof/hof_main.htm

Pentium 4
55,000,000
transistors
146 mm2
3 GHz
Introduced in 2000

http://www.chip-architect.com

21

Pentium 4

IBM Power 5

Core 2 Duo
(Merom)

Montecito

Core Duo (Yonah)

Cell Processor
Niagara
(SUN UltraSparc T1)

Intel Core Processors

22

Inside the Processor


AMD Barcelona: 4 processor cores

23

Technology Trends:
Microprocessor Complexity
100000000

Itanium 2: 41 Million
Athlon (K7): 22 Million
Alpha 21264: 15 million
Pentium Pro: 5.5 million
PowerPC 620: 6.9 million
Alpha 21164: 9.3 million
Sparc Ultra: 5.2 million

10000000

Moores Law

Pentium
i80486

1000000
i80386
i80286

100000

2X transistors/Chip
Every 1.5 years

i8086
10000
i8080
i4004
1000
1970

1975

1980

1985

1990

1995

2000

Year

Called
Moores Law

Moores Law

24

Intel Co-Founders

Gordon Moore

Robert Noyce

Andrew Grove (CEO)

25

Computer Technology
Memory
DRAM capacity: 2x / 2 years (since 96);
64x size improvement in last decade.

Processor
Speed 2x / 1.5 years (since 85);
100X performance in last decade.

Disk
Capacity: 2x / 1 year (since 97)
250X size in last decade.

End of Lecture 1!

26

Das könnte Ihnen auch gefallen