x86

x86
Un processeur Intel 80486 SX 25

La famille x86 regroupe les microprocesseurs compatibles avec le jeu d'instructions de l'Intel 8086. Cette série est nommée IA-32 (pour Intel architecture 32 bits) par Intel pour ses processeurs à partir du Pentium.

Un constructeur de microprocesseur pour PC doit maintenir une compatibilité ascendante avec ce jeu d'instruction s'il veut que les logiciels déjà écrits fonctionnent sur les nouveaux microprocesseurs.

Sommaire

Historique

À l'origine de conception CISC, les nouvelles générations ont été de plus en plus conçues comme des processeurs RISC, les instructions complexes étant transformées dans le microprocesseur en instructions plus élémentaires.

Cette famille de processeurs, dont le Pentium est emblématique, est en train de passer au 64 bits. La gamme AMD64 d'AMD introduit des extensions 64 bits, intégrées partiellement un an plus tard par Intel avec les instructions Intel 64 ou EM64T. Intel propose également une architecture 64 bits IA-64, différente et incompatible, pour ses processeurs Itanium et Itanium 2.

Chronologie

Le tableau ci-dessous dresse une liste non exhaustive des processeurs grand public[1] implementant le jeu d'instruction x86, regroupés par générations qui décrivent les évolutions importantes dans l'histoire du x86.

Génération Date de parution Principaux modèles grand public Espace d'adressage linéaire/physique Principales évolutions
1 1978 Intel 8086, Intel 8088 16-bit / 20-bit (segmenté) premiers processeurs x86
2 1982 Intel 80186, Intel 80188, NEC V20/V30 calcul rapide des adresses en hardware, opérations rapides (division, multiplication, etc)
Intel 80286 16-bit (30-bit virtuel) / 24-bit (segmenté) MMU (Memory Management Unit), pour permettre le mode protégé et un plus grand espace d'adressage
3 (IA-32) 1985 Intel386, AMD Am386 32-bit (46-bit virtuel) / 32-bit jeu d'instructions 32-bit, MMU avec pagination
4 1989 Intel486, AMD Am486 Pipeline de type RISC, FPU et Mémoire Cache intégrés
5 1993 Pentium, Pentium MMX Processeur superscalaire, 64-bit bus de données, FPU plus rapide, MMX
5/6 1996 Cyrix 6x86, Cyrix MII, Cyrix III (2000) / VIA C3 (2001) Renommage de registres, exécution spéculative
6 1995 Pentium Pro, AMD K5, Nx586 (1994), Rise mP6 idem / 36-bit physique (PAE)

traduction des micro-instructions, PAE (Pentium Pro), cache L2 intégré (Pentium Pro)

1997 AMD K6/-2/3, Pentium II/Pentium III, IDT/Centaur-C6 support du cache L3, 3DNow!, SSE
7 1999 Athlon, Athlon XP FPU superscalaire, meilleur conception (jusqu'à 3 instructions x86 par top d'horloge)
2000 Pentium 4 pipeline profond, haute fréquence, SSE2, hyper-threading
6-M/7-M 2003 Pentium M, VIA C7 (2005), Core Solo et Core Duo (2006) optimisé pour une faible consommation d'énergie
8 (x86-64) Athlon 64, Opteron 64-bit / 40-bit physique dans la première implémentation AMD. jeu d'instructions x86-64, controleur mémoire intégré, HyperTransport
2004 Pentium 4 Prescott pipeline très profond, très haute fréquence, SSE3
9 2006 Intel Core 2 faible consommation d'énergie, multi coeur, fréquence d'horloge plus faible, SSE4 (Penryn)
10 2007 AMD Phenom idem / 48-bit physique pour le Phenom d'AMD quad-core monolithique, FPU 128-bit, SSE4a, HyperTransport 3, conception modulaire
11 2008 Intel Atom In-order, très faible consommation d'énergie
Intel Core i7 Out-of-order, superscalaire, bus QPI, Conception modulaire, Controleur mémoire intégré, 3 niveau de cache
VIA Nano Out-of-order, superscalaire, cryptage matériel, très faible consommation d'énergie, gestion de l'énergie adaptative
12 2010 Intel Sandy Bridge, AMD Bulldozer SSE5/AVX, conception hautement modulaire

Architecture

La conception de la gamme x86 a mis l'accent sur la compatibilité ascendante. Ainsi, les générations successives de processeurs admettent plusieurs modes de fonctionnement, qui diffèrent en particulier du point de vue de l'accès à la mémoire.

Accès mémoire

Les possibilités d'adressage mémoire de la gamme x86 remontent au 8080, qui avait 16 bits de bus d'adresse et pouvait donc accéder à 64 Kio de mémoire.

