Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

CoMPSoC: A template for composable and predictable multi-processor system on chips

Published: 23 January 2009 Publication History

Abstract

A growing number of applications, often with firm or soft real-time requirements, are integrated on the same System on Chip, in the form of either hardware or software intellectual property. The applications are started and stopped at run time, creating different use-cases. Resources, such as interconnects and memories, are shared between different applications, both within and between use-cases, to reduce silicon cost and power consumption.
The functional and temporal behaviour of the applications is verified by simulation and formal methods. Traditionally, designers resort to monolithic verification of the system as whole, since the applications interfere in shared resources, and thus affect each other's behaviour. Due to interference between applications, the integration and verification complexity grows exponentially in the number of applications, and the task to verify correct behaviour of concurrent applications is on the system designer rather than the application designers.
In this work, we propose a Composable and Predictable Multi-Processor System on Chip (CoMPSoC) platform template. This scalable hardware and software template removes all interference between applications through resource reservations. We demonstrate how this enables a divide-and-conquer design strategy, where all applications, potentially using different programming models and communication paradigms, are developed and verified independently of one another. Performance is analyzed per application, using state-of-the-art dataflow techniques or simulation, depending on the requirements of the application. These results still apply when the applications are integrated onto the platform, thus separating system-level design and application design.

References

[1]
Abeni, L. and Buttazzo, G. 2004. Resource reservation in dynamic real-time systems. Real-Time Syst. 27, 2, 123--167.
[2]
Akesson, B., Goossens, K., and Ringhofer, M. 2007. Predator: a predictable SDRAM memory controller. In Proceedings of the International Conference on Hardware/Software Codesign (CODES+ISSS).
[3]
ARM Limited 2003. AMBA AXI Protocol Specification. ARM Limited.
[4]
Avionics Application Software Standard Interface 1997. ARINC Specification 653. Avionics Application Software Standard Interface.
[5]
Baghdadi, A., Lyonnard, D., Zergainoh, N., and Jerraya, A. 2001. An efficient architecture model for systematic design of application-specific multiprocessor SoC. In Proceedings of the Conference on Design, Automation, and Test in Europe (DATE), 55--63.
[6]
Bartic, T., Desmet, D., Mignolet, J.-Y., Marescaux, T., Verkest, D., Vernalde, S., Lauwereins, R., Miller, J., and Robert, F. 2004. Network-on-chip for reconfigurable systems: from high-level design down to implementation. In Proceedings of the International Conference on Feild Programmable Logic Applications (FPL). Springer.
[7]
Bekooij, M., Moreira, O., Poplavko, P., Mesman, B., Pastrnak, M., and van Meerbergen, J. 2004. Predictable embedded multiprocessor system design. Lecture notes in computer science, 77--91.
[8]
Benini, L. 2006. Application specific NoC design. In Proceedings of the Conference on Design, Automation, and Test in Europe (DATE).
[9]
Brand, van den, J. and Bekooij, M. 2007. Streaming consistency: a model for efficient MPSoC design. In Proceedings of the Euromicm Conference on Digital System Design (DSD).
[10]
Bril, R. J., Hentschel, C., Steffens, E. F., Gabrani, M., van Loo, G., and Gelissen, J. H. 2001. Multimedia QoS in consumer terminals. In Proceedings of the IEEE Workshop on Signal Processing Systems, 332--343.
[11]
Buttazo, G. C. 1977. Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications. Kluwer Publishers.
[12]
Chen, K., Malik, S., and August, D. 2001. Retargetable static timing analysis for embedded software. In Proceedings of the International Conference on Hardware/Software Codesign (CODES+ISSS), 39--44.
[13]
Coenen, M., Murali, S., Rădulescu, A., Goossens, K., and De Micheli, G. 2006. A buffer-sizing algorithm for networks on chip using TDMA and credit-based end-to-end flow control. In Proceedings of the International Conference on Hardware/Software Codesign (CODES+ISSS).
[14]
Culler, D. J., Singh, J. P., and Gupta, A. 1999. Parallel Computer Architecture: A Hardware/Software Approach. Morgan Kaufmann Publishers.
[15]
Dutta, S. et al. 2001. Viper: a multiprocessor SOC for advanced set-top box and digital TV systems. IEEE Design Test Computers.
[16]
Genko, N., Atienza, D., Micheli, G. D., Mendias, J., Hermida, R., and Catthoor, F. 2005. A complete network-on-chip emulation framework. In Proceedings of the Conference on Design, Automation, and Test in Europe (DATE).
[17]
Gharachorloo, K., Lenoski, D., Laudon, J., Gibbons, P., Gupta, A., and Hennessy, J. 1990. Memory consistency and event ordering in scalable shared-memory multiprocessors. In Proceedings of the International Symposium on Computer Architecture.
[18]
Goossens, K., Dielissen, J., Gangwal, O. P., González Pestana, S., Rădulescu, A., and Rijpkema, E. 2005. A design flow for application-specific networks on chip with guaranteed performance to accelerate SOC design and verification. In Proceedings of the Conference on Design, Automation, and Test in Europe (DATE).
[19]
Goossens, K., Dielissen, J., and Rădulescu, A. 2005. The æthereal network on chip: Concepts, architectures, and implementations. IEEE Design Test Computers.
[20]
Graham, R. 1969. Bounds on multiprocessing timing anomalies. SIAM J. Appl. Math. 17, 2.
[21]
Hansson, A., Coenen, M., and Goossens, K. 2007a. Channel trees: Reducing latency by sharing time slots in time-multiplexed networks on chip. In Proceedings of the International Conference on Hardware/Software Codesign (CODES+ISSS).
[22]
Hansson, A., Coenen, M., and Goossens, K. 2007b. Undisrupted quality-of-service during reconfiguration of multiple applications in networks on chip. In Proceedings of the Conference on Design, Automation, and Test in Europe (DATE).
[23]
Hansson, A. and Goossens, K. 2007. Trade-offs in the configuration of a network on chip for multiple use-cases. In Proceedings of the International Symposium on Networks-on-Chips (NOCS).
[24]
Hansson, A., Wiggers, M., Moonen, A., Goossens, K., and Bekooij, M. 2008. Applying dataflow analysis to dimension buffers for guaranteed performance in networks on chip. In Proceedings of the International Symposium on Networks-on-Chips (NOCS).
[25]
Ivimey-Cook, R. 1999. Legacy of the transputer. In Architectures, Languages and Techniques, B. M. Cook, Ed. IOS Press.
[26]
Jantsch, A. 2006. Models of computation for networks on chip. In Proceedings of the International Conference on Application of Concurrency to System Design (ACSD).
[27]
Jerraya, A., Bouchhima, A., and Pétrot, F. 2006. Programming models and HW-SW interfaces abstraction for multi-processor SoC. In Proceedings of the Design Automation Conference (DAC).
[28]
Keutzer, K., Malik, S., Newton, A. R., Rabaey, J. M., and Sangiovanni-Vincentelli, A. 2000. System-level design: orthogonalization of concerns and platform-based design. IEEE Trans. Integrat. Circ. Syst. 19, 12.
[29]
Kopetz, H. 1997. Real-Time Systems: Design Principles for Distributed Embedded Applications. Kluwer Academic Publishers.
[30]
Kopetz, H. and Bauer, G. 2003. The time-triggered architecture. Proc. IEEE 91, 1.
[31]
Kopetz, H., Obermaisser, R., Salloum, C. E., and Huber, B. 2007. Automotive software development for a multi-core system-on-a-chip. In Proceedings of the International Workshop on Software Engineering for Automotive Systems (SEAS).
[32]
Kumar, A., Hansson, A., Huisken, J., and Corporaal, H. 2007. An FPGA design flow for reconfigurable network-based multi-processor systems on chip. In Proceedings of the Conference on Design, Automation, and Test in Europe (DATE).
[33]
Leijten, J., van Meerbergen, J., Timmer, A., and Jess, J. 2000. Prophid: a platform-based design method. J. Des. Autom. Embed. Syst. 6, 1, 5--37.
[34]
Liang, J., Swaminathan, S., and Tessier, R. 2000. aSOC: A scalable, single-chip communications architecture. In Proceedings of the International Conference on Parallel Architectures and Compilation Techniques (PACT), 37--46.
[35]
Martin, G. 2006. Overview of the MPSoC design challenge. In Proceedings of the Design Automation Conference (DAC).
[36]
Mercer, C. W., Savage, S., and Tokuda, H. 1994. Processor capacity reserves: Operating system support for multimedia systems. In Proceedings of the IEEE International Conference of Multimedia Computing and Systems. IEEE Computer Society Press, 90--99.
[37]
Moonen, A., Bekooij, M., van den Berg, R., and van Meerbergen, J. 2007. Practical and accurate throughput analysis with the cyclo static data flow model. In Proceedings of the International Symposium on Modeling Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS).
[38]
Moraes, F., Calazans, N., Mello, A., Möller, L., and Ost, L. 2004. HERMES: an infrastructure for low area overhead packet-switching networks on chip. Integration VLSI J. 38, 1.
[39]
Moreira, O., Valente, F., and Bekooij, M. 2007. Scheduling multiple independent hard-real-time jobs on a heterogeneous multiprocessor. In Proceedings of the International Conference on Embedded Systems (EMSOFT).
[40]
Nieuwland, A., Kang, J., Gangwal, O., Sethuraman, R., Busá, N., Goossens, K., Peset Llopis, R., and Lippens, P. 2002. C-HEAP: A heterogeneous multi-processor architecture template and scalable and flexible protocol for the design of embedded signal processing systems. Des. Autom. Embed. Syst. 7, 3.
[41]
OCP International Partnership 2007. OCP Specification 2.2. OCP International Partnership.
[42]
Philips Semiconductors 2002. Device Transaction Level (DTL) Protocol Specification. Version 2.2. Philips Semiconductors.
[43]
Poplavko, P. 2003. Task-level timing models for guaranteed performance in multiprocessor networks-on-chip. In Proceedings of the International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES).
[44]
Radulescu, A., Dielissen, J., Goossens, K., Rijpkema, E., and Wielage, P. 2005. An efficient on-chip network interface offering guaranteed services, shared-memory abstraction, and flexible network programming. IEEE Trans. CAD Interact. Circ. Syst.
[45]
Rajkumar, R., Juvva, K., Molano, A., and Oikawa, S. 1998. Resource kernels: a resource-centric approach to real-time systems. In Proceedings of the SPIE/ACM Conference on Multimedia Computing and Networking, 150--164.
[46]
Rowen, C. and Leibson, S. 2004. Engineering the Complex SOC: Fast, Flexible Design with Configurable Processors. Prentice Hall PTR.
[47]
Rumpler, B. 2006. Complexity management for composable real-time systems. In Proceedings of the International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).
[48]
Rutten, M., Pol, E.-J., van Eijndhoven, J., Walters, K., and Essink, G. 2005. Dynamic reconfiguration of streaming graphs on a heterogeneous multiprocessor architecture. IS&T/SPIE Electron. Imag. 5683.
[49]
Sasaki, H. 1996. Multimedia complex on a chip. In Proceedings of the International Solid-State Circuits Conference (ISSCC), 16--19.
[50]
Silicon Hive 2007. Silicon hive. http://www.siliconhive.com.
[51]
Soudris, D., Zervas, N. D., Argyriou, A., Dasygenis, M., Tatas, K., Goutis, C., and Thanailakis, A. 2000. Data-reuse and parallel embedded architectures for low-power, real-time multimedia applications. In Proceedings of the IEEE International Workshop on Power and Timing Modeling, Optimization and Simulation (PATMOS), 243--254.
[52]
Sriram, S. and Bhattacharyya, S. 2000. Embedded Multiprocessors: Scheduling and Synchronization. CRC Press.
[53]
Stiliadis, D. and Varma, A. 1998. Latency-rate servers: a general model for analysis of traffic scheduling algorithms. IEEE/ACM Trans. Netw. 6, 5.
[54]
Vercauteren, S., Lin, B., and De Man, H. 1996. Constructing application-specific heterogeneous embedded architectures from custom HW/SW applications. In Proceedings of the Design Automation Conference (DAC), 521--526.
[55]
Wiggers, M., Bekooij, M., Jansen, P., and Smit, G. 2007. Efficient computation of buffer capacities for cyclo-static real-time systems with back-pressure. In Proceedings of the Real Time and Embedded Technology and Applications Symposium (RTAS).
[56]
Wüst, C., Steffens, L., Verhaegh, W., Bril, R., and Hentschel, C. 2005. QoS control strategies for high-quality video processing. Real-Time Syst. 30, 1, 7--29.

