Motorola serie 68000

Compartir Imprimir Citar
Serie de microprocesadores CISC de 32 bits

La serie Motorola 68000 (también conocida como 680x0, m68000, m68k o 68k ) es una familia de microprocesadores de computadora con conjunto de instrucciones complejas (CISC) de 32 bits. Durante la década de 1980 y principios de la de 1990, fueron populares en computadoras personales y estaciones de trabajo y fueron los principales competidores de los microprocesadores x86 de Intel. Eran más conocidos como los procesadores utilizados en los primeros Apple Macintosh, Sharp X68000, Commodore Amiga, Sinclair QL, Atari ST, Sega Genesis (Mega Drive), Capcom System I (Arcade), AT&T UNIX PC, Tandy Model 16/16B/6000, Sun Microsystems Sun-1, Sun-2 y Sun-3, NeXT Computer, NeXTcube, NeXTstation y NeXTcube Turbo, las calculadoras Texas Instruments TI-89/TI-92, Palm Pilot (todos los modelos con Palm OS 4.xo anterior) y Space Shuttle. Aunque ninguna computadora de escritorio moderna se basa en procesadores de la serie 680x0, los procesadores derivados todavía se usan ampliamente en sistemas integrados.

Motorola dejó de desarrollar la arquitectura de la serie 680x0 en 1994 y la reemplazó con la arquitectura PowerPC RISC, que se desarrolló junto con IBM y Apple Computer como parte de la alianza AIM.

Miembros de la familia

Historial de mejoras

68010:

68020:

68030:

68040:

68060:

Mapa de funciones

AñoCPUPaqueteFrecuencia (max) [en MHz]Dirección bits busMMUFPU
197968000Paquete en línea dual 64-pin (DIP), 68-pin LCC, Montaje de red de pins 68-pin (PGA)8 a 2024--
19826801064-pin DIP, 68-pin PLCC, 68-pin PGA8 a 16,672468451-
198468020114-pin PGA12,5 a 33,33326885168881
-68EC020Paquete Quad de 100 pines (QFP)16.7 a 2524--
198768030132-pin QFP (max 33 MHz), 128-pin PGA16–5032MMU68881
68EC030132-pin QFP, 128-pin PGA2532-68881
199168040179-pin PGA, 184-pin QFP20 a 4032MMUFPU
68LC040PGA, 184-pin QFP20 a 3332MMU-
68EC04020 a 3332--
199468060206-pin PGA50–7532MMUFPU
68LC060206-pin PGA, 208-pin QFP50–7532MMU-
68EC060206-pin PGA50–7532--

Usos principales

El Sega Genesis usó un 68000 reloj a 7.67 MHz como su principal CPU.

La línea de procesadores 680x0 se ha utilizado en una variedad de sistemas, desde calculadoras modernas de alta gama de Texas Instruments (las líneas TI-89, TI-92 y Voyage 200) hasta todos los miembros de la serie Palm Pilot. que ejecutan Palm OS 1.x a 4.x (OS 5.x está basado en ARM), e incluso versiones resistentes a la radiación en los sistemas de control críticos del transbordador espacial.

Sin embargo, la familia de CPU 680x0 se hizo más conocida como los procesadores que impulsan computadoras de escritorio avanzadas y consolas de videojuegos como Apple Macintosh, Commodore Amiga, Sinclair QL, Atari ST, SNK NG AES/Neo Geo CD, Atari Jaguar, Commodore CDTV y varios otros. Los 680x0 también fueron los procesadores elegidos en la década de 1980 para las estaciones de trabajo y servidores Unix, como la PC UNIX de AT&T, el modelo 16/16B/6000 de Tandy, Sun Microsystems' Sun-1, Sun-2, Sun-3, NeXT Computer, Silicon Graphics (SGI) y muchos otros. Había una versión 68000 de CP/M llamada CP/M-68K, que inicialmente se propuso como el sistema operativo Atari ST, pero Atari eligió Atari TOS en su lugar. Muchos puertos específicos del sistema de CP/M-68K estaban disponibles, por ejemplo, TriSoft ofreció un puerto de CP/M-68K para Tandy Model 16/16B/6000.

