Description and compilation of ad-hoc arithmetic operators in the context of High-Level Synthesis - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Thèse Année : 2023

Description and compilation of ad-hoc arithmetic operators in the context of High-Level Synthesis

Description et compilation d'opérateurs arithmétique ad-hoc dans un contexte de synthèse de haut niveau

Résumé

High-level synthesis allows non-specialist software developers to generate digital circuit descriptions using high-level programming languages. However, existing tools support only few numerical formats and standard arithmetic operators. This thesis introduces many technics to support new formats and new operators. First, the study focuses on what is doable using only the C++ meta-programming constructs supported by main HLS tools. A library of elementary operations for IEEE-754 and posit formats of arbitrary sizes is introduced. It is used as a support to compare the hardware cost of implementing these formats. The implementation of evaluators of arbitrary mathematical functions reaches the limit of the meta-programming approach. A second step is then to study the possibility that are brought by modifying the HLS compile flow. Implementing arbitrary function evaluator is the objective of this study. A library allowing developers to specify operators that approximate arbitrary functions at arbitrary precision is introduced. Two methods are developed to interface this library with the HLS tools, depending on whether the HLS compiler sources can be modified.
Les techniques de synthèse de haut niveau permettent aux programmeurs non spécialistes de générer des de- scriptions de circuits numériques en utilisant des langages de programmation généralistes. Cependant, les outils existants ne supportent qu’un petit nombre de formats numériques et un petit nombre d’opérateurs standards. Cette thèse présente plusieurs techniques pour rajouter le support de nouveaux formats et de nouveaux opérateurs. Dans un premier temps, l’étude se focalise sur ce qui est réalisable en se restreignant aux fonctionnalités de métaprogrammation du standard C++ supporté par les outils HLS. Une bibliothèque d’opérateurs élémentaires pour les formats IEEE-754 et posit de taille arbitraire est proposée. Elle sert de base à une étude de cas comparant le coût matériel de l’implémentation de ces deux formats. L’implémentation d’évaluateurs de fonctions mathématiques arbitraires se heurte aux limites de la première approche. Dans un second temps, l’étude se porte sur les possibilités offertes par la modification du flot de compilation HLS, avec comme objectif de supporter cette fonctionnalité. Une bibliothèque permettant au développeur de spécifier des opérateurs pour approximer des fonctions arbitraires en précision arbitraire est présentée. Deux approches pour l’interfaçage de cette bibliothèque avec les outils de HLS sont proposées, selon que l’on a ou pas accès aux sources des compilateurs HLS.
Fichier principal
Vignette du fichier
these.pdf (1.43 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)

Dates et versions

tel-04344643 , version 1 (14-12-2023)

Identifiants

  • HAL Id : tel-04344643 , version 1

Citer

Luc Forget. Description and compilation of ad-hoc arithmetic operators in the context of High-Level Synthesis. Hardware Architecture [cs.AR]. INSA de Lyon, 2023. English. ⟨NNT : 2023ISAL0046⟩. ⟨tel-04344643⟩
48 Consultations
150 Téléchargements

Partager

Gmail Facebook X LinkedIn More