Title :
Improvement of compiled instruction set simulator by increasing flexibility and reducing compile time
Author :
Chung, Moo-Kyoung ; Kyung, Chong-Min
Author_Institution :
Dept. of Electr. Eng. & Comput. Sci., KAIST, Daejeon, South Korea
Abstract :
Although static compiled instruction set simulators (ISSs) are much faster than the interpretive ISSs, they are barely used owing to the restrictions on flexibility and compile time overhead. In this paper, we present new techniques that reduce the compile time overhead and increase the flexibility of the static compiled ISS while keeping the advantages of the static compiled simulation. We remarkably reduce the compile and recompilation time using object format instead of binary format as simulator input "dynamic branch handler" solves the indirect branch problem without loss of simulation speed, and "dynamic code handler" enables to handle the dynamic code whose contents are determined at run-time. We implement those solutions in OBSIM, which is cycle-accurate static compiled ISS. OBSIM is able to perform the simulation at a speed of up to 50 millions of simulated instructions per second on Xeon 2GHz processor. We also achieve about nine times faster recompilation speed than the corresponding static compiled ISS for the embedded software whose code consists of 18 files and 199K lines of total C code.
Keywords :
C language; embedded systems; instruction sets; object-oriented programming; program compilers; C code; OBSIM; compile time; dynamic branch handling; dynamic code handling; embedded software; indirect branch problem; instruction set simulator; interpretive ISS; static compiled ISS; static compiled simulation; Application software; Computer architecture; Costs; Embedded software; Hardware; Instruction sets; Operating systems; Runtime; Silicon; Software tools;
Conference_Titel :
Rapid System Prototyping, 2004. Proceedings. 15th IEEE International Workshop on
Print_ISBN :
0-7695-2159-2
DOI :
10.1109/IWRSP.2004.1311093