Virtual microcontrollers

  • Authors:
  • Scott Sirowy;David Sheldon;Tony Givargis;Frank Vahid

  • Affiliations:
  • Department of Computer Science and Engineering, University of California, Riverside;Department of Computer Science and Engineering, University of California, Riverside;Department of Computer Science, Center for Embedded Computer Systems, University of California, Irvine;Department of Computer Science and Engineering, University of California, Riverside and Department of Computer Science, Center for Embedded Computer Systems, University of California, Irvine

  • Venue:
  • ACM SIGBED Review
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Embedded programming training today commonly involves numerous low-level details of a particular microcontroller. Such details shift focus away from higher-level structured embedded programming concepts. Thus, hard-to-break, unstructured programming habits are commonplace in the field. Yet structured embedded programming is becoming more necessary as embedded systems grow in complexity. We introduce a virtual microcontroller to address this problem. Freed from manufacturing or historical architectural issues, the virtual microcontroller contains the core features to support embedded programming training, and possesses an exceptionally clean interface to low-level features like timers, interrupt service routines, and UARTs. The virtual microcontroller can be mapped onto existing microcontrollers, or even onto FPGAs or a PC, providing more lab and book flexibility, at the expense of performance and size overhead. Most importantly, training can still use a bottom-up resource-aware approach, yet can focus more on structured embedded programming concepts.