stringtranslate.com

Intel 8086

El 8086 [3] (también llamado iAPX 86 ) [4] es un chip microprocesador de 16 bits diseñado por Intel entre principios de 1976 y el 8 de junio de 1978, cuando fue lanzado. El Intel 8088 , lanzado el 1 de julio de 1979, [5] es un chip ligeramente modificado con un bus de datos externo de 8 bits (que permite el uso de circuitos integrados de soporte más baratos y menos numerosos ), [nota 1] y es notable por ser el procesador utilizado en el diseño original de IBM PC .

El 8086 dio origen a la arquitectura x86 , que finalmente se convirtió en la línea de procesadores más exitosa de Intel. El 5 de junio de 2018, Intel lanzó una CPU de edición limitada para celebrar el 40.° aniversario del Intel 8086, llamada Intel Core i7-8086K . [5] [ enlace muerto ‍ ]

Historia

Fondo

En 1972, Intel lanzó el 8008 , el primer microprocesador de 8 bits de Intel. [nota 2] Implementaba un conjunto de instrucciones diseñado por Datapoint Corporation con terminales CRT programables en mente, que también resultó ser bastante de propósito general. El dispositivo necesitaba varios circuitos integrados adicionales para producir una computadora funcional, en parte debido a que estaba empaquetado en un pequeño "paquete de memoria" de 18 pines, lo que descartaba el uso de un bus de direcciones separado (Intel era principalmente un fabricante de DRAM en ese momento).

Dos años después, Intel lanzó el 8080 , que empleaba los nuevos paquetes DIL de 40 pines desarrollados originalmente para circuitos integrados de calculadoras para habilitar un bus de direcciones independiente. Tenía un conjunto de instrucciones extendido que es compatible con la fuente (no compatible con binarios ) con el 8008 [6] y también incluía algunas instrucciones de 16 bits para facilitar la programación. El dispositivo 8080 fue finalmente reemplazado por el 8085 (1977) basado en carga de agotamiento , que usaba una única fuente de alimentación de +5 V en lugar de los tres voltajes operativos diferentes de los chips anteriores. [nota 3] Otros microprocesadores de 8 bits bien conocidos que surgieron durante estos años son Motorola 6800 (1974), General Instrument PIC16X (1975), MOS Technology 6502 (1975), Zilog Z80 (1976) y Motorola 6809 (1978).

El primer diseño x86

Imagen de la matriz de la CPU Intel 8086

El proyecto 8086 comenzó en mayo de 1976 y originalmente fue pensado como un sustituto temporal del ambicioso y retrasado proyecto iAPX 432. Fue un intento de desviar la atención de los procesadores de 16 y 32 bits menos retrasados ​​de otros fabricantes: Motorola , Zilog y National Semiconductor .

Mientras que el 8086 era un microprocesador de 16 bits, utilizaba la misma microarquitectura que los microprocesadores de 8 bits de Intel (8008, 8080 y 8085). Esto permitió que los programas en lenguaje ensamblador escritos en 8 bits migraran sin problemas . [7] Se agregaron nuevas instrucciones y características, como números enteros con signo, direccionamiento base+offset y operaciones autorrepetitivas. Se agregaron instrucciones para ayudar a la compilación de código fuente de funciones anidadas en la familia de lenguajes ALGOL , incluidos Pascal y PL/M . Según el arquitecto principal Stephen P. Morse , esto fue el resultado de un enfoque más centrado en el software. Otras mejoras incluyeron instrucciones de microcódigo para las instrucciones de multiplicación y división en lenguaje ensamblador. Los diseñadores también anticiparon coprocesadores , como 8087 y 8089 , por lo que la estructura del bus se diseñó para ser flexible.

La primera revisión del conjunto de instrucciones y la arquitectura de alto nivel estuvo lista después de aproximadamente tres meses, [nota 4] y como casi no se utilizaron herramientas CAD, cuatro ingenieros y 12 personas de diseño trabajaron simultáneamente en el chip. [nota 5] El 8086 tardó un poco más de dos años desde la idea hasta el producto funcional, lo que se consideró rápido para un diseño complejo en la década de 1970.

