Computer architecture course deals with instruction set architecture, microarchitecture and efficient implementation of microarchitecture. Understanding the computer architecture concepts is essential for students interested in hardware, processor design, compilers, and operating systems.
In the last four decades, the number of transistors in a chip has increased from few thousands to few billions. In order to utilize the available transistors in a chip to improve computational power, various micro-architectural techniques have been proposed, which lead to the design of variety of processors, from simple in-order pipeline processors to recent multi-core processors. The course provides a detailed understanding of various processor microarchitectural designs, which include in-order scalar pipeline design, out-of-order superscalar processor design, and multicore processor design.