{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:16:13Z","timestamp":1750306573830,"version":"3.41.0"},"reference-count":38,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2015,3,6]],"date-time":"2015-03-06T00:00:00Z","timestamp":1425600000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Ph.D. grant of the Institute for the Promotion of Innovation through Science and Technology in Flanders"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Reconfigurable Technol. Syst."],"published-print":{"date-parts":[[2015,3,6]]},"abstract":"<jats:p>Dynamic Circuit Specialization (DCS) optimizes a Field-Programmable Gate Array (FPGA) design by assuming a set of its input signals are constant for a reasonable amount of time, leading to a smaller and faster FPGA circuit. When the signals actually change, a new circuit is loaded into the FPGA through runtime reconfiguration. The signals the design is specialized for are called parameters. For certain designs, parameters can be selected so the DCS implementation is both smaller and faster than the original implementation. However, DCS also introduces an overhead that is difficult for the designer to take into account, making it hard to determine whether a design is improved by DCS or not. This article presents extensive results on a profiling methodology that analyses Register-Transfer Level (RTL) implementations of applications to check if DCS would be beneficial. It proposes to use the functional density as a measure for the area efficiency of an implementation, as this measure contains both the overhead and the gains of a DCS implementation. The first step of the methodology is to analyse the dynamic behaviour of signals in the design, to find good parameter candidates. The overhead of DCS is highly dependent on this dynamic behaviour. A second stage calculates the functional density for each candidate and compares it to the functional density of the original design. The profiling methodology resulted in three implementations of a profiling tool, the DCS-RTL profiler. The execution time, accuracy, and the quality of each implementation is assessed based on data from 10 RTL designs. All designs, except for the two 16-bit adaptable Finite Impulse Response (FIR) filters, are analysed in 1 hour or less.<\/jats:p>","DOI":"10.1145\/2629640","type":"journal-article","created":{"date-parts":[[2015,3,9]],"date-time":"2015-03-09T19:03:01Z","timestamp":1425927781000},"page":"1-24","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["Identification of Dynamic Circuit Specialization Opportunities in RTL Code"],"prefix":"10.1145","volume":"8","author":[{"given":"Tom","family":"Davidson","sequence":"first","affiliation":[{"name":"Ghent University, ELIS Department"}]},{"given":"Elias","family":"Vansteenkiste","sequence":"additional","affiliation":[{"name":"Ghent University, ELIS Department"}]},{"given":"Karel","family":"Heyse","sequence":"additional","affiliation":[{"name":"Ghent University, ELIS Department"}]},{"given":"Karel","family":"Bruneel","sequence":"additional","affiliation":[{"name":"Ghent University, ELIS Department"}]},{"given":"Dirk","family":"Stroobandt","sequence":"additional","affiliation":[{"name":"Ghent University, ELIS Department"}]}],"member":"320","published-online":{"date-parts":[[2015,3,6]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1155\/2009\/514754"},{"key":"e_1_2_1_2_1","volume-title":"Proceedings of the International Conference on Parallel Computing (ParCo\u201909)","author":"Abouelella Fatma","year":"2010","unstructured":"Fatma Abouelella , Karel Bruneel , and Dirk Stroobandt . 2010 . Towards a more efficient run-time FPGA configuration generation . In Proceedings of the International Conference on Parallel Computing (ParCo\u201909) . Lyon, France, 8. Fatma Abouelella, Karel Bruneel, and Dirk Stroobandt. 2010. Towards a more efficient run-time FPGA configuration generation. In Proceedings of the International Conference on Parallel Computing (ParCo\u201909). Lyon, France, 8."},{"key":"e_1_2_1_3_1","unstructured":"Brahim Al Farisi. 2009. Herconfiguratie van LUT\u2019s via hun schuifregisterfunctionaliteit. Master\u2019s thesis. Universiteit Gent.  Brahim Al Farisi. 2009. Herconfiguratie van LUT\u2019s via hun schuifregisterfunctionaliteit. Master\u2019s thesis. Universiteit Gent."},{"key":"e_1_2_1_4_1","volume-title":"ABC: A System for Sequential Synthesis and Verification.","author":"Berkeley Verification and Synthesis Research Center","year":"2012","unstructured":"Berkeley Verification and Synthesis Research Center . 2012 . ABC: A System for Sequential Synthesis and Verification. Berkeley Verification and Synthesis Research Center. 2012. ABC: A System for Sequential Synthesis and Verification."},{"key":"e_1_2_1_5_1","volume-title":"Proceedings of the 6th HiPEAC Workshop on Reconfigurable Computing.","author":"Bhandari Sheetal","year":"2012","unstructured":"Sheetal Bhandari , Fabio Cancare , Davide Basilio Bartolini , Matteo Carminati , Marco Domenico Santambrogio , and Donatella Sciuto . 2012 . On the management of dynamic partial reconfiguration to speed-up intrinsic evolvable hardware systems . In Proceedings of the 6th HiPEAC Workshop on Reconfigurable Computing. Sheetal Bhandari, Fabio Cancare, Davide Basilio Bartolini, Matteo Carminati, Marco Domenico Santambrogio, and Donatella Sciuto. 2012. On the management of dynamic partial reconfiguration to speed-up intrinsic evolvable hardware systems. In Proceedings of the 6th HiPEAC Workshop on Reconfigurable Computing."},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1109\/FPL.2008.4629964"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-12133-3_8"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1155\/2012\/716984"},{"key":"e_1_2_1_10_1","volume-title":"Workshop on Self-Awareness in Reconfigurable Computing Systems (SRCS\u201912)","author":"Davidson Tom","year":"2012","unstructured":"Tom Davidson , Karel Bruneel , and Dirk Stroobandt . 2012 a. Identifying opportunities for dynamic circuit specialization . In Workshop on Self-Awareness in Reconfigurable Computing Systems (SRCS\u201912) . Tom Davidson, Karel Bruneel, and Dirk Stroobandt. 2012a. Identifying opportunities for dynamic circuit specialization. In Workshop on Self-Awareness in Reconfigurable Computing Systems (SRCS\u201912)."},{"volume-title":"Advances in Parallel Computing","author":"Davidson Tom","key":"e_1_2_1_11_1","unstructured":"Tom Davidson , Mattias Merlier , Karel Bruneel , and Dirk Stroobandt . 2012b. A dynamically reconfigurable pattern matcher for regular expressions on FPGA . In Advances in Parallel Computing , Koen De Bosschere (Ed.), Vol. 22 . IOS Press , Amsterdam, The Netherlands, 611--618. Tom Davidson, Mattias Merlier, Karel Bruneel, and Dirk Stroobandt. 2012b. A dynamically reconfigurable pattern matcher for regular expressions on FPGA. In Advances in Parallel Computing, Koen De Bosschere (Ed.), Vol. 22. IOS Press, Amsterdam, The Netherlands, 611--618."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/384264.379241"},{"key":"e_1_2_1_14_1","unstructured":"Mentor Graphics. 2008. ModelSim\u00ae Reference Manual Software Version 6.5 g.  Mentor Graphics. 2008. ModelSim\u00ae Reference Manual Software Version 6.5 g."},{"key":"e_1_2_1_15_1","volume-title":"Reconfigurable Computing: The Theory and Practice of FPGA-Based Computation. Morgan Kaufmann.","author":"Hauck Scott","year":"2007","unstructured":"Scott Hauck and Andr\u00e9 Dehon . 2007 . Reconfigurable Computing: The Theory and Practice of FPGA-Based Computation. Morgan Kaufmann. Scott Hauck and Andr\u00e9 Dehon. 2007. Reconfigurable Computing: The Theory and Practice of FPGA-Based Computation. Morgan Kaufmann."},{"key":"e_1_2_1_16_1","unstructured":"HES Group Ghent Univeristy. 2012. TMAP Toolflow. Retrieved from https:\/\/github.com\/UGent-HES\/tlut_flow.  HES Group Ghent Univeristy. 2012. TMAP Toolflow. Retrieved from https:\/\/github.com\/UGent-HES\/tlut_flow."},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-28365-9_1"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1109\/MDT.1995.466383"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1155\/1998\/93106"},{"key":"e_1_2_1_20_1","volume-title":"Proc. SPIE 4212","author":"Keller Eric R.","year":"2000","unstructured":"Eric R. Keller . 2000 . Dynamic circuit specialization of a CORDIC processor . Proc. SPIE 4212 (2000), 134--141. DOI: http:\/\/dx.doi.org\/10.1117\/12.402517 10.1117\/12.402517 Eric R. Keller. 2000. Dynamic circuit specialization of a CORDIC processor. Proc. SPIE 4212 (2000), 134--141. DOI: http:\/\/dx.doi.org\/10.1117\/12.402517"},{"key":"e_1_2_1_21_1","unstructured":"Davin Lim and Mike Peattie. 2002. Two flows for partial reconfiguration: Module based or small bit manipulations. Xilinx Application Note 290 (v1.0).  Davin Lim and Mike Peattie. 2002. Two flows for partial reconfiguration: Module based or small bit manipulations. Xilinx Application Note 290 (v1.0)."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1109\/FPL.2009.5272463"},{"key":"e_1_2_1_23_1","series-title":"Lecture Notes in Computer Science","volume-title":"Power consumption reduction through dynamic reconfiguration","author":"Lorenz Michael G.","unstructured":"Michael G. Lorenz , Luis Mengibar , Mario G. Valderas , and Luis Entrena . 2004. Power consumption reduction through dynamic reconfiguration . In Field Programmable Logic and Application, J\u00fcrgen Becker, Marco Platzner, and Serge Vernalde (Eds.). Lecture Notes in Computer Science , Vol. 3203 . Springer , Berlin , 751--760. DOI: http:\/\/dx.doi.org\/10.1007\/978-3-540-30117-2_76 10.1007\/978-3-540-30117-2_76 Michael G. Lorenz, Luis Mengibar, Mario G. Valderas, and Luis Entrena. 2004. Power consumption reduction through dynamic reconfiguration. In Field Programmable Logic and Application, J\u00fcrgen Becker, Marco Platzner, and Serge Vernalde (Eds.). Lecture Notes in Computer Science, Vol. 3203. Springer, Berlin, 751--760. DOI: http:\/\/dx.doi.org\/10.1007\/978-3-540-30117-2_76"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/871656.859621"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1155\/2008\/367860"},{"key":"e_1_2_1_26_1","unstructured":"opencores. 2012a. Pipelined AES. Retrieved from http:\/\/opencores.org\/project aes_pipe.  opencores. 2012a. Pipelined AES. Retrieved from http:\/\/opencores.org\/project aes_pipe."},{"key":"e_1_2_1_27_1","unstructured":"opencores. 2012b. RC6 cryptography. Retrieved from http:\/\/opencores.org\/project cryptography.  opencores. 2012b. RC6 cryptography. Retrieved from http:\/\/opencores.org\/project cryptography."},{"key":"e_1_2_1_28_1","unstructured":"opencores. 2012c. Twofish. Retrieved from http:\/\/opencores.org\/project twofish.  opencores. 2012c. Twofish. Retrieved from http:\/\/opencores.org\/project twofish."},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-23644-0_5"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.5555\/1039834.1039864"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1109\/92.678880"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/258305.258316"},{"key":"e_1_2_1_33_1","unstructured":"Inc. Xilinx. 2004. OPB HWICAP ds 280.  Inc. Xilinx. 2004. OPB HWICAP ds 280."},{"key":"e_1_2_1_34_1","unstructured":"Inc. Xilinx. 2006. OPB HWICAP (v1.00b) ds 280.  Inc. Xilinx. 2006. OPB HWICAP (v1.00b) ds 280."},{"key":"e_1_2_1_35_1","unstructured":"Inc. Xilinx. 2007. Virtex-II Pro and Virtex-II Pro X FPGA User Guide UG012 (v4.2). (2007).  Inc. Xilinx. 2007. Virtex-II Pro and Virtex-II Pro X FPGA User Guide UG012 (v4.2). (2007)."},{"key":"e_1_2_1_36_1","unstructured":"Inc. Xilinx. 2011. LogiCORE IP XPS HWICAP (v5.01a) DS586. (2011).  Inc. Xilinx. 2011. LogiCORE IP XPS HWICAP (v5.01a) DS586. (2011)."},{"key":"e_1_2_1_37_1","unstructured":"Inc. Xilinx. 2012a. EDK concepts tools and techniques UG683. (2012).  Inc. Xilinx. 2012a. EDK concepts tools and techniques UG683. (2012)."},{"key":"e_1_2_1_38_1","unstructured":"Inc. Xilinx. 2012b. LogiCORE IP AXI HWICAP (v2.02a) DS817. (2012).  Inc. Xilinx. 2012b. LogiCORE IP AXI HWICAP (v2.02a) DS817. (2012)."},{"key":"e_1_2_1_39_1","volume-title":"Synthesis and Simulation Design Guide UG626. (v13.4)","author":"Inc. Xilinx. 2012c.","year":"2012","unstructured":"Inc. Xilinx. 2012c. Synthesis and Simulation Design Guide UG626. (v13.4) ( 2012 ). Inc. Xilinx. 2012c. Synthesis and Simulation Design Guide UG626. (v13.4) (2012)."},{"key":"e_1_2_1_40_1","unstructured":"Inc. Xilinx. 2012d. Virtex-5 FPGA Configuration User Guide UG191 (v3.11). (2012).  Inc. Xilinx. 2012d. Virtex-5 FPGA Configuration User Guide UG191 (v3.11). (2012)."}],"container-title":["ACM Transactions on Reconfigurable Technology and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2629640","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2629640","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T06:13:30Z","timestamp":1750227210000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2629640"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,3,6]]},"references-count":38,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2015,3,6]]}},"alternative-id":["10.1145\/2629640"],"URL":"https:\/\/doi.org\/10.1145\/2629640","relation":{},"ISSN":["1936-7406","1936-7414"],"issn-type":[{"type":"print","value":"1936-7406"},{"type":"electronic","value":"1936-7414"}],"subject":[],"published":{"date-parts":[[2015,3,6]]},"assertion":[{"value":"2013-12-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-04-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-03-06","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}