ECEN 350

Computer Organization and Design

  1. Instruction Seth Architectures
    • Representing Instructions on the computer
    • Arithmetical and Logical Instructions
    • Memory access instructions
    • Control flow instructions
    • Function call instructions
  2. Computer Arithmetic
    • Signed and unsigned numbers
    • Floating point numbers
    • Addition and subtraction
    • Multiplication and Division
    • Floating point operations
  3. Translating and starting a program
    • Compilers, compiler optimization
    • Object code generation
    • Assemblers
    • Linking
    • Run-time execution environment
  4. Performance evaluation
    • CPU performance and its factors
    • Performance metrics
    • Performance factors
    • Comparing performance
    • SPEC benchmarks
  5. Datapath and Control, and ALU design
    • Single-cycle implementation
    • Multi-cycle implementation
    • Microprogramming
  6. Pipelining
    • Pipelined datapath
    • Pipelined control
    • Pipeline hazards
      • Structural
      • Control
      • Data hazards
      • Hazard detection and resolution
  7. Memory Hierarchy
    • Overview of SRAM and DRAM design
    • Basic of caches
    • Framework for memory hierarchy
    • Measuring memory performance
  8. Peripherals and disk storage