This course forms a strong foundation in the understanding and design of modern computing systems. Building on a computer organization base, this course explores techniques that go into designing a modern microprocessor. Fundamental understanding of computer architecture is key not only for students interested in hardware and processor design, but is a foundation for students interested in compilers, operating systems, and high performance programming. This course will explore how the computer architect can utilize the increasing number of transistors available to improve the performance of a processor. Focus will be given to architectures that can exploit different forms of parallelism, whether they be implicit or explicit. This course covers architectural techniques such as multi-issue superscalar processors, out-of-order processors, Very Long Instruction Word (VLIW) processors, advanced caching, and multiprocessor systems.
Prior to joining Princeton, David Wentzlaff was a co-founder of Tilera Corporation. Before Tilera, he was one of the architects of the Raw Processor at MIT and designed the Raw on-chip networks. David founded the MIT Factored Operating System (fos) project which focuses on designing scalable operating systems for thousand core multicores and cloud computers. His current research includes designing next generation manycore processors for the data center and sustainable computing.