Capricornio (microprocesador)


La familia de microprocesadores Capricornio fue desarrollada por Hewlett-Packard a fines de la década de 1970 para las microcomputadoras científicas HP serie 80 . Capricornio se utilizó por primera vez en la computadora de escritorio HP-85 BASIC , presentada en enero de 1980. Steve Wozniak se inspiró para construir Apple para que fuera una computadora como la HP 9830 y, en 1976, ofreció los derechos de HP para la computadora Apple. Fue rechazado y se le dio un lanzamiento. Cuando la división de calculadoras comenzó un proyecto de computadora de 8 bits llamado Capricornio, se fue a Apple cuando no se le permitió trabajar en ese proyecto. [1] [2]

El Capricornio es una CPU microprogramada que contiene 64 registros de ocho bits, una unidad lógica aritmética (ALU) de ocho bits, una palanca de cambios y lógica de control. Los 64 registros están divididos por límites. Hay un límite cada dos bytes para los primeros 32 registros y un límite cada 8 bytes para los 32 registros restantes. Cada instrucción de bajo nivel modifica los datos desde el registro direccionado hasta el siguiente límite. El diseño da como resultado un código muy compacto. Dependía del codificador acceder y modificar entre uno y ocho bytes usando solo una instrucción de CPU.

Los primeros 32 registros se utilizan a menudo para la manipulación de direcciones. Los 32 registros restantes se utilizan para operaciones de coma flotante. Debido a que hay cuatro conjuntos de registros de límite de ocho bytes (32-63), la mayoría de las operaciones de coma flotante se realizan utilizando solo registros sin ningún acceso a la memoria. Seis de los primeros 32 registros están reservados por hardware para su uso como registros de propósito especial: un par de registros se define como contador de programa, otro par como puntero de pila y un par más como puntero de índice para operaciones internas. No hay un acumulador dedicado: se puede usar cualquier registro general para los resultados de ALU porque el archivo de registro está diseñado para permitir hasta dos operaciones de lectura y una de escritura para los primeros 32 registros y hasta ocho operaciones de lectura y una de escritura para los 32 registros restantes. al mismo tiempo.

La ALU puede funcionar en modo binario o decimal codificado en binario (BCD). Las instrucciones de longitud variable permiten que el programador trate los datos de los 32 registros superiores como entidades de entre uno y ocho bytes de longitud; por ejemplo, se pueden agregar dos valores de ocho bytes (por ejemplo, la mantisa de un número de punto flotante) usando una sola instrucción. Esta función reduce el número de bucles que deben programarse.

La CPU tiene un mecanismo de interrupción con hasta 127 vectores. Para el acceso directo a la memoria , la CPU puede ser detenida por un dispositivo externo.

La CPU Capricorn se implementó como un circuito lógico NMOS de puerta de silicio (4,93 × 4,01 mm) en un paquete dual en línea de 28 pines , con un bus externo multiplexado de 8 bits. El chip de la CPU consumió 330 mW a 625 kHz.