Personal tools

Linux Driver for built-in ADC using DMA and Programmable Real-Time Unit (PRU) support on Beaglebone Black used as embedded HPC-performance-monitoring device

From iis-projects

Jump to: navigation, search

Short Description

In recent years, energy-efficiency is becoming a key challenge in the High Performance Computing (HPC) domain. Indeed, while the demand for more powerful supercomputers is constantly increasing, integrated computing architectures are facing power/thermal challenges that are limiting the performance benefits of technology scaling. However, even if energy-efficiency is of primary interest, such infrastructures have a limited introspection on the measurement of power and energy dissipated at run-time. Aiming at bridging this gap, we designed and developed at IIS, in collaboration with some Commercial Partners, a scalable and highly accurate power-consumption monitoring framework, based on a state-of-the-art embedded monitoring device (namely a Beaglebone Black) and a power-sensing-board placed at the node power-supply.

Goal of this Project → Implementation and testing of a Linux Device Driver for the built-in Beaglebone Black ADC, using DMA support for the data-copy from the ADC HW-FIFO to SW-FIFO at kernel-space and the real-time embedded co-processor (PRU) for post-processing of the data-stream.

Status: Available

Looking for 1 Master Students (Semester Project)
Supervision: Antonio Libri, Andrea Bartolini


  • Experience on writing Linux Device Drivers (kernel-level development).
  • Experience on microcontrollers and Embedded Linux.
  • Experience using laboratory instrumentation (signal generators, oscilloscopes, etc.) would be an asset.


30% Theory
40% Implementation (C programming for Linux kernel)
30% Testing


Luca Benini

↑ top

Detailed Task Description


Practical Details

↑ top