Le 8086, pour faciliter le passage du 8080 au 8086, introduit l'adressage segmenté, où l'adresse référencée par segment:offset est segment · 0x10 + offset, avec segment et offset tous deux sur 16 bits. Cela fournit 1 Mio de mémoire adressable, divisée en segments de 64 Kio, un segment commençant tous les 16 octets. Le processeur a 4 registres de segment : un pour le code, un pour les données, un pour la pile et un supplémentaire (qui sert entre autres de destination dans les instructions de copie de chaînes de caractères). Intel introduit des « modèles mémoire ». Dans le modèle tiny, qui imite le modèle mémoire du 8080, tous les registres de segments ont la même valeur et on accède donc effectivement à 64 Kio de mémoire. C'est le modèle utilisé, sous DOS, par les exécutables .com. Dans le modèle small, les registres ont des valeurs différentes mais ne changent pas : on a donc 64 Kio pour le code, 64 Kio pour les données, 64 Kio pour la pile. Pour manipuler plus de mémoire, il faut faire des accès « far », c'est-à-dire aller chercher le mot en mémoire en changeant d'abord la valeur du registre de segment, puis en lisant le segment à l'offset voulu. Le modèle « large » fait des accès far dans le code et les données et donc utilise effectivement le mébi-octet d'espace adressable. Les modèles medium (64 Kio de données, plusieurs segments de code) et compact (plusieurs segments de données, 64 Kio de code) sont des compromis.

Le 80286 brise la barrière des 1 024 Kio en introduisant le mode protégé : les segments ne se réfèrent plus à l'adresse segment·0x10 mais à une table (la GDT -- ou la LDT) qui maintient en plus les informations de protection. L'espace adressable est de 16 Mio, l'espace virtuel est potentiellement de 1 Gio, un segment ne peut pas dépasser 64 Kio. Avec le 386, Intel introduit un processeur 32 bit. Les segments peuvent être aussi gros que tout l'espace adressable, soit 4 Gio. La pagination vient s'ajouter à la segmentation.

Notes et références

  1. Microprocessor Hall of Fame, Intel. Consulté le 2007-08-11

Voir aussi

Articles connexes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article x86 de Wikipédia en français (auteurs)

Игры ⚽ Поможем решить контрольную работу

Regardez d'autres dictionnaires:

  • X86-64 — is a superset of the x86 instruction set architecture. x86 64 processors can run existing 32 bit or 16 bit x86 programs at full speed, but also support new programs written with a 64 bit address space and other additional capabilities.The x86 64… …   Wikipedia

  • X86 — 80486 DX2 x86 (Intel 80x86)  аппаратная платформа: архитектура микропроцессора и соответствующий набор инструкций, как разработанных и выпускаемых компанией Intel, так и совместимых с ними процессоров других производителей (AMD, VIA …   Википедия

  • X86-64 — Saltar a navegación, búsqueda x86 64 es una arquitectura basada en la extensión del conjunto de instrucciones x86 para manejar direcciones de 64 bits. Además de una simple extensión contempla mejoras adicionales como duplicar el número y el… …   Wikipedia Español

  • x86-64 — es una arquitectura basada en la extensión del conjunto de instrucciones x86 para manejar direcciones de 64 bits. Además de una simple extensión contempla mejoras adicionales como duplicar el número y el tamaño de los registros de uso general y… …   Wikipedia Español

  • X86-64 — (также x64/AMD64/Intel64/EM64T) 64 битная аппаратная платформа: архитектура микропроцессора и соответствующий набор инструкций и чипсет, разработанные компанией AMD. Это расширение архитектуры x86 с полной обратной совместимостью. Набор… …   Википедия

  • X86 — Un processeur Intel 80486 SX 25 x86 est la dénomination de la famille de microprocesseurs compatibles avec le jeu d instructions de l Intel 8086. Les différents constructeurs de microprocesseurs pour PC se doivent de maintenir une compatibilité… …   Wikipédia en Français

  • X86 32 — x86 Un processeur Intel 80486 SX 25 x86 est la dénomination de la famille de microprocesseurs compatibles avec le jeu d instructions de l Intel 8086. Les différents constructeurs de microprocesseurs pour PC se doivent de maintenir une… …   Wikipédia en Français

  • X86 — Saltar a navegación, búsqueda Intel Pentium 4 Northwood x86 es la denominación genérica dada a ciertos microprocesadores de la familia Intel, sus compatibles y la arquitectura básica a la que estos procesadores pertenecen, por la terminación de… …   Wikipedia Español

  • X86 — es la denominación genérica dada a ciertos procesadores de la familia Intel, sus compatibles y a la arquitectura básica de estos procesadores, por la terminación de sus nombres: 8086, 80286, 80386 y 80486. Los sucesores del 80486 pasarán a ser… …   Enciclopedia Universal

  • x86 —   (80x86), Bezeichnung für diejenige Familie von Intel Prozessoren, die mit dem PC weite Verbreitung gefunden hat. Sie reicht vom Intel 80186 über 80286, 80386 und 80486 bis hin zu den Pentium Typen (I bis 4). Als x86 wird gelegentlich auch der… …   Universal-Lexikon

  • x86 — This article is about Intel microprocessor architecture in general. For the 32 bit generation of this architecture which is also called x86 , see IA 32. x86 Designer Intel, AMD Bits 16 bit, 32 bit, and/or 64 bit Introduced 1978 Design …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”