Preconditioning index set transformations for time-optimal affine scheduling
Björn Lisper · 1990
Many regular algorithms, suitable for VLSI implementation, are naturally described by sets of integer index vectors together with a rule that assigns a computation to each vector.Regular VLSI structures for such algorithms can be found by mapping the index vectors to a discrete space-time with integer coordinates.If the scope is restricted to linear or affine mappings, then the minimization of the execution time for the VLSI implementation with respect to the space-time mapping is essentially an integer linear programming (ILP) problem.If the entries in the vector describing the time function must be integers, ILP techniques can be applied directly.There are, however, index sets that allow space-time mappings with rational, non-integral entries.In such cases, ILP will not consider all possible affine time functions and an optimal solution ma.y go unnoticed.In this paper we give sufficient conditions on the index set, for when integer time functions are allowed only.We also give a general algorithm to find a "preconditioning" affine transformation of the index set, such that the transformed index set allows only integer time functions.ILP methods can then be used to find time-optimal architectures for the transformed a.lgorithm.This considerably extends the class of algorithms for which time-optimal VLSI structures can be found.