[go: up one dir, main page]

0% found this document useful (0 votes)
57 views73 pages

Lecture 1 - CH01 - Abstraction - Tech

Uploaded by

zB H
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views73 pages

Lecture 1 - CH01 - Abstraction - Tech

Uploaded by

zB H
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 73

Lecture 1

• Computer abstractions & Technologies

1
Outline

 Overview of Computers
 Beneath the program & Under the covers
 Technologies for building processors and
memories
 Eight great ideas in computer architecture
 Computer Architecture 101 – Evaluations of
Computers
 A brief history of computers

2
Computers you know…

3
Operations of Modern Computer

 Von Neumann machines


 A stored program architecture
Computer
Main memory

data
program

HDD
John von Neumann, Processor
mathematician, physicist (CPU)
4
and inventor, 1903 – 1957
Modern Computer Food Chain –
Classification of Computers

Mainframe
Server Desktop Embedded
Mini- PC Computer

computer

Supercomputer Mini-
supercomputer Post-PC Era

5
Classes of Computers
 Desktop Computers
 A computer designed for use by an individual, usually
incorporating a graphics display, keyboard, and
mouse.
 Design Emphasis
 Performance & Cost (cost-effective solution)
 Meeting performance requirement for a broad range of
applications

6
Classes of Computers
 Servers
 A computer used for running larger programs for
multiple users and typically accessed only via a
network.
 eg: file server, web server, supercomputer
 Design Emphasis
 Dependability & Scalability
 Throughput > Latency

7
Classes of Computers

 Embedded Computers
 A computer inside another device used for running
one predetermined application or collection of
software.
 e.g., cell phones, PDA, network processor, IoT
 Design Emphasis
 Design for applications with unique requirements that
combine a minimum performance
PDA
 Minimize power & cost
 Dependability Robots

Automotive Systems
Smart
Set-top Box Router 8
Phones
Who really wins the market?

10
Outline

 Overview of Computers
 Beneath the program & Under the covers
 Technologies for building processors and
memories
 Eight great ideas in computer architecture
 Computer Architecture 101 – Evaluations of
Computers
 A brief history of computers

11
Below Your Program
 How to execute your code written
in high-level language to execute
on hardware that can only
recognize 0-1 signals?

Application
Operating
System
Compiler Firmware

CPU + Memory
I/O System

12
Levels of Representation
temp = v[k];
High Level Language
Program v[k] = v[k+1];

Compiler v[k+1] = temp;


lw $15, 0($2)
Assembly Language
Program lw $16, 4($2)
sw $16, 0($2)
Assembler sw $15, 4($2)
0000 1001 1100 0110 1010 1111 0101 1000
Machine Language 1010 1111 0101 1000 0000 1001 1100 0110
Program 1100 0110 1010 1111 0101 1000 0000 1001
0101 1000 0000 1001 1100 0110 1010 1111
Machine Interpretation
PCSrc

0
M
u
x
1

IF/ID ID/EX EX/MEM MEM/WB

Add

Add
4 Add
result
Branch
Shift
RegWrite left 2

Read MemWrite
Instruction

PC Address register 1 Read


data 1
Read ALUSrc
register 2 Zero
Zero MemtoReg
Instruction
Registers Read ALU ALU
memory Write 0 Read
data 2 result Address 1
register M data
u M
Data u
Write x memory
data x
1
0
Write
data
Instruction
[15– 0] 16 32 6
Sign ALU
extend control MemRead

Instruction
[20– 16]

13
0
M ALUOp
Instruction u
[15– 11] x
1

RegDst
Under the Cover - A Desktop Computer

Output Device

Input Device

14
Inside your PC DVD drive

Power supply

Fan with cover


Zip drive

Hard drive
Motherboard

15
Inside the Processor Chip
 Datapath is the component of the processor that
performs arithmetic operations.
 Control is the component of the processor that
commands the datapath, memory, and I/O devices
according to the instructions of the program.
 Memory

16
Pentium 4 processor chip
Touchscreen
 PostPC device
 Supersedes keyboard
and mouse
 Resistive and
Capacitive types
 Most tablets, smart
phones use capacitive
 Capacitive allows
multiple touches
simultaneously

Chapter 1 — Computer
Abstractions and
Technology — 18
Opening the Box – Ipad as Example