Además, y quizás lo más importante, las primeras versiones de los intérpretes PostScript de Adobe se basaron en 68000. El 68000 en Apple LaserWriter y LaserWriter Plus fue registrado más rápido que la versión utilizada entonces en las computadoras Macintosh. Un 68030 rápido en los intérpretes de PostScript posteriores, que incluye la resolución estándar LaserWriter IIntx, IIf y IIg (también 300 ppp), la serie LaserWriter Pro 600 de mayor resolución (normalmente 600 dpi, pero limitada a 300 dpi con RAM mínima instalada) y la muy alta filmadoras Linotronic de alta resolución, 200PS (1500+ dpi) y 300PS (2500+ dpi). A partir de entonces, Adobe generalmente prefirió un RISC para su procesador, ya que sus competidores, con sus clones de PostScript, ya habían optado por RISC, a menudo una serie AMD 29000. Los primeros intérpretes de Adobe PostScript basados en 68000 y su hardware recibieron el nombre de los cohetes y misiles estadounidenses de la era de la Guerra Fría: Atlas, Redstone, etc.

Hoy en día, estos sistemas son de última generación (en el caso de Atari) o utilizan diferentes procesadores (en el caso de Macintosh, Amiga, Sun y SGI). Dado que estas plataformas tuvieron su cuota de mercado máxima en la década de 1980, sus fabricantes originales ya no admiten un sistema operativo para este hardware o están fuera del negocio. Sin embargo, los sistemas operativos Linux, NetBSD y OpenBSD todavía incluyen soporte para procesadores 68000.

Los procesadores 68000 también se utilizaron en las consolas Sega Genesis (Mega Drive) y SNK Neo Geo como CPU principal. Otras consolas, como Sega Saturn, usaban la 68000 para el procesamiento de audio y otras tareas de E/S, mientras que la Atari Jaguar incluía una 68000 que estaba diseñada para el control básico del sistema y el procesamiento de entrada, pero debido a la variedad inusual de Jaguar Los procesadores heterogéneos también se usaban con frecuencia para ejecutar la lógica del juego. Muchas placas de arcade también usaban procesadores 68000, incluidas placas de Capcom, SNK y Sega.

Los microcontroladores derivados de la familia 68000 se han utilizado en una gran variedad de aplicaciones. Por ejemplo, los microcontroladores CPU32 y ColdFire se han fabricado por millones como controladores de motores de automóviles.

Muchos sistemas propietarios de edición de video usaban procesadores 68000, como MacroSystem Casablanca, que era una caja negra con una interfaz gráfica fácil de usar (1997). Estaba destinado al mercado de camarógrafos aficionados y aficionados. También vale la pena señalar su contraparte anterior, más grande y más profesional, el "DraCo" (1995). La innovadora serie Quantel Paintbox de primeros sistemas de pintura y efectos de 24 bits se lanzó originalmente en 1981 y durante su vida útil utilizó casi toda la gama de procesadores de la familia 68000, con la única excepción del 68060, que nunca se implementó en su diseño.. Otro competidor en el campo del video, el sistema Abekas 8150 DVE, usó el 680EC30, y Trinity Play, más tarde rebautizado como Globecaster, usa varios 68030. El sistema de gráficos de video Bosch FGS-4000/4500 fabricado por Robert Bosch Corporation, más tarde BTS (1983), usó un 68000 como procesador principal; impulsó a varios otros a realizar animaciones 3D en una computadora que podía aplicar fácilmente el sombreado Gouraud y Phong. Ejecutó un sistema operativo Motorola VERSAdos modificado.

Arquitectura

