1 / 15

Advanced Computer Architecture

Advanced Computer Architecture. George Wells. Course 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

darci
Download Presentation

Advanced Computer Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Advanced Computer Architecture George Wells

  2. Course 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

  3. Historical 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

  4. RISC • Reduced Instruction Set Computing • Proposed by Patterson and Ditzel in 1980

  5. The SPARC Architecture • SPARC: • Scalable Processor ARChitecture • Programming Model • Instruction Set

  6. l2 i6 i0 i2 o6 l0 i4 l6 o0 o2 o4 l4 l7 l3 o3 i1 o1 i3 i7 o7 o5 l1 i5 l5 SPARC Programming Model Twenty-four “window” registers:

  7. Y (multiply step) g0 g2 g4 g6 PSR NZVC S –cwp- g5 g3 g1 g7 TBR WIM PC nPC SPARC Programming Model (cont.) Eight “global” registers, and control registers:

  8. SPARC Instruction Set • Load/Store operations • Arithmetic, logical and shift operations • Control transfer • Control register access • Floating point (or other coprocessor) operations

  9. Assembling and Linking • Use the GNU C compiler (gcc): % gcc -g prog.s -o prog

  10. Macros • Use m4 • Generic UNIX text macro processor

  11. Debugging • Use the GNU debugger (gdb): % gdb prog

  12. A First Example • Temperature conversion

  13. SPARC 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

  14. Example (cont.) ... add %o0, offs, %l1 ! f = result + offs mov 1, %g1! Trap dispatch ta 0 ! Trap to system

More Related