Analysis, design, and implementation of signal processing systems for communications and multimedia. Using state-of-the-art tools and technologies, the course surveys algorithms, architectures, and VLSI implementations of complex signal processing blocks, paying particular attention to performance, area, and energy efficiency. Modern design flow, from algorithm transformation, automatic (and custom) logic synthesis and optimization, circuit and physical design, and timing analysis and verification, for high performance, small area, and low power. Special attention will be devoted to addressing some of the most important contemporary challenges, such as clocking, technology scaling and deep submicron effects, interconnect, signal integrity, noise, and power distribution and consumption. Readings and discussions of the research literature, presentations, and design projects of varying complexity required. Example projects include arithmetic building blocks for DSP, embedded memories, fast convolution, filtering, data compression, and Viterbi and turbo decoding units.