I-Codesign: A Codesign Methodology for Reconfigurable Embedded Systems

  • Ines GhribiEmail author
  • Riadh Ben Abdallah
  • Mohamed Khalgui
  • Marco Platzner
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 743)


Hardware/software codesign involves various design problems including system specification, design space exploration and hardware/software partitioning. An effective codesign process requires accurately predicting the performance, cost and power consequence of any design trade-off in algorithms or hardware characterization. In order to satisfy these design constraints we developed a new codesign methodology: I-codesign. It starts with describing the system specification with probabilistic estimations of the execution scenarios along with real-time and inclusion/exclusion parameters. Then, a three phase partitioning approach is applied to the specification where each phase deals with a specific set of constraints. An embedded controller code is generated at the end of the methodology that acts at run-time on the reconfiguration requests.


Codesign Real-time Reconfiguration Partitioning Probabilistic software 


  1. 1.
    Shaout, A., El-mousa, H., Mattar, B.: Specification and modeling of HW/SW CO-design for heterogeneous embedded systems. In: Proceedings of World Congress on Engineering, Hong Kong, pp. 273–278 (2009)Google Scholar
  2. 2.
    Teich, J.: Hardware software codesign: the past, the present, and predicting the future. Proc. IEEE 100, 1411–1430 (2012)CrossRefGoogle Scholar
  3. 3.
    Cheng, O., Abdulla, W., Salcic, Z.: Hardware software codesign of automatic speech recognition system for embedded real-time applications. IEEE Trans. Industr. Electron. 58, 850–859 (2011)CrossRefGoogle Scholar
  4. 4.
    Wainer, G.: Applying modelling and simulation for development embedded systems. In: Proceedings of 2nd Mediterranean Conference on Embedded Computing (MECO) (2013)Google Scholar
  5. 5.
    Tang, J.W., Hau, Y.W., Marsono, M.: Hardware software partitioning of embedded system-on-chip applications. In: 2015 Proceedings of IFIP/IEEE International Conference on Very Large Scale Integration, pp. 331–336 (2015)Google Scholar
  6. 6.
    Banerjee, A., Mondal, A., Sarkar, A., Biswas, S.: Real-time embedded systems analysis; from theory to practice. In: Proceedings of 19th International Symposium on VLSI Design and Test (VDAT), Ahmedabad, pp. 1–2 (2015)Google Scholar
  7. 7.
    Joshi, P.V., Gurumurthy, K.S.: Analysing and improving the performance of software code for real time embedded systems. In: Proceedings of 2nd International Conference on Devices, Circuits and Systems (ICDCS), pp. 1–5 (2014)Google Scholar
  8. 8.
    Pillai, P., Shin, K.G.: Real-time dynamic voltage scaling for low-power embedded operating systems. In: Proceedings of 18th ACM Symposium on Operating Systems Principles, vol. 35, pp. 89–102 (2001)Google Scholar
  9. 9.
    Nikolic, B., Awan, M.A., Petters, S.M.: SPARTS: simulator for power aware and real-time systems. In: Proceedings of IEEE 10th International Conference on Trust, Security and Privacy in Computing and communications, pp. 999–1004 (2011)Google Scholar
  10. 10.
    Wang, X.W., Chen, W.N., Wang, Y., Peng, C.L.: A co-design flow for reconfigurable embedded computing system with RTOS support. In: Proceedings of ICESS 2009, International Conference on Embedded Software and Systems, pp. 467–474 (2009)Google Scholar
  11. 11.
    Ghribi, I., Abdallah, R., Khalgui, M., Platzner, M.: New Codesign solutions for modeling and partitioning probabilistic reconfigurable embedded software. In: Proceedings of 29th conference on European Simulation and Modeling Conference (EUROSIS) (2015)Google Scholar
  12. 12.
    Vahid, F., Gajski, D.D.: Incremental hardware estimation during hardware/software functional partitioning. In: Proceedings of IEEE Transactions on Very Large Scale Integration Systems, pp. 516–521 (2002)Google Scholar
  13. 13.
    Ernst, R., Henkel, J., Benner, T., Holtmann, U.: The COSYMA environment for hardware/software cosynthesis of small embedded systems. In: Proceedings of Microprocessors and Microsystems (1996)Google Scholar
  14. 14.
    Camposano, R., Wilberg, J.: Embedded system design. In: Proceedings of Design Automation for Embedded Systems (2001)Google Scholar
  15. 15.
    Shi, R., Yin, S., Yin, C., Liu, L., Wei, S.: Energy-aware task partitioning and scheduling algorithm for reconfigurable processor. In: Proceedings of IEEE 11th International Conference on Solid-State and Integrated Circuit Technology), pp. 1–3 (2012)Google Scholar
  16. 16.
    Rui, S., Yin, S., Chongyong, Y.: Energy-aware task partitioning and scheduling algorithm for reconfigurable processo. In: Proceedings of IEEE 11th International Conference on Solid-State and Integrated Circuit Technology), Xi’an, pp. 1–3 (2012)Google Scholar
  17. 17.
    Janakiraman, N., Kumar, P.N.: Multi-objective module partitioning design for dynamic and partial reconfigurable system-on-chip using genetic algorithm. J. Syst. Archit. 60, 119–139 (2014)CrossRefGoogle Scholar
  18. 18.
    Poornima, B., Kumar, V.: A multilevel partitioning approach for efficient tasks allocation in heterogeneous distributed systems. J. Syst. Archit. 54, 530–548 (2008)CrossRefGoogle Scholar
  19. 19.
    Liu, P., Wu, J., Wang, Y.: Integrated heuristic for hardware/software co-design on reconfigurable devices. In: Proceedings of 13th International Conference on Parallel and Distributed Computing, Applications and Technologies, pp. 370–375 (2012)Google Scholar
  20. 20.
    Banerjee, S., Bozorgzadeh, E., Dutt, N.: Physically-aware HW-SW partitioning for reconfigurable architectures with partial dynamic reconfiguration. In: Proceedings of 42nd Design Automation Conference, pp. 335–340 (2005)Google Scholar
  21. 21.
    Fiduccia, C.M., Mattheyes, R.M.: A linear time heuristic for improving network partitions. In: Proceedings of 9th Conference on Design Automation, pp. 175–181 (1982)Google Scholar
  22. 22.
    Ghribi, I., Abdallah, R., Khalgui, M., Platzner, M.: New co-design methodology for real-time embedded systems. In: Proceedings of 11th International Joint Conference on Software Technologies, Lisbon (2016)Google Scholar
  23. 23.
    Forget, J., Boniol, F., Grolleau, E., Lesens, D., Pagetti, C.: Scheduling dependent periodic tasks without synchronization mechanisms. In: Proceedings of 16th IEEE on Real-Time and Embedded Technology and Applications Symposium (RTAS), pp. 301–310 (2010)Google Scholar
  24. 24.
    Singhoff, F., Legrand, J., Nana, L., Marce, L.: Cheddar: a flexible real time scheduling framework. In: Proceedings of 2004 Annual ACM SIGAda International Conference on Ada: The Engineering of Correct and Reliable Software for Real-Time Distributed Systems Using Ada and Related Technologies, pp. 1–8 (2004)Google Scholar
  25. 25.
    Mahadevan, S., Storgaard, M., Madsen, J., Virk, K.: ARTS: a system-level framework for modeling MPSoC components and analysis of their causality. In: Proceedings of 13th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, pp. 480–483 (2005)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Ines Ghribi
    • 1
    • 2
    Email author
  • Riadh Ben Abdallah
    • 1
  • Mohamed Khalgui
    • 1
    • 3
  • Marco Platzner
    • 4
  1. 1.LISI LabUniversity of CarthageCarthageTunisia
  2. 2.Faculty of Science of TunisUniversity of Tunis el ManarTunisTunisia
  3. 3.Systems Control LabXidian UniversityXi’anChina
  4. 4.University of PaderbornPaderbornGermany

Personalised recommendations