De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

El Intel 80286 [3] (también comercializado como iAPX 286 [4] y a menudo llamado Intel 286 ) es un microprocesador de 16 bits que se introdujo el 1 de febrero de 1982. Fue la primera CPU basada en 8086 con una CPU separada, sin buses de datos y direcciones multiplexados y también el primero con administración de memoria y amplias capacidades de protección. El 80286 usó aproximadamente 134,000 transistores en su encarnación original nMOS ( HMOS ) y, al igual que el 80186 contemporáneo , [5] podría ejecutar correctamente la mayoría del software escrito para los procesadores Intel 8086 y 8088 anteriores . [6]

El 80286 se empleó para IBM PC / AT , introducido en 1984, y luego se usó ampliamente en la mayoría de las computadoras compatibles con PC / AT hasta principios de la década de 1990.

Historia y actuación [ editar ]

AMD 80286 (versión de 16 MHz)

Los primeros chips 80286 de Intel se especificaron para una frecuencia máxima de reloj de 5, 6 u 8  MHz y versiones posteriores para 12,5 MHz. AMD y Harris más tarde produjeron piezas de 16 MHz, 20 MHz y 25 MHz, respectivamente. Intersil y Fujitsu también diseñaron versiones CMOS completamente estáticas de la implementación nMOS de carga de agotamiento original de Intel , en gran parte dirigidas a dispositivos que funcionan con baterías.

En promedio, se informó que el 80286 tenía una velocidad de aproximadamente 0.21 instrucciones por reloj en programas "típicos", [7] aunque podría ser significativamente más rápido en código optimizado y en bucles estrechos, ya que muchas instrucciones podrían ejecutarse en 2 ciclos de reloj. cada. Se informó que los modelos de 6 MHz, 10 MHz y 12 MHz funcionaron a 0.9 MIPS, 1.5 MIPS y 2.66 MIPS respectivamente. [8]

El último nivel de paso E del 80286 estaba libre de varias erratas importantes que causaban problemas a los programadores y escritores del sistema operativo en las CPU de paso B y paso C anteriores (común en los clones AT y AT). Esta parte escalonada E-2 puede haber estado disponible a finales de 1986. [9]

Arquitectura [ editar ]

Microarquitectura simplificada 80286
Disparo Intel 80286

Intel no esperaba que las computadoras personales usaran el 286. [10] La CPU fue diseñada para sistemas multiusuario con aplicaciones multitarea , incluidas comunicaciones (como PBX automatizadas ) y control de procesos en tiempo real . Tenía 134.000 transistores y constaba de cuatro unidades independientes: la unidad de dirección, la unidad de bus, la unidad de instrucción y la unidad de ejecución, organizadas en una tubería débilmente acoplada (con búfer) , como en el 8086. Se produjo en un paquete de 68 pines, incluyendo PLCC ( portador de chip de plástico con plomo ), LCC ( portador de chip sin plomo ) y PGA ( matriz de cuadrícula de pines) paquetes. [11]

El aumento de rendimiento del 80286 sobre el 8086 (o 8088) podría ser más del 100% por ciclo de reloj en muchos programas (es decir, un rendimiento duplicado a la misma velocidad de reloj). Este fue un gran aumento, totalmente comparable a las mejoras de velocidad aproximadamente una década después, cuando se introdujeron el i486 (1989) o el Pentium original (1993). Esto se debió en parte a los buses de datos y direcciones no multiplexados, pero principalmente al hecho de que los cálculos de direcciones (como base + índice ) eran menos costosos. Fueron realizados por una unidad dedicada en el 80286, mientras que el 8086 más antiguo tuvo que hacer un cálculo de direcciones efectivo utilizando su ALU general, consumiendo varios ciclos de reloj adicionales en muchos casos. Además, el 80286 fue más eficiente en la captación previa de instrucciones, almacenamiento en búfer, ejecución de saltos y en operaciones numéricas complejas microcodificadas como MUL / DIV que su predecesor. [12]

