Efficient Automatic Resolution of Encoding Conflicts Using STG Unfoldings

Synthesis of asynchronous circuits from signal transition graphs (STGs) involves resolution of state encoding conflicts by means of refining the STG specification. In this paper, a fully automatic technique for resolving such conflicts by means of insertion of new signals and concurrency reduction is proposed. It is based on conflict cores, i.e., sets of transitions causing encoding conflicts, which are represented at the level of finite and complete unfolding prefixes, and a SAT solver is used to find where in the STG the transitions of new signals should be inserted and to check the validity of concurrency reductions. The experimental results show significant improvements over the state space based approach in terms of runtime and memory consumption, as well as some improvements in the quality of the resulting circuits.

[1]  Luciano Lavagno,et al.  Petrify: A Tool for Manipulating Concurrent Specifications and Synthesis of Asynchronous Controllers (Special Issue on Asynchronous Circuit and System Design) , 1997 .

[2]  Josep Carmona,et al.  Encoding Large Asynchronous Controllers With ILP Techniques , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[3]  Ingo Wegener,et al.  The complexity of Boolean functions , 1987 .

[4]  Victor Khomenko,et al.  Behaviour-Preserving Transition Insertions in Unfolding Prefixes , 2007, ICATPN.

[5]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[6]  裕幸 飯田,et al.  International Technology Roadmap for Semiconductors 2003の要求清浄度について - シリコンウエハ表面と雰囲気環境に要求される清浄度, 分析方法の現状について - , 2004 .

[7]  N. S. Barnett,et al.  Private communication , 1969 .

[8]  Walter Vogler,et al.  An Improvement of McMillan's Unfolding Algorithm , 2002, Formal Methods Syst. Des..

[9]  Chantal Ykman-Couvreur,et al.  A general state graph transformation framework for asynchronous synthesis , 1994, EURO-DAC '94.

[10]  Walter Vogler,et al.  Decomposition in Asynchronous Circuit Design , 2002, Concurrency and Hardware Design.

[11]  Josep Carmona,et al.  State encoding of large asynchronous controllers , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[12]  Alexandre Yakovlev,et al.  Signal Graphs: From Self-Timed to Timed Ones , 1985, PNPM.

[13]  Maciej Koutny,et al.  Logic Synthesis for Asynchronous Circuits Based on STG Unfoldings and Incremental SAT , 2006, Fundam. Informaticae.

[14]  Josep Carmona,et al.  Synthesis of asynchronous controllers using integer linear programming , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[15]  Doug A. Edwards,et al.  Balsa: An Asynchronous Hardware Synthesis Language , 2002, Comput. J..

[16]  Maciej Koutny,et al.  Logic synthesis for asynchronous circuits based on Petri net unfoldings and incremental SAT , 2004, Proceedings. Fourth International Conference on Application of Concurrency to System Design, 2004. ACSD 2004..

[17]  Maciej Koutny,et al.  Detecting state coding conflicts in STG unfoldings using SAT , 2003, Third International Conference on Application of Concurrency to System Design, 2003. Proceedings..

[18]  Hugo De Man,et al.  Optimized synthesis of asynchronous control circuits from graph-theoretic specifications , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[19]  Wolfgang Reisig,et al.  Lectures on Petri Nets I: Basic Models , 1996, Lecture Notes in Computer Science.

[20]  Tam-Anh Chu,et al.  Synthesis of self-timed VLSI circuits from graph-theoretic specifications , 1987 .

[21]  Kenneth L. McMillan,et al.  Using Unfoldings to Avoid the State Explosion Problem in the Verification of Asynchronous Circuits , 1992, CAV.

[22]  Kees van Berkel,et al.  Handshake Circuits: An Asynchronous Architecture for VLSI Programming , 1993 .

[23]  Javier Esparza,et al.  On the Complexity of Consistency and Complete State Coding for Signal Transition Graphs , 2006, Sixth International Conference on Application of Concurrency to System Design (ACSD'06).

[24]  Rolf Niedermeier,et al.  Data Reduction, Exact, and Heuristic Algorithms for Clique Cover , 2006, ALENEX.

[25]  Niklas Sörensson,et al.  Translating Pseudo-Boolean Constraints into SAT , 2006, J. Satisf. Boolean Model. Comput..

[26]  Manuel Silva Suárez,et al.  Linear Algebraic and Linear Programming Techniques for the Analysis of Place or Transition Net Systems , 1996, Petri Nets.

[27]  Alexei Semenov Verification and synthesis of asynchronous control circuits using petri net unfoldings , 1997 .

[28]  Josep Carmona,et al.  A structural encoding technique for the synthesis of asynchronous circuits , 2001, Proceedings Second International Conference on Application of Concurrency to System Design.

[29]  Walter Vogler,et al.  Improved Decomposition of Signal Transition Graphs , 2007, Fundam. Informaticae.

[30]  Alex Yakovlev,et al.  Visualisation and resolution of encoding conflicts in asynchronous circuit design , 2003 .

[31]  John E. Savage,et al.  An Algorithm for the Computation of Linear Forms , 1974, SIAM J. Comput..

[32]  Alexandre Yakovlev,et al.  Resolution of Encoding Conflicts by Signal Insertion and Concurrency Reduction Based on STG Unfoldings , 2006, Sixth International Conference on Application of Concurrency to System Design (ACSD'06).

[33]  Luciano Lavagno,et al.  Logic Synthesis for Asynchronous Controllers and Interfaces , 2002 .

[34]  Victor Khomenko,et al.  Model checking based on prefixes of petri net unfoldings , 2003 .

[35]  Mark Schäfer,et al.  Combining Decomposition and Unfolding for STG Synthesis , 2007, ICATPN.

[36]  Alexandre Yakovlev,et al.  Visualization and resolution of coding conflicts in asynchronous circuit design , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[37]  Josep Carmona,et al.  ILP Models for the Synthesis of Asynchronous Control Circuits , 2003, ICCAD 2003.