Automatic Production of Globally Asynchronous Locally Synchronous Systems

Globally Asynchronous Locally Synchronous (GALS) systems are popular both in software and hardware for specifying and producing embedded systems as well as electronic circuits. In this paper, we propose a method for obtaining automatically a GALS system from a centralised synchronous circuit. We focus on an algorithm that takes as input a program whose control structure is a synchronous sequential circuit and some distribution specifications given by the user, and gives as output the distributed program matching the distribution specifications. Since the obtained programs communicate with each other through asynchronous FIFO queues, the resulting distributed system is indeed a GALS system. We also sketch a correctness proof for our distribution algorithm, and we present how our method can be used to achieve hardware/ software codesign.

[1]  Daniel Marcos Chapiro,et al.  Globally-asynchronous locally-synchronous systems , 1985 .

[2]  M. Clerbout,et al.  Semi-commutations , 1987, Inf. Comput..

[3]  Anne Dinning,et al.  A survey of synchronization methods for parallel computers , 1989, Computer.

[4]  Gérard Berry,et al.  Esterel on hardware , 1992, Philosophical Transactions of the Royal Society of London. Series A: Physical and Engineering Sciences.

[5]  Thomas R. Shiple,et al.  Constructive analysis of cyclic circuits , 1996, Proceedings ED&TC European Design and Test Conference.

[6]  Benoît Caillaud,et al.  Distributing Automata for Asynchronous Networks of Processors , 1997 .

[7]  Luciano Lavagno,et al.  Hardware-Software Co-Design of Embedded Systems , 1997 .

[8]  Vivek Sarkar,et al.  Compilation techniques for parallel systems , 1999, Parallel Comput..

[9]  Paul Caspi,et al.  Automatic Distribution of Reactive Systems for Asynchronous Networks of Processors , 1999, IEEE Trans. Software Eng..

[10]  Johnny Öberg,et al.  Lowering power consumption in clock by using globally asynchronous locally synchronous design style , 1999, DAC '99.

[11]  Gérard Berry,et al.  The foundations of Esterel , 2000, Proof, Language, and Interaction.

[12]  Ellen Sentovich,et al.  An Implementation of Constructive Synchronous Programs in POLIS , 2000, Formal Methods Syst. Des..

[13]  Wolfgang Fichtner,et al.  Practical design of globally-asynchronous locally-synchronous systems , 2000, Proceedings Sixth International Symposium on Advanced Research in Asynchronous Circuits and Systems (ASYNC 2000) (Cat. No. PR00586).