Lecture_1
Lecture_1
ORGANIZATION AND
ASSEMBLY LANGUAGE
Assessment:
Assignments: 15%
Quizzes: 15%
Midterm test: 25%
Final exam: 45%
COMPUTER ORGANIZATION 5th
AND DESIGN Editio
n
The Hardware/Software Interface
Chapter 1
Computer Abstractions
and Technology
MOORE’S LAW
Moore’s Law states that integrated
circuit resources double every two
years (18–24) months.
Moore’s Law resulted from a 1965
prediction of such growth in IC
capacity made by Gordon Moore,
one of the founders of Intel.
Moore’s Law graph to represent
designing for rapid change
MOORE’S LAW
Year of introduction Transistors
4004 1971 2,250
8008 1972 2,500
8080 1974 5,000
8086 1978 29,000
286 1982 120,000
386™ 1985 275,000
486™ DX 1989 1,180,000
Pentium® 1993 3,100,000
Pentium II 1997 7,500,000
Pentium III 1999 24,000,000
Pentium 4 2000 42,000,000
IS MOORE’S LAW ENDING?
Intel’s former chief architect Bob Colwell
says: Moore’s law will be dead within a
decade (August 2013).
Theoretical physicist Michio Kaku
believes Moore's Law has about
10 years of life left
before ever-shrinking transistor sizes
smack up against limitations imposed
by the laws of thermodynamics and
quantum physics (April 2013).
https://www.intel.com/content/www/us/
en/newsroom/resources/moores-law.ht
ml#gs.kawmkf
IS MOORE’S LAW ENDING? (2)
BELL’S LAW
Bell's Law for the birth and death of computer
classes:
Bell's law of computer classes formulated by
Source: B Bell, “Bell’s Law for the Birth and Death of Computer Classes”, Comms of
ACM, 2008
GENERATION
THE 1ST
COMPUTER
Source:
COMPUTERS TODAY
Introduction
§1.1
THE COMPUTER REVOLUTION
Progress in computer
technology
Underpinned by Moore’s Law
Makes novel applications
feasible
Computers in automobiles
Cell phones
Human genome project
World Wide Web
Search Engines
Introduction
§1.1
THE COMPUTER REVOLUTION
(2)
Computers in automobiles
reduce pollution, improve fuel efficiency
via engine controls, and increase safety
through blind spot warnings, lane
departure warnings, moving object
detection, and air bag inflation to
protect occupants in a crash
Cell phones
more than half of the planet having
mobile phones, allowing person-to-
person communication to almost
anyone anywhere in the world
THE COMPUTER REVOLUTION
Introduction
§1.1
(3)
Human genome project
a global effort to identify the estimated
30,000 genes in human DNA to figure
out the sequences of the chemical
bases that make up human DNA to
address ethical, legal, and social issues
The cost of computer equipment to
map and analyze human DNA
sequences was hundreds of millions of
dollars. Since, costs continue to drop,
we will soon be able to acquire our
own genome, allowing medical care to
be tailored to us
Introduction
§1.1
THE COMPUTER REVOLUTION
(4)
World Wide Web
has transformed our society. Web
has replaced libraries and
newspapers
Search Engines
As the content of the web grew in size
and in value, many people rely on
search engines for such a large part of
their lives that it would be a hardship to
go without them
CLASSES OF COMPUTERS
Personal
computers
Server computers
Supercomputers
Embedded
computers
CLASSES OF COMPUTERS
Personal computers
Computers designed for use by an
individual
General purpose, variety of software
Subject to cost/performance tradeoff
Server computers
Computers used for running larger
programs for multiple users, often
simultaneously
Network based
High capacity, performance, reliability
Range from small servers to building
CLASSES OF COMPUTERS
Supercomputers
Consist thousands of processors and
many terabytes of memory
High-level scientific and engineering
calculations
Highest capability and cost but represent a
small fraction of the overall computer
market
Embedded computers
Hidden as components of systems
Largest class of computers and span the
widest range of applications
THE POSTPC ERA
Smart phones
represent the recent
growth in cell phone
industry, and they
passed PCs in 2011.
Tablets are the
fastest growing
category, nearly
doubling between
2011
and 2012.
Recent PCs and
traditional cell
phone categories
are relatively flat or
THE POSTPC ERA
Personal Mobile Devices (PMDs)
Small wireless devices
Battery operated
Connects to the Internet
Hundreds of dollars
Smart phones, tablets, electronic
glasses
THE POSTPC ERA
Cloud computing
Term cloud essentially used for the
Internet
Portion of software run on a PMD
and a portion run in the Cloud
Warehouse Scale Computers
(WSC)
Big datacenters containing 100,000
servers
Amazon and Google cloud vendors
Software as a Service (SaaS)
Delivers software and data as a service
over the Internet
WHAT YOU WILL LEARN
How programs are translated
into machine language
and how hardware executes
them
The hardware/software
interface
What determines program
performance
and how it can be improved
How hardware designers
improve performance
UNDERSTANDING PERFORMANCE
Algorithm
determines number of operations
executed
Programming language, compiler,
architecture
determine number of machine
executed
I/O system (including OS)
Architecture
§1.2 Eight Great Ideas in Computer
EIGHT GREAT DESIGN IDEAS
Design for Moore’s Law
Computer designs can take years, resources
available per chip can easily double or
quadruple between start and finish of project
Anticipate where technology will be when
design finishes
Use Abstraction to simplify design
Hide lower-level details to offer a simpler model
at higher levels
Make the Common Case Fast
To enhance performance better than
optimizing the rare case
Architecture
§1.2 Eight Great Ideas in Computer
EIGHT GREAT DESIGN IDEAS
Performance via Parallelism
A form of computation in which many
calculations are carried out simultaneously
Performance via Pipelining
A particular pattern of parallelism
A set of data processing elements connected
in series, so that the output of one element is
the input of the next one
Performance via Prediction
It can be faster on average to guess
and start working rather than wait
Architecture
§1.2 Eight Great Ideas in Computer
EIGHT GREAT DESIGN IDEAS
Hierarchy of memories
The closer to the top, the faster and more
expensive per bit of memory
The wider the base of the layer, the
bigger the memory
Dependability via redundancy
Design systems dependable by
including redundant components
to take over when failure occurs,
and
to help detect failures
Program
§1.3 Below Your
BELOW YOUR PROGRAM
Application software
Written in high-level language
System software
Compiler: translates HLL
code to machine code
Operating System:
Handling input/output
Managing memory and storage
Scheduling tasks & sharing
resources
Hardware
Processor, memory, I/O
controllers
LEVELS OF PROGRAM CODE
High-level language
Level of abstraction
closer to problem
domain
Provides for
productivity and
portability
Assembly language
Textual
representation of
instructions
Hardware
representation
Binary digits (bits)
Covers
§1.4 Under the
COMPONENTS OF A COMPUTER
The BIG Picture
Same components
for all kinds of
computer
Desktop,
Server,
Embedded
Input/Output
includes
User-interface devices
Display, keyboard,
mouse
Storage devices
Hard disk, CD/DVD,
flash
ABSTRACTIONS
The BIG Picture
Abstraction helps us deal with
complexity
Hides lower-level details
Instruction Set Architecture
(ISA) or Computer Architecture
The hardware/software interface
Includes instructions, registers,
memory access, I/O, and so on
Operating system hides details of
doing I/O, allocating memory from
A SAFE PLACE FOR DATA
Volatile main memory
Loses instructions and data when
power off
Non-volatile secondary memory
Flash memory
Optical disk (CDROM, DVD)
Magnetic disk
NETWORKS
Backbone of computer systems
Communication
Information is exchanged between computers
at high speeds
Resource sharing
Rather than each computer having its own
I/O devices, computers on the network can
share I/O devices
Nonlocal access
By connecting computers over long
distances, users need not be near the
computer they are using
NETWORKS
Local area network (LAN): Ethernet
A network designed to carry data
within a geographically confined area,
typically within a single building
Wide area network (WAN): the
Internet
A network extended over
hundreds of kilometers that can
span a continent
Wireless network: WiFi,
Bluetooth
Performance
§1.6
DEFINING PERFORMANCE
Which airplane has the best
performance?
Boeing 777 Boeing 777
BAC/Sud BAC/Sud
Concord Concord
e e
Dougla Douglas
s DC-8- DC- 8-
50 50
Clock (cycles)
Data transfer
and
computation
Update state
Clock period: duration of a clock
cycle
e.g., 250ps = 0.25ns = 250×10–12s
Clock frequency (rate): cycles per
second
CPU TIME
CPU Time CPU Clock Cycles Clock Cycle
Time
CPU Clock
Performance can be improved by
Cycles Clock
Reducing number
Rate of clock cycles
Increasing clock rate
Hardware designer must often trade off
clock rate against cycle count
CPU TIME EXAMPLE
Computer A: 2GHz clock, 10s CPU time
Designing Computer B
Aim for 6s CPU time
Clock B
Clock CyclesB 1.2 Clock
CPU Time
Rate Cycles
B
6s A
Clock CyclesA CPU Time A Clock
RateA
= 1.2
Same ISA
Which
CPU TimeisA faster? by how
Instruction Countmuch?
CPIA Cycle
A is faster…
Time A
Sequence 1: IC = Sequence 2: IC
5 = 6
Clock Cycles
Clock Cycles = 4×1 + 1×2 +
= 2×1 + 1×2 + 1×3
2×3 =9
= 10
Avg. CPI = 9/6 =
1.5
PERFORMANCE SUMMARY
The BIG Picture
Performance depends on
Algorithm: affects IC, possibly CPI
Programming language: affects IC, CPI
Compiler: affects IC, CPI
Instruction set architecture: affects IC,
Wall
§1.7 The Power
POWER TRENDS
Clock rate and Power for Intel x86 microprocessors over eight
generations
In CMOS IC technology
Power Capacitive load Voltage 2
Frequency
×30 5V → 1V ×1000
REDUCING POWER
Suppose a new CPU has
85% of capacitive load of old CPU
15% voltage and 15% frequency
reduction
Pnew Cold 0.85 (Vold2 0.85)2 Fold 0.854
Pold C V F
old old 0.52
old
0.85
The power wall
We can’t reduce voltage further
We can’t remove more heat
How else can we improve
performance?
Multiprocessors
§1.8 The Sea Change: The Switch to
UNIPROCESSOR PERFORMANCE
Technology
driven