cs 35101 computer architecture spring 2008 lecture 01 ...ssteinfa/classes/arch.sp08/slides... ·...

35
CS35101 L01 Introduction Steinfadt, KSU, SP08 1 CS 35101 Computer Architecture Spring 2008 Lecture 01: Introduction Created by Shannon Steinfadt Indicates slide was adapted from :Kevin Schaffer*, Mary Jane Irwinº, and from Computer Organization and Design (3rd Ed.), Patterson & Hennessy, © 2005, UCB

Upload: others

Post on 20-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP081

CS 35101 Computer Architecture

Spring 2008

Lecture 01: Introduction

Created by Shannon SteinfadtIndicates slide was adapted from :Kevin Schaffer*, Mary Jane Irwinº, and

from Computer Organization and Design (3rd Ed.),Patterson & Hennessy, © 2005, UCB

Page 2: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP082

Syllabus and Web Page Home page for the course:

http://www.cs.kent.edu/~ssteinfa/classes/arch.sp08/index.html

The Syllabus is located there athttp://www.cs.kent.edu/~ssteinfa/classes/arch.sp08/syllabus.html

Page 3: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP083

What You Should Know Create, compile, and run C (C++, Java) programs

Create, organize, and edit files and run programs onUnix/Linux

Page 4: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP084

Classes of Computing Applications Different applications - different requirements

Combine performance with stringent limitations on cost orpower

Desktop Computers Emphasize good performance for a single user

Servers Modern form of mainframes, minicomputers and

supercomputers Large workloads Greater emphasis on reliability Widest range in cost and performance http://top500.org/

Page 5: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP085

Classes of Computing Applications (con’t) Embedded Computers

Largest class of computers Widest range of applications and performance Usually have unique application requirements

- Combine a minimum performance with stringent limitations oncost or power

Despite low cost, least tolerance for failure In consumer-oriented applications

- Do 1 function as perfectly as possible

Which class (among 16- and 32-bit processors) is thefastest growing?

Page 6: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP086

Where is the Market?°

290

93

3

488

114

3

892

135

4

862

129

4

1122

131

50

200

400

600

800

1000

1200

1998 1999 2000 2001 2002

Embedded

Desktop

Servers

Mill

ions

of C

ompu

ters

Page 7: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP087

System Software*

Computers can only perform simple tasks on theirown; in order to accomplish any real work severallayers are software are required

Application software is the highest layer, this is thesoftware that the user interacts with

System software sits between application software andthe hardware and provides support to the applicationsoftware

Fig. 1.3: simplifiedhierarchicalabstraction

Page 8: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP088

Below Your Program*

An operating system is the interface tohardware resource and provides a number ofservices Input and output Memory management, file system Support for multiple programs running at once

A compiler translates high-level language codeinto machine instructions

Page 9: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP089

Bits and Bytes *

Computer hardware operates using just twosignals: on and off (or true and false)

We represent these signals using binarynumbers

A single binary digit, or bit, can only be either a 0or a 1, so multiple bits are needed to encodemore complex information

A sequence of 8 bits is called a byte (or octet)

32 bits are typically referred to as a word

Page 10: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0810

Instructions *

Binary numbers are also used to encode theinstructions which the computer understands

1000110010100000 is an instruction that tellsone computer to add two numbers

The instructions of a computer, encoded inbinary, make up the machine language of thatcomputer

The earliest programmers had no choice but towrite software directly in machine language

Page 11: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0811

Assembly Language *

It didn't take long for those early programmers tofind a way to avoid writing programs in machinelanguage

Assembly language replaces the binarynumbers of machine language with symbols thatare easier to understand Example: add A, B

The computer only understands machinelanguage; a program called an assembler isneeded to translate assembly code to machinelanguage

Page 12: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0812

High-Level Languages *

Assembly language statements still map directlyto machine instructions

High-level programming languages let you writecode in a more natural way using algebraicnotation, structured programming, etc.

This means that a statement in a high-levellanguage may map to several machineinstructions

A compiler translates the code into machineinstructions

Page 13: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0813

High-Level Languages *

Advantages Easier to understand Fewer statements to accomplish a task Machine independence

Disadvantage Some machine features can only be

accessed through assembly/machinelanguage

Page 14: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0814

C Program Translation

Figure 1.4: C programcompiled into assemblylanguage and thenassembled into binarymachine language

Page 15: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0815

Computer Organization *

ProcessorControl unitDatapath

Memory systemMain memoryCache

Input/output (I/O) devices

Page 16: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0817

I/O Devices *

Keyboards

Mice

Video displays

Sound cards

Network interface cards

Modems

Page 17: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0818

Processor *

The processor is where most of the work insidea computer is done

Also known as a central processor unit (CPU)

It is an integrated circuit (IC) or chip attached tothe computer's motherboard

Inside the processor, the control coordinates theprocessor's activities while the datapath followsthe commands of the control unit

Page 18: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0819

Memory *

A computer's main memory is made up ofdynamic random access memory (DRAM)

DRAM chips are grouped together intomodules called DIMMs (dual inlinememory modules)

DIMMs attach to the motherboard

Page 19: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0820

Cache *

Cache is a special type of fast memorythat is used to hold data that the processoris currently using

Cache is made from static random accessmemory (SRAM)

Cache is typically connected directly to themotherboard or integrated into theprocessor

Page 20: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0822

Instruction Set Architecture (ISA) ISA: An abstract interface between the hardware and

the lowest level software of a machine Encompasses all the information necessary to write a machine

language program that will run correctly, including instructions,registers, memory access, I/O, and so on.

