CEN - 333 (Computer Architecture for Computer Scientists)
Fundamentals of Computer Design (Introduction, definition of performance, quantitative principles). Performance and Cost (Introduction, performance, and cost), Instruction Set Design (Introduction, instruction set architectures, operand storage in memory, memory addressing, operations in the instruction set, and the role of high-level language and compilers. Instruction Set Examples. Basic Processor Implementation Techniques (Introduction, processor datapath, basic steps of execution, hardware control, microprogrammed control, interrupts). Pipelining (Definition, Basic pipeline, pipeline hazards, difficulties). Memory-Hierarchy Design (Principle of locality, general principles of memory hierarchy, caches, main memory, and virtual memory). Input/Output (Introduction, predicting system performance, I/O performance measures types of I/O devices, and Buses). Future Directions (SIMD, MIMD, special-purpose processors, future directions for compilers)