skip to main content
10.1145/2789116.2789145acmotherconferencesArticle/Chapter ViewAbstractPublication PagesicdscConference Proceedingsconference-collections
research-article

The advantages and limitations of high level synthesis for FPGA based image processing

Published:08 September 2015Publication History

ABSTRACT

High level synthesis (HLS) tools can provide significant benefits for implementing image processing algorithms on FPGAs. The higher level (usually C based) representation enables algorithms to be expressed more easily, significantly reducing development times. The higher level also makes design space exploration easier, making it easier to optimise the trade-off between resources and processing speed. However, one danger of using HLS is simply porting existing image processing algorithms onto an FPGA platform. Often, better parallel or pipelined algorithms may be may be designed which are better suited to the FPGA architecture. Examples will be given from image filtering, to connected components analysis, to efficient memory management for 2-D frequency domain based filtering.

References

  1. I. Alston and B. Madahar. From C to netlists: Hardware engineering for software engineers? IEE Electronics and Communication Engineering Journal, 14(4):165--173, 2002.Google ScholarGoogle ScholarCross RefCross Ref
  2. D. Bailey. Chain coding streamed images through crack run-length encoding. In Image and Vision Computing New Zealand, 6 pages, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  3. D. G. Bailey. Design for Embedded Image Processing on FPGAs. John Wiley and Sons (Asia) Pte. Ltd., Singapore, 2011. Google ScholarGoogle ScholarCross RefCross Ref
  4. D. G. Bailey. Image border management for FPGA based filters. In 6th International Symposium on Electronic Design, Test and Applications, pages 144--149, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. D. G. Bailey. Invited paper: Adapting algorithms for hardware implementation. In 7th IEEE Workshop on Embedded Computer Vision, pages 177--184, 2011.Google ScholarGoogle Scholar
  6. BDTI. High-level synthesis tools for Xilinx FPGAs. Technical report, Berkley Design Technology Inc., 2010.Google ScholarGoogle Scholar
  7. A. Benkrid and K. Benkrid. HIDE+: A logic based hardware development environment. Engineering Letters, 16(3):460--468, 2008.Google ScholarGoogle Scholar
  8. D. Boland and G. A. Constantinides. A scalable approach for automated precision analysis. In International Symposium on Field Programmable Gate Arrays, pages 185--194, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. M. Bramberger, J. Brunner, B. Rinner, and H. Schwabach. Real-time video analysis on an embedded smart camera for traffic surveillance. In 10th IEEE Real-Time and Embedded Technology and Applications Symposium, pages 174--181, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. M. Bramberger, A. Doblander, A. Maier, B. Rinner, and H. Schwabach. Distributed embedded smart cameras for surveillance applications. IEEE Computer, 39(2):68--75, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. P. Chalimbaud and F. Berry. Design of an imaging system based on FPGA technology and CMOS imager. In IEEE International Conference on Field-Programmable Technology, pages 407--411, 2004.Google ScholarGoogle ScholarCross RefCross Ref
  12. J. Cong, P. Zhang, and Y. Zou. Optimizing memory hierarchy allocation with loop transformations for high-level synthesis. In 49th Annual Design Automation Conference, pages 1229--1234, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. G. A. Constantinides, P. Y. Cheung, and W. Luk. Optimum wordlength allocation. In Symposium on Field-Programmable Custom Computing Machines, pages 219--228, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. D. Crookes, K. Alotaibi, A. Bouridane, P. Donachy, and A. Benkrid. An environment for generating FPGA architectures for image algebra-based algorithms. In International Conference on Image Processing, volume 3, pages 990--994, 1998.Google ScholarGoogle ScholarCross RefCross Ref
  15. B. Davis. Modern DRAM Architectures. PhD thesis, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. F. Dias, F. Berry, J. Serot, and F. Marmoiton. Hardware, design and implementation issues on a FPGA-based smart camera. In First ACM/IEEE International Conference on Distributed Smart Cameras, pages 20--26, 2007.Google ScholarGoogle ScholarCross RefCross Ref
  17. S. A. Edwards. The challenges of synthesizing hardware from C-like languages. IEEE Design and Test of Computers, 23(5):375--383, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. M. Fingeroff and T. Bollaert. High Level Synthesis Blue Book. Mentor Graphics Corporation, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Z. Guo, B. Buyukkurt, and W. Najjar. Input data reuse in compiling window operations onto reconfigurable hardware. ACM SIGPLAN Notices, 39(7):249--256, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. M. Herbordt, T. VanCourt, Y. Gu, B. Sukhwani, A. Conti, J. Model, and D. DiSabello. Achieving high performance with FPGA-based computing. IEEE Computer, 40(3):50--57, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. C. T. Johnston. VERTIPH: A visual environment for real-time image processing on hardware. PhD thesis, 2009.Google ScholarGoogle Scholar
  22. C. T. Johnston and D. G. Bailey. FPGA implementation of a single pass connected components algorithm. In IEEE International Symposium on Electronic Design, Test and Applications, pages 228--231, 2008.Google ScholarGoogle ScholarCross RefCross Ref
  23. Y. K. Lim, L. Kleeman, and T. Drummond. Algorithmic methodologies for FPGA-based vision. Machine Vision and Applications, 24(6):1197--1211, 2013.Google ScholarGoogle ScholarCross RefCross Ref
  24. N. Ma, D. Bailey, and C. Johnston. Optimised single pass connected components analysis. In International Conference on Field Programmable Technology, pages 185--192, 2008.Google ScholarGoogle ScholarCross RefCross Ref
  25. W. Meeus, K. V. Beeck, T. Goedeme, J. Meel, and D. Stroobandt. An overview of today's high-level synthesis tools. Design Automation for Embedded Systems, 16(3):31--51, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. W. Meeus and D. Stroobandt. Automating data reuse in high-level synthesis. In Conference on Design, Automation and Test in Europe, 4 pages, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. R. Mosqueron, J. Dubois, and M. Paindavoine. High-speed smart camera with high resolution. EURASIP Journal on Embedded Systems, 2007(Article ID 24163):8 pages, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. I. Page. Closing the gap between hardware and software: Hardware-software cosynthesis at Oxford. In IEE Colloquium on Hardware-Software Cosynthesis for Reconfigurable Systems (Digest No: 1996/036), pages 2/1--2/11, 1996.Google ScholarGoogle ScholarCross RefCross Ref
  29. A. A. H. B. A. Rahman, R. Thavot, M. Mattavelli, and P. Faure. Hardware and software synthesis of image filters from CAL dataflow specification. In 2010 Conference on Ph.D. Research in Microelectronics and Electronics, 4 pages, 2010.Google ScholarGoogle Scholar
  30. A. Rosenfeld and J. Pfaltz. Sequential operations in digital picture processing. Journal of the Association for Computing Machinery, 13(4):471--494, 1966. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. J. Sanguinetti. Understanding high-level synthesis design's advantages. EE Times Asia, pages 1--4, 26 April 2010.Google ScholarGoogle Scholar
  32. W. Savage, D. Garrett, S. Rawat, and O. Gunasekara. Panel discussion: Who drives whom? High-level synthesis or IP reuse? In Design Automation Conference, 2014.Google ScholarGoogle Scholar
  33. M. Schmid, N. Apelt, F. Hannig, and J. Teich. An image processing library for C-based high-level synthesis. In 24th International Conference on Field Programmable Logic and Applications, 4 pages, 2014.Google ScholarGoogle ScholarCross RefCross Ref
  34. S. Sukhsawas and K. Benkrid. A high-level implementation of a high performance pipeline FFT on Virtex-E FPGAs. In IEEE Computer society Annual Symposium on VLSI, pages 229--232, 2004.Google ScholarGoogle Scholar
  35. F. M. Vallina and J. R. Alvarez. Using OpenCV and Vivado HLS to accelerate embedded vision applications in the Zync SoC. XCell Journal, 83:24--30, 2013.Google ScholarGoogle Scholar
  36. P. Wills. The hardware design of a smart camera for the robot soccer environment. BE(Hons) thesis, 1999.Google ScholarGoogle Scholar
  37. F. Winterstein, S. Bayliss, and G. A. Constantinides. High-level synthesis of dynamic data structures: A case study using Vivado HLS. In International Conference on Field Programmable Technology, pages 362--365, 2013.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. The advantages and limitations of high level synthesis for FPGA based image processing

          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
          • Published in

            cover image ACM Other conferences
            ICDSC '15: Proceedings of the 9th International Conference on Distributed Smart Cameras
            September 2015
            225 pages
            ISBN:9781450336819
            DOI:10.1145/2789116

            Copyright © 2015 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 8 September 2015

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article

            Acceptance Rates

            ICDSC '15 Paper Acceptance Rate43of48submissions,90%Overall Acceptance Rate92of117submissions,79%

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader