Article Dans Une Revue International Journal of Parallel Programming Année : 2025

Programming Parallelism on FPGAs with Eclat

Résumé

Eclat is a general-purpose OCaml-like programming language with synchronous semantics for designing reactive hardware applications on FPGAs. It is compiled down to hardware descriptions to realize computations as intrinsically parallel circuits able to interact with the physical world. This paper presents a formalization of Eclat with shared memory and mutability, handling concurrent memory accesses while preserving determinacy. The language is precise enough to express efficient circuits with fine control over throughput, parallelism and time-space trade-off. It also enables abstraction by letting the programmer implement, reuse and compose algorithmic skeletons such as map and pipe. The synchronous approach makes it possible to estimate the execution time of parallel programs by simple reasoning on source code for quick prototyping and optimization.

Fichier principal
Vignette du fichier
IJPP-2025-eclat-preprint.pdf (1.48 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Licence

Dates et versions

hal-05169350 , version 1 (18-07-2025)

Licence

Identifiants

Citer

Loïc Sylvestre, Jocelyn Sérot, Emmanuel Chailloux. Programming Parallelism on FPGAs with Eclat. International Journal of Parallel Programming, 2025, 53 (4), pp.26. ⟨10.1007/s10766-025-00801-7⟩. ⟨hal-05169350⟩
199 Consultations
244 Téléchargements

Altmetric

Partager

  • More