Efficient implementation of retiming

  • Authors:
  • Narendra Shenoy;Richard Rudell

  • Affiliations:
  • Synopsys Inc., 700 E. Middlefield Road, Mountain View CA;Synopsys Inc., 700 E. Middlefield Road, Mountain View CA

  • Venue:
  • ICCAD '94 Proceedings of the 1994 IEEE/ACM international conference on Computer-aided design
  • Year:
  • 1994

Quantified Score

Hi-index 0.00

Visualization

Abstract

Retiming is a technique for optimizing sequential circuits. It repositions the registers in a circuit leaving the combinational cells untouched. The objective of retiming is to find a circuit with the minimum number of registers for a specified clock period. More than ten years have elapsed since Leiserson and Saxe first presented a theoretical formulation to solve this problem for single-clock edge-triggered sequential circuits. Their proposed algorithms have polynomial complexity; however naive implementations of these algorithms exhibit O(n3) time complexitiy and O(n2) space complexity when applied to digital circuits with n combinational cells. This renders retiming ineffective for circuits with more than 500 combinational cells. This paper addresses the implementation issues required to exploit the sparsity of circuit graphs to allow min-period retiming and constrained min-area retiming to be applied to circuits with as many as 10,000 combinational cells. We believe this is the first paper to address these issues and the first to report retiming results for large circuits.