skip to main content
research-article

Scheduling and Placement of Hardware/Software Real-Time Relocatable Tasks in Dynamically Partially Reconfigurable Systems

Published:01 December 2010Publication History
Skip Abstract Section

Abstract

With the gradually fading distinction between hardware and software, it is now possible to relocate tasks from a microprocessor to reconfigurable logic and vice versa. However, existing hardware-software scheduling can rarely cope with such runtime task relocation. In this work, we propose a new Relocatable Hardware-Software Scheduling (RHSS) method that not only can be applied to dynamically relocatable hardware-software tasks, but also increases the reconfigurable hardware resource utilization, reduces the reconfigurable hardware resource fragmentation with realistic placement methods, and makes best efforts at meeting the real-time constraints of tasks. The feasibility of the proposed relocatable hardware-software scheduling algorithm was proved by applying it to some randomly generated examples and a real dynamically reconfigurable network security system example. Compared to the quadratic time complexity of the state-of-the-art Adaptive Hardware-Software Allocation (AHSA) method, RHSS is linear in time complexity, and improves the reconfigurable hardware utilization by as much as 117.8%. The scheduling and placement time and the memory usage are also drastically reduced by as much as 89.5% and 96.4%, respectively.

References

  1. Abeni, L. and Buttazzo, G. 1998. Integrating multimedia applications in hard real-time systems. In Proceedings of the 19th IEEE Real-Time Systems Symposium. IEEE Computer Society, 4--13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Ahmadinia, A. and Teich, J. 2003. Speeding up online placement for Xilinx FPGAs by reducing configuration overhead. In Proceedings of the IFIP International Conference on VLSI-SoC. 118--122.Google ScholarGoogle Scholar
  3. Ahmadinia, A., Bobda, C., Bednara, M., and Teich, J. 2004. A new approach for on-line placement on reconfigurable devices. In Proceedings of the International Parallel and Distributed Processing Symposium. IEEE CS Press, 134.Google ScholarGoogle Scholar
  4. Ahmadinia, A., Bobda, C., Fekete, S. P., Teich, J., and van der Veen, J. C. 2004. Optimal routing-conscious dynamic placement for reconfigurable devices. In Proceedings of the 14th International Conference on Field-Programmable Logic and Applications. Lecture Notes in Computer Science, vol. 3203. Springer, 847--851.Google ScholarGoogle Scholar
  5. Ahmadinia, A., Bobda, C., and Teich, J. 2005. Online placement for dynamically reconfigurable devices. Int. J. Embed. Syst. 1, 3--4, 165--178.Google ScholarGoogle Scholar
  6. Andrews, D., Sass, R., Anderson, E., Agron, J., Peck, W., Stevens, J., Baijot, F., and Komp, E. 2008. Achieving programming model abstractions for reconfigurable computing. IEEE Trans. VLSI Syst. 16, 4, 34--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Banerjee, S., Bozorgzadeh, E., and Dutt, N. D. 2006. Integrating physical constraints in hw-sw partitioning for architectures with partial dynamic reconfiguration. IEEE Trans. VLSI Syst. 14, 11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Bazargan, K., Kastner, R., and Sarrafzadeh, M. 2000. Fast template placement for reconfigurable computing systems. IEEE Des. Test Comput. 17, 1, 68--83. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Chen, Y.-H. and Hsiung, P.-A. 2005. Hardware task scheduling and placement in operating systems for dynamically reconfigurable SoC. In Proceedings of the 2005 IFIP International Conference on Embedded and Ubiquitous Computing (EUC’05). Lecture Notes in Computer Science, vol. 3824. Springer Verlag, 489--498. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Corbetta, S., Ferrandi, F., Morandi, M., Santambrogio, M., and Sciuto, D. 2007. Two novel approaches to online partial bitstream relocation in a dynamically reconfigurable system. In Proceedings of the Annual Symposium on VLSI. IEEE Computer Society Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Danne, K. and Platzner, M. 2005. Periodic real-time scheduling for FPGA computers. In Proceedings of the 3rd International Workshop on Intelligent Solutions in Embedded Systems (WISES’05). IEEE Computer Society, 117--127.Google ScholarGoogle Scholar
  12. ElFarag, A. A., El-Boghdadi, H. M., and Shaheen, S. I. 2007. Miss ratio improvement for real-time applications using fragmentation-aware placement. In Proceedings of the IEEE International Parallel and Distributed Processing Symposium.Google ScholarGoogle Scholar
  13. Handa, M. and Vemuri, R. 2004. An efficient algorithm for finding empty space for online FPGA placement. In Proceedings of the 41st Design Automation Conference (DAC’04). ACM Press, 960--965. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Horta, E. and Lockwood, J. W. 2001. Parbit: A tool to transform bitfiles to implement partial reconfiguration of field programmable gate arrays (FPGAs). Tech. rep. WUCS-01-13, Washington University.Google ScholarGoogle Scholar
  15. Hsiung, P.-A. and Liu, C.-W. 2007. Exploiting hardware and software low power techniques for energy efficient co-scheduling in dynamically reconfigurable systems. In Proceedings of the 17th International Conference on Field Programmable Logic and Applications (FPL’07). IEEE Computer Society Press, 165--170.Google ScholarGoogle Scholar
  16. Huang, C.-H., Chang, S.-S., and Hsiung, P.-A. 2007. Generic wrapper design for dynamic swappable hardware IP in partially reconfigurable systems. Int. J. Elect. Engin. 14, 3, 229--238.Google ScholarGoogle Scholar
  17. Huang, C.-H. and Hsiung, P.-A. 2008. Software-controlled dynamically swappable hardware design in partially reconfigurable systems. EURASIP J. Embed. Syst. 231940. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Koch, D., Haubelt, C., Streichert, T., and Teich, J. 2007. Modeling and sythesis of hardware-software morphing. In Proceedings of the IEEE International Symposium on Circuits and Systems. 2746--2749.Google ScholarGoogle Scholar
  19. Liao, H.-W. 2007. Multi-objective placement of reconfigurable hardware tasks in real-time systems. M.S. thesis, National Chung Cheng University, Chiayi, Taiwan.Google ScholarGoogle Scholar
  20. Loo, S. M. and Wells, B. E. 2005. Task scheduling in a finite-resource, reconfigurable hardware/software codesign environment. INFORMS J. Comput. 18, 2, 151--172. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Mei, B., Schaumont, P., and Vernalde, S. 2000. A hardware-software partitioning and scheduling algorithm for dynamically reconfigurable embedded systems. In Proceedings of the 11th ProRISC Workshop on Circuits, Systems and Signal Processing.Google ScholarGoogle Scholar
  22. Morandi, M., Novati, M., Santambrogio, M., and Sciuto, D. 2008. Core allocation and relocation management for a self dynamically reconfigurable architecture. In Proceedings of the Annual Symposium on VLSI. IEEE Computer Society Press, 286--291. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Peck, W., Anderson, E., Agron, J., Stevens, J., Baijot, F., and Andrews, D. 2006. Hthreads: A computational model for reconfigurable devices. In Proceedings of the International Conference on Field Programmable Logic and Applications. 885--888.Google ScholarGoogle Scholar
  24. Pellizzoni, R. and Caccamo, M. 2006. Adaptive allocation of software and hardware real-time tasks for FPGA-based embedded systems. In Proceedings of the 12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS’06). IEEE Computer Society Press, 208--220. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Porrmann, M., Kalte, H. G. L., and Rückert, U. 2005. Replica: A bitstream manipulation filter for module relocation in partial reconfigurable systems. In Proceedings of the 12th Reconfigurable Architectures Workshop. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Steiger, C., Walder, H., Platzner, M., and Thiele, L. 2003. Online scheduling and placement of real-time tasks to partially reconfigurable devices. In Proceedings of the 24th IEEE International Real-Time Systems Symposium. IEEE Computer Society Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Steiger, C., Walder, H., and Platzner, M. 2004. Operating systems for reconfigurable embedded platforms: Online scheduling of real-time tasks. IEEE Trans. Comput. 53, 11, 1393--1407. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Tabero, J., Septien, J., Mecha, H., and Mozos, D. 2004. A low fragmentation heuristic for task placement in 2D RTR HW management. In Proceedings of the International Conference on Field-Programmable Logic and Applications. Springer Verlag, 241--250.Google ScholarGoogle Scholar
  29. Walder, H. and Platzner, M. 2003. Online scheduling for block-partitioned reconfigurable devices. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE). IEEE Computer Society, 10290--10295. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Walder, H., Steiger, C., and Platzner, M. 2003. Fast online task placement on FPGAs: Free space partitioning and 2d-hashing. In Proceedings of the International Parallel and Distributed Processing Symposium. Vol. 17. IEEE Computer Society Press. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Scheduling and Placement of Hardware/Software Real-Time Relocatable Tasks in Dynamically Partially Reconfigurable Systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!