This course will be a completely case-study based course. Topics include: the design principles and operation of state of the art architectures, qualitative and quantitative evaluation of computer systems, architectures based on Instruction-level parallelism (ILP) and task-level parallelism, basics of ISA design, pipelining, VLIW architectures, super pipelined, superscalar, SIMD and MIMD architectures, out-of-order and speculative execution, branch prediction, data prediction, advanced memory hierarchies, multi-threading, exploiting task-level and instruction-level parallelism; input and output; network communication architecture. Starting with the basic architecture concepts and ending up with studying several case studies based on the latest commercial processors, embedded processors and academic processors.