El 80286 incluía, además de todas las instrucciones del 8086, todas las nuevas instrucciones del 80186: ENTRAR, SALIR, CONDUCIR, INS, SALIDAS, PUSHA, POPA, PUSH inmediato, IMUL inmediato y cambios y rotaciones inmediatas. El 80286 también agregó nuevas instrucciones para el modo protegido: ARPL, CLTS, LAR, LGDT, LIDT, LLDT, LMSW, LSL, LTR, SGDT, SIDT, SLDT, SMSW, STR, VERR y VERW. Algunas de las instrucciones para el modo protegido pueden (o deben) usarse en modo real para configurar y cambiar al modo protegido, y algunas (como SMSW y LMSW) son útiles para el modo real en sí.

El Intel 80286 tenía un bus de direcciones de 24 bits y podía direccionar hasta 16  MB de RAM , en comparación con la direccionabilidad de 1 MB de su predecesor. Sin embargo, el costo de la memoria y la rareza inicial del software que usa la memoria por encima de 1 MB significaron que 80286 computadoras rara vez se enviaban con más de un megabyte de RAM. [12] Además, había una penalización en el rendimiento al acceder a la memoria extendida desde el modo real (en el que se ejecutaba DOS, el sistema operativo de PC dominante hasta mediados de la década de 1990), como se indica a continuación.

Funciones [ editar ]

Siemens 80286 (versión de 10 MHz)
IBM 80286 (versión de 8 MHz)

Modo protegido [ editar ]

El 286 fue el primero de la familia de CPU x86 en admitir el modo de dirección virtual protegida , comúnmente llamado " modo protegido ". Además, fue el primer microprocesador disponible comercialmente con capacidades MMU en chip (los sistemas que utilizan los contemporáneos Motorola 68010 y NS320xx podrían equiparse con un controlador MMU opcional). Esto permitiría a los compatibles de IBM tener sistemas operativos avanzados multitarea por primera vez y competir en el mercado de estaciones de trabajo / servidores [ cita requerida ] dominado por Unix .

Se introdujeron varias instrucciones adicionales en el modo protegido de 80286, que son útiles para sistemas operativos multitarea.

Otra característica importante del 80286 es la prevención del acceso no autorizado. Esto se logra mediante:

  • Formando diferentes segmentos para datos, código y pila, y evitando su superposición.
  • Asignar niveles de privilegios a cada segmento. Los segmentos con niveles de privilegios más bajos no pueden acceder a los segmentos con niveles de privilegios más altos.

En 80286 (y en su coprocesador Intel 80287 ), las operaciones aritméticas se pueden realizar en los siguientes tipos diferentes de números:

  • decimal empaquetado sin signo ,
  • binario sin firmar,
  • decimal sin firmar y sin empaquetar,
  • binario firmado,
  • números de punto flotante (solo con un 80287 ).

Por diseño, el 286 no podía volver del modo protegido al modo básico de dirección real compatible con 8086 (" modo real ") sin un reinicio iniciado por hardware. En el PC / AT introducido en 1984, IBM agregó circuitos externos, así como código especializado en el BIOS ROM y el microcontrolador periférico 8042 para permitir que el software provoque el reinicio, lo que permite la reentrada en modo real mientras retiene la memoria activa y devuelve el control a la programa que inició el reinicio. (El BIOS está necesariamente involucrado porque obtiene el control directamente cada vez que se reinicia la CPU). Aunque funcionó correctamente, el método impuso una enorme penalización en el rendimiento.

En teoría, las aplicaciones en modo real podrían ejecutarse directamente en el modo protegido de 16 bits si se siguieran ciertas reglas (recientemente propuestas con la introducción del 80286); Sin embargo, como muchos programas de DOS no se ajustaban a esas reglas, el modo protegido no se usó ampliamente hasta la aparición de su sucesor, el Intel 80386 de 32 bits. , que fue diseñado para ir y venir entre modos fácilmente y para proporcionar una emulación del modo real dentro del modo protegido. Cuando Intel diseñó el 286, no fue diseñado para poder realizar múltiples tareas en aplicaciones en modo real; el modo real estaba destinado a ser una forma sencilla para que un cargador de arranque preparar el sistema y luego cambiar al modo protegido; Básicamente, en modo protegido, el 80286 fue diseñado para ser un nuevo procesador con muchas similitudes con sus predecesores, mientras que el modo real en el 80286 se ofreció para sistemas de menor escala que podrían beneficiarse de una versión más avanzada del núcleo de la CPU 80186, con ventajas. como velocidades de reloj más altas, ejecución de instrucciones más rápida (medida en ciclos de reloj) y buses no multiplexados, pero no el espacio de memoria de 24 bits (16 MB).

