Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Automatic communication-driven virtual prototyping and design for networked embedded systems

Published: 01 November 2015 Publication History
  • Get Citation Alerts
  • Abstract

    This work presents a communication-driven virtual prototyping approach integrated in an existing ESL design methodology to automatically synthesize, evaluate, and optimize a data-flow application for mixed hardware/software and even networked MPSoCs. While existing synthesis tools are suitable for individual subsystems (e.g., software tasks for CPUs, hardware accelerators), the problem of establishing the communication between different subsystems that may even be simulated at different levels of abstraction is still challenging. As a remedy, we introduce the concept of bridge components in our architecture model that, during virtual prototyping, serve as integrators between subsystems that may have different communication protocols and be simulated at different levels of abstraction (e.g., TLM, behavioral level, RTL). We propose to consider bridges throughout the complete ESL design flow: Already during Design Space Exploration (DSE), the characteristics of bridge components such as implementation cost and additional latency on the application can be taken into account. Moreover, we extend the exploration model of the DSE to include required communication-related design decisions, i.e., the mapping of binary code for software tasks and the selection of different synchronization patterns for the communication. For virtual prototyping of implementation candidates derived by the DSE, the bridge components enable to automatically disassemble the system into subsystems and hand each subsystem over to an individual synthesis tool. When integrating the subsystems together, our methodology also synthesizes the interfaces for all bridges which significantly simplifies system integration. As a proof of concept, we present (I) a distributed control application that is transformed into a virtual prototype consisting of six subsystems and (II) a data-flow application from the video processing domain transformed into a virtual prototype consisting of three subsystems. The resulting subsystems can be concurrently simulated at TLM, behavioral level, and RTL. The experiments give evidence of the proposed technique's applicability, the achieved productivity gain, and the resulting simulation performance at the considered levels of abstraction.

    References

    [1]
    G. Martin, B. Bailey, A. Piziali, ESL Design and Verification: A Prescription for Electronic System Level Methodology, Morgan Kaufman, 2010.
    [2]
    G. Kahn, The semantics of a simple language for parallel programming, in: IFIP Congress, 1974, pp. 471-475.
    [3]
    J. Teich, Hardware/software codesign: the past, the present, and predicting the future, in: Proc. IEEE, vol. 100(Special Centennial Issue), May 2012, pp. 1411-1430.
    [4]
    D. Lee, H. Park, A. Gerstlauer, Synthesis of optimized hardware transactors from abstract communication specifications, in: Proc. Int. Conf. on Hardware/Software Codesign and System Synthesis, Ser. CODES+ISSS, ACM, 2012, pp. 403-412.
    [5]
    M. Lukasiewycz, M. Gla¿ß, C. Haubelt, J. Teich, R. Regler, B. Lang, Concurrent topology and routing optimization in automotive network integration, in: Proc. 2008 ACM/EDAC/IEEE Design Automation Conf., Ser. DAC, June 2008, pp. 626-629.
    [6]
    M. Lukasiewycz, M. Streubühr, M. Gla¿ß, C. Haubelt, J. Teich, Combined system synthesis and communication architecture exploration for MPSoCs, in: Proc. Design, Automation and Test in Europe, Ser. DATE, IEEE Computer Society, 2009, pp. 472-477.
    [7]
    M. Gla¿ß, J. Teich, L. Zhang, A co-simulation approach for system-level analysis of embedded control systems, in: Proc. Int. Conf. on Embedded Computer Systems: Architectures, Modeling, and Simulation, Ser. SAMOS, July 2012, pp. 355-362.
    [8]
    T. Blickle, J. Teich, L. Thiele, System-level synthesis using evolutionary algorithms, Des. Autom. Embed. Syst., 3 (1998) 23-58.
    [9]
    C. Haubelt, T. Schlichter, J. Teich, Improving automatic design space exploration by integrating symbolic techniques into multi-objective evolutionary algorithms, Int. J. Comput. Intell. Res. (IJCIR), Special Issue Multiobjective Optim. Appl., 2 (2006) 239-254.
    [10]
    F. Reimann, M. Gla¿ß, C. Haubelt, M. Eberl, J. Teich, Improving platform-based system synthesis by satisfiability modulo theories solving, in: Proc. Int. Conf. on Hardware/Software Codesign and System Synthesis, Ser. CODES+ISSS, 2010, pp. 135-144.
    [11]
    C. Haubelt, J. Falk, J. Keinert, T. Schlichter, M. Streubühr, A. Deyhle, A. Hadert, J. Teich, A SystemC-based design methodology for digital signal processing systems, EURASIP J. Embed. Syst., 2007 (2007) 1-22.
    [12]
    J. Keinert, T. Schlichter, J. Falk, J. Gladigau, C. Haubelt, J. Teich, M. Meredith, SystemCoDesigner-an automatic ESL synthesis approach by design space exploration and behavioral synthesis for streaming applications, ACM Trans. Des. Autom. Electron. Syst. (TODAES), 14 (2009) 1.
    [13]
    C. Zebelein, J. Falk, C. Haubelt, J. Teich, Exploiting model-knowledge in high-level synthesis, in: Methoden und Beschreibungssprachen zur Modellierung und Verifikation von Schaltungen und Systemen, Ser. MBMV, March 2012, pp. 181-191.
    [14]
    P. Kutzer, J. Gladigau, C. Haubelt, J. Teich, Automatic generation of system-level virtual prototypes from streaming application models, in: Int. Symposium on Rapid System Prototyping, Ser. RSP, IEEE, 2011, pp. 128-134.
    [15]
    Synopsys, CoMET-METeor, Synopsys, 2014. <http://www.synopsys.com>.
    [16]
    OVP World, Open Virtual Platform, Imperas Software, 2014. <http://www.ovpworld.org>.
    [17]
    "Cynthesizer," http://www.cadence.com, Cadence Design Systems, Inc., 2015.
    [18]
    T. Kangas, P. Kukkala, H. Orsila, E. Salminen, M. Hännikäinen, T.D. Hämäläinen, J. Riihimäki, K. Kuusilinna, UML-based multiprocessor SoC design framework, ACM Trans. Embed. Comput. Syst., 5 (2006) 281-320.
    [19]
    M. Thompson, H. Nikolov, T. Stefanov, A.D. Pimentel, C. Erbas, S. Polstra, E.F. Deprettere, A framework for rapid system-level exploration, synthesis, and programming of multimedia MP-SoCs, in: Proc. Int. Conf. on Hardware/Software Codesign and System Synthesis, Ser. CODES+ISSS, ACM, 2007, pp. 9-14.
    [20]
    K. Popovici, A. Jerraya, Flexible and abstract communication and interconnect modeling for MPSoC, in: Proc. Asia and South Pacific Design Automation Conf., Ser. ASPDAC, IEEE Computer Society, 2009, pp. 143-148.
    [21]
    A. Gerstlauer, D. Shin, J. Peng, R. Domer, D.D. Gajski, Automatic layer-based generation of system-on-chip bus communication models, IEEE Trans. Comput.-Aided Des. Integr. Circ. Syst., 26 (2007) 1676-1687.
    [22]
    N. Bombieri, F. Fummi, V. Guarnieri, Automatic synthesis of OSCI TLM-2.0 models into RTL bus-based IPs, in: High Level Design Validation and Test Workshop, Ser. HLDVT, IEEE International, 2010, pp. 105-112.
    [23]
    H. Cho, S. Abdi, D. Gajski, Interface synthesis for heterogeneous multi-core systems from transaction level models, in: Proc. ACM SIGPLAN/SIGBED Conf. on Languages, Compilers, and Tools for Embedded Systems, Ser. LCTES, ACM, 2007, pp. 140-142.
    [24]
    N. Hatami, P. Prinetto, A. Trapanese, Hardware design methodology to synthesize communication interfaces from TLM to RTL, in: Conf. on Automation Quality and Testing Robotics, Ser. AQTR, vol. 2, IEEE International, 2010, pp. 1-5.
    [25]
    M. Eisenring, J. Teich, Interfacing hardware and software, in: Field-Programmable Logic and Applications From FPGAs to Computing Paradigm, Springer, 1998, pp. 520-524.
    [26]
    M. Eisenring, J. Teich, L. Thiele, Rapid prototyping of dataflow programs on hardware/software architectures, in: Proc. of Thirty-First Hawaii International Conf. on Syst. Sci., Ser. HICSS, IEEE, 1998, pp. 187-196.
    [27]
    M. Pelcat, K. Desnos, J. Heulot, C. Guy, J.-F. Nezan, S. Aridhi, PREESM: a dataflow-based rapid prototyping framework for simplifying multicore DSP programming, in: Proc. 6th European Embedded Design in Education and Research Conference, Ser. EDERC'14, September 2014, pp. 36-40.
    [28]
    E.A. Lee, What's ahead for embedded software?, Computer, 33 (2000) 18-26.
    [29]
    K. Desnos, M. Pelcat, J.-F. Nezan, S. Bhattacharyya, S. Aridhi, Pimm: parameterized and interfaced dataflow meta-model for MPSoCs runtime reconfiguration, in: 2013 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS XIII), July 2013, pp. 41-48.
    [30]
    E.A. de Kock, W.J.M. Smits, P. van der Wolf, J.-Y. Brunel, W.M. Kruijtzer, P. Lieverse, K.A. Vissers, G. Essink, YAPI: application modeling for signal processing systems, in: Proc. 37th Design Automation Conference, Ser. DAC'00, ACM, New York, NY, USA, 2000, pp. 402-405.
    [31]
    M. Wipliez, Compilation infrastructure for dataflow programs, modeling and simulation, in: Dissertation, INSA de Rennes, December 2010. Available: <https://tel.archives-ouvertes.fr/tel-00598914>.
    [32]
    A. Gerstlauer, J. Peng, D. Shin, D. Gajski, A. Nakamura, D. Araki, Y. Nishihara, Specify-Explore-Refine (SER): from specification to implementation, in: Proc. of 45th annual Design Automation Conf., Ser. DAC, ACM, 2008, pp. 586-591.
    [33]
    J. Falk, C. Haubelt, J. Teich, Efficient representation and simulation of model-based designs in SystemC, in: Proc. Forum on Specification & Design Languages, Ser. FDL, September 2006, pp. 129-134.
    [34]
    E.A. Lee, S. Neuendorffer, M.J. Wirthlin, Actor-oriented design of embedded hardware and software systems, J. Circ. Syst. Comput., 12 (2003) 231-260, 200.
    [35]
    L. de Alfaro, T. Henzinger, Interface-based design, in: Engineering Theories of Software Intensive Systems, Ser. NATO Science Series, vol. 195, Springer, Netherlands, 2005, pp. 83-104.
    [36]
    B. Kienhuis, E. Deprettere, K. Vissers, P. van der Wolf, An approach for quantitative analysis of application-specific dataflow architectures, in: Proc. IEEE Int. Conf. on Application-Specific Systems, Architectures and Processors, Ser. ASAP, 1997, pp. 338-349.
    [37]
    J. Coleman, Reducing interrupt latency through the use of message signaled interrupts, Intel, Embedded DESIGN CENTER, Tech. Rep., 2009, White Paper No. 321070.
    [38]
    A.M. Hinz, The tower of hanoi, L'Enseignement Math., 35 (1989) 289-321.
    [39]
    J. Feld, PROFINET - scalable factory communication for all applications, in: Proc. Int. Workshop on Factory Communication Systems, Ser. WFCS, IEEE, 2004, pp. 33-38.
    [40]
    D.A. Wheeler, More Than a Gigabuck: Estimating GNU/Linux's size, 2001.

    Cited By

    View all
    • (2016)SWE-X10Proceedings of the Second Internationsl Workshop on Extreme Scale Programming Models and Middleware10.5555/3018814.3018820(32-39)Online publication date: 13-Nov-2016

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image Microprocessors &amp; Microsystems
    Microprocessors & Microsystems  Volume 39, Issue 8
    November 2015
    718 pages

    Publisher

    Elsevier Science Publishers B. V.

    Netherlands

    Publication History

    Published: 01 November 2015

    Author Tags

    1. Communication refinement
    2. ESL design flow
    3. SystemC-TLM
    4. Virtual prototyping

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 28 Jul 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2016)SWE-X10Proceedings of the Second Internationsl Workshop on Extreme Scale Programming Models and Middleware10.5555/3018814.3018820(32-39)Online publication date: 13-Nov-2016

    View Options

    View options

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media