METHOD OF CREATION OF FPGA PROJECTS USING CONTINUOUS INTEGRATION AND CONTINUOUS DELIVERY TECHNOLOGY

V. Kulanov, A. Perepelitsyn

Èlektron. model. 2025, 47(2):92-107

https://doi.org/10.15407/emodel.47.02.092

ABSTRACT

The reasons of increasing the demand for the use of Field Programmable Gate Array (FPGA) are analyzed. The use of hardware description languages and project creation processes is considered. The possibility of using continuous integration and continuous delivery (CI/CD) technology for creation of FPGA projects is established. The fundamental stages of creating FPGA projects using hardware description languages are analyzed. Existing tools of automation and CI/CD for project creation are analyzed. The model of the process of creation of FPGA projects using CI/CD technology is presented. The sequence of steps for integrating CI/CD technology for the process of creation of FPGA projects is proposed. A detailed explanation of the process of applying the proposed sequence of steps of creation of FPGA project using CI/CD technology is proposed. A practical example of the application of the proposed method in the educational process is provided. The main contribution of this work is to simplify the process of creating a system that provides a visual and accessible code quality check, as well as allows to identify problematic areas in the code written with the help of hardware description languages. To achieve that the modern technologies of continuous integration and continuous delivery are utilized.

KEYWORDS

cloud services, hardware accelerator cards, FPGA, CI/CD, hardware description languages, creation of projects, Register Transfer Level.

REFERENCES

  1. Khan, L., Isanaka, S.P., Liou, F. (2024). FPGA-Based Sensors for Distributed Digital Manufacturing Systems: A State-of-the-Art Review. Sensors. 24, 7709. https://doi.org/3390/s24237709
  2. Perepelitsyn, A., Kulanov, V., Zarizenko, I. (2022). Method of QoS evaluation of FPGA as a Service. Radioelectronic and computer systems. 4 (104), 153-160. https://doi.org/32620/reks.2022.4.12
  3. Khan, M.I., da Silva, B. (2024). Harnessing FPGA Technology for Energy-Efficient Wearable Medical Devices. Electronics. 13, 4094. https://doi.org/10.3390/electronics13204094
  4. Bi, Y., Li, C., Benezeth, Y., Yang, F. (2023). A RTL Implementation of Heterogeneous Machine Learning Network for French Computer Assisted Pronunciation Training. Sci. 13, 5835. https://doi.org/10.3390/app13105835
  5. Sergiyenko, A.М., Mozghovyi, I.V. (2023). Hardware decompressor design. Electronic modeling. 45(5). 113-126. https://doi.org/10.15407/emodel.45.05.113
  6. Perepelitsyn, A., Kulanov, V. (2022). Technologies of FPGA-based projects Development Under Ever-changing Conditions, Platform Constraints, and Time-to-Market Pressure. Proceedings of 2022 IEEE 12th International Conference on Dependable Systems, Services and Technologies, DESSERT 2022, 1-5. https://doi.org/10.1109/DESSERT58054.2022.10018828
  7. Silva, S.N., Goldbarg, M.A.S.d.S., Silva, L.M.D.d., Fernandes, M.A.C. (2024). Real-Time Simulator for Dynamic Systems on FPGA. Electronics, 13, 4056. https://doi.org/10.3390/electronics13204056
  8. Kulanov, V., Perepelitsyn, A. (2024). A Survey of FPGA Integration Techniques in IoT Infrastructure for AI/ML Tasks. Proceedings of 2024 14th International Conference on Dependable Systems, Services and Technologies, DESSERT 2022, 1-6.
  9. Kulanov, V., Perepelitsyn, A., Zarizenko, I. (2018). Method of development and deployment of reconfigurable FPGA-based projects in cloud infrastructure. Proceedings of 2018 IEEE 9th International Conference on Dependable Systems, Services and Technologies, DESSERT 2018, 103-106. https://doi.org/10.1109/DESSERT.2018.8409108
  10. Dakić, V., Kovač, M., Slovinac, J. (2024). Evolving High-Performance Computing Data Centers with Kubernetes, Performance Analysis, and Dynamic Workload Placement Based on Machine Learning Scheduling. Electronics. 13, 2651. https://doi.org/10.3390/electronics13132651
  11. Alveo Product Selection Guide, AMD. https://docs.amd.com/v/u/en-US/alveo-product-selection-guide (accessed 2024.11.07).
  12. Szmeja, P., Fornés-Leal, A., Lacalle, I., Palau, C.E., Ganzha, M., Pawłowski, W., Paprzycki, M., Schabbink, J. (2023). ASSIST-IoT: A Modular Implementation of a Reference Architecture for the Next Generation Internet of Things. Electronics. 12, 854. https://doi.org/10.3390/electronics12040854
  13. Vitis Unified Software Platform Documentation: Application Acceleration Development, AMD, UG1393 (v2024.1). https://docs.amd.com/r/en-US/ug1393-vitis-application-acceleration/Getting-Started-with-Vitis (accessed 2024.07.24).
  14. Biagetti, G., Falaschetti, L., Crippa, P., Alessandrini, M., Turchetti, C. (2023). Open-Sour­ce HW/SW Co-Simulation Using QEMU and GHDL for VHDL-Based SoC Design. Electronics. 12, 3986. https://doi.org/10.3390/electronics12183986
  15. Vitis High-Level Synthesis User Guide, UG1399 (v2024.1). AMD https://docs.amd.com/r/en-US/ug1399-vitis-hls (accessed 2024.10.29).
  16. XRT Controlled Kernel Execution Models. Xilinx https://xilinx.github.io/XRT/master/ html/xrt_kernel_executions.html. accessed 2024/11/07.
  17. University Continuous Integration System https://ci.csn.khai.edu (accessed 2022.02.07).

Full text: PDF