Changeset 52 for trunk/IPs/systemC/processor/Morpheo/Documentation/Source/Documents/presentation-internal_seminary_overview/fr/root.tex
- Timestamp:
- Aug 27, 2007, 7:01:11 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Documentation/Source/Documents/presentation-internal_seminary_overview/fr/root.tex
r23 r52 1 1 \section{Motivations} 2 2 3 \ContentsCurrent 4 5 \slidetitle{Motivations} 6 { 7 Sécurité du hardware : 8 \begin{description} 9 \item[Ancienne tendance :] IPs (Intellectual Propritie) fermées labelisés sécuritaires. 10 \item[Nouvelle tendance :] Ouverture des IPs, intégration de System On Chip (SOC) 11 \end{description} 12 } 13 { 14 3 %\ContentsCurrent 4 5 \slidetitle{Problématique} 6 { 7 On désire une plateforme de confiance totale : 8 \begin{itemize} 9 \item La plateforme-matérielle est composée de processeur(s) généraliste(s). 10 \item La plateforme-logicielle est composée de plusieurs applications qui peuvent être cryptographique. 11 \end{itemize} 12 13 Notre travail consiste à faire le processeur pour un tel système. 14 } 15 { 16 } 17 18 \slidetitle{Ancienne tendance} 19 { 20 \begin{itemize} 21 \item Composants fermés. 22 \item Label de sécurité. 23 \begin{itemize} 24 \item Trusted Computing Platform Alliance 25 \item Next-Generation Secure Computing Base 26 \end{itemize} 27 \item Plateforme multi-chip. 28 \end{itemize} 29 } 30 { 31 \begin{description} 32 \item[Trusted Computing Platform Alliance :] Le Trusted Computing Group (TCG, nommé jusqu'en 2003 TCPA pour Trusted Computing Platform Alliance) est une consortium d'entreprises d'informatique (Compaq, HP, IBM, Intel, Microsoft, AMD, etc.) visant à sécuriser les équipements et communications informatiques. 33 \item[Next-generation secure computing base :] Le Next-Generation Secure Computing Base (NGSCB, littéralement : Base d'information sécurisée de nouvelle génération) ou ordinateur sécurisé de la prochaine génération fait partie de la nouvelle architecture de Microsoft pour l'informatique de confiance. Ce projet était connu sous le nom de Palladium. 34 \end{description} 35 } 36 37 \slidetitle{Nouvelle tendance} 38 { 39 \begin{itemize} 40 \item Utilisation de composants ouvert. \\Evite les fonctionnalités cachés 41 \item Intégration de System On Chip (SOC).\\Réduit la vunérabilité des communications entre deux chips. 42 \end{itemize} 43 } 44 { 45 } 46 47 \section{Besoins} 48 \slidetitle{Besoins} 49 { 50 \begin{description} 51 \item [Open :] Absence de fonctionnalités cachées. (Cheval de troie) 52 \item [Configurable :] Adaptable aux besoins des applications. 53 \item [Performance :] Application cryptographique. 54 \end{description} 55 } 56 { 57 } 58 59 \slidetitle{Besoins : Open} 60 { 61 \begin{itemize} 62 \item Instruction Set Architecture libre. (Implémentation possible) 63 \item Tools Chains présente et libre. 64 \item Implémentation sur FPGA (Pérennité). 65 \item Présence d'une communauté autour de l'architecture logicielle. 66 \end{itemize} 67 } 68 { 69 } 70 71 \slidetitle{Besoins : Configurable} 72 { 73 \begin{itemize} 74 \item Pas de connaissance préalable du besoin des applications. 75 \item Toutes les applications non pas les mêmes besoins de Performance / Surface. 76 \end{itemize} 77 } 78 { 79 } 80 81 \slidetitle{Besoins : Performance} 82 { 83 Exploitation de toutes les formes de parrallélisme. 84 \begin{description} 85 \item [ILP :] Instruction Level Paralelism 86 \item [TLP :] Thread Level Paralelism 87 \item [DLP :] Data Level Paralelism 88 \end{description} 89 } 90 { 91 } 92 93 \slidetitle{ILP} 94 { 95 \begin{description} 96 \item[Avantages :]~ 97 \begin{itemize} 98 \item Exploitation implicite. 99 \end{itemize} 100 \item[Inconvénients :]~ 101 \begin{itemize} 102 \item Coût quadratique du contrôle. 103 \end{itemize} 104 \end{description} 105 } 106 { 107 } 108 109 \slidetitle{TLP - Chip Multi Processor (CMP)} 110 { 111 \begin{description} 112 \item[Avantages :]~ 113 \begin{itemize} 114 \item Implémentation très simple : duplication des cores 115 \item Ressources dédiés au thread executé sur le core 116 \end{itemize} 117 \item[Inconvénients :]~ 118 \begin{itemize} 119 \item Il doit avoir plus de thread que de core afin d'éviter l'oisiveté des cores. 120 \end{itemize} 121 \end{description} 122 } 123 { 124 } 125 126 \slidetitle{TLP - Simulatenous Multi Threading (SMT)} 127 { 128 \begin{description} 129 \item[Avantages :]~ 130 \begin{itemize} 131 \item Implémentation très simple et peu coûteuse en surface. 132 \item Meilleur exploitation des ressources 133 \end{itemize} 134 \item[Inconvénients :]~ 135 \begin{itemize} 136 \item Dimensionnement du nombre de thread proportionnel à l'ILP exploitable. 137 \end{itemize} 138 \end{description} 139 } 140 { 141 } 142 143 \slidetitle{DLP} 144 { 145 \begin{description} 146 \item[Avantages :]~ 147 \begin{itemize} 148 \item Une instruction SIMD est équivalente à beaucoup d'instructions SISD. 149 \end{itemize} 150 \item[Inconvénients :]~ 151 \begin{itemize} 152 \item Pas adapter pour les applications qui n'exploite pas le DLP. 153 \item Exploitation explicite par le programmeur. 154 \end{itemize} 155 \end{description} 156 } 157 { 158 } 159 160 161 \slidetitle{Etat de l'art} 162 { 163 \begin{description} 164 \item [sofcore :]~ 165 \begin{description} 166 \item [Commercial :] Nios, MicroBlaze, ... 167 \item [Libre :] OpenRISC 1200, Leon 2/3, OpenSPARC T1/S1 168 \end{description} 169 {\it Non : Peu configurable, faible exploitation du paralélisme d'instruction} 170 \item [Simulateur :] SimpleScalar, SMTSim, ...\\ 171 {\it Non : Simulateur non prévut pour avoir une synthèse} 172 \item [Hardcore :] POWER5, Intel Pentium 3/4, MIPS R10000, ...\\ 173 {\it Non : ISA non libre} 174 \end{description} 175 } 176 { 177 } 178 179 \slidetitle{Objectif} 180 { 181 } 182 { 183 } 184 185 \slidetitle{Service offert} 186 { 187 \printgraph{MORPHEO_service}{0.75} 188 } 189 { 190 } 191 192 \slidetitle{Fonction de coûts} 193 { 194 } 195 { 196 } 197 198 \section{Morpheo} 199 %\ContentsCurrent 200 201 \subsection{Micro Architecture} 202 \slidetitle{Micro Architecture : Overview} 203 { 204 \printgraph{MORPHEO_micro_architecture-overview}{0.48} 205 } 206 { 207 3 grandes parties : 208 \begin{description} 209 \item[Front end :] Amène des paquets d'instructions en séquence, et les décodes. Calcules les addresses suivantes (spéculation) et maintiens l'état des threads (idle, wait, run ...) 210 \item[Out Of Order Engine :] Renome les registres (annulations des dépendances RAW, WAW et WAR). Re Order Buffer : mettre à jour l'état du contexte dans l'ordre d'arrivé des threads. 211 \item[Execution Loop :] Boucle ``Read, execute, Write''. Ainsi que les bypass. Instructions peuvent ce lancer dans le désordres. 212 \end{description} 213 } 214 215 \slidetitle{Micro Architecture : Front end} 216 { 217 \printgraph{MORPHEO_micro_architecture-front_end}{0.7} 218 } 219 { 220 } 221 222 \slidetitle{Micro Architecture : Out Of Order Engine} 223 { 224 \printgraph{MORPHEO_micro_architecture-out_of_order_engine}{0.7} 225 } 226 { 227 } 228 229 \slidetitle{Micro Architecture : Execution Loop} 230 { 231 \printgraph{MORPHEO_micro_architecture-execute_loop}{0.7} 232 } 233 { 234 } 235 236 237 \slidetitle{Environnement de simulation} 238 { 239 } 240 { 241 } 242 243 \slidetitle{Résultats} 244 { 245 } 246 { 247 } 248 249 \slidetitle{Morpheo on FPGA} 250 { 251 } 252 { 15 253 } 16 254
Note: See TracChangeset
for help on using the changeset viewer.