A synchronous functional language with integer clocks

Résumé : Cette thèse traite de la conception et implémentationd’un langage de programmation pour les systèmes detraitement de flux en temps réel, comme l’encodagevidéo. Le modèle des réseaux de Kahn est bien adaptéà ce domaine et y est couramment utilisé. Dans cemodèle, un programme consiste en un ensemble deprocessus parallèles communicant à travers des filesmono-producteur, mono-consommateur. La force dumodèle réside en son déterminisme.Les langages synchrones fonctionnels comme Lustresont dédiés aux systèmes embarqués critiques. Un programmeLustre définit un réseau de Kahn synchronequi peut être exécuté avec des files bornées et sans blocage.Cette propriété est garantie par un système detypes dédié, le calcul d’horloge, qui établit une échellede temps globale à un programme. Cette échelle detemps globale est utilisée pour définir les horloges, sé-quences booléennes indiquant pour chaque file, et àchaque pas de temps, si un processus produit ou consommeune donnée. Cette information sert non seulementà assurer la synchronie mais également à générerdu logiciel ou matériel à état fini.Nous proposons et étudions les horloges entières, unegénéralisation des horloges booléennes autorisant desentiers naturels arbitrairement grands. Les horlogesentières décrivent la production ou consommation deplusieurs valeurs depuis une même file au cours d’uninstant. Nous les utilisons pour définir la constructiond’échelle de temps locale, qui peut masquer despas de temps cachés par un sous-programme au contexteenglobant.Ces principes sont intégrés à un calcul d’horloge pourun langage fonctionnel d’ordre supérieur. Nous étudionsses propriétés et prouvons en particulier que lesprogrammes bien typés ne bloquent pas. Nous compilonsles programmes typés vers des circuits numériquessynchrones en adaptant le schéma de générationde code dirigé par les horloges de Lustre. L’informationde typage contrôle certains compromis entre temps etespace dans les circuits générés.
Type de document :
Thèse
Computation and Language [cs.CL]. PSL Research University, 2016. English. 〈NNT : 2016PSLEE020〉
Liste complète des métadonnées

Littérature citée [147 références]  Voir  Masquer  Télécharger

https://tel.archives-ouvertes.fr/tel-01490431
Contributeur : Abes Star <>
Soumis le : mercredi 15 mars 2017 - 12:15:17
Dernière modification le : vendredi 7 juillet 2017 - 13:51:14
Document(s) archivé(s) le : vendredi 16 juin 2017 - 13:37:25

Fichier

guattothesis.pdf
Version validée par le jury (STAR)

Identifiants

  • HAL Id : tel-01490431, version 1

Collections

STAR | INRIA | PSL

Citation

Adrien Guatto. A synchronous functional language with integer clocks. Computation and Language [cs.CL]. PSL Research University, 2016. English. 〈NNT : 2016PSLEE020〉. 〈tel-01490431〉

Partager

Métriques

Consultations de
la notice

161

Téléchargements du document

49