El 8086 fue secuenciado [nota 6] usando una mezcla de lógica aleatoria [8] y microcódigo y fue implementado usando circuitos nMOS de carga de agotamiento con aproximadamente 20.000 transistores activos (29.000 contando todos los sitios ROM y PLA ). Pronto fue trasladado a un nuevo proceso de fabricación nMOS refinado llamado HMOS (por High performance MOS) que Intel desarrolló originalmente para la fabricación de productos de RAM estática rápida . [nota 7] A esto le siguieron las versiones HMOS-II, HMOS-III y, finalmente, una versión CMOS completamente estática para dispositivos alimentados por batería, fabricada usando los procesos CHMOS de Intel . [nota 8] El chip original medía 33 mm² y el tamaño mínimo de característica era 3,2 μm. Las instrucciones MUL y DIV eran muy lentas debido a que estaban microcodificadas , por lo que los programadores x86 generalmente usaban las instrucciones de desplazamiento de bits para multiplicar y dividir en su lugar. [ cita requerida ]

El chip 8086 se redujo a 2 μm en 1981; esta versión también corrigió un error en el registro de pila de los chips originales de 3,5 μm. Más tarde, las variantes de 1,5 μm y CMOS se subcontrataron a otros fabricantes y no se desarrollaron internamente.

La arquitectura fue definida por Stephen P. Morse con algo de ayuda de Bruce Ravenel (el arquitecto del 8087) en el refinamiento de las revisiones finales. El diseñador lógico Jim McKevitt y John Bayliss fueron los ingenieros principales del equipo de desarrollo a nivel de hardware [nota 9] y Bill Pohlman el gerente del proyecto. El legado del 8086 perdura en el conjunto de instrucciones básicas de los servidores y computadoras personales actuales; el 8086 también prestó sus dos últimos dígitos a versiones extendidas posteriores del diseño, como el Intel 286 y el Intel 386 , todos los cuales eventualmente se conocieron como la familia x86 . (Otra referencia es que el PCI Vendor ID para dispositivos Intel es 8086 h ).

Detalles

Asignaciones de pines del 8086 en modo mínimo y máximo

Autobuses y funcionamiento

Todos los registros internos, así como los buses de datos internos y externos, tienen 16 bits de ancho, lo que estableció firmemente la identidad de "microprocesador de 16 bits" del 8086. Un bus de dirección externo de 20 bits proporciona un espacio de dirección física de 1  MiB (2 20 = 1.048.576 x 1 byte ). Este espacio de dirección se direcciona mediante la "segmentación" de la memoria interna. El bus de datos se multiplexa con el bus de dirección para que todas las líneas de control quepan en un paquete estándar de doble línea de 40 pines . Proporciona un bus de dirección de E/S de 16 bits, que admite 64  KB de espacio de E/S separado. El espacio de dirección lineal máximo está limitado a 64 KB, simplemente porque los registros de índice/dirección internos tienen solo 16 bits de ancho. La programación sobre límites de memoria de 64 KB implica ajustar los registros de segmento (ver a continuación); Esta dificultad existió hasta que la arquitectura 80386 introdujo registros más anchos (32 bits) (el hardware de administración de memoria en el 80286 no ayudó en este sentido, ya que sus registros todavía tienen solo 16 bits de ancho).

Modos de hardware del 8086

Algunos de los pines de control, que llevan señales esenciales para todas las operaciones externas, tienen más de una función dependiendo de si el dispositivo se opera en modo mínimo o máximo . El primer modo está pensado para sistemas pequeños de un solo procesador, mientras que el segundo es para sistemas medianos o grandes que utilizan más de un procesador (una especie de modo multiprocesador). El modo máximo es necesario cuando se utiliza un coprocesador 8087 o 8089. El voltaje en el pin 33 (MN/ MX ) determina el modo. Cambiar el estado del pin 33 cambia la función de otros pines, la mayoría de los cuales tienen que ver con la forma en que la CPU maneja el bus (local). [nota 10] El modo suele estar cableado en el circuito y, por lo tanto, no se puede cambiar mediante software. El funcionamiento de estos modos se describe en términos de diagramas de tiempo en las hojas de datos y manuales de Intel. En el modo mínimo, todas las señales de control son generadas por el propio 8086.

