8 Great Ideas of Organization

  1. Moore’s Law: Processing power doubles every few years
  2. Use abstraction to simplify design; divide big problems into smaller ones
  3. Make the common case fast because the common case will be used very often
  4. Increase performance via parallelism; do multiple things at once
  5. Increase performance via pipelining; make use of all stages and steps whenever possible
  6. Increase performance via prediction
  7. Implement a hierarchy of memories
  8. Increase dependability via redundancy

Von Neumann Architecture

  • Much of modern computer architecture is based on Von Neumann Architecture
    • Separate CPU and RAM
    • Binary instructions and program data in MIPS are stored within the RAM
    • image
  • Instructions are run in a Fetch - Decode - Execute cycle
    • All of thise stored in the memory
    • image

Differences in Architecture

  • RISC Architecture
    • Reduced Instruction Set Computers
    • Wanted to provide a minimal set of instructions that covered all necessary operations
      • Few, simple instructtions with fixed size and short execution time
      • Explicit load and store instructions for memory
    • Examples include MIPS, LC3, PowerPC, SPARC
  • CISC Architecture
    • Complex Instruction Set Computers
    • Wanted to add more instructions so that programs used a smaller amount of instructions, thus reducing memory usage
      • Multiple operations per instruction
      • Many memory-related instructions
      • More information is used for each instruction due to instructions of variable length Examples include x86

Memory in Architecture

  • Memory is divided into cells with each cell having an address
    • Words are 32 bits
    • Memory is byte-addressable (can access in 8 bit / 1 byte increments)