Chapter 1 — Computer
Abstractions and
Technology — 19
Inside the Processor

 A12 processor

Chapter 1 — Computer
Abstractions and
Technology — 20
A Safe Place for Storing Data

 Primary Memory (Main Memory)


 Volatile memory
 DRAM,SRAM
 Secondary Memory
 Nonvolatile memory
 Hardisk
 Optical disks
 Flash-based Solid-State Drives (SSDs)
 FLASH-based removable memory cards
 ZIP
Outline

 Overview of Computers
 Beneath the program & Under the covers
 Technologies for building processors and
memories
 Eight great ideas in computer architecture
 Computer Architecture 101 – Evaluations of
Computers
 A brief history of computers

22
Turing Bombe - 1939
 Code breaker used in World War II
 Forerunner of modern computers

23
Technologies for Building Processors and
Memory

Year Technology used Relative p/c

1951 Vacuum tube 1

1965 Transistor 35

1975 Integrated circuit 900

1995 VLSI 2,400,000

2005 ULSI 6,200,000,000

24
First Electronic Computers

ENIAC, University of Pennsylvania, US, 1946


Program-controlled by patch cables and switches DEBUGGING!
25
First Stored-Program Computing Device

EDSAC, University of Cambridge, UK, 1949


26
Stored-program in mercury delay line memory
First Commercial Computer

UNIVAC,Eckert-Mauchly Corp., US, 1951


Sold for $1 million, and 48 systems were built 27
Technologies for Building Processors and
Memory

Year Technology used Relative p/c

1951 Vacuum tube 1

1965 Transistor 35

1975 Integrated circuit 900

1995 VLSI 2,400,000

2005 ULSI 6,200,000,000

28
Technology behind Computer Systems

 IC Technology – Transistor Technology


 Moore’s Law (1965)
 Gordon Moore, Intel co-founder
 “The density of transistors in an integrated circuit will double
every year.”
 Reality
 “The density of
silicon chips
doubles every
18 months.

29
Semiconductor Technology Outlook

30 nm
50 nm 20 nm 10 nm
35 nm

SiGe S/D
5 nm
Strained SiGe S/D
Metal Gate
Silicon Strained Tri-Gate 5 nm
Nanowire

Silicon High-k

Si Substrate S D S

III-V
G
Carbon
Electronics Beyond Nano-scale CMOS, DAC’06 Nanotube FET
30
31
IC Manufacturing Process
Silicon ingot Blank wafers

Slicer 20 to 40 processing steps

Individual dies Patterned wafers


Tested dies (one wafer)

Bond die Die Wafer


to package tester tester

Packaged dies Tested Packaged dies

Part
tester Ship to customers

https://www.youtube.com/watch?v=d9SWNL
ZvA8g 32
12-inch Wafer of Intel Core i7

a die
 280 dies on the
wafer
 Each die is
20.7*10.5 mm
 4 cores in a die
 Integrated with
GPU
 32 nm technology

33
Yield is key to reduce cost…

 The percentage of good dies from the total


number of dies on the wafer

34
Advancing of technology brings…

 For CPUs

35
https://www.karlrupp.net/2015/06/40-years-of-microprocessor-trend-data/
Advancing of technology brings…

 For DRAMs

Growth of capacity per DRAM chip over time

36
Processor Limit: DRAM Gap

µProc
1000
CPU 60%/yr..

“Moore’s Law”

100 Processor-Memory
Performance Gap:
(grows 50% / year)

10
Performance

DRAM
7%/yr..
DRAM
1

1995
1989

1994
1987
1988

1990
1991
1992
1993

1996
1986

1997
1998
1985
1984

1999
1982
1983
1981

2000
1980

37
Design Challenges under the
Advanced Technologies
 Super complicated
 POWER!

38
Power Dissipation Increases ….

10000

Rocket Sun’surface
1000
Nozzle
Power Density (W/cm2)

Nuclear
Reactor
100

8008 8086 Hot Plate


10 8085
4004 486 P6
386 Pentium®
286
8080
1

1970 1980 1990 2000 2010

39
Design Challenges under the
Advanced Technologies
µProc
 Super complicated 1000
CPU60%/yr.
“Moore’s .
 POWER!!! Law”
100 Processor-Memory
 Memory Wall Performance Gap:
(grows 50% / year)

Performance
 Multi-core worsens 10
