Abstract:
Application-specific systems with FPGA accelerators are often designed using high-level synthesis or hardware construction tools. Nowadays, there are many frameworks available, both open-source and commercial. In this work, we attempt to fairly compare several existing solutions (languages and tools), including Verilog (our baseline), Chisel, Bluespec SystemVerilog (Bluespec Compiler), DSLX (XLS), MaxJ (MaxCompiler), and C (Bambu and Vivado HLS). Our analysis has been carried out using a representative example of 8×8 inverse discrete cosine transform (IDCT), a widely used algorithm engaged in, among others, JPEG and MPEG decoders. The metrics under consideration include: (a) the degree of automation (how much less code is required compared to Verilog), (b) the controllability (possibility to achieve given design characteristics, namely a given ratio of the performance and area), and (c) the flexibility (ease of design modification to achieve certain characteristics). Rather than focusing on computational kernels only, we have developed AXI-Stream wrappers for the synthesized implementations, which allows adequately evaluating characteristics of the designs when they are used as parts of real computer systems. Our study shows clear examples of what impact specific optimizations (tool settings and source code modifications) have on the overall system performance and area. It emphasizes how important is to be able to control the balance between the communication interface utilization and the computational kernel performance and delivers clear guidelines for the next generation tools for designing FPGA accelerator based systems.
Citation:
A. S. Kamkin, M. M. Chupilko, M. S. Lebedev, S. A. Smolov, G. Gaydadjiev, “Comparison of high-level synthesis and hardware construction tools”, Proceedings of ISP RAS, 34:5 (2022), 7–22
\Bibitem{KamChuLeb22}
\by A.~S.~Kamkin, M.~M.~Chupilko, M.~S.~Lebedev, S.~A.~Smolov, G.~Gaydadjiev
\paper Comparison of high-level synthesis and hardware construction tools
\jour Proceedings of ISP RAS
\yr 2022
\vol 34
\issue 5
\pages 7--22
\mathnet{http://mi.mathnet.ru/tisp718}
\crossref{https://doi.org/10.15514/ISPRAS-2022-34(5)-1}
Linking options:
https://www.mathnet.ru/eng/tisp718
https://www.mathnet.ru/eng/tisp/v34/i5/p7
This publication is cited in the following 6 articles:
Aleksandr Poluektov, Konstantin Zolnikov, A. Achkasov, Yu. Chevychelov, “Increasing formalization of tasks of verification of topology and electrical diagram for CAD-CAM design systems”, Modeling of systems and processes, 17:1 (2024), 102
Tatyana Skvortsova, Konstantin Zolnikov, Aleksey Plotnikov, I Scorkin, “Formalization of topology and electrical circuit verification for computer-aided design systems”, Modeling of systems and processes, 2024, 59
Konstantin Zolnikov, Dmitriy Shehovcov, Nikolay Litvinov, Maksim Solodilov, “Creation of means of checking an electrical circuit using a cir-cuit of test external influences”, Modeling of systems and processes, 2024, 34
Dmitriy Shehovcov, A. Plotnikov, Konstantin Zolnikov, Anton Zarevich, “Technology of RTL product description model development in the development of CAD soft-ware and analytical complex”, Modeling of systems and processes, 16:3 (2023), 79
Aleksandr Poluektov, Dmitriy Shehovcov, I Skorkin, Pavel Chubunov, “Integrating the Calibre software product into the Cadence Virtuoso environment and increasing the intelligent properties of CAD IC design”, Modeling of systems and processes, 16:4 (2023), 71
Dmitriy Shehovcov, Sergey Vital'evich Stoyanov, Tatyana Skvortsova, O. Oksyuta, “Design route and testing of RTL analog blocks of the CAD software and analytical complex”, Modeling of systems and processes, 16:3 (2023), 86