El Fairchild F8 es un sistema de microprocesador de 8 bits de Fairchild Semiconductor , anunciado en 1974 y enviado en 1975. [1] [2] La familia de procesadores original incluía cuatro circuitos integrados (IC) principales de 40 pines ; la CPU 3850 que era la unidad lógica aritmética , la Unidad de almacenamiento de programas (PSU) 3851 que contenía 1 KB de ROM del programa y manejaba la decodificación de instrucciones, y la Interfaz de memoria dinámica 3852 (DMI) o la Interfaz de memoria estática 3853 (SMI) para controlar más RAM o ROM que contiene los programas o datos del usuario. La3854 DMA era un sistema opcional que agregaba acceso directo a la memoria en la RAM controlada por el 3852.
Información general | |
---|---|
Lanzado | 1975 |
Fabricante (s) común (es) | |
Actuación | |
Max. Frecuencia de reloj de la CPU | 1,00 MHz a 2,00 MHz |
Arquitectura y clasificación | |
Conjunto de instrucciones | 8 bits |
Especificaciones físicas | |
Paquete (s) |
|
Un sistema mínimo que contenía 3850 y 3851 también incluía cuatro puertos de datos de 8 bits, 64 bytes de RAM y un programa de usuario en ROM. Esto permitió construir aplicaciones de microcontroladores usando solo dos chips. También significaba que cualquier aplicación que no cumpliera con los requisitos simples generalmente requería al menos tres circuitos integrados de 40 pines, la CPU, la fuente de alimentación y el 3852 o 3853 junto con chips de memoria adicionales. Como resultado de estas compensaciones, la serie F8 encontró un uso generalizado en el mercado de microcontroladores, pero tuvo menos uso como CPU en computadoras de uso general. Hoy en día es relativamente oscuro, ya que sus usos integrados rara vez revelan el interior del F8.
En 1977, Mostek lanzó una implementación de un solo chip muy mejorada, el Mostek 3870 . Fusionó el 3850 y el 3851 y redujo el número de voltajes de alimentación. Más importante aún, Mostek reorganizó la línea de ensamblaje para que el código de usuario en ROM se agregara en el último paso, reduciendo en gran medida el costo de personalizar el diseño para el uso del controlador. El 3870 reemplazó las versiones originales de Fairchild y fue producido por varias compañías en los Estados Unidos y Europa. En Europa, STMicroelectronics continuó produciendo variaciones del diseño hasta mediados de la década de 1990.
Historia
Desarrollo
La historia del F8 comienza con un proyecto de desarrollo de microprocesadores en Olympia-Werke , una subsidiaria de AEG . Mejor conocida como fabricante de máquinas de escribir , Olympia también tenía una larga trayectoria en las calculadoras mecánicas , que se estaban convirtiendo rápidamente a formato electrónico. Estaban desarrollando un sistema de procesador conocido como C3PF, cuya licencia General Instrument (GI) les había otorgado. Como parte del acuerdo de licencia, GI envió a David Chung, jefe de la división de procesadores de GI, a Olympia para actuar de enlace con su equipo de diseño. Poco después de regresar a los EE. UU., Chung dejó GI y se mudó a Fairchild, donde se convirtió en diseñador principal del F8, [1] y es nombrado inventor principal en la patente. [3]
Fairchild anunció el F8 en septiembre de 1974, lo que condujo casi de inmediato a una demanda de GI por la apropiación indebida de secretos comerciales . A medida que el caso se prolongó, en febrero de 1976 Fairchild anunció un acuerdo de licencia cruzada con Olympia para el F8, lo que significa que ahora tenían acceso legal al diseño original del C3PF y la demanda de GI fue neutralizada, al menos en detalles técnicos. Hay muy poca información disponible sobre el C3PF, pero los observadores de la industria creen ampliamente que el C3PF es la base para el diseño del F8. [4] El caso judicial se prolongó hasta la década de 1980, pero sin problemas técnicos importantes, no tuvo ningún efecto en las ventas del F8. [1]
Producción
Las primeras muestras de ingeniería del F8 se enviaron en abril de 1975, y los envíos por volumen comenzaron ese otoño. En ese momento, la industria electrónica exigía acuerdos de segunda fuente como garantía de que el diseño no desaparecería si la empresa de diseño se declaraba en quiebra o simplemente perdía interés en el diseño. Fairchild anunció un acuerdo de este tipo con Mostek en junio de 1975. El acuerdo permitió a ambas empresas continuar con el desarrollo independiente del diseño. [1]
El F8 se introdujo a un precio de $ 130 (equivalente a $ 618 en 2019), lo que lo hace menos costoso que los diseños contemporáneos como Intel 8080 o Motorola 6800, que tenían al menos el doble de ese precio. Además, el sistema mínimo incluía cuatro puertos de entrada / salida de 8 bits , una pequeña cantidad de RAM y 1 KB de ROM. Juntos, permitieron construir aplicaciones simples con solo dos circuitos integrados. Por el contrario, diseños como el 8080 admitían este tipo de funcionalidad utilizando circuitos integrados dedicados separados, a menudo decenas, por lo que se podría implementar un sistema F8 por un costo total mucho menor. Para compensar esto, hasta cierto punto, la ROM del programa en la fuente de alimentación se enmascaraba en los chips al principio del proceso de producción, lo que requería líneas de producción separadas para cada cliente. Como resultado, las tarifas de instalación fueron del orden de $ 10,000 a $ 15,000. [1]
Aunque el F8 se comercializó como un microprocesador de propósito general, históricamente representa el primer microcontrolador de 8 bits diseñado específicamente , [a] un diseño que implementa un sistema informático completo en una pequeña cantidad de circuitos integrados. Su lanzamiento tuvo una profunda influencia en el mercado y condujo a la introducción de microcontroladores dedicados de la mayoría de los otros proveedores, entre ellos el Intel MCS-48 , Motorola MC6801 y MOS 6510 , todos los cuales combinaban varios sistemas que antes se dejaban al diseñador de la placa de circuito. para implementar. Sin embargo, estos ejemplos llevaron el proceso un paso más allá e implementaron un sistema completo en un solo CI.
A través de los implacables efectos de la ley de Moore , no pasó mucho tiempo antes de que el 3850 y el 3851 también pudieran implementarse en un solo IC, que fue lanzado como el 3859. [1] La línea también se actualizó con la adición del 3856, un 3851 con 2 KB de ROM, [5] y el 3857, un 3856 con líneas de dirección adicionales para acceder a la ROM externa además del interno de 2 KB, eliminando la necesidad de un 3853 separado en muchas funciones.
3870
Casi al mismo tiempo que se lanzó el 3859, Mostek introdujo su propia versión de un F8 de un solo chip, el Mostek 3870. Mientras que el 3859 era esencialmente un 3850/3851 de un solo chip, el 3870 fue un avance significativo; corría hasta 4 MHz, el doble que el 3859, y solo requería una fuente de alimentación de + 5V en lugar de +5 y +12. Un cambio mucho más importante fue que el código ROM personalizado ahora estaba enmascarado en el IC como el último paso del proceso, por lo que todas las CPU eran idénticas hasta el final de la línea de producción. Como resultado, las tarifas de las mascarillas eran del orden de $ 1000, lo que hacía que su implementación fuera mucho menos costosa. El 3870 fue un avance tan grande sobre el original que Fairchild detuvo la producción del 3859 y obtuvo la licencia del 3870 para sus propias ventas. [1]
El 3870 se modificó con muchas subversiones a lo largo del tiempo. Entre los más importantes se encontraba la adición de un enchufe en la parte superior del chip que permitía enchufar una EPROM sin necesidad de otros circuitos de soporte. Esto eliminó la necesidad de la ROM incorporada y permitió a los clientes producir su propia ROM y eliminar por completo las tarifas de enmascaramiento. Las variaciones también incluyeron ejemplos con más ROM o RAM u otros cambios menores. [1]
Mientras tanto, el acuerdo de licencia cruzada con Olympia llevó a la producción en Alemania de Telefunken , otra de las muchas marcas de AEG. Mostek se fusionó con United Technologies en 1979, quien hundió la empresa y, a su vez, la vendió a Thomson Semiconducteurs en 1985. Thomson se fusionó con SGS en 1987 para formar la moderna STMicroelectronics , que continuó produciendo el 3870 hasta la década de 1990. Fairchild también continuó produciendo versiones del 3870 en la década de 1980, cuando fueron compradas por National Semiconductor . [1]
Aunque es poco conocido hoy en día, "en 1977 el F8 era el microprocesador líder en el mundo en términos de ventas de CPU". [6] El diseño sigue siendo algo oscuro porque la mayoría de esos usos fueron como microcontroladores integrados donde el chip dentro del dispositivo rara vez se identifica, a diferencia de productos como computadoras domésticas donde la CPU interna es más conocida. Entre sus pocos usos más conocidos se encuentran el Fairchild Channel F en 1976, y en el sistema informático VideoBrain en 1977. Ambos fueron eliminados del mercado con la introducción del Atari 2600 en 1977.
Fairchild también produjo una serie de tableros de ingeniería y pasatiempos utilizando el F8. El kit 1 era una placa de circuito única con la CPU 3850, la PSU 3851 y la SMI 3853. La fuente de alimentación contenía un programa conocido como "Fairbug" al que se podía acceder mediante un terminal conectado a la CPU a través de su puerto de E / S de 8 bits. [7]
El F8 se suspendió a mediados de la década de 1980, con la última compra realizada por Innovative Data Technology, San Diego, CA para su uso en su unidad de cinta insignia de 1/2 "y 9 pistas, la serie TD1050 utilizada para el intercambio de datos de facturación por telecomunicaciones. operadores.
Descripción
Familia de chips
Un sistema informático típico generalmente requiere una CPU, alguna forma de entrada / salida para comunicarse con el mundo exterior y memoria que contiene el código del programa y los datos del usuario. Por lo general, la E / S se manejaría mediante chips dedicados y se accedería a la memoria a través de un bus de direcciones que seleccionaba ubicaciones en la memoria externa y luego devolvía esos datos a la CPU a través de un bus de datos . Dependiendo del diseño, la E / S se comunicaría con el procesador a través de un bus dedicado, o alternativamente colocando datos en la memoria y luego haciendo que la CPU los lea. Mover datos entre todas estas diferentes unidades requirió circuitos de "pegamento" adicionales.
El F8 fue diseñado para dividir estas tareas con el fin de hacer posibles implementaciones minimalistas. [8] En teoría, se podrían colocar todas estas funciones en un solo chip, pero en la era de los chips de 40 pines simplemente no había suficientes pines para conectar todas estas funciones. En particular, implementar un bus de datos de 8 bits, un bus de direcciones de 16 bits y otro bus de E / S de 8 bits dejaría solo 8 pines más para cada otra función, desde la fuente de alimentación y tierra hasta las diversas señales de reloj y líneas de control. Otros diseños a veces multiplexaban la dirección y las líneas de datos para que los mismos pines pudieran usarse para múltiples funciones, a costa de requerir más ciclos para completar una operación.
El F8 abordó este problema internalizando algunas de las funciones, como agregar una pequeña cantidad de RAM al núcleo de la CPU, mientras saca otras de la CPU. El mejor ejemplo de esto es el sistema mínimo que consta de la CPU 3850 y la fuente de alimentación 3851. En este caso, no hay necesidad de un bus de direcciones en absoluto, la RAM está contenida en el 3850 y la ROM del programa en el 3851. Es la PSU la responsable de realizar un seguimiento del contador del programa , obteniendo instrucciones de la memoria interna. ROM y alimentarlos al 3850 para procesarlos a través de un bus de instrucciones dedicado de 5 pines junto con cualquier dato asociado a través del bus de datos de 8 bits separado. [8] Esto liberó 11 pines que de otro modo se usarían para líneas de direcciones adicionales, lo que, junto con otras simplificaciones y división de tareas, permitió que la CPU tuviera dos buses de E / S completos. El 3851 agregó otros dos puertos de E / S, por lo que un sistema mínimo tenía cuatro puertos en total. [8]
Con solo 1 KB de ROM y 64 bytes de RAM, solo se pueden administrar programas pequeños, pero para muchos sistemas, como cajas registradoras , bombas de gasolina y funciones similares, esto es más que suficiente. Cuando un sistema tiene requisitos más grandes, se puede utilizar el 3852 o el 3853. [9] Estos interactúan con la PSU y contienen lógica adicional para manejar su memoria asociada; por ejemplo, el 3852 tenía un bus de direcciones completo capaz de acceder a 64 KB de RAM y los circuitos necesarios para actualizar los datos. La fuente de alimentación sigue siendo necesaria en estos sistemas, y el contador de programa y otros indicadores se mantienen por separado en todos estos chips leyendo las mismas líneas de control. La principal diferencia entre el 3852 y el 3853 era que el primero incluía el circuito de actualización de RAM dinámica y un enlace de 3 pines al controlador 3854 DMA, mientras que el 3853 los eliminó y agregó un nuevo controlador de interrupciones y temporizador. [10]
El controlador 3854 DMA se vinculó directamente al controlador RAM 3852 y no usó el bus de control de 5 pines que se encuentra en los otros miembros de la familia. Mantuvo su propio registro de direcciones y un recuento de bytes separado, que juntos indicaban el bloque de memoria que se debía leer o escribir. [10]
Set de instrucciones arquitectura
Internamente, la CPU contenía un acumulador de 8 bits , un registro de estado del procesador de 5 bits , un "Registro de direcciones del bloc de notas indirecto" o ISAR, y 64 bytes de RAM del "bloc de notas". Se puede acceder directamente a las primeras doce ubicaciones dentro de la RAM y utilizarlas como acumuladores secundarios, etiquetados de la A a la J. Se accede al resto del scratchpad a través del ISAR, una forma de direccionamiento indirecto .
El 3851/3852/3853 contiene el contador de programa , PC0, junto con un contador de programa secundario, PC1. Se hizo referencia a PC1 como un puntero de pila, pero en realidad no se usó para esto, se usó solo para almacenar las direcciones de retorno de subrutinas y carecía de instrucciones push o pop. Si se requiere una pila más grande, esto debe implementarse en el software. Estos chips también tenían un contador de datos de 16 bits, DC0, y su búfer de contador de datos asociado, DC1. Estos se utilizaron como registros de indexación para el direccionamiento indirecto, aunque solo se podía acceder directamente a DC0 y el valor en DC1 tenía que intercambiarse con DC0 mediante una instrucción separada.
El conjunto de instrucciones incluía 70 códigos de operación codificados en 8 bits. Como era típico de la época, muchas instrucciones tenían una variedad de modos de direccionamiento con algunos de los modos codificados en el código de operación de la instrucción . Por ejemplo, la instrucción Load Register (LR) vino en 14 versiones diferentes según el origen y el destino de los datos. La versión que comienza con $ 00 fue seguida por dos bits cero y luego otros dos bits que indican ubicaciones en el bloc de notas en las ubicaciones 12 a 15, por lo que se utilizaron códigos de operación $ 00 a $ 04. $ 0A era otra versión de LR, cargando el valor señalado por el ISAR. El F8 tenía un total de ocho modos de direccionamiento. [11]
Las instrucciones de la máquina se pueden agrupar en seis categorías: instrucciones de acumulador, instrucciones de bifurcación, instrucciones de referencia de memoria, instrucciones de registro de dirección, instrucción de registro del bloc de notas, instrucciones varias (interrupción, entrada, salida, registro indirecto del bloc de notas, carga y almacenamiento). [11]
El F8 corrió a 1–2 MHz, produciendo un tiempo de ciclo de 0.5 μs. En el F8, el bus de control regula el uso del bus de datos mediante el uso de señales de temporización y controles de estado. El reloj phi divide el ciclo de la máquina en fases discretas según la instrucción que se está ejecutando. Las cinco líneas de control de estado son una función de la instrucción que se está ejecutando. Los estados del bus de control regulan el control de la información en la computadora.
ERROR JUSTO
Fairchild proporcionó kits de desarrollo y evaluación para el F8, estos kits incluían una PSU (Unidad de almacenamiento de programas) 3851A que contenía un monitor en la ROM de máscara, vectorizado para comenzar en la dirección 0x8080. [12] Al encender, se ingresó la ROM. En la literatura de Fairchild se hace referencia al monitor ROM como FAIR-BUG. [12] El monitor FAIR-BUG es una constelación de rutinas para ayudar a los ingenieros de desarrollo de productos que interactuaron con FAIR-BUG desde un teletipo . Fairchild extendió FAIR-BUG como KD-BUG, para usar con un teclado y una pantalla. [13]
Los comandos principales de FAIR-BUG son caracteres ASCII individuales extraídos del conjunto {A, B, C, D, E, F, G, I, L, M, N, P, R, S, W}. Las ubicaciones de registro y memoria se introdujeron como parámetros inmediatamente después del identificador de comando. Por ejemplo, el comando M02F0-02FF da como resultado que el teletipo escriba el contenido de 16 bytes de memoria. Los comandos FAIR-BUG se dirigen a todas las ubicaciones de memoria y todos los registros. Estas ubicaciones pueden ser examinadas o modificadas por el programador.
FAIR-BUG contiene cinco subrutinas que se utilizan en el procesamiento de comandos: Entrada 2 bytes ASCII; Salida 1 byte ASCII; Salida de la cadena CR, LF, Null; Salida 1 byte ASCII; Ingrese 1 byte ASCII desde un dispositivo de entrada paralelo. FAIR-BUG es esencialmente una rutina de administración de acceso aleatorio para toda la memoria, tanto RAM como ROM, y todos los registros, incluido el contador de programa, el contador de datos y el bloc de notas. El programador tiene la capacidad de colocar cualquiera de las más de 70 instrucciones u operandos de código de máquina en ubicaciones de memoria. El programador puede entonces usar el comando G para cargar una dirección específica en el contador del programa y ejecutar la rutina en esa dirección.
El objetivo de proporcionar las rutinas FAIR-BUG en 1975 era ayudar a los ingenieros a acelerar la creación de aplicaciones para los circuitos integrados F8.
Inventor
El documento de patente US4086626 enumera a David H. Chung como el inventor de la computadora que conocemos como Fairchild F8. La fecha de presentación de esta patente fue el 7 de junio de 1976. La invención fue una extensión del trabajo de ingeniería mencionado en la patente bajo la fecha de prioridad del 7 de octubre de 1974. El propietario de la patente era Fairchild Camera and Instrument Corporation. La carrera de David H. Chung incluyó puestos en Texas Instruments, Fairchild y Sony. [14]
Notas
- ^ El Texas Instruments TMS 1000 es anterior a él, pero es un sistema de 4 bits.
Referencias
Citas
- ^ a b c d e f g h i CPU 2013 .
- ^ "El Fairchild F8" . La página del coleccionista de chips antiguos . Consultado el 18 de agosto de 2013 . CS1 maint: parámetro desalentado ( enlace )
- ^ Patente: US3984813. Fecha de presentación: 7 de octubre de 1974. Cesionario original: Fairchild Camera and Instrument Corporation.
- ^ Cantante, Graham (1 de octubre de 2020). "La Historia del Microprocesador y la Computadora Personal" . Techspot .
- ^ Unidad de almacenamiento de programas F3851 / F3856 (PDF) (Informe técnico).
- ^ "Microprocesadores de 8 bits - F8 (3850)" . Archivado desde el original el 17 de julio de 2011 . Consultado el 18 de agosto de 2013 . CS1 maint: parámetro desaconsejado ( enlace ) CS1 maint: bot: estado de URL original desconocido ( enlace )
- ^ Hoja de instrucciones del sistema de evaluación del microprocesador One-Card F8, Fairchild Microsystems, 13 de febrero de 1976.
- ↑ a b c F8 1975 , pág. 1.
- ^ F8 1975 , pág. 5.
- ↑ a b F8 1975 , pág. 3.
- ↑ a b F8 1975 , pág. 8.
- ^ a b Hardware de soporte de desarrollo de microprocesador F8 (PDF) . Fairchild Semiconductor.
- ^ Guía del usuario de KD-BUG (PDF) . Fairchild Semiconductor. 1978.
- ^ Documento de patente US4086626
Bibliografía
- "CPU del día: Microprocesador Fairchild F8" . CPUShack . 8 de junio de 2013.
- Microprocesador F8 (PDF) (Informe técnico). Fairchild Semiconductor. 1975.
- Hoja de datos: http://datasheets.chipdb.org/Fairchild/F8/fairchild-3850.pdf
- Patente: http://www.google.com/patents/US4086626
enlaces externos
- Diccionario gratuito de informática en línea
- La gran lista de CPU