Lecture Notes in Computer Science Edited by G. Goos and J. Hartmanis 284 A. KSndig R.E. BShrer J. D&hler (Eds.) Embedded Systems New Approaches to Their Formal Description and Design An Advanced Course ZL~rich, Switzerland, March 5-7, 1986 Springer-Verlag Berlin Heidelberg NewYork London Paris Tokyo
Editorial Board D. Barstow W. Brauer R Brinch Hansen D. Gries D. Luckham C. Moler A. Pnueli G. SeegmCiller J. Stoer N. Wirth Editors A. KiJndig R. E, B~ihrer J. D&hler Institut fijr Elektronik ETH-Zi~rich, ETH-Zentrum CH-8092 ZLirich, Switzerland CR Subject Classification (1987):D. 1-3, C.2.2, E.4, B.7.2 ISBN 3-540-18581-X Springer-Verlag Berlin Heidelberg New York ISBN 0-387-18581-X Springer-Verlag New York Berlin Heidelberg This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting, reproduction on microfilms or in other ways, and storage in data banks. Duplication of this publication or parts thereof is only permitted under the provisions of the German Copyright Law of September 9, 1965, in }ts version of June 24, 1985, and a copyright fee must always be paid. Violations falt under the prosecution act of the German Copyright Law. Springer-Verlag Berlin Heidelberg 1987 Printed in Germany Printing and binding: Druckhaus Beltz, Hemsbach/Bergstr. 2145/3140-543910
Preface This book contains the written form of some lectures given in Spring 1986 at ETH ZOrich in the framework of an Advanced Course on New Approaches to the Architecture and the Design of Embedded Systems. It was felt at that time - and it is still felt - that there is a considerable gap between newer research results in the area of system architecture and its description on the one hand, and actual application of these results in the development of real time/process control systems on the other hand. When organizing the Advanced Course, it was clear from the outset that this gap cannot be bridged once and forever in a single event. Nevertheless, we hope that the presentations as well as the many contacts among lecturers and participants helped to stimulate thinking along some new lines. Since the lectures of the architecture part of the course have been published in different form elsewhere, the present Lecture Notes concentrate on the design aspect of embedded systems. It is recognized that development of such systems is still dominated by progress made in the semiconductor field. Integrated circuits of ever increasing complexity allow for the design of even more complex systems, interacting in space and time with environments being themselves of high complexity. The contributions in this book tackle the question of how this complexity may be harnessed on rather different levels. Wolfgang Fichtner presents the state of the art in IC technology and the approaches taken in this field to master design problems at the hardware system design level. Wolfgang Reisig then presents a methodology based on Net Theory, a discipline which emerged in the 70's from Petri Nets. His model of concurrency may well be applied at many different levels, ranging from hardwired logic to the description of the top level functionality as contained in requirements specifications. As it is increasingly fell that a real step forward in understanding, describing and designing complex systems must be based on sound theoretical ground, the four contributions by Raymond Boute and Simon Peyton-Jones form the core part of the text. It is hoped that their compilation of many interesting theoretical concepts may stimulate practitioners in casting these approaches into powerful new tools. Probably the outstanding field where formal description methods have already found their way into widespread applications is the one related to protocol and interface design for communication systems (e.g. in the context of the ISO/OSI model). Harry Rudin gives an overview of the state in this field. The text is rounded up with a contribution by Jochen Ludewig which serves two purposes: It shows that beside formal specification methods, semiformal methods are of considerable importance as weil. Also, an overview of some proven practical methods and the available tools is given.
Iv Conciuding this preface, it is a must t~ thank the numerous people who have contributed to both the organization of the Advanced Course and the compilation of these Lecture Notes. Above all, due credit must be given to the lecturers who were willing to take up the burden a second time, transforming their interesting oral presentations into a publishable format. Albert KOndig, Richard E. BOhrer, Jacques D@hler
Contents A Note on the Meaning of "Embedded Systems" A.T.KOndig, ETH ZOrich / Switzerland... i Design of VLSI Systems W.Fichtner, ETH ZOrich / Switzeriand... 6 Embedded System Description Using Petri Nets W.Reisig, GMD Sankt Augustin / Germany... 18 Elements for the Formal Description of Systems R.T.Boute, University of Nijmegen / The Netherlands..... 63 An Introduction to System Semantics R.T.Boute, University of Nijmegen / The Netherlands..... 91 Functional Formalisms for System Description: Current Research Topics R.T.Boute, University of Nijmegen / The Netherlands... I08 Tools for Protocols Driven by Formal Specifications H.Rudin, IBM Research Laboratory Z~rich /Switzeriand... 127 Functional Programming Languages as a Software Engineering Tool S.L.Peyton 3ones, University College London / England... 153 Practicai Methods and Tools for Specification J.Ludewig, ETH ZOrich / Switzerland... 174