Enables implementations of varying cost and performance to runidentical software

- Implementation: hardware that “obeys” the architecture abstraction

ABI (application binary interface): The basic instructionset and the operating system interface combined Provided for application programmers Defines a standard for binary portability across computers.

Page 21: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0823

By the architecture of a system, I mean the complete anddetailed specification of the user interface. … AsBlaauw has said, “Where architecture tells whathappens, implementation tells how it is made tohappen.”

The Mythical Man-Month, Brooks, pg 45

°

Page 22: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0824

ISA Type Sales

0

200

400

600

800

1000

1200

1400

1998 1999 2000 2001 2002

Other

SPARC

Hitachi SH

PowerPC

Motorola 68K

MIPS

IA-32

ARM

PowerPoint “comic” bar chart with approximate values (seeFigure 1.2 in text for correct values)

Mill

ions

of P

roce

ssor

Page 23: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0825

Storage

Volatile storage like DRAM and SRAM onlyretain data while receiving power

Nonvolatile storage like magnetic disks maintaindata even without power (Figure 1.11) Optical disks (CDs, DVDs) are a form of removable,

nonvolatile storage FLASH-based (USB/Jump drives) are another form of

removable, nonvolatile storage

Typically a computer has primary (or main)memory which is volatile and secondary memorywhich is nonvolatile

Page 24: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0826

Communicating with Other Computers:Computer Networks Major advantages to being networked:

Communication at high speeds Resource sharing (such as I/O devices) Nonlocal access allows remote use of machine

Page 25: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0827

Integrated Circuits*

ICs are built from electrically controlled switches calledtransistors Transistors are an on/off switch controlled by electricity

The feature size of an IC tells us how small thetransistors are and so a smaller feature size means moretransistors in the same area

Improvement in processor performance is due in largepart to shrinking transistor sizes

VLSI, very large scale integrated circuits - millions oftransistors or better

Page 26: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0828

Moore’s Law°

In 1965, Gordon Moore predicted that the number oftransistors that can be integrated on a die would doubleevery 18 to 24 months (i.e., grow exponentially withtime).

Amazingly visionary – million transistor/chip barrier wascrossed in the 1980’s. 2300 transistors, 1 MHz clock (Intel 4004) - 1971 16 Million transistors (Ultra Sparc III) 42 Million transistors, 2 GHz clock (Intel Xeon) – 2001 55 Million transistors, 3 GHz, 130nm technology, 250mm2 die

(Intel Pentium 4) - 2004 140 Million transistor (HP PA-8500) 1.72 billion transistors, 1.6GHz, 90nm tech. 596 mm² die

(Dual-Core Intel Itanium 2)§

§http://en.wikipedia.org/wiki/Montecito_%28processor%29

Page 27: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0829

Processor Performance Increase°

1

10

100

1000

10000

1987 1989 1991 1993 1995 1997 1999 2001 2003

Year

Perf

orm

an

ce (

SP

EC

In

t)

SUN-4/260 MIPS M/120MIPS M2000

IBM RS6000

HP 9000/750

DEC AXP/500 IBM POWER 100

DEC Alpha 4/266DEC Alpha 5/500

DEC Alpha 21264/600

DEC Alpha 5/300

DEC Alpha 21264A/667Intel Xeon/2000

Intel Pentium 4/3000

Page 28: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0830

DRAM Capacity Growth°

10

100

1000

10000

100000

1000000

1976 1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000 2002

Year of introduction

Kb

it c

ap

acit

y

16K

64K256K

1M

4M

16M64M

128M256M

512M

Page 29: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0831

Chip Fabrication *

An silicon ingot is sliced into wafers

Patterns are etched onto the wafers by repeatedlytreating them with chemicals and exposing them toultraviolet light

Wafers are cut into dies

Dies are bonded to packages

Page 30: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0832

Chip Fabrication

Figure 1.14: The chip manufacturing process

Page 31: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0833

Chip Fabrication

http://www.intel.com/pressroom/archive/releases/20060125comp.htm

Intel®300 mm waferwith 45 nm shuttletest chips

Die photo ofan Intel® 45nm shuttletest chipincluding153 MbitSRAM andlogic testcircuits

Page 32: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0834

Power *

Power consumption is becoming an increasinglyimportant issue in chip design

Embedded devices typically run on batteries and sopower must be conserved

Even in desktop computers, power is a concern since themore power a chip uses the more heat it generates

Page 33: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0835

Impacts of Advancing Technology °

Processor logic capacity: increases about 30% per year performance: 2x every 1.5 years

Memory DRAM capacity: 4x every 3 years, now 2x every 2 years memory speed: 1.5x every 10 years cost per bit: decreases about 25% per year

Disk capacity: increases about 60% per year

ClockCycle = 1/ClockRate

500 MHz ClockRate = 2 nsec ClockCycle1 GHz ClockRate = 1 nsec ClockCycle4 GHz ClockRate = 250 psec ClockCycle

Page 34: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0836

Example Machine Organization °

Workstation design target 25% of cost on processor 25% of cost on memory (minimum memory size) Rest on I/O devices, power supplies, box

CPU

Computer

Control

Datapath

Memory Devices

Input

Output

Page 35: CS 35101 Computer Architecture Spring 2008 Lecture 01 ...ssteinfa/classes/arch.sp08/slides... · CS35101 L01 Introduction 8 Steinfadt, KSU, SP08 Below Your Program* An operating system

CS35101 L01 Introduction Steinfadt, KSU, SP0837

Inside the Pentium 4 Processor Chip °