Exploiting instruction level parallelism, hardware and software approaches. Pipelined, Vector, Super scalar, and VLIW processors. Predication, Branch Prediction, and Control and Data Speculation. Case Studies of Modern Processors. Hierarchical Memory Design. Virtual memory. Input/Output Interfacing and System Integration. Introduction to Parallel Processing. Flynn’s classification. Symmetric Multiprocessors. Cache coherence.