Registros e instrucciones

El 8086 tiene ocho registros más o menos generales de 16 bits (incluido el puntero de pila , pero excluidos el puntero de instrucción, el registro de indicadores y los registros de segmento). Cuatro de ellos, AX, BX, CX, DX, también se pueden acceder como pares de registros de 8 bits (consulte la figura), mientras que los otros cuatro, SI, DI, BP, SP, son solo de 16 bits.

Debido a una codificación compacta inspirada en los procesadores de 8 bits, la mayoría de las instrucciones son operaciones de una o dos direcciones, lo que significa que el resultado se almacena en uno de los operandos. Como máximo, uno de los operandos puede estar en la memoria, pero este operando de memoria también puede ser el destino , mientras que el otro operando, el origen , puede ser registro o inmediato . A menudo, también se puede utilizar una única ubicación de memoria como origen y destino , lo que, entre otros factores, contribuye aún más a una densidad de código comparable a (y a menudo mejor que) la de la mayoría de las máquinas de ocho bits de la época.

El grado de generalidad de la mayoría de los registros es mucho mayor que en el 8080 o el 8085. Sin embargo, los registros del 8086 eran más especializados que en la mayoría de las minicomputadoras contemporáneas y también se usan implícitamente en algunas instrucciones. Si bien es perfectamente sensato para el programador ensamblador, esto hace que la asignación de registros para los compiladores sea más complicada en comparación con los procesadores de 16 y 32 bits más ortogonales de la época, como el PDP-11 , VAX , 68000 , 32016 , etc. Por otro lado, al ser más regulares que los microprocesadores de 8 bits bastante minimalistas pero omnipresentes, como el 6502 , 6800 , 6809 , 8085 , MCS-48 , 8051 y otras máquinas contemporáneas basadas en acumuladores, es significativamente más fácil construir un generador de código eficiente para la arquitectura del 8086.

Otro factor para esto es que el 8086 también introdujo algunas instrucciones nuevas (no presentes en el 8080 y 8085) para soportar mejor los lenguajes de programación de alto nivel basados ​​en pila como Pascal y PL/M ; algunas de las instrucciones más útiles son , y ret size , que soportan la " convención de llamada de Pascal " directamente. (Varias otras, como y , se agregaron en los procesadores 80186, 80286 y 80386 posteriores).push mem-op push immedenter

El hardware admite una pila de 64 KB (un segmento) que crece hacia direcciones inferiores ; las palabras de 16 bits se insertan en la pila y SS:SP apunta a la parte superior de la pila. Hay 256  interrupciones que pueden ser invocadas tanto por hardware como por software. Las interrupciones pueden funcionar en cascada, utilizando la pila para almacenar las direcciones de retorno .

El 8086 tiene 64 K de espacio de puerto de E/S de 8 bits (o alternativamente 32 K de palabra de 16 bits) .

Banderas

El 8086 tiene un registro de indicadores de 16 bits . Nueve de estos indicadores de código de condición están activos e indican el estado actual del procesador: Indicador de acarreo (CF), Indicador de paridad (PF), Indicador de acarreo auxiliar (AF), Indicador de cero (ZF), Indicador de signo (SF), Indicador de trampa (TF), Indicador de interrupción (IF), Indicador de dirección (DF) e Indicador de desbordamiento (OF). También conocido como palabra de estado, el diseño del registro de indicadores es el siguiente: [9]

Segmentación

