TEACHING MATERIAL

  1. Introduction 

    1. Sand to Silicon (Video) 

    2. Making of a Chip (PDF) 

  2. Data Representation

  3. MIPS Instruction Set Architecture

  4. MIPS Assembly Language Programming

  5. Integer Multiplication and Division

  6. Floating-Point Arithmetic

  7. Performance

  8. Designing a Single-Cycle Processor

  9. Pipelined Processor and Hazards

  10. Memory and Caches

 

HOMEWORK AND GRADING

 

HANDOUT, SUPPORTING MATERIAL, AND REFERENCES

Student Work

Designing an Overflow Detector Circuit

Reference based on Patterson slides

Reference Presentations

  1. L01: Introduction

  2. L02: History of Computers

  3. L03: Machine Instructions

  4. L04: Machine Instructions

  5. L05: MIPS ISA

  6. L06: MIPS ISA

  7. L07: MIPS ISA

  8. L08: MIPS ISA

  9. L09: MIPS ISA

  10. L10: Instruction Formats

  11. L11: Instruction Formats

  12. L12: Instruction Formats

  13. L13: FP arithmetic

  14. L14: FP arithmetic

  15. L15: FP arithmetic

  16. L16: Performance

  17. L17: Performance

  18. L18: Single Cycle MIPS

  19. L19: Single Cycle MIPS

  20. L20: Single Cycle MIPS

  21. L21: Pipelining

  22. L22: Pipelining

  23. L23: Pipelining

  24. L24: Pipelining

  25. L25: Pipelining

  26. L26: Pipelining

  27. L27: Pipelining

  28. L28: Exceptions

  29. L29: Caches

  30. L30: Caches

  31. L31: Caches

  32. L32: Caches

  33. L33: Caches

  34. L34: Virtual Memory

  35. L35: Virtual Memory

  36. L36: Virtual Memory

  37. L37: IO Basics

  38. L38: IO Basics

  39. L39: IO Basic

Some Relevant Topics

 

Supporting Lab Material

 

Mini-Project Grading Sheet

MARS Simulator

MIPS Simulator

MIPS32 Architecture for Programmers, Volume I: Introduction to the MIPS32 Architecture, MIPS Technologies Inc, Revision 2.50, July 2005.

MIPS32 Architecture for Programmers, Volume II: The MIPS32 Instruction Set, MIPS Technologies Inc, Revision 2.50, July 2005.

MIPS32 Architecture for Programmers, Volume III: The MIPS32 Privileged Resource Architecture, MIPS Technologies Inc, Revision 2.50, July 2005.