Interpretation

From ES40 Emulator
Jump to: navigation, search

The CPU Emulation part of the ES40 Emulator is currently implemented as an Alpha machine language interpreter. Every time an instruction is executed, the emulated CPU goes through all stages of updating internal registers, fetching the instruction, decoding the instruction, fetching operands, executing the instruction, storing the results. This means that for each executed Alpha instruction a large amount of host CPU instructions need to be executed. This forms a performance barrier that severely limits execution speed. If we want to break through that barrier, we'll need to implement something like Dynamic Translation.