A study of memory access patterns as an indicator of performance in high-level synthesis

2Citations
Citations of this article
1Readers
Mendeley users who have this article in their library.
Get full text

Abstract

CPU/FPGA hybrid systems have emerged as a viable means to achieve high performance in the field of embedded applications and computing. High-Level Synthesis (HLS) tools facilitate software designers and programmers to utilize the underlying hardware in a hybrid system without requiring deep insights into hardware. HLS tools execute the program in sequential order by default. However, these tools provide mechanisms to parallelize the code wherein the user/programmer can apply constructs such as loop-unrolling, loop-flattening, and pipelining in the form of pragmas. Along with all these constructs in place, it is also important for programmers to understand the memory access pattern used in the program for efficiently utilizing the underlying capabilities of CPU/FPGA hybrid system. Memory access patterns in array references play a major role in deciding the latency and area required for a specific computation. Four typical memory access patterns with growing input sizes in array context were exercised in Vivado HLS with C code as an input and it was observed that change in the memory access pattern leads to a different area and timing requirements and change in the coding style may improve the performance of HLS tools.

Cite

CITATION STYLE

APA

Belwal, M., & Sudarshan, T. S. B. (2018). A study of memory access patterns as an indicator of performance in high-level synthesis. In Smart Innovation, Systems and Technologies (Vol. 79, pp. 637–650). Springer Science and Business Media Deutschland GmbH. https://doi.org/10.1007/978-981-10-5828-8_61

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free