Abstract
Advancements in reconfigurable technologies, specifically FPGAs, have yielded faster, more power-efficient reconfigurable devices with enormous capacities. In our work, we provide testament to the impressive capacity of recent FPGAs by hosting a complete Pentium® in a single FPGA chip. In addition we demonstrate how FPGAs can be used for microprocessor design space exploration while overcoming the tension between simulation speed, model accuracy, and model completeness found in traditional software simulator environments. Specifically, we perform preliminary experimentation/prototyping with an original Socket 7 based desktop processor system with typical hardware peripherals running modern operating systems such as Fedora Core 4 and Windows XP; however we have inserted a Xilinx Virtex-4 in place of the processor that should sit in the motherboard and have used the Virtex-4 to host a complete version of the Pentium® microprocessor (which consumes less than half its resources). We can therefore apply architectural changes to the processor and evaluate their effects on the complete desktop system. We use this FPGA-based emulation system to conduct preliminary architectural experiments including growing the branch target buffer and the level 1 caches. In addition, we experimented with interfacing hardware accelerators such as DES and AES engines which resulted in a 27x speedup.
- Biswas, P., Banerjee, S., Dutt, N., Ienne, P., and Pozzi, L. 2006. Performance and energy benefits of instruction set extensions in an FPGA soft core. In Proceedings of the IEEE International Conference on VLSI Design (VLSID). IEEE Computer Society Press, Los Alamitos, CA. Google ScholarDigital Library
- Burger, D., Austin, T. M., and Bennett, S. 1996. Evaluating future microprocessors: The simplescalar tool set. Tech. Rep. CS-TR-1996-1308.Google Scholar
- Butler, T. R. 2006. http://bochs.sourceforge.net/doc/docbook/user/bochsrc.html.Google Scholar
- Cadence. 1998. Cadence Incisive Palladium. http://www.cadence.com/quickturn/.Google Scholar
- Chiou, D., Sunjeliwala, H., Sunwoo, D., Xu, J., and Patil, N. 2006. FPGA-based fast, cycle-accurate, full-system simulators. In Proceedings of the Workshop on Architecture Research using FPGA Platforms in the 12th International Symposium on High-Performance Computer Architecture.Google Scholar
- Ellsworth, J. 2007. C One. http://c64upgra.de/c-one/.Google Scholar
- Gaisler, G. 2003. LEON SPARC. http://www.gaisler.com.Google Scholar
- Gibeling, G., Schultz, A., and Asanovic, K. 2006. The RAMP architecture and description language. In Proceedings of the Workshop on Architecture Research using FPGA Platforms in the 12th International Symposium on High-Performance Computer Architecture (Austin, TX).Google Scholar
- Gibeling, G. and Wawrzynek, J. 2006. A Universal Processor for RAMP. Tech. Rep. http://ramp.eecs.berkeley.edu/index.php?publications.Google Scholar
- Granboulan, L. 2000. AES Timings of the Best Known Implementations. http://www.di.ens.fr/~granboul/recherche/AES/timings.html.Google Scholar
- Gray, J. 2000. Designing a simple FPGA-optimized RISC CPU and system-on-a-chip. http://fpgacpu.org/papers/soc-gr0040-paper.pdf.Google Scholar
- HIFN, Inc. 2006. 4450 HIPP III Storage Security Processor. HIFN, Inc.Google Scholar
- Intel Corporation 1997. The Pentium Datasheet. Intel Corporation, http://www.intel.com/support/processors/pentium/Google Scholar
- Jones, P., Padmanabhan, S., Rymarz, D., Maschmeyer, J., Schuehler, D. V., Lockwood, J. W., and Cytron, R. K. 2004. Liquid architecture. In Proceedings of the International Parallel and Distributed Processing Symposium: Workshop on Next Generation Software.Google Scholar
- Kasper, J. Krashinksy, R., Batten, C., and Asanovic, K. 2005. A parameterizable FPGA prototype of a vector-thread processor. In Proceedings of the Workshop on Architecture Research using FPGA Platforms in the 11th International Symposium on High-Performance Computer Architecture.Google Scholar
- Kozyrakis, C. and Olukotun, K. 2005. ATLAS: A Scalable Emulator for Transactional Parallel Systems. In Proceedings of the Workshop on Architecture Research using FPGA Platforms in the 11th International Symposium on High-Performance Computer Architecture.Google Scholar
- Kuon, I. and Rose, J. 2006. Measuring the gap between FPGAs and ASICs. In Proceedings of the 2006 International Symposium on Field-Programmable Gate Arrays. ACM, New York. Google ScholarDigital Library
- Lu, S.-L. L., Nurvitadhi, E. Hong, J., and Larsen, S. 2005. Memory subsystem performance evaluation with FPGA based emulators. In Proceedings of the Workshop on Architecture Research using FPGA Platforms in the 11th International Symposium on High-Performance Computer Architecture.Google Scholar
- Lu, S.-L. L., Yiannacouras, P., Kassa, R. Konow, M., and Suh, T. 2007. An FPGA-based Pentium® in a complete desktop system. In FPGA '07: Proceedings of the 2007 ACM/SIGDA 15th International Symposium on Field Programmable Gate Arrays. ACM, New York, 53--59. Google ScholarDigital Library
- Magnusson, P. S. 2002. Simics: A full system simulation platform. IEEE Comput. 35, 2, 50--58. Google ScholarDigital Library
- Opencores. 2007. Opencores.org. http://www.opencores.org.Google Scholar
- Rosenblum, M., Herrod, S. A., Witchel, E., and Gupta, A.. Complete computer system simulation: The SimOS approach. IEEE Parall. Distrib. Tech.: Syst. Applic. 3, 4 (Winter), 34--43. Google ScholarDigital Library
- Sheldon, D., Kumar, R., Lysecky, R., Vahid, F., and Tullsen, D. M. 2006. Application-specific customization of parameterized FPGA soft-core processors. In Proceedings of the IEEE/ACM International Conference on Computer-Aided Design (ICCAD). ACM, New York. Google ScholarDigital Library
- Sun Microsystems 2006. OpenSPARC. Sun Microsystems, http://opensparc.sunsource.net/.Google Scholar
- Tensilica 1997. Xtensa Tensilica, http://www.tensilica.com.Google Scholar
- WARFP. 2005. Workshop on Architecture Research using FPGA Platforms. International Symposium on High-Performance Computer Architecture (San Francisco, CA).Google Scholar
- Wunderlich, R. and Hoe, J. C. 2004. In-system FPGA prototyping of an itanium microarchitecture. In Proceedings of the International Conference on Computer Design (ICCD). Google ScholarDigital Library
- Wunderlich, R. E., Wenisch, T. F., Falsafi, B., and Hoe, J. C. 2004. An evaluation of stratified sampling of microarchitecture simulations. In Proceedings of the 3rd Annual Workshop on Duplicating, Deconstructing, and Debunking (ISCA-31).Google Scholar
- Yiannacouras, P., Steffan, J. G., and Rose, J. 2006. Application-specific customization of soft processor microarchitecture. In FPGA '06: Proceedings of the 2006 International Symposium on Field-Programmable Gate Arrays. ACM, New York. Google ScholarDigital Library
Index Terms
- A Desktop Computer with a Reconfigurable Pentium®
Recommendations
An FPGA-based Pentium® in a complete desktop system
FPGA '07: Proceedings of the 2007 ACM/SIGDA 15th international symposium on Field programmable gate arraysSoftware simulation has been the predominant method for architects to evaluate microprocessor research proposals. There are three tenets in modeling new designs with software models: simulation speed, model accuracy and model completeness. The ...
Intel nehalem processor core made FPGA synthesizable
FPGA '10: Proceedings of the 18th annual ACM/SIGDA international symposium on Field programmable gate arraysWe present a FPGA-synthesizable version of the Intel Nehalem processor core, synthesized, partitioned and mapped to a multi-FPGA emulation system consisting of Xilinx Virtex-4 and Virtex-5 FPGAs. To our knowledge, this is the first time a modern state-...
A complexity-effective architecture for accelerating full-system multiprocessor simulations using FPGAs
FPGA '08: Proceedings of the 16th international ACM/SIGDA symposium on Field programmable gate arraysFunctional full-system simulators are powerful and versatile research tools for accelerating architectural exploration and advanced software development. Their main shortcoming is limited throughput when simulating systems with hundreds of processors or ...
Comments