También hay cuatro registros de segmento de 16 bits (ver figura) que permiten a la CPU 8086 acceder a un megabyte de memoria de una manera inusual. En lugar de concatenar el registro de segmento con el registro de dirección, como en la mayoría de los procesadores cuyo espacio de dirección excede el tamaño de su registro, el 8086 desplaza el segmento de 16 bits solo cuatro bits antes de agregarlo al desplazamiento de 16 bits (16×segmento + desplazamiento), produciendo así una dirección externa (o efectiva o física) de 20 bits a partir del par segmento:desplazamiento de 32 bits. Como resultado, cada dirección externa puede ser referenciada por 2 12 = 4096 pares segmento:desplazamiento diferentes.

Aunque muchos programadores lo consideran complicado y engorroso, este esquema también tiene ventajas: se puede cargar un programa pequeño (de menos de 64 KB) comenzando en un desplazamiento fijo (como 0000) en su propio segmento, evitando la necesidad de reubicación , con un máximo de 15 bytes de desperdicio de alineación.

Los compiladores de la familia 8086 admiten comúnmente dos tipos de punteros , cercanos y lejanos . Los punteros cercanos son desplazamientos de 16 bits asociados implícitamente con el código del programa o segmento de datos y, por lo tanto, solo se pueden usar dentro de partes de un programa lo suficientemente pequeñas como para caber en un segmento. Los punteros lejanos son pares segmento:desplazamiento de 32 bits que se resuelven en direcciones externas de 20 bits. Algunos compiladores también admiten punteros enormes , que son como punteros lejanos excepto que la aritmética de punteros en un puntero enorme lo trata como un puntero lineal de 20 bits, mientras que la aritmética de punteros en un puntero lejano se envuelve dentro de su desplazamiento de 16 bits sin tocar la parte del segmento de la dirección.

Para evitar la necesidad de especificar proximidad y lejanía en numerosos punteros, estructuras de datos y funciones, los compiladores también admiten "modelos de memoria" que especifican tamaños de puntero predeterminados. Los modelos diminuto (máximo 64 K), pequeño (máximo 128 K), compacto (datos > 64 K), mediano (código > 64 K), grande (código, datos > 64 K) y enorme (matrices individuales > 64 K) cubren combinaciones prácticas de punteros cercanos, lejanos y enormes para código y datos. El modelo diminuto significa que el código y los datos se comparten en un solo segmento, al igual que en la mayoría de los procesadores basados ​​en 8 bits, y se puede utilizar para crear archivos .com, por ejemplo. Las bibliotecas precompiladas a menudo vienen en varias versiones compiladas para diferentes modelos de memoria.

Según Morse et al., [10] los diseñadores en realidad contemplaron utilizar un desplazamiento de 8 bits (en lugar de 4 bits) para crear un espacio de dirección física de 16 MB. Sin embargo, como esto habría obligado a que los segmentos comenzaran en límites de 256 bytes, y 1 MB se consideraba demasiado grande para un microprocesador alrededor de 1976, la idea fue descartada. Además, no había suficientes pines disponibles en un paquete de 40 pines de bajo costo para los cuatro pines adicionales del bus de direcciones.

En principio, el espacio de direcciones de la serie x86 podría haberse ampliado en procesadores posteriores incrementando el valor de desplazamiento, siempre y cuando las aplicaciones obtuvieran sus segmentos del sistema operativo y no hicieran suposiciones sobre la equivalencia de diferentes pares segmento:desplazamiento. [nota 11] En la práctica, el uso de punteros "enormes" y mecanismos similares estaba muy extendido y el direccionamiento plano de 32 bits que se hizo posible con los registros de desplazamiento de 32 bits en el 80386 eventualmente extendió el rango de direccionamiento limitado de una manera más general.

El flujo de instrucciones se recupera de la memoria en forma de palabras y el procesador lo direcciona internamente al nivel de bytes según sea necesario. Un mecanismo de cola de flujo de instrucciones permite poner en cola hasta 6 bytes del flujo de instrucciones mientras se espera la decodificación y la ejecución. La cola actúa como un búfer FIFO (First-In-First-Out), del que la unidad de ejecución (UE) extrae bytes de instrucciones según sea necesario. Siempre que haya espacio para al menos dos bytes en la cola, la BIU intentará un ciclo de memoria de búsqueda de palabras. Si la cola está vacía (después de una instrucción de bifurcación, por ejemplo), el primer byte en la cola queda inmediatamente disponible para la UE. [11]

