Technology - Embedded systems
Polychrony, a toolbox for embedded systems
Built around the Signal language, Polychrony facilitates the integrated development of real-time embedded applications. It is the outcome of a long cycle of research on formal modelling, as explained by the scientists of the Espresso project-team.
"Avionics, satellite-based, automobile control, process control, signal processing, real-time systems... There is no lack of fields of application", notes Loïc Besnard. Polychrony is an integrated development environment containing a set of program transformation tools, including a compiler, verification utilities and graphic editors. If industry participants want to generate code for a particular architecture, they will, for example, use some of the tools in this toolbox that can be integrated into their own working environment.
Everything began in the 1980s during a cooperation with Cnet, which has since become Orange Labs. "At the beginning, it involved constructing a language for a workstation dedicated to signal processing", explains Paul Le Guernic. This polychronic parallel language enables the description of multi-clock systems. We named it quite simply Signal. It was subsequently marketed by TNI. " This Brest-based SME later became Geensoft before joining Dassault Systèmes in June 2010.
Used by Airbus
"With TNI, during the 1990s, we then participated in many European projects on embedded systems, particularly for avionics: formal models, proof systems, etc. Then, around 2005, with the support of the French National Research Agency (ANR), we launched OpenEmbeDD.
" This open-source platform for environment integration and development for embedded systems relies on the engineering of models. "This work led us to design an engineering environment driven by models around Signal. Through the OpenEmbeDD platform, Polychrony has been made available to a very large community, and our dissemination effort continues today as part of the European projects Opees and Cesar. Polychrony is also incorporated into TopCased
," the toolbox for critical system development used particularly by Airbus Industrie.
"Polychrony has also been integrated into the Synoptic environment", adds Thierry Gautier. Designed as an environment for satellite-based systems, Synoptic was developed as part of the ANR Spacify project under the coordination of the French national centre for space studies (Cnes) and the French centre for aerospace research (Onera). As part of a joint study with Thales Alenia Space, we showed that Polychrony offers a complete, flexible code-generation infrastructure for Synoptic. "
"A major area of our research and development work now involves considering Polychrony as a computing model for assistance in the design of software architectures
", says Jean-Pierre Talpin, Espresso project-team leader. Objective: "to facilitate the analysis, simulation, verification and synthesis of embedded systems from heterogeneous specifications by describing the functions (in Scade, in Simulink) and the structure (in SysML, in AADL).
Researchers are currently especially interested in AADL. "This language for describing system architecture is used primarily in aeronautics", explains Paul Le Guernic. It has become a standard of the SAE. We will use Polychrony's tools to carry out the generation of code from this language. The user continues to work with AADL, as usual. The engineering environment driven by Polychrony models offers all of the necessary services for transforming AADL specifications into the Signal language in order to verify their logical properties, carry out architecture simulation and estimate run time. "
Unlike other synchronous languages, such as Lustre or Estere, "when we assemble several components with Signal, we remain in the same formal computing model. This provides greater assurance and greater flexibility to the user. Polychrony will allow industry to use the technology of the Signal language as direct support for their current design flow. They will be able to use the services in the toolbox based on their needs. " The code generator will then need to be certified, if necessary. "This falls instead to a company that could market this technology. For this, we will team up with other partners as part of collaborative projects following the GeneAuto project. "