Las personas que están familiarizadas con el PDP-11 o el VAX suelen sentirse cómodas con la serie 68000. Con la excepción de la división de los registros de uso general en registros de direcciones y datos especializados, la arquitectura 68000 es, en muchos sentidos, un PDP-11 de 32 bits.

Tenía un conjunto de instrucciones más ortogonales que los de muchos procesadores anteriores (p. ej., 8080) y posteriores (p. ej., x86). Es decir, normalmente era posible combinar operaciones libremente con operandos, en lugar de estar restringido a usar ciertos modos de direccionamiento con ciertas instrucciones. Esta propiedad hizo que la programación fuera relativamente fácil para los humanos y también facilitó la escritura de generadores de código para compiladores.

La serie 68000 tiene ocho registros de datos de uso general de 32 bits (D0-D7) y ocho registros de direcciones (A0-A7). El último registro de dirección es el puntero de pila y los ensambladores aceptan la etiqueta SP como equivalente a A7.

Además, tiene un registro de estado de 16 bits. Los 8 bits superiores son el byte del sistema y se privilegia su modificación. Los 8 bits inferiores son el byte de usuario, también conocido como registro de código de condición (CCR), y no se privilegia su modificación. Las operaciones lógicas, aritméticas y de comparación del 68000 modifican los códigos de condición para registrar sus resultados y utilizarlos en saltos condicionales posteriores. Los bits del código de condición son "cero" (Z), "llevar" (C), "desbordamiento" (V), "extender" (X) y "negativo" (NORTE). El "extender" La bandera (X) merece una mención especial, porque está separada de la bandera de acarreo. Esto permite que el bit adicional de las operaciones aritméticas, lógicas y de desplazamiento se separe del acarreo para el flujo de control y el enlace.

Si bien el 68000 tenía un 'modo supervisor', no cumplía con los requisitos de virtualización de Popek y Goldberg debido a la única instrucción 'MOVER desde SR', que copia el registro de estado a otro registro, siendo poco privilegiado pero sensible. En el Motorola 68010 y posteriores, esto se hizo privilegiado para admitir mejor el software de virtualización.

El conjunto de instrucciones de la serie 68000 se puede dividir en las siguientes categorías generales:

El Motorola 68020 agregó algunas instrucciones nuevas que incluyen algunas mejoras menores y extensiones al estado de supervisor, varias instrucciones para la administración de software de un sistema multiprocesador (que se eliminaron en el 68060), cierto soporte para lenguajes de alto nivel que no se usa mucho (y se eliminó de los futuros procesadores 680x0), instrucciones más grandes de multiplicación (32 × 32 → 64 bits) y división (cociente de 64 ÷ 32 → 32 bits y resto de 32 bits) y manipulaciones de campo de bits.

Los modos de direccionamiento estándar son:

Plus: acceso al registro de estado y, en modelos posteriores, a otros registros especiales.

El Motorola 68020 agregó un modo de dirección de indexación escalada y agregó otro nivel de direccionamiento indirecto a muchos de los modos preexistentes.

La mayoría de las instrucciones tienen sufijos de letras y puntos, lo que permite que las operaciones se realicen en bytes de 8 bits (".b"), palabras de 16 bits (".w") y 32 -bit largos (".l").

La mayoría de las instrucciones son diádicas, es decir, la operación tiene un origen y un destino, y el destino cambia. Las instrucciones notables fueron:

68050 y 68070

Motorola utilizó principalmente números pares para revisiones importantes del núcleo de la CPU, como 68000, 68020, 68040 y 68060. El 68010 era una versión revisada del 68000 con modificaciones menores en el núcleo y, del mismo modo, el 68030 era un 68020 revisado con algunas características más potentes, ninguna de ellas lo suficientemente significativa como para clasificarla como una actualización importante del núcleo.

