Optimization of a line detection algorithm for autonomous vehicles on a RISC-V with accelerator

  1. María José Belda 1
  2. Katzalin Olcoz 1
  3. Fernando Castro 1
  4. Francisco Tirado 1
  1. 1 Complutense University of Madrid, Spain
Journal:
Journal of Computer Science and Technology

ISSN: 1666-6038

Year of publication: 2022

Volume: 22

Issue: 2

Type: Article

DOI: 10.24215/16666038.22.E10 DIALNET GOOGLE SCHOLAR lock_openOpen access editor

More publications in: Journal of Computer Science and Technology

Abstract

In recent years, autonomous vehicles have attracted the attention of many research groups, both in academia and business, including researchers from leading companies such as Google, Uber and Tesla. This type of vehicles are equipped with systems that are subject to very strict requirements, essentially aimed at performing safe operations –both for potential passengers and pedestrians– as well as carrying out the processing needed for decision making in real time. In many instances, general-purpose processors alone cannot ensure that these safety, reliability and real-time requirements are met, so it is common to implement heterogeneous systems by including accelerators. This paper explores the acceleration of a line detection application in the autonomous car environment using a heterogeneous system consisting of a general-purpose RISC-V core and a domain-specific accelerator. In particular, the application is analyzed to identify the most computationally intensive parts of the code and it is adapted accordingly for more efficient processing. Furthermore, the code is executed on the aforementioned hardware platform to verify that the execution effectively meets the existing requirements in autonomous vehicles, experiencing a 3.7x speedup with respect to running without accelerator.

Bibliographic References

  • S.-C. Lin et al., “The architectural implications of autonomous driving: Constraints and acceleration,” in Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS ’18, p. 751–766, 2018.
  • S. Kato, E. Takeuchi, Y. Ishiguro, Y. Ninomiya, K. Takeda, and T. Hamada, “An open approach to autonomous vehicles,” IEEE Micro, vol. 35, pp. 60–68, 11 2015.
  • P. Bose, A. J. Vega, S. V. Adve, V. S. Adve, and V. J. Reddi, “Secure and resilient socs for autonomous vehicles,” in Proceedings of the 3rd International Workshop on Domain Specific System Architecture (DOSSA), pp. 1–6, 2021.
  • B. Yu et al., “Building the computing system for autonomous micromobility vehicles: Design constraints and architectural optimizations,” in Proceedings of 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), pp. 1067–1081, 2020.
  • J. Zhao, B. Korpan, A. Gonzalez, and K. Asanovic, “Sonicboom: The 3rd generation berkeley out-of-order machine,” in Proceedings of the 4th Workshop on Computer Architecture Research with RISC-V (CARRV), pp. 1–7, 2020.
  • H. Genc et al., “Gemmini: Enabling systematic deeplearning architecture evaluation via full-stack integration,” in Proceedings of the 58th Annual Design Automation Conference (DAC), pp. 769–774, 2021.
  • “The 6 levels of vehicle autonomy explained.” Available at: https://www.synopsys.com/automotive/autonomous-driving-levels.html. Accessed on 2022-09-07.
  • O. Vermesan et al., IoT technologies for connected and automated driving applications. Internet of Things - The Call of the Edge, pp. 306–332. River Publishers, Oct. 2020.
  • R. Coppola and M. Morisio, “Connected car: technologies, issues, future trends,” ACM Computing Surveys (CSUR), vol. 49, no. 3, pp. 1–36, 2016.
  • T. Rateke et al., “Passive vision region-based road detection: A literature review,” ACM Computing Surveys (CSUR), vol. 52, no. 2, pp. 1–34, 2019.
  • F. Bounini, D. Gingras, V. Lapointe, and H. Pollart, “Autonomous vehicle and real time road lanes detection and tracking,” in IEEE Vehicle Power and Propulsion Conference (VPPC), pp. 1–6, 2015.
  • G. Zhang, N. Zheng, C. Cui, Y. Yan, and Z. Yuan, “An efficient road detection method in noisy urban environment,” in Proceedings of IEEE Intelligent Vehicles Symposium, pp. 556 – 561, 2009.
  • A. Amid et al., “Chipyard: Integrated design, simulation, and implementation framework for custom socs,” IEEE Micro, vol. 40, no. 4, pp. 10–21, 2020.
  • S. Karandikar et al., “Firesim: Fpga-accelerated cycleexact scale-out system simulation in the public cloud,” in Proceedings of ACM/IEEE 45th Annual International Symposium on Computer Architecture (ISCA), pp. 29–42, 2018.
  • “Amazon web services (aws).” Available at: https://aws.amazon.com/es, 2021. Accessed on 2022-09-07.
  • K. Asanovic et al., “The rocket chip generator. eecs department,” University of California, Berkeley, Tech. Rep. UCB/EECS-2016-17, vol. 4, 2016.
  • J. F. Canny, “Finding edges and lines in images,” Theory of Computing Systems - Mathematical Systems Theory, p. 16, 1983.
  • R. O. Duda and P. E. Hart, “Use of the hough transformation to detect lines and curves in pictures,” Communications of the ACM, vol. 15, no. 1, p. 11–15, 1972.
  • M. J. Belda, “Image processing in autonomous vehicles on a risc-v with accelerator,” Master Thesis, UCM, 2022.
  • A. Magyar et al., “Golden gate: Bridging the resourceefficiency gap between asics and fpga prototypes,” in Proceedings of IEEE/ACM International Conference on Computer-Aided Design (ICCAD), pp. 1–8, 2019.