Portar software antiguo

Los programas pequeños podían ignorar la segmentación y utilizar simplemente un direccionamiento de 16 bits. Esto permite que el software de 8 bits se pueda trasladar con bastante facilidad al 8086. Los autores de la mayoría de las implementaciones de DOS aprovecharon esta ventaja proporcionando una interfaz de programación de aplicaciones muy similar a CP/M, además de incluir el sencillo formato de archivo ejecutable .com , idéntico al de CP/M. Esto era importante cuando el 8086 y MS-DOS eran nuevos, porque permitía que muchas aplicaciones CP/M (y otras) existentes estuvieran disponibles rápidamente, lo que facilitó enormemente la aceptación de la nueva plataforma.

Código de ejemplo

El siguiente código fuente de ensamblaje 8086 corresponde a una subrutina llamada que copia una cadena de caracteres ASCIIZ_strtolower terminada en cero de una ubicación a otra, convirtiendo todos los caracteres alfabéticos a minúsculas. La cadena se copia un byte (carácter de 8 bits) a la vez.

El código de ejemplo utiliza el registro BP (puntero base) para establecer un marco de llamada , un área en la pila que contiene todos los parámetros y variables locales para la ejecución de la subrutina. Este tipo de convención de llamada admite código reentrante y recursivo y ha sido utilizada por lenguajes similares a Algol desde fines de la década de 1950. Se supone un modelo de memoria plana, específicamente, que los segmentos DS y ES abordan la misma región de memoria.

Actuación

Diagrama de bloques simplificado sobre Intel 8088 (una variante de 8086); 1=registros principales y de índice; 2=registros de segmento e IP; 3=sumador de direcciones; 4=bus de direcciones interno; 5=cola de instrucciones; 6=unidad de control (¡muy simplificado!); 7=interfaz de bus; 8=bus de datos interno; 9=ALU; 10/11/12=bus de dirección/datos/control externo.

Aunque en parte se ven eclipsados ​​por otras opciones de diseño en este chip en particular, los buses de datos y direcciones multiplexados limitan ligeramente el rendimiento; las transferencias de cantidades de 16 bits u 8 bits se realizan en un ciclo de acceso a memoria de cuatro relojes, que es más rápido en 16 bits, aunque más lento en cantidades de 8 bits, en comparación con muchas CPU contemporáneas basadas en 8 bits. Como las instrucciones varían de uno a seis bytes, la búsqueda y la ejecución se realizan simultáneamente y se desacoplan en unidades separadas (como sigue siendo en los procesadores x86 actuales): la unidad de interfaz de bus alimenta el flujo de instrucciones a la unidad de ejecución a través de una cola de prebúsqueda de 6 bytes (una forma de canalización de acoplamiento flexible ), acelerando las operaciones en registros e inmediatos , mientras que las operaciones de memoria se volvieron más lentas (cuatro años después, este problema de rendimiento se solucionó con el 80186 y el 80286 ). Sin embargo, la arquitectura completa (en lugar de parcial) de 16 bits con una ALU de ancho completo significó que las instrucciones aritméticas de 16 bits ahora se podían realizar con un solo ciclo de ALU (en lugar de dos, a través de acarreo interno, como en el 8080 y 8085), acelerando considerablemente dichas instrucciones. Combinado con ortogonalizaciones de operaciones versus tipos de operandos y modos de direccionamiento , así como otras mejoras, esto hizo que la ganancia de rendimiento sobre el 8080 o 8085 fuera bastante significativa, a pesar de los casos en los que los chips más antiguos pueden ser más rápidos (ver a continuación).

Como se puede ver en estas tablas, las operaciones sobre registros e inmediatos eran rápidas (entre 2 y 4 ciclos), mientras que las instrucciones sobre operandos de memoria y los saltos eran bastante lentos; los saltos llevaban más ciclos que en los sencillos 8080 y 8085 , y el 8088 (utilizado en el IBM PC) se veía además obstaculizado por su bus más estrecho. Las razones por las que la mayoría de las instrucciones relacionadas con la memoria eran lentas eran tres:

