Skip to main content
Log in

LYCOS: the Lyngby Co-Synthesis System

  • Published:
Design Automation for Embedded Systems Aims and scope Submit manuscript

Abstract

This paper describes the LYCOS system, an experimental co-synthesis environment. We present the motivation and philosophy of LYCOS and after an overview of the entire system, the individual parts are described. We use a single CPU, single ASIC target architecture and we describe the techniques we use to estimate metrics concerning hardware, software and communication in this architecture. Finally we present a novel partitioning technique called PACE, which has shown to produce excellent results, and we demonstrate how partitioning is used to do design space exploration.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. S. Antoniazzi, A. Balboni, W. Fornaciari, and D. Sciuto. Hw/sw codesign for embedded telecom systems. In proceedings of ICCD'94, October 1994.

  2. S. Antoniazzi, A. Balboni, W. Fornaciari, and D. Sciuto. The role of VHDL within the TOSCA hardware/software codesign framework. In EURO-DAC '94, pages 612–617, 1994.

  3. E. Barros and W. Rosenstiel. A clustering approach to support hardware/software partitioning. In J. Rozenblit and K. Buchenrieder, editors, Codesign, pages 230–262. IEEE Press, 1995.

  4. A. Benveniste and G. Berry. The synchronous approach to reactive and real-time systems. IEEE Proceedings, 79(9):1270–1282, September 1991.

    Google Scholar 

  5. P. Bojsen. Formalizing data flow graphs. PhD thesis, Department of Computer Science, the Technical University of Denmark, 1994.

  6. J.P. Brage. Foundations of a High-Level Synthesis System. PhD thesis, Department of Computer Science, the Technical University of Denmark, 1993.

  7. J. Buck, S. Ha, E.A. Lee, and D.G. Messerschmitt. Ptolemy: A framework for simulating and prototyping heterogeneous systems. International Journal on Computer Simulation, 4:155–182, 1994.

    Google Scholar 

  8. R. Camposano and J. Wilberg. Embedded system design. Design Automation for Embedded Systems, 1(1–2):5–50, January 1996.

    Google Scholar 

  9. K.M. Chandy and J. Misra. A Foundation of Parallel Programs Design. Printice Hall, 1988.

  10. M. Chido, D. Engels, H. Hsieh P. Giusto, A. Jurecska, L. Lavagno, K. Suzuki, and A. Sangiovanni-Vincentelli. A case study in computer-aided co-design of embedded controllers. Design Automation for Embedded Systems, 1(1–2):51–67, January 1996.

    Google Scholar 

  11. P.H. Chou, R.B. Ortega, and G. Borriello. The Chinook hardware/software co-synthesis system. In the 8th International Symposium on System Synthesis, September 1995.

  12. T.H. Corman, C.E. Leiserson, and R.L. Rivest. Introduction to Algorithms. MIT Press, 1992.

  13. J. T. J. Eijndhoven, C. G. de Jong, and L. Stok. The ASCIS data flow graph: semantics and textual format. Technical Report 91-E-251, Eindhoven University of Technology, June 1991.

  14. R. Ernst, J. Henkel, and T. Benner. Hardware-software codesign of embedded controllers based on hardware-extraction. In International Workshop on Hardware-Software Codesign, Estes Park, Colorado, 1992.

  15. R. Ernst, J. Henkel, and T. Benner. Hardware/software co-synthesis of microcontrollers. Design and Test of Computers, pages 64–75, December 1992.

  16. D.D. Gajski, F. Vahid, and S. Narayan. A system-design methodology: Executable-specification refinement. In the European Conference on Design Automation, February 1994.

  17. Jie Gong, Daniel D. Gajski, and Sanjiv Narayan. Software estimation from executable specifications. Technical Report ICS-93-5, Dept. of Information and Computer Science, University of California, Irvine, Irvine, CA 92717-3425, March 8 1993.

    Google Scholar 

  18. Jesper Grode. Scheduling of control flow dominated data-flow graphs. Master's thesis, Technical University of Denmark, 1995.

  19. Jesper Grode and Jan Madsen. Resource considerations during parallel scheduling of large control-flow dominated applications. In 4th International Conference on VLSI and CAD, 1994.

  20. R.K. Gupta. Co-Synthesis of Hardware and Software for Digital Embedded Systems. Kluwer Academic Publisher, 1995.

  21. R.K. Gupta, C. Coelho, and G. De Micheli. Synthesis and simulation of digital systems containing interacting hardware and software components. In the 29th Design Automation Conference, June 1992.

  22. Bjarne G. Hald and Jan Madsen. A flexible architecture representation for High Level Synthesis. In Second Asian Pacific Conference on Hardware Description Languages, 1994.

  23. D. Harel. Statecharts: A visual formalism for complex systems. In Science of Computer Programming 8. North-Holland, 1987.

  24. A. E. Haxthausen. Translation of C Programs into Quenya CDFGs. Technical report, Department of Computer Science, the Technical University of Denmark, 1995.

  25. A. E. Haxthausen. Developing a Translator from C Programs to Data Flow Graphs Using RAISE. In Proceedings of COMPASS'96. IEEE Computer Society Press, 1996.

  26. D. Herrmann, J. Henkel, and R. Ernst. An approach to the adaptation of estimated cost parameters in the COSYMA system. In CODES '94, 1994.

  27. T. Ismail, K. O'Brien, and A. Jerraya. Interactive system-level partitioning with PARTIF. In European Conference on Design Automation, February 1994.

  28. T.B. Ismail, M. Abid, and A. Jerraya. COSMOS: A codesign approach for communicating systems. In Third International Workshop on Hardware/Software Codesign, pages 17–24. IEEE Computer Society Press, 1994.

  29. Axel Jantsch, Peeter Ellervee, Johnny Öberg, Ahmed Hermani, and Hannu Tenhunen. A case study on hardware/software partitioning. In Proceedings of the IEEE Workshop on FPGAs for Custom Computing Machines, April 1994.

  30. Axel Jantsch, Peeter Ellervee, Johnny Öberg, Ahmed Hermani, and Hannu Tenhunen. Hardware/software partitioning and minimizing memory interface traffic. In EURO-DAC '94, 1994.

  31. Axel Jantsch, Peeter Ellervee, Johnny Öberg, Ahmed Hermani, and Hannu Tenhunen. A software oriented approach to hardware/software codesign. In Proceedings of the Poster Session of the International Conference on Compiler Construction, April 1994.

  32. K. Jensen. Coloured petri nets. In W. Brauer and W. Reisig, editors, Petri Nets: Central Models and Their Properties, pages 248–299. Springer-Verlag, September 1987.

  33. A. B. Kahn. Topological sorting of large networks. Communications of the ACM, 5:558–562, 1962.

    Google Scholar 

  34. Asawaree Kalavade and Edward A. Lee. A global criticality/local phase driven algorithm for the constrained hardware/software partitioning problem. In Third International Workshop on Hardware/Software Codesign, pages 42–48, September 1994.

  35. K.M. Kavi, B.P. Buckles, and U.N. Bhat. Isomorphisms between petri nets and dataflow graphs. IEEE Transaction on Software Engineering, SE-13(10):1127–1134, October 1987.

    Google Scholar 

  36. Peter V. Knudsen. Fine-grain partitioning in codesign. Master's thesis, Technical University of Denmark, 1995.

  37. Peter V. Knudsen and Jan Madsen. Aspects of System Modelling in Hardware/Software Partitioning. In Seventh IEEE International Workshop on Rapid Systems Prototyping, pages 18–23, 1996.

  38. Peter V. Knudsen and Jan Madsen. PACE: A dynamic programming algorithm for hardware/software partitioning. In 4th International Workshop on Hardware/Software Codesign, Codes/CASHE '96, March 1996.

  39. R. Larsen. Estimation of Visual Motion in Image Sequences. PhD thesis, Institute of Mathematical Modelling, the Technical University of Denmark, 1994.

  40. Z. Liu, M.R. Hansen, J. Madsen, and J.P. Brage. Real-Time Semantics for Data Flow Graphs. Technical report, Department of Computer Science, the Technical University of Denmark, 1995.

  41. Jan Madsen and Bjarne G. Hald. A approach to interface synthesis. In 8. International Symposium on System Synthesis, 1995.

  42. Giovanni De Micheli. Computer-aided hardware-software codesign. IEEE Micro, 14(4):10–16, August 1994.

    Google Scholar 

  43. P. G. Paulin and J. P. Knight. Force-directed scheduling for the behavioral synthesis of ASIC. IEEE Trans. Computer-Aided Design, 8:661–679, 1989.

    Google Scholar 

  44. The RAISE Language Group. The RAISE Specification Language. The BCS Practitioners Series. Prentice Hall Int., 1992.

  45. J. Staunstrup. A Formal Approach to Hardware Design. Kluwer Academic Publishers, 1994.

  46. F. Vahid. SLIF: A specification-level intermediate format for system design. Technical Report CS-94-06, Dept. of Computer Science, Univ. of California, Riverside, Sep 1994.

    Google Scholar 

  47. F. Vahid and D.D. Gajski. Clustering for improved system-level functional partitioning. In the 8th International Symposium on System Synthesis, September 1995.

  48. T.Y. Yen and W. Wolf. Communication synthesis for distributed embedded systems. In International Conference on Computer Aided Design. IEEE Computer Society Press, 1995.

  49. T.Y. Yen and W. Wolf. Sensitivity-driven co-synthesis of distributed embedded systems. In the 8th International Symposium on System Synthesis, pages 4–9, September 1995.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Madsen, J., Grode, J., Knudsen, P. et al. LYCOS: the Lyngby Co-Synthesis System. Design Automation for Embedded Systems 2, 195–235 (1997). https://doi.org/10.1023/A:1008884219274

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008884219274

Navigation