No había 68050, aunque en un momento fue un proyecto dentro de Motorola. Los lanzamientos con números impares siempre habían sido reacciones a problemas planteados en la parte anterior con números pares; por lo tanto, en general se esperaba que el 68050 hubiera reducido el consumo de energía del 68040 (y, por lo tanto, la disipación de calor), mejorado el manejo de excepciones en la FPU, usado un tamaño de característica más pequeño y optimizado el microcódigo de acuerdo con el uso de instrucciones del programa. Muchas de estas optimizaciones se incluyeron con el 68060 y formaron parte de sus objetivos de diseño. Por varias razones, probablemente porque el 68060 estaba en desarrollo, que el Intel 80486 no estaba progresando tan rápido como supuso Motorola y que el 68060 era un proyecto exigente, el 68050 se canceló al principio del desarrollo.

Tampoco hay una revisión del 68060, ya que Motorola estaba en el proceso de cambiar las líneas de procesadores 68000 y 88k a su nuevo negocio PowerPC, por lo que el 68070 nunca se desarrolló. Si lo hubiera sido, habría sido un 68060 revisado, probablemente con una FPU superior (se especuló mucho sobre la canalización en Usenet).

Había una CPU con la designación 68070, que era una versión con licencia y un poco más lenta de la 68000 de 16/32 bits con un controlador DMA básico, host I²C y un puerto serie en chip. Este 68070 se utilizó como CPU principal en el Philips CD-i. Sin embargo, esta CPU fue producida por Philips y no formaba parte oficialmente de la línea 680x0 de Motorola.

Última generación

El 68060 de cuarta generación proporcionó una funcionalidad equivalente (aunque no compatibilidad con la arquitectura del conjunto de instrucciones) a la mayoría de las características de la microarquitectura Intel P5.

Otras variantes

Los mainframe compatibles con IBM basados en PC Personal Computers XT/370 y AT/370 incluían cada uno dos procesadores Motorola 68000 modificados con microcódigo personalizado para emular las instrucciones del mainframe S/370.

Edge Computer Corp, una empresa con sede en Arizona, supuestamente fundada por antiguos diseñadores de Honeywell, produjo procesadores compatibles con la serie 68000, que se afirma que tienen "un rendimiento tres a cinco veces mayor y 18 a 24 meses – ventaja" sobre los propios productos de Motorola. En 1987, la compañía presentó la gama Edge 1000 de "superminicomputadoras de 32 bits que implementan el conjunto de instrucciones de Motorola en la arquitectura de mainframe Edge", empleando dos canalizaciones independientes: una canalización de obtención de instrucciones (IFP) y una canalización ejecutiva de operandos (OEP), que se basa en una unidad de predicción de bifurcación con una memoria caché de bifurcación de 4096 entradas, que recupera instrucciones y operandos a través de múltiples buses. Posteriormente, un acuerdo entre Edge Computer y Olivetti llevó a que esta última introdujera productos en su propia "Linea Duo" gama basada en las máquinas de Edge Computer. Posteriormente, la empresa pasó a llamarse Edgcore Technology Inc. (también conocida como Edgecore Technology Inc.). El acuerdo de Edgcore con Olivetti en 1987 para suministrar el procesador E1000 de la compañía fue seguido en 1989 por otro acuerdo con Philips Telecommunications Data Systems para suministrar el procesador E2000, que respalda el conjunto de instrucciones 68030 y, según se informa, ofrece una calificación de rendimiento. de 16 VAX MIPS. En 1989 también se firmaron acuerdos similares con Nixdorf Computer e Hitachi.

Al parecer, Edge Computer tenía un acuerdo con Motorola. A pesar de la creciente competencia de los productos RISC, Edgcore buscó distinguir sus productos en el mercado enfatizando su "alianza" con Motorola, empleando una campaña de marketing inspirada en las fábulas de Esopo con "el zorro (Edgecore) que se sube al lomo del semental (Motorola) para arrancar la fruta de las ramas más altas del árbol". Evidentemente, se emplearon otros temas publicitarios de cuentos populares, como Caperucita Roja. Dado que los inversores de la empresa se negaron a seguir financiando a la empresa y que varias empresas participaron en conversaciones con otras partes, Arix Corp. anunció la adquisición de Edgcore en julio de 1989. Según los informes, Arix pudo renovar su acuerdo con Hitachi en 1990, mientras que el futuro de los acuerdos anteriores con Olivetti y Philips permaneció en duda después de la adquisición de Edgcore.

