Instruction Set Simulators
Instruction Set Simulators (ISS) mimic the behavior of processors by simulating instructions, memory interface, and other I/O components. This allows developers to run and test their software long before real hardware becomes available. Functional simulators provide the best performance but lack the time consistency delivered by cycle-accurate simulators. These simulate the processor pipeline and external components synchronized to a virtual clock. Although this overhead reduces their performance, it can provide vital information to improve the implementation of algorithms.
Tensilica ISS
Tensilica offers a commercial cycle-accurate simulator and a functional simulator for the Xtensa processor architecture. Please, visit Tensilica's website for further information.
The simulator (xt-iss) simply takes an ELF file as its argument and starts simulating instructions from the reset vector. The option --turbo
invokes the (much faster) functional simulator TurboXim.
xt-iss [--turbo] Image.elf