An Efficient Algorithm for Finding Double-Vertex Dominators in Circuit Graphs

  • Authors:
  • Maxim Teslenko;Elena Dubrova

  • Affiliations:
  • Royal Institute of Technology, IMIT/KTH, Sweden;Royal Institute of Technology, IMIT/KTH, Sweden

  • Venue:
  • Proceedings of the conference on Design, Automation and Test in Europe - Volume 1
  • Year:
  • 2005

Quantified Score

Hi-index 0.01

Visualization

Abstract

Graph dominators provide a general mechanism for identifying re-converging paths in circuits. This is useful in a number of CAD applications including computation of signal probabilities for test generation, switching activities for power and noise analysis, statistical timing analysis, cut point selection in equivalence checking, etc. Single-vertex dominators are too rare in circuit graphs to handle re-converging paths in a practical way. This paper addresses the problem of finding double-vertex dominators, which occur more frequently. First, we introduce a data structure, called dominator chain, which allows representing all possible O(n^2) double-vertex dominators of a given vertex in O(n) space, where n is the number of vertices of the circuit graph. Dominator chains can be efficiently manipulated, e.g. it takes constant time to look-up whether a given pair of vertices is a double-vertex dominator. Second, we present an efficient algorithm for finding double-vertex dominators. The experimental results show that the presented algorithm is an order of magnitude faster than existing algorithms for finding double-vertex dominators. Thus, it is suitable for running in an incremental manner during logic synthesis.