plan de la présentation
DESCRIPTION
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). Plan de la présentation. Introduction. - PowerPoint PPT PresentationTRANSCRIPT
1Université de Bourgogne
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 BOUKHECHEMDirecteur de thèse : El-Bay BOURENNANE (Université de
Bourgogne)
2Université de Bourgogne
Plan de la présentation
I. Introduction.II. Présentation générale des SoCs et de la Co-
simulation à haut niveau.III. Définition de l'environnement de simulation de
STARSoC.IV. Méthodologie de conception et de Co-simulation
multi-niveaux dans l'environnement STARSoC.V. Conclusion et perspectives.
3Université de Bourgogne
I. Introduction
I. 1 Contexte et motivations.
I. 2 Contributions.
4Université de Bourgogne
I. IntroductionI. 1 Contexte et motivations
DSP HW CPU
mémoire
I/F
I/FI/F
Modèle d'interconnexion
I/F
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.
5Université de Bourgogne
I. 1 Contexte et motivations Solution :
Associer plusieurs équipes de concepteurs.
I. Introduction
validation et vérification tardive.
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.
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.
6Université de Bourgogne
I. Introduction
I. 1 Contexte et motivations.
I. 2 Contributions.
7Université de Bourgogne
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.
I. Introduction
Proposition d’une méthodologie de conception à haut
niveau
Nouveau flot de conception de l’outil STARSoC
8Université de Bourgogne
I. 2 ContributionI. Introduction
I. Proposer une méthodologie de Co-simulation entre ISS (OpenRISC) et SystemC.
II. La représentation conjointe matériel / logiciel à différents hauts niveaux d'abstraction (TLM).
III. La conception d'un outil permettant l'automatisation de la génération des différentes plateformes (Eclipse).
IV. La possibilité d'intégrer des composants hétérogènes ( langages HDL, niveaux d’abstraction).
9Université de Bourgogne
Plan de la présentation
I. Introduction.II. Présentation générale des SoCs et de la Co-
simulation à haut niveau.III. Définition de l'environnement de simulation de
STARSoC.IV. Méthodologie de conception et de Co-simulation
multi-niveaux dans l'environnement STARSoC.V. Conclusion et perspectives.
10Université de Bourgogne
II. 2 Architecture de systèmes multiprocesseur monopuces.
II. Présentation générale des SoCs
et de la Co-simulation à haut niveau
les systèmes Multiprocesseur monopuces :
Proc 1Proc 2Proc n
Media d’interconnexion
Mémoirepartagée
11Université de Bourgogne
II. 4 Flot générique de conception des systèmes sur puce.
II. Présentation générale des SoCs
et de la Co-simulation à haut niveauTrois é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
12Université de Bourgogne
Plan de la présentation
I. Introduction.II. Présentation générale des SoCs et de la Co-
simulation à haut niveau.III. Définition de l'environnement de simulation de
STARSoC.IV. Méthodologie de conception et de Co-simulation
multi-niveaux dans l'environnement STARSoC.V. Conclusion et perspectives.
13Université de Bourgogne
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
14Université de Bourgogne
III. Définition de l'environnement de simulation
de STARSoC.III.1 L'outil STARSoC
15Université de Bourgogne
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é.
16Université de Bourgogne
III. Définition de l'environnement de simulation
de STARSoC.III.1 SystemC V2.1 Pourquoi SystemC ?
17Université de Bourgogne
III. Définition de l'environnement de simulation
de STARSoC.III.3 Le simulateur du jeu d'instruction "ISS" OR1Ksim
Exemple de l'architecture du processeur OpenRisc 1200
Présentation des éléments composant la plateforme OR1Ksim
L’ISS 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),
18Université de Bourgogne
III. Définition de l'environnement de simulation
de STARSoC.III.4 Le bus wishbone
Les niveaux d'abstraction du modèle wishbone
Exemple d'une connexion Wishbone au niveau fonctionnelles
Exemple d'une Connexion point-à-point au niveau RTL
Absence deSignaux de contrôle
Absence de signauxDe contrôle
19Université de Bourgogne
III. Définition de l'environnement de simulation
de STARSoC.III.5 La modélisation au niveau transactionnel TLM
1. 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.
2. 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)
20Université de Bourgogne
III. Définition de l'environnement de simulation
de STARSoC.III.5 La modélisation au niveau transactionnel TLM
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)
UntimedTemps
Address
Arbitre
Interface
2. Exemple du modèle arbitration / instruction accurarte
SC
21Université de Bourgogne
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
22Université de Bourgogne
Plan de la présentation
I. Introduction.II. Présentation générale des SoCs et de la Co-
simulation à haut niveau.III. Définition de l'environnement de simulation de
STARSoC.IV. Méthodologie de conception et de Co-simulation
multi-niveaux dans l'environnement STARSoC.V. Conclusion et perspectives.
23Université de Bourgogne
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.
24Université de Bourgogne
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
25Université de Bourgogne
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
del'outil STARSoC
26Université de Bourgogne
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 du niveau STARSoC architecture
Séparation entre les communications et les calculs.
Utilisation des simulateurs de jeux d'instruction du processeur OpenRisc.
Utilisation des IPC « PIPE ».
27Université de Bourgogne
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é.
28Université de Bourgogne
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
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans l'environnement STARSoC.
29Université de Bourgogne
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
30Université de Bourgogne
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans
l'environnement STARSoC.
Exemple d’intégration multiprocesseur
IV.1 Le niveau d'abstraction transactionnel dans l'outil STARSoC. Le modèle STARSoC arbitration
31Université de Bourgogne
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
32Université de Bourgogne
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
33Université de Bourgogne
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
34Université de Bourgogne
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:
35Université de Bourgogne
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
36Université de Bourgogne
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.
Flot de génération
d'architecture de STARSoC
Génération de l’architecture.
37Université de Bourgogne
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.
38Université de Bourgogne
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.
39Université de Bourgogne
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.
40Université de Bourgogne
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) :
41Université de Bourgogne
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 niveauInstruction Accurate (IA) :
A chaque cycle d'horloge les processeurs Proc1 et Proc2exécutent une seule instruction.
Génération et exécution de plateforme au niveauCycle Accurate (CA) :
Respecter le nombre de cycles nécessaires pour l'exécution de chaque instruction.
42Université de Bourgogne
IV. Méthodologie de conception et de Co-simulation multi-niveaux dans
l'environnement STARSoC.
43Université de Bourgogne
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 surla 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 simulations times simulations times simulations times 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
44Université de Bourgogne
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.
Graphique des gains en temps de simulation
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.
45Université de Bourgogne
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 :
1. Tester notre méthodologie.
2. Vérifier la synchronisation et la communication.
3. Première évaluation de performances (temps d’exécution).
4. Preuve de faisabilité et non pas une étude de cas exhaustifs.
46Université de Bourgogne
Plan de la présentation
I. Introduction.II. Présentation générale des SoCs et de la Co-
simulation à haut niveau.III. Définition de l'environnement de simulation de
STARSoC.IV. Méthodologie de conception et de Co-simulation
multi-niveaux dans l'environnement STARSoC.V. Conclusion et perspectives.
47Université de Bourgogne
V. Conclusion et perspectives.
1. 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.
2. 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.).
3. Proposition d’une méthodologie de conception qui facilite et accélère la conception, basée sur plusieurs étapes de haut niveau.
4. Un modèle unifié permettant la représentation conjointe (HW/SW) à différents niveaux d'abstraction.
5. Développement d’un outil permettant la génération automatique de l'architecture
V. 1 Conclusion.
48Université de Bourgogne
V. Conclusion et perspectives.
1. Nouveaux systèmes de communication (interconnexion) (NoC).
2. Étendre la bibliothèque des composants.
3. Utilisation (implémentation) de processeurs hétérogènes « MPSoC hétérogène »
4. L'implémentation d'un système d'exploitation embarqué temps réel, ainsi que l’implémentation de quelques applications réelles.
V. 2 Perspectives.
49Université de Bourgogne
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, http://www.hindawi.com/GetArticle.aspx?doi=10.1155/2008/902653
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. 341-346, 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 : 2-9517-4611-3, Montpellier, France, 1 (1), pp. 177-182, 27 Juin 2005.
Workshops nationaux (1)"Using TLM Simulation Methodology Under STARSoC ", Sami BOUKHECHEM, Elbey BOURENNANE,
GDR SoC-SiP, Paris, France, 2008.