Mirando dentro del coprocesador Intel 8087

Un poco de historia del desarrollo de la línea de procesadores de ocho bits fabricados por Intel


La línea de procesadores de ocho bits comienza su historia en abril de 1972. Originalmente, el Intel 8008 se planeó originalmente para su uso en calculadoras, dispositivos de entrada y salida, pero el fabricante, después de una buena "reflexión", decidió encontrar un nuevo destino para la línea: ser el procesador central de una PC. Dependiendo de las modificaciones de los procesadores, la frecuencia de reloj era de 500 u 800 KHz, y el rendimiento era de 45000-160000 operaciones por segundo.


Intel C8008

En abril de 1974, Federico Faggini y Masatoshi Shima desarrollaron una nueva línea de procesadores: Intel 8080 . 6000 transistores fueron alojados en un paquete cerámico de 40 pines, un bus de direcciones de 16 bits y un bus de datos de 8 bits, 64 KB de memoria direccionable. La frecuencia de reloj era de 2 MHz, y el rendimiento era de hasta 500,000 operaciones por segundo. Para que el procesador se vuelva “cómodo”, se desarrollaron un coprocesador aritmético, un generador de reloj, formadores de bus, un temporizador, controladores de dispositivos periféricos, etc.


Intel 8080A

Dos años después, en marzo de 1976, la línea Intel 8085 vio la luz: se colocaron 6500 transistores en una caja de cerámica (o plástico) de 40 pines. La frecuencia del reloj varió de 3 a 8 MHz, el ancho del bus de datos fue de 8 bits, el ancho del bus de direcciones fue de 16 bits, la memoria direccionable fue de 64 Kb. Esta línea ha sido exitosamente "involucrada" en la PC o en forma de microcontroladores.



En junio de 1978, comenzó la producción en la primera línea de procesadores de dieciséis bits de la compañía: Intel 8086 : se colocaron 29,000 transistores en un chip de 5.5 x 5.5 mm. La frecuencia de reloj varió de 5 a 10 MHz, el rendimiento varió de 330 a 750 mil operaciones por segundo, el ancho del bus de datos fue de 16 bits y el ancho del bus de direcciones fue de 20 bits.


Intel 8086

Un año después, en el verano de 1979, Intel lanzó la línea 8088 , un enlace de transición entre procesadores de 8 y 16 bits: 29,000 transistores, la frecuencia de reloj era de 5-10 MHz. Pero la línea 8088 no se hizo popular debido a su alto costo.


Intel P8088

Coprocesadores 8087


En junio de 1980, se lanzó la línea de coprocesadores Intel 8087 para Intel 8086, 8088. Dichos coprocesadores contenían 45,000 transistores, la frecuencia de reloj en varias versiones oscilaba entre 4 y 10 MHz.


Intel C8087

El coprocesador matemático es un módulo especial para realizar operaciones de coma flotante, que funciona junto con el procesador central.

Para ahorrar dinero de un lujo como un coprocesador, simplemente se negaron. Pero para resolver tareas que requieren mucha mano de obra, por ejemplo, los mismos cálculos de ingeniería, mejorar el rendimiento de la computadora se ha convertido en una necesidad. Se las arreglaron para aumentar el rendimiento debido a un módulo tan especial: un coprocesador matemático.

Según INTEL, un coprocesador matemático puede reducir el tiempo que lleva completar las operaciones matemáticas, como la multiplicación, la división y la exponenciación, en un 80 por ciento o más. La velocidad de realizar operaciones matemáticas simples, como la suma y la resta, no cambia.


Dentro del chip microprocesador Intel 8087


Al mirar dentro del punto flotante Intel 8087, noté una característica interesante en el chip: el esquema de formación de sesgo de sustrato. En este artículo, explicaré cómo se implementa este circuito utilizando circuitos analógicos y digitales para crear voltaje negativo.

Intel desarrolló el chip 8087 en 1980 para mejorar el rendimiento de las PC con procesadores de línea 8086/8088 (como la PC de IBM) al realizar operaciones de punto flotante. Dado que los primeros microprocesadores fueron diseñados para realizar operaciones con números enteros, la ejecución de operaciones con números de coma flotante fue lenta, es decir, sobre el desempeño de operaciones trascendentales, como funciones trigonométricas o logaritmos. El coprocesador 8087 aumentó significativamente la velocidad de ejecución de tareas de punto flotante; todo se hizo casi 100 veces más rápido. La arquitectura 8087 también se implementó en procesadores Intel posteriores, y las instrucciones 8087 todavía se usan en las PC modernas x86.
Se introdujeron más de 60 nuevas instrucciones para el coprocesador, cuyo nombre comenzó con "F" para distinguirlas de las instrucciones enteras de Intel 8086.
Abrí el chip 8087 y, usando un microscopio de alto rendimiento, tomé fotografías, como resultado de su diseño obtuve la siguiente imagen:



