Lecture 1 Digital Computer Systems
description
Transcript of Lecture 1 Digital Computer Systems
-
1Digital Computer SystemsEE 344
Lecture 1Prof. Bruce Kim
Admin Instructor: Prof. Bruce Kim, Room: ST-635, Assistant: Saikat Mondal, Lab, ST-630 Phone: 212-650-7934, E-mail: [email protected] Office Hours: Monday and Wednesday
from 2:00-3:30PM, or by appointment
-
2Student 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
-
3Tentative 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)
-
4Policy 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.
-
5Class Make-UpDue 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 MIPSsimulator
Understand the interaction betweensoftware and hardware
Understand the basics of computerhardware design in high abstractlevel
-
6Things 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
-
7Blackboard: 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
-
8SoWhat 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 toolto human beings.
American Library Associations reaction to UNIVAC computerExhibit at the 1964 New York Worlds fair.
Computers are dumb!
-
9Inside PC
-
10
-
11
The Motherboard
Processors
Opening the Box of Laptop
-
12
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
-
13
The Processor Market
It all starts with a problem
-
14
Hardware and Software
-
15
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
-
16
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
Control Unit
Memory
CPU
Data PathInput
Output
Storage
-
17
Hardware vs Software
Logically equivalent Price/performance Depends on the application
Computer HistoryEckert and Mauchly
1st working electronic computer (1946)
18,000 Vacuum tubes 1,800 instructions/sec 3,000 ft3
-
18
Computer History Maurice Wilkes
1st stored program computer650 instructions/sec1,400 ft3http://www.cl.cam.ac.uk/UoCCL/misc/EDSAC99/
EDSAC 1 (1949)
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
-
19
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
-
20
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
-
21
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
-
22
Pentium 4 IBM Power 5 Core Duo (Yonah)
Core 2 Duo(Merom) Montecito Cell Processor
Niagara(SUN UltraSparc T1)
Intel Core Processors
-
23
Inside the Processor AMD Barcelona: 4 processor cores
-
24
Year
1000
10000
100000
1000000
10000000
100000000
1970 1975 1980 1985 1990 1995 2000
i80386
i4004
i8080
Pentium
i80486
i80286
i8086
Technology Trends: Microprocessor Complexity
2X transistors/ChipEvery 1.5 years
CalledMoores Law
Alpha 21264: 15 millionPentium Pro: 5.5 millionPowerPC 620: 6.9 millionAlpha 21164: 9.3 millionSparc Ultra: 5.2 million
Moores Law
Athlon (K7): 22 MillionItanium 2: 41 Million
Moores Law
-
25
Intel Co-Founders
Robert NoyceGordon Moore
Andrew Grove (CEO)
-
26
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!