Академический Документы
Профессиональный Документы
Культура Документы
Fall 2006
Lecture 1 Introduction and Five Components of a Computer
Adapted from CS 152 Spring 2002 UC Berkeley Copyright (C) 2001 UCB
Course Instructor
Rabi Mahapatra E-mail: (rabi@cs.tamu.edu), Sections: 501-503:MWF 12:40 1:30 PM
520B, HRBB tel: 845-5787 Office Hours: After the Class
TA Information
Suman K Mandal Email: Office: Office Hours: Lei Wu Phone: E-mail: (leiwu@tamu.edu) Office: 526, HRBB tel: 571-2640 Office Hour: TBD
CS Accounts
Use your CS accounts to turnin and check any email regarding course
Course Overview
Input Multiplicand
32
Input Multiplier
Multiplicand Register
32=>34 signEx <<1
34
LoadMp
32
34
32=>34 signEx
34x2 MUX
Arithmetic
Control Logic
ENC[2] ENC[1] ENC[0]
Computer Arithmetic
Multi x2/x1
34
34
34-bit ALU 34
Sub/Add
32
32
ShiftAll
2 LO[1:0]
32
32
Result[HI]
Result[LO]
Single/multicycle Datapaths
"LO [0]"
LO[1]
Booth Encoder
Extra 2 bits
Prev
Datapaths
Performance
IFetch Dcd
Exec Mem
Pipelining
Memory
Memory Systems
Whats In It For Me ?
In-depth understanding of the inner-workings of modern computers, their evolution, and tradeoffs present at the hardware/software boundary.
Insight into fast/slow operations that are easy/hard to implementation hardware
Experience with the design process in the context of a large complex (hardware) design.
Functional Spec --> Control & Datapath --> Physical implementation Modern CAD tools
Machine Organization
How the hardware implements ISA ? Physical View
1990s: Computer Architecture Course: Design of CPU, memory system, I/O system, Multiprocessors, Networks 2000s: Computer Architecture Course:
Non Von-Neumann architectures, Reconfiguration
Some Examples
Digital Alpha Sun SPARC (v8, v9) SGI MIPS (MIPS I, II, III, IV, V) IA-16/32 (8086,286,386, 486, Pentium, MMX, SSE, ) IA-64 (Itanium) AMD64/EMT64 IBM POWER (PowerPC,) microcontrollers (v1, v3) 1992-97 1986-96 1987-95 1986-96 1978-1999 1996-now 2002-now 1990-now RIP soon RIP soon HP PA-RISC (v1.1, v2.0)
PC HI LO
Instr. Set Proc. I/O system Datapath & Control Digital Design Circuit Design
Layout
Coordination of many levels of abstraction Under a rapidly changing set of forces Design, Measurement, and Evaluation
Cleverness
Operating Systems
History
instruction set
hardware
Input
Control Memory
Datapath
Output
Example Organization
TI SuperSPARCtm TMS390Z50 in Sun SPARCstation20
SuperSPARC Floating-point Unit Integer Unit L2 $ CC MBus DRAM Controller MBus Module
Inst Cache
Ref MMU
SBus
SBus
DMA
SCSI Ethernet
Bus Interface
SBus Cards
Technology Trends
Processor logic capacity: about 30% per year clock rate: about 20% per year Memory DRAM capacity: about 60% per year (4x every 3 years) Memory speed: about 10% per year Cost per bit: improves about 25% per year Disk capacity: about 60% per year Total use of data: 100% per 9 months! Network Bandwidth Bandwidth increasing more than 100% per year!
Technology Trends
Microprocessor Logic Density DRAM chip capacity
Year 1980 1983 1986 1989 1992 1996 1999 2002 DRAM Size 64 Kb 256 Kb 1 Mb 4 Mb 16 Mb 64 Mb 256 Mb 1 Gb
100000000 10000000
uP-Name
1000000
i80486
Transistors
i8086 10000
SU MIPS
1970
1975
1980
1985
1990
1995
2000
2005
In ~1985 the single-chip processor (32-bit) and the single-board computer emerged In the 2002+ timeframe, these may well look like mainframes compared single-chip computer (maybe 2 chips)
Technology Trends
Technology Trends
Levels of Representation
temp = v[k]; High Level Language Program v[k] = v[k+1]; v[k+1] = temp;
Compiler
Assembly Language Program
Assembler
Machine Language Program
0000 1010 1100 0101 1001 1111 0110 1000
lw lw sw sw
1100 0101 1010 0000 0110 1000 1111 1001
Execution Cycle
Instruction Obtain instruction from program storage
Fetch
Instruction Determine required actions and instruction size
Decode
Operand Fetch Execute Result Compute result value or status Deposit results in storage for later use Locate and obtain operand data
Store
Next Determine successor instruction
Instruction
Performance Metrics
Response Time
Delay between start end end time of a task
Throughput
Numbers of tasks per given time
New: Power/Energy
Energy per task, power
Examples (Throughput/Performance)
Replace the processor with a faster version?
3.8 GHz instead of 3.2 GHz
Measuring Performance
Wall-clock time or- Total Execution Time CPU Time
User Time System Time
Amdahls Law
Pitfall: Expecting the improvement of one aspect of a machine to increase performance by an amount proportional to the size of improvement
We want performance to be 5 times faster => 20 seconds = 80/n seconds / n + 20 seconds 0 = 80 / n !!!!
Summary
Computer Architecture = Instruction Set Architure + Machine Organization All computers consist of five components Processor: (1) datapath and (2) control (3) Memory (4) Input devices and (5) Output devices Not all memory are created equally Cache: fast (expensive) memory are placed closer to the processor Main memory: less expensive memory--we can have more Interfaces are where the problems are - between functional units and between the computer and the outside world Need to design against constraints of performance, power, area and cost
Summary
Performance eye of the beholder
Seconds/program =
(Instructions/Pgm)x(Clk Cycles/Instructions)x(Seconds/Clk cycles)