La familia x86 reagrupa las microprocesseurs compatibles con el juego de instrucciones de la Intel 8086. Esta serie es nombrada IA-32 (para Intel arquitectura 32 bits) por Intel para sus processeurs a marchar del Pentium.
Un constructor de microprocesseur para PC tiene que mantener una compatibilidad ascendente con este juego de instrucción se quiere que los softwares ya escritos funcionan sobre los nuevos microprocesseurs.
Sumario |
Al origen de concepción CISC, las nuevas generaciones han sido cada vez más concebidas como de las processeurs RISC, las instrucciones complejas que son transformadas en el microprocesseur en instrucciones más elementales.
Esta familia de processeurs, cuya el Pentium es emblemático, está pasando en el 64 bit. La gama AMD64 de AMD introducido de las extensiones 64 bits, integradas parcialmente un año más tarde por Intel con las instrucciones Intel 64 o EM64T. Intel Propone igualmente una arquitectura 64 bit IA-64, diferente e incompatible, para sus processeurs Itanium e Itanium 2.
El cuadro aquí-debajo levanta una lista no exhaustiva de las processeurs grande público[1] implementant el juego de instrucción x86, reagrupados por generaciones que describen las evoluciones de entidad en la historia de la x86.
| Generación | Data de parution | Principales modelos grande público | Espacio de adressage lineal/físico | Principales evoluciones |
|---|---|---|---|---|
| 1 | 1978 | Intel 8086, Intel 8088 | 16-bit / 20-bit (segmenté) | Primeros processeurs x86 |
| 2 | 1982 | Intel 80186, Intel 80188, NEC V20/V30 | Cálculo rápido de los addresses en hardware, operaciones rápidas (división, multiplicación, etc) | |
| Intel 80286 | 16-bit (30-bit virtual) / 24-bit (segmenté) | MMU(Memory Dirección y gestión de empresas Une), para permitir el modo protegido y un plus grande espacio de adressage | ||
| 3 (IA-32) | 1985 | Intel386, AMD Am386 | 32-bit (46-bit virtual) / 32-bit | Juego de instrucciones 32-bit, MMU con paginación |
| 4 | 1989 | Intel486, AMD Am486 | Pipeline De tipo RISC, FPU y Memoria Esconde integrados | |
| 5 | 1993 | Pentium, Pentium MMX | Processeur superscalaire, 64-bit bebido de datos, FPU más rápido, MMX | |
| 5/6 | 1996 | Cyrix 6x86, Cyrix MII, Cyrix III (2000) / VÍA C3 (2001) | Renommage De registros, fusilamiento especulativo | |
| 6 | 1995 | Pentium Pro, AMD K5, Nx586 (1994), Rise mP6 | idem / 36-bit físico (PAE) |
Traducción del micro-instrucciones, PAE (Pentium Pro), esconde L2 integrado (Pentium Pro) |
| 1997 | AMD K6/-2/3, Pentium II/III, IDT/Centaur-C6 | Apoyo del esconde L3, 3DNow!, SSE | ||
| 7 | 1999 | Athlon, Athlon XP | FPU superscalaire, Mejor concepción (hasta 3 instrucciones x86 por top de reloj) | |
| 2000 | Pentium 4 | pipeline Profundo, elevada frecuencia, SSE2, hyper-threading | ||
| 6-M/7-M | 2003 | Pentium M, Intel Core, VÍA C7 (2005) | optimisé Para un débil consumo de energía | |
| 8 (x86-64) | Athlon 64, Opteron | 64-bit / 40-bit físico en la primera implementación AMD. | Juego de instrucciones x86-64,
controleur Memoria integrada, HyperTransport | |
| 2004 | Pentium 4 Prescott | pipeline Muy profundo, muy elevada frecuencia, SSE3 | ||
| 9 | 2006 | Intel Core 2 | Débil consumo de energía, multi corazón, frecuencia de reloj más débil, SSE4 (Penryn) | |
| 10 | 2007 | AMD Phenom | idem / 48-bit físico para el Phenom de AMD | quad-core monolithique, FPU 128-bit, SSE4tiene, HyperTransport 3 |
| ? | 2008 | Intel Atom | In-order, Muy débil consumo de energía | |
| Intel Core I7 | Out-of-order, superscalaire, Autobús QPI, Concepción modulaire, Controleur memoria integrada, 3 nivel de esconde | |||
| VÍA Nano | Out-of-order, superscalaire, cryptage Material, muy débil consumo de energía, gestión de la energía adaptative | |||
| 11 | 2010 | Intel Sandy Bridge, AMD Bulldozer | SSE5/AVX, concepción altamente modulaire |
La concepción de la gama x86 ha hecho énfasis en la compatibilidad ascendente. Así, las generaciones sucesivas de processeurs admiten varios modos de funcionamiento, que difieren particular desde el punto de vista del acceso en la memoria.
Las posibilidades de adressage memoria de la gama x86 remonten al 8080, que había 16 bits de autobuses de dirección y podía pues acceder a 64 Kio de memoria.
El 8086, para facilitar el pasaje del 8080 al 8086, introducido el adressage segmenté, donde la dirección référencée por segmento:offset es segmento · 0x10 + offset, con segmento y offset todos dos sobre 16 bits. Eso proporciona 1 Mio de memoria adressable, dividida en segmentos de 64 Kio, un segmento que comienza todos los 16 octets. El processeur tiene 4 registros de segmento : un para el código, un para los datos, un para la pile y un adicional (que sirve entre demás de destino en las instrucciones de copia de canales de índoles). Intel Introduce modelos memoria ». En el modelo tiny, que imita el modelo memoria del 8080, todos los registros de segmentos tienen la mismo valor y se accede pues efectivamente a 64 Kio de memoria. Es el modelo utilizado, bajo ESPALDA, por las exécutables .com. En el modelo small, los registros han valores diferentes pero no cambian : se tiene pues 64 Kio para el código, 64 Kio para los datos, 64 Kio para la pile. Para manipular más de memoria, hace falta hacer accesos « far », es decir ir a buscar la palabra en memoria cambiando primeramente el valor del registro de segmento, después leyendo el segmento al offset querido. El modelo ancho » hecho de los accesos far en el código y los datos y pues utiliza efectivamente el mébi-octet de espacio adressable. Los modelos medium (64 Kio de datos, varios segmentos de código) y compacto (varios segmentos de datos, 64 Kio de código) están compromisos.
El 80286 rompe la barrera de los 1 024 Kio introduciendo el modo protegido : los segmentos no se réfèrent más a la dirección segmento·0x10 pero a una mesa (la GDT -- o la LDT) que mantiene además las informaciones de amparo. El espacio adressable es de 16 Mio, el espacio virtual es potencialmente de 1 Gio, un segmento no puede sobresalir 64 Kio. Con el 386, Intel introduce un processeur 32 bit. Los segmentos pueden ser también gordos que todo el espacio adressable, sea 4 Gio. La paginación viene añadirse en la segmentación.