Cited By

View all
  • (2023)Accurately Measuring Contention in Mesh NoCs in Time-Sensitive Embedded SystemsACM Transactions on Design Automation of Electronic Systems10.1145/358200628:3(1-34)Online publication date: 3-Apr-2023
  • (2023)PASoC: A Predictable Accelerator-rich SoCProceedings of Cyber-Physical Systems and Internet of Things Week 202310.1145/3576914.3587496(325-330)Online publication date: 9-May-2023
  • (2023)Improving Timing-Related Guarantees for Main Memory in Multicore Critical Embedded Systems2023 IEEE Real-Time Systems Symposium (RTSS)10.1109/RTSS59052.2023.00031(265-278)Online publication date: 5-Dec-2023
  • Show More Cited By

Index Terms

  1. CoMPSoC: A template for composable and predictable multi-processor system on chips

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Design Automation of Electronic Systems
    ACM Transactions on Design Automation of Electronic Systems  Volume 14, Issue 1
    January 2009
    444 pages
    ISSN:1084-4309
    EISSN:1557-7309
    DOI:10.1145/1455229
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Journal Family

    Publication History

    Published: 23 January 2009
    Accepted: 01 August 2008
    Revised: 01 March 2008
    Received: 01 September 2007
    Published in TODAES Volume 14, Issue 1

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Composable
    2. model of computation
    3. network on chip
    4. predictable
    5. system on chip

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)23
    • Downloads (Last 6 weeks)6
    Reflects downloads up to 18 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Accurately Measuring Contention in Mesh NoCs in Time-Sensitive Embedded SystemsACM Transactions on Design Automation of Electronic Systems10.1145/358200628:3(1-34)Online publication date: 3-Apr-2023
    • (2023)PASoC: A Predictable Accelerator-rich SoCProceedings of Cyber-Physical Systems and Internet of Things Week 202310.1145/3576914.3587496(325-330)Online publication date: 9-May-2023
    • (2023)Improving Timing-Related Guarantees for Main Memory in Multicore Critical Embedded Systems2023 IEEE Real-Time Systems Symposium (RTSS)10.1109/RTSS59052.2023.00031(265-278)Online publication date: 5-Dec-2023
    • (2023)A Model of Design for Computing Systems: A Categorical ApproachIEEE Access10.1109/ACCESS.2023.332534911(116304-116347)Online publication date: 2023
    • (2021)Optimizing Multiprocessor Image-Based Control Through Pipelining and ParallelismIEEE Access10.1109/ACCESS.2021.31030519(112332-112358)Online publication date: 2021
    • (2020)Hybrid Application Mapping for Composable Many-Core Systems: Overview and Future PerspectiveJournal of Low Power Electronics and Applications10.3390/jlpea1004003810:4(38)Online publication date: 17-Nov-2020
    • (2020)BRU: Bandwidth Regulation Unit for Real-Time Multicore Processors2020 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS)10.1109/RTAS48715.2020.00011(364-375)Online publication date: Apr-2020
    • (2020)Run-Time Enforcement of Non-Functional Application Requirements in Heterogeneous Many-Core SystemsProceedings of the 25th Asia and South Pacific Design Automation Conference10.1109/ASP-DAC47756.2020.9045536(629-636)Online publication date: 17-Jan-2020
    • (2020)A scenario- and platform-aware design flow for image-based control systemsMicroprocessors and Microsystems10.1016/j.micpro.2020.10303775(103037)Online publication date: Jun-2020
    • (2020)Correct-by-construction model-based design of reactive streaming software for multi-core embedded systemsInternational Journal on Software Tools for Technology Transfer (STTT)10.1007/s10009-019-00521-722:1(3-32)Online publication date: 1-Feb-2020
    • Show More Cited By

    View Options

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media