Lecture 2: Computer Technology & Abstractions - Last Time: Review: Don't Forget The Simple View
Lecture 2: Computer Technology & Abstractions - Last Time: Review: Don't Forget The Simple View
Last Time
Course Overview & Organization
Introduction to Computer Architecture
Today
Computer Elements
Transistors, wires, memory
Exciting times in the computer industry
Homework 1 due February 2
Books available at UT CO-OP Monday or Tuesday
1
What Happens in the Fab?
silicon ingots
blank wafers
2
Computer Elements
Transistors (computing)
How can they be connected to do something useful?
How do we evaluate how fast a logic block is?
Wires (transporting)
What and where are they?
How can they be modeled?
Memories (storing)
SRAM vs. DRAM
D S
3
Transistor As a Switch
Ideal Voltage G
Controlled G
Switch
D
S
D
S
Three
terminals
Gate
Drain VG = 0
Source
VG = 2.5
In physical world
Voltages, Currents
Electron flow
voltage
Vdd
In logical world -
abstraction Vhi
1
Simplify design
problem
4
Composition of Transistors
Logic Gates
Inverters, And, Or, arbitrary
Memory elements
Latches, registers, SRAM, DRAM
Inverter Operation
Vout
Vdd Vdd
Vdd Vdd
Charge Open
Out
Open
Discharge
Vdd Vin
Slide courtesy of D. Patterson
CS352 Spring 2010 Lecture 2
10
5
The Ugly Truth
Voltage
1 => Vdd Vout
In Out
Vin
0 => GND
Time
Slide courtesy of D. Patterson
CS352 Spring 2010 Lecture 2
12
6
Calculating Delays Through Circuits
Vin V1 V2
G1 G2
C1
V3
Vdd
Clarge
INV4x
Slide courtesy of D. Patterson
CS352 Spring 2010 Lecture 2
14
7
Clocking and Storage Elements
Typical Clock
1Hz = 1 cycle per second period
(cycle time)
CLK
CLK
Transparent Latch Q
D Q
D Q
CLK=0, Q=oldQ
CLK=1, Q=D
IN
D
Q
D
Q
OUT
Edge Triggered
Flip-Flop CLK
CLK
CLK
Clocking Methodology
Clk
. . . .
. . Combinational Logic . .
. . . .
8
Critical Path & Cycle Time
Clk
. . . .
. . . .
. . . .
Critical path: the slowest path between any two storage devices
Cycle time is a function of the critical path
must be greater than:
Clock-to-Q + Longest Path through the Combination Logic + Setup
Wires
Limiting Factor
Density
Speed
Power
Lossless
Lossy
9
Wire Density
Communication constraints
Must be able to move bits to/from storage
and computation elements
Example: 9 ported register SRAM file
32x64
9 ported
Register File
?
Chip Level
10
Board Level
Rack Level
MIT J-Machine
CS352 Spring 2010 Lecture 2
22
11
Memory
Summary
12
Technology Constraints through ~2004
Yearly improvement
Semiconductor technology
60% more devices per chip 1989
(doubles every 18 months)
15% faster devices 1992
(doubles every 5 years)
Magnetic Disks
60% increase in density 1995
3% DRAM speed
Circuit boards
5% increase in wire density 1998
Wire speed
increases slowly & reached its
limit
2004
Cables
no change 100x more devices since 1989
8x faster devices
CS352 Spring 2010 Lecture 2
25
1970s 1990s
semiconductor memory lots of transistors
very expensive complex control to exploit
microcoded control instruction-level
complex instruction sets parallelism
(good code density) move to multicore
Fortran Java/C#
software portability 2000s
1980s even more transistors
single-chip CPUs, on-chip slow wires
RAM feasible Power
simple, hard-wired control JavaScript, Ruby, Python
simple instruction sets ???
small on-chip caches
C/C++
CS352 Spring 2010 Lecture 2
26
13
Performance Trends
Faster Single
Processor
Frequency Scaling Larger, More
Capable Software
Managed Languages
?
More Cores Scalable Software
Scalable Apps +
Multi/Many Core
Scalable Runtime
14
Next Time
Reading assignment
P&H Chapter 1.4, 1.7-9
15
Basic Components: CMOS Logic Gates
A B Out A B Out
A Out 0 0 1 A Out 0 0 1
B 0 1 1 0 1 0
1 0 1 B 1 0 0
1 1 0 1 1 0
Vdd Vdd
A
Out
B
B
Out
Series Connection
Vin V1 Vout Vdd Vdd
G1 G2 Vin V1 Vout
G1 G2
Voltage C1 Cout
Vdd
Vin V1 Vout
Vdd/2
d1 d2
GND
Time
Total Propagation Delay = Sum of individual delays = d1 + d2
Capacitance C1 has two components:
Capacitance of the wire connecting the two gates
Input capacitance of the second inverter
Slide courtesy of D. Patterson
CS352 Spring 2010 Lecture 2
32
16