Issue No.11 - November (2010 vol.59)
pp: 1480-1493
Andrey Mokhov , Newcastle University, Newcastle upon Tyne
The paper introduces a new formal model for specification and synthesis of control paths in the context of asynchronous system design. The model, called Conditional Partial Order Graph (CPOG), captures concurrency and choice in a system's behavior in a compact and efficient way. It has advantages over widely used interpreted Petri Nets and Finite State Machines for a class of systems which have many behavioral scenarios defined on the same set of actions, e.g., CPU microcontrollers. The CPOG model has potential applications in the area of microcontrol synthesis and brings new methods for modeling concurrency into the application domain of modern and future processor architectures. The paper gives the formal definition of the CPOG model, formulates and solves the problem of CPOG synthesis, and introduces various optimization techniques. The presented ideas can be applied for CPU control synthesis as well as for synthesis of different kinds of event-coordination circuits often used in data coding and communication in digital systems, as demonstrated with several application examples.
Logic synthesis, concurrency, partial orders, asynchronous circuits, microarchitecture.
Andrey Mokhov, "Conditional Partial Order Graphs: Model, Synthesis, and Application", IEEE Transactions on Computers, vol.59, no. 11, pp. 1480-1493, November 2010, doi:10.1109/TC.2010.58
[1] International Technology Roadmap for Semiconductors (ITRS '07). , 2007.
[2] A. Bardsley and D. Edwards, "The Balsa Asynchronous Circuit Synthesis System," Proc. Forum on Design Languages, 2000.
[3] J. Cortadella, M. Kishinevsky, A. Kondratyev, L. Lavagno, and A. Yakovlev, "Petrify: A Tool for Manipulating Concurrent Specifications and Synthesis of Asynchronous Controllers," IEICE Trans. Information and Systems, vol. E80-D, no. 3, pp. 315-325, 1997.
[4] J. Cortadella, M. Kishinevsky, A. Kondratyev, L. Lavagno, and A. Yakovlev, "Logic Synthesis of Asynchronous Controllers and Interfaces," Advanced Microelectronics, Springer-Verlag, 2002.
[5] A. Lew, Computer Science: A Math. Introduction. Prentice-Hall, 1985.
[6] G. De Micheli, Synthesis and Optimization of Digital Circuits. McGraw-Hill Higher Education, 1994.
[7] A. Mokhov, C. D'Alessandro, and A. Yakovlev, "Multiple rail phase encoding circuits," Technical Report, NCL-EECE-MSD-TR-2008-133, May 2008.
[8] A. Mokhov, "Conditional Partial Order Graphs," PhD thesis, Newcastle Univ., Sept. 2009.
[9] A. Mokhov and A. Yakovlev, "Conditional Partial Order Graphs and Dynamically Reconfigurable Control Synthesis," Proc. Design, Automation and Test in Europe (DATE) Conf., 2008.
[10] D. Muller and W. Bartky, "A Theory of Asynchronous Circuits," Proc. Int'l Symp. Theory of Switching, pp. 204-243, 1959.
[11] S. Nowick, "Automatic Synthesis of Burst-Mode Asynchronous Controllers," PhD thesis, Stanford Univ., 1993.
[12] I. Poliakov, A. Mokhov, A. Rafiev, D. Sokolov, and A. Yakovlev, "Automated Verification of Asynchronous Circuits Using Circuit Petri Nets," Proc. Int'l Symp. Advanced Research in Asynchronous Circuits and Systems (ASYNC), 2008.
[13] R.L. Rudell and A.L. Sangiovanni-Vincentelli, "Multiple-Valued Minimization for PLA Optimization," IEEE Trans. CAD of Integrated Circuits and Systems, vol. 6, no. 5, pp. 727-750, Sept. 1987.
[14] D. Sokolov and A. Yakovlev, "Clock-Less Circuits and System Synthesis," Proc. IEE Proc. Computers and Digital Techniques, 2005.
[15] A. Taubin, J. Cortadella, L. Lavagno, L. Lavagno, A. Kondratyev, and A.M.G. Peeters, "Design Automation of Real-Life Asynchronous Devices and Systems," Foundations and Trends in Electronic Design Automation, vol. 2, no. 1, pp. 1-133, 2007.
[16] K. van Berkel, M. Josephs, and S. Nowick, "Scanning the Technology: Applications of Asynchronous Circuits," Proc. IEEE, 1999.
[17] K. van Berkel, J. Kessels, M. Roncken, R. Saeijs, and F. Schalij, "The VLSI-Programming Language Tangram and Its Translation into Handshake Circuits," Proc. European Conf. Design Automation (EDAC), 1991.
[18] T. Verhoeff, "Delay Insensitive Codes—An Overview," Distributed Computing, vol. 3, no. 1, pp. 1-8, 1988.
[19] I. Wegener, The Complexity of Boolean Functions. Johann Wolfgang Goethe-Universitat, 1987.
[20] A. Yakovlev, M. Kishinevsky, A. Kondratyev, L. Lavagno, and M. Pietkiewicz-Koutny, "On the Models for Asynchronous Circuit Behaviour with OR Causality," Formal Methods in System Design, vol. 9, pp. 189-234, 1996.
[21] K.Y. Yun, D.L. Dill, and S.M. Nowick, "Synthesis of 3D Asynchronous State Machines," Proc. Int'l Conf. Computer Design (ICCD), pp. 346-350, 1992.