Télécharger la présentation
Publié parCleménce Brisset Modifié depuis plus de 9 années
1
Contribution à la mise en place d'une plateforme open-source MPSoC sous SystemC pour la Co-simulation d'architectures hétérogènes Thèse préparée par : Sami BOUKHECHEM Directeur de thèse : El-Bay BOURENNANE (Université de Bourgogne)
2
Plan de la présentation
Introduction. Présentation générale des SoCs et de la Co-simulation à haut niveau. Définition de l'environnement de simulation de STARSoC. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. Conclusion et perspectives.
3
Introduction I. 1 Contexte et motivations. I. 2 Contributions.
4
Introduction I. 1 Contexte et motivations
Difficulté de conception liée à la très grande complexité des architectures. Problématique: L’hétérogénéité des composants ainsi que leurs intégrations. Des délais de conception inacceptables au vue de la concurrence.
5
Introduction I. 1 Contexte et motivations Solution :
Associer plusieurs équipes de concepteurs. validation et vérification tardive. Le recours à de nouvelles approches est devenue nécessaire : - Assemblage et réutilisation de composants. - Méthodes de conception/validation basées sur des Co-simulation à haut niveau. Vérification et la validation le plus tôt possible : Contraintes : La consommation en énergie et en espace. Temps de mise sur le marché et le coût. La performance. Temps réel.
6
Introduction I. 1 Contexte et motivations. I. 2 Contributions.
7
Introduction I. 2 Contribution
La modélisation de systèmes électroniques embarqués hétérogènes. Proposition d'une approche pour l'accélération des étapes de vérification à haut niveau. Proposition d’une méthodologie de conception à haut niveau Nouveau flot de conception de l’outil STARSoC
8
Introduction I. 2 Contribution
Proposer une méthodologie de Co-simulation entre ISS (OpenRISC) et SystemC. La représentation conjointe matériel / logiciel à différents hauts niveaux d'abstraction (TLM). La conception d'un outil permettant l'automatisation de la génération des différentes plateformes (Eclipse). La possibilité d'intégrer des composants hétérogènes ( langages HDL, niveaux d’abstraction).
9
Plan de la présentation
Introduction. Présentation générale des SoCs et de la Co-simulation à haut niveau. Définition de l'environnement de simulation de STARSoC. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. Conclusion et perspectives.
10
Présentation générale des SoCs et de la Co-simulation à haut niveau
II. 2 Architecture de systèmes multiprocesseur monopuces. les systèmes Multiprocesseur monopuces : Proc n Proc 2 Proc 1 Media d’interconnexion Mémoire partagée
11
Présentation générale des SoCs et de la Co-simulation à haut niveau
II. 4 Flot générique de conception des systèmes sur puce. Trois étapes essentielles : La spécification de l'application. L'exploration d'architecture. L'implémentation physique la co-simulation de haut niveau repose sur différents modèles et vise plusieurs objectifs : Vérification fonctionnelle ou comportementale. L’évaluation des performances. La simulation du logiciel peut être effectuée par deux techniques
12
Plan de la présentation
Introduction. Présentation générale des SoCs et de la Co-simulation à haut niveau. Définition de l'environnement de simulation de STARSoC. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. Conclusion et perspectives.
13
III. Définition de l'environnement de simulation de STARSoC.
III.1 L'outil STARSoC III.2 SystemC V2.1 III.3 Le simulateur du jeu d'instruction "ISS" OR1Ksim III.4 Le bus wishbone III.5 La modélisation au niveau transactionnel TLM III.6 L’IDE STARSoC sous Eclipse
14
III. Définition de l'environnement de simulation de STARSoC.
III.1 L'outil STARSoC
15
III. Définition de l'environnement de simulation de STARSoC.
III.1 SystemC V2.1 But du travail : Même environnement de simulation (logicielle / matérielle) à un niveau d’abstraction élevé.
16
III. Définition de l'environnement de simulation de STARSoC.
III.1 SystemC V2.1 Pourquoi SystemC ?
17
III. Définition de l'environnement de simulation de STARSoC.
III.3 Le simulateur du jeu d'instruction "ISS" OR1Ksim Présentation des éléments composant la plateforme OR1Ksim L’ISS du processeur OpenRisc 1200 Exemple de l'architecture du processeur OpenRisc 1200 Simulateur gratuit et code source libre (open source). Architecture de simulation de haut niveau rapide. OR1Ksim supporte la majorité des modèles de périphériques d'Open-Cores tels que : VGA/LCD, UART, DMA, contrôleur mémoire, interface PS2, etc. Un ajout facile de nouveaux modèles de périphériques, Un débogage facile grâce à l'utilisation des sockets avec le debugger (GDB),
18
III. Définition de l'environnement de simulation de STARSoC.
III.4 Le bus wishbone Les niveaux d'abstraction du modèle wishbone Absence de signaux De contrôle Absence de Signaux de contrôle Exemple d'une connexion Wishbone au niveau fonctionnelles Exemple d'une Connexion point-à-point au niveau RTL
19
III. Définition de l'environnement de simulation de STARSoC.
III.5 La modélisation au niveau transactionnel TLM Offrir plusieurs niveaux de conception adéquats pour les validations de quelques détails d'implémentation, pour un modèle représentant un système complet ou une partie d'un système. Offrir des vitesses de simulation convenables pour la vérification, l'exploration d'architecture et la validation d'un modèle. Les différents niveaux d'abstraction d'un système (L. Cai & D. Gajski)
20
III. Définition de l'environnement de simulation de STARSoC.
III.5 La modélisation au niveau transactionnel TLM 2. Exemple du modèle arbitration / instruction accurarte SC Untimed Temps Address Arbitre Interface 1. Exemple du modèle architecture 3. Exemple du modèle calcul au niveau (cycle précis) 4. Exemple du modèle implémentation (RTL)
21
III. Définition de l'environnement de simulation de STARSoC.
III.6 L’IDE STARSoC sous Eclipse Éléments principaux de l'interface utilisateur de STARSoC
22
Plan de la présentation
Introduction. Présentation générale des SoCs et de la Co-simulation à haut niveau. Définition de l'environnement de simulation de STARSoC. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. Conclusion et perspectives.
23
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC architecture. Le modèle STARSoC arbitration. Le modèle STARSoC calcul au niveau cycle précis. IV. 2 Présentation du flot de génération automatique d'architecture. Génération de l’architecture. Résultats attendus. Étape du générateur. IV. 3 La co-simulation. Choix et description de l’application de test. Génération et exécution de la plateforme à différents niveaux d’abstraction. Analyse des résultats obtenus.
24
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Ajout d'un nouveau niveau intermédiaire (niveau transactionnel). Flot de conception de l'outil STARSoC avec le niveau transactionnel
25
Les trois niveaux transactionnels dans le flot de conception de
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Les trois niveaux transactionnels dans le flot de conception de l'outil STARSoC
26
Le modèle du niveau STARSoC architecture
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC architecture. Séparation entre les communications et les calculs. Utilisation des simulateurs de jeux d'instruction du processeur OpenRisc. Utilisation des IPC « PIPE ». Le modèle du niveau STARSoC architecture
27
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC arbitration Introduction de quelques paramètres : Les adresses. Le module d'arbitrage. Langage SystemC. Temps But : Vérifications sur les signaux de contrôle du système. Vérification temporelle. Problématique : Problème de compatibilité.
28
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV. 1 Architecture de systèmes multiprocesseur monopuces. Interface de communication et wrapper : Besoins et applications des interfaces de communication : L'hétérogénéité du système L'exploration d'architecture
29
Communication par IPC avec SystemC
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC arbitration ISS1 est décrit en langage C. Le reste de la plateforme est décrite en SystemC au niveau arbitration Communication par IPC avec SystemC
30
Exemple d’intégration multiprocesseur
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC arbitration Exemple d’intégration multiprocesseur
31
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC arbitration Connexion de l'ISS « Open source » : Connexion des entrées/sorties de l'ISS aux entrées/sorties correspondantes du wrapper de la plateforme
32
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC arbitration Traduction des informations par le wrapper : Traduction en informations compatibles avec le niveau d'abstraction courant de la plateforme
33
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC arbitration Connexion de l'horloge à l'ISS: But : Effectuer une première vérification temporelle de l'exécution de la plateforme ainsi que les communications ( modèle STARSoC arbitration = Instruction Accurate model). Instruction par chaque cycle
34
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC arbitration Modèle TLM détaillé du bus wishbone:
35
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC calcul au niveau cycle précis. But : Les éléments de calcul respectent le nombre de cycles nécessaires pour l'exécution de chaque instruction
36
Flot de génération d'architecture de STARSoC
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. IV. 2 Présentation du flot de génération automatique d'architecture. Génération de l’architecture. Flot de génération d'architecture de STARSoC
37
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV. 2 Présentation du flot de génération automatique d'architecture. Rappel des objectifs. La flexibilité de la définition de l’architecture. Le comportement de la plateforme doit être correct. Le temps nécessaire à la définition doit être minimal.
38
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV. 2 Présentation du flot de génération automatique d'architecture. Étape du générateur.
39
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV. 3 La co-simulation. Choix et description de l’application de test : But : Tester et vérifier la méthodologie de génération et de simulation proposée au cours de ce travail. Application proposée : Algorithme du producteur / consommateur.
40
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV. 3 La co-simulation. Choix et Description de l’application de test. Compilation de l’application (Cross-Compilation): Obtenir un programme exécutable sur le processeur cible. Définition de l’espace d’adressage partagée (Shared Memory) :
41
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV. 3 La co-simulation. Génération et exécution de la plateforme à différents niveaux d’abstraction. Génération et exécution de la plateforme au niveau Instruction Accurate (IA) : A chaque cycle d'horloge les processeurs Proc1 et Proc2 exécutent une seule instruction. Génération et exécution de plateforme au niveau Cycle Accurate (CA) : Respecter le nombre de cycles nécessaires pour l'exécution de chaque instruction.
42
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
43
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV. 3 La co-simulation. Analyse des résultats obtenus. Les résultats sont obtenus en utilisant le même programme de test sur les différentes architectures. Les exécutions des différentes simulations ont été effectuées sur la même machine (station linux fédora core 3, Pentium 4, 2.2 Ghz, mémoire 768 Mo). La fréquence de simulation (L'horloge H est générée par SystemC) est de 50 MHz, soit une période de 20 ns même fréquence eu niveau RTL. Number of iterations 10 100 1000 2000 3000 Abstraction levels simulations times Instruction Accurate 0,0506 0,47474 1,87333 3,79667 5,93 Cycle Accurate 0,12198 0,75617 4,79333 9,72667 14,17333 RTL 2,92548 12,56321 89,24541 332,39049 2107,3557
44
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV. 3 La co-simulation. Analyse des résultats obtenus. La validation avec une simulation de haut niveau (transactionnelle) est jusqu'à 400 fois plus rapide (voir plus selon la taille de l'application) Vérification de la méthodologie ainsi que la démarche proposées au sein de ce travail de thèse. Graphique des gains en temps de simulation
45
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
IV. 3 La co-simulation. Analyse des résultats obtenus : Tester notre méthodologie. Vérifier la synchronisation et la communication. Première évaluation de performances (temps d’exécution). Preuve de faisabilité et non pas une étude de cas exhaustifs.
46
Plan de la présentation
Introduction. Présentation générale des SoCs et de la Co-simulation à haut niveau. Définition de l'environnement de simulation de STARSoC. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC. Conclusion et perspectives.
47
V. Conclusion et perspectives.
Réduction du gap entre le modèle au niveau système (spécification) et le modèle d'architecture (implémentation) dans l’outil STARSoC. Résolution des problèmes liés à l'hétérogénéité des composants intégrant le système (niveaux d'abstraction, langage de spécification, protocoles de communication, etc.). Proposition d’une méthodologie de conception qui facilite et accélère la conception, basée sur plusieurs étapes de haut niveau. Un modèle unifié permettant la représentation conjointe (HW/SW) à différents niveaux d'abstraction. Développement d’un outil permettant la génération automatique de l'architecture
48
V. Conclusion et perspectives.
V. 2 Perspectives. Nouveaux systèmes de communication (interconnexion) (NoC). Étendre la bibliothèque des composants. Utilisation (implémentation) de processeurs hétérogènes « MPSoC hétérogène » L'implémentation d'un système d'exploitation embarqué temps réel, ainsi que l’implémentation de quelques applications réelles.
49
Publications Revues (1)
"SystemC Transaction-Level Modeling of an MPSoC Platform Based on an Open Source ISS by Using Interprocess Communication", Sami BOUKHECHEM, Elbey BOURENNANE, International Journal of Reconfigurable Computing (IJRC), Hindawi Publishing Corporation, 2008, September 2008, Conférences internationales (4) "TLM Platform Based on SystemC for STARSoC Design Space Exploration", Sami BOUKHECHEM, Elbey BOURENNANE, IEEE NASA/ESA Conference on Adaptive Hardware and Systems, IEEE, Noordwijk, Netherlands, 22 June 2008. "Co-simulation Platform Based on SystemC for Multiprocessor System on Chip Architecture Exploration", Sami BOUKHECHEM, Elbey BOURENNANE, Abdelhalim SAMAHI, IEEE International Conference on Microelectronics (ICM), cairo, Egypt, 29 December 2007. "Communication Interface Generation For HW/SW Architecture In The STARSoC Environment", Abdelhalim SAMAHI, Elbey BOURENNANE, Sami BOUKHECHEM, IEEE International conference on Reconfigurable Computing and FPGA's, IEEE Computer Society Press , San louis Potosi , Mexico, 20 September 2006. "Platform for Rapid Prototyping of Embedded System", Abdelhalim SAMAHI, Sami BOUKHECHEM, Elbey BOURENNANE, Nasser Eddine IDIRÈNE, IEEE International Computer Systems & Information Technology Conference (ICSIT'05), Alger, Algérie, pp , 19 Juillet 2005. Workshops internationaux (1) "STARSoC : A C-Based Platform for Rapid Prototyping of Embedded System", Abdelhalim SAMAHI, Sami BOUKHECHEM, Elbey BOURENNANE, Nasser Eddine IDIRÈNE, RecoSoC'05, ISBN : , Montpellier, France, 1 (1), pp , 27 Juin 2005. Workshops nationaux (1) "Using TLM Simulation Methodology Under STARSoC ", Sami BOUKHECHEM, Elbey BOURENNANE, GDR SoC-SiP, Paris, France, 2008.
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.