0% found this document useful (0 votes)
84 views42 pages

L1 Intro To Computer

1. The document discusses the history and progression of computer technology, from early computers using 4-8 bit microprocessors in products like thermostats and rovers, to current computers using 64-bit microprocessors. 2. It describes different types of computers like desktops, servers, and embedded systems, and lists where computers can be found, such as automobiles, consumer electronics, medical devices, and more. 3. The anatomy of a computer is explained, including components like the central processing unit, memory, input/output devices, and networks that allow computers to function.

Uploaded by

Aiden Zhang
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)
84 views42 pages

L1 Intro To Computer

1. The document discusses the history and progression of computer technology, from early computers using 4-8 bit microprocessors in products like thermostats and rovers, to current computers using 64-bit microprocessors. 2. It describes different types of computers like desktops, servers, and embedded systems, and lists where computers can be found, such as automobiles, consumer electronics, medical devices, and more. 3. The anatomy of a computer is explained, including components like the central processing unit, memory, input/output devices, and networks that allow computers to function.

Uploaded by

Aiden Zhang
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/ 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

You might also like