Abstract
This article presents techniques to reduce the static and dynamic memory requirements of routing algorithms that target field-programmable gate arrays. During routing, memory is required to store both architectural data and temporary routing data. The architectural data is static, and provides a representation of the physical routing resources and programmable connections on the device. We show that by taking advantage of the regularity in FPGAs, we can reduce the amount of information that must be explicitly represented, leading to significant memory savings. The temporary routing data is dynamic, and contains scoring parameters and traceback information for each routing resource in the FPGA. By studying the lifespan of the temporary routing data objects, we develop several memory management schemes to reduce this component. To make our proposals concrete, we applied them to the routing algorithm in VPR and empirically quantified the impact on runtime memory footprint, and place and route time.
- Altera. 2008. Stratix iv device family overview. http://www.altera.com/products/devices/stratix-fpgas/stratix-iv/overview/stxiv-overview.html.Google Scholar
- Betz, V., Rose, J., and Marquardt, A. 1999. Architecture and CAD for Deep-Submicron FPGAs. Kluwer Academic Publishers. Google Scholar
Digital Library
- Carroll, A. and Ebeling, C. 2006. Reducing the space complexity of pipelined routing using modified range encoding. In Proceedings of the International Conference on Field Programmable Logic and Applications (FPL'06). 1--6.Google Scholar
- Chan, P., Schlag, M., Ebeling, C., and McMurchie, L. Aug 2000. Distributed-memory parallel routing for field-programmable gate arrays. IEEE Trans. Comput.-Aid. Des. Integr. Circ. Syst. 19, 8, 850--862. Google Scholar
Digital Library
- Chin, S. and Wilton, S. 2007. Memory footprint reduction for FPGA routing algorithms. In Proceedings of the International Conference on Field-Programmable Technology. 1--8.Google Scholar
- DeHon, A., Huang, R., and Wawrzynek, J. 2002. Hardware-assisted fast routing. In Proceedings of the 10th Annual IEEE Symposium on Field-Programmable Custom Computing Machines. 205--215. Google Scholar
Digital Library
- Haldar, M., Nayak, A., Choudhary, A., and Banerjee, P. 2000. Parallel algorithms for FPGA placement. In Proceedings of the 10th Great Lakes Symposium on VLSI. ACM, 86--94. Google Scholar
Digital Library
- Lamoureux, J. and Wilton, S. 27-29 Aug. 2007. Clock-aware placement for fpgas. In Proceedings of the International Conference on Field Programmable Logic and Applications. 124--131.Google Scholar
- Li, S. and Ebeling, C. 2004. Quickroute: a fast routing algorithm for pipelined architectures. In Proceedings of the IEEE International Conference on Field-Programmable Technology. 73--80.Google Scholar
- Lysecky, R., Vahid, F., and Tan, S. X.-D. 2004. Dynamic FPGA routing for just-in-time FPGA compilation. In Proceedings of the 41st Annual Conference on Design Automation. ACM, 954--959. Google Scholar
Digital Library
- Mulpuri, C. and Hauck, S. 2001. Runtime and quality tradeoffs in FPGA placement and routing. In Proceedings of the ACM/SIGDA 9th International Symposium on Field Programmable Gate Arrays. ACM, 29--36. Google Scholar
Digital Library
- Sankar, Y. and Rose, J. 1999. Trading quality for compile time: Ultra-fast placement for FPGAs. In Proceedings of the ACM/SIGDA 7th International Symposium on Field Programmable Gate Arrays. ACM, 157--166. Google Scholar
Digital Library
- Tom, M. and Lemieux, G. 2005. Logic block clustering of large designs for channel-width constrained FPGAs. In Proceedings of the 42nd Design Automation Conference. 726--731. Google Scholar
Digital Library
- Xilinx. 2007. Virtex 5 family overview. http://www.xilinx.com/support/documentation/data_sheets/ds100.pdf.Google Scholar
Index Terms
Static and Dynamic Memory Footprint Reduction for FPGA Routing Algorithms
Recommendations
Impact of Parallelism and Memory Architecture on FPGA Communication Energy
Regular Papers and Special Section on Field Programmable Gate Arrays (FPGA) 2015The energy in FPGA computations is dominated by data communication energy, either in the form of memory references or data movement on interconnect. In this article, we explore how to use data placement and parallelism to reduce communication energy. We ...
Optimizing SDRAM bandwidth for custom FPGA loop accelerators
FPGA '12: Proceedings of the ACM/SIGDA international symposium on Field Programmable Gate ArraysMemory bandwidth is critical to achieving high performance in many FPGA applications. The bandwidth of SDRAM memories is, however, highly dependent upon the order in which addresses are presented on the SDRAM interface. We present an automated tool for ...
Enabling FPGA routing configuration sharing in dynamic partial reconfiguration
Using dynamic partial reconfiguration (DPR), several circuits can be time-multiplexed on the same FPGA region, saving considerable area compared to an implementation without DPR. However, the long reconfiguration time to switch between circuits remains ...






Comments