1 research outputs found
Extending programs with debug-related features, with application to hardware development
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.This work has received funding from the EPSRC NaaS grant EP/K034723/1, European Union's Horizon 2020 research and innovation programme 2014-2018 under the SSICLOPS (grant agreement No. 644866), the Leverhulme Trust Early Career Fellowship ECF-2016-289 and the Newton Trust