• Aucun résultat trouvé

6. Multiprocesseur de grande taille (LSM)

7.1 Travaux Futurs

La conception de MPSoC à grande taille est un secteur de recherche nouveau et ouvert. Dans la thèse, on a proposé des approches qui peuvent être étendues dans plusieurs directions de recherche différentes.

La consommation d'énergie est très importante pour le système électronique, non seulement pour la raison commerciale, mais aussi pour la protection de l’environnement. La bibliothèque de modèle de consommation d'énergie peut être intégrée dans notre procédure de conception pour explorer les compromis entre la performance, la surface et la consommation d’énergie. La combinaison de cette procédure avec nos travaux précédents au niveau RTL permettra une solution complète.

L'exploration de MPSoC à grande taille est très complexe et prend beaucoup de temps. Profitant de la combinaison de différents niveaux, de TLM à RTL, l’espace d’exploration est diminuée à haut niveau pour accélérer l'exploration. La théorie de réseau de neurone et la technologie PR de FPGA peuvent aussi aider à atteindre ce but.

Les travaux futurs consistent à ajouter la gestion de reconfiguration dans la zone d’eFPGA reconfigurable pour des accélérateurs hardware ainsi que la parallélisation automatique de logiciel.

7.2 Contribution

Notre contribution principale est la procédure automatique pour la conception de MPSoC à grande taille basée sur la réutilisation de SSM IP. Basée sur ce principe, une procédure de conception automatique pour des données parallèles et des traitements en pipeline est proposée pour l’application au traitement du signal sur le multiprocesseur avec NoC, utilisant

l’application cryptographique au TDES (Triple Data Encryption Standard) comme un exemple. La synthèse de haut niveau est ajoutée à cette procédure pour la génération de hardware accélérateur, qui permet d'étudier le compromis entre la performance et la surface. OCP-IP NoC benchmarks sont exécutés sur notre multiprocesseur de 48 coeurs et de 672 coeurs pour l'évaluation de performance.

Nous proposons une procédure automatique et multi-objectif pour NoC au niveau TLM (Transaction Level Modeling). Les critères du timing et de surface du niveau RTL sont explorés mais non limités avec des TLM modèles du NoC dans NoCexplorer. Une méthodologie de programmation linéaire est fournie comme solution au problème de l'organisation et du dimensionnement d’eFPGA reconfigurable pour maximiser l'efficacité du NoC.

Pour la première fois dans le monde, nous avons évalué par l'exécution réelle les micro- benchmarks d’OCP-IP sur nos multiprocesseurs à grande taille avec le réseau sur puce utilisant la plate-forme d'émulation multi-FPGA.

Tous les travaux réalisés dans cette thèse rendent possible MPSOCexplorer, un projet industriel pour l’exploration de MPSoC à grand taille, soutenu par l’Union Européenne et le gouvernement français.

CONTENTS

Méthodologie de Conception Automatique pour Multiprocesseur sur puce Hétérogène ... i 

ACKNOWLEDGMENT ... iii 

ABSTRACT ... v 

Résumé ... vii 

CONTENTS ... xxxi 

LIST OF TABLES ... xxxvi 

LIST OF FIGURES ... xxxviii 

1.  Introduction ... 1 

1.1  Motivation ... 1 

1.2  Research Objectives ... 2 

1.3  Thesis organization ... 4 

2.  Multiprocessor and Network on Chip State of the Art ... 7 

2.1  Multiprocessor on chip ... 7 

2.1.1  Definitions, Architecture and Performance Evaluation ... 7 

2.1.2  Academic and Commercial MPSOCs ... 8 

2.2  Network on chip ... 9 

2.2.1  Definitions, Architecture and Performance Evaluation ... 9 

2.2.2  OCP-IP NoC micro-Benchmarks ... 14 

2.2.3  Academic and Commercial NOCs ... 15 

2.2.4  Case study: Arteris Technology ... 17 

2.3  Conclusion ... 24 

3.  MPSOC Design Methodologies ... 27 

3.1  MPSOC Design and Synthesis ... 27 

3.1.1  Benchmarks ... 28 

3.1.2  Design methods of MPSoC ... 30 

3.2.1  Graph theory related material and GLPK ... 42 

3.2.2  Workflow for regular topology ... 43 

3.2.3  Workflow for application specific topology ... 46 

3.3  Conclusion ... 48 

4.  Multi-objective TLM Level NOC Design Space Exploration ... 53 

4.1  NOC SystemC TLM Modelling and Traffic Generators ... 53 

4.1.1  SystemC TLM ... 54 

4.1.2  TLM NoC modeling with commercial tools ... 55 

4.2  NoC Multi-objective Optimization: NSGA-II ... 61 

4.2.1  Multi-objective modeling formulation ... 61 

4.2.2  Multi-objective Evolutionary Algorithm ... 61 

