Sequential synthesis by language equation solving

Consider the problem of designing a component that combined with a known part of a system, called the context, conforms to a given overall specification. This question arises in several applications ranging from logic synthesis to the design of discrete controllers. We cast the problem as solving abstract equations over languages and study the most general solutions under the synchronous and parallel composition operators. We also specialize such language equations to languages associated with important classes of automata used for modeling systems, e.g., regular languages as counterparts of finite automata, FSM languages as counterparts of FSMs. Thus we can operate algorithmically on those languages through their automata and study how to solve effectively their language equations. We investigate the maximal subsets of solutions closed with respect to various language properties. In particular, we investigate classes of the largest compositional solutions (defined by properties exhibited by the composition of the solution and of the context). We provide the first algorithm to compute the largest compositionally progressive solution of synchronous equations. This approach unifies in a seamless frame previously reported techniques. As an application we solve the classical problem of synthesizing a converter between a mismatched pair of protocols, using their specifications, as well as those of the channel and of the required service.

[1]  Eduard Cerny Controllability and Fault Observability in Modular Combinational Circuits , 1978, IEEE Transactions on Computers.

[2]  Hasan Ural,et al.  Submodule construction from concurrent system specifications , 1999, Inf. Softw. Technol..

[3]  James W. Thatcher,et al.  Generalized finite automata theory with an application to a decision problem of second-order logic , 1968, Mathematical systems theory.

[4]  Robert K. Brayton,et al.  Permissible Observability Relations in FSM Networks , 1994, 31st Design Automation Conference.

[5]  S. Marcus,et al.  On controllability and normality of discrete event dynamical systems , 1991 .

[6]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[7]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[8]  Robert K. Brayton,et al.  Supervisory Control of Finite State Machines , 1995, CAV.

[9]  Tiziano Villa,et al.  Compositionally Progressive Solutions of Synchronous Language Equations , 2003 .

[10]  Nina Yevtushenko,et al.  Nondeterministic State Machines in Protocol Conformance Testing , 1993, Protocol Test Systems.

[11]  Nancy A. Lynch,et al.  An introduction to input/output automata , 1989 .

[12]  Submodule construction for systems of I / O automata * , 1999 .

[13]  André Arnold,et al.  Finite transition systems - semantics of communicating systems , 1994, Prentice Hall international series in computer science.

[14]  Robert K. Brayton,et al.  Engineering change in a non-deterministic FSM setting , 1996, 33rd Design Automation Conference Proceedings, 1996.

[15]  Radu Negulescu,et al.  Process Spaces , 2000, CONCUR.

[16]  Nils Klarlund,et al.  Mona & Fido: The Logic-Automaton Connection in Practice , 1997, CSL.

[17]  M.D. Di Benedetto,et al.  Model matching for finite state machines , 1994, Proceedings of 1994 33rd IEEE Conference on Decision and Control.

[18]  Christos G. Cassandras,et al.  Introduction to Discrete Event Systems , 1999, The Kluwer International Series on Discrete Event Dynamic Systems.

[19]  Tiziano Villa,et al.  Solution of parallel language equations for logic synthesis , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[20]  M. W. Shields An Introduction to Automata Theory , 1988 .

[21]  Gregor von Bochmann,et al.  On the Construction of Submodule Specifications and Communication Protocols , 1983, TOPL.

[22]  Philip Lewis,et al.  Factorisation of finite state machines under strong and observational equivalences , 2005, Formal Aspects of Computing.

[23]  Ariel Orda,et al.  Modelling Asynchrony with a Synchronous Model , 1995, CAV.

[24]  Robert K. Brayton,et al.  Input don't care sequences in FSM networks , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[25]  Tiziano Villa,et al.  Optimization of synchronous circuits , 2001 .

[26]  Nina Yevtushenko,et al.  Solving Asynchronous Equations , 1998, FORTE.

[27]  Tiziano Villa,et al.  Synthesis of FSMs: functional optimization , 1997 .

[28]  Monty Newborn,et al.  The Simplification of Sequential Machines with Input Restrictions , 1972, IEEE Transactions on Computers.

[29]  Robert K. Brayton,et al.  The maximum set of permissible behaviors for FSM networks , 1993, ICCAD.

[30]  Eduard Cerny Verification of I/O trace set inclusion for a class of non-deterministic finite state machines , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[31]  Robert K. Brayton,et al.  Sequential synthesis using S1S , 1995, ICCAD.

[32]  Eduard Cerny,et al.  An Approach to Unified Methodology of Combinational Switching Circuits , 1977, IEEE Transactions on Computers.

[33]  W. M. Wonham,et al.  The control of discrete event systems , 1989 .

[34]  A. Overkamp Supervisory control using failure semantics and partial specifications , 1997 .

[35]  Willem C. Mallon,et al.  Analysis and applications of the XDI model , 1999, Proceedings. Fifth International Symposium on Advanced Research in Asynchronous Circuits and Systems.

[36]  Dirk Siefkes,et al.  The collected works of J. Richard Büchi , 1989 .

[37]  Alexandre Petrenko,et al.  Design of divergence-free protocol converters using supervisory control techniques , 2000, ICECS 2000. 7th IEEE International Conference on Electronics, Circuits and Systems (Cat. No.00EX445).

[38]  Ratnesh Kumar,et al.  A Discrete Event Systems Approach for Protocol Conversion , 1997, Discret. Event Dyn. Syst..