Covers the design of datapath subsystems, focusing on basic combinational components and various implementation options for adders, multipliers, and shifters.
Introduces matrix multiplication and Strassen's algorithm, covering divide-and-conquer approach, data structures like heaps, and MAX-HEAPIFY operation.