Skip to main content

Compact Procedural Implementation in DSP Software Synthesis Through Recursive Graph Decomposition

  • Conference paper
Software and Compilers for Embedded Systems (SCOPES 2004)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3199))

Included in the following conference series:

Abstract

Synthesis of digital signal processing (DSP) software from dataflow-based formal models is an effective approach for tackling the complexity of modern DSP applications. In this paper, an efficient method is proposed for applying subroutine call instantiation of module functionality when synthesizing embedded software from a dataflow specification. The technique is based on a novel recursive decomposition of subgraphs in a cluster hierarchy that is optimized for low buffer size. Applying this technique, one can achieve significantly lower buffer sizes than what is available for minimum code size inlined schedules, which have been the emphasis of prior software synthesis work. Furthermore, it is guaranteed that the number of procedure calls in the synthesized program is polynomially bounded in the size of the input dataflow graph, even though the number of module invocations may increase exponentially. This recursive decomposition approach provides an efficient means for integrating subroutine-based module instantiation into the design space of DSP software synthesis. The experimental results demonstrate a significant improvement in buffer cost, especially for more irregular multi-rate DSP applications, with moderate code and execution time overhead.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bhattacharyya, S.S., Murthy, P.K., Lee, E.A.: Software Synthesis from Dataflow Graphs. Kluwer Academic Publishers, Dordrecht (1996)

    MATH  Google Scholar 

  2. Buck, J., Vaidyanathan, R.: Heterogeneons modeling and simulation of embedded systems in El Greco. In: Proceedings of the International Workshop on Hardware/Software Co-Design (May 2000)

    Google Scholar 

  3. Eker, J., et al.: Taming heterogeneity — the Ptolemy approach. Proceedings of the IEEE (January 2003)

    Google Scholar 

  4. Karczmarek, M., Thies, W., Amarasinghe, S.: Phased scheduling of stream programs. In: Proceedings of Languages, Compilers, and Tools for Embedded Systems (LCTES 2003), San Diego, California, pp. 103–112 (June 2003)

    Google Scholar 

  5. Karezmarek, M., Thies, W., Amarasinghe, S.: StreamIt: A Language for Streaming Applications. In: Proceedings of the International Conference on Compiler Construction, Grenoble, France (April 2002)

    Google Scholar 

  6. Ko, M., Murthy, P.K., Bhattachaiyya, S.S.: Compact procedural synthesis of DSP software through recursive graph decomposition. Technical Report UMIACS-TR-2004-41, Institute for Advanced Computer Studies, University of Maryland at College Park (2004)

    Google Scholar 

  7. Lalgudi, K.N., Papaeffhymiou, M.C., Potkonjak, M.: Optimizing computations for effective block-processing. ACM Transactions on Design Automation of Electronic Systems 5(3), 604–630 (2000)

    Article  Google Scholar 

  8. Lauwereins, R., Engels, M., Ade, M., Peperstraete, J.A.: Grape-II: A system-level prototyping environment for DSP applications. IEEE Computer Magazine 28(2), 35–43 (1995)

    Google Scholar 

  9. Lee, E.A., Messerschmitt, D.G.: Synchronous dataflow. Proceedings of IEEE 75, 1235–1245 (1987)

    Article  Google Scholar 

  10. Leupers, R., Marwedel, P.: Time-constrained code compaction for DSP’s. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 5(1), 112–122 (1997)

    Article  Google Scholar 

  11. Murthy, P.K., Bhattacharyya, S.S.: Buffer merging: a powerful technique for reducing memory requirements of synchronous dataflow specifications. ACM Transactions on Design Automation of Electronic Systems 9(2), 212–237 (2004)

    Article  Google Scholar 

  12. Murthy, P.K., Cohen, E.G., Rowland, S.: System Canvas: A new design environment for embedded DSP and telecommunication systems. In: Proceedings of the International Workshop on Hardware/Software Co-Design (April 2001)

    Google Scholar 

  13. Panda, P.R., Cattboor, F., Dutt, N.D., et al.: Data and Memory Optimization Techniques for Embedded Systems. ACM Transactions on Design Automation for Electronic Systems 6(2), 149–206 (2001)

    Article  Google Scholar 

  14. Ritz, S., Pankert, M., Zivojnovic, V., Meyer, H.: Optimum vectorization of scalable synchronotis dataflow graphs. In: Proceedings of the International Conference on Application Specific Array Processors, pp. 285–296 (October 1993)

    Google Scholar 

  15. Robbins, C.B.: Autocodhtg Toolset software tools for automatic generation of parallel application software. Technical report. Management, Communications & Control, Inc. (2002)

    Google Scholar 

  16. Stefanov, T., Zissulescu, C., Turjan, A., Kienhuis, B., Deprettere, E.: System design using Kahn process networks: the Compaan/Laura approach. In: Proceedings of the Design, Automation and Test in Europe Conference (February 2004)

    Google Scholar 

  17. Sung, W., Ha, S.: Memory Efficient Software Synthesis using Mixed Coding Style from Dataflow Graph. IEEE Transactions on VLSI Systems 8, 522–526 (2000)

    Article  Google Scholar 

  18. Zitzler, E., Teich, J., Bhattacharyya, S.S.: Multidimensional exploration of software implementations for DSP algorithms. Journal of VLSI Signal Processing Systems for Signal, Image, and Video Technology, 83–98 (February 2000)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ko, MY., Murthy, P.K., Bhattacharyya, S.S. (2004). Compact Procedural Implementation in DSP Software Synthesis Through Recursive Graph Decomposition. In: Schepers, H. (eds) Software and Compilers for Embedded Systems. SCOPES 2004. Lecture Notes in Computer Science, vol 3199. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30113-4_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-30113-4_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-23035-9

  • Online ISBN: 978-3-540-30113-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics