{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,6]],"date-time":"2025-12-06T16:42:50Z","timestamp":1765039370130,"version":"3.41.0"},"reference-count":31,"publisher":"Association for Computing Machinery (ACM)","issue":"5s","license":[{"start":{"date-parts":[[2017,9,27]],"date-time":"2017-09-27T00:00:00Z","timestamp":1506470400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Embed. Comput. Syst."],"published-print":{"date-parts":[[2017,10,31]]},"abstract":"<jats:p>High-Level Synthesis (HLS) for FPGAs is attracting popularity and is increasingly used to handle complex systems with multiple integrated components. To increase performance and efficiency, HLS flows now adopt several advanced optimization techniques. Aggressive optimizations and system level integration can cause the introduction of bugs that are only observable on-chip. Debugging support for circuits generated with HLS is receiving a considerable attention. Among the data that can be collected on chip for debugging, one of the most important is the state of the Finite State Machines (FSM) controlling the components of the circuit. However, this usually requires a large amount of memory to trace the behavior during the execution. This work proposes an approach that takes advantage of the HLS information and of the structure of the FSM to compress control flow traces and to integrate optimized components for on-chip debugging. The generated checkers analyze the FSM execution on-fly, automatically notifying when a bug is detected, localizing it and providing data about its cause. The traces are compressed using a software profiling technique, called Efficient Path Profiling (EPP), adapted for the debugging of hardware accelerators generated with HLS. With this technique, the size of the memory used to store control flow traces can be reduced up to 2 orders of magnitude, compared to state-of-the-art.<\/jats:p>","DOI":"10.1145\/3126564","type":"journal-article","created":{"date-parts":[[2017,9,27]],"date-time":"2017-09-27T12:33:53Z","timestamp":1506515633000},"page":"1-19","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":10,"title":["Using Efficient Path Profiling to Optimize Memory Consumption of On-Chip Debugging for High-Level Synthesis"],"prefix":"10.1145","volume":"16","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-0914-3844","authenticated-orcid":false,"given":"Pietro","family":"Fezzardi","sequence":"first","affiliation":[{"name":"Politecnico di Milano"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0062-6049","authenticated-orcid":false,"given":"Marco","family":"Lattuada","sequence":"additional","affiliation":[{"name":"Politecnico di Milano"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0301-4419","authenticated-orcid":false,"given":"Fabrizio","family":"Ferrandi","sequence":"additional","affiliation":[{"name":"Politecnico di Milano"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2017,9,27]]},"reference":[{"volume-title":"Ullman","year":"1986","author":"Aho Alfred V.","key":"e_1_2_1_1_1"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.5555\/243846.243857"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/FPL.2014.6927496"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2897937.2898002"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/2744769.2753768"},{"volume-title":"24th IEEE International Symposium on Parallel and Distributed Processing, IPDPS 2010, Atlanta, Georgia, USA, 19-23 April 2010 - Workshop Proceedings.","author":"Curreri John","key":"e_1_2_1_6_1"},{"key":"e_1_2_1_7_1","unstructured":"Politecnico di Milano. 2017. PandA Framework for Hardware\/Software Codesign. (2017). http:\/\/panda.dei.polimi.it.  Politecnico di Milano. 2017. PandA Framework for Hardware\/Software Codesign. (2017). http:\/\/panda.dei.polimi.it."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICCD.2015.7357111"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1109\/FPL.2016.7577369"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/2744769.2744921"},{"key":"e_1_2_1_11_1","unstructured":"Intel FPGA. 2016. Quartus Prime Design Software. (2016). https:\/\/www.altera.com\/products\/design-software\/fpga-design\/quartus-prime\/overview.html.  Intel FPGA. 2016. Quartus Prime Design Software. (2016). https:\/\/www.altera.com\/products\/design-software\/fpga-design\/quartus-prime\/overview.html."},{"volume-title":"24th International Conference on Field Programmable Logic and Applications, FPL 2014","year":"2014","author":"Goeders Jeffrey","key":"e_1_2_1_12_1"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1109\/FCCM.2015.25"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/TCAD.2016.2565204"},{"volume-title":"HLS Verification.","year":"2017","author":"Graphics Mentor","key":"e_1_2_1_15_1"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISCAS.2014.6865091"},{"volume-title":"Proposal and Quantitative Analysis of the CHStone Benchmark Program Suite for Practical C-based High-level Synthesis. JIP 17","year":"2009","author":"Hara Yuko","key":"e_1_2_1_17_1"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.5555\/523771.858078"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2567662"},{"volume-title":"Cummings","year":"1999","author":"Mills Don","key":"e_1_2_1_20_1"},{"volume-title":"24th International Conference on Field Programmable Logic and Applications, FPL 2014","year":"2014","author":"Joshua","key":"e_1_2_1_21_1"},{"volume-title":"International Conference on ReConFigurable Computing and FPGAs, ReConFig 2015","year":"2015","author":"Joshua","key":"e_1_2_1_22_1"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2684746.2689087"},{"volume-title":"CyberWorkbench: NEC\u2019s High Level Synthesis Solution. (Sept","year":"2016","author":"NEC.","key":"e_1_2_1_24_1"},{"key":"e_1_2_1_25_1","unstructured":"Altera Corporation (now Intel FPGA). 2016. Stratix V Device Handbook. (2016). https:\/\/www.altera.com\/en_US\/pdfs\/literature\/hb\/stratix-v\/stx5_core.pdf.  Altera Corporation (now Intel FPGA). 2016. Stratix V Device Handbook. (2016). https:\/\/www.altera.com\/en_US\/pdfs\/literature\/hb\/stratix-v\/stx5_core.pdf."},{"volume-title":"FDL 2011","year":"2011","author":"Ribon Aur\u00e9lien","key":"e_1_2_1_26_1"},{"volume-title":"RV 2016, Madrid, Spain, September 23-30, 2016, Proceedings.","year":"2016","author":"Selyunin Konstantin","key":"e_1_2_1_27_1"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/236114.236115"},{"volume-title":"High-Level Synthesis: Status, Trends, and Future Directions","year":"2016","author":"Takach Andr\u00e9s","key":"e_1_2_1_29_1"},{"volume-title":"AutoSLIDE: Automatic Source-Level Instrumentation and Debugging for HLS. In 24th IEEE Annual International Symposium on Field-Programmable Custom Computing Machines, FCCM 2016","year":"2016","author":"Yang Liwei","key":"e_1_2_1_30_1"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1109\/FPT.2015.7393155"}],"container-title":["ACM Transactions on Embedded Computing Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3126564","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3126564","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T19:05:02Z","timestamp":1750273502000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3126564"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,9,27]]},"references-count":31,"journal-issue":{"issue":"5s","published-print":{"date-parts":[[2017,10,31]]}},"alternative-id":["10.1145\/3126564"],"URL":"https:\/\/doi.org\/10.1145\/3126564","relation":{},"ISSN":["1539-9087","1558-3465"],"issn-type":[{"type":"print","value":"1539-9087"},{"type":"electronic","value":"1558-3465"}],"subject":[],"published":{"date-parts":[[2017,9,27]]},"assertion":[{"value":"2017-04-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-06-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-09-27","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}