slides (pptx)
Download
Report
Transcript slides (pptx)
INFO100 and CSE100
Fluency with Information Technology
Katherine Deibel
2012-04-25
Katherine Deibel, Fluency in Information Technology
1
Abacus: Fingers, strings, and stones
Antikythera mechanism:
Greek mechanical astronomical tool
Babbage Difference Engine:
Geared mechanical calculator
Vacuum tube computers:
Colossus, Eniac, Univac
Transistor Computers:
Manually-wired transistors
Integrated Circuits:
Modern age computers
2012-04-25
Katherine Deibel, Fluency in Information Technology
2
Integrated circuits (ICs) powered the
information revolution
When computers were made of discrete
parts, millions of hand connections
3 wires per transistor
2 per capacitor
2 per resistor
Labor intensive, expensive, error prone,
unreliable, cumbersome, … even with
robot manufacturing!
2012-04-25
Katherine Deibel, Fluency in Information Technology
3
Integrated circuits (ICs) solved that by
two ideas
Integration:
Circuits built as a unit from alike parts
Photolithography:
Printing process to make chips
2012-04-25
Katherine Deibel, Fluency in Information Technology
4
Inventor of the integrated circuit
and the handheld calculator
2000 Nobel Prize for Physics
First integrated circuit:
2012-04-25
Katherine Deibel, Fluency in Information Technology
5
758 million transistors (2008)
2012-04-25
Katherine Deibel, Fluency in Information Technology
6
photoresist
oxide
oxide
substrate
substrate
1. Prepare wafer
2012-04-25
2. Add photoresist
Katherine Deibel, Fluency in Information Technology
7
glass
chrome
glass
chrome
chrome
photoresist
PR
oxide
oxide
substrate
substrate
3. Align photomask
2012-04-25
chrome
4. Expose to UV light
Katherine Deibel, Fluency in Information Technology
8
PR
PR
PR
PR
oxide
oxide
oxide
substrate
substrate
5. Develop and remove
photoresist exposed
to UV light
2012-04-25
6. Etch exposed oxide
Katherine Deibel, Fluency in Information Technology
9
oxide
oxide
substrate
We now have our
circuit board
7. Remove remaining
photoresist
2012-04-25
Katherine Deibel, Fluency in Information Technology
10
Think bookmaking
Used to be monks copying each page by hand
Printing press requires initial typesetting and
then multiple copies are easy
Same idea with integrated circuits
Used to require wiring of individual transistors
Create the photomask and the circuit can be
created again and again
2012-04-25
Katherine Deibel, Fluency in Information Technology
11
Semiconductor:
Sometimes it conducts
Sometimes it doesn’t
One can control when semiconductors
do and don’t conduct
That is the basis for PandA with silicon
2012-04-25
Katherine Deibel, Fluency in Information Technology
12
Example: an AND gate
True only if both inputs are true
Make semiconductor
conduct if input 1 is true
Send “yes” signal
on wire
2012-04-25
Detect presence /
absence of “yes”
Make semiconductor
conduct if input 2 is true
Katherine Deibel, Fluency in Information Technology
13
A charged field can control whether a
semiconductor conducts or not
A transistor has three wires
Source (input)
Drain (output)
In
Gate
Out
Gate (control)
The charge of the control wire (gate) is key
Neutral gate, channel doesn’t conduct
Charged gate, channel conducts
2012-04-25
Katherine Deibel, Fluency in Information Technology
14
Deterministically execute instructions
to process information
Chooses the next instruction as it is
programmed
Executes specific instructions based only
on the program and input it is given
2012-04-25
Katherine Deibel, Fluency in Information Technology
15
A computer is an instruction execution
engine
The fetch/execute cycle is the process
that executes instructions
Instruction Fetch (IF)
Instruction Decode (ID)
Data Fetch (DF)
Instruction Execution (EX)
Result Return (RR)
2012-04-25
Katherine Deibel, Fluency in Information Technology
16
Fetch/Execute cycle
http://courses.washington.edu/fit100/sp1
2/videos/fetch-execute.swf
2012-04-25
Katherine Deibel, Fluency in Information Technology
17
ALU
Control
Input
Mouse
Keyboard
Scanner
Floppy Disk
Hard Disk
Memory
2012-04-25
Output
Katherine Deibel, Fluency in Information Technology
Monitor
Printer
Speakers
18
Programs and their data must be in the
memory while they are running
memory addresses
0
1
2
G
3
o
4
D
6
5
a
w
7
g
8
s
9
!
10
!
0
11
...
memory contents
byte = 8 bits
0
2012-04-25
1
0
0
0
1
0
0
Katherine Deibel, Fluency in Information Technology
19
The Fetch/Execute cycle is hardwired into
the computer’s control, i.e. it is the actual
“engine”
10
11
12
13
14
15
6
16
17
18
19
20
12
Zz
21
...
Instruction: ADDB 20, 10, 16
Put in memory location 20 the contents of memory
location 10 + contents of memory location 16
10
11
6
2012-04-25
12
13
14
15
16
17
18
12
Katherine Deibel, Fluency in Information Technology
19
20
18
21
...
20
Memory not usually broken up byte by byte
Many data types are longer than one byte
Integers are usually four bytes
Doubles (real numbers) are eight bytes
A word is a chunk of several bytes
32-bit machine → 4 bytes per word
Integers are one word
Doubles are two words
2012-04-25
Katherine Deibel, Fluency in Information Technology
21
Instructions tell where the data is, not
what the data is
An instruction might produce different
values even if the command is the same
Instruction: ADDB 20, 10, 16
10
11
12
13
14
15
16
8
10
17
18
19
7
11
60
2012-04-25
12
13
14
15
16
20
15
17
18
-55
Katherine Deibel, Fluency in Information Technology
19
20
5
21
...
21
...
22
The Arithmetic/Logic Unit does the actual
computation
Most computers have only about a 100150 instructions hard wired
Each type of data has its own separate instructions
ADDB :
ADDH :
ADD
:
ADDS :
ADDD :
ADDBU :
…
2012-04-25
add
add
add
add
add
add
bytes
half words
words
short decimal numbers
long decimal numbers
bytes unsigned
Katherine Deibel, Fluency in Information Technology
23
Input units bring data to memory from
outside world;
Output units send data to outside world
from memory
Most peripheral devices are “dumb” in that
the processor assists their operation
Disks are both memory devices and
input/output devices
2012-04-25
Katherine Deibel, Fluency in Information Technology
24
The program counter (PC) tells where the
next instruction comes from
Instructions are a word long, so add 4 to
the PC to find the next instruction (on a
32-bit machine)
Program Counter: 112
110
111
688,724
2012-04-25
112
113
114
115
ADD 210,216,220
116
117
118
119
AND 414,418,720
Katherine Deibel, Fluency in Information Technology
120
121
OR
...
25
The rate a computer performs the Fetch /
Execute cycle is controlled by its clock
Current clocks run 2-3 GHz (2-3 trillion cycles
a second!)
In principle, one instruction per cycle
Not always achieved as instructions may take
multiple cycles
Clever use of multiple ALUs allows for more
than one instruction to be completed per cycle
2012-04-25
Katherine Deibel, Fluency in Information Technology
26
Clock speed is not a good indicator of speed
Only good to compare CPUs in same brand
Other factors such as RAM and clock speed
Clock speed of the front-side bus
▪ Nervous system of computer
▪ Electrical pathway that connects CPU, RAM, hard drive
Memory
▪ Working memory of the computer
▪ Fast memory built into the CPU chip
▪ Having to save to disk is slooooooow
2012-04-25
Katherine Deibel, Fluency in Information Technology
27
From the transistors to the CPU to the
instructions, computers are well-structured
Explicit transistor layouts printed out en masse
Binary instructions connecting memory, input,
output, and the logic units
Logic follows logic
Despite our experience, computers are not
vindictive or cruel
Unless someone programs them that way
2012-04-25
Katherine Deibel, Fluency in Information Technology
28