EventKenan Çağrı Hırlak
Development of LEON3-FT Emulator Based on QEMU for Fault Tolerant Satellite Flight Software
Processor emulators are essential tools for software development and verification. A practical emulator must be complete and full-system i.e. it must run unmodified software and emulate all necessary parts of the system. In case of satellite flight software, an emulator must have capability of speeding up the emulation to observe daily behaviour of a satellite in just hours. To test fault tolerant designs, an emulator must have ability to inject SEOs to running software. Lastly, an emulator must enable emulated devices to communicate with the running software. QEMU is selected as base code for the emulator since it is a dynamically translating emulator that is optimized to be fast. By means of modifications and extensions that are made to QEMU, an emulator that can run unmodified software that is compiled for LEON3 is developed which can speed up the execution up to 6 times, enables hardware emulation through tcp and serial ports, and has capability of injecting SEOs.