Para admitir el modo protegido, se han agregado nuevas instrucciones: ARPL, VERR, VERW, LAR, LSL, SMSW, SGDT, SIDT, SLDT, STR, LMSW, LGDT, LIDT, LLDT, LTR, CLTS. También hay nuevas excepciones (interrupciones internas): código de operación inválido, coprocesador no disponible, falla doble, saturación de segmento del coprocesador, falla de pila, falla de protección general / saturación de segmento y otras solo para modo protegido.

Soporte de SO [ editar ]

El modo protegido del 80286 no se utilizó hasta muchos años después de su lanzamiento, en parte debido al alto costo de agregar memoria extendida a una PC, pero también debido a la necesidad de software para soportar la gran base de usuarios de 8086 PC. Por ejemplo, en 1986 el único programa que lo utilizó fue VDISK, un controlador de disco RAM incluido con PC DOS 3.0 y 3.1. Un DOS podría utilizar la RAM adicional disponible en modo protegido ( memoria extendida ) ya sea a través de una llamada al BIOS (INT 15h, AH = 87h), como un disco RAM o como emulación de memoria expandida . [12] La dificultad radicaba en la incompatibilidad de antiguosmodo realProgramas DOS con modo protegido. Simplemente no podrían ejecutarse de forma nativa en este nuevo modo sin una modificación significativa. En el modo protegido, la gestión de la memoria y el manejo de interrupciones se realizaron de manera diferente que en el modo real. Además, los programas de DOS normalmente accederían directamente a segmentos de código y datos que no les pertenecían, ya que el modo real les permitía hacerlo sin restricciones; por el contrario, la intención del diseño del modo protegido era evitar que los programas accedan a cualquier segmento que no sea el suyo, a menos que se permita explícitamente un acceso especial. Si bien fue posible configurar un entorno de modo protegido que permitiera a todos los programas acceder a todos los segmentos (colocando todos los descriptores de segmento en el GDT y asignándoles el mismo nivel de privilegio),esto socavó casi todas las ventajas del modo protegido excepto el espacio de direcciones extendido (24 bits). La elección a la que se enfrentaron los desarrolladores de sistemas operativos fue empezar desde cero y crear un sistema operativo que no ejecutara la gran mayoría de los programas antiguos, o crear una versión de DOS que fuera lenta y fea (es decir, fea desde un punto de vista técnico interno). punto de vista), pero seguiría ejecutando la mayoría de los programas antiguos. El modo protegido tampoco proporcionó una ventaja de rendimiento lo suficientemente significativa sobre el modo real compatible con 8086 para justificar el soporte de sus capacidades; en realidad, a excepción de los cambios de tareas cuando se realizaba varias tareas al mismo tiempo, en realidad solo produjo una desventaja de rendimiento, al ralentizar muchas instrucciones a través de una letanía de comprobaciones de privilegios adicionales. En modo protegido, los registros seguían siendo de 16 bits,y el programador todavía se vio obligado a utilizar un mapa de memoria compuesto por segmentos de 64 kB, como en el modo real.[13]