En 1992, una empresa llamada International Meta Systems (IMS) anunció una CPU basada en RISC, la IMS 3250, que supuestamente podría emular la "Intel 486 o Motorola 68040 a velocidades nativas completas y a una fracción de su costo. Con una frecuencia de 100 MHz, supuestamente se habían desarrollado emulaciones de un 25 MHz 486 y 30 MHz 68040, incluida la compatibilidad con unidades de coma flotante, y el producto apunta a la producción a mediados de 1993 a un costo por unidad de $50 a 60. En medio de la aparente proliferación del soporte de emulación en procesadores como el PowerPC 615, en 1994, IMS supuestamente presentó una patente sobre su tecnología de emulación pero no encontró ningún licenciatario. Los repetidos retrasos en la introducción de este producto, atribuidos en una ocasión a la "necesidad de mejorar las capacidades de procesamiento de voz del chip", aparentemente llevaron a la empresa a intentar introducir otro chip, el Meta6000, con el objetivo de competir con los productos P6 de Intel. Finalmente, IMS entró en bancarrota después de haber vendido patentes a un litigante, TechSearch, quien en 1998 intentó demandar a Intel por infracción de una patente de IMS. Según los informes, TechSearch perdió su caso, pero trató de apelar, y también buscó demandar a Intel por "difamación y calumnia" sobre la base de los comentarios hechos por un representante de Intel que había caracterizado desfavorablemente el modelo de negocios de TechSearch en declaraciones a la prensa.

Después de la línea principal de procesadores 68000' desaparición, la familia 68000 se ha utilizado hasta cierto punto en versiones de microcontroladores y microprocesadores integrados. Estos chips incluyen los que se enumeran en "otros" arriba, es decir, el CPU32 (también conocido como 68330), el ColdFire, el QUICC y el DragonBall.

Con la llegada de la tecnología FPGA, un equipo internacional de desarrolladores de hardware ha recreado el 68000 con muchas mejoras como un núcleo FPGA. Su núcleo se conoce como 68080 y se utiliza en los aceleradores Amiga de la marca Vampire.

Magnetic Scrolls usó un subconjunto de las instrucciones del 68000 como base para la máquina virtual en sus aventuras de texto.

Competidores

Escritorio

Durante la década de 1980 y principios de la de 1990, cuando el 68000 se usaba ampliamente en las computadoras de escritorio, competía principalmente con la arquitectura x86 de Intel utilizada en las PC compatibles de IBM. Las CPU 68000 de generación 1 compitieron principalmente contra 8086, 8088 y 80286 de 16 bits. La generación 2 compitió contra 80386 (el primer procesador x86 de 32 bits) y la generación 3 contra 80486. La cuarta generación compitió con la línea P5 Pentium, pero no fue tan ampliamente utilizado como sus predecesores, ya que gran parte del antiguo mercado 68000 ya no existía o casi no existía (como fue el caso de Atari y NeXT), o se estaba convirtiendo a arquitecturas más nuevas (PowerPC para Macintosh y Amiga, SPARC para Sun y MIPS para Silicon Graphics (SGI)).

Incrustada

(feminine)

Hay docenas de arquitecturas de procesadores que tienen éxito en los sistemas integrados. Algunos son microcontroladores que son mucho más simples, pequeños y económicos que el 68000, mientras que otros son relativamente sofisticados y pueden ejecutar software complejo. Las versiones integradas del 68000 a menudo compiten con arquitecturas de procesadores basadas en PowerPC, ARM, MIPS, SuperH y otras.