Formal Semantics of the PsyC language - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Reports Year : 2023

Formal Semantics of the PsyC language

Sémantique formelle du langage PsyC

Abstract

Time must be taken into account from the very start of the design of real-time systems. Because exact computation durations are usually not available in early design phase, multiple formalisms based on the concept of Multiform Logical Time have been introduced. The synchronous approach introduced a discretized abstraction of time based on logical clocks, on which computation happens logically instantaneously. While being very expressive, the synchronous approach suffer from compilation issues when mapping logical time to non-negligible real-time computation durations. In answer, the Logical Execution Time (LET) paradigm has been introduced to give such a compromise between the strong expressiveness of the synchronous approach and traditional task scheduling, making LET a perfect fit for the temporal architecture and the software integration of real-time systems. In this report, we consider a variation of LET extended with logical clocks, namely synchronous LET (sLET), implemented in the industrial language PsyC. The sLET approach — and thus PsyC — allows to specify computation to be executed inside a logical interval up to the next occurrence of a logical clock expression (i.e. in opposition to a constant duration). As sLET is based on both LET and the synchronous approach, we give in this report two operational semantics of the PsyC language: a native semantics (or big-step) based on the Structural Operational Semantics approach (S.O.S.) and a synchronous semantics defined by translation to the Esterel language. The former gathers all valid computation schedulings as an equivalence class, of which the latter provides a specific representative (as-soon-as-possible execution). We show the semantics equivalence of those two semantics at interval boundaries. While the native semantics is mainly used for compilation, future work will show how logical timing properties can be verified using those two semantics.
Le temps doit être pris en compte dès le début de la conception des systèmes temps-réel. Du fait que les durées exactes des calculs ne sont généralement pas disponibles au début de la phase de conception, plusieurs formalismes basés sur le concept de Temps Logique Multiforme ont été introduits dans la littérature. L’approche synchrone introduit une abstraction discrète du temps basée sur des horloges logiques, sur lesquels les calculs s’effectuent logiquement instantanément. Bien que très expressive, l’approche synchrone souffre de difficultés de compilation lors de l’association du temps logique à des durées de calculs non négligeables. En réponse, le paradigme Temps d’Exécution Logique (LET) a été introduit comme compromis entre l’expressivité de l’approche synchrone et l’ordonnancement temps-réel traditionnel, ce qui fait que le LET est parfaitement adapté à la modélisation d’architecture temporelle. Dans ce rapport, nous considérons une variation du LET enrichi via l’usage d’horloges logiques, que nous appellerons LET synchrone (sLET), implémenté par le langage industriel PsyC. L’approche sLET— et donc le PsyC — permet de spécifier un calcul comme étant exécuté au sein d’un intervalle de temps logique jusqu’à la prochaine occurrence d’une expression d’horloge (en opposition à une durée constante). Du fait que sLET est basé à la fois sur LET et sur l’approche synchrone, nous donnons dans ce rapport deux sémantiques opérationnelles du PsyC : une sémantique native (ou grand pas) basée sur une approche à la Plotkin (S.O.S.) et une sémantique synchrone définie par traduction vers le langage Esterel. La première regroupe tous les ordonnancement valides sous forme de classe d’équivalence, dans laquelle la seconde donne un représentant spécifique (dès que possible). Nous montrons l’équivalence sémantique de ces deux sémantiques sur les bornes des intervalles. La sémantique native est principalement utilisée pour la compilation, tandis que des travaux à venir montreront comment vérifier des propriétés de temporisation en utilisant essentiellement la sémantique synchrone.
Fichier principal
Vignette du fichier
RR-9506.pdf (804.96 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-04088177 , version 1 (10-05-2023)

Identifiers

  • HAL Id : hal-04088177 , version 1

Cite

Fabien Siron, Dumitru Potop-Butucaru, Robert de Simone, Damien Chabrol, Amira Methni. Formal Semantics of the PsyC language. RR-9506, Inria - Sophia Antipolis. 2023, pp.32. ⟨hal-04088177⟩
76 View
75 Download

Share

Gmail Facebook X LinkedIn More