This paper proposes a state encoding method for asynchronous circuits based on the theory of regions. A region in a Transition System is a set of states that "behave uniformly" with respect to a given transition (value change of an observable signal), and is analogue to a place in a Petri net. Regions are tightly connected with a set of properties that must be preserved across the state encoding process, namely: (1) trace equivalence between the original and the encoded specification, and (2) implementability as a speed-independent circuit. We build on a theoretical body of work that has shown the significance of regions for such property-preserving transformations, and describe a set of algorithms aimed at efficiently solving the encoding problem. The algorithms have been implemented in a software tool called petrify. Unlike many existing tools, petrify represents the encoded specification as an STG, and thus allows the designer to be more closely involved in the synthesis process. The efficiency of the method is demonstrated on a number of "difficult" examples.
[1]
Alexandre Yakovlev,et al.
Signal Graphs: From Self-Timed to Timed Ones
,
1985,
PNPM.
[2]
G. Rozenberg,et al.
Elementary transition systems
,
1990
.
[3]
Tam-Anh Chu.
On the models for designing VLSI asynchronous digital systems
,
1986,
Integr..
[4]
Alexandre Yakovlev,et al.
Basic Gate Implementation of Speed-Independendent Circuits
,
1994,
31st Design Automation Conference.
[5]
Synthesizing Petri nets from state-based models
,
1995,
ICCAD.
[6]
Chantal Ykman-Couvreur,et al.
Optimised state assignment for asynchronous circuit synthesis
,
1995,
Proceedings Second Working Conference on Asynchronous Design Methodologies.
[7]
Luciano Lavagno,et al.
A region-based theory for state assignment in asynchronous circuits.
,
1997
.