Sin embargo, el rendimiento del acceso a la memoria mejoró drásticamente con la siguiente generación de CPU de la familia 8086 de Intel. Tanto el 80186 como el 80286 tenían hardware de cálculo de direcciones dedicado, lo que ahorraba muchos ciclos, y el 80286 también tenía buses de datos y direcciones separados (no multiplexados).

Punto flotante

El 8086/8088 se podía conectar a un coprocesador matemático para añadir rendimiento de punto flotante basado en hardware/microcódigo . El Intel 8087 era el coprocesador matemático estándar para el 8086 y el 8088, y funcionaba con números de 80 bits. Fabricantes como Cyrix (compatible con el 8087) y Weitek ( no compatible con el 8087) acabaron creando coprocesadores de punto flotante de alto rendimiento que competían con el 8087.

Versiones de chips

La frecuencia de reloj estaba originalmente limitada a 5 MHz, [nota 12] pero las últimas versiones en HMOS fueron especificadas para 10 MHz. Las versiones HMOS-III y CMOS se fabricaron durante mucho tiempo (al menos hasta bien entrada la década de 1990) para sistemas integrados, aunque su sucesor, el 80186/80188 ( que incluye algunos periféricos en chip), ha sido más popular para uso integrado.

El 80C86, la versión CMOS del 8086, se utilizó en el GRiDPad , Toshiba T1200 , HP 110 y, finalmente, en el Lunar Prospector de 1998-1999 .

Para el embalaje, el Intel 8086 estaba disponible en paquetes DIP de cerámica y plástico.

Lista de procesadores Intel 8086

  1. ^ En cantidad de 100.
  2. ^ Precio reducido en 21% desde USD $99.00, no hay información en el valor de cantidad indicado.
  3. ^ Muestreo del cuarto trimestre de 1985

Derivados y clones

Fujitsu , [23] Harris / Intersil , OKI , Siemens , Texas Instruments , NEC , Mitsubishi y AMD fabricaron versiones compatibles (y, en muchos casos, mejoradas) . Por ejemplo, el par NEC V20 y NEC V30 eran compatibles en hardware con el 8088 y el 8086, aunque NEC fabricó clones originales de Intel, μPD8088D y μPD8086D, respectivamente, pero incorporaban el conjunto de instrucciones del 80186 junto con algunas (pero no todas) de las mejoras de velocidad del 80186, lo que proporcionaba una capacidad inmediata para actualizar tanto el conjunto de instrucciones como la velocidad de procesamiento sin que los fabricantes tuvieran que modificar sus diseños. Estos procesadores relativamente simples y de bajo consumo compatibles con el 8086 en CMOS todavía se utilizan en sistemas integrados.

La industria electrónica de la Unión Soviética fue capaz de replicar el 8086 mediante espionaje industrial e ingeniería inversa [ cita requerida ] . El chip resultante, K1810VM86 , era compatible a nivel binario y de pines con el 8086.

i8086 e i8088 fueron respectivamente los núcleos de los ordenadores de sobremesa EC1831 y EC1832 compatibles con PC de fabricación soviética. (EC1831 es la identificación EC de IZOT 1036C y EC1832 es la identificación EC de IZOT 1037C, desarrollados y fabricados en Bulgaria. EC significa Единая Система.) Sin embargo, el ordenador EC1831 (IZOT 1036C) tenía diferencias de hardware significativas con respecto al prototipo de IBM PC. El EC1831 fue el primer ordenador compatible con PC con dimensionamiento de bus dinámico (Patente de EE. UU. N.º 4.831.514). Posteriormente, algunos de los principios EC1831 se adoptaron en PS/2 (Patente de EE. UU. N.° 5.548.786) y algunas otras máquinas (Solicitud de Patente del Reino Unido, Publicación N.° GB-A-2211325, publicada el 28 de junio de 1989).


Chips de soporte

Microcomputadoras que utilizan el 8086

