David GreavesView profile
Senior Lecturer
David Greaves serves as a University Senior Lecturer in the Department of Computer Science and Technology at the University of Cambridge, where he conducts research and teaches undergraduate courses including Databases (Part IA) and Programming in C and C++ (Part IB). His academic work focuses on bridging hardware and software systems through innovative compilation techniques and architectural design. His research spans computer architecture, programming languages, semantics and verification, and systems and networking, with particular emphasis on hardware-software co-design, memory safety mechanisms, and FPGA-based acceleration. Greaves has developed specialized compiler frameworks like Kiwi for translating high-level programs into hardware implementations, and created security models such as FRAMER for capability-based memory protection. Analysis of his recent publications reveals a consistent focus on compiler infrastructure for hardware acceleration, with significant contributions to Bluespec Verilog compilation, dataflow intermediate representations, and cache-friendly security models. His work demonstrates strong interdisciplinary connections between formal methods, hardware design, and systems security, often targeting practical implementations in FPGA environments. Greaves maintains active involvement in hardware description language development and power analysis tools, as evidenced by his contributions to TLM Power and other electronic design automation frameworks. His research approach consistently emphasizes practical toolchain development alongside theoretical foundations.