4.3  NOC Multi-objective Optimization under Constraints ... 63 

4.3.1  Design Flow ... 64 

4.3.2  Multi-objective NOC TLM DSE ... 65 

4.3.3  Chromosome: ... 66 

4.4  Performance Evaluation and Comparison ... 68 

4.4.1  Best effort exploration ... 68 

4.4.2  Experiment with different constraints ... 70 

4.4.3  Results of 16 processors with NoC ... 71 

4.4.4  Architecture of exploration results ... 76 

4.5  Conclusion ... 78 

5.  Reconfigurable NoC on eFPGA... 81 

5.1  eFPGA and Reconfigurable NoC State of Art ... 82 

5.1.1  eFPGA technology ... 82 

5.1.2  Reconfigurable NoC implementation with FPGA ... 84 

5.2  eFPGA: M2000 Case Study ... 85 

5.2.2  Switch Area and frequency characterization ... 87 

5.2.3  Reconfigurable NoC problem definition ... 88 

5.3  NoC Optimization on eFPGA with Place and Route Constraints ... 88 

5.3.1  Reconfigurable NoC on one eFPGA ... 89 

5.3.2  Reconfigurable NoC on numerous eFPGAs ... 89 

5.3.3  Reconfigurable NoC on minimal eFPGAs ... 90 

5.4  Performance Evaluation and Results ... 91 

5.4.1  Experimental setup ... 91 

5.4.2  Results of NoC on one eFPGA ... 92 

5.4.3  Results of NoC on numerous eFPGAs ... 92 

5.5  Conclusion ... 93 

6.  SSM IP: Small Scale Multiprocessor IP ... 95 

6.1  Cluster MPSOC and NoC design ... 95 

6.2  SSM IP FPGA Design and Implementation ... 97 

6.2.1  Small Scale Multiprocessor Soft IP ... 97 

6.2.2  Architecture ... 98 

6.2.3  Design Automation Flow ... 100 

6.2.4  Processor Element and NoC communication service ... 102 

6.2.5  Implementation ... 103 

6.3  Design Space Exploration of SSM IP ... 104 

6.3.1  SSM Soft IP potential variations ... 104 

6.3.2  Synthesis, Place and Route Time and Target frequency ... 105 

6.4  Application Performance Evaluation and Comparison ... 107 

6.4.1  NL-means image filter ... 107 

6.4.2  Implementation and Results of NL-means filter ... 108 

6.4.3  Implementation and Results of other basic applications ... 109 

6.5  Conclusion ... 111 

7.  Large Scale Multiprocessor (LSM) DSE ... 113 

7.1  Flow Methodology from SSM to LSM ... 113 

7.2  Extension of SSM IP to LSM ... 114 

7.3  Automatic EDA Support ... 116 

7.3.1  SSM IP Reuse and Automatic Composition ... 116 

7.3.2  Eve Zebu-UF Platform ... 117 

7.3.3  Eve Zebu Design Flow ... 119 

7.3.4  EDA Tools Integration and workflow ... 119 

7.4  Performance Evaluation and Comparison on synchronization ... 120 

7.5  Automatic Exploration of Pipelined Data Parallel Applications ... 123 

7.5.1  Related work on data parallelization ... 124 

7.5.2  Application parallel implementation model and target ... 126 

7.5.3  Exploration flow ... 128 

7.5.4  TDES algorithm ... 131 

7.5.5  Parallel Implementation of algorithm ... 133 

7.5.6  NoC Monitoring and Traffic monitoring results example ... 138 

7.5.7  Conclusion ... 139 

7.6  Heterogeneous design flow with HLS ... 140 

7.6.1  Heterogeneous design flow with HLS ... 140 

7.6.2  High Level Synthesis: C-Based ... 142 

7.6.3  EDA Tools Combination ... 143 

7.6.4  Data parallelism with coprocessor ... 145 

7.7  OCP-IP Micro-benchmarks on LSM processors ... 147 

7.7.1  OCP-IP Micro-benchmarks ... 147 

7.7.2  Performance Evaluation ... 149 

8.  Very Large Scale Multiprocessor Design Automation ... 159 

8.1  State of the art ... 160 

8.1.1  BEE multi-FPGA platform ... 161 

8.1.2  RAMP Blue ... 162 

8.2  General VLSM framework ... 166 

8.3  BB-672 VLSM ... 168 

8.3.1  Zebu XXL multi-FPGA platform ... 168 

8.3.2  OCP-IP benchmarks ... 170 

8.3.3  Performance evaluation ... 171 

8.4  Comparison between RAMP Blue and our VLSM ... 176 

8.5  VLSM and Benchmarking: where are the benchmarks ? ... 179 

8.6  Conclusion : EDA vs Computer Architecture ... 180 

9.  Conclusion and Perspective ... 183 

9.1  Summary of the Thesis ... 183 

9.2  Future Research ... 185 

Documents relatifs