Hector Gerardo Muñoz Hernandez, Florian Fricke, Muhammed Al Kadi, M. Reichenbach, Michael Hübner
{"title":"Edge GPU based on an FPGA Overlay Architecture using PYNQ","authors":"Hector Gerardo Muñoz Hernandez, Florian Fricke, Muhammed Al Kadi, M. Reichenbach, Michael Hübner","doi":"10.1109/SBCCI55532.2022.9893229","DOIUrl":null,"url":null,"abstract":"Using Graphical Processing Units (GPUs) to accelerate applications such as Deep Neural Networks (DNNs) or image processing tasks has been gaining lots of attention for some time now due to their high performance. This has brought a lot of attention to creating toolflows where hardware designing expertise is not a requirement anymore, resulting in making the technology accessible to as many users as possible. However, hardware knowledge is still important to make the toolflows run efficiently on the target platform. In this paper, we introduce a framework that uses Jupyter Notebooks, a browser based interactive computing environment, and PYNQ which is as a high-level-abstraction interface between the Programmable Logic (PL) and the Processing System (PS) from which the user can unlock the full potential of a highly customizable soft-core GPU running on an Field-programmable Gate Array (FPGA). The framework is open-source and requires only a few set-up steps to get applications running by re-using the existing Jupyter Notebooks as templates, making it ideal for fast prototyping and educational purposes. Moreover, there is also the possibility to customize the architecture of the target hardware to fit performance, resource utilization, and functional requirements. This framework also supports floating-point operations and can be ported to System on Chip (SoC) devices like the Xilinx Zynq-7000 family, among others.","PeriodicalId":231587,"journal":{"name":"2022 35th SBC/SBMicro/IEEE/ACM Symposium on Integrated Circuits and Systems Design (SBCCI)","volume":"36 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-08-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 35th SBC/SBMicro/IEEE/ACM Symposium on Integrated Circuits and Systems Design (SBCCI)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SBCCI55532.2022.9893229","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Using Graphical Processing Units (GPUs) to accelerate applications such as Deep Neural Networks (DNNs) or image processing tasks has been gaining lots of attention for some time now due to their high performance. This has brought a lot of attention to creating toolflows where hardware designing expertise is not a requirement anymore, resulting in making the technology accessible to as many users as possible. However, hardware knowledge is still important to make the toolflows run efficiently on the target platform. In this paper, we introduce a framework that uses Jupyter Notebooks, a browser based interactive computing environment, and PYNQ which is as a high-level-abstraction interface between the Programmable Logic (PL) and the Processing System (PS) from which the user can unlock the full potential of a highly customizable soft-core GPU running on an Field-programmable Gate Array (FPGA). The framework is open-source and requires only a few set-up steps to get applications running by re-using the existing Jupyter Notebooks as templates, making it ideal for fast prototyping and educational purposes. Moreover, there is also the possibility to customize the architecture of the target hardware to fit performance, resource utilization, and functional requirements. This framework also supports floating-point operations and can be ported to System on Chip (SoC) devices like the Xilinx Zynq-7000 family, among others.