@inproceedings{6cea9535649345a9b174f3e89cef7c75,
title = "Cyclops: PRU programming framework for precise timing applications",
abstract = "The Beaglebone Black single-board computer is well-suited for real-time embedded applications because its system-on-a-chip contains two 'Programmable Real-time Units' (PRUs): 200-MHz microcontrollers that run concurrently with the main 1-GHz CPU that runs Linux. This paper introduces 'Cyclops': a web-browser-based IDE that facilitates the development of embedded applications on the Beaglebone Black's PRU. Users write PRU code in a simple JavaScript-inspired language, which Cyclops converts to PRU assembly code and deploys to the PRU. Cyclops automatically configures the Beaglebone's pinmux controller to use common I/O peripherals like ADC and PWM. Additionally, Cyclops includes a PRU library and Linux kernel module for synchronizing the PRU with the processor clock, enabling the PRU to time-stamp sensor measurements using the Linux processor time within sub-microsecond accuracy.",
author = "Amr Alanwar and Anwar, {Fatima M.} and Zhang, {Yi Fan} and Justin Pearson and Joao Hespanha and Srivastava, {Mani B.}",
note = "Publisher Copyright: {\textcopyright} 2017 IEEE.; 11th International IEEE Symposium on Precision Clock Synchronization for Measurement, Control, and Communication, ISPCS 2017 ; Conference date: 27-08-2017 Through 01-09-2017",
year = "2017",
month = oct,
day = "2",
doi = "10.1109/ISPCS.2017.8056744",
language = "English",
series = "IEEE International Symposium on Precision Clock Synchronization for Measurement, Control, and Communication, ISPCS",
publisher = "IEEE Computer Society",
booktitle = "ISPCS 2017 - International IEEE Symposium on Precision Clock Synchronization for Measurement, Control, and Communication, Proceedings",
}