the problem DRAM
7%/yr..
DRAM
 Solutions 1
Novel memory

1995
1989
1987
1988
1990
1991
1992
1993
1994
1996
1986

1997
1998
1985
1984
1982
1983

1999
1981

2000
1980

architecture
 Novel memory materials

40
Design Challenges under the
Advanced Technologies
 Super complicated
 POWER!!!
 Memory Wall
 Multi-core worsens the problem
 Solutions
 Novel memory architecture
 Novel memory materials
 Reliability
 More transistors  easier to be faulty
 Security
41
Computation-in-Memory
Non von Neumann Architecture

• Off-chip memory access is time


consuming & power hungry • Reducing memory access
• Memory wall issue latency and energy
• Large memory bandwidth

42
Next Generation Technology

 Better technology than transistor?


 Better architecture than stored-program von
Neumann machines?

 Quantum Computer
 A q-bit can represent a vector

The printed circuit board


used to mount a q-bit chip
43
Quantum Computer – IBM Q

44
Challenges of Quantum Computers

 Operation model is totally different from modern


computers
 Modern programs cannot be ported to Quantum
Computers
 Support a specific set of applications
 Most of the applications running on general-purpose
computers cannot be executed on a quantum
computer
 Must be working under 0K
 −273.15℃
 New quantum technology support working under 3K

45
Forces on Computer Architecture
Technology Programming
Languages

Applications
Computer
Architecture

Operating
Systems
History

46
Outline

 Overview of Computers
 Beneath the program & Under the covers
 Technologies for building processors and
memories
 Eight great ideas in computer architecture
 Computer Architecture 101 – Evaluations of
Computers
 A brief history of computers

47
Super Complex CPUs of Modern Days

 Many cores on one chip


 4 to 8 physical cores
 Too many transistors
 More than trillions
 Technique of tackling complex IC designs
 Architectural-level system abstraction

48
Eight Great Ideas

 Design for Moore’s Law


 Use abstraction to simplify design
 Make the common case fast
 Performance via parallelism
 Performance via pipelining All of these
would be
 Performance via prediction
covered in this
 Hierarchy of memories semester’s
 Dependability via Redundancy lecture

49
Abstractions
The BIG Picture
 Abstraction helps us deal with complexity
 Hide lower-level detail
 Instruction set architecture (ISA)
 The hardware/software interface
 Application binary interface
 The ISA plus system software interface
 Implementation
 The details underlying and interface

Chapter 1 — Computer
Abstractions and
Technology — 50
Abstraction is key to building
systems with >1G components

Personal Computer: Circuit Board: Integrated Circuit:


Hardware & Software 8 / system 8-16 / PCB Module:
1-2G devices 0.25M-16M devices 8-16 / IC
100K devices

MOSFET
="transistor"
="device"

Scheme for Cell:


representing 1K-10K / Module
information Gate: 16-64 devices
2-8 / Cell
52
8 devices
Digital System Hierarchy
53

CPUs CPUs
CPUs Electronic System Level
CPUs, chip modules, IPs etc. On-chip Mem.

MP3 enc/dec
Electronic module Level (RTL)
multiplier, adders, etc.
Adder

Logic Circuit Level


AND, OR, NOT gates

CMOS transistor circuit level

Layout level
Outline

 Overview of Computers
 Beneath the program & Under the covers
 Technologies for building processors and
memories
 Eight great ideas in computer architecture
 Computer Architecture 101 – Evaluations of
Computers
 A brief history of computers

54
Evaluation is the first step
 To build a good computer, first thing you have to do is to
evaluate how good it is.

Compiler

Interface

Evaluating
performance
55
Metrics Matters

 Performance
 How fast a program can execute

 Power
 How much energy is consumed

 Others metrics
 Yield
 Cost
 Etc….
56
Metrics Matter!

 Two major metrics in modern days


 Performance
 Commonly used performance metrics
 Latency vs. Throughput

 Mathematical model of evaluating latency


 How to get performance values
 Power
 Difference between power and energy
 Mathematical model of evaluating power and energy
 Switching from the uniprocessor to multi-processor
 With the perspective of power consumption

