Professional Documents
Culture Documents
Chris Clack
clack@cs.ucl.ac.uk
b261-request@cs.ucl.ac.uk
http://www.cs.ucl.ac.uk/teaching/B261
Objectives
To understand the fundamentals of computer
organisation and design
processor (datapath and control)
memory
input and output
To protect you against unscrupulous
sales(wo)men!
To accomplish this by learning how to control a
computer at a low level (assembler)
B261 Topics
Processor: interrupts
datapath
control
Cache
main bus
Graphics Keyboard
display
A Puzzle
And this?
0 1 2 8 0 32
0 3 4 9 0 32
0 8 9 5 0 34
How about this?
add $8,$1,$2
add $9,£3,$4
sub $5,$8,$9
More Translation
Becoming clear?
$8 = $1 + $2
$9 = $3 + $4
$5 = $8 - $9
Surely OK now?
u = a +b
v = c+d;
x=u-v
Or, obviously: x = (a+b) - (c+d)
Levels of Abstraction
compiler
add $8,$1,$2
add $9,£3,$4
Assembly code
sub $5,$8,$9
Assembler
00000000001000100100000000100000
00000000011001000100100000100000
Machine code 00000001000010010010100000100010
Another Interpretation?
Byte
An array of words 3 2 1 0
word is 32 bits
consisting of four 8-bit bytes 3 2 1 0
-- Instruction Formats
-- Exceptional Conditions
What is "Computer Architecture" (Patterson)
Application
Operating
Compiler System
Instruction Set
Architecture
Instr. Set Proc. I/O system
Digital Design
Circuit Design
Programming
Technology Languages
Applications
Computer
Architecture
Operating
Systems
History
Trends in Performance
10000000
r4400
i80486 r4000
1000000
i80386
i80286
100000
r3010
i8086
10000
i8080
i8008
i4004
1000
1970 1975 1980 1985 1990 1995 2000
1000
Supercomputers
100
Mainframes
Performance
10
Minicomputers
Microprocessors
1
0.1
1965 1970 1975 1980 1985 1990 1995 2000
Year
CPU and LAN Performance (Patterson)
Relative
Performance
CPU
(spec)
1000
LAN
DEC 1 Gb ATM
100 Alpha
MIPS
10 M/120
100 Mb FDDI
10 Mb
1
Year
1980 1985 1990 1995 2000
Summary