The architectures of embedded systems are often application-specic, containing multiple heterogenous cores, non-uniform memory, on-chip networks and custom hardware elements (e.g. DSP cores). Standard programming languages do not use these many of these features natively because they assume a traditional single processor and a single logical address space abstraction that hides these architectural details. This paper describes Compile-Time Virtualisation, a technique which uses a virtualisation layer to map software onto the target architecture whilst allowing the programmer to control the virtualisation mappings in order to eectively exploit custom architectures.

BibTex Entry

@article{Gray2009,
 author = {Ian Gray and Neil Audsley},
 journal = {International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES '09)},
 timestamp = {2009.08.06},
 title = {Exposing Non-Standard Architectures to Embedded Software Using Compile-Time Virtualisation},
 year = {2009}
}