{"title":"Simulation Acceleration of Image Filtering on CMOS Vision Chips Using Many-Core Processors","authors":"G. Doménech-Asensi, T. Kazmierski","doi":"10.1109/FDL.2019.8876903","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876903","url":null,"abstract":"This paper describes an efficient numerical solution to speed up transient simulations of analog circuits on a many-core computer. The technique is based on an explicit integration method, parallelised on a multiprocessor architecture. Although the integration step is smaller than the required one by traditional simulation methods based on Newton–Raphson iterations, explicit methods do not require to compute complex calculations such us matrix factorizations, which lead to long CPU simulation times. The proposed technique has been implemented on a NVIDIA GPU and has been demonstrated simulating Gaussian filtering operations performed by a CMOS vision chip. These type of devices, which are used to perform computation on the edge, include built-in image processing functions, turning them into very complex and time consuming circuits during their design. The proposed method is faster that Ngspice for different image sizes, and for 128 x 128 pixels image size it achieves a speed up of two orders of magnitude.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"636-637 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131762441","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Syntax-Guided Enumeration of Temporal Properties","authors":"Gianluca Martino, G. Fey","doi":"10.1109/FDL.2019.8876892","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876892","url":null,"abstract":"We propose Syntax-Guided Property Enumeration, a method for automatically obtaining a set of short and readable temporal logic properties from sequential logic networks. Each property is a temporal logic formula which describes a relation between the primary inputs, the primary outputs, and the latches of the network over time. The approach is applicable to any temporal logic for which decision procedures for model-checking and satisfiability are available. In a case study, we analyze a generic USB controller and compare the results to the well-known previous approach GoldMine. We demonstrate how the flexibility of this approach helps the designer obtain different perspectives of the design under analysis. Useful applications are debugging, reverse engineering, security analysis, or specification mining.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125315794","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Security Driven Design Space Exploration for Embedded Systems","authors":"Lukas Gressl, C. Steger, U. Neffe","doi":"10.1109/FDL.2019.8876944","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876944","url":null,"abstract":"With the advent of the Internet of Things (IoT) and Cyber Physical Systems (CPS), embedded devices have been gaining importance in our daily lives, as well as industrial processes. Independent of their usage, be it within an IoT system or a CPS, embedded devices are always an attractive target for security attacks, largely due to their continuous network availability and the importance of the data they handle. Thus, the design of such systems requires a thorough consideration of the various security constraints they are liable to. Introducing these security constraints, next to other requirements (e.g. power consumption, performance, etc.), increases the number of design choices that must be taken. As the various constraints are often conflicting each other, designers are faced with the complex task of balancing them. To support a system designer in this job, Design Space Exploration (DSE) tools can be facilitated. However, available DSE tools only offer a limited way of considering security constraints during the design process. In this paper we introduce a novel DSE framework, which allows the consideration of security constraints, in the form of attack scenarios, and attack mitigations, in the form of security tasks. Based on the descriptions of the system’s functionality and architecture, possible attacks, and known mitigation techniques, the framework finds the optimal design for an secure IoT device or CPS. Our framework’s functionality and its benefits are shown based on the design of a secure sensor system.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"104 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124669152","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
S. Caligola, Tommaso Carlucci, F. Fummi, C. Laudanna, G. Constantin, N. Bombieri, R. Giugno
{"title":"Efficient Simulation and Parametrization of Stochastic Petri Nets in SystemC: A Case study from Systems Biology","authors":"S. Caligola, Tommaso Carlucci, F. Fummi, C. Laudanna, G. Constantin, N. Bombieri, R. Giugno","doi":"10.1109/FDL.2019.8876940","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876940","url":null,"abstract":"Stochastic Petri nets (SPN) are a form of Petri net where the transitions fire after a probabilistic and randomly determined delay. They are adopted in a wide range of applications thanks to their capability of incorporating randomness in the models and taking into account possible fluctuations and environmental noise. In Systems Biology, they are becoming a reference formalism to model metabolic networks, in which the noise due to molecule interactions in the environment plays a crucial role. Some frameworks have been proposed to implement and dynamically simulate SPN. Nevertheless, they do not allow for automatic model parametrization, which is a crucial task to identify the network configurations that lead the model to satisfy temporal properties of the model. This paper presents a framework that synthesizes the SPN models into SystemC code. The framework allows the user to formally define the network properties to be observed and to automatically extrapolate, through Assertion-based Verification (ABV), the parameter configurations that lead the network to satisfy such properties. We applied the framework to implement and simulate a complex biological network, i.e., the purine metabolism, with the aim of reproducing the metabolomics data obtained in-vitro from naive lymphocytes and autoreactive T cells implicated in the induction of experimental autoimmune disorders.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"76 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132558249","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"WIP on a Coordination Language to Automate the Generation of Co-Simulations","authors":"G. Liboni, Julien Deantoni","doi":"10.1109/FDL.2019.8876914","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876914","url":null,"abstract":"System Engineering involves several disciplines to design, develop and verify complex systems, using different modeling languages with different semantics. A simulation of the global behavior from the heterogeneous executable models is used to verify and validate the emerging behavior of the system. Co-simulation is a way to realize this simulation but it requires coordinating the different heterogeneous artifacts. This coordination is not a trivial task due to the increasing complexity and heterogeneity. In this paper, we propose a language that enables the specification of a coordination between models and the automatic generation of a dedicated coordinator (Master Algorithm) concerning the coordination and the behavioral semantics of the executable models.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128161616","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A Multi-Rate Precision Timed Programming Language for Multi-Cores","authors":"A. Girault, N. Hili, E. Jenn, Eugene Yip","doi":"10.1109/FDL.2019.8876950","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876950","url":null,"abstract":"PREcision Timed (PRET) is a conceptual solution proposed in 2007 to address the ever increasing unpredictability of embedded processors, which results from features such as multi-level caches or deep pipelines. For many real-time systems, it is mandatory to compute a strict bound on the program’s execution time. Yet, in general, computing a tight bound is extremely difficult. The rationale of PRET is to simplify both the programming language and the execution platform to allow precise execution times to be easily computed. ForeC is a PRET programming language. It is a multithreaded variant of C with a synchronous execution semantics. ForeC programs are designed to be executed on multi-core processors, built around either PRET cores or classical cores. A drawback of ForeC is that programs are single rate, i.e., all reactions must be implemented to run at the fastest rate imposed by the environment. This represents a high overhead, both at design time and at run-time. In this paper, we propose a multi-rate version of ForeC to improve its practicality and usability for industrial acceptance. We detail the syntax and semantics of the ForeC language in the context of multi-rate applications and present an implementation on a PRET multi-core architecture. Both the languages and its implementation are illustrated over a robotic application.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133573121","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Alexander Schulz-Rosengarten, Steven Smyth, Michael Mendler
{"title":"Towards Object-Oriented Modeling in SCCharts","authors":"Alexander Schulz-Rosengarten, Steven Smyth, Michael Mendler","doi":"10.1109/FDL.2019.8876901","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876901","url":null,"abstract":"Object orientation is a powerful and widely used paradigm for abstraction and structuring in programming. Many languages are designed with this principle or support different degrees of object orientation. In synchronous languages, originally developed to design embedded reactive systems, there are only few object-oriented influences. However, especially in combination with a statechart notation, the modeling process can be improved by facilitating object orientation as we argue here. At the same time the graphical representation can be used to illustrate the object-oriented design of a system. Synchronous statechart dialects, such as the SCCharts language, provide deterministic concurrency for specifying safety-critical systems. Using SCCharts as an example, we illustrate how an object-oriented modeling approach that supports inheritance, can be introduced. We further present how external, i. e. host language, objects can be included in the SCCharts language. Specifically, we discuss how the recently developed concepts of scheduling directives and scheduling policies can be used to ensure the determinism of objects while retaining encapsulation.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125966809","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Chatbot-based assertion generation from natural language specifications","authors":"Oliver Keszöcze, I. Harris","doi":"10.1109/FDL.2019.8876925","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876925","url":null,"abstract":"We present an approach to simplify the task of extracting assertions from specifications given in natural language. Our goal is to accept and understand a broad range of linguistic variation, allowing the author of the natural language specifications to express herself freely. To enable this, we leverage the Dialogflow framework from Google. Dialogflow is usually used to build chatbots that understand and respond to conversational statements. We have trained a Dialogflow model to recognize a range of different natural language expressions of properties, and to identify key information inside the expression. The model responses to each statement with a generated SystemVerilog assertion whose semantic meaning is equivalent to that of the English statement.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"108 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115858184","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
George Ungureanu, Timmy Sundström, A. Ahlander, I. Sander, I. Söderquist
{"title":"Formal Design, Co-Simulation and Validation of a Radar Signal Processing System","authors":"George Ungureanu, Timmy Sundström, A. Ahlander, I. Sander, I. Söderquist","doi":"10.1109/FDL.2019.8876905","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876905","url":null,"abstract":"With the ever increasing complexity in safety-critical and performance-demanding application domains such as automotive and avionics, the costs of designing, producing and especially testing systems does not scale well for the next generation of applications. One example is the active electronically scanned array (AESA) antenna signal processing chain, which is currently out-of-reach from consumer products but rather part of a few exclusive hi-tech appliances. To cope with the associated complexity of such systems, we propose a design flow starting from a high-level formal modeling language which captures and exposes important design properties to enable their systematic exploitation for the purpose of simulation, analysis and synthesis towards cost-efficient implementations. We demonstrate the capabilities of this approach by providing a compact yet expressive description of the AESA signal processing chain, generate automatic test-cases to verify the conformity of model with design specifications, synthesize a part of it to VHDL and co-simulate the generated artifact to validate its correctness.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114632459","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Friederike Bruns, Irune Yarza, Philipp Ittershagen, Kim Grüttner
{"title":"Time Measurement and Control Blocks for Bare-Metal C++ Applications","authors":"Friederike Bruns, Irune Yarza, Philipp Ittershagen, Kim Grüttner","doi":"10.1109/FDL.2019.8876898","DOIUrl":"https://doi.org/10.1109/FDL.2019.8876898","url":null,"abstract":"Precisely timed execution of resource constrained bare-metal applications is difficult, because the embedded software developer usually has to implement and check the timeliness of the executed application through manual interaction with timers or counters. In the scope of this work, we propose a concept for time annotation and control blocks in C++. Our proposed blocks can be used to measure and profile software block execution time. Furthermore, it can be used to control and enforce the software time behavior at run-time. We have implemented our concept in a C++ library and tested it on an ARM Cortex A9 bare-metal platform. The usage of our library has been evaluated on a critical flight-control software for a multi-rotor system. The results show that our concept is working, while still having some room for systematic accuracy testing and optimization.","PeriodicalId":162747,"journal":{"name":"2019 Forum for Specification and Design Languages (FDL)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130286384","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}