Timing insensitive binary-to-binary translation

Bryce Cogswell · 1995

This thesis develops the theory and practical methods of performing binary-to-binary translation (BBT) on real-time and embedded applications. The unique properties of these systems that preclude traditional BBT include the potential use of time dependent code that implicitly relies upon the execution speed of the underlying platform, the need for well-bounded worst-case performance, and detailed interaction between the application, the underlying hardware and external devices. This thesis describes a BBT system that provides reliable translations of real-time code, ensuring both semantic and timing equivalence, by tracing and mimicking the timing properties of the original application on the original hardware. Algorithms are presented that permit the scheduling of time-sensitive translated applications under real-time operating systems using rate monotonic scheduling, even when the original application executes on a dedicated processor with little or no operating system or scheduler. Worst case error bounds between the timing of events on the original and translated application are derived and validated. In addition, an algorithm for eliminating the need for run-time code generation or emulation is described, greatly improving the worst-case performance of translated systems, and which is effective for all but self-modifying applications. The development of a methodology that permits a priori analysis of the performance and timing equivalence of translated applications for arbitrary source and target platforms allows the user to select the least expensive target architecture that is capable of supporting the timing and performance needs of the application. To aid the implementation of translators for new architectures, a system for automatically generating binary translators has been developed. These practical methods have been evaluated in a real implementation for a variety of applications and target platforms with excellent results.

Read the paper · More papers on PaperTik