Modélisation Haut-Niveau et Prototypage virtuel de l’Ensemble du Système EchOpen
Date: | 2018-2019 |
---|
Contexte du stage
Le stage se situe dans le contexte du projet EchOpen [1], initié par l’AP-HP. Ce projet portera sur la conception d’un dispositif d’Echographie portable à bas coût, a priori intégré sur puce. Plusieurs versions de ce dispositif sont prévues, avec des exigences de miniaturisation, basse consommation et bas coût de plus en plus fortes. En répondant avec succès à l’appel EITHealth, le consortium a rassemblé plusieurs partenaires (dont l’Université de Tours, Université Libre de Bruxelles, ENS Cachan, EPFL et le LIP6). La responsable du côté LIP6 est Roselyne Chotin Avot de l’équipe CIAN. Les équipes CIAN et ALSOC ont à leur charge plusieurs volets, dont l’exploration architecturale et la modélisation haut-niveau/prototypage virtuel. Les systèmes embarqués tel que celui que prévoit EchOpen, sont de plus en plus souvent des systèmes hétérogènes, qui nécessitent des composants analogiques/mixed signal (AMS) et radio fréquence (RF) autant que numériques. C’est de ce point de vue que nous avons prévu d’aborder cette grande étude de cas, qui nous ouvre un nouveau domaine, médical.
"SystemC AMS extensions" est un standard décrivant une extension de SystemC pour des fonctionnalités analogiques, RF et AMS [2]. Plusieurs "Models of Computation" (MoC) sont définis dans le standard : DE (Discrete event c’est à dire numérique), Timed Data Flow (TDF), Linear Signal Flow (LSF) et Electrical Linear Networks (ELN). Le LIP6 a activement participé à des travaux autour de SystemC-AMS [3]. TTool , logiciel libre, permet de concevoir, à partir d’une interface graphique UML/SysML, des applications embarquées numériques, de les simuler et vérifier formellement avec une sémantique précise (UPPAAL, ProVerif). Depuis plusieurs années, TTool a été étendu pour permettre la génération de plate-formes virtuelles numériques SoCLib, bibliothèque de modèles de composants écrits en SystemC. Ces plate-formes se situent au niveau cycle-bit précis et permettent des simulations très détaillées.
Nous avons, dans plusieurs stages de niveau Master 1 et Master 2 précédents, développé un outil capable d’intégrer des composants AMS dans le flot de conception de TTool. Pour cela, nous nous sommes limités aux MoC DE, TDF et une partie d’ELN dans un premier temps, suffisant pour modéliser la plupart des applications qui nous intéressent jusque-là (surtout dans le domaine de l’automotive et de la robotique). Les prototypes virtuels intègrent ces concepts avec le paradigme de TTool du "correct par construction" (le code est uniquement généré si le modèle a été validé) et permettent désormais de faire fonctionner du logiciel [4]. La grande difficulté des ces dernières applications est qu’on ne dispose a priori pas de tous les détails concernant leur implémentation, l’industrie ayant l’intérêt légitime à protéger ses intérêts.
EchOpen est fondé sur le principe du logiciel, mais aussi du matériel, libre. Une application dont nous possédons des informations complètes sera un défi intéressant, même si dans cette première phase, du au niveau d’abstraction auquels nous avons prévu de travailler, nous en sommes en partie indépendants.
Objectifs du stage
L’objectif est de modéliser une version future de l’ensemble du dispositif EchOpen, a priori intégrée sur puce et comprenant parties analogiques, numériques (avec code), en amont et à un très haut niveau. Cette version aura de l’ordre de grandeur de 20 émetteurs/récepteurs ultrason et devra tenir dans un smartphone. Le résultat attendu sera une modélisation hétérogène sous TTool permettant la génération d’un prototype virtuel fonctionnant sous SystemC-AMS.
Travail à effectuer
Avec la nouvelle extension AMS de TTool, une plate-forme virtuelle intégrant les parties numériques et analogiques et permettant l’exploration de l’espace de conception doit être conçue "from scratch", à partir des informations fournies par les membres du consortium EchOpen. TTool permet actuellement la modélisation numérique à deux niveaux (partitionnement, conception et déploiement du logiciel) pour générer la partie DE/SoCLib ; la modélisation des clusters TDF se fait sur un canevas spécifique et est ensuite intégrée à la plateforme SoCLib à l’aide de modules interfaces et en tant que targets. La synchronisation entre les domaines DE et TDF est vérifiée avant la génération de code. Ces capacités seront éventuellement à étendre pour s’adapter à l’étude de cas, dans la mesure où d’autres MoC seront à intégrer.
Un intérêt particulier est porté sur la conception de "briques" réutilisables pour à terme pouvoir créer une bibliothèque "plug-in" pour TTool, spécifique à ce domaine d’applications.
Compétences requises
Le stage nécessite des bonnes capacités en programmation (Java, C++, SystemC) pour la compréhension de TTool et un fort interêt pour l’aspect "outils de conception" (UE MOBJ) et des connaissances en architecture de multi-processeurs tels qu’enseignées en ARCHI2. Des bases solides de conception analogique, de modélisation des systèmes hétérogènes et une ouverture à la modélisation haut-niveau qui sort du cadre des matières enseignées au master SESI.
Encadrement LIP6
Le projet commence début 2019 ; le stage, qui portera sur la modélisation très en amont, s’intègre donc bien dans le déroulement du projet. Le travail a un fort aspect fédérateur et permettra au stagiaire de mieux connaître plusieurs des équipes du département; il ou elle profitera de la dynamique autour de cette nouvelle activité.
Un projet ANR a été déposé par Daniela Genius avec des partenaires allemands et français. Le projet EchOpen prévoit une poursuite en forme de CDD d’ingénieur, la poursuite en thèse sur le même sujet dépend de l’acceptation du projet par l’ANR.
Le stage de cinq ou six mois sera remunéré à environ 554.40 Euros/mois et localisé au dé- partement SoC du LIP6. Il se déroulera dans le cadre du projet "EchOpen" et sera encadré par Daniela Genius avec un soutien de Roselyne Chotin-Avot et Marie-Minerve Louërat
Daniela Genius et Roselyne Chotin-Avot et Marie-Minerve Louerat
Bibliographie
[1] | EchOpen consortium. The echopen project. Technical report, AP-HP, 2018. echopen |
[2] | Alain Vachoux, Christoph Grimm, and Karsten Einwich. Analog and mixed signal modelling with systemC-AMS. In ISCAS (3), pages 914–917. IEEE, 2003. |
[3] | Heterogeneous Inception. In https ://www-soc.lip6.fr/trac/hinception, 2012-2015. |
[4] | R. Cortes Porto. Integration of SystemC-AMS Simulation Platforms into TTool. PhD thesis, TU Kaiserslautern/Sorbonne Université (master’s thesis, encadré par D. Genius), 2018. |