57
Performance
 Why do we care about performance evaluation?
 Purchasing perspective
 given a collection of machines, which has the
 best performance ?
 least cost ?
 best performance / cost ?
 best performance / energy ?
 Design perspective
 faced with design options, which has the
 best performance improvement ?
 least cost ?
 best performance / cost ?

 How to measure, report, and summarize performance?


 What kind of performance metrics should be utilized?
 How to get the performance values?
58
Two Notions of “Performance”

 Response Time (latency)


— How long does it take for my job to run?
— How long does it take to execute a job?
— How long must I wait for the database query?
 Throughput
— How many jobs can the machine run at once?
— What is the average execution rate?
— How much work is getting done?

 If we upgrade a machine with a new processor what do we increase?


 If we add a new machine to the lab what do we increase?

59
Next Week

 How to quantify performance

60
Homework

 Readings
 Section 1.6 ~ 1.8
 For fun
 Section 1.12

61
Homework

 1.10 Assume a 15 cm diameter wafer has a cost of


12, contains 84 dies, and has 0.020 defects/cm2 .
Assume a 20 cm diameter wafer has a cost of 15,
contains 100 dies, and has 0.031 defects/cm2
 1.10.1 [40] Find the yield for both wafers.
 1.10.2 [20] Find the cost per die for both wafers.
 1.10.3 [20] If the number of dies per wafer is increased by
10% and the defects per area unit increases by 15%, fi nd
the die area and yield.
 1.10.4 [20] Assume a fabrication process improves the
yield from 0.92 to 0.95. Find the defects per area unit for
each version of the technology given a die area of 200
mm2 .

63
Outline

 Overview of Computers
 Beneath the program & Under the covers
 Technologies for building processors and
memories
 Eight great ideas in computer architecture
 Computer Architecture 101 – Evaluations of
Computers
 A brief history of computers

64
A Brief History of Computers…
 You can find more in Section 1.10 or Prof.
Asanovic’s slide

65
Turing Bombe - 1939
 Code breaker used in World War II
 Forerunner of modern computers

66
First Electronic Computers

ENIAC, University of Pennsylvania, US, 1946


Program-controlled by patch cables and switches DEBUGGING!
67
First Stored-Program Computing Device

EDSAC, University of Cambridge, UK, 1949


68
Stored-program in mercury delay line memory
First Commercial Computer

UNIVAC,Eckert-Mauchly Corp., US, 1951


Sold for $1 million, and 48 systems were built 69
A Famous Cooperation…

 IBM: International Business Machine


 Originally sold punched cards and office automation
products
 Didn’t start building computers until 1950
 In 1964, with $5 billion USD investments, IBM
announce System/360
 It was the first family of computers designed to cover the
complete range of applications, from small to large, both
commercial and scientific.
 The design made a clear distinction between architecture and
implementation, allowing IBM to release a suite of compatible
designs at different prices.

70
First Personal Computer

Designed by Steve Wozniak, the Apple IIe set standards of cost


and reliability for the industry.
71
Steve Wozniak and Steve Jobs are founders of Apple.
First Successful Computer with Mouse

 The original Macintosh


 First Mac computer
 Introduced at January 24, 1984
 The first commercially successful personal
computer to feature a mouse and a
graphical user interface rather than a The original Macintosh
command-line interface

Mac G3 Mac Mini MacBook Air


72
The Invention of Mouse
 Trackball
 By Royal Canadian Navy in 1952
 First mouse prototype
 By Douglas Engelbart and Bill English at First computer mouse

the Stanford Research Institute, 1963


 First ball mouse
 By Bill English at Xerox, 1972
 Optical mouse A ball mouse
 uses a light-emitting diode and photodiodes to detect
movement relative to the underlying surface

73
BACKUP SLIDES

74
System Software
 Software that provides services that are
commonly useful, including operating systems,
compilers, and assemblers.
 Operating system
 Handling basic input and output operations
 Allocating storage and memory
 Providing for sharing the computer among multiple
applications using it simultaneously
 Compiler
 A program that translates high-level language statements
into assembly language statements.

75
Advantages of High-Level
Languages
 Programmer can think of problem in a more
natural language, resulting programs look much
like text.
 Improved programmer productivity. Use less
time to develop program
 Programming languages allow programs to be
independent of the computer on which they were
developed.

76
Coordination of Levels of Representation

Application
Operating
System
Compiler Firmware
Instruction Set
Architecture
CPU Memory I/O system
Datapath & Control
Digital Design
Circuit Design
Layout

77

You might also like