El cristal 8087 es muy complejo y contiene 40,000 transistores (según Intel) o 45,000 (según Wikipedia). En la foto hay una capa metálica del chip, las conexiones se encuentran en la parte superior del chip. Las líneas blancas más gruesas proporcionan potencia y conexión a tierra para todas las partes del chip. Debajo de la capa metálica hay polisilicio o silicio, a partir del cual se forman los transistores del chip.

En la mitad inferior del chip hay un circuito aritmético extendido de 80 bits: sumador, registros, interruptores, constantes matemáticas. El rectángulo grande en el medio del chip es un microcódigo que implementa un conjunto de instrucciones del procesador. En la parte superior hay circuitos lógicos y un circuito de bus que está emparejado con el procesador 8086.

Las líneas negras alrededor del chip en la foto son pequeños compuestos de termocompresión que conectan las almohadillas de contacto IC (secciones conductoras metalizadas de forma cuadrada o rectangular, ubicadas principalmente en la periferia del cristal o sustrato) con 40 contactos en el chip. Estudiando la descripción técnica 8087, no es difícil determinar qué área de contacto en la matriz corresponde a qué contacto del microcircuito; 40 pines del chip (numerados en sentido antihorario) están conectados a 40 pads en el chip.

A continuación se muestra una imagen ampliada de una parte de la matriz, en ella podemos considerar mejor las almohadillas de contacto. (Tenga en cuenta que los terminales de conexión a tierra y los terminales de alimentación de +5 V tienen varias conexiones al mismo tiempo, lo que aumenta la cantidad de corriente suministrada). Pero aquí hay una "sorpresa": hay una almohadilla de contacto adicional y una conexión ubicada entre las almohadillas de contacto 40 y 1, y no está asociada con ninguno de los contactos del microcircuito.



Al observar la conexión de termocompresión de los cables en el chip (la imagen a continuación), resultó que la misteriosa almohadilla de contacto no está conectada a ningún contacto, sino que está conectada a un pequeño bloque en forma de cubo. Este "cubo" se encuentra en la misma base metálica que el cristal, conectado al sustrato de silicio del chip, el tablero.

Hice un análisis de ingeniería de la tecnología de fabricación con el objetivo de revelar los "secretos de la compañía" y llegué a la conclusión de que esto es parte del circuito de polarización del sustrato 8087 en el que este compuesto se utiliza para aplicar voltaje negativo al sustrato. ¿Cómo funciona este circuito?



¿Qué es una compensación de sustrato?


En la década de 1970, los circuitos integrados de alta densidad se construyeron a partir de transistores n-MOS (un transistor de efecto de campo con una puerta aislada y un canal de tipo n). La siguiente imagen muestra claramente su estructura. La base del chip es un sustrato de silicio. Los transistores, a su vez, también están hechos de silicio. Para cambiar el tipo de conductividad y la concentración de portadores en la mayor parte del semiconductor para obtener las propiedades deseadas, las regiones de silicio se impregnan de impurezas para crear regiones de difusión con las propiedades deseadas. El transistor puede considerarse como una resistencia, permitiendo que la corriente fluya entre dos áreas de difusión de la fuente y drene. El transistor está controlado por una puerta hecha de polisilicio. El voltaje de entrada en la puerta controla el flujo de corriente desde la fuente hasta el drenaje: una señal de alto voltaje en la puerta permite que la corriente fluya desde la fuente hasta el drenaje, mientras que una señal de bajo voltaje bloquea la corriente. Una capa de óxido aislante separa la puerta del silicio debajo; La importancia de esta capa se considerará un poco más adelante. Estos pequeños transistores se pueden combinar para formar compuertas lógicas, componentes de microprocesador y otros cristales digitales IC.



En los circuitos integrados de alto rendimiento, era ventajoso utilizar un "sesgo" negativo del voltaje a través del sustrato. Para obtener este voltaje de polarización del sustrato, muchos chips en la década de 1970 tenían un contacto externo que estaba conectado a -5V. Sin embargo, a los ingenieros no les gustaban los chips que requerían voltaje adicional. Los chips de esa época a menudo necesitaban tres fuentes de alimentación. Además, el número de contactos en el IC era limitado (como regla, solo 18 contactos para chips de memoria). Por lo tanto, el uso de dos contactos más para voltaje adicional no fue una buena solución. Se encontró una solución parcial a fines de la década de 1970: los chips generaron un voltaje de polarización negativa en el interior. Así que había chips en los que se usaba una fuente de alimentación de 5V conveniente, y esto claramente permitía a los ingenieros ser "más felices".

