, Volume 93, Issue 2–4, pp 91–102 | Cite as

Aligning the representation and reality of computation with asynchronous logic automata

  • Neil Gershenfeld


There are many models of computation, but they all share the same underlying laws of physics. Software can represent physical quantities, but is not itself written with physical units. This division in representations, dating back to the origins of computer science, imposes increasingly heroic measures to maintain the fiction that software is executed in a virtual world. I consider instead an alternative approach, representing computation so that hardware and software are aligned at all levels of description. By abstracting physics with asynchronous logic automata I show that this alignment can not only improve scalability, portability, and performance, but also simplify programming and expand applications.


Logic automata Spatial computing Programming models Parallel computing Computer architecture 

Mathematics Subject Classification (2000)

65F99 65Y04 65Y05 65Y10 68N15 68N17 68Q05 68W10 68W35 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Margolus N (1984) Physics-like models of computation. Phys D 10: 81–95MathSciNetCrossRefGoogle Scholar
  2. 2.
    Lloyd S (2000) Ultimate physical limits to computation. Nature 406: 1047–1054CrossRefGoogle Scholar
  3. 3.
    Turing AM (1950) Computing machinery and intelligence. Mind 59: 433–560MathSciNetCrossRefGoogle Scholar
  4. 4.
    von Neumann J (1993) First draft of a report on the EDVAC. IEEE Ann Hist Comput 15(4): 27–75MathSciNetzbMATHCrossRefGoogle Scholar
  5. 5.
    Lewis HR, Papadimitriou CH (1997) Elements of the theory of computation, 2nd edn. Prentice Hall PTR, Upper Saddle RiverGoogle Scholar
  6. 6.
    Chaitin G (2008) The halting probability via Wang tiles. Fundam Inf 86(4):429–433. Google Scholar
  7. 7.
    Turing A (1952) The chemical basis of morphogenesis. Phil Trans R Soc Lond B 237: 37–72CrossRefGoogle Scholar
  8. 8.
    von Neumann J (1956) Probabilistic logics and the synthesis of reliable organisms from unreliable components. In: Shannon C, McCarthy J (eds) Automata studies. Princeton University Press, Princeton, pp 43–98Google Scholar
  9. 9.
    Banks RE (1971) Information processing and transmission in cellular automata. PhD thesis, MITGoogle Scholar
  10. 10.
    Omohundro S (1984) Modelling cellular automata with partial differential equations. Phys D: Nonlinear Phenom 10(1–2): 128–134MathSciNetCrossRefGoogle Scholar
  11. 11.
    Toffoli T, Margolus N (1991) Cellular automata machines: a new environment for modeling. MIT Press, CambridgeGoogle Scholar
  12. 12.
    Lee FPJ, Adachi S, Mashiko S (2005) Delay-insensitive computation in asynchronous cellular automata. J Comput Syst Sci 70: 201–220MathSciNetzbMATHCrossRefGoogle Scholar
  13. 13.
    Manohar R (2006) Reconfigurable asynchronous logic. In: Proceedings of the IEEE custom integrated circuits conference, pp 13–20Google Scholar
  14. 14.
    Dalrymple DA, Gershenfeld N, Chen K (2008) Asynchronous logic automata. In: Proceedings of AUTOMATA 2008, pp 313–322Google Scholar
  15. 15.
    Petri CA (1996) Nets, time and space. Theor Comput Sci 153: 3–48MathSciNetzbMATHCrossRefGoogle Scholar
  16. 16.
    Arvind , Culler DE (1986) Dataflow architectures. Annu Rev Comput Sci 1: 225–253CrossRefGoogle Scholar
  17. 17.
    Nowick SM, Josephs MB, van Berkel CH (1999) Special issue on asynchronous circuits and systems. Proc IEEE 87(2): 219–222CrossRefGoogle Scholar
  18. 18.
    Abelson H, Allen D, Coore D, Hanson C, Homsy G, Knight TF Jr, Nagpal R, Rauch E, Sussman GJ, Weiss R (2000) Amorphous computing. Commun ACM 43: 74–82CrossRefGoogle Scholar
  19. 19.
    Butera WJ (2002) Programming a paintable computer. PhD thesis, MITGoogle Scholar
  20. 20.
    Younan X, Whitesides GM (1998) Soft lithography. Annu Rev Mater Sci 28: 153–184CrossRefGoogle Scholar
  21. 21.
    Ridley B, Nivi B, Jacobson J (1999) All-inorganic field effect transistors fabricated by printing. Science 286: 746–749CrossRefGoogle Scholar
  22. 22.
    Bennett CH (1973) Logical reversibility of computation. IBM J Res Dev 17: 525zbMATHCrossRefGoogle Scholar
  23. 23.
    Margolus NH (1999) Crystalline computation. In: Hey A (ed) Feynman and computation. Perseus Books, CambridgeGoogle Scholar
  24. 24.
    Greenwald S (2010) Matrix multiplication with asynchronous logic automata. Master’s thesis, MITGoogle Scholar
  25. 25.
    Gershenfeld N, Dalrymple D, Chen K, Knaian A, Green F, Demaine ED, Greenwald S, Schmidt-Nielsen P (2010) Reconfigurable asynchronous logic automata: (RALA). In: Proceedings of the 37th Annual ACM SIGPLAN-SIGACT symposium on principles of programming languages, POPL ’10, New York, NY, USA. ACM, pp 1–6Google Scholar
  26. 26.
    Ballard G, Demmel J, Holtz O, Schwartz O (2009) Minimizing communication in linear algebra. CoRR, abs/0905.2485Google Scholar
  27. 27.
    Chen K, Green F, Greenwald S, Bachrach J, Gershenfeld N (2011) Asynchronous logic automata asic design (preprint)Google Scholar
  28. 28.
    Green F (2010) ALA ASIC: a standard cell library for asynchronous logic automata. Master’s thesis, MITGoogle Scholar
  29. 29.
    Grabert, H, Devoret, MH (eds) (1992) Single charge tunneling: Coulomb Blockade phenomena in nanostructures. Plenum Press, New YorkGoogle Scholar
  30. 30.
    Tanji-Suzuki H, Chen W, Landig R, Simon J, Vuleti V (2011) Vacuum-induced transparency. Science 333(6047): 1266–1269CrossRefGoogle Scholar

Copyright information

© Springer-Verlag 2011

Authors and Affiliations

  1. 1.The Center for Bits and AtomsMassachusetts Institute of TechnologyCambridgeUSA

Personalised recommendations