Fundamentals of processor architecture, instruction set design, memory hierarchy, pipelining, and performance optimization.
This undergraduate course provides a comprehensive foundation in computer organization and architecture. Students explore how hardware executes software — from instruction fetch and decode through execution, memory access, and write-back. The course culminates in a hands-on project where students design and simulate a working processor from the ground up using a hardware description language.
Students completing this course will be able to: (1) describe the functional components of a modern processor and how they interact; (2) analyze and resolve data, control, and structural hazards in a pipelined processor; (3) design and simulate a simple processor in HDL; and (4) evaluate processor performance using standard benchmarks and metrics.