全部 标题 作者
关键词 摘要

OALib Journal期刊
ISSN: 2333-9721
费用:99美元

查看量下载量

相关文章

更多...

Using Partial Reconfiguration and Message Passing to Enable FPGA-Based Generic Computing Platforms

DOI: 10.1155/2012/127302

Full-Text   Cite this paper   Add to My Lib

Abstract:

Partial reconfiguration (PR) is an FPGA feature that allows the modification of certain parts of an FPGA while the rest of the system continues to operate without disruption. This distinctive characteristic of FPGAs has many potential benefits but also challenges. The lack of good CAD tools and the deep hardware knowledge requirement result in a hard-to-use feature. In this paper, the new partition-based Xilinx PR flow is used to incorporate PR within our MPI-based message-passing framework to allow hardware designers to create template bitstreams, which are predesigned, prerouted, generic bitstreams that can be reused for multiple applications. As an example of the generality of this approach, four different applications that use the same template bitstream are run consecutively, with a PR operation performed at the beginning of each application to instantiate the desired application engine. We demonstrate a simplified, reusable, high-level, and portable PR interface for X86-FPGA hybrid machines. PR issues such as local resets of reconfigurable modules and context saving and restoring are addressed in this paper followed by some examples and preliminary PR overhead measurements. 1. Introduction Partial reconfiguration (PR) is a feature of an FPGA that allows part of it to be reconfigured while the rest of it continues to operate normally. PR has been the focus of considerable research because of the many potential benefits of such a feature. For example, it allows the implementation of more power-efficient designs by using hardware on-demand, that is, only instantiate the logic that is necessary at a given time and remove unused logic. PR also allows the virtualization of FPGA resources by time sharing them among many concurrent applications. Alternatively, a single large application may be implemented even if it requires more logic resources than what a single FPGA can provide as long as the logic resources are not required simultaneously. Fault-tolerant systems and dynamic load-balancing are also potential benefits of PR. All these features make PR attractive for applications in the fields of automotive and aerospace design, software radio, video, and image processing, among other markets. However, there are many challenges for PR to be more widely accepted, for example, dynamic changing of logic adds an extra level of difficulty to verification performance overheads in terms of designed target frequency and higher resource utilization complex design entry tools and PR CAD flows. A PR design requires the partitioning and floorplanning of the entire

References

[1]  Xilinx, Inc., “Partial Reconfiguration User Guide,” http://www.xilinx.com/support/documentation/sw_manuals/xilinx12_2/ug702.pdf.
[2]  M. Salda?a, A. Patel, H. J. Liu, and P. Chow, “Using partial reconfiguration in an embedded message-passing system,” in Proceedings of the International Conference on Reconfigurable Computing and FPGAs (ReConFig '10), pp. 418–423, December 2010.
[3]  ArchES Computing, Inc., http://www.archescomputing.com.
[4]  M. Salda?a, A. Patel, C. Madill et al., “MPI as an abstraction for software-hardware interaction for HPRCs,” in Proceedings of the 2nd International Workshop on High-Performance Reconfigurable Computing Technology and Applications (HPRCTA '08), pp. 1–10, November 2008.
[5]  P. Lysaght, B. Blodget, J. Mason, J. Young, and B. Bridgford, “Invited paper: enhanced architectures, design methodologies and CAD tools for dynamic reconfiguration of Xilinx FPGAS,” in Proceedings of the International Conference on Field Programmable Logic and Applications (FPL '06), pp. 1–6, August 2006.
[6]  O. Diessel, H. ElGindy, M. Middendorf, H. Schmeck, and B. Schmidt, “Dynamic scheduling of tasks on partially reconfigurable FPGAs,” IEE Proceedings: Computers and Digital Techniques, vol. 147, no. 3, pp. 181–188, 2000.
[7]  C. Bobda, A. Ahmadinia, M. Majer, J. Teich, S. Fekete, and J. van der Veen, “DyNoC: a dynamic infrastructure for communication in dynamically reconfigurable devices,” in Proceedings of the International Conference on Field Programmable Logic and Applications (FPL '05), pp. 153–158, August 2005.
[8]  K. Papadimitriou, A. Anyfantis, and A. Dollas, “An effective framework to evaluate dynamic partial reconfiguration in FPGA systems,” IEEE Transactions on Instrumentation and Measurement, vol. 59, no. 6, pp. 1642–1651, 2010.
[9]  C. Rossmeissl, A. Sreeramareddy, and A. Akoglu, “Partial bitstream 2-D core relocation for reconfigurable architectures,” in Proceedings of the NASA/ESA Conference on Adaptive Hardware and Systems (AHS '09), pp. 98–105, August 2009.
[10]  H. Kalte and M. Porrmann, “Context saving and restoring for multitasking in reconfigurable systems,” in Proceedings of the International Conference on Field Programmable Logic and Applications (FPL '05), pp. 223–228, August 2005.
[11]  D. Koch and J. Teich, “Platform-independent methodology for partial reconfiguration,” in Proceedings of the 1st Conference on Computing Frontiers (CF '04), pp. 398–403, ACM, New York, NY, USA, 2004.
[12]  H.-H. So, A. Tkachenko, and R. Brodersen, “A unified hardware/software runtime environment for FPGA-based reconfigurable computers using BORPH,” in Proceedings of the 4th International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS '06), pp. 259–264, October 2006.
[13]  L. M?ller, R. Soares, E. Carvalho, I. Grehs, N. Calazans, and F. Moraes, “Infrastructure for dynamic reconfigurable systems: choices and trade-offs,” in Proceedings of the 19th Annual Symposium on Integrated Circuits and Systems Design (SBCCI '06), pp. 44–49, ACM, New York, NY, USA, 2006.
[14]  The MPI Forum, “MPI: a message passing interface,” in Proceedings of the ACM/IEEE Conference on Supercomputing, pp. 878–883, ACM, New York, NY, USA, November 1993.
[15]  Nallatech, http://www.nallatech.com/.
[16]  P. S. Pacheco, Parallel Programming with MPI, Morgan Kaufmann, 1997.
[17]  Impulse Accelerated Technologies, http://www.impulseaccelerated.com/.
[18]  A. W. House, M. Salda?a, and P. Chow, “Integrating high-level synthesis into MPI,” in Proceedings of the 18th IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM '10), pp. 175–178, May 2010.
[19]  M. Salda?a, D. Nunes, E. Ramalho, and P. Chow, “Configuration and programming of heterogeneous multiprocessors on a multi-FPGA system using TMD-MPI,” in Proceedings of the IEEE International Conference on Reconfigurable Computing and FPGA's, (ReConFig '06), pp. 1–10, September 2006.
[20]  G. Bradski, “The OpenCV Library,” Dr. Dobb's Journal of Software Tools, 2000.

Full-Text

comments powered by Disqus

Contact Us

service@oalib.com

QQ:3279437679

WhatsApp +8615387084133

WeChat 1538708413