A Low Power Design Methodology with Multi-Vdd and Voltage Islands
Martine Schlag,Huaizhi Wu
2007-01-01
Abstract:Design for low power has become a key requirement in today's SoC design, especially for mobile applications. Multi-Vdd is an effective method to reduce both leakage and dynamic power, by assigning different supply voltages to cells according to their timing criticality. In a multi-Vdd design, cells of different supply voltages are often grouped into a small number of voltage islands (each having a single supply voltage), in order to avoid complex power supply system and excessive amount of level shifters (as the former would cause increase in design cost and the latter would cause extra overhead in area, delay and power). In this dissertation, we present a low power design approach which manages power, timing and design cost by using multi-Vdd and voltage islands. For multi-Vdd designs, we first solve the problem of automatically grouping cells of different supply voltages into a set of voltage islands that balance the power versus design cost tradeoff under performance requirements, where the supply voltages of the cells have been assigned according to their timing criticality. We do the grouping based on the placement proximity of the critical cells. To handle the multiple design parameters (timing, power and design cost), we formulate a couple of optimization problems, the Voltage-Partitioning problem and its dual, each of which can optimize one design parameter under constraints on the others. We then propose a couple of algorithms which not only produce good-quality voltage islands, but also have fast running time. Our experiments on a wide selection of industry designs show that, compared with the current logical-boundary based industry approach, our algorithm generates only one tenth number of voltage islands for the same amount of power reduction; in the mean time, the running time is small even for very large designs. One prerequisite of the voltage island grouping algorithm, is an initial voltage assignment at the standard cell level that meets timing. Also, as the voltage island grouping is based on the physical proximity of high voltage cells in the placement, such proximity has great influence on its output. We present a novel method to produce the initial voltage assignment at the standard cell level, which not only meets timing, but also forms good proximity of high voltage cells to provide the voltage island grouping with a smooth input. The algorithm is based on effective delay budgeting and efficient computation of physical proximity by Voronoi diagram. Our extensive experiments on industrial designs show that our voltage-island-aware voltage assignment leads to 25%--75% improvement in the subsequent voltage island grouping. Meanwhile, our running time on the computation of the physical proximity is only linear to the design size. Although the voltage assignment algorithm tries to form good proximity of high voltage cells for better voltage island grouping, however, sometimes due to insufficient slack, a few isolated critical cells (called outliers) may still exist in the resulting voltage assignment, incurring a disproportionately expensive penalty to the final voltage island grouping. In the final part of the dissertation, we propose a novel method to improve the voltage assignment by automatic outlier detection followed by incremental placement. The outlier detection is based on a modified algorithm for the facility location problem. The incremental placement is guided by setting proper constraints on the paths containing the detected outliers, such that the outliers can be eliminated later. Our extensive experiments on industry designs show that our algorithm leads to 12%--54% improvement in the final voltage island grouping, with quick turn around time.