Simultaneous Retiming and Placement for Pipelined Netlists

Although pipelining or C-slowing an FPGA-based application can potentially dramatically improve the performance, this poses a question for conventional reconfigurable architectures and CAD tools: what is the best way to support these new extra registers? While there have been multiple research efforts to address this problem, they generally impose strict architectural requirements, offer limited retiming capabilities, or require multiple iterations with no guarantees regarding feasible implementations. In this paper we introduce a new simulated annealing-based placement and retiming approach that provides the capability to aggressive apply retiming on a wide range of netlists, for arbitrary architectures, while maintaining predictable results. Our results show that for heavily pipelined applications, this methodology can produce netlists and placements with 1.65x better post-routing critical path delay as compared to the classical approach of retiming before timing-driven VPR placement, and 1.08x better than retiming before our improved timing-driven placer.

[1]  Scott Hauck,et al.  Armada: timing-driven pipeline-aware routing for FPGAs , 2006, FPGA '06.

[2]  Jason Cong,et al.  Multilevel global placement with retiming , 2003, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[3]  John Wawrzynek,et al.  The SFRA: a corner-turn FPGA architecture , 2004, FPGA '04.

[4]  Scott Hauck,et al.  Enhancing timing-driven FPGA placement for pipelined netlists , 2008, 2008 45th ACM/IEEE Design Automation Conference.

[5]  Stephen Dean Brown,et al.  The case for registered routing switches in field programmable gate arrays , 2001, FPGA '01.

[6]  George Varghese,et al.  HSRA: high-speed, hierarchical synchronous reconfigurable array , 1999, FPGA '99.

[7]  Brian Von Herzen Signal processing at 250 MHz using high-performance FPGA's , 1997, FPGA '97.

[8]  Vaughn Betz,et al.  Timing-driven placement for FPGAs , 2000, FPGA '00.

[9]  Jie Liu,et al.  Architecture and FPGA Design of Dichotomous Coordinate Descent Algorithms , 2009, IEEE Transactions on Circuits and Systems I: Regular Papers.

[10]  Jason Cong,et al.  Physical planning with retiming , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[11]  Carl Ebeling,et al.  PipeRoute: a pipelining-aware router for FPGAs , 2003, FPGA '03.

[12]  Stephen Dean Brown,et al.  Integrated retiming and placement for field programmable gate arrays , 2002, FPGA '02.

[13]  Charles E. Leiserson,et al.  Retiming synchronous circuitry , 1988, Algorithmica.

[14]  Klaus Eckl,et al.  Performance-directed retiming for FPGAs using post-placement delay information , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[15]  Vaughn Betz,et al.  Architecture and CAD for Deep-Submicron FPGAS , 1999, The Springer International Series in Engineering and Computer Science.

[16]  John Wawrzynek,et al.  Post-placement C-slow retiming for the xilinx virtex FPGA , 2003, FPGA '03.

[17]  B. Von Herzen Signal processing at 250 MHz using high-performance FPGA's , 1998, IEEE Trans. Very Large Scale Integr. Syst..