RPython high-level synthesis
Radosław Cieszewski , Maciej Grzegorz Linczuk
AbstractThe development of FPGA technology and the increasing complexity of applications in recent decades have forced compilers to move to higher abstraction levels. Compilers interprets an algorithmic description of a desired behavior written in High-Level Languages (HLLs) and translate it to Hardware Description Languages (HDLs). This paper presents a RPython based High-Level synthesis (HLS) compiler. The compiler get the configuration parameters and map RPython program to VHDL. Then, VHDL code can be used to program FPGA chips. In comparison of other technologies usage, FPGAs have the potential to achieve far greater performance than software as a result of omitting the fetch-decode-execute operations of General Purpose Processors (GPUs), and introduce more parallel computation. This can be exploited by utilizing many resources at the same time. Creating parallel algorithms computed with FPGAs in pure HDL is difficult and time consuming. Implementation time can be greatly reduced with High-Level Synthesis compiler. This article describes design methodologies and tools, implementation and first results of created VHDL backend for RPython compiler.
|Publication size in sheets||0.5|
|Book||Romaniuk Ryszard (eds.): Proc. SPIE. 10031, Photonics Applications in Astronomy, Communications, Industry, and High-Energy Physics Experiments 2016, vol. 10031, 2016, P.O. Box 10, Bellingham, Washington 98227-0010 USA , SPIE , ISBN 9781510604858, [781510604865 (electronic) ], 1170 p., DOI:10.1117/12.2257157|
|Keywords in English||High-Level Synthesis, Rpython, FPGA, Compiler, Algorithmic Synthesis, Behavioral Synthesis, Hot Plasma Physics Experiment, Python|
|Score|| = 15.0, 10-01-2020, BookChapterMatConfByConferenceseries|
= 15.0, 10-01-2020, BookChapterMatConfByConferenceseries
|Publication indicators||= 0; = 0|
* presented citation count is obtained through Internet information analysis and it is close to the number calculated by the Publish or Perish system.