Fonctionnement d’un ordinateur STA- Architecture Fonctionnement d’un ordinateur
Choisir un processeur http://www.tomshardware.fr/articles/comparatif-cpu-amd-intel,2-8.html
Les points clés d’un processeur Le nombre de cores La mémoire cache La fréquence Le bus système La puce graphique comment ça marche
Qu'est-ce qu'un processeur ? le Processeur - cerveau de l'ordinateur, organise les échanges de données entre les différents composants (disque dur, mémoire RAM, carte graphique) Fait les calculs qui font que l'ordinateur interagit avec vous et affiche votre système à l'écran. Sa puissance est exprimée en Hz Le processeur est une puce électronique d'environ 4cm de côté et quelques millimètres de hauteur qui chauffe beaucoup car très sollicité. Il est surplombé d'un radiateur : de fines lamelles métalliques qui vont capter la chaleur émise par le processeur et encore au dessus un ventilateur qui va évacuer cette chaleur.
A l’intérieur Processeur multitude d'interrupteurs (transistors) associés à des condensateurs. 2 interrupteurs contrôlent un condensateur: un sert à le charger, l'autre à le décharger. jamais fermés au même moment. Les condensateurs se trouvent dans l'un de deux états possibles: chargé ou déchargé, ouverture ou fermeture des interrupteurs, valeurs 0 ou 1. = un bit.
Transistor « 3D » http://www.futura-sciences.com/magazines/high- tech/infos/actu/d/informatique-tri-gate-transistors-3d-intel-30008/
Transistor Certains "interrupteurs" peuvent en contrôler d'autres. Un transistor ou "robinet électronique" en actionne un autre lui-même peut en contrôler un autre. Si tel interrupteur s'ouvre, d'autres qui se trouvent dans telle zone se ferment, et d'autres encore qui se trouvent dans telle autre zone s'ouvrent.
Exemple Vous tapez le b au clavier, puis vous cliquez sur "Enregistrer". Et à ce moment le programme "Enregistrer" qui est lui-même pré-enregistré est lu par le processeur puis celui-ci commence à l'exécuter. Le "b" correspond à un 01100010. Le processeur suit les instructions du programme en ouvrant et fermant des interrupteurs nécessaires pour que le 01100010 aille remplacer le 01001110 qui était inscrit avant. Dans ce cas-ci Même si cela demandait 1000 opérations, avec une horloge tournant à 800 millions par seconde, cela ne prendrait qu'un 800.000 ième de seconde... le premier condensateur restera déchargé, le 2è restera chargé, le 3è sera déchargé (il était à 1 et doit maintenant représenter un 0), et ainsi de suite pour mettre 01001110 à l' endroit de la mémoire où se trouvait 01100010
Circuit et algèbre de Boole
Circuits intégrés les transistors constitue des circuits logiques, Les transistors MOS sont ainsi réalisés dans des tranches de silicium (appelées wafer, traduisez gaufres), obtenues après des traitements successifs. Ces tranches de silicium sont alors découpées en éléments rectangulaires, constituant ce que l'on appelle un « circuit ». Le premier circuit intégré date de 1958 et a été mis au point par la société Texas Instruments Les circuits sont ensuite placés dans des boîtiers comportant des connecteurs d'entrée-sortie, le tout constituant un « circuit intégré ». Assemblés à leur tour, ils constituent des processeurs. La finesse de la gravure, exprimée en microns (micromètres, notés µm), définit le nombre de transistors par unité de surface. Il peut ainsi exister jusqu'à plusieurs millions de transistors sur un seul processeur. Circuit intégré micro contrôleur
L’addition Voir la video : See how computers add numbers
Dans un processeur Et tout cela est cadencé par une horloge. Une UAL pour effectuer des opérations arithmétiques et logiques. Un registre d'instruction associé à un décodeur permettant de décomposer et d'organiser l'exécution de l'instruction. Un certain nombre de registres internes, pour stocker temporairement des données ou les bits de conditions. Un système de gestion d'adresses, permettant la localisation des informations, qu'elles soient données ou instructions. Un ensemble de Bus, permettant de véhiculer soit des données, Bus de données, soit des adresses, Bus d'adresse, soit des informations permettant de contrôler ces transferts, Bus de contrôle. Et tout cela est cadencé par une horloge. Relié à la carte mère et aux autres composants
Horloge Le processeur est un circuit électronique cadencé au rythme d'une horloge interne, un cristal de quartz, soumis à un courant électrique, envoie des impulsions, appelées «top ». inlassablement une suite 0101010101... à une cadence calculée en fréquence d'horloge (appelée également cycle), correspond au nombre d'impulsions par seconde, s'exprime en Hertz (Hz). Ainsi, un ordinateur à 200 MHz possède une horloge envoyant 200 000 000 de battements par seconde. Dernier CPU AMD AMD a officialisé aujourd'hui les AMD FX de la série 9000, dont un modèle présenté comme le premier processeur au monde à atteindre 5 GHz d'origine. La suite sur Clubic.com : AMD FX-9590 : premier processeur atteignant 5 GHz au monde http://www.clubic.com/processeur/processeur-amd/actualite-564728-amd-fx-9590-a-5-ghz-et-fx-9370.html#ixzz2gZjfZa1T Informatique et high tech
CPI A chaque top d'horloge le processeur exécute une action, correspondant à une instruction ou une partie d'instruction. L'indicateur appelé CPI (Cycles Par Instruction) permet de représenter le nombre moyen de cycles d'horloge nécessaire à l'exécution d'une instruction sur un microprocesseur. La puissance du processeur peut ainsi être caractérisée par le nombre d'instructions qu'il est capable de traiter par seconde. L'unité utilisée est le MIPS (Millions d'Instructions Par Seconde) correspondant à la fréquence du processeur que divise le CPI.
Haswell, Ivy Bridge, Sandy Bridge http://www.clubic.com/processeur/processeur-intel/article-561542-16-intel- core-i7-4770k-haswell-quatrieme-generation.html
Instruction Une instruction est l'opération élémentaire que le processeur peut accomplir. Les instructions sont stockées dans la mémoire principale, en vue d'être traitée par le processeur. Une instruction est composée de deux champs : le code opération, représentant l'action que le processeur doit accomplir ; le code opérande, définissant les paramètres de l'action. Le code opérande dépend de l'opération. Il peut s'agir d'une donnée ou bien d'une adresse mémoire.
Registres Lorsque le processeur exécute des instructions, les données sont temporairement stockées dans de petites mémoires rapides de 8, 16, 32 ou 64 bits que l'on appelle registres. Les Registres de données : EAX, EBX, ECX, et EDX. Au nombre de quatre, il contiennent chacun 4 octets pour les processeurs 32 bits. Ils servent à contenir (par exemple) le résultat d'une instruction, afin que celui ci puisse être réutilisé dans l'instruction suivante Exemple: : add EAX, 0x87. Cette instruction ajoute le nombre hexadécimal 0x87 au registre EAX. (Toutes les instructions exécutées par le processeur sont d'une simplicité équivalente ...)
Registres principaux le registre accumulateur (ACC), stockant les résultats des opérations arithmétiques et logiques le registre d'état (PSW, Processor Status Word), permettant de stocker des indicateurs sur l'état du système (retenue, dépassement, etc.) ; le registre instruction (RI), contenant l'instruction en cours de traitement ; le compteur ordinal (CO ou PC pour Program Counter), contenant l'adresse de la prochaine instruction à traiter ; le registre tampon, stockant temporairement une donnée provenant de la mémoire.
32 bits vs 64 Un processeur 64 bits est un processeur dont la largeur des registres est de 64 bits sur les nombres entiers. Passer de x86 32 bits à x86 64 bits permet de passer de 8 registres généraux 32 bits à 16 registres généraux 64 bits outre les registres, les Unités Arithmétiques et Logiques qui manipulent les données contenues dans ces registres doivent également être adaptées la taille des bus internes doit également être étendue. Le bus amenant les valeurs du cache de données aux registres et le bus amenant les valeurs des registres aux UAL voient ainsi leur taille doublée. Il convient en revanche de noter que la taille des instructions n’augmente pas avec le passage à une architecture 64 bits, les architectures 64 bits se contentent d’instructions codées sur 32 bits afin d’économiser de la mémoire (notamment le cache d’instructions) et de la bande passante. Passage de 32 bits à 64 bits: Il ne suffit pas d'avoir une machine avec processeur 64 bits et d'installer les versions « habituelles » du système d'exploitation et des logiciels. De cette façon, le processeur 64 bits tournera en mode 32 bits (compatibilité descendante). Pour effectivement utiliser un ordinateur 64 bits en 64 bits il faut disposer des versions 64 bits de : système d'exploitation ;pilotes ;logiciels d'application.
Unités fonctionnelles Le processeur est constitué d'un ensemble d'unités fonctionnelles reliées entre elles. L'architecture d'un microprocesseur est très variable d'une architecture à une autre, cependant les principaux éléments d'un microprocesseur sont les suivants
Unité d’instructions Une unité d'instruction en anglais control unit) lit les données arrivant, les décode puis les envoie à l'unité d'exécution ; séquenceur (ou bloc logique de commande) chargé de synchroniser l'exécution des instructions au rythme d'une horloge. Il est ainsi chargé de l'envoi des signaux de commande ; compteur ordinal contenant l'adresse de l'instruction en cours ; registre d'instruction contenant l'instruction suivante. Catégorie d’instructions Accès à la mémoire : des accès à la mémoire ou transferts de données entre registres. Opérations arithmétiques : opérations telles que les additions, soustractions, divisions ou multiplication. Opérations logiques : opérations ET, OU, NON, NON exclusif, etc. Contrôle : contrôles de séquence, branchements conditionnels, etc.
Unité d'exécution Une unité d'exécution (ou unité de traitement), accomplit les tâches que lui a données l'unité d'instruction. L'unité d'exécution est notamment composée des éléments suivants : L'unité arithmétique et logique (notée UAL ou en anglais ALU pour Arithmetical and Logical Unit). L'UAL assure les fonctions basiques de calcul arithmétique et les opérations logiques (ET, OU, Ou exclusif, etc.) ; L'unité de virgule flottante (notée FPU, pour Floating Point Unit), qui accomplit les calculs complexes non entiers que ne peut réaliser l'unité arithmétique et logique. Le registre d'état ; Le registre accumulateur.
Unité de gestion des bus Une unité de gestion des bus (ou unité d'entrées-sorties), qui gère les flux d'informations entrant et sortant, en interface avec la mémoire vive du système
Mémoire cache La mémoire cache (également appelée antémémoire ou mémoire tampon) est une mémoire rapide permettant de réduire les délais d'attente des informations stockées en mémoire vive. En effet, la mémoire centrale de l'ordinateur possède une vitesse bien moins importante que le processeur. Il existe néanmoins des mémoires beaucoup plus rapides, mais dont le coût est très élevé. La solution consiste donc à inclure ce type de mémoire rapide à proximité du processeur et d'y stocker temporairement les principales données devant être traitées par le processeur.
L1 Cache La mémoire cache de premier niveau (appelée L1 Cache, pour Level 1 Cache) est directement intégrée dans le processeur. Elle se subdivise en 2 parties : La première est le cache d'instructions, qui contient les instructions issues de la mémoire vive décodées lors de passage dans les pipelines. La seconde est le cache de données, qui contient des données issues de la mémoire vive et les données récemment utilisées lors des opérations du processeur. Les caches du premier niveau sont très rapides d'accès. Leur délai d'accès tend à s'approcher de celui des registres internes aux processeurs.
L2 L3 cache La mémoire cache de second niveau (appelée L2 Cache, pour Level 2 Cache) est située au niveau du boîtier contenant le processeur (dans la puce). Le cache de second niveau vient s'intercaler entre le processeur avec son cache interne et la mémoire vive. Il est plus rapide d'accès que cette dernière mais moins rapide que le cache de premier niveau. La mémoire cache de troisième niveau (appelée L3 Cache, pour Level 3 Cache) autrefois située au niveau de la carte mère (utilisation de la mémoire centrale), elle est aujourd'hui intégré directement dans le CPU.
Temps de latence Tous ces niveaux de cache permettent de réduire les temps de latence des différentes mémoires lors du traitement et du transfert des informations. Pendant que le processeur travaille, le contrôleur de cache de premier niveau peut s'interfacer avec celui de second niveau pour faire des transferts d'informations sans bloquer le processeur, Dans diverses circonstances, on parle également de temps de latence ou période de latence pour désigner le délai entre une action et le déclenchement d'une réaction, à savoir un retardement.
Signaux de commande Les signaux de commande sont des signaux électriques permettant d'orchestrer les différentes unités du processeur participant à l'exécution d'une instruction. Les signaux de commandes sont distribués grâce à un élément appelé séquenceur. Le signal Read / Write, permet par exemple de signaler à la mémoire que le processeur désire lire ou écrire une information.