Static timing analysis in vlsi design

The increasing complexity of digital designs and the requirement of timing measurements in various design stages make static timing analysis critical. Each design stage utilizes static timing analysis to evaluate the system performance, and then optimizes the design accordingly. An accurate and efficient timing analysis package is crucial for the success of the whole design process. We studied three important problems in static timing analysis: false paths, multi-cycle paths, and hierarchical timing analysis. Static timing analysis should deal with false paths and multi-cycle paths to produce accurate timings. Previous published works focused on dealing with false paths in static timing analysis. There are several approaches; such as labeling algorithm and node-splitting approach, using tags to label and eliminate false path timings. A large number of tags need to be created and propagated. Thus, the efficiency is deteriorated. For hierarchical timing analysis, timing analysis iteratively performed on flatten circuits suffers from low efficiency because of increasing design complexity. Inspired by the gap between challenges and current sub-optimal solutions, we proposed three new techniques: (1) A two-direction propagation is proposed which minimizes the number of tagged false path timings using a biclique covering approach. We proved that all the non-false paths are covered and all the false paths are removed. A polynomial heuristic to perform the biclique covering minimization in minimal degree order is also introduced. (2) A framework unified processing false paths and multi-cycle paths is proposed which expands the tag-based approach for false paths to cover multi-cycle paths. Following the biclique covering approach for false paths, we devise time shifting for multi-cycle paths to improve the efficiency. We prove that the unified framework produces accurate timings. (3) An abstract, timing model reduction technique is proposed for hierarchical timing analysis. We introduce an iterative biclique-star replacement technique to minimize the abstract timing model, thus improving the efficiency. Combined the techniques proposed above, we provide an accurate and efficient static timing analysis package, which can be used in hierarchical design methodology.

[1]  T. C. Hu,et al.  Combinatorial algorithms , 1982 .

[2]  Sharad Malik,et al.  Computation of floating mode delay in combinational circuits: theory and algorithms , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[3]  Rajendran Panda,et al.  Removing user-specified false paths from timing graphs , 2000, Proceedings 37th Design Automation Conference.

[4]  Harish Kriplani,et al.  Timing model extraction of hierarchical blocks by graph reduction , 2002, DAC '02.

[5]  David Hung-Chang Du,et al.  On the General False Path Problem in Timing Analysis , 1989, 26th ACM/IEEE Design Automation Conference.

[6]  Randy H. Katz,et al.  Contemporary Logic Design , 2004 .

[7]  Alexander Saldanha,et al.  Timing analysis with implicitly specified false paths , 2000, VLSI Design 2000. Wireless and Digital Imaging in the Millennium. Proceedings of 13th International Conference on VLSI Design.

[8]  David Shallcross,et al.  Distance Realization Problems with Applications to Internet Tomography , 2001, J. Comput. Syst. Sci..

[9]  Robert K. Brayton,et al.  Hierarchical functional timing analysis , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[10]  John P. Hayes,et al.  Hierarchical timing analysis using conditional delays , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[11]  Robert K. Brayton,et al.  Integrating functional and temporal domains in logic design , 1991 .

[12]  S. S. Yau,et al.  Distance matrix of a graph and its realizability , 1965 .

[13]  Robert K. Brayton,et al.  Efficient Algorithms for Computing the Longest Viable Path in a Combinational Network , 1989, 26th ACM/IEEE Design Automation Conference.

[14]  Christos A. Papachristou,et al.  False path exclusion in delay analysis of RTL-based datapath-controller designs , 1996, Proceedings EURO-DAC '96. European Design Automation Conference with EURO-VHDL '96 and Exhibition.

[15]  Andrew R. Conn,et al.  Formulation of static circuit optimization with reduced size, degeneracy and redundancy by timing graph manipulation , 1999, 1999 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (Cat. No.99CH37051).

[16]  John Lillis,et al.  Interconnect Analysis and Synthesis , 1999 .

[17]  Daniel P. Siewiorek,et al.  Automated Multi-Cycle Symbolic Timing Verification of Microprocessor-based Designs , 1994, 31st Design Automation Conference.

[18]  Sharad Malik,et al.  Computation of floating mode delay in combinational circuits: practice and implementation , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[19]  Marvin A. Wold Design Verification and Performance Analysis , 1978, 15th Design Automation Conference.

[20]  Alexander Saldanha,et al.  Is redundancy necessary to reduce delay? , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[21]  Jyuo-Min Shyu,et al.  A Polynomial-Time Heuristic Approach to Approximate a Solution to the False Path Problem , 1993, 30th ACM/IEEE Design Automation Conference.

[22]  Norman P. Jouppi,et al.  Timing Analysis for nMOS VLSI , 1983, 20th Design Automation Conference Proceedings.

[23]  Robert K. Brayton,et al.  Circuit structure relations to redundancy and delay: the KMS algorithm revisited , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[24]  Haiko Müller,et al.  On edge perfectness and classes of bipartite graphs , 1996, Discret. Math..

[25]  John P. Hayes,et al.  An approximate timing analysis method for datapath circuits , 1996, ICCAD 1996.

[26]  Maciej J. Ciesielski,et al.  Elimination of multi-cycle false paths by state encoding , 1995, Proceedings the European Design and Test Conference. ED&TC 1995.

[27]  Mike Hutton,et al.  Efficient static timing analysis and applications using edge masks , 2005, FPGA '05.

[28]  Rajeev Motwani,et al.  Clique partitions, graph compression and speeding-up algorithms , 1991, STOC '91.

[29]  John P. Hayes,et al.  Fast and accurate timing characterization using functionalinformation , 2001, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[30]  Rajeev Motwani,et al.  Representing Graph Metrics with Fewest Edges , 2003, STACS.

[31]  Yi Zhu,et al.  Improving the efficiency of static timing analysis with false paths , 2005, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[32]  Tohru Sasaki,et al.  Hierarchical Design Verification for Large Digital Systems , 1981, 18th Design Automation Conference.

[33]  David J. Pilling,et al.  Computer-aided prediction of delays in LSI logic systems , 1973, DAC '73.

[34]  Hakan Yalcin,et al.  Functional timing analysis for IP characterization , 1999, DAC '99.

[35]  David Hung-Chang Du,et al.  Path sensitization in critical path problem , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[36]  Ryotaro Kamikawai,et al.  A Critical Path Delay Check System , 1981, 18th Design Automation Conference.

[37]  Krishna P. Belkhale,et al.  Timing analysis with known false sub graphs , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).