Véase también

Notas

  1. ^ Menos buffers TTL, latches y multiplexores (aunque la cantidad de lógica TTL no se redujo drásticamente). También permite el uso de circuitos integrados baratos de la familia 8080, mientras que en el diseño de IBM PC se utilizaron los 8254 CTC, 8255 PIO y 8259 PIC. Además, simplifica el diseño de PCB y abarata las placas, además de exigir menos chips DRAM (de 1 o 4 bits de ancho).
  2. ^ utilizando lógica PMOS de carga de mejora (requiere 14  V , logrando compatibilidad TTL al tener V CC a +5 V y V DD a −9 V).
  3. ^ Esto fue posible gracias a la lógica nMOS de carga de agotamiento (el 8085 se fabricó posteriormente utilizando procesamiento HMOS, al igual que el 8086).
  4. ^ La versión 0 del conjunto de instrucciones y la arquitectura estuvieron listas en unos tres meses, según Morse.
  5. ^ Utilizando rubylith , tableros de luz, reglas, borradores eléctricos y un digitalizador (según Jenny Hernández, miembro del equipo de diseño del 8086, en una declaración hecha en la página web de Intel por su 25° aniversario).
  6. ^ 8086 utilizó menos microcódigo que muchos diseños de la competencia, como el MC68000 y otros
  7. ^ Las RAM estáticas rápidas en tecnología MOS (tan rápidas como las RAM bipolares) fueron un producto importante para Intel durante este período.
  8. ^ CHMOS es el nombre de Intel para los circuitos CMOS fabricados utilizando pasos de procesamiento muy similares a los HMOS .
  9. ^ Otros miembros del equipo de diseño fueron Peter A. Stoll y Jenny Hernández.
  10. ^ La IBM PC y la PC/XT utilizan un procesador Intel 8088 que funciona en modo máximo, lo que permite que la CPU funcione con un coprocesador 8087 opcional instalado en el zócalo del coprocesador matemático de la placa base de la PC o la PC/XT. (La PC y la PC/XT pueden requerir el modo máximo por otras razones, como por ejemplo para soportar el controlador DMA).
  11. ^ Algunos clones 80186 cambiaron el valor de desplazamiento, pero nunca se usaron comúnmente en computadoras de escritorio.
  12. ^ (IBM PC utilizó 4,77 MHz, 4/3 de la frecuencia de ráfaga de color NTSC estándar )

