Introduction Objectifs du cours Évaluation Références Matière du cours: - Techniques modernes d’architecture - Les systèmes parallèles - La synthèse automatisée de circuit
Matière couverte Amélioration des derniers 10 ans Comprendre ce qui s’en vient d’ici 10 ans
Pourquoi l’évolution de l’architecture? Loi de Moore: 2X plus de transistors / 18 mois Depuis 15 ans: environ 1000X (de 4 à 0.13 microns) En 2008: 0.05 micron, 100M transistors, plusieurs GHz Différence croissante entre le délai intra-chip et le délai extra-chip Importance croissante des interconnections entre les transistors Corrolaire de la loi de Moore: augmentation exponentielle de la puissance dissipée (à voltage constant)
Défis Taille et puissance Performance du système Complexité Comment gérer l’augmentation de puissance consommée? (prédite par Dennart en ’70) Performance du système Qu’est-ce qui définit la performance? Où doit-on miser pour augmenter la performance? Complexité Comment gérer le design de systèmes de plus en plus gros?
Force motrice derrière l’architecture des ordinateurs Fin des années ’80, début ’90: Performance des processeurs Fin des années ’90, début 2000: Puissance Accès à la mémoire lent Fiabilité Coût de développement, maintenance de logiciel Désuétude rapide
Qu’allons-nous étudier ici? Techniques d’amélioration de la performance des processeurs utilisées depuis 10 ans: Parallélisme (MLP, ILP) Pipelines / superscalaires / VLIW Multiprocesseurs Synchronisation Techniques modernes de conception de circuits Synthèse de haut niveau, logique HDLs (Hardware Description Languages) Technologies-cibles: ASIC, FPGA
Comment améliorer la performance? Matériel Dispositifs Ensemble d’instructions (RISC vs CISC) Conception Techniques de synthèse Techniques de test Parallélisme MLP (Machine Level Parallelism) ILP (Instruction Level Parallelism)
Matériel: Amélioration des dispositifs Plus grande intégration (Moore / Dennart) Utilisation nouvelle des composants FPGA: utilisation d’éléments reconfigurables Protocoles d’entrées/sorties différents E.g. Rambus
Matériel: Amélioration des dispositifs Silicium Sous 0.1 um (IBM prévoit 0.05 um en 2008) Oxyde trop mince -> effet tunnel Variations locales du dopage Transport ballistique DIBL (Drain-Induced Barrier Lowering) Arseniure de Gallium (AsGa), Germanium-Silicium (siGe) ? Communications optiques?
Matériel: Amélioration des dispositifs (2) Superconducteurs à haute température? Systèmes quantiques? Nanotechnologie?
Matériel: ensemble d’instructions RISC: instructions plus simples à décoder Plus d’instructions pour la même tâche Chaque instruction s’exécute plus rapidement CISC: instructions complexes VLIW (Very Large Instruction Word)
Conception: techniques de synthèse Langages de haut niveau (VHDL, Verilog) Synthèse de haut niveau Synthèse logique Placement / Routage
Conception: techniques de test Vecteurs de test Modèle stuck-at JTAG et Full / Partial Scan BIST (Built-In Self-Test)
Parallélisme: MLP Machines massivement parallèles Thinking machines Masspar NOW (Network of Workstations) Multiprocesseurs ASCI White Beowulf
Parallélisme: ILP Pipelines Méthodes superscalaires Scoreboard, Tomasulo Prédiction des branches Méthodes statiques / dynamiques Spéculation (EPIC – Explicitely Parallel Instructions Computer) Machines « multithreaded »