Ingo Hoyer, Alexander Utz, Christoph Hoog Antink, Karsten Seidl
{"title":"tinyHLS: a novel open source high level synthesis tool targeting hardware accelerators for artificial neural network inference.","authors":"Ingo Hoyer, Alexander Utz, Christoph Hoog Antink, Karsten Seidl","doi":"10.1088/1361-6579/ada8f0","DOIUrl":null,"url":null,"abstract":"<p><p><i>Objective.</i>In recent years, wearable devices such as smartwatches and smart patches have revolutionized biosignal acquisition and analysis, particularly for monitoring electrocardiography (ECG). However, the limited power supply of these devices often precludes real-time data analysis on the patch itself.<i>Approach.</i>This paper introduces a novel Python package, tinyHLS (High Level Synthesis), designed to address these challenges by converting Python-based AI models into platform-independent hardware description language code accelerators. Specifically designed for convolutional neural networks, tinyHLS seamlessly integrates into the AI developer's workflow in Python TensorFlow Keras. Our methodology leverages a template-based hardware compiler that ensures flexibility, efficiency, and ease of use. In this work, tinyHLS is first-published featuring templates for several layers of neural networks, such as dense, convolution, max and global average pooling. In the first version, rectified linear unit is supported as activation. It targets one-dimensional data, with a particular focus on time series data.<i>Main results.</i>The generated accelerators are validated in detecting atrial fibrillation on ECG data, demonstrating significant improvements in processing speed (62-fold) and energy efficiency (4.5-fold). Quality of code and synthesizability are ensured by validating the outputs with commercial ASIC design tools.<i>Significance.</i>Importantly, tinyHLS is open-source and does not rely on commercial tools, making it a versatile solution for both academic and commercial applications. The paper also discusses the integration with an open-source RISC-V and potential for future enhancements of tinyHLS, including its application in edge servers and cloud computing. The source code is available on GitHub:https://github.com/Fraunhofer-IMS/tinyHLS.</p>","PeriodicalId":20047,"journal":{"name":"Physiological measurement","volume":" ","pages":""},"PeriodicalIF":2.3000,"publicationDate":"2025-01-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Physiological measurement","FirstCategoryId":"5","ListUrlMain":"https://doi.org/10.1088/1361-6579/ada8f0","RegionNum":4,"RegionCategory":"医学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"BIOPHYSICS","Score":null,"Total":0}
引用次数: 0
Abstract
Objective.In recent years, wearable devices such as smartwatches and smart patches have revolutionized biosignal acquisition and analysis, particularly for monitoring electrocardiography (ECG). However, the limited power supply of these devices often precludes real-time data analysis on the patch itself.Approach.This paper introduces a novel Python package, tinyHLS (High Level Synthesis), designed to address these challenges by converting Python-based AI models into platform-independent hardware description language code accelerators. Specifically designed for convolutional neural networks, tinyHLS seamlessly integrates into the AI developer's workflow in Python TensorFlow Keras. Our methodology leverages a template-based hardware compiler that ensures flexibility, efficiency, and ease of use. In this work, tinyHLS is first-published featuring templates for several layers of neural networks, such as dense, convolution, max and global average pooling. In the first version, rectified linear unit is supported as activation. It targets one-dimensional data, with a particular focus on time series data.Main results.The generated accelerators are validated in detecting atrial fibrillation on ECG data, demonstrating significant improvements in processing speed (62-fold) and energy efficiency (4.5-fold). Quality of code and synthesizability are ensured by validating the outputs with commercial ASIC design tools.Significance.Importantly, tinyHLS is open-source and does not rely on commercial tools, making it a versatile solution for both academic and commercial applications. The paper also discusses the integration with an open-source RISC-V and potential for future enhancements of tinyHLS, including its application in edge servers and cloud computing. The source code is available on GitHub:https://github.com/Fraunhofer-IMS/tinyHLS.
期刊介绍:
Physiological Measurement publishes papers about the quantitative assessment and visualization of physiological function in clinical research and practice, with an emphasis on the development of new methods of measurement and their validation.
Papers are published on topics including:
applied physiology in illness and health
electrical bioimpedance, optical and acoustic measurement techniques
advanced methods of time series and other data analysis
biomedical and clinical engineering
in-patient and ambulatory monitoring
point-of-care technologies
novel clinical measurements of cardiovascular, neurological, and musculoskeletal systems.
measurements in molecular, cellular and organ physiology and electrophysiology
physiological modeling and simulation
novel biomedical sensors, instruments, devices and systems
measurement standards and guidelines.