Defragmentation Algorithms for Partially Reconfigurable Hardware

  • Markus Koester
  • Heiko Kalte
  • Mario Porrmann
  • Ulrich Rückert
Part of the IFIP International Federation for Information Proc book series (IFIPAICT, volume 240)

Dynamic reconfiguration is a promising approach for resource efficient utilization of microelectronic systems. Standard platforms for partial dynamic reconfiguration are field-programmable gate arrays (FPGAs). Multiple hardware tasks can share the same FPGA resources over time, which increases the device utilization in comparison to non-reconfigurable systems. Although, similar resource management is already known in the area of operating systems, there is a requirement to adapt these concepts to the special needs of dynamically reconfigurable systems. Additionally, there is a lack of underlying mechanisms, e.g., to suspend hardware tasks and restart them at a different position within the FPGA. In this article we introduce a mechanism for task relocation that includes saving and restoring of state information of the task. Based on this approach we address the problem of defragmentation. We present defragmentation algorithms that minimize different types of costs. With the help of a detailed simulation model and a benchmark, we finally provide realistic simulation results and compare the different algorithms.


Cell Column Relocation Process FPGA Resource Device Utilization Virtex FPGAs 
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.


  1. 1.
    K. Bazargan, R. Kastner, and M. Sarrafzadeh. Fast template placement for reconfigurable computing systems. IEEE Design and Test of Computers, Vol. 17, No. 1:68-83, 2000. CrossRefGoogle Scholar
  2. 2.
    E. G. Coffman, M. R. Garey, and D. S. Johnson. Approximation algorithms for bin packing: A survey. In D. Hochbaum, editor, Approximation algorithms. PWS Publishing Company, 1997.Google Scholar
  3. 3.
    O. Diessel and H. ElGindy. Run-time compaction of FPGA designs. In Field-Programmable Logic and Applications. 7th Int. Workshop, volume 1304, London, U.K., 1997. Springer.Google Scholar
  4. 4.
    H. Kalte, M. Koester, B. Kettelhoit, M. Porrmann, and U. Rückert. A comparative study on system approaches for partially reconfigurable architectures. In Proc. of the Int. Conference on Engineering of Reconfigurable Systems and Algorithms (ERSA ’04). CSREA Press, 2004.Google Scholar
  5. 5.
    H. Kalte, G. Lee, M. Porrmann, and U. Rückert. Replica: A bitstream manipulation filter for module relocation in partial reconfigurable systems. In Proc. of the 19th International Parallel and Distributed Processing Symposium, 2005.Google Scholar
  6. 6.
    H. Kalte, M. Porrmann, and U. Rückert. Study on column wise design compaction for reconfigurable systems. In Proceedings of the IEEE International Conference on Field Programmable Technology (FPT’04), 2004.Google Scholar
  7. 7.
    H. Kalte, M. Porrmann, and U. Rückert. System-on-programmable-chip approach enabling online fine-grained 1D-placement. In 11th Reconfigurable Architectures Workshop (RAW 2004), Santa F, New Mexico, 2004.Google Scholar
  8. 8.
    H. Simmler, L. Levinson, and R. Manner. Multitasking on FPGA coprocessors. In Proceedings of the 10th International Workshop on Field-Programmable Logic and Applications, pages 121-130, London, UK, 2000. Springer.Google Scholar
  9. 9.
    M. Ullmann, M. Hübner, B. Grimm, and J. Becker. An FPGA run-time system for dynamical on-demand reconfiguration. In Proc. of the 18th International Parallel and Distributed Processing Symposium. IEEE Computer Society, 2004.Google Scholar
  10. 10.
    H. Walder and M. Platzner. Non-preemptive multitasking on FPGAs: Task placement and footprint transform. In Proc. of the Int. Conference on Engineering of Reconfigurable Systems and Architectures, pages 24-30. CSREA Press, 2002.Google Scholar
  11. 11.
    Xilinx Inc. Application notes 151. Virtex series configuration architecture user guide, 2000.Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2007

Authors and Affiliations

  • Markus Koester
    • 1
  • Heiko Kalte
    • 2
  • Mario Porrmann
    • 1
  • Ulrich Rückert
    • 1
  1. 1.Heinz Nixdorf Institute, System and Circuit TechnologyUniversity of PaderbornGermany
  2. 2.School of Computer Science and Software EngineeringUniversity of Western AustraliaAustralia

Personalised recommendations