Circuito de polarización del sustrato interior 8087


Quizás se pregunte cómo un chip puede convertir un voltaje positivo en un voltaje negativo. La respuesta es un circuito de bomba de carga llamado bomba de carga. Utiliza condensadores como dispositivos de almacenamiento de carga, que se transfieren de un condensador a otro mediante un sistema de interruptores. El "generador de polarización" en 8087 tiene dos bombas de carga a su vez. Los siguientes diagramas muestran el funcionamiento de una de estas bombas de carga. La bomba de carga está controlada por una señal oscilante (Q) y su inversión (Q). En la primera etapa, el transistor superior se enciende, como resultado de lo cual el condensador se carga hasta 5 voltios en relación con la tierra. La segunda etapa es donde sucede la magia. El transistor inferior se enciende conectando el lado de alta tensión del condensador a tierra. Dado que el condensador todavía está cargando hasta 5 voltios, el lado inferior del condensador ahora debería ser -5 voltios, creando el voltaje de salida negativo deseado. Cuando el oscilador gira nuevamente, el transistor superior se enciende y el ciclo se repite. La bomba de carga recibió su nombre, ya que bombea carga desde la salida al suelo. La bomba de carga es similar a una bomba de agua manual.



Examiné el chip bajo el microscopio. La capa de metal oculta los transistores a continuación, y esto dificulta la visualización del circuito. Pero, después de eliminar la capa metálica con ácido clorhídrico, llegué a las capas de polisilicio y silicio, "descubrí" los transistores y condensadores, que se muestran a continuación (las áreas coloreadas son solo ruido, ya que algunos óxidos no se eliminaron por completo). La foto a continuación muestra dos bombas de carga: una a la izquierda de la almohadilla de contacto y la segunda a continuación. Cada bomba de carga de acuerdo con el esquema tiene dos diodos, un condensador grande y dos transistores.



Los condensadores son la "característica" más notable del circuito de polarización del sustrato. Aunque de hecho sus tamaños son microscópicos, son enormes según los estándares para medir las dimensiones del chip. El área del condensador es aproximadamente como una memoria de registro de 72 bits (más de 400 transistores). Cada condensador consiste en polisilicio sobre una parte de silicio separada por un óxido aislante; Polisilicio y silicio forman placas condensadoras. En la foto, los condensadores están salpicados de cuadrados; Estos cuadrados son los contactos entre el polisilicio (o silicio) y la capa de metal en la parte superior. (La capa de metal no es visible porque se ha borrado).

Cuatro transistores de control son transistores de alta potencia. Sus tamaños son superiores a los transistores convencionales. Las líneas rojas son compuestos de polisilicio que forman un obturador. Líneas verdes: contactos a la capa metálica, conectando los transistores a +5 V o tierra. Los diodos cerca de la almohadilla de contacto están formados por transistores cuando la puerta y el drenaje están conectados.

Las bombas de carga son accionadas por un oscilador circular, como se muestra en la imagen a continuación. Este oscilador circular consta de cinco inversores en un cortocircuito. Como el número de inversores es impar, el sistema es inestable y oscilará. Por ejemplo, si la entrada para el primer inversor es 0, la salida del quinto inversor será 1. Para reducir la velocidad de oscilación, hay dos circuitos resistivos-capacitivos en un círculo. Como se tarda un poco en cargar y descargar el condensador, las oscilaciones se ralentizarán, lo que dará tiempo para que funcione la bomba de carga.



Antes de descomponer la información en un oscilador circular, demostraré cómo se implementa un inversor NMOS estándar en silicio. A continuación se muestra un inversor, su representación esquemática y cómo se implementa en un chip. El inversor utiliza un transistor y una resistencia de carga (que en realidad es un transistor). Si la señal de entrada es baja, el transistor está apagado, entonces la resistencia de carga suministra hasta +5 V. Si la señal de entrada es alta, el transistor se enciende y la tensión de salida se conecta a tierra. Por lo tanto, el circuito invierte la entrada.



El silicio dopado en la imagen es grandes áreas de color beige. Delgadas manchas amarillas junto a las violetas son de polisilicio. La entrada es un cable de polisilicio. Cuando se cruza con silicio dopado, forma una puerta de transistor entre el suelo (debajo de la entrada) y la salida (encima de la entrada). Se implementa una resistencia de carga en un transistor que tiene una puerta y un drenaje conectados entre sí; Este contacto forma esta conexión entre la puerta de silicio policristalino del transistor y su drenaje de silicio. El polisilicio también forma un cable de salida. Por lo tanto, el inversor en el chip se implementa con dos transistores.



