Composability and Predictability for Independent Application Development,Verification, and Execution

  • Benny Akesson
  • Anca Molnos
  • Andreas Hansson
  • Jude Ambrose Angelo
  • Kees Goossens


System-on-chip (soc) design gets increasingly complex, as a growing number of applications are integrated in modern systems. Some of these applications have real-time requirements, such as a minimum throughput or a maximum latency. To reduce cost, system resources are shared between applications, making their timing behavior inter-dependent. Real-time requirements must hence be verified for all possible combinations of concurrently executing applications, which is not feasible with commonly used simulation-based techniques. This chapter addresses this problem using two complexity-reducing concepts: composability and predictability. Applications in a composable system are completely isolated and cannot affect each other’s behaviors, enabling them to be independently verified. Predictable systems, on the other hand, provide lower bounds on performance, allowing applications to be verified using formal performance analysis. Five techniques to achieve composability and/or predictability in soc resources are presented and we explain their implementation for processors, interconnect, and memories in our platform.


Composability Predictability Real-Time Arbitration Resource Management Multi-Processor System 


  1. 1.
    B. Akesson, K. Goossens, and M. Ringhofer. Predator: a predictable SDRAM memory controller. In CODES+ISSS ’07: Proceedings of the 5th IEEE/ACM international conference on Hardware/software codesign and system synthesis, pages 251–256, 2007.Google Scholar
  2. 2.
    B. Akesson, A. Hansson, and K. Goossens. Composable resource sharing based on latency-rate servers. In 12th Euromicro Conference on Digital System Design (DSD), 2009.Google Scholar
  3. 3.
    B. Akesson, W. Hayes, and K. Goossens. Classification and Analysis of Predictable Memory Patterns. In Int’l Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), 2010.Google Scholar
  4. 4.
    B. Akesson, L. Steffens, and K. Goossens. Efficient Service Allocation in Hardware Using Credit-Controlled Static-Priority Arbitration. In Int’l Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), 2009.Google Scholar
  5. 5.
    B. Akesson, L. Steffens, E. Strooisma, and K. Goossens. Real-Time Scheduling Using Credit-Controlled Static-Priority Arbitration. In Int’l Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), 2008.Google Scholar
  6. 6.
    ARM Limited. AMBA AXI Protocol Specification, 2003.Google Scholar
  7. 7.
    S. Bayliss and G. Constantinides. Methodology for designing statically scheduled application-specific sdram controllers using constrained local search. In Field-Programmable Technology, 2009. International Conference on, pages 304 –307, Dec. 2009.Google Scholar
  8. 8.
    M. Bekooij, A. Moonen, and J. van Meerbergen. Predictable and Composable Multiprocessor System Design: A Constructive Approach. In Bits&Chips Symposium on Embedded Systems and Software, 2007.Google Scholar
  9. 9.
    R. Cruz. A calculus for network delay. I. Network elements in isolation. IEEE Transactions on Information Theory, 37(1):114–131, 1991.Google Scholar
  10. 10.
    M. Ekerhult. Compose: Design and implementation of a composable and slack-aware operating system targeting a multi-processor system-on-chip in the signal processing domain. Master’s thesis, Lund University, July 2008.Google Scholar
  11. 11.
    K. Goossens, J. Dielissen, and A. Rădulescu. The Æthereal network on chip: Concepts, architectures, and implementations. IEEE Design and Test of Computers, 22(5):414–421, 2005.CrossRefGoogle Scholar
  12. 12.
    K. Goossens and A. Hansson. The aethereal network on chip after ten years: goals, evolution, lessons, and future. In DAC ’10: Proceedings of the 47th Design Automation Conference, pages 306–311, 2010.Google Scholar
  13. 13.
    K. Goossens, D. She, A. Milutinovic, and A. Molnos. Composable dynamic voltage and frequency scaling and power management for dataflow applications. In 13th Euromicro Conference on Digital System Design (DSD), Sept. 2010.Google Scholar
  14. 14.
    P. Gumming. The TI OMAP Platform Approach to SoC. Winning the SoC revolution: experiences in real design, page 97, 2003.Google Scholar
  15. 15.
    A. Hansson, M. Coenen, and K. Goossens. Undisrupted quality-of-service during reconfiguration of multiple applications in networks on chip. In Proc. Design, Automation and Test in Europe Conference and Exhibition (DATE), pages 954–959, 2007.Google Scholar
  16. 16.
    A. Hansson and K. Goossens. An on-chip interconnect and protocol stack for multiple communication paradigms and programming models. In CODES+ISSS ’09: Proceedings of the 7th IEEE/ACM international conference on Hardware/software codesign and system synthesis, pages 99–108, 2009.Google Scholar
  17. 17.
    A. Hansson, K. Goossens, M. Bekooij, and J. Huisken. CoMPSoC: A template for composable and predictable multi-processor system on chips. ACM Transactions on Design Automation of Electronic Systems, 14(1):1–24, 2009.CrossRefGoogle Scholar
  18. 18.
    A. Hansson, M. Subbaraman, and K. Goossens. aelite: A flit-synchronous network on chip with composable and predictable services. In Proc. Design, Automation and Test in Europe Conference and Exhibition (DATE), Apr. 2009.Google Scholar
  19. 19.
    A. Hansson, M. Wiggers, A. Moonen, K. Goossens, and M. Bekooij. Enabling application-level performance guarantees in network-based systems on chip by applying dataflow analysis. IET Computers & Digital Techniques, 2009.Google Scholar
  20. 20.
    S. Heithecker and R. Ernst. Traffic shaping for an FPGA based SDRAM controller with complex QoS requirements. In DAC ’05: Proceedings of the 42nd annual conference on Design automation, pages 575–578, 2005.Google Scholar
  21. 21.
    E. Ipek, O. Mutlu, J. Martinez, and R. Caruana. Self-optimizing memory controllers: A reinforcement learning approach. In Computer Architecture. ISCA ’08. 35th International Symposium on, pages 39–50, 2008.Google Scholar
  22. 22.
    International Technology Roadmap for Semiconductors (ITRS), 2009.Google Scholar
  23. 23.
    H. Kopetz and G. Bauer. The time-triggered architecture. Proceedings of the IEEE, 91(1):112–126, 2003.CrossRefGoogle Scholar
  24. 24.
    H. Kopetz, C. El Salloum, B. Huber, R. Obermaisser, and C. Paukovits. Composability in the time-triggered system-on-chip architecture. In SOC Conference, IEEE International, pages 87–90, 2008.Google Scholar
  25. 25.
    E. A. Lee. Absolutely positively on time: what would it take? IEEE Transactions on Computers, 38(7):85–87, 2005.Google Scholar
  26. 26.
    K. Lee, T. Lin, and C. Jen. An efficient quality-aware memory controller for multimedia platform SoC. IEEE Transactions on Circuits and Systems for Video Technology, 15(5):620–633, 2005.CrossRefGoogle Scholar
  27. 27.
    A. Molnos and K. Goossens. Conservative dynamic energy management for real-time dataflow applications mapped on multiple processors. In 12th Euromicro Conference on Digital System Design (DSD), 2009.Google Scholar
  28. 28.
    O. Moreira, F. Valente, and M. Bekooij. Scheduling multiple independent hard-real-time jobs on a heterogeneous multiprocessor. In EMSOFT ’07: Proceedings of the 7th ACM & IEEE international conference on Embedded software, pages 57–66, 2007.Google Scholar
  29. 29.
    O. Mutlu and T. Moscibroda. Parallelism-Aware Batch Scheduling: Enabling High-Performance and Fair Shared Memory Controllers. IEEE Micro, 29(1):22–32, 2009.CrossRefGoogle Scholar
  30. 30.
    J. Muttersbach, T. Villiger, and W. Fichtner. Practical design of globally-asynchronous locally-synchronous systems. In Proceedings of the Sixth International Symposium on Advanced Research in Asynchronous Circuits and Systems, pages 52–59, 2000.Google Scholar
  31. 31.
    A. Nieuwland, J. Kang, O. Gangwal, R. Sethuraman, N. Busá, K. Goossens, R. Peset Llopis, and P. Lippens. C-HEAP: A heterogeneous multi-processor architecture template and scalable and flexible protocol for the design of embedded signal processing systems. Design Automation for Embedded Systems, 7(3):233–270, 2002.MATHCrossRefGoogle Scholar
  32. 32.
    OCP International Partnership. Open Core Protocol Specification, 2001.Google Scholar
  33. 33.
    Philips Semiconductors. Device Transaction Level (DTL) Protocol Specification. Version 2.2, 2002.Google Scholar
  34. 34.
    R. Saleh, S. Wilton, S. Mirabbasi, A. Hu, M. Greenstreet, G. Lemieux, P. Pande, C. Grecu, and A. Ivanov. System-on-chip: Reuse and integration. Proceedings of the IEEE, 94(6):1050–1069, 2006.CrossRefGoogle Scholar
  35. 35.
    J. Shao and B. Davis. A burst scheduling access reordering mechanism. In Proceedings of the 13th International Symposium on High-Performance Computer Architecture, pages 285–294, 2007.Google Scholar
  36. 36.
    S. Sriram and S. Bhattacharyya. Embedded multiprocessors: Scheduling and synchronization. CRC, 2000.Google Scholar
  37. 37.
    L. Steffens, M. Agarwal, and P. van der Wolf. Real-Time Analysis for Memory Access in Media Processing SoCs: A Practical Approach. ECRTS ’08: Proceedings of the Euromicro Conference on Real-Time Systems, pages 255–265, 2008.Google Scholar
  38. 38.
    C. van Berkel. Multi-core for Mobile Phones. In Proc. Design, Automation and Test in Europe Conference and Exhibition (DATE), 2009.Google Scholar
  39. 39.
    S. Verdoolaege, H. Nikolov, and T. Stefanov. PN: a tool for improved derivation of process networks. EURASIP J. Embedded Syst., 2007, 2007.Google Scholar
  40. 40.
    R. Wilhelm, D. Grund, J. Reineke, M. Schlickling, M. Pister, and C. Ferdinand. Memory hierarchies, pipelines, and buses for future architectures in time-critical embedded systems. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 28(7):966–978, 2009.CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2011

Authors and Affiliations

  • Benny Akesson
    • 1
  • Anca Molnos
  • Andreas Hansson
  • Jude Ambrose Angelo
  • Kees Goossens
  1. 1.Eindhoven University of TechnologyEindhovenThe Netherlands

Personalised recommendations