Skip to main content

Implementation and Analysis of Convolution Image Filtering with RISC-V Based Architecture

  • Conference paper
  • First Online:
VLSI Design and Test (VDAT 2022)

Abstract

Convolution image filtering technique has been extensively used in image processing applications for sharpening the image, detecting the edges, blurring the image, noise removal etc. Optimization of the convolution algorithm for execution speed has become crucial as the size of the image increases. Loop unrolling is an optimization technique that is adopted for reducing the execution time of the algorithm by reducing the overheads caused by the loops in the algorithm implementation. RISC-V ISA based processing elements being open source are widely used in academia and industry. Hence, in this paper, we have attempted to implement convolution algorithm sequentially and with loop unrolling technique on a custom-developed RISC-V soft core processor. Further, to enhance the speed of operation, a multiprocessor framework has also been developed with Network-on-Chip based inter-core communication platform. The implemented algorithms are tested with RARS tool at assembly level and with Vivado tool at the architectural level. The architecture is also synthesized and implemented on Kintex FPGA evaluation platform.

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 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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

Similar content being viewed by others

References

  1. Capobianco, G., et al.: Image convolution: a linear programming approach for filters design. Soft Comput. 25(14), 8941–8956 (2021). https://doi.org/10.1007/s00500-021-05783-5

  2. Toolchain Primer. Power and Performance in Enterprise Systems, pp. 207–239 (2015)

    Google Scholar 

  3. Loop unrolling - Wikipedia. https://en.wikipedia.org/wiki/Loop_unrolling

  4. Getting started with RISC-V and its Architecture - Softnautics. https://www.softnautics.com/getting-started-with-risc-v-and-its-architecture/

  5. Waterman, A., Asanovi’c, K. (eds.): The RISC-V Instruction Set Manual, Volume I: User-Level ISA, Document Version 2.2, RISC-V Foundation (2017). https://riscv.org/wp-content/uploads/2017/05/riscv-spec-v2.2.pdf. Accessed 07 Nov 2021

  6. Garcia-Ramirez, R., et al.: Siwa: a RISC-V RV32I based micro-controller for implantable medical applications. In: 2020 IEEE 11th Latin American Symposium on Circuits and Systems, LASCAS 2020, February 2020

    Google Scholar 

  7. Bilbao-Castro, J.R., Martínez, J.A., Baldó, J.I.A.: Multicore computing. In: Dubitzky, W., Wolkenhauer, O., Cho, K.H., Yokota, H. (eds.) Encyclopedia of Systems Biology, pp. 1461–1463. Springer, New York (2013). https://doi.org/10.1007/978-1-4419-9863-7_1000

    Chapter  Google Scholar 

  8. Bosi, B., Bois, G., Savaria, Y.: Reconfigurable pipelined 2-D convolvers for fast digital signal processing. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 7(3), 299–308 (1999)

    Google Scholar 

  9. Yazhuo, D., Jie, Z., Yong, D., Lin, D., Jinjing, Z.: Impact of loop unrolling on area, throughput and clock frequency for window operations based on a data schedule method. In: Proceedings - 1st International Congress on Image and Signal Processing, CISP 2008, vol. 1, pp. 641–645 (2008)

    Google Scholar 

  10. Akgün, D.: Performance evaluations for parallel image filter on multi - core computer using Java threads. Int. J. Comput. Appl. 74(11), 13–19 (2013)

    Google Scholar 

  11. Samyan, Q.W., Sahar, W., Talha, W., Aslam, M., Martinez-Enriquez, A.M.: Real time digital image processing using point operations in multithreaded systems. Proceedings - 14th Mexican International Conference on Artificial Intelligence: Advances in Artificial Intelligence, MICAI 2015, pp. 52–57, March 2016

    Google Scholar 

  12. Pour, E.S.H.: A survey of multithreading image analysis, June 2015. http://arxiv.org/abs/1506.04472

  13. Zekri, A.S.: Multi-threaded computation of the Sobel image gradient on intel multi-core processors using OpenMP library. Int. J. Comput. Sci. Inf. Technol. 8(2), 87–100 (2016)

    Google Scholar 

  14. Micheli, G.D., Benini, L.: Networks on Chips. Morgan Kaufmann, San Fransisco (2006)

    Google Scholar 

  15. Kundu, S., Soumya, J., Chattopadhyay, S.: Design and evaluation of mesh-of-tree based network-on-chip using virtual channel router. Microprocess. Microsyst. 36(6), 471–488 (2012)

    Article  Google Scholar 

  16. RARS RISC-V Simulator [ECEN 323]. http://ecen323wiki.groups.et.byu.net/dokuwiki/doku.php?id=labs:riscv_rars

  17. Palnitker, S.: Verilog HDL. Prentice Hall Press, Upper Saddle River (2003)

    Google Scholar 

  18. UG973 (v2016.2): Vivado Design Suite User Guide, Xilinx, June 2016

    Google Scholar 

  19. Xilinx and Inc.: KC705 Evaluation Board for the Kintex-7 FPGA User Guide. www.xilinx.com

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to M. K. Aparna Nair .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Aparna Nair, M.K., Gautam, V.V., Revinipati, A., Soumya, J. (2022). Implementation and Analysis of Convolution Image Filtering with RISC-V Based Architecture. In: Shah, A.P., Dasgupta, S., Darji, A., Tudu, J. (eds) VLSI Design and Test. VDAT 2022. Communications in Computer and Information Science, vol 1687. Springer, Cham. https://doi.org/10.1007/978-3-031-21514-8_42

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-21514-8_42

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-21513-1

  • Online ISBN: 978-3-031-21514-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics