Вы находитесь на странице: 1из 42

Topic 1

Introduction to Computer
The Computer Revolution
n Progress in computer technology
n Moores Law
n Makes novel applications feasible
n Computers in automobiles
n Cell phones
n Biomedical project
n Internet+
n Security
n Computers are pervasive

Chapter 1 Computer Abstractions and Technology 2


Classes of Computers
n Desktop computers
n General purpose, variety of software
n Subject to cost/performance tradeoff
n Embedded computers
n Hidden as components of systems
n Subject to power/performance/cost constraints
n Server computers
n Network based
n High capacity, performance, reliability
n Range from small servers to building sized

Chapter 1 Computer Abstractions and Technology 3


Where can we find Computers
n Desktop, Laptop, hand held PC,
n Automotive
n Automatic Ignition Systems, Cruise, ABS, traction control, airbag release
system
n Consumer Electronics
n TV, PDA, appliances, toys, cell phones, camera
n Industrial Control
n robotics, control systems
n Medical
n Infusion Pumps, Dialysis Machines, Prosthetic Devices, Cardiac Monitors,
n Networking
n wired and wireless routers, hubs,
n Office Automation
n fax, photocopiers, printers, scanners,
n Aerospace applications
n Flight-control systems, engine controllers, auto-pilots and passenger in-flight
entertainment systems
n Defense systems
n Radar systems, fighter aircraft flight-control systems, radio systems, and missile
guidance systems

Chapter 1 Computer Abstractions and Technology 4


Product: Hunter
Programmable Digital
Thermostat.

Microprocessor: 4-bit

by Daniel W. Lewis

Chapter 1 Computer Abstractions and Technology 5


Product:Vendo V-
MAX 720 vending
machine.

Microprocessor:
8-bit Motorola
68HC11.

by Daniel W. Lewis

Chapter 1 Computer Abstractions and Technology 6


Product: Sonicare Plus toothbrush.
Microprocessor: 8-bit Zilog Z8.

by Daniel W. Lewis

Chapter 1 Computer Abstractions and Technology 7


Product: Miele
dishwashers.

Microprocessor:
8-bit Motorola
68HC05.

by Daniel W. Lewis

Chapter 1 Computer Abstractions and Technology 8


Product: NASA's
Mars Sojourner
Rover.

Microprocessor:
8-bit Intel 80C85.
by Daniel W. Lewis

Chapter 1 Computer Abstractions and Technology 9


Product: CoinCo
USQ-712 coin
changer.

Microprocessor:
8-bit Motorola
68HC912.

by Daniel W. Lewis

Chapter 1 Computer Abstractions and Technology 10


Product: Garmin
Nvi GPS
Receiver

Microprocessor:
32-bit.

Chapter 1 Computer Abstractions and Technology 11


Product: Motorola
i1000plus iDEN Multi-
Service Digital Phone.

Microprocessor:
Motorola 32-bit MCORE.

by Daniel W. Lewis

Chapter 1 Computer Abstractions and Technology 12


Product: Nintendo Wii Controller
Microprocessor: IBM 32-bit Power RISC

Chapter 1 Computer Abstractions and Technology 13


Product: Apple iPad

Microprocessor:
Apple A4,
a 32-bit ARM RISC.

Chapter 1 Computer Abstractions and Technology 14


Product: Apple iWatch

Microprocessor:
32-bit Apple A6 and
M7 Coprocessor

Chapter 1 Computer Abstractions and Technology 15


Product: iPhone 7

Microprocessor:
Apple A10, based on
64-bit quad-core
ARMv8-A

by Daniel W. Lewis

Chapter 1 Computer Abstractions and Technology 16


Product: Sony Aibo
ERS-110 Robotic
Dog.

Microprocessor:
64-bit MIPS RISC.
by Daniel W. Lewis

Chapter 1 Computer Abstractions and Technology 17


Anatomy of a Computer

Output
device

Network
cable

Input Input
device device

Chapter 1 Computer Abstractions and Technology 18


Opening the Box

Chapter 1 Computer Abstractions and Technology 19


Inside the Processor (CPU)
n Datapath: performs operations on data
n Control: controls how data flows
n Cache memory
n Small fast SRAM memory for immediate
access to data

Chapter 1 Computer Abstractions and Technology 20


Inside the Processor
n AMD Barcelona: 4 processor cores

Chapter 1 Computer Abstractions and Technology 21


Peripheral Memory
n Volatile main memory
n Loses instructions and data when power off
n Non-volatile secondary memory
n Magnetic disk
n Flash memory
n Optical disk (CDROM, DVD)

Chapter 1 Computer Abstractions and Technology 22


Peripheral Networks
n Communication and resource sharing
n Local area network (LAN): Ethernet
n Within a building
n Wide area network (WAN): the Internet
n Wireless network: WiFi, Bluetooth

Chapter 1 Computer Abstractions and Technology 23


Peripheral Display
n Screen and VGA card

(Source: Wikipedia.org)

Chapter 1 Computer Abstractions and Technology 24


Together with Software
n Application software
n Written in high-level language
(HLL)
n System software
n Operating System: service code
n Handling input/output
n Managing memory and storage
n Scheduling tasks & sharing resources
n Written in C and assembly
n Hardware
n Processor, memory, I/O controllers

Chapter 1 Computer Abstractions and Technology 25


Levels of Program Code
n High-level language
n What we use

n Assembly language
n What both we and computers can use

n Machine instruction
n What computers use

Chapter 1 Computer Abstractions and Technology 26


