| | 1 | |
| | 2 | == Contexte (SoCLib/Mutek) == |
| | 3 | |
| | 4 | |
| | 5 | |
| | 6 | L’exo-noyau HEXO a été développé au LIP6. Cet exo-noyau est destiné à |
| | 7 | des systèmes multiprocesseurs intégrés sur puce (MP-SOC). Un |
| | 8 | exo-noyau offre principalement un service d’abstraction du matériel |
| | 9 | (c’est à dire une API indépendante des spécificités des différents |
| | 10 | processeurs). On peut développer sur cette API un ensemble de |
| | 11 | bibliothèques fournissant des services de plus haut niveau. La |
| | 12 | spécificité d'HEXO est qu'il peut supporter des architectures |
| | 13 | hétérogènes massivement parallèle. HEXO est portable sur des |
| | 14 | architectures de processeurs entre 8 et 64 bits. |
| | 15 | |
| | 16 | |
| | 17 | Certaines bibliothèques ont été implémentées : une libc, le support de |
| | 18 | systèmes de fichiers, un support de thread POSIX, une couche réseau |
| | 19 | TCP/IP, le support des scripts Lua, un certain nombre de pilotes pour |
| | 20 | des périphériques divers (tty, uart, timer ...). Cet ensemble |
| | 21 | constitue le système MutekH. A ce jour MutekH supporte des plates |
| | 22 | formes matérielles de type IBMPC et MP-SOC modélisées avec SocLib, ou |
| | 23 | encore à base de micro contrôleur ainsi que les processeurs de type |
| | 24 | x86, Arm, PowerPc et MIPS. |
| | 25 | |
| | 26 | |
| | 27 | MutekH est utilisé dans le département SoC du Lip6 à travers divers |
| | 28 | projets de recherche comme Adam, DSX et prochainement Tsar. Il est |
| | 29 | aussi l'un des système d'exploitation soutenu et développé en |
| | 30 | collaboration avec le projet de plate forme de simulation SoCLib, et |
| | 31 | utilisé à ce titre dans d'autres laboratoires et entreprises. |
| | 32 | |
| | 33 | |
| | 34 | Les deux projets MutekH et SoCLib sont développés activement. De |
| | 35 | nombreuses fonctionnalités peuvent être implémentés et offrent de ce |
| | 36 | fait de nombreuses possibilités de stages. |
| | 37 | |
| | 38 | |
| | 39 | [https://www.mutekh.org/trac/mutekh/wiki] |
| | 40 | [https://www.soclib.fr/trac/dev/wiki] |
| | 41 | |
| | 42 | |
| | 43 | == Contexte (Mutek) == |
| | 44 | |
| | 45 | |
| | 46 | |
| | 47 | L’exo-noyau HEXO a été développé au LIP6. Cet exo-noyau est destiné à |
| | 48 | des systèmes multiprocesseurs intégrés sur puce (MP-SOC). Un |
| | 49 | exo-noyau offre principalement un service d’abstraction du matériel |
| | 50 | (c’est à dire une API indépendante des spécificités des différents |
| | 51 | processeurs). On peut développer sur cette API un ensemble de |
| | 52 | bibliothèques fournissant des services de plus haut niveau. La |
| | 53 | spécificité d'HEXO est qu'il peut supporter des architectures |
| | 54 | hétérogènes massivement parallèle. HEXO est portable sur des |
| | 55 | architectures de processeurs entre 8 et 64 bits. |
| | 56 | |
| | 57 | |
| | 58 | Certaines bibliothèques ont été implémentées : une libc, le support de |
| | 59 | systèmes de fichiers, un support de thread POSIX, une couche réseau |
| | 60 | TCP/IP, le support des scripts Lua, un certain nombre de pilotes pour |
| | 61 | des périphériques divers (tty, uart, timer ...). Cet ensemble |
| | 62 | constitue le système MutekH. A ce jour MutekH supporte des plates |
| | 63 | formes matérielles de type IBMPC et MP-SOC modélisées avec SocLib, ou |
| | 64 | encore à base de micro contrôleur ainsi que les processeurs de type |
| | 65 | x86, Arm, PowerPc et MIPS. |
| | 66 | |
| | 67 | |
| | 68 | MutekH est utilisé dans le département SoC du Lip6 à travers divers |
| | 69 | projets de recherche comme Adam, DSX et prochainement Tsar. Il est |
| | 70 | aussi l'un des système d'exploitation soutenu et développé en |
| | 71 | collaboration avec le projet de plate forme de simulation SoCLib, et |
| | 72 | utilisé à ce titre dans d'autres laboratoires et entreprises. |
| | 73 | |
| | 74 | |
| | 75 | MutekH est développé activement. De nombreuses fonctionnalités peuvent |
| | 76 | être implémentés et offrent de ce fait de nombreuses possibilités de |
| | 77 | stages. |
| | 78 | |
| | 79 | |
| | 80 | [https://www.mutekh.org/trac/mutekh/wiki] |
| | 81 | |
| | 82 | |
| | 83 | |
| | 84 | == Contexte (SoCLib) == |
| | 85 | |
| | 86 | |
| | 87 | |
| | 88 | Le projet SoCLib, soutenu par le CNRS et différents industriels vise |
| | 89 | le développement d'une plate-forme "ouverte" de modélisation et de |
| | 90 | simulation de systèmes intégrés sur puce. Le coeur de cette |
| | 91 | plate-forme est un ensemble de modèles de simulation de composants |
| | 92 | virtuels (IP cores) écrits en SystemC. Pour garantir |
| | 93 | l'inter-opérabilité entre ces composants, et permettre de modéliser |
| | 94 | facilement des plate-formes matérielles multi-processeurs, tous ces |
| | 95 | composants respectent le même protocole de communication (Virtual |
| | 96 | Component Interconnect). |
| | 97 | |
| | 98 | |
| | 99 | Cette plate-forme contient aujourd'hui suffisamment de composants |
| | 100 | matériels (coeurs de processeurs, contrôleurs mémoire, contrôleurs de |
| | 101 | bus, routeurs pour micro-réseaux intégrés, coprocesseurs spécialisés, |
| | 102 | etc...) pour modéliser et simuler des architectures multi-processeurs |
| | 103 | hétérogènes complexes (i.e. comportant plusieurs dizaines de |
| | 104 | processeurs) exécutant des applications multi-tâches sous le contrôle |
| | 105 | d'un système d'exploitation embarqué. Des systèmes d'exploitation |
| | 106 | populaires comme NetBSD ou RTEMS sont supportés, mais aussi des |
| | 107 | projets de recherches comme DnaOs, MutekH, ou encore AlmOS. |
| | 108 | |
| | 109 | |
| | 110 | SoCLib est utilisé dans le département SoC du Lip6 dans de nombreux |
| | 111 | projets de recherche parmi lesquels DSX, Adam ou encore Tsar. |
| | 112 | |
| | 113 | |
| | 114 | SoCLib est développé activement. De nombreuses fonctionnalités peuvent |
| | 115 | être implémentées et offrent de ce fait de nombreuses possibilités de |
| | 116 | stages. |
| | 117 | |
| | 118 | |
| | 119 | [https://www.soclib.fr/trac/dev/wiki] |
| | 120 | |
| | 121 | |