Abstract
One popular placement algorithms for Field-Programmable Gate Arrays (FPGAs) is called Simulated Annealing (SA). This algorithm tries to create a good quality placement from a flattened design that no longer contains any high-level information related to the original design hierarchy. Placement is an NP-hard problem, and as the size and complexity of designs implemented on FPGAs increases, SA does not scale well to find good solutions in a timely fashion. In this article, we investigate if system-level information can be reconstructed from a flattened netlist and evaluate how that information is realized in terms of its locality in the final placement. If there is a strong relationship between good quality placements and system-level information, then it may be possible to divide a large design into smaller components and improve the time needed to create a good quality placement. Our preliminary results suggest that the locality property of the information embedded in the system-level HDL structure (i.e. “module”, “always”, and “if” statements) is greatly affected by designer HDL coding style. Therefore, a reconstructive algorithm, called Affinity Propagation, is also considered as a possible method of generating a meaningful coarse-grain picture of the design.
- Behrens, D., Harbich, K., and Barke, E. 1996. Circuit partitioning using high-level design information. In Proceedings of the Conference on Integrated Design and Process Technology. 259--266.Google Scholar
- Betz, V., Rose, J., and Marquardt, A. 1999. Architecture and CAD for Deep-Submicron FPGAs. Kluwer Academic Publishers, Norwell, MA. Google Scholar
Digital Library
- Bian, H., Ling, A. C., Choong, A., and Zhu, J. 2010. Towards scalable placement for FPGAs. In Proceedings of the 18th Annual ACM/SIGDA International Symposium on FPGAs. 147--156. Google Scholar
Digital Library
- Caldwell, A. E., Kahng, A. B., and Markov, I. L. 1999. Optimal partitioners and end-case placers for standard-cell layout. In Proceedings of the International Symposium on Physical Design. 90--96. Google Scholar
Digital Library
- Chan, T. F., Cong, J., Kong, T., and Shinnerl, J. R. 2000. Multilevel optimization for large-scale circuit placement. In Proceedings of the IEEE/ACM International Conference on Computer-Aided Design. 171--176. Google Scholar
Digital Library
- Chandy, J. and Banerjee, P. 1996. Parallel simulated annealing strategies for vlsi cell placement. In Proceedings of the 9th International Conference on VLSI Design. 37--42. Google Scholar
Digital Library
- Cong, J. 2002. Timing closure based on physical hierarchy. In Proceedings of the International Symposium on Physical Design. 170--174. Google Scholar
Digital Library
- Cong, J., Peck, J., and Ding, Y. 1996. RASP: A general logic synthesis system for SRAM-based FPGAs. In Proceedings of the ACM/SIGDA International Symposium on FPGAs. 137--143. Google Scholar
Digital Library
- Donath, W. E. 1980. Complexity theory and design automation. In Proceedings of the 17th Design Automation Conference. 412--419. Google Scholar
Digital Library
- Emmert, J. M. and Bhatia, D. 1999. A methodology for fast FPGA floorplanning. In Proceedings of the 7th International ACM/SIGDA Symposium on FPGAs. 47--56. Google Scholar
Digital Library
- Frey, B. J. and Dueck, D. 2007. Clustering by passing messages between data points. Science, 315, 5814, 972--976.Google Scholar
- Gharibian, F., Shannon, L., and Jamieson, P. 2010. Finding system-level information and analyzing its correlation to FPGA placement. In Proceedings of the 20th International Conference on Field-Programmable Logic and Applications (FPL’10). Google Scholar
Digital Library
- Grover, L. K. 1987. Standard cell placement using simulated sintering. In Proceedings of the 24th ACM/IEEE Design Automation Conference. 56--59. 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. 86--94. Google Scholar
Digital Library
- Jamieson, P. A., Kent, K. B., Gharibian, F., and Shannon, L. 2010. Odin II - An open-source Verilog HDL synthesis tool for academic CAD flows. In Proceedings of the Annual IEEE Symposium on Field-Programmable Custom Computing Machines. Google Scholar
Digital Library
- Jones, J. 2003. Abstract syntax tree implementation idioms. In Proceedings of the 10th Conference on Pattern Languages of Programs (PLoP2003).Google Scholar
- Kirkpatrick, S., Gelatt, C. D., and Vecchi, M. P. 1983. Optimization by simulated annealing. Science 220, 4598, 671--680.Google Scholar
- Ludwin, A., Betz, V., and Padalia, K. 2008. High-quality, deterministic parallel placement for FPGAs on commodity hardware. In Proceedings of the 16th International ACM/SIGDA Symposium on FPGAs. 14--23. Google Scholar
Digital Library
- Luu, J., Kuon, I., Jamieson, P., Campbell, T., Ye, A., Fang, W. M., and Rose, J. 2009. VPR 5.0: FPGA CAD and architecture exploration tools with single-driver routing, heterogeneity and process scaling. In Proceedings of the ACM/SIGDA International Symposium on FPGAs. Google Scholar
Digital Library
- MacQueen, J. B. 1967. Some methods for classification and analysis of multivariate observations. In Proceedings of the 5th Berkeley Symposium on Mathematical Statistics and Probability. Vol. 1, University of California Press, Berkeley, CA, 281--297.Google Scholar
- Marquardt, A., Betz, V., and Rose, J. 1999. Using cluster-based logic blocks and timing-driven packing to improve FPGA speed and density. In Proceedings of the ACM/SIGDA International Symposium on FPGAs. 37--46. Google Scholar
Digital Library
- Mishchenko, A., Chatterjee, S., and Brayton, R. K. 2007. Improvements to technology mapping for LUT-based FPGAs. IEEE Trans. Comput. Aid. Design Integr. Circuits Syst. 26, 2, 240--253. Google Scholar
Digital Library
- Riess, B. M. and Ettelt, G. G. 1995. Speed: Fast and efficient timing driven placement. In Proceedings of the IEEE International Symposium on Circuits. 377--380.Google Scholar
- Sankar, Y. and Rose, J. 1999. Trading quality for compile time: Ultra-fast placement for FPGAs. In Proceedings of the ACM/SIGDA International Symposium on FPGAs. 157--166. Google Scholar
Digital Library
- Tanuj, J., Alpert, C. J., Hu, J., Li, Z., Nam, G.-J., and Winn, C. B. 2010. Detecting tangled logic structures in VLSI netlists. In Proceedings of the 47th Design Automation Conference. 603--608. Google Scholar
Digital Library
- Tessier, R. 2002. Fast placement approaches for FPGAs. ACM Trans. Design Autom. Electron. Syst. 7, 2, 284--305. Google Scholar
Digital Library
- Tsay, Y. W., Fang, W. J., Wu, A. C., and Lin, Y. L. 1997. Preserving HDL synthesis hierarchy for cell placement. In Proceedings of the International Symposium on Physical Design. 169--174. Google Scholar
Digital Library
- Varanelli, J. M. and Cohoon, J. P. 1999. A fast method for generalized starting temperature determination in homogeneous two-stage simulated annealing systems. Comput. Oper. Res. 26, 5, 481--503. Google Scholar
Digital Library
- Viswanathan, N. and Chu, C. 2004. Fastplace: Efficient analytical placement using cell shifting, iterative local refinement and a hybrid net model. In Proceedings of the International Symposium on Physical Design. Google Scholar
Digital Library
- Vorwerk, K., Kennings, A., and Vannelli, A. 2004. Engineering details of a stable force-directed placer. In Proceedings of the IEEE/ACM International Conference on Computer-Aided Design. 573--580. Google Scholar
Digital Library
Index Terms
Analyzing System-Level Information’s Correlation to FPGA Placement
Recommendations
Hardware accelerated FPGA placement
A key advantage of field-programmable gate arrays (FPGAs) over full-custom and semi-custom devices is that they provide relatively quick implementation from concept to physical realization. However, as modern FPGAs reach close to one million logic ...
Finding System-Level Information and Analyzing Its Correlation to FPGA Placement
FPL '10: Proceedings of the 2010 International Conference on Field Programmable Logic and ApplicationsOne of the more popular placement algorithms for Field Programmable Gate Arrays (FPGAs) is called Simulated Annealing (SA). This algorithm tries to create a good quality placement from a flattened design that no longer contains any high-level ...
Clock-Aware FPGA Placement Contest
ISPD '17: Proceedings of the 2017 ACM on International Symposium on Physical DesignModern FPGA device contains complex clocking architecture on top of FPGA logic fabric. To best utilize FPGA clocking architecture, both FPGA designers and EDA tool developers need to understand the clocking architecture and design best methodology/...






Comments