79 research outputs found

    Modeling Cyber-Physical Production Systems with SystemC-AMS

    Get PDF
    The heterogeneous nature of SystemC-AMS makes it a perfect candidate solution to support Cyber-Physical Production Systems (CPPSs), i.e., systems that are characterized by a tight interaction of the cyber part with the surrounding physical world and with manufacturing production processes. Nonetheless, the support for the modeling of physical and mechanical dynamics typical of production machinery goes far beyond the initial application scenario of SystemC-AMS, thus limiting its effectiveness and adoption in the production and manufacturing context. This paper starts with an analysis of the current adoption of SystemC-AMS to highlight the open points that still limit its effectiveness, with the goal of pinpointing current issues and to propose solutions that could improve its effectiveness, and make SystemC-AMS an essential resource also in the new Industry 4.0 scenario

    SystemC-AMS thermal modeling for the co-simulation of functional and extra-functional properties

    Get PDF
    Temperature is a critical property of smart systems, due to its impact on reliability and to its inter-dependence with power consumption. Unfortunately, the current design flows evaluate thermal evolution ex-post, on offline power traces. This does not allow to consider temperature as a dimension in the design loop, and it misses all the complex inter-dependencies with design choices and power evolution. In this paper, by adopting the functional language SystemC-AMS, we propose a method to enable thermal/power/functional co-simulation. The system thermal model is built by using state-of-the-art circuit equivalent models, by exploiting the support for electrical linear networks intrinsic of SystemC-AMS. The experimental results will show that the choice of SystemC-AMS is a winning strategy for building a simultaneous simulation of multiple functional and extra-functional properties of a system. The generated code exposes an accuracy comparable to that of the reference thermal simulator HotSpot. Additionally, the initial overhead due to the general purpose nature of SystemC-AMS is compensated by surprisingly high performance of transient simulation, with speedups as high as two orders of magnitude

    Simulating Memristive Networks in SystemC-AMS

    Get PDF
    This chapter presents a solution for the simulation of large memristive networks with SystemC-AMS. SystemC-AMS allows simulating memristors both on analogue level and on digital level to link analogue memristive devices to digital circuits and system level specifications. We investigate the benefits and drawbacks of a SystemC-AMS simulation compared to a simulation in SPICE. We show for the example of a two-layer memristive network emulating an optical flow algorithm by the detection of moving edges that large memristive networks can be simulated with a free available SystemC-AMS simulation environment, whereas free available SPICE simulation environment fails. However, it is also shown that commercial SPICE simulators are superior against current SystemC-AMS implementations concerning the size of simulated memristive networks. However, SystemC-AMS simulations of memristive networks offer both still more flexibility and similar run times compared to commercial SPICE simulators for small-sized memristive networks. The flexibility and the powerfulness of a SystemC-AMS solution is demonstrated for a complex network that solves edge detection, filtering and detecting of moving objects. The possible run times of the memristive network are determined in the SystemC-AMS simulation environment and are compared with an optical flow algorithm on classical hardware like a CPU and a GPU

    Cost-aware design and simulation of electrical energy systems

    Get PDF
    One fundamental dimension in the design of an electrical energy system (EES) is the economic analysis of the possible design alternatives, in order to ensure not just the maximization of the energy output but also the return on the investment and the possible profits. Since the energy output and the economic figures of merit are intertwined, for an accurate analysis it is necessary to analyze these two aspects of the problem concurrently, in order to define effective energy management policies. This paper achieves that objective by tracking and measuring the energy efficiency and the cost effectiveness in a single modular framework. The two aspects are modeled separately, through the definition of dedicated simulation layers governed by dedicated virtual buses that elaborate and manage the information and energy flows. Both layers are simulated concurrently within the same simulation infrastructure based on SystemC-AMS, so as to recreate at runtime the mutual influence of the two aspects, while allowing the use of different discrete time scales for the two layers. Thanks to the tight coupling provided by the single simulation engine, our method enables a quick estimation of various cost metrics (net costs, annualized costs, and profits) of any configuration of EES under design, via an informed exploration of the alternatives. To prove the effectiveness of this approach, we apply the proposed strategy to two EES case studies, we explored various management strategies and the presence of different types and numbers of power sources and energy storage devices in the EES. The analysis proved to allow the identification of the optimal profitable solutions, thereby improving the standard design and simulation flow of EES

    Wireless extension to the existing SystemC design methodology

    Get PDF
    This research uses a SystemC design methodology to model and design complex wireless communication systems, because in the recent years, the complexity of wireless communication systems has increased and the modelling and design of such systems has become inefficient and challenging. The most important aspect of modelling wireless communication systems is that system design choices may affect the communication behaviour and also communication design choices may impact on the system design. Whilst, the SystemC modelling language shows great promise in the modelling of complex hardware/software systems, it still lacks a standard framework that supports modelling of wireless communication systems (particularly the use of wireless communication channels). SystemC lacks elements and components that can be used to express and simulate wireless systems. It does not support noise links natively. To fill this gap, this research proposes to extend the existing SystemC design methodology to include an efficient simulation of wireless systems. It proposes to achieve this by employing a system-level model of a noisy wireless communication channel, along with a small repertoire of standard components (which of course can be replaced on a per application basis). Finally, to validate our developed methodology, a flocking behaviour system is selected as a demonstration (case study). This is a very complex system modelled based on the developed methodology and partitioned along different parameters. By applying our developed methodology to model this system as a case study, we can prove that incorporating and fixing the wireless channel, wireless protocol, noise or all of these elements early in the design methodology is very advantageous. The modelled system is introduced to simulate the behaviour of the particles (mobile units) that form a mobile ad-hoc communication network. Wireless communication between particles is addressed with two scenarios: the first is created using a wireless channel model to link each pair of particles, which means the wireless communication between particles is addressed using a Point-to-Point (P2P) channel; the other scenario is created using a shared channel (broadcast link). Therefore, incorporating wireless features into existing SystemC design methodology, as done in this research, is a very important task, because by developing SystemC as a design tool to support wireless systems, hardware aspects, software parts and communication can be modelled, refined and validated simultaneously on the same platform, and the design space expanded into a two-dimensional design space comprising system and communication

    A Holistic Approach to Functional Safety for Networked Cyber-Physical Systems

    Get PDF
    Functional safety is a significant concern in today's networked cyber-physical systems such as connected machines, autonomous vehicles, and intelligent environments. Simulation is a well-known methodology for the assessment of functional safety. Simulation models of networked cyber-physical systems are very heterogeneous relying on digital hardware, analog hardware, and network domains. Current functional safety assessment is mainly focused on digital hardware failures while minor attention is devoted to analog hardware and not at all to the interconnecting network. In this work we believe that in networked cyber-physical systems, the dependability must be verified not only for the nodes in isolation but also by taking into account their interaction through the communication channel. For this reason, this work proposes a holistic methodology for simulation-based safety assessment in which safety mechanisms are tested in a simulation environment reproducing the high-level behavior of digital hardware, analog hardware, and network communication. The methodology relies on three main automatic processes: 1) abstraction of analog models to transform them into system-level descriptions, 2) synthesis of network infrastructures to combine multiple cyber-physical systems, and 3) multi-domain fault injection in digital, analog, and network. Ultimately, the flow produces a homogeneous optimized description written in C++ for fast and reliable simulation which can have many applications. The focus of this thesis is performing extensive fault simulation and evaluating different functional safety metrics, \eg, fault and diagnostic coverage of all the safety mechanisms

    Standart-konformes Snapshotting für SystemC Virtuelle Plattformen

    Get PDF
    The steady increase in complexity of high-end embedded systems goes along with an increasingly complex design process. We are currently still in a transition phase from Hardware-Description Language (HDL) based design towards virtual-platform-based design of embedded systems. As design complexity rises faster than developer productivity a gap forms. Restoring productivity while at the same time managing increased design complexity can also be achieved through focussing on the development of new tools and design methodologies. In most application areas, high-level modelling languages such as SystemC are used in early design phases. In modern software development Continuous Integration (CI) is used to automatically test if a submitted piece of code breaks functionality. Application of the CI concept to embedded system design and testing requires fast build and test execution times from the virtual platform framework. For this use case the ability to save a specific state of a virtual platform becomes necessary. The saving and restoring of specific states of a simulation requires the ability to serialize all data structures within the simulation models. Improving the frameworks and establishing better methods will only help to narrow the design gap, if these changes are introduced with the needs of the engineers and developers in mind. Ultimately, it is their productivity that shall be improved. The ability to save the state of a virtual platform enables developers to run longer test campaigns that can even contain randomized test stimuli. If the saved states are modifiable the developers can inject faulty states into the simulation models. This work contributes an extension to the SoCRocket virtual platform framework to enable snapshotting. The snapshotting extension can be considered a reference implementation as the utilization of current SystemC/TLM standards makes it compatible to other frameworkds. Furthermore, integrating the UVM SystemC library into the framework enables test driven development and fast validation of SystemC/TLM models using snapshots. These extensions narrow the design gap by supporting designers, testers and developers to work more efficiently.Die stetige Steigerung der Komplexität eingebetteter Systeme geht einher mit einer ebenso steigenden Komplexität des Entwurfsprozesses. Wir befinden uns momentan in der Übergangsphase vom Entwurf von eingebetteten Systemen basierend auf Hardware-Beschreibungssprachen hin zum Entwurf ebendieser basierend auf virtuellen Plattformen. Da die Entwurfskomplexität rasanter steigt als die Produktivität der Entwickler, entsteht eine Kluft. Die Produktivität wiederherzustellen und gleichzeitig die gesteigerte Entwurfskomplexität zu bewältigen, kann auch erreicht werden, indem der Fokus auf die Entwicklung neuer Werkzeuge und Entwurfsmethoden gelegt wird. In den meisten Anwendungsgebieten werden Modellierungssprachen auf hoher Ebene, wie zum Beispiel SystemC, in den frühen Entwurfsphasen benutzt. In der modernen Software-Entwicklung wird Continuous Integration (CI) benutzt um automatisiert zu überprüfen, ob eine eingespielte Änderung am Quelltext bestehende Funktionalitäten beeinträchtigt. Die Anwendung des CI-Konzepts auf den Entwurf und das Testen von eingebetteten Systemen fordert schnelle Bau- und Test-Ausführungszeiten von dem genutzten Framework für virtuelle Plattformen. Für diesen Anwendungsfall wird auch die Fähigkeit, einen bestimmten Zustand der virtuellen Plattform zu speichern, erforderlich. Das Speichern und Wiederherstellen der Zustände einer Simulation erfordert die Serialisierung aller Datenstrukturen, die sich in den Simulationsmodellen befinden. Das Verbessern von Frameworks und Etablieren besserer Methodiken hilft nur die Entwurfs-Kluft zu verringern, wenn diese Änderungen mit Berücksichtigung der Bedürfnisse der Entwickler und Ingenieure eingeführt werden. Letztendlich ist es ihre Produktivität, die gesteigert werden soll. Die Fähigkeit den Zustand einer virtuellen Plattform zu speichern, ermöglicht es den Entwicklern, längere Testkampagnen laufen zu lassen, die auch zufällig erzeugte Teststimuli beinhalten können oder, falls die gespeicherten Zustände modifizierbar sind, fehlerbehaftete Zustände in die Simulationsmodelle zu injizieren. Mein mit dieser Arbeit geleisteter Beitrag beinhaltet die Erweiterung des SoCRocket Frameworks um Checkpointing Funktionalität im Sinne einer Referenzimplementierung. Weiterhin ermöglicht die Integration der UVM SystemC Bibliothek in das Framework die Umsetzung der testgetriebenen Entwicklung und schnelle Validierung von SystemC/TLM Modellen mit Hilfe von Snapshots

    UML-Based co-design framework for body sensor network applications

    Get PDF
    Ph.DDOCTOR OF PHILOSOPH

    Principes et réalisation d'une interface de synchronisation interopérable entre modèles de calcul SystemC AMS pour le prototypage virtuel optimisé de systèmes multi-disciplines

    Get PDF
    The design of embedded systems is currently an increasingly complex problem. These systems tend to become heterogeneous in the sense that they require the integration of components described by means of different physical/engineering disciplines, for example, electrical, optical, thermal, mechanical, chemical, or biological. Besides, these disciplines can be described under different time domains, for example, Discrete Event (DE), Discrete Time (DT), or Continuous Time (CT). To address this problem, designers require modeling and simulation tools to describe the system’s components under different time domains and synchronize them in the same simulation environment. We explore the possibilities of modeling, simulating and synchronizing multi-disciplinary systems in the same environment, using as reference the SystemC Analog/Mixed-Signal (AMS) simulation standard. We analyze the method introduced in SystemC AMS for synchronizing the DE and DT domains, and we identify its drawbacks. Besides, we introduce a new formalization of the synchronization problem, which is used to detect issues in a model before simulation. We propose a simulator prototype called SystemC Multi-Disciplinary Virtual Prototyping (MDVP), which is implemented as an extension of SystemC. It allows the modeling, and the generic hierarchical elaboration and simulation of multi-disciplinary systems, by means of different Models of Computation (MoCs). To build the MDVP simulator, we introduce a synchronization principle to handle interactions between MoCs. In addition, we introduce a methodology to add, in the simulator prototype, MoCs described under different time domains. We apply this methodology to add a Timed Data Flow MoC in SystemC MDVP. This MoC implements the DT semantics introduced by the SystemC AMS standard, and is based on the synchronization principle between the DE and DT domains. Using the TDF MoC, we implement and simulate a case study of a vibration sensor model and its digital front end circuit. This case study includes a feedback loop and several interactions between the DE and DT domains.La conception de systèmes embarqués devient de plus en plus complexe. Ces systèmes sont hétérogènes dans le sens où ils nécessitent l’intégration de composants décrits au moyen de plusieurs disciplines scientifiques, par exemple, l’électricité, l’optique, la thermique, la mécanique, la chimie ou la biologie. De plus, ces disciplines peuvent être représentées dans des domaines temporels différents, par exemple, le domaine des événements discrets, celui du temps discret, ou celui du temps continu. Face à cette situation, les concepteurs ont besoin d’outils de modélisation et de simulation efficaces pour décrire le comportement d’un système hétérogène dans un environnement de simulation unique. Nous examinons la possibilité de modéliser, de simuler et de synchroniser les systèmes multi-disciplines dans le même environnement, en utilisant comme référence la norme de simulation « SystemC Analog/Mixed-Signal (AMS) ». Nous analysons la méthode introduite par SystemC AMS pour synchroniser le domaine des événements discrets avec celui du temps discret, et nous identifions ses inconvénients. Nous proposons une formalisation du problème de synchronisation qui permet de détecter les problèmes existants dans un modèle avant la simulation. Nous proposons un prototype de simulateur appelé « SystemC Multi-Disciplinary Virtual Prototyping (MDVP) », qui est implémenté comme une extension de SystemC. Il permet la modélisation, l’élaboration, et la simulation hiérarchique de systèmes multi-disciplines au moyen de plusieurs modèles de calcul. Pour concevoir le simulateur MDVP, nous introduisons un nouveau principe de synchronisation entre plusieurs modèles de calcul. En outre, nous introduisons une méthodologie pour ajouter, dans le prototype de simulateur, des modèles de calcul représentés par plusieurs domaines temporels. Nous appliquons cette méthodologie pour ajouter un modèle de calcul « Timed Data Flow (TDF) » dans SystemC MDVP. Ce modèle de calcul repose sur la sémantique du temps discret introduite par SystemC AMS, et sur la formalisation du principe de synchronisation entre le domaine des événements discrets et celui du temps discret. Nous mettons en œuvre le modèle de calcul TDF, dans le cas d’un capteur de vibrations et son circuit numérique. Ce modèle comporte une boucle d’asservissement et plusieurs interactions entre le domaine des événements discrets et celui du temps discret
    corecore