Skip to main content
Log in

Architecture and operating system support for two-dimensional runtime partial reconfiguration

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Reconfigurable machines based on field programmable gate array (FPGA) chips adapt to applications’ needs through hardware reconfiguration. Partial reconfiguration allows the configuration of a portion of a chip while the rest of the chip is busy working on tasks. This paper considers a two-dimensional partially reconfigurable FPGA chip that allows the dynamic swap in and out of circuit modules. Such a chip supports the concurrent execution of multiple applications or an application that is otherwise too large to fit. A challenging issue for 2-D runtime partial reconfiguration is how to support the efficient connection, or routing, between circuit modules or between modules and I/O pins, when those modules may be placed on any area of a chip. Because commercial chips are not efficient in 2-D runtime routing, a new FPGA architecture is proposed based on an array of clusters of configurable logic blocks and a mesh of segmented buses. To evaluate the runtime performance of the architecture, an operating system is specified and implemented which takes care of the scheduling, placement, and routing of circuits on the architecture. Simulation is used to evaluate the efficiency of the OS kernel and to determine the optimal cluster size of the architecture.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Ahmadinia A, Bobda C, Ding J, Majer M, Teich J, van der Veen J, Fekete S (2005) A practical approach for circuit routing on dynamic reconfigurable devices. In: Proceedings of the IEEE international workshop on rapid system prototyping (RSP), Montreal, Canada, June 8–10, pp 84–90

  2. Bazargan K, Kastner R, Sarrafzadeh M (2000) Fast template placement for reconfigurable computing systems. IEEE Des Test Comput 17(1):68–83

    Article  Google Scholar 

  3. Betz V, Rose J, Marquardt A (1999) Architecture and CAD for deep-submicron FPGAs. Kluwer, Dordrecht

    Book  Google Scholar 

  4. Bobda C, Majer M, Koch D, Ahmadinia A, Teich J (2004) A dynamic NoC approach for communication in reconfigurable devices. In: International proceedings of the field programmable logic and applications (FPL04), Antwerp, Belgium, August 2004, pp 1032–1036

  5. Bobda C, Ahmadinia A, Majer M, Teich J, Fekete S, van der Veen J (2005) DyNoC: a dynamic infrastructure for communication in dynamically reconfigurable devices. In: International conference on field-programmable logic and applications (FPL), Tampere, Finland, August 24–26, pp 153–158

  6. Compton K, Li Z, Cooley J, Knol S, Hauck S (2002) Configuration relocation and defragmentation for run-time reconfigurable computing. IEEE Trans Very Large Scale Integr (VLSI) Syst 10(3):209–220

    Article  Google Scholar 

  7. Dehon A (1996) Reconfigurable architectures for general-purpose computing, PhD thesis, MIT

  8. Diessel OF (1998) On scheduling dynamic FPGA reconfigurations–a partial rearrangement approach. Ph.D. dissertation, University of Newcastle, Australia

  9. Ebeling C, McMurchie L, Hauck SA, Burns (1995) Placement and routing tools for the triptych FPGA. IEEE Trans VLSI, 473–482

  10. Edmonds J, Grayz J, Liang D, Miller RJ (2003) Mining for empty spaces in large data sets. Theor Comput Sci 296:435–452

    Article  MATH  Google Scholar 

  11. Elbirt J, Paar C (2000) An FPGA implementation and performance evaluation of the serpent block cipher. In: ACM/SIGDA international symposium on FPGAs, pp 45–56

  12. Handa M, Vemuri R (2004) An efficient algorithm for finding empty space for online FPGA placement. In: Proceedings of the 41st design automation conference (DAC’04), June 7–11, San Diego, California, USA

  13. Haynes SD, Stone J, Cheung PYK, Luk W (2000) Video image processing with the sonic architecture. IEEE Trans Comput, pp 50–57

  14. Horta EL, Lockwood John W, Parlour D Dynamic hardware plugins in an FPGA with partial runtime reconfiguration. In: DAC2002, June, New Orleans, USA

  15. Jean J, Guo X, Wang F, Song L, Zhang Y (2003) A study of mapping generalized sliding window operations on reconfigurable computers. In: Proceedings of the international conference on engineering of reconfigurable systems and algorithms, June, Las Vegas, Nevada, USA, pp 51–57

  16. Keating M, Bricaud P (2002) Reuse methodology manual. Kluwer, Dordrecht

    Google Scholar 

  17. Lee C (1961) An algorithm for path connections and its applications. IEEE Trans Electron Comput EC-10:346–365

    Article  Google Scholar 

  18. Marescaux T, Nollet V et al. (2004) Rum-time support for heterogeneous multitasking on reconfigurable SOCs. INTEGRATION, March

  19. Huebner M, Becker T, Becker J (2004) Real-time LUT-based network topologies for dynamic and partial FPGA self-reconfiguration. In: SBCCI’04, September 7–11, Pernambuco, Brazil

  20. Hübner M, Schuck C, Kühnle M, Becker J New 2-dimensional partial dynamic reconfiguration techniques for real-time adaptive microelectronic circuits. In: Proceedings of the 2006 emerging VLSI technologies and architectures (ISVLSI 2006), Karlsruhe, Germany

  21. Hutton M, Grossman JP, Rose J, Corneil DG (1998) Characterization and parameterized generation of synthetic combinational benchmark circuits. IEEE Trans Comput-Aided Des Integr Circuits Syst 17(10):985–996

    Article  Google Scholar 

  22. Nollet V, Coene P, Verkest D, Venalde S, Lauwereins R (2003) Design an operating system for a heterogeneous reconfigurable SoC. In: Proceedings of the international parallel and distributed processing symposium

  23. Pionteck T, Albrecht C, Koch R (2006) A dynamically reconfigurable packet-switched network-on-chip. In: Proc. of design automation and test in Europe

  24. Rencher M, Hutchings B (1997) Automated target recognition on splash 2. In: IEEE symposium on FPGAs for custom computing machines, April, Napa Valley, California, pp 192–200

  25. Sedcole NP, Cheung PYK, Constantinides GA, Luk W (2003) A reconfigurable platform for real time embedded image processing, In: FPL03, Proc. 13th int. workshop on field programmable logic and applications, Villach, Lisben, Portugal, Sep. 2003, pp 606–615

  26. Skliarova I, de B Ferrari A (2003) Reconfigurable hardware SAT solvers: a survey of systems. In: Proceedings of field programmable logic and application, 13th international conference, FPL 2003, Lisbon, Portugal, September 2003, pp 468-477

  27. Steiger C, Walder H, Platzner M (Nov. 2004) Operating system for reconfigurable embedded platforms: online scheduling of real-time tasks. IEEE Trans Comput 53(11):1393–1407

    Article  Google Scholar 

  28. Tatineni S (2002) Dynamic scheduling, allocation and compaction scheme for real-time tasks on FPGAs. Master’s thesis, Louisiana State University, May 2002

  29. Wang F, Jean J, Sun S (2005) Aspect ratio effects on reconfigurable computing. In: Proc. of the international conference on engineering of reconfigurable systems and algorithms, Las Vegas, Nevada, USA, June 2005

  30. Wang F, Jean J (2006) Architecture support for runtime 2D partial reconfiguration. In: Proc. of the international conference on engineering of reconfigurable systems and algorithms, Las Vegas, Nevada, USA, June 2006

  31. Wang F (2006) A field programmable gate array architecture for two-dimensional partial reconfiguration. PhD dissertation, Wright State University

  32. Weinhardt M, Luk W (1999) Pipeline vectorization for reconfigurable systems. In: FCCM, pp 52–62

  33. Wigley G, Keamey D (2001) The first real operating system for reconfigurable computers. In: 6th Australasian computer systems architecture conference, p 130

  34. Wigley G, Kearney D (January 2002) The management of applications for reconfigurable computing using an operating system. In: Proc. seventh Asia-Pacific computer systems architecture conference, ACS, Washington

    Google Scholar 

  35. Wigley G (2005) An operating system for reconfigurable computing. PhD dissertation, The University of South Australia

  36. Xilinx (2003) Virtex-II platform FPGAs: complete data sheet, p 34

  37. Virtex-II™ platform FPGAs: detailed description. http://www.xilinx.com/bvdocs/publications/ds031-2.pdf

  38. Virtex-4 configuration guide, Xilinx UG071 (ver1.5) Jan. 12, 2007

  39. Virtex-5 configuration user guide, Xilinx UG191 (ver2.2) Feb. 1st, 2007

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Fei Wang.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Wang, F., Jean, J. Architecture and operating system support for two-dimensional runtime partial reconfiguration. J Supercomput 59, 610–635 (2012). https://doi.org/10.1007/s11227-010-0457-4

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-010-0457-4

Keywords

Navigation