Skip to main content
Log in

Scheduling with accurate communication delay model and scheduler implementation for multiprocessor system-on-chip

  • Published:
Design Automation for Embedded Systems Aims and scope Submit manuscript

Abstract

In multiprocessor system-on-chip, tasks and communications should be scheduled carefully since their execution order affects the performance of the entire system. When we implement an MPSoC according to the scheduling result, we may find that the scheduling result is not correct or timing constraints are not met unless it takes into account the delays of MPSoC architecture. The unexpected scheduling results are mainly caused from inaccurate communication delays and or runtime scheduler’s overhead. Due to the big complexity of scheduling problem, most previous work neglects the inter-processor communication, or just assumes a fixed delay proportional to the communication volume, without taking into consideration subtle effects like the communication congestion and synchronization delay, which may change dynamically throughout tasks execution. In this paper, we propose an accurate scheduling model of hardware/software communication architecture to improve timing accuracy by taking into account the effects of dynamic software synchronization and detailed hardware resource constraints such as communication congestion and buffer sharing. We also propose a method for runtime scheduler implementation and consider its performance overhead in scheduling. In particular, we introduce efficient hardware and software scheduler architectures. Furthermore, we address the issue of centralized implementation versus distributed implementation of the schedulers. We investigate the pros and cons of the two different scheduler implementations. Through experiments with significant demonstration examples, we show the effectiveness of the proposed approach.

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.

Similar content being viewed by others

References

  1. Baghdadi A, Zergainoh N-E, Cesário W, Jerraya A (2002) Combining a performance estimation methodology with a hardware/software codesign flow supporting multiprocessor systems. IEEE Trans Softw Eng 28(9):822–831

    Article  Google Scholar 

  2. Cesário W, Baghdadi A, Gauthier L, Lyonnard D, Nicolescu G, Paviot Y, Yoo S, Jerraya A, Diaz-Nava M (2002) Component-based design approach for multicore SoCs. Proc Des Autom Conf, pp 789–794

  3. Chen Y-Y, Hsu Y-C, Kin C-T (1994) MULTIPAR: Behavioral partition for synthesizing multiprocessor architectures. IEEE Trans Very Large Scale Integration (VLSI) Syst 2(1):21–32

    Article  Google Scholar 

  4. Cho Y, Lee G, Yoo S, Choi K, Zergainoh N-E (2003) Scheduling and timing analysis of HW/SW on-chip communication in MP SoC design. In: Proceedings of design automation and test in Europe conference, pp 132–137, supplement

  5. Cho Y, Zergainoh N-E, Yoo S, Choi K, Jerraya A (2005) Scheduler implementation in MP SoC design. In: Proceedings of Asia and South Pacific design automation conference, pp 151–156

  6. Colin J-Y, Nakechbandi M (1999) Scheduling tasks with communication delays on a two-level virtual distributed system. In: Proceedings of euromicro workshop on parallel and distributed processing, pp 344–348

  7. Correa RC, Ferreira A, Rebreyend P (1999) Scheduling multiprocessor tasks with genetic algorithm. IEEE Trans Parallel Distributed Syst 10(8):825–837

    Article  Google Scholar 

  8. Dally WJ, Towles B (2001) Route Packet, not wires: on-chip interconnection networks. In: Proceedings of design automation conference, pp 684–689

  9. Engels M, Meng TH (1994) Rapid prototyping of a real-time video encoder. In: Proceedings of international workshop on rapid system prototyping, pp 8–15

  10. Falsafi B, Wood DA (1997) Scheduling communication on an SMP node parallel machine. In: Proceedings of internal symposium on high-performance computer architecture, pp 128–138

  11. Gasteier M, Glesner M (1999) Bus-based communication synthesis on system-level. ACM Trans Des Autom Electron Syst 4(1):1–11

    Article  Google Scholar 

  12. Karim F, Mellan A, Nguyen A, Aydonat U, Abdelrahman TS (2004) A multilevel computing architecture for embedded multimedia applications. IEEE Micro 24(3):55–66

    Article  Google Scholar 

  13. Kim S, Im C, Ha S (2005) Schedule-aware performance estimation of communication architecture for efficient design space exploration. IEEE Trans Very Large Scale Integration (VLSI) Syst. 13(5):539–552

    Article  Google Scholar 

  14. Kleinsmith J, Gajski D (1998) Communication synthesis for reuse, UC Irvine. Technical Report ICS-TR-98-06

  15. Knudsen P, Madsen J (1999) Integrating communication protocol selection with hardware/software codesign. IEEE Trans Comput Aided Des Integr Circuits Syst 18(8):1077–1095

    Article  Google Scholar 

  16. Lahiri K, Raghunathan A, Dey S (2001) System-level performance analysis for designing on-chip communication architecture. IEEE Trans Comput Aided Des Integr Circuits Syst 20(6):768–783

    Article  Google Scholar 

  17. Lee EA, Messerschmitt DG (1987) Static scheduling of synchronous data flow programs for digital signal processing. IEEE Trans Comput 36(1):24–35

    Article  Google Scholar 

  18. Mooney V, Sakamoto T, De Micheli G (1997) Run-time scheduler synthesis for hardware-software systems and application to robot control design. In: Proceedings of international workshop on hardware/software codesign, pp 95–99

  19. Narayan S, Gajski D (1994) Synthesis of system-level bus interfaces. In: Proceedings of the European design and test conference, pp 395–399

  20. Ortega R, Borriello G (1998) Communication synthesis for distributed embedded systems. In: Proceedings of international conference on computer aided design, pp 437–444

  21. Paul JM, Bobrek A, Nelson JE, Pieper JJ, Thomas DE (2003) Schedulers as model-based design elements in programmable heterogeneous multiprocessors In: Proceedings of design automation conference, pp 408–411

  22. Topcuoglu H, Hariri S, Wu M-Y (2002) Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans Parallel Distrib Syst 13(3):260–274

    Article  Google Scholar 

  23. Yen T-Y, Wolf W (1995) Communication synthesis for distributed embedded systems. In: Proceedings of international conference on computer aided design, pp 64–69

  24. Yoo S, Lee J, Jung J, Na K, Cho Y, Choi K (1999) Fast prototyping of an IS-95 CDMA cellular phone: a case study. In: Proceedings of Asia Pacific conference on hard description languages, pp 61–66

  25. ARM Inc. ARM9TM FAMILY, available in http://www.arm.com/

  26. ARM Inc. AMBATM Specification (Rev 2.0), available in http://www.arm.com/

  27. Mentor Graphics Inc., Seamless CVE, available in http://www.mentor.com/seamless/

  28. NEC Inc., IC memory selection guide, available in http://www.nec.com

  29. Redhat Inc., eCos, available in http://www.redhat.com/embedded/technologies/ecos/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Youngchul Cho.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Cho, Y., Zergainoh, NE., Yoo, S. et al. Scheduling with accurate communication delay model and scheduler implementation for multiprocessor system-on-chip. Des Autom Embed Syst 11, 167–191 (2007). https://doi.org/10.1007/s10617-007-9004-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10617-007-9004-9

Keywords

Navigation