{"_id":"JAoAzQJhHHA5NJm4r","bibbaseid":"sultana-galea-greaves-wjcik-zilberman-clegg-mai-mortier-etal-extendingprogramswithdebugrelatedfeatureswithapplicationtohardwaredevelopment-2017","authorIDs":["2WRdLjsYbtmJQGXTj"],"author_short":["Sultana, N.","Galea, S.","Greaves, D.","Wójcik, M.","Zilberman, N.","Clegg, R.","Mai, L.","Mortier, R.","Pietzuch, P.","Crowcroft, J.","others"],"bibdata":{"bibtype":"article","type":"article","author":[{"propositions":[],"lastnames":["Sultana"],"firstnames":["Nik"],"suffixes":[]},{"propositions":[],"lastnames":["Galea"],"firstnames":["Salvator"],"suffixes":[]},{"propositions":[],"lastnames":["Greaves"],"firstnames":["David"],"suffixes":[]},{"propositions":[],"lastnames":["Wójcik"],"firstnames":["Marcin"],"suffixes":[]},{"propositions":[],"lastnames":["Zilberman"],"firstnames":["Noa"],"suffixes":[]},{"propositions":[],"lastnames":["Clegg"],"firstnames":["Richard"],"suffixes":[]},{"propositions":[],"lastnames":["Mai"],"firstnames":["Luo"],"suffixes":[]},{"propositions":[],"lastnames":["Mortier"],"firstnames":["Richard"],"suffixes":[]},{"propositions":[],"lastnames":["Pietzuch"],"firstnames":["Peter"],"suffixes":[]},{"propositions":[],"lastnames":["Crowcroft"],"firstnames":["Jon"],"suffixes":[]},{"firstnames":[],"propositions":[],"lastnames":["others"],"suffixes":[]}],"journal":"arXiv preprint arXiv:1705.09902","title":"Extending programs with debug-related features, with application to hardware development","year":"2017","abstract":"The capacity and programmability of reconfigurable hardware such as FPGAs has improved steadily over the years, but they do not readily provide any mechanisms for monitoring or debugging running programs. Such mechanisms need to be written into the program itself. This is done using ad hoc methods and primitive tools when compared to CPU programming. This complicates the programming and debugging of reconfigurable hardware. We introduce Program-hosted Directability (PhD), the extension of programs to interpret direction commands at runtime to enable debugging, monitoring and profiling. Normally in hardware development such features are fixed at compile time. We present a language of directing commands, specify its semantics in terms of a simple controller that is embedded with programs, and implement a prototype for directing network programs running in hardware. We show that this approach affords significant flexibility with low impact on hardware utilisation and performance.","archiveprefix":"arxiv","eprint":"1705.09902v1","keyword":["cs.PL"],"bibtex":"@Article{Sultana2017Extending,\n author = {Sultana, Nik and Galea, Salvator and Greaves, David and W{\\'o}jcik, Marcin and Zilberman, Noa and Clegg, Richard and Mai, Luo and Mortier, Richard and Pietzuch, Peter and Crowcroft, Jon and others},\n journal = {arXiv preprint arXiv:1705.09902},\n title = {Extending programs with debug-related features, with application to hardware development},\n year = {2017},\n abstract = {The capacity and programmability of reconfigurable hardware such as FPGAs has\nimproved steadily over the years, but they do not readily provide any\nmechanisms for monitoring or debugging running programs. Such mechanisms need\nto be written into the program itself. This is done using ad hoc methods and\nprimitive tools when compared to CPU programming. This complicates the\nprogramming and debugging of reconfigurable hardware. We introduce\nProgram-hosted Directability (PhD), the extension of programs to interpret\ndirection commands at runtime to enable debugging, monitoring and profiling.\nNormally in hardware development such features are fixed at compile time. We\npresent a language of directing commands, specify its semantics in terms of a\nsimple controller that is embedded with programs, and implement a prototype for\ndirecting network programs running in hardware. We show that this approach\naffords significant flexibility with low impact on hardware utilisation and\nperformance.},\n archiveprefix = {arxiv},\n eprint = {1705.09902v1},\n keyword = {cs.PL},\n}\n\n","author_short":["Sultana, N.","Galea, S.","Greaves, D.","Wójcik, M.","Zilberman, N.","Clegg, R.","Mai, L.","Mortier, R.","Pietzuch, P.","Crowcroft, J.","others"],"key":"Sultana2017Extending","id":"Sultana2017Extending","bibbaseid":"sultana-galea-greaves-wjcik-zilberman-clegg-mai-mortier-etal-extendingprogramswithdebugrelatedfeatureswithapplicationtohardwaredevelopment-2017","role":"author","urls":{},"metadata":{"authorlinks":{"moore, a":"https://www.cl.cam.ac.uk/~awm22/publications/index.html"}},"downloads":0,"html":""},"bibtype":"article","biburl":"www.cl.cam.ac.uk/~awm22/tmp/jabref-master.bib","creationDate":"2021-03-03T06:38:10.895Z","downloads":0,"keywords":["cs.pl"],"search_terms":["extending","programs","debug","related","features","application","hardware","development","sultana","galea","greaves","wójcik","zilberman","clegg","mai","mortier","pietzuch","crowcroft","others"],"title":"Extending programs with debug-related features, with application to hardware development","year":2017,"dataSources":["P4oCWtW2FaLzS5ueC","Z2XGYjE5q4GTmpP4E","LoreFsEEN9tXGMfht","d8e849HkrdPEWFP7g"]}