A key issue in the implementation of real-time systems is the ability to statically analyse the timing behaviour of the system, to ensure that important timing requirements are met. The increasing complexity of modern processors make the determination of the worst-case execution time of software difficult via analytical means. This paper discusses the compilation of Ada programs directly to hardware circuits, so removing the need for a processor. The solution is discussed in terms of Ada (specifically a Ravenscar / SPARK subset). The contributions of the paper are twofold. Firstly, the compilation of Ada to hardware (Field-Programmmable Gate Arrays) is described. Secondly, issues with the Ada language are addressed. These relate to processor concepts (eg. interrupts, representation clauses) that are embodied in the language that need to be modified for compilation to hardware.

BibTex Entry

@inproceedings{Ward2002a,
 address = {Vienna, Austria},
 author = {M. Ward and N. Audsley},
 booktitle = {Proceedings of 7th Ada-Europe International Conference on Reliable Software Technology},
 category = {languages, noveltechnology},
 editor = {Johann Blieberger and Alfred Strohmeier},
 month = {Jun 17-21},
 publisher = {Springer-Verlag},
 series = {Lecture Notes in Computer Science},
 title = {Language Issues of Compiling Ada to Hardware},
 volume = {2361},
 year = {2002}
}