Skip to Main content Skip to Navigation
Theses

High-performance floating-point computing on reconfigurable circuits

Bogdan Mihai Pasca 1, 2
2 ARENAIRE - Computer arithmetic
Inria Grenoble - Rhône-Alpes, LIP - Laboratoire de l'Informatique du Parallélisme
Résumé : De plus en plus de constructeurs proposent des accélérateurs de calculs à base de circuits reconfigurables FPGA, cette technologie présentant bien plus de souplesse que le microprocesseur. Valoriser cette flexibilité dans le domaine de l'accélération de calcul flottant en utilisant les langages de description de circuits classiques (VHDL ou Verilog) reste toutefois très difficile, voire impossible parfois. Cette thèse a contribué au développement du logiciel FloPoCo, qui offre aux utilisateurs familiers avec VHDL un cadre C++ de description d'opérateurs arithmétiques génériques adapté au calcul reconfigurable. Ce cadre distingue explicitement la fonctionnalité combinatoire d'un opérateur, et la problématique de son pipeline pour une précision, une fréquence et un FPGA cible donnés. Afin de pouvoir utiliser FloPoCo pour concevoir des opérateurs haute performance en virgule flottante, il a fallu d'abord concevoir des blocs de bases optimisés. Nous avons d'abord développé des additionneurs pipelinés autour des lignes de propagation de retenue rapides, puis, à l'aide de techniques de pavages, nous avons conçu de gros multiplieurs, possiblement tronqués, utilisant des petits multiplieurs. L'évaluation de fonctions élémentaires en flottant implique souvent l'évaluation en virgule fixe d'une fonction. Nous présentons un opérateur générique de FloPoCo qui prend en entrée l'expression de la fonction à évaluer, avec ses précisions d'entrée et de sortie, et construit un évaluateur polynomial optimisé de cette fonction. Ce bloc de base a permis de développer des opérateurs en virgule flottante pour la racine carrée et l'exponentielle qui améliorent considérablement l'état de l'art. Nous avons aussi travaillé sur des techniques de compilation avancée pour adapter l'exécution d'un code C aux pipelines flexibles de nos opérateurs. FloPoCo a pu ainsi être utilisé pour implanter sur FPGA des applications complètes.
Document type :
Theses
Complete list of metadatas

Cited literature [132 references]  Display  Hide  Download

https://tel.archives-ouvertes.fr/tel-00654121
Contributor : Abes Star :  Contact
Submitted on : Thursday, April 26, 2012 - 6:22:31 PM
Last modification on : Thursday, November 21, 2019 - 2:27:12 AM
Document(s) archivé(s) le : Thursday, December 15, 2016 - 3:18:38 AM

File

PASCA_Bogdan_2011_-_These.pdf
Version validated by the jury (STAR)

Identifiers

  • HAL Id : tel-00654121, version 2

Collections

Citation

Bogdan Mihai Pasca. High-performance floating-point computing on reconfigurable circuits. Other [cs.OH]. Ecole normale supérieure de lyon - ENS LYON, 2011. English. ⟨NNT : 2011ENSL0656⟩. ⟨tel-00654121v2⟩

Share

Metrics

Record views

1782

Files downloads

2662