Scheduling and Buffer Sizing of n-Synchronous Systems

Typing of Ultimately Periodic Clocks in Lucy-n
  • Louis Mandel
  • Florence Plateau
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7342)


Lucy-n is a language for programming networks of processes communicating through bounded buffers. A dedicated type system, termed a clock calculus, automatically computes static schedules of the processes and the sizes of the buffers between them.

In this article, we present a new algorithm which solves the subtyping constraints generated by the clock calculus. The advantage of this algorithm is that it finds schedules for tightly coupled systems. Moreover, it does not overestimate the buffer sizes needed and it provides a way to favor either system throughput or buffer size minimization.


Precedence Constraint System Throughput Constraint System Periodic Pattern Unknown Word 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bilsen, G., Engels, M., Lauwereins, R., Peperstraete, J.: Cyclo-static dataflow. IEEE Trans. on Signal Processing 44(2), 397–408 (1996)CrossRefGoogle Scholar
  2. 2.
    Boucaron, J., de Simone, R., Millo, J.-V.: Formal methods for scheduling of latency-insensitive designs. EURASIP Journal on Embedded Systems (1) (January 2007)Google Scholar
  3. 3.
    Carloni, L., McMillan, K., Sangiovanni-Vincentelli, A.: Theory of latency-insensitive design. IEEE Trans. on CAD of Integrated Circuits ans Systems 20(9), 1059–1076 (2001)CrossRefGoogle Scholar
  4. 4.
    Carmona, J., Júlvez, J., Cortadella, J., Kishinevsky, M.: Scheduling synchronous elastic designs. In: Application of Concurrency to System Design (2009)Google Scholar
  5. 5.
    Caspi, P., Pilaud, D., Halbwachs, N., Plaice, J.A.: Lustre: a declarative language for real-time programming. In: Principles of Programming Languages (1987)Google Scholar
  6. 6.
    Caspi, P., Pouzet, M.: Synchronous Kahn networks. In: International Conference on Functional Programming (May 1996)Google Scholar
  7. 7.
    Casu, M., Macchiarulo, L.: A new approach to latency insensitive design. In: Design Automation Conference (2004)Google Scholar
  8. 8.
    Cohen, A., Duranton, M., Eisenbeis, C., Pagetti, C., Plateau, F., Pouzet, M.: N-synchronous Kahn networks: a relaxed model of synchrony for real-time systems. In: Principles of Programming Languages (2006)Google Scholar
  9. 9.
    Cohen, A., Mandel, L., Plateau, F., Pouzet, M.: Abstraction of Clocks in Synchronous Data-Flow Systems. In: Ramalingam, G. (ed.) APLAS 2008. LNCS, vol. 5356, pp. 237–254. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  10. 10.
    Colaço, J.-L., Pouzet, M.: Clocks as First Class Abstract Types. In: Alur, R., Lee, I. (eds.) EMSOFT 2003. LNCS, vol. 2855, pp. 134–155. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  11. 11.
    Eker, J., Janneck, J.W., Lee, E.A., Liu, J., Liu, X., Ludvig, J., Neuendorffer, S., Sachs, S., Xiong, Y.: Taming heterogeneity - the Ptolemy approach. Proceedings of the IEEE 91(1), 127–144 (2003)CrossRefGoogle Scholar
  12. 12.
    GLPK. GNU linear programming kit,
  13. 13.
    Lagrange, X., Godlewski, P., Tabbane, S.: Réseaux GSM: des principes à la norme. Hermès Science, Paris (2000)Google Scholar
  14. 14.
    Lee, E., Messerschmitt, D.: Synchronous data flow. IEEE Transactions on Computers 75(9) (September 1987)Google Scholar
  15. 15.
    Mandel, L., Plateau, F.: Typage des horloges périodiques en Lucy-n. In: Journées Francophones des Langages Applicatifs, La Bresse, France (January 2011)Google Scholar
  16. 16.
    Mandel, L., Plateau, F.: Scheduling and buffer sizing of n-synchronous systems — extended version (2012),
  17. 17.
    Mandel, L., Plateau, F., Pouzet, M.: Lucy-n: a n-synchronous extension of Lustre. Mathematics of Program Construction (2010)Google Scholar
  18. 18.
    Mandel, L., Plateau, F., Pouzet, M.: Static scheduling of latency insensitive designs with Lucy-n. In: Formal Methods in Computer Aided Design (2011)Google Scholar
  19. 19.
    Wesley Peterson, W.: Error-Correcting Codes. The M.I.T. Press (1961)Google Scholar
  20. 20.
    Schrijver, A.: Theory of linear and integer programming. John Wiley & Sons (1986)Google Scholar
  21. 21.
    Schrijvers, T., Peyton Jones, S., Sulzmann, M., Vytiniotis, D.: Complete and decidable type inference for GADTs. In: International Conference on Functional Programming, pp. 341–352 (2009)Google Scholar
  22. 22.
    Thies, W., Karczmarek, M., Amarasinghe, S.: StreamIt: A Language for Streaming Applications. In: CC 2002. LNCS, vol. 2304, pp. 179–196. Springer, Heidelberg (2002)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Louis Mandel
    • 1
    • 2
  • Florence Plateau
    • 1
    • 2
  1. 1.Laboratoire de Recherche en InformatiqueUniversité Paris-Sud 11France
  2. 2.Laboratoire d’Informatique de l’École Normale SupérieureINRIAFrance

Personalised recommendations