Issue No. 06 - November/December (2005 vol. 22)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MDT.2005.137
Sachin Sapatnekar , University of Minnesota
Reviewed in this issue
Statistical Analysis and Optimization for VLSI: Timing and Power, by Ashish Srivastava, Dennis Sylvester, and David Blaauw (Springer, 2005, ISBN 0-38-725738-1, 279 pp., $129).
In cutting-edge and future technologies, circuit designs are projected to witness a large degree of variation that will affect their behavioral characteristics. These include perturbations in the manufacturing process that can cause a circuit's parameters to deviate from the designed values, as well as environmental variations, such as fluctuations in a circuit's temperature. Consequently, the performance parameters of a circuit, typically measured in terms of the speed and power characteristics, show a statistical spread. With growing levels of variations, particularly within a single die, there is a growing consensus that traditional corner-based methods will be inadequate for nanometer-scale designs. Several EDA vendors are already offering CAD tools in this domain, or are planning to do so in the near future.
The negative impact of process and environmental uncertainties on circuit yields threatens to affect the economics of chip design; therefore, variation-tolerant techniques based on statistical design have been the focus of intense research over the past few years. Statistical Analysis and Optimization for VLSI: Timing and Power, by Ashish Srivastava, Dennis Sylvester, and David Blaauw, is the first detailed survey of developments in this field. This is an excellent resource for anyone interested in learning about the topic, as well as a practitioner or researcher seeking a quick reference. Although the book does not explicitly analyze various vendor offerings in this domain (nor should it, given the rapidly evolving landscape), users of statistical analysis and optimization CAD tools will find it invaluable because it provides the background required to separate the wheat from the chaff.
For their own part, the authors are eminently qualified to write this book. They have been at the forefront of research in this area and have published numerous research articles on the subject. For this book, they bring together their insight and experience, and provide the reader with a good view of the subject, as well as a clear view of the overall lay of the land.
The book is organized into six chapters, each of which logically builds upon the earlier chapters. It also contains a comprehensive reference section that is current—as of the time the book went to press in June 2005. Chapter 1 introduces and pushes for the need for statistical design, while also presenting an outline of the fundamental sources of variation and their impact on circuit performance. Chapter 2 builds up all the relevant background required for understanding work in this area, and cogently introduces Monte Carlo methods and methods for modeling process variations and circuit performance. The mathematical background in this chapter, such as descriptions of principal components analysis and reduced order modeling, is clearly presented and easy to understand.
Chapter 3 provides an overview of statistical timing analysis techniques, including block-based procedures, path-based methods, parameter space techniques, and techniques based on Bayesian networks. It describes the merits of each class and surveys several methods in each category. Although the chapter focuses with greatest detail on research from the authors' group, the authors do make a deliberate effort to include material from other sources, and the eventual result is a very comprehensive overview.
The next chapter moves on to statistical power analysis. The discussion begins with methods for modeling variations in dynamic power and leakage power (including subthreshold and gate leakage components), and then provides an overview of methods for statistical power analysis. Chapter 5 then combines statistical timing and power analysis techniques for overall yield analysis to determine the performance spread of circuits. Several supporting figures illuminate these ideas and illustrate how the yield is computable by either using absolute specifications or computing the spread of manufactured circuits in various speed bins.
Finally, Chapter 6 describes various methods for statistical circuit optimization under variations. Unlike conventional methods that optimize a circuit to meet a set of deterministic timing and power specifications, the work here aims to directly optimize the circuit yield under statistical variations. This includes process parameter optimization (for example, choosing the optimal threshold voltage levels in dual threshold voltage optimization), gate sizing, buffer insertion, and circuit-level dual threshold voltage optimization.
A glance at the proceedings of any recent conference on IC design shows that this area is hot, and that there is a strong growing focus on statistical design for variation tolerance. It is generally accepted today that any design or EDA professional must be conversant with statistical design techniques. Heretofore, the only resource available to the lay reader was a sea of such papers, and the only way someone could learn about this area was to read a statistical sample of these papers. By compiling this book and collating the essence of this material, the authors have, at the very least, made the learning process more deterministic.