M-of-N Code Decomposition for Indicating Combinational Logic

Self-timed circuits present an attractive solution to the problem of process variation. However, implementing self-timed combinational logic is complex and expensive. In particular, mapping large function blocks into cell-libraries is difficult as decomposing gates introduces new signals which may violate indication. This paper presents a novel method for implementing any m-of-n encoded function block using "bounded gates", where any gate may be decomposed without violating indication. This is achieved by successively decomposing the input encoding into smaller m-of-n codes. The method described in the paper uses algebraic extraction techniques to efficiently determine and quantify potential re-encodings. The results of the synthesis procedure are demonstrated on a range of combinational function blocks.

[1]  Alex Kondratyev,et al.  Design of asynchronous circuits by synchronous CAD tools , 2002, DAC '02.

[2]  Alberto Sangiovanni-Vincentelli,et al.  Logic synthesis for vlsi design , 1989 .

[3]  Steven M. Nowick,et al.  Optimization of Robust Asynchronous Circuits by Local Input Completeness Relaxation , 2007, 2007 Asia and South Pacific Design Automation Conference.

[5]  Seth Copen Goldstein,et al.  Area Optimizations for Dual-Rail Circuits Using Relative-Timing Analysis , 2007, 13th IEEE International Symposium on Asynchronous Circuits and Systems (ASYNC'07).

[6]  Luciano Lavagno,et al.  Coping with the variability of combinational logic delays , 2004, IEEE International Conference on Computer Design: VLSI in Computers and Processors, 2004. ICCD 2004. Proceedings..

[7]  David S. Kung Hazard-non-increasing gate-level optimization algorithms , 1992, 1992 IEEE/ACM International Conference on Computer-Aided Design.

[8]  Karl Fant Logically Determined Design: Clockless System Design with NULL Convention Logic , 2005 .

[9]  Steven M. Burns,et al.  General conditions for the decomposition of state holding elements , 1996, Proceedings Second International Symposium on Advanced Research in Asynchronous Circuits and Systems.

[10]  Steven M. Nowick,et al.  Block-Level Relaxation for Timing-Robust Asynchronous Circuits Based on Eager Evaluation , 2008, 2008 14th IEEE International Symposium on Asynchronous Circuits and Systems.

[11]  Luciano Lavagno,et al.  Logic decomposition of speed-independent circuits , 1999 .

[12]  Alexandre Yakovlev,et al.  Self-Timed Control of Concurrent Processes: The Design of Aperiodic Logical Circuits in Computers and Discrete Systems , 1990 .

[13]  Eby G. Friedman,et al.  System Timing , 2000, The VLSI Handbook.

[14]  Doug A. Edwards,et al.  Prime Indicants: A Synthesis Method for Indicating Combinational Logic Blocks , 2009, 2009 15th IEEE Symposium on Asynchronous Circuits and Systems.

[15]  Steven M. Nowick,et al.  On the existence of hazard-free multi-level logic , 2003, Ninth International Symposium on Asynchronous Circuits and Systems, 2003. Proceedings..

[16]  Alexandre Yakovlev,et al.  Basic Gate Implementation of Speed-Independendent Circuits , 1994, 31st Design Automation Conference.

[17]  D. L. Dill,et al.  Exact two-level minimization of hazard-free logic with multiple-input changes , 1992, 1992 IEEE/ACM International Conference on Computer-Aided Design.

[18]  Tom Verhoeff,et al.  Delay-insensitive codes — an overview , 1988, Distributed Computing.

[19]  Jens Sparsø,et al.  Delay-insensitive multi-ring structures , 1993, Integr..

[20]  Alexandre Yakovlev,et al.  Cost-aware synthesis of asynchronous circuits based on partial acknowledgement , 2006, ICCAD.