Advanced Computer Architecture
This course studies modern, advanced techniques used to design and produce current, state-of-the-art computer architectures. Technology, performance and price. The quantitative principle and Amdahl's law. Instruction sets; addressing modes, operands and opcodes; encoding instruction sets. RISC versus CISC architectures; MIPS. Pipelining; the classic five-stage pipeline, hazards, exceptions, floating point operations. Advanced pipelining techniques: dynamic scheduling, branch prediction. Multiple issue, speculation. Limits of parallelism. Compiler support for parallelism, VLIW. Caches. Examination of modern processors.
3 credits. Prerequisite: ECE 251
Course Code: ECE 453