Abstract
Reconfigurable hardware such as FPGAs combines performance and flexibility, two inherent requirements of many modern electronic devices. Moreover, using reconfigurable devices, time to market can be reduced while simultaneously cutting the costs. However, the design of systems that beneficially explore the reconfiguration capabilities of modern FPGAs is cumbersome and little automated. In this work, a new approach is described that starts from a very high level of abstraction, so-called algorithmic skeletons, and exploits the additional information of this level of abstraction to beneficially execute on reconfigurable devices. Particularly, the approach focuses on dynamic run-time reconfiguration on partially reconfigurable FPGAs. As a first introduction to this approach, we consider stream parallelism paradigms including their composition.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
DeHon, A., Wawrzynek, J.: The case for reconfigurable processors (1997)
Compton, K., Hauck, S.: Reconfigurable Computing: A Survey of Systems and Software. ACM Computing Surveys 34(2), 171–210 (2002)
Ganesan, S., Vemuri, R.: An Integrated Temporal Partitioning and Partial Reconfiguration Technique for Design Latency Improvement. In: DATE ’00. Proceedings of the IEEE Design, Automation and Test in Europe, Paris, France (2000)
Diessel, O., ElGindy, H., Middendorf, M., Schmeck, H., Schmidt, B.: Dynamic Scheduling of Tasks on Partially Reconfigurable FPGAs. IEE Proceedings – Computer and Digital Techniques (Special Issue on Reconfigurable Systems) 147(3), 181–188 (2000)
Horta, E.L., Lockwood, J.W., Taylor, D.E., Parlour, D.: Dynamic hardware plugins in an FPGA with partial run-time reconfiguration. In: DAC 2002. Proceedings of the 39th conference on Design automation, pp. 343–348. ACM Press, New York (2002)
Li, Z., Hauck, S.: Configuration prefetching techniques for partial reconfigurable coprocessor with relocation and defragmentation. In: FPGA 2002. Proceedings of the 2002 ACM/SIGDA tenth international symposium on Field-programmable gate arrays, pp. 187–195. ACM Press, New York (2002)
Steiger, C., Walder, H., Platzner, M.: Operating systems for reconfigurable embedded platforms: Online scheduling of real-time tasks. IEEE Trans. Comput. 53(11), 1393–1407 (2004)
Danne, K., Bobda, C., Kalte, H.: Run-time Exchange of Mechatronic Controllers Using Partial Hardware Reconfiguration. In: Cheung, P.Y.K., Constantinides, G.A. (eds.) FPL 2003. LNCS, vol. 2778, Springer, Heidelberg (2003)
DeHon, A., Adams, J., DeLorimier, M., Kapre, N., Matsuda, Y., Naeimi, H., Vanier, M.C., Wrighton, M.G.: Design patterns for reconfigurable computing. In: FCCM, pp. 13–23 (2004)
Caspi, E., Chu, M., Huang, R., Yeh, J., Wawrzynek, J., DeHon, A.: Stream computations organized for reconfigurable execution (score). In: Grünbacher, H., Hartenstein, R.W. (eds.) FPL 2000. LNCS, vol. 1896, pp. 605–614. Springer, Heidelberg (2000)
Antti Pelkonen, K.M., Cupák, M.: System-Level Modeling of Dynamically Reconfigurable Hardware with SystemC. In: Proceedings of International Symposium on Parallel and Distributed Processing (Reconfigurable Architectures Workshop), pp. 174–181 (April 2003)
Brebner, G.J.: A Virtual Hardware Operating System for the Xilinx XC6200. In: Glesner, M., Hartenstein, R.W. (eds.) FPL 1996. LNCS, vol. 1142, pp. 327–336. Springer, Heidelberg (1996)
Danne, K.: Operating Systems for FPGA Based Computers and Their Memory Management. In: ARCS 2004.Organic and Pervasive Computing, Workshop Proceedings. GI-Edition Lecture Notes in Informatics (LNI), vol. P-41, Köllen Verlag (2004)
Walder, H., Platzner, M.: A Runtime Environment for Reconfigurable Hardware Operating Systems. In: Becker, J., Platzner, M., Vernalde, S. (eds.) FPL 2004. LNCS, vol. 3203, pp. 831–835. Springer, Heidelberg (2004)
Benkrid, K., Crookes, D.: From application descriptions to hardware in seconds: a logic-based approach to bridging the gap. IEEE Trans. VLSI Syst. 12(4), 420–436 (2004)
Cole, M.I.: Algorithmic Skeletons: Structured Management of Parallel Computation. Pitman/The MIT Press, London, UK/Cambridge, Massachusetts, USA (1989)
Cole, M.: Bringing skeletons out of the closet: a pragmatic manifesto for skeletal parallel programming. Parallel Comput. 30(3), 389–406 (2004)
Rabhi, F.A., Gorlatch, S.: Patterns and Skeletons for Parallel and Distributed Computing. Springer, Heidelberg (2002)
Pelagatti, S.: Structured development of parallel programs. Taylor & Francis, Inc., Bristol, PA, USA (1998)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 IFIP International Federation for Information Processing
About this paper
Cite this paper
Dittmann, F. (2007). Algorithmic Skeletons for the Programming of Reconfigurable Systems. In: Obermaisser, R., Nah, Y., Puschner, P., Rammig, F.J. (eds) Software Technologies for Embedded and Ubiquitous Systems. SEUS 2007. Lecture Notes in Computer Science, vol 4761. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75664-4_36
Download citation
DOI: https://doi.org/10.1007/978-3-540-75664-4_36
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75663-7
Online ISBN: 978-3-540-75664-4
eBook Packages: Computer ScienceComputer Science (R0)