Title:
FAx86: An Open-Source FPGA-accelerated x86 Full-system Emulator
Advisor:
Moshovos, Andreas
Department:
Electrical and Computer Engineering
Issue Date:
30-May-2011
Abstract (summary):
This thesis presents FAx86, a hardware/software full-system emulator of commodity computer systems using x86 processors. FAx86 is based upon the open-source IA-32 full-system simulator Bochs and is implemented over a single Virtex-5 FPGA. Our first prototype uses an embedded PowerPC to run the software portion of Bochs and off-loads the instruction decoding function to a low-cost hardware decoder since instruction decode was measured to be the most time consuming part of the software-only emulation. Instruction decoding for x86 architectures is non-trivial due to their variable length and instruction encoding format. The decoder requires only 3% of the total LUTs and 5% of the BRAMs of the FPGA's resources making the design feasible to replicate for many-core emulator implementations. FAx86 prototype boots Linux Debian version 2.6 and runs SPEC CPU 2006 benchmarks. FAx86 improves simulation performance over the default Bochs by 5 to 9\% depending on the workload.
Permanent Link:
https://hdl.handle.net/1807/27337
Content Type:
Thesis
This item is licensed under a Creative Commons License