IT3030E CA Chap1 Introduction
IT3030E CA Chap1 Introduction
❑ Projects:
IoT projects
2
IT3030E Fall 2023 2
Course administration
❑ Text: [Required] Computer Organization and
Design RISC-V 2nd edition, Patterson &
Hennessy 2021.
[Optional] Computer Organization and
Design Patterson & Hennessy (MIPS
version)
[Optional] Computer Organization and
Architecture, 10th Edition, William Stalling
[Optional] Computer Systems – A
Programmer Perspective
❑ Slides: pdf
❑ Schedule: as in timetable
❑ Future
Tailored medical care based on individual genome.
Super-human: transfer human’s brain to a mechanical body
(robot) for interstellar traveling (The Matrix franchise, Michio
Kaku, Physics of the Future 2011 and The Future of the Mind
2015).
…many more
❑ Computer performance
How to evaluate performance
Basic techniques to improve computer performance.
❑ Questions?
Why can one software run on different computers with different
organization?
Why an .exe file on a computer cannot run on a mobile phone?
How many ISA families are there in the market?
❑ Server computers
Network based
High capacity, performance, reliability
Range from small servers to building sized
❑ Embedded computers
Hidden as components of systems
Stringent power/performance/cost constraints
❑ Supercomputers
Super fast + expensive for high-end applications
Embedded
PC
Server
Super computer
IT3030E Fall 2023 17
Price/performance of computer classes
Super $Millions
Mainframe
$100s Ks
Server $10s Ks
Differences in scale,
not in substance Workstation $1000s
Personal $100s
Embedded $10s
Pascaline machine
Babbage’s Analytical Engine (plan 25)
Curiosity Stream - Calculating Ada: The Countess of Computing
IT3030E Fall 2023 19
A brief history of computers
❑ 1st generation: Vacuum tubes
ENIAC: 1st general purpose computer
- Computing artillery-firing tables
- Enormous in size and energy consumption
IAS: computer with Von Newman architecture
- Memory, ALU, Control, Input/Output, stored-program concept
UNIVAC: 1st commercial computer
IBM System/360
IT3030E Fall 2023 21
A brief history of computers
❑ Later generations: IC and VLSI
❑ Increasing price/performance
❑ Moore’s law
[Textbook]
IT3030E Fall 2023 29
What’s below your program?
❑ High-level language program (in C)
swap (int v[], int k)
{ int temp;
temp = v[k];
v[k] = v[k+1]; one-to-many
v[k+1] = temp;
C compiler
}
❑ 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)
Encoded instructions and
data
IT3030E Fall 2023 31
Hardware/software interface: below your program
❑ Application software
Written in high-level language (HLL)
❑ System software
Compiler: translates HLL code to
machine code
Operating System: service code
- Handling input/output
- Managing memory and storage
- Scheduling tasks & sharing resources
❑ Hardware
Processor, memory, I/O controllers
System Libraries
OS
Drivers
Hardware
❑ datapath +
control =
processor
(CPU)
❑ A web server
How fast a request can be served?
How many request can be served per second?
performanceX = 1 / execution_timeX
performanceX execution_timeY
-------------------- = --------------------- = n
performanceY execution_timeX
performanceA execution_timeB
-------------------- = --------------------- = n
performanceB execution_timeA
= #-------------------------------------------
CPU clock cycles for a program
clock rate
Instruction_count x CPI
= -----------------------------------------------
clock_rate
4 steps
20 steps
FIGURE 1.18 SPECINTC2006 benchmarks running on a 2.66 GHz Intel Core i7 920.
IT3030E Fall 2023 53
End of chapter 1