Referencias

  1. ^ "El ciclo de vida de una CPU". www.cpushack.com .
  2. ^ Lewnes, Ann, "La arquitectura Intel386 llegó para quedarse", Intel Corporation, Microcomputer Solutions, julio/agosto de 1989, página 2
  3. ^ "Salón de la fama de los microprocesadores". Intel. Archivado desde el original el 6 de julio de 2007. Consultado el 11 de agosto de 2007 .
  4. ^ Referencia del programador iAPX 286 (PDF) . Intel. 1983. pág. 1-1.
  5. ^ ab "Feliz cumpleaños, 8086: el procesador Intel Core i7-8086K de octava generación de edición limitada ofrece la mejor experiencia de juego". Intel.
  6. ^ "Familia 8080". CPU World .
  7. ^ Scanlon, Leo J. (1988). Lenguaje ensamblador 8086/8088/80286 . Brady Books. pág. 12. ISBN 978-0-13-246919-7. […] El 8086 es compatible con el 8080 a nivel de lenguaje ensamblador. […]
  8. ^ Geiger, Randall L.; Allen, Phillip E.; Strader, Noel R. (1990). "Lógica aleatoria frente a formas lógicas estructuradas". Técnicas de diseño VLSI para circuitos analógicos y digitales . McGraw-Hill. pág. 779. ISBN 0-07-023253-9.— Ilustración del uso de "aleatorio" para describir la lógica de control de la CPU
  9. ^ Intel Corporation (1983). Manual del usuario de IAPX 86, 88, 186 y 188: referencia del programador . Intel. Págs. 3-5. ISBN. 978-0835930352.OCLC 11091251  .
  10. ^ Morse, Stephen P.; Ravenel, Bruce W; Mazor, Stanley; Pohlman, William B. (octubre de 1980). "Microprocesadores Intel: 8008 a 8086". IEEE Computer . 13 (10): 42–60. doi :10.1109/MC.1980.1653375. S2CID  206445851.
  11. ^ "Hoja de datos del procesador HMOS 8086 de 16 bits" (PDF) . Intel. Archivado desde el original (PDF) el 26 de noviembre de 2021 . Consultado el 26 de noviembre de 2021 .
  12. ^ Manual de referencia de Microsoft Macro Assembler 5.0 . Microsoft Corporation. 1987. Los tiempos y codificaciones de este manual se utilizan con permiso de Intel y proceden de las siguientes publicaciones: Intel Corporation. Manual del usuario de iAPX 86, 88, 186 y 188, Referencia del programador, Santa Clara, California, 1986.(De manera similar para iAPX 286, 80386, 80387).
  13. ^ abc Manual del usuario de la familia 8086 . Intel Corporation. Octubre de 1979. pág. B-1. OCLC  65699372.
  14. ^ abcde Intel Corporation (mayo-junio de 1980). "8086 disponible para entornos industriales". Intel Preview (edición especial: soluciones de 16 bits): 29. OCLC  803251993.
  15. ^ "Guía de referencia rápida del microprocesador Intel® - Año". www.intel.com .
  16. ^ Intel Corporation (mayo-junio de 1980). "La familia 8086: conceptos y realidades". Intel Preview (número especial: soluciones de 16 bits): 19. ISSN  1041-8547. OCLC  10331599.
  17. ^ de Intel Corporation (enero-febrero de 1980). "Nuevos productos: el 8086 más rápido ofrece un 60 % más de rendimiento". Intel Preview : 22.
  18. ^ Intel Corporation (mayo-junio de 1980). "Los nuevos productos de la familia 8086 aumentan el rendimiento del procesador en un 50 por ciento". Intel Preview (número especial: soluciones de 16 bits): 17.
  19. ^ Intel Corporation (mayo-junio de 1979). «Componentes de microcomputadoras: nuevas reducciones de precios y mejoras de producción hacen que el popular microprocesador 8086 sea aún más atractivo». Intel Preview : 11.
  20. ^ Intel Corporation (agosto de 1981). Manual del usuario de Intel iAPX86, 88. Intel Corporation. pág. B-25. ISBN 0835930165.OCLC 8459750  .
  21. ^ Intel Corporation, "NewsBit: Intel otorga licencia a Oki para la versión CMOS de varios productos", Solutions, julio/agosto de 1984, página 1.
  22. ^ Ashborn, Jim; "Empaquetado avanzado: un poco rinde mucho", Intel Corporation, Solutions, enero/febrero de 1986, página 2
  23. ^ Intel Corporation, "NewsBits: Second Source News", Soluciones, enero/febrero de 1985, página 1
  24. ^ "La evolución del controlador de disquete | Museo OS/2". 26 de mayo de 2011. Consultado el 12 de mayo de 2016. En los IBM PC (1981) y PC/XT (1983) originales, el FDC se encontraba físicamente en una tarjeta adaptadora de disquete independiente. El propio FDC era un NEC μPD765A o una pieza compatible, como el Intel 8272A.
  25. ^ "Intel añade una placa única de 16 bits". Computerworld . Vol. XII, núm. 50. 11 de diciembre de 1978. pág. 86. ISSN  0010-4841.
  26. ^ Zachmann, Mark (23 de agosto de 1982). "Los defectos de IBM Personal Computer frustran a los críticos". InfoWorld . Vol. 4, no. 33. págs. 57-58. ISSN  0199-6649. El IBM Displaywriter es notablemente más caro que otros microprocesadores industriales que utilizan el 8086.
  27. ^ "La NASA apuesta audazmente por las piezas antiguas... en eBay" . New York Times . 12 de mayo de 2002.
  28. ^ Manual técnico de Kaman

Enlaces externos