Skip to main content

Part of the book series: Embedded Systems ((EMSY))

Abstract

As already shown in Chapter 6, buffer size determination is an important step in system level design of image processing applications because it helps to improve throughput by avoiding external memories. Furthermore, it is possible to reduce power dissipation and chip sizes and thus costs. Consequently, a buffer analysis technique based on simulation has been presented in the previous chapter that can be applied to arbitrary scheduling strategies. By this means, two different memory mappings, expressed in different memory models, have been compared. Whereas the first one uses a rectangular array structure, the second performs linearization in production order. As a result, it could be shown that both strategies have their advantages and drawbacks and that high-speed applications requiring parallel processing are best covered by the linearized buffer model.

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 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover 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

Notes

  1. 1.

    In reference [163], the dependency vectors show the opposite direction. In other words, they specify for each sink invocation from which source invocation it depends on. This notation, however, has been changed in order to be in agreement with data flow semantics.

  2. 2.

    Note that the JPEG2000 block forming operation has no feedback cycles, and thus implementation of a throughput-optimal schedule is possible.

  3. 3.

    The source and sink lattice points are assumed to execute in parallel. Furthermore, for pipelined actor execution (see Section 7.3.5) the sink is assumed to access the data elements only during the first lattice grid and buffers the data internally for further usage. This assumption fits perfectly to typical hardware implementation strategies.

  4. 4.

    Data element 0 could be discarded. Since, however, the polyhedral buffer analysis operates on source actor invocations instead of individual data elements, this is not considered further.

  5. 5.

    Depending on the implementation strategy, it might be furthermore necessary to buffer the currently processed pixel of the most recent line by means of a register.

  6. 6.

    This restriction can be easily circumvented by transforming the actor such that it outputs bigger effective tokens and reads larger sliding windows.

References

  1. Graphviz - graph visualization software. http://www.graphviz.org/

  2. lp_solve. http://lpsolve.sourceforge.net/5.5/

  3. Piplib. http://www.piplib.org/

  4. Charot, F., Nyamsi, M., Quinton, P., Wagner, C.: Modeling and scheduling parallel data flow systems using structured systems of recurrence equations. In: Proceedings of the 15th IEEE International Conference on Application-Specific Systems, Architectures and Processors (ASAP ’04), pp. 6–16. IEEE Computer Society, Washington, DC (2004)

    Google Scholar 

  5. Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms, 2nd edition, chap. Section 24.1: The Bellman-Ford Algorithm, pp. 588–592. MIT Press and McGraw-Hill, Cambridge, MA (2001)

    MATH  Google Scholar 

  6. Feautrier, P.: Parametric integer programming. Oper. Res. 22(3), 243–268 (1988)

    MathSciNet  MATH  Google Scholar 

  7. Feautrier, P.: Scalable and structured scheduling. Int. J. Parallel Program. 34(5), 459–487 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  8. Hu, Q., Vandecappelle, A., Kjeldsberg, P.G., Catthoor, F., Palkovic, M.: Fast memory footprint estimation based on maximal dependency vector calculation. In: Proceedings of the Conference on Design, Automation and Test in Europe (DATE ’07), pp. 379–384. EDA Consortium, San Jose, CA (2007)

    Google Scholar 

  9. ILOG: cplex. http://www.ilog.com/products/cplex/ (2010). Accessed 19 Sep 2010

  10. ISO/IEC JTC1/SC29/WG1: JPEG2000 Part I Final Committee Draft Version 1.0 (2002). N1646R

    Google Scholar 

  11. Keinert, J., Dutta, H., Hannig, F., Haubelt, C., Teich, J.: Model-based synthesis and optimization of static multi-rate image processing algorithms. In: Proceedings of Design, Automation & Test in Europe, pp. 135–140. Nice, France (2009)

    Google Scholar 

  12. Kjeldsberg, P., Catthoor, F., Aas, E.J.: Detection of partially simultaneously alive signals in storage requirement estimation for data intensive applications. In: DAC ’01: Proceedings of the 38th conference on Design automation, pp. 365–370. ACM Press, New York, NY (2001)

    Google Scholar 

  13. Kjeldsberg, P.G., Catthoor, F., Aas, E.J.: Data dependency size estimation for use in memory optimization. IEEE Trans. CAD Integr. Circuits Syst. 22(7), 908–921 (2003)

    Article  Google Scholar 

  14. Kjeldsberg, P.G., Catthoor, F., Aas, E.J.: Storage requirement estimation for optimized design of data intensive applications. ACM Trans. Des. Autom. Electron. Syst. 9(2), 133–158 (2004)

    Article  Google Scholar 

  15. Li, J.: Image compression: The mathematics of JPEG2000. Modern Signal Process. MSRI Publ. 46, 185–221 (2003)

    Google Scholar 

  16. Tarjan, R.: Depth-first search and linear graph algorithms. SIAM J. Comput. 1(2), 146–160 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  17. Thörnberg, B., Palkovic, M., Hu, Q., Olsson, L., Kjeldsberg, P.G., O’Nils, M., Catthoor, F.: Bit-width constrained memory hierarchy optimization for real-time video systems. IEEE Trans. CAD Integr. Circuits Syst. 26(4), 781–800 (2007)

    Article  Google Scholar 

  18. Tomasi, C., Manduchi, R.: Bilateral filtering for gray and color images. In: ICCV, pp. 839–846. Bombay, India (1998)

    Google Scholar 

  19. Verdoolaege, S., Nikolov, H., Stefanov, T.: PN: a tool for improved derivation of process networks. EURASIP J. Embedded Syst. 2007(1), 19–19 (2007)

    Google Scholar 

  20. Wiggers, M., Bekooij, M., Smit, G.: Efficient computation of buffer capacities for cyclo-static dataflow graphs. Tech. Rep., Centre for Telematics and Information Technology, University of Twente, Enschede (2006)

    Google Scholar 

  21. Zhang, F., Yoo, Y.M., Koh, L.M., Kim, Y.: Nonlinear diffusion in Laplacian pyramid domain for ultrasonic speckle reduction. IEEE Trans. Med. Imaging 26(2), 200–211 (2007)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Joachim Keinert .

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer Science+Business Media, LLC

About this chapter

Cite this chapter

Keinert, J., Teich, J. (2011). Buffer Analysis for Complete Application Graphs. In: Design of Image Processing Embedded Systems Using Multidimensional Data Flow. Embedded Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4419-7182-1_7

Download citation

  • DOI: https://doi.org/10.1007/978-1-4419-7182-1_7

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-1-4419-7181-4

  • Online ISBN: 978-1-4419-7182-1

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics