The concept of improving the timing behavior of a circuit by relocating flip-flops is called retiming and was first presented by Leiserson and Saxe. The ASTRA algorithm proposed an alternative view of retiming using the equivalence between retiming and clock skew optimization. This work defines the relationship between the Leiserson-Saxe and the ASTRA approaches and utilizes it to solve the problem of retiming for minimum area. The new algorithm, Minaret, uses the linear programming formulation of the Leiserson-Saxe approach. The underlying philosophy of the ASTRA approach is incorporated to reduce the number of variables and constraints in the linear program. This reduction in the size of the linear program makes Minaret space and time efficient, enabling minimum area retiming of circuits with over 56,000 gates in under 15 minutes.
Naresh Maheshwari, Sachin S. Sapatnekar