Les CPU

## Présentation

**Un processeur** , aussi appelé **CPU** pour "**Central Processing Unit**", est un des principaux composants dans les systèmes électroniques de nos jours. Un processeur est un composant présent dans de nombreux dispositifs électroniques qui **exécute** les instructions machine des programmes informatiques. Avec la mémoire, c'est notamment un des composants qui existent depuis les premiers ordinateurs et qui sont présents dans tous les ordinateurs. Un processeur construit en un seul circuit intégré est un **microprocesseur**. **Les CPUs** sont apparus en même temps que les premiers ordinateurs (*Ex:* en **1946 l'ENIAC** premier ordinateur ne comportant plus de pièces mécaniques). Les premiers processeurs étaient très volumineux et très demandeurs en énergie, car ils étaient construits à base de tubes électroniques et/ou de relais électromécaniques (*Ex:* **ENIAC**, 19 000 tubes, 30 tonnes, 72m², 144kW).

## Historique

**Voici quelques processeurs et micro-processeurs de 1971 à aujourd'hui:**

**Les processeurs Intel:**

**1971** - **1976**: Les processeurs 4-8bits (Intel 4004 -
Intel 8085) [Gravure: 10µm]

**1978** - **1982**: Les processeurs 16bits (Intel 8086 -
Intel 80286) [Gravure: 3µm, 1.5 µm]

**1981** - **1989**: Les processeurs 32bits (Intel iAPX432 -
Intel 80860)

**1985** - **1994**: La série de 80386 (80386DX - Intel 386
EX) [Gravure: 1 µm]

**1989** - **1994**: La série des 80486 (Intel 80486DX - Intel
80486DX4) [Gravure: 1µm, 0.8µm, 0.6µm]

**1993** -
**1997**: Les Pentium (Pentium, Pentium MMX, Pentium Pro, Pentium II, Pentium
III, Pentium Xeon, Pentium M) [Gravure: 900 nm, 800 nm, 600 nm, 350 nm, 280 nm, 250 nm
]

**2000** - **2002**: Les séries Pentium 4 [Gravure:
180nm, 130nm, 90nm]

**2001** - **2004**: Les processeurs 64bits

**2005** - **2008**: Noyau [Gravure: 45nm]

**2008** -
**2011**: Atome

**2009** -
**2012**: Nehalem

**2011** - **2013**: Ivy Bridge (2 e génération) [Gravure:
32nm]

**2012** - **2013**: Ivy Bridge 3 e  (génération) [Gravure: 22nm]

**2013** - **2014**:
Haswell (4 e génération) [Gravure: 22nm]

**2014** - **2015**: Broadwell (5 e génération) [Gravure:
14nm]

**2015** - **2017**: Sky Lake (6 e génération) [Gravure:
14nm]

**2016**: Kaby Lake (7 e génération) [Gravure:
14nm]

**2017**: Coffee Lake (8 e génération) [Gravure:
14nm]

**2018**: rafraîchissement de Coffee Lake (9 e génération)
[Gravure: 10nm]

**2019** - X: lac de glace (10 e génération) [Gravure
10nm]

**Les processeurs AMD:**

**1975**: Am2900 (Am2901 - Am2909)

**1987** - **1995**: 29000 (29K) (AMD 29000 - AMD 29027 FPU)

**1990**: AMD 29030 (AMD 29050 - AMD 292xx)

**1986** - **1995**: Amx86 (Am286 - Am486 - Am5x86)

**1996**: K5 (SSA5 - 5k86)

**1997** - **2001**: K6 (AMD K6 - AMD K6-III +)

**1999** - **2005**: K7 (Athlon - Sempron)

**2003** - **2008**: K8 (Athlon 64 FX - Sempron)

**2007**: K10 (Phenom FX - Sempron LE-1xxx)

**2011**: bulldozer

**2017**: Zen (Ryzen)

## Fonctionnement

☀Les microprocesseurs sont construits sur des puces électroniques, (aussi appelés circuit intégrés), la plupart du temps en silicium.
Puis des processeurs multicœurs sont apparus, toutes ces avancés technologiques et celles présentés ci-dessous permettent d’atteindre plusieurs pétaFLOPS 1015  (Floating-point operations per second, le nombre d’opérations en virgule flottante par secondes).

Pour ce qui est de notre cas, presque tous les processeurs communs d’aujourd’hui peuvent être décrits comme étant des machines à programmes enregistrés de John Von Neumann.

Il y a 4 étapes que presque toutes les architectures de John Von Neumann utilisent :

-        Fetch →  recherche instruction

-        Decode →  interprétation de l’instruction (opération et opérandes)

-        Execute →  exécution de l’instruction

-        Writeback →  écriture du résultat

Fetch recherche directement dans la mémoire-vive une instruction :

L’emplacement dans la mémoire est déterminé par le compteur de programme (PC), qui stocke l’adresse de la prochaine instruction dans la mémoire de programme.

Decode, qui interprète l’instruction :

Découpe l’instruction en plusieurs parties pour être utilisable par d’autres parties du processeur.

A savoir que la première partie constitue “l’opcode’’ (code d’opération), qui permet de savoir ce qu’il faut faire, et le reste permet de savoir les opérandes, (les valeurs / adresse. À modifier, ajouter, multiplier etc…).

Execute, met en relation toutes les parties du processeur qui sont nécessaire à l’instruction, si la valeur est trop grande et déborde, un registre d’état va l’indiquer (stack overflow).

Writeback va permettre l’écriture du résultat, et permettre le retour du résultat dans les programmes applicatifs.

## Sources

* https://fr.wikipedia.org/wiki/Processeur
* https://www.intel.fr/content/www/fr/fr/products/processors/core.html
* https://www.amd.com/fr/products/processors-desktop
* Diaporama : B1-ARCHI-01a-Introduction