La foto de arriba muestra cómo se forma un oscilador circular en un cristal. Se muestran los cinco inversores. Cada inversor tiene una dirección diferente, lo que optimiza la estructura. También se indican resistencias y condensadores del circuito RC. Las resistencias son simplemente transistores con una gran distancia entre la fuente y el drenaje, lo que reduce el movimiento de la corriente. Los condensadores están diseñados como condensadores de bomba de carga, pero de tamaño mucho más pequeño; silicio en la parte inferior y polisilicio en la parte superior forman placas de condensadores separadas por una delgada capa de óxido aislante.

Conclusiones


El generador de voltaje de polarización del sustrato en el chip 8087 es una combinación interesante de un circuito digital (un oscilador circular formado por inversores) y una bomba de carga analógica. Los circuitos del generador de voltaje de polarización del sustrato se introdujeron a fines de la década de 1970, lo que hizo posible que los chips de memoria y los microprocesadores funcionen con una sola fuente de alimentación de +5 V. Esto fue mucho más conveniente que usar tres fuentes de voltaje diferentes. El generador de polarización del sustrato genera un voltaje negativo a partir de un voltaje de suministro positivo utilizando una bomba de carga.

Aunque el generador de polarización de voltaje puede parecer un momento oscuro en la historia de la computadora de la década de 1970, este proceso sigue siendo parte de los circuitos integrados modernos, aunque todo se ha vuelto mucho más complicado.

A pesar de que el chip de punto flotante Intel 8087 fue desarrollado y puesto en funcionamiento hace 38 años, su "influencia" es palpable hoy en día. Gracias a su apariencia, se adoptó el estándar IEEE 754, el “estándar IEEE que describe el formato para representar números de punto flotante. Se utiliza en implementaciones de software (compiladores de diferentes lenguajes de programación) y hardware (CPU y FPU) de operaciones aritméticas (operaciones matemáticas) ". Las instrucciones 8087 siguen formando parte de los procesadores x86.



Notas y enlaces


1. Se introdujeron más de 60 nuevas instrucciones para el coprocesador, cuyo nombre comenzó con "F" para distinguirlas de las instrucciones enteras Intel 8086. Por ejemplo, los análogos de los comandos ADD / MUL / CMP en 8087 se parecían a FADD / FMUL / FCOM . Estas instrucciones se implementaron utilizando el comando 8086 ESC "escape", que fue diseñado para permitir que el procesador 8086 se comunique con el coprocesador.

La llegada del coprocesador llevó a la creación del estándar IEEE 754 en 1985 para la aritmética de coma flotante;

2. La aplicación de un voltaje de polarización negativa al sustrato tiene varias ventajas. Esta capacitancia parásita reducida, que aceleró el funcionamiento del chip, hizo que el voltaje umbral del transistor fuera más predecible y redujo la corriente de fuga.

3. Anteriormente, los chips DRAM y microprocesador a menudo requerían tres fuentes de voltaje: + 5 V (Vcc), + 12V (Vdd) y -5V (Vbb). A fines de la década de 1970, la tecnología de chip avanzada permitió el uso de una sola fuente de alimentación. Por ejemplo, el MK4116 de Mostek (DRAM de 16 kilobytes desde 1977) requería tres fuentes de voltaje, mientras que el MK4516 avanzado (1981) funcionaba solo con +5 V, lo que simplificaba los diseños de hardware. Lo mismo sucedió con los chips Intel: 2116 DRAM (16K, 1977) usando tres voltajes y 2118 mejorado (1979) - un voltaje. El conocido microprocesador Intel 8080 (1974) utilizó transistores que funcionan en el modo de enriquecimiento, por lo tanto, requirió tres voltajes. Una versión mejorada, 8085 (1976), utilizaba transistores de agotamiento y funcionaba con una sola fuente de alimentación de +5 V.

4. La tercera fuente de alimentación (+12 V) en chips antiguos no está relacionada con el sesgo del sustrato. Esta fuente se usó porque en los primeros circuitos integrados MOS había transistores operando en el modo de enriquecimiento, aumentando el voltaje en las puertas. +5 , +12 . 1970- ( ) , +12 .

5. . - , , -3 , -5 . . , .

, . ? ? , 30% entry-level , : VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps $20 ? ( RAID1 RAID10, 24 40GB DDR4).

VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps , .

Dell R730xd 2 ? 2 Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100 $249 ! . c Dell R730xd 5-2650 v4 9000 ?

Source: https://habr.com/ru/post/es424889/


All Articles