Levels of Program Code
n High-level language
n Syntax is similar to English
n A translator is required to translate
the program compile
n Allows the user to work on the
program logic at higher level

Chapter 1 Computer Abstractions and Technology 27


Levels of Program Code
n Assembly language
n Composed of assembly
instructions
n An assembly instruction is a
mnemonic representation of a
machine instruction
n Assembly instruction must be
translated before it can be executed
assembler
n Programmers need to work on the
program logic at a very low level,
hard to achieve high productivity.

Chapter 1 Computer Abstractions and Technology 28


Levels of Program Code
n Machine instruction
n A sequence of binary digits which
can be executed by the processor
n Hard to understand, program, and
debug for human being

From Wikipedia

Chapter 1 Computer Abstractions and Technology 29


Power Trends
Hit the wall

n In CMOS IC technology
Power = Capacitive load Voltage 2 Frequency

30 5V1V in 15y, 1000


15% off/generation
Chapter 1 Computer Abstractions and Technology 30
Uniprocessor Performance
25% per year, due to
new technologies

52% per year, benefited from 20% per year, limited by power,
architecture/organization advances instruction-level parallelism,
memory latency
Chapter 1 Computer Abstractions and Technology 31
Technology Trends
n Electronics technology
continues to evolve
n Reduced cost
n Parallelism
n Low power
n Increased capacity and
performance

(From Wikipedia)

Chapter 1 Computer Abstractions and Technology 32


How to Measure Computer Performance?
n Execution (response) time
n How long it takes to do a task
n Measure for PCs and embedded computers
n Throughput
n Total work done per unit time
n Servers
n Well focus on execution time for now

Chapter 1 Computer Abstractions and Technology 33


Measuring Performance - Time
n Elapsed time for System Performance
n Total execution time to complete a task, including
n Processing, I/O, OS overhead, idle time, everything
n But doesnt completely reflect computers
performance if it focuses on better throughput
n CPU time for CPU Performance
n CPU execution time processing a task
n Exclude I/O time, time spent for other tasks
n Comprises user CPU time and system CPU time
n Hard to differentiate
n Different programs run with different CPU
performance and system performance
n User must know whats the desired performance metric

Chapter 1 Computer Abstractions and Technology 34


Understanding Performance
Performance-related factors:
n Algorithm

n Determines number of operations executed


n Programming language, compiler, architecture
n Determine number of machine instructions executed
per operation
n Processor and memory system
n Determine how fast instructions are executed
n I/O system (including OS)
n Determines how fast I/O operations are executed

Chapter 1 Computer Abstractions and Technology 35


CPU Clocking
n Operation of digital hardware governed by a
constant-rate clock
Clock period

Clock (cycles)

Data transfer
and computation
Update state

Chapter 1 Computer Abstractions and Technology 36


CPU Time
CPU Time = CPU Clock Cycles per program Clock Cycle Time
CPU Clock Cycles
=
Clock Rate

n Performance improved by
n Reducing number of clock cycles Tradeoff we will
face when
n Increasing clock rate designing the
CPU

Chapter 1 Computer Abstractions and Technology 37


CPU Time Example
n Computer A: 2GHz clock, 10s CPU time
n Designing Computer B
n Aim for 6s CPU time
n Can do faster clock, but causes 1.2 clock cycles A
n How fast must Computer B clock be?
Clock CyclesB 1.2 Clock CyclesA
Clock RateB = =
CPU TimeB 6s
Clock CyclesA = CPU Time A Clock Rate A
= 10s 2GHz = 20 10 9
1.2 20 10 9 24 10 9
Clock RateB = = = 4GHz
6s 6s
Chapter 1 Computer Abstractions and Technology 38
Instruction Count (IC) and Clock cycle Per
Instruction (CPI)
n How instructions related to performance?
Clock Cycles = Instruction Count Clock Cycles per Instruction(CPI)
CPU Time = Instruction Count CPI Clock Cycle Time
Instruction Count CPI Classic CPU
=
Clock Rate performance equation

n Instruction Count for a program


n Determined by program, Instruction Set
Architecture (ISA), and compiler
n Cycles per instruction
n Determined by CPU hardware
n If different instructions have different CPI
n Average CPI, affected by instruction mix

Chapter 1 Computer Abstractions and Technology 39


CPI Example
n Computer A: Cycle Time = 250ps, CPI = 2.0
n Computer B: Cycle Time = 500ps, CPI = 1.2
n Same ISA
n Which is faster, and by how much?
CPU Time A = Instruction Count CPIA Cycle Time A
= I 2.0 250ps = I 500ps A is faster

CPU TimeB = Instruction Count CPIB Cycle TimeB


= I 1.2 500ps = I 600ps
CPU TimeB I 600ps
= = 1.2
CPU Time A I 500ps by this much

Chapter 1 Computer Abstractions and Technology 40


Performance Summary
The BIG Picture

Instructions Clock cycles Seconds


CPU Time =
Program Instruction Clock cycle

n Performance depends on
n Algorithm: affects IC, possibly CPI
n Programming language: affects IC, CPI
n Compiler: affects IC, CPI
n Instruction set architecture: affects IC, CPI, Tc

Chapter 1 Computer Abstractions and Technology 41


Concluding Remarks
n Classes and applications of computer
n Cost/performance is improving
n Due to underlying technology development
n Hierarchical layers of abstraction
n In both hardware and software
n Execution time: the best performance
measure
n Power is a limiting factor
n Use parallelism to improve performance
Chapter 1 Computer Abstractions and Technology 42

Вам также может понравиться