Provably efficient algorithms for resolving temporal and spatial difference constraint violations

A system of difference constraints is a formal model of temporal and spatial constraints in many areas such as scheduling, constraint satisfaction, and layout compaction. During construction of such a system, constraint violations often arise, and they need to be resolved. Previous algorithms for this task fall into two groups: those algorithms that are fast but cannot resolve all violations, and those algorithms that can resolve all violations but are exponentially slow. We propose the first algorithms that are fast as well as able to resolve all violations. Moreover, unlike the previous algorithms, our algorithms support the ordering of violations using their inherent criticality or user-defined priority. We provably and experimentally justify the efficiency and efficacy of our algorithms.

[1]  Ragunathan Rajkumar,et al.  Monitoring timing constraints in distributed real-time systems , 1992, [1992] Proceedings Real-Time Systems Symposium.

[2]  Andrew V. Goldberg,et al.  Shortest paths algorithms: Theory and experimental evaluation , 1994, SODA '94.

[3]  Chak-Kuen Wong,et al.  An Algorithm to Compact a VLSI Symbolic Layout with Mixed Constraints , 1983, 20th Design Automation Conference Proceedings.

[4]  Rajesh K. Gupta,et al.  Faster maximum and minimum mean cycle algorithms for system-performance analysis , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[5]  Gaetano Borriello Specification and Synthesis of Interface Logic , 1991 .

[6]  Ron Miller,et al.  Scheduling using behavioral templates , 1995, DAC '95.

[7]  Sabih H. Gerez,et al.  Algorithms for VLSI design automation , 1998 .

[8]  K. Ishima,et al.  An algorithm to detect positive cycles in a constraint graph for layout compaction , 1990, IEEE International Symposium on Circuits and Systems.

[9]  Fadi J. Kurdahi,et al.  A constraint-based application model and scheduling techniques for power-aware systems , 2001, CODES '01.

[10]  John A. Nestor,et al.  SALSA: a new approach to scheduling with timing constraints , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[11]  Jian-Feng Shi,et al.  Resource constrained algebraic transformation for loop pipelining , 1996, Proceedings of the Sixth Great Lakes Symposium on VLSI.

[12]  Werner L. Schiele Compaction with incremental over-constraint resolution , 1988, DAC '88.

[13]  Rina Dechter,et al.  Temporal Constraint Networks , 1989, Artif. Intell..

[14]  Ronald L. Rivest,et al.  Introduction to Algorithms , 1990 .

[15]  Hai Zhou,et al.  Parallel CAD: Algorithm Design and Programming Special Section Call for Papers TODAES: ACM Transactions on Design Automation of Electronic Systems , 2010 .

[16]  Gaetano Borriello,et al.  Software Scheduling in the Co-Synthesis of Reactive Real-Time Systems , 1994, 31st Design Automation Conference.

[17]  Narsingh Deo,et al.  On Algorithms for Enumerating All Circuits of a Graph , 1976, SIAM J. Comput..

[18]  Ruud C. M. de Rooij,et al.  The MSP.RTL real-time scheduler synthesis tool , 1996, 17th IEEE Real-Time Systems Symposium.

[19]  Donald B. Johnson,et al.  Finding All the Elementary Circuits of a Directed Graph , 1975, SIAM J. Comput..

[20]  Robert E. Tarjan,et al.  Faster parametric shortest path and minimum-balance algorithms , 1991, Networks.

[21]  Giovanni De Micheli,et al.  Relative scheduling under timing constraints: algorithms for high-level synthesis of digital circuits , 1992, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[22]  Ali Dasdan,et al.  Timing analysis of embedded real-time systems , 1999 .

[23]  Panos M. Pardalos,et al.  Feedback Set Problems , 2009, Encyclopedia of Optimization.

[24]  Andrew V. Goldberg,et al.  Negative-cycle detection algorithms , 1996, Math. Program..

[25]  Rajesh K. Gupta,et al.  Rate analysis for embedded systems , 1998, TODE.

[26]  Ali Dasdan,et al.  Experimental analysis of the fastest optimum cycle ratio and mean algorithms , 2004, TODE.

[27]  Aloysius K. Mok,et al.  Safety analysis of timing properties in real-time systems , 1986, IEEE Transactions on Software Engineering.

[28]  Christopher Kingsley A Hiererachical, Error-Tolerant Compactor , 1984, 21st Design Automation Conference Proceedings.

[29]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[30]  K. Selçuk Candan,et al.  Collaborative multimedia documents: Authoring and presentation , 1998, Int. J. Intell. Syst..

[31]  Andrew V. Goldberg,et al.  Negative-Cycle Detection Algorithms , 1996, ESA.

[32]  Ali Dasdan,et al.  Efficient algorithms for debugging timing constraint violations , 2002, TAU '02.

[33]  K. Selçuk Candan,et al.  Collaborative multimedia documents: Authoring and presentation , 1998 .

[34]  Ali Dasdan,et al.  Strongly polynomial-time algorithm for over-constraint resolution: efficient debugging of timing constraint violations , 2002, Proceedings of the Tenth International Symposium on Hardware/Software Codesign. CODES 2002 (IEEE Cat. No.02TH8627).

[35]  Wayne H. Wolf,et al.  An efficient graph algorithm for FSM scheduling , 1996, IEEE Trans. Very Large Scale Integr. Syst..

[36]  Farhad Mavaddat,et al.  Consistency and satisfiability of waveform timing specifications , 1991, Networks.

[37]  Charles J. Alpert,et al.  The ISPD98 circuit benchmark suite , 1998, ISPD '98.

[38]  Edward P. K. Tsang,et al.  Foundations of constraint satisfaction , 1993, Computation in cognitive science.

[39]  Xuemin Lin,et al.  A Fast and Effective Heuristic for the Feedback Arc Set Problem , 1993, Inf. Process. Lett..