skip to main content
10.1145/1190216.1190269acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article

Geometry of synthesis: a structured approach to VLSI design

Published:17 January 2007Publication History

ABSTRACT

We propose a new technique for hardware synthesis from higher-order functional languages with imperative features based on Reynolds's Syntactic Control of Interference. The restriction on contraction in the type system is useful for managing the thorny issue of sharing of physical circuits. We use a semantic model inspired by game semantics and the geometry of interaction, and express it directly as a certain class of digital circuits that form a cartesian, monoidal-closed category. A soundness result is given, which is also a correctness result for the compilation technique.

References

  1. ABRAMSKY, S. A structural approach to reversible computation. Theor. Comput. Sci. 347, 3 (2005), 441--464.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. ABRAMSKY,S.,AND COECKE, B. A categorical semantics of quantum protocols. In LICS (2004), pp. 415--425.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. ABRAMSKY, S., JAGADEESAN, R., AND MALACARIA, P. Full abstraction for PCF. Inf. Comput. 163, 2 (2000), 409--470.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. ABRAMSKY,S.,AND MCCUSKER, G. Linearity, sharing and state: a fully abstract game semantics for idealized algol with active expressions. Electr. Notes Theor. Comput. Sci. 3 (1996).]]Google ScholarGoogle Scholar
  5. BJESSE, P., CLAESSEN, K., SHEERAN, M., AND SINGH, S. Lava: hardware design in haskell. In ICFP '98: Proceedings of the third ACM SIGPLAN international conference on Functional programming (New York, NY, USA, 1998), ACM Press, pp. 174--184.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. BROOKES, S. D. Full abstraction for a shared variable parallel language. In LICS (1993), pp. 98--109.]]Google ScholarGoogle ScholarCross RefCross Ref
  7. CELOXICA. Handel-C Reference Manual. http://www.celoxica. com.]]Google ScholarGoogle Scholar
  8. DANOS, V., HERBELIN,H., AND REGNIER, L. Game semantics & abstract machines. In LICS (1996), pp. 394--405.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. GHICA, D. R., AND MCCUSKER, G. Reasoning about idealized Algol using regular languages. In ICALP (2000), pp. 103--115.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. GIRARD, J. -Y. Geometry of interaction (abstract). In CONCUR (1994), p. 1.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. HYLAND, J. M. E., AND ONG, C. -H. L. On full abstraction for PCF: I, II, and III. Inf. Comput. 163, 2 (2000), 285--408.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. MACKIE, I. The Geometry of Implementation. PhD thesis, Imperial College, University of London, 1994.]]Google ScholarGoogle Scholar
  13. MACKIE, I. The geometry of interaction machine. In POPL (1995), pp. 198--208.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. MYCROFT, A., AND SHARP, R. A statically allocated parallel functional language. In ICALP (2000), pp. 37--48.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. MYCROFT, A., AND SHARP, R. Higher-level techniques for hardware description and synthesis. STTT 4, 3 (2003), 271--297.]]Google ScholarGoogle ScholarCross RefCross Ref
  16. O'HEARN, P. W. On bunched typing. J. Funct. Program. 13, 4 (2003), 747--796.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. O'HEARN, P.W., POWER, J., TAKEYAMA, M., AND TENNENT, R. D. Syntactic control of interference revisited. Theor. Comput. Sci. 228, 1-2 (1999), 211--252.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. O'HEARN, P. W., AND PYM, D. J. The logic of bunched implications. Bulletin of Symbolic Logic 5, 2 (1999), 215--244.]]Google ScholarGoogle ScholarCross RefCross Ref
  19. REYNOLDS, J. C. Syntactic control of interference. In POPL (1978), pp. 39--46.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. REYNOLDS, J. C. The essence of Algol. In Proceedings of the 1981 International Symposium on Algorithmic Languages (1981), North-Holland, pp. 345--372.]]Google ScholarGoogle Scholar
  21. REYNOLDS, J. C. Using functor categories to generate intermediate code. In POPL (1995), pp. 25--36.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. REYNOLDS, J. C. Toward a grainless semantics for shared-variable concurrency. In FSTTCS (2004), pp. 35--48.]]Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. SHAPIRO, D. M. Globally-asynchronous locally-synchronous systems. PhD thesis, Stanford University, 1984.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. SYNOPSYS INC. SystemC Reference Manual. http://www. systemc.org.]]Google ScholarGoogle Scholar
  25. THE UNIVERSITY OF MANCHESTER ADVANCED PROCESSOR TECHNOLOGIES. BALSA Reference Manual. http://www.cs. manchester.ac.uk/apt/projects/tools/balsa/.]]Google ScholarGoogle Scholar
  26. VAN BERKEL, K. Handshake circuits: An intermediary between communicating processes and VLSI. PhD thesis, Technische Univ., Eindhoven (Netherlands)., 1992.]]Google ScholarGoogle Scholar
  27. VAN BERKEL, K., KESSELS, J., RONCKEN, M., SAEIJS, R., AND SCHALIJ, F. The VLSI-programming language Tangram and its translation into handshake circuits. In EURO-DAC '91: Proceedings of the conference on European design automation (Los Alamitos, CA, USA, 1991), IEEE Computer Society Press, pp. 384--389.]] Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Geometry of synthesis: a structured approach to VLSI design

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!