En enero de 1985, Digital Research presentó una vista previa del sistema operativo Concurrent DOS 286 1.0 desarrollado en cooperación con Intel . El producto funcionaría estrictamente como un sistema operativo 80286 en modo nativo (es decir, modo protegido), lo que permitiría a los usuarios aprovechar al máximo el modo protegido para realizar operaciones multiusuario y multitarea mientras ejecutan la emulación 8086. [14] [15] [16] Esto funcionó en el paso del prototipo B-1 del chip, pero Digital Research descubrió problemas con la emulación en el paso del nivel de producción C-1 en mayo, lo que no permitía que se ejecutara el DOS 286 concurrente. Software 8086 en modo protegido. El lanzamiento de Concurrent DOS 286 se retrasó hasta que Intel desarrollara una nueva versión del chip.[14] En agosto, después de pruebas exhaustivas en muestras de pasos E-1 del 80286, Digital Research reconoció que Intel corrigió todas las 286 erratas documentadas, pero dijo que todavía había problemas de rendimiento del chip sin documentar con la versión preliminar de Concurrent DOS 286 ejecutándose en el paso E-1. Intel dijo que el enfoque que Digital Research deseaba adoptar para emular el software 8086 en modo protegido difería de las especificaciones originales. Sin embargo, en el paso E-2, implementaron cambios menores en el microcódigo que permitirían a Digital Research ejecutar el modo de emulación mucho más rápido. [9] Denominado IBM 4680 OS , IBM originalmente eligió DR Concurrent DOS 286 como base de su IBM 4680computadora para productos IBM Plant System y terminales de punto de venta en 1986. [17] FlexOS 286 versión 1.3 de Digital Research , una derivación de Concurrent DOS 286, fue desarrollado en 1986, introducido en enero de 1987, y posteriormente adoptado por IBM para su IBM 4690 OS , pero las mismas limitaciones lo afectaron.

Los problemas llevaron a Bill Gates a referirse al 80286 como un "chip con muerte cerebral", [18] [ ¿cuándo? ] ya que estaba claro que el nuevo entorno Microsoft Windows no podría ejecutar múltiples aplicaciones MS-DOS con el 286. Podría decirse que fue el responsable de la división entre Microsoft e IBM, ya que IBM insistió en que OS / 2 , originalmente una empresa conjunta entre IBM y Microsoft, se ejecutaría en un 286 (y en modo texto).

Otros sistemas operativos que utilizaron el modo protegido del 286 fueron Microsoft Xenix (alrededor de 1984), [19] Coherent , [20] y Minix . [21] Estos se vieron menos obstaculizados por las limitaciones del modo protegido 80286 porque no tenían como objetivo ejecutar aplicaciones MS-DOS u otros programas en modo real. En su chip sucesor 80386 , Intel mejoró el modo protegido para abordar más memoria y también agregó el modo 8086 virtual separado , un modo dentro del modo protegido con una compatibilidad mucho mejor con MS-DOS, para satisfacer las necesidades divergentes del mercado. [22]

Componente de soporte [ editar ]

Esta lista de componentes de interfaz de bus que se conecta al microprocesador Intel 80286.

  • 82C284 Generador de reloj y controlador
  • Controlador de bus 82288
  • 82289 Bus Arbiter

Ver también [ editar ]

  • U80601 - Copia casi idéntica del 80286 fabricado en 1989/90 en Alemania del Este . En la Unión Soviética, un clon del 80286 fue designado KR1847VM286 (en ruso : КР1847ВМ286 ). [23]
  • LOADALL : instrucción 80286/80386 sin documentar que podría usarse para obtener acceso a toda la memoria disponible en modo real.
  • Ventanas / 286
  • iAPX , para el nombre de iAPX

