skip to main content
research-article

Analysis of SystemC actor networks for efficient synthesis

Published:07 January 2011Publication History
Skip Abstract Section

Abstract

Applications in the signal processing domain are often modeled by dataflow graphs. Due to heterogeneous complexity requirements, these graphs contain both dynamic and static dataflow actors. In previous work, we presented a generalized clustering approach for these heterogeneous dataflow graphs in the presence of unbounded buffers. This clustering approach allows the application of static scheduling methodologies for static parts of an application during embedded software generation for multiprocessor systems. It systematically exploits the predictability and efficiency of the static dataflow model to obtain latency and throughput improvements. In this article, we present a generalization of this clustering technique to dataflow graphs with bounded buffers, therefore enabling synthesis for embedded systems without dynamic memory allocation. Furthermore, a case study is given to demonstrate the performance benefits of the approach.

References

  1. Abdi, S., Peng, J., Yu, H., Shin, D., Gerstlauer, A., Doemer, R., and Gajski, D. 2003. System-on-Chip Environment (SCE Version 2.2.0 beta): Tutorial. University of California, Irvine, CA. Tech. rep. CECS-TR-03-41.Google ScholarGoogle Scholar
  2. Baird, M. 2005. IEEE Standard 1666-2005 SystemC Language Reference Manual. IEEE, Los Alamitos, CA.Google ScholarGoogle Scholar
  3. Baleani, M., Ferrari, A., Mangeruca, L., Sangiovanni-Vincentelli, A., Freund, U., Schlenker, E., and Wolff, H.-J. 2005. Correct-by-construction transformations across design environments for model-based embedded software development. In Proceedings of the Conference on Design, Automation and Test in Europe. IEEE, Los Alamitos, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Bhattacharya, B. and Bhattacharyya, S. 2000. Parameterized dataflow modeling of DSP systems. In Proceedings of the International Conference on Acoustics, Speech, and Signal Processing. IEEE, Los Alamitos, CA, 1948--1951. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Bhattacharyya, S. S., Buck, J. T., Ha, S., and Lee, E. A. 1995. Generating compact code from dataflow specifications of multi-rate signal processing algorithms. IEEE Trans. Circuits Syst. 42, 3, 138--150.Google ScholarGoogle ScholarCross RefCross Ref
  6. Bhattacharyya, S. S. and Lee, E. A. 1993. Scheduling synchronous dataflow graphs for efficient looping. J. VLSI Signal Process. Syst. 6, 3, 271--288. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Bhattacharyya, S. S., Leupers, R., and Marwedel, P. 2000. Software synthesis and code generation for signal processing systems. IEEE Trans. Circuits Syst. 47, 9.Google ScholarGoogle Scholar
  8. Bhattacharyya, S. S., Murthy, P., and Lee, E. 1997. APGAN and RPMC: Complementary heuristics for translating DSP block diagrams into efficient software implementations. J. Des. Autom. Embedded Syst.Google ScholarGoogle Scholar
  9. Bhattacharyya, S. S. and Murthy, P. K. 1995. Optimal parenthesization of lexical orderings for dsp block diagrams. In Proceedings of the International Workshop on Signal Processing. IEEE, Los Alamitos, CA, 177--186.Google ScholarGoogle Scholar
  10. Bilsen, G., Engels, M., Lauwereins, R., and Peperstraete, J. 1996. Cyclo-static dataflow. IEEE Trans. Signal Process. 44, 2, 397--408. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Buck, J. and Vaidyanathan, R. 2000. Heterogeneous modeling and simulation of embedded systems in el greco. In Proceedings of the 8th International Workshop on Hardware/Software Co-Design. ACM, New York, 142--146. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Buck, J. T. 1993. Scheduling dynamic dataflow graphs with bounded memory using the token flow model. Ph.D. thesis, Department of Electrical Engineering and Computer Sciences, University of California at Berkeley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Choi, C. and Ha, S. 1997. Software synthesis for dynamic data flow graph. In Proceedings of the International Workshop on Rapid System Prototyping. IEEE, Los Alamitos, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. de Kock, E. A., Essink, G., Smits, W. J. M., van der Wolf, P., Brunel, J.-Y., Kruijtzer, W. M., Lieverse, P., and Vissers, K. A. 2000. YAPI: Application modeling for signal processing systems. In Proceedings of the Design Automation Conference. IEEE, Los Alamitos, CA, 402--405. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Edwards, S. A. and Tardieu, O. 2005. SHIM: A deterministic model for heterogeneous embedded systems. In Proceedings of International Conference on Embedded Software. ACM, New York, 264--272. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Falk, J., Keinert, J., Haubelt, C., Teich, J., and Bhattacharyya, S. 2008. A generalized static dataflow clustering algorithm for MPSoC scheduling of multimedia applications. In Proceedings of the 8th International Conference on Embedded Software. ACM, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. FZI Research Center for Information Technology. 2007. KaSCPar—Karlsruhe SystemC Parser Suite. http://www.fzi.de/sim/kascpar.html.Google ScholarGoogle Scholar
  18. Geilen, M. and Basten, T. 2004. Reactive process networks. In Proceedings of the 4th International Conference on Embedded Software.ACM, New York, 137--146. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Grötker, T., Liao, S., Martin, G., and Swan, S. 2002. System Design with SystemC. Kluwer Academic Publishers, The Netherlands. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Hsu, C. and Bhattacharyya, S. S. 2007. Cycle-breaking techniques for scheduling synchronous dataflow graphs. Tech. rep. UMIACS-TR-2007-12, Institute for Advanced Computer Studies, University of Maryland at College Park.Google ScholarGoogle Scholar
  21. Hsu, C., Ko, M., and Bhattacharyya, S. S. 2005. Software synthesis from the dataflow interchange format. In Proceedings of the International Workshop on Software and Compilers for Embedded Systems. Springer-Verlag, Berlin, 37--49. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Jerraya, A. A., Bouchhim, A., and Pétrot, F. 2006. Programming models and HW-SW interfaces abstraction for multi-processor SoC. In Proceedings of the Design Automation Conference. IEEE, Los Alamitos, CA, 280--285. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Kahn, G. 1974. The semantics of simple language for parallel programming. In Proceedings of the Congress. 471--475.Google ScholarGoogle Scholar
  24. Kangas, T., Kukkala, P., Orsila, H., Salminen, E., Hännikäinen, M., Hämäläinen, T. D., Riihimäki, J., and Kuusilinna, K. 2006. UML-based multiprocessor SoC design framework. ACM Trans. Embedded Comput. Syst. 5, 2, 281--320. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Keinert, J., Streubühr, M., Schlichter, T., Falk, J., Gladigau, J., Haubelt, C., Teich, J., and Meredith, M. 2009. SYSTEMCODESIGNER—an automatic ESL synthesis approach by design space exploration and behavioral synthesis for streaming applications. Trans. Des. Autom. Electr. Syst. 14, 1, 1--23. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Kianzad, V. and Bhattacharyya, S. S. 2006. Efficient techniques for clustering and scheduling onto embedded multiprocessors. IEEE Trans. Parallel Distrib. Syst. 17, 7, 667--680. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Lee, E. A. 2004. Overview of the Ptolemy project. Tech. rep. ucb/erl m03/25. Department of Electrical Engineering and Computer Sciences, University of California, Berkeley, CA.Google ScholarGoogle Scholar
  28. Lee, E. A. and Messerschmitt, D. G. 1987. Synchronous data flow. Proc. IEEE 75, 9, 1235--1245.Google ScholarGoogle ScholarCross RefCross Ref
  29. Lee, E. A. and Sangiovanni-Vincentelli, A. 1998. A framework for comparing models of computation. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 17, 12, 1217--1229. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Patel, H. D. and Shukla, S. K. 2005. Towards a heterogeneous simulation kernel for system- level models: A SystemC kernel for synchronous dataflow models. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 24, 1261--1271. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Pino, J. L., Bhattacharyya, S. S., and Lee, E. A. 1995. A hierarchical multiprocessor scheduling system for dsp applications. In Proceedings of the Conference on Signals, Systems, and Computers. IEEE, Los Alamitos, CA, 122--126. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Sgroi, M., Lavagno, L., Watanabe, Y., and Sangiovanni-Vincentelli, A. 1999. Quasi-static scheduling of embedded software using equal conflict nets. In Proceedings of the 20th International Conference Application and Theory of Petri Nets. Springer, Berlin. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Strehl, K., Thiele, L., Gries, M., Ziegenbein, D., Ernst, R., and Teich, J. 2001. FunState—an internal design representation for codesign. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 9, 4, 524--544. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Stuijk, S., Geilen, M., and Basten, T. 2006a. Exploring trade-offs in buffer requirements and throughput constraints for synchronous dataflow graphs. In Proceedings of the 43rd Annual Conference on Design Automation. ACM, New York, 899--904. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Stuijk, S., Geilen, M., and Basten, T. 2006b. SDF3: SDF for free. In Proceedings of the 6th International Conference on Application of Concurrency to System Design. IEEE, Los Alamitos, CA, 276--278. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Thompson, M., Nikolov, H., Stefanov, T., Pimentel, A., Erbas, C., Polstra, S., and Deprettere, E. 2007. A framework for rapid system-level exploration, synthesis, and programming of multimedia MP-SoCs. In Proceedings of the 5th International Conference on Hardware/Software Codesign and System Synthesis. IEEE, Los Alamitos, CA, 9--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Wiggers, M. H., Bekooij, M. J. G., and Smit, G. J. M. 2007. Efficient computation of buffer capacities for cyclo-static dataflow graphs. In Proceedings of the 44th Annual Conference on Design Automation. ACM, New York, 658--663. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Zebelein, C., Falk, J., Haubelt, C., and Teich, J. 2008. Classification of general dataflow actors into known models of computation. In Proceedings of the 6th International Conference on Formal Methods and Models for Co-Design. ACM, New York, 119--128.Google ScholarGoogle Scholar
  39. Ziegenbein, D., Richter, K., Ernst, R., Thiele, L., and Teich, J. 2002. SPI—a system model for heterogeneously specified embedded systems. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Analysis of SystemC actor networks for efficient synthesis

      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

      Full Access

      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!