Title: Advanced Computer Architecture
1Advanced Computer Architecture
2Course Overview
- Background
- Historical
- SPARC Architecture
- Modern Trends in Computer Architecture
- Quantitative assessment (price/performance)
- Pipelining
- Superscalar and VLIW Architectures
- Memory Hierarchies
- Vector Processing
- Input/Output
- Future Trends
3Historical Background
- First Generation (1950 1959)
- Vacuum Tube Technology
- Second Generation (1960 1968)
- Transistor Technology
- 1964 IBM coined the term Computer Architecture
- Third Generation (1969 1977)
- Integrated Circuits
- Fourth Generation (1978 ?)
- Large and Very/Ultra Large Scale Integration
4RISC
- Reduced Instruction Set Computing
- Proposed by Patterson and Ditzel in 1980
5The SPARC Architecture
- SPARC
- Scalable Processor ARChitecture
- Programming Model
- Instruction Set
6SPARC Programming Model
Twenty-four window registers
7SPARC Programming Model (cont.)
Eight global registers, and control registers
8SPARC Instruction Set
- Load/Store operations
- Arithmetic, logical and shift operations
- Control transfer
- Control register access
- Floating point (or other coprocessor) operations
9Assembling and Linking
- Use the GNU C compiler (gcc)
gcc -g prog.s -o prog
10Macros
- Use m4
- Generic UNIX text macro processor
11Debugging
- Use the GNU debugger (gdb)
gdb prog
12A First Example
13SPARC Program
/ This program converts a temperature in
Celcius to Fahrenheit. George Wells - 30 May
2003 / offs 32 / Variables c and f
are stored in l0 and l1 / .global
main main mov 24, l0 !
Initialize c 24 mov 9, o0 ! 9
into o0 for multiplication mov l0,
o1 ! c into o1 for multiplication
call .mul ! Result in o0 nop
! Delay slot mov 5, o1
! 5 into o1 for division call .div
! Result in o0 nop
! Delay slot
14Example (cont.)
... add o0, offs, l1 ! f
result offs mov 1, g1 !
Trap dispatch ta 0 !
Trap to system
15(No Transcript)