Referencias [ editar ]

  1. ^ "Historia de la CPU - Museo de la CPU - Ciclo de vida de la CPU" . www.cpushack.com .
  2. ^ "Proceso de litografía de 1,5 µm - WikiChip" . en.wikichip.org .
  3. ^ "Salón de la fama del microprocesador" . Intel. Archivado desde el original el 6 de julio de 2007 . Consultado el 11 de agosto de 2007 .
  4. ^ Referencia del programador de iAPX 286 (PDF) . Intel. 1983. página 1-1.
  5. ^ Un primo más simple de la línea 8086 con periféricos integrados, destinado a sistemas integrados .
  6. ^ "Museo Intel - Salón de la fama del microprocesador" . Intel.com. 14 de mayo de 2009. Archivado desde el original el 12 de marzo de 2009 . Consultado el 20 de junio de 2009 .
  7. ^ "Programación e información de Intel Architecure [sic]" . Intel80386.com. 13 de enero de 2004 . Consultado el 28 de abril de 2009 .
  8. ^ "Paquete de microprocesador 80286, 1982" . Content.cdlib.org . Consultado el 28 de abril de 2009 .
  9. ↑ a b Foster, Edward (26 de agosto de 1985). "Intel muestra un nuevo chip 80286: el futuro del DOS 286 concurrente de DRI aún no está claro después de la reparación del procesador" . InfoWorld . InfoWorld Media Group . 7 (34): 21. ISSN 0199-6649 . 
  10. ^ Bruto, Neil; Coy, Peter (6 de marzo de 1995). "La paradoja de la tecnología" . Bloomberg . Consultado el 19 de marzo de 2020 .
  11. ^ "Familia de microprocesadores Intel 80286" . CPU-World . Consultado el 19 de mayo de 2012 .
  12. ↑ a b c Bahadure, Nilesh B. (2010). "15 Otros microprocesadores de 16 bits 80186 y 80286" . Microprocesadores: 8086/8088, 80186/80286, 80386/80486 y la familia Pentium . PHI Learning Pvt. Ltd. págs. 503–537. ISBN 978-8120339422.
  13. ^ Petzold, Charles (1986). "Obstáculos para un sistema operativo adulto" . Revista de PC . 5 (11): 170–74.
  14. ↑ a b Foster, Edward (13 de mayo de 1985). "Super DOS espera el nuevo 80286 - DOS 286 concurrente - retrasado hasta que Intel actualice el chip - ofrece la potencia de Xenix y la compatibilidad con IBM PC" . InfoWorld . InfoWorld Media Group . 7 (19): 17-18. ISSN 0199-6649 . 
  15. ^ Suplemento de FlexOS para equipos basados ​​en Intel iAPX 286 (PDF) . 1.3 (1 ed.). Digital Research, Inc. Noviembre de 1986 . Consultado el 14 de agosto de 2018 .
  16. ^ "Simultáneo DOS 68K 1.2 - Kit de desarrollador para Motorola VME / 10 - Disco 2" . 6 de agosto de 1986 [8 de abril de 1986] . Consultado el 13 de septiembre de 2018 .(NB. Este paquete también incluye algunos archivos de encabezado de DOS 286 simultáneos , incluido STRUCT.H que menciona explícitamente LOADALL para la "emulación 8086").
  17. ^ Melissa Calvo y Jim Forbes (10 de febrero de 1986). InfoWorld (ed.). IBM para utilizar un sistema operativo DRI . pag. 12 . Consultado el 6 de septiembre de 2011 .
  18. ^ Dewar, Robert BK; Smosna, Matthew (1990). Microprocesadores: la visión de un programador . Nueva York: McGraw-Hill. ISBN 0-07-016638-2.
  19. ^ http://www.tenox.net/docs/microsoft_xenix_30_286_press_release.pdf Archivado el 7 de enero de 2014 en Wayback Machine .
  20. ^ http://textfiles.com/internet/FAQ/coherent.faq .
  21. ^ http://minix.net/minix/minix.html Archivado el 7 de enero de 2014 en Wayback Machine .
  22. ^ Charles Petzold , Intel's 32-bit Wonder: The 80386 Microprocessor, PC Magazine , 25 de noviembre de 1986, págs. 150-152.
  23. ^ "Microprocesadores soviéticos, microcontroladores, chips FPU y sus análogos occidentales" . CPU-mundo . Consultado el 24 de marzo de 2016 .

Enlaces externos [ editar ]

  • Hojas de datos de Intel
  • Manual de referencia del programador Intel 80286 y 80287 en bitsavers.org
  • Manual de referencia del programador Intel 80286 1987 (txt) . Sugerencia: utilice, por ejemplo, la codificación hebrea (IBM-862) .
  • Linux en 286 laptops y notebooks
  • Imágenes y descripciones de Intel 80286 en cpu-collection.de
  • CPU-INFO: 80286, historial detallado del procesador
  • Descripción general de los 286 chips compatibles
  • Información de la CPU Intel 80286, incluida la errata del chip y el comportamiento indocumentado
  • Manual de referencia de hardware Intel 80286