The paper discusses various techniques for software execution at the transaction level in MPSoC simulations, comparing instruction accurate interpretation, dynamic binary translation, and native execution approaches. It describes how these methods can be integrated into a transaction level modeling environment, noting that native software execution using annotation strategies provides the most accurate performance results at a high simulation speed. The conclusion is that native simulation is best suited for developing upper software layers.