PowerPC 600
# PowerPC 600

La familia PowerPC 600 fue la primera familia de procesadores PowerPC construida. Fueron diseñados en las instalaciones de Somerset en Austin, Texas, financiados y atendidos conjuntamente por ingenieros de IBM y Motorola como parte de la alianza AIM. Somerset se inauguró en 1992 y su objetivo era fabricar el primer procesador PowerPC y luego seguir diseñando procesadores PowerPC de propósito general para computadoras personales. La primera encarnación se convirtió en el PowerPC 601 en 1993, y pronto siguió la segunda generación con los PowerPC 603, PowerPC 604 y PowerPC 620 de 64 bits.

## Modelos principales

| CPU | Etapas de canalización | Misc |
| - | - | - |
| PowerPC 601 | 4 | 3 unidades de ejecución, una de predicción de saltos estática. Soporte para SMP. |
| PowerPC 603 | 4 | 5 unidades de ejecución, predicción de saltos. Sin SMP. |
| PowerPC 604 | 6 | Superescalar, ejecución fuera de orden, 6 unidades de ejecución. Soporte para SMP. |
| PowerPC 620 | 5 | Ejecución fuera de orden. Soporte para SMP. |

### PowerPC 601

El PowerPC 601 fue la primera generación de microprocesadores compatibles con el conjunto de instrucciones básico de 32-bit del PowerPC. El esfuerzo de diseño comenzó en serio a mediados de 1991 y los primeros chips prototipo estuvieron disponibles en octubre de 1992. Los primeros procesadores 601 se introdujeron en una estación de trabajo IBM RS/6000 en octubre de 1993 (junto con su más potente línea de procesadores multichip IBM POWER2), y el primer Apple Power Macintosh el 14 de marzo de 1994. El 601 fue la primera implementación avanzada de un solo chip de la arquitectura POWER/PowerPC diseñada en un cronograma acelerado para establecer el PowerPC en el mercado y cimentar la alianza AIM. Con el fin de lograr un cronograma extremadamente agresivo al tiempo que incluye una funcionalidad sustancialmente nueva (como mejoras sustanciales en el rendimiento, nuevas instrucciones y, lo que es más importante, la primera implementación de multiprocesamiento simétrico (SMP) de POWER/PowerPC), el diseño aprovechó una serie de tecnologías clave y estrategias de gestión de proyectos. El equipo 601 aprovechó gran parte de la estructura básica y partes del procesador IBM RISC Single Chip (RSC), pero también incluye soporte para la gran mayoría de las nuevas instrucciones de PowerPC que no están en la conjunto de instrucciones POWER. Si bien casi todas las partes del diseño de RSC se modificaron, y muchos bloques de diseño se modificaron sustancialmente o se rediseñaron por completo debido a la estructura unificada del bus de E/S y apoyo SMP/coherencia de la memoria. Los nuevos cambios de PowerPC, que aprovecharon la estructura básica de RSC, fueron muy beneficiosos para reducir la incertidumbre en el área del chip/planificación y el análisis/ajuste de tiempo. Vale la pena señalar que el 601 no solo implementó nuevas funciones clave sustanciales como SMP, sino que también actuó como un puente entre POWER y los futuros procesadores PowerPC para ayudar a IBM y a los desarrolladores de software en sus transiciones a PowerPC. Desde el inicio del diseño hasta el tape-out del primer prototipo 601 transcurrieron solo 12 meses con el fin de esforzarse mucho para establecer PowerPC en el mercado lo antes posible.

**Bus 60x**

Para ayudar en el esfuerzo de incorporar rápidamente la arquitectura de bus 88110 al 601 en beneficio de la alianza y sus clientes, la gerencia de Motorola proporcionó no solo las especificaciones de la arquitectura de bus 88110, sino también un puñado de diseñadores del 88110 para ayudar con la implementación y verificación de la lógica del bus 60x. Dado que el equipo de diseño del sistema de Apple estaba familiarizado con la estructura del bus de E/S del 88110 de Motorola y que esta implementación del bus de E/S estaba bien definida y documentada, el equipo del 601 adoptó la tecnología de bus para mejorar el tiempo de comercialización. El bus pasó a llamarse bus 60x una vez implementado en el 601. A estos diseñadores de Motorola (y un pequeño número de Apple) se unieron más de 120 diseñadores de IBM en la creación del 601.

El uso del bus 88110 como base para el bus 60x ayudó a los cronogramas de varias maneras. Ayudó al equipo de Apple Power Macintosh al reducir la cantidad de rediseño de sus ASIC y redujo la cantidad de tiempo que los diseñadores y arquitectos de procesadores necesitaban para proponer, documentar, negociar y cerrar una nueva interfaz de bus (evitando con éxito las «guerras de buses» esperadas por el equipo de administración del 601 si no se hubiera adoptado el bus 88110 o los buses RSC anteriores). Vale la pena señalar que la aceptación del bus 88110 en beneficio de los esfuerzos de Apple y la alianza fue a expensas de los esfuerzos del primer equipo de diseño del sistema IBM RS/6000 que ya tenía sus ASIC de soporte implementados en una estructura de bus totalmente diferente del RSC.

Este bus 60x luego se convirtió en una interfaz básica bastante duradera para las muchas variantes de los procesadores 601, 603, 604, PowerPC G3, G4 y Motorola/Freescale PowerQUICC.

**Diseño**

El chip fue diseñado para adaptarse a una amplia variedad de aplicaciones y tenía soporte para caché L2 externo y multiprocesamiento simétrico. Tenía cuatro unidades funcionales, incluyendo una unidad de coma flotante, una unidad entera, una unidad de saltos y una unidad secuenciadora. El procesador también incluía una unidad de gestión de memoria. La segmentación de instrucciones (pipeline) de enteros tenía cuatro etapas de largo, el pipeline de saltos de dos etapas, el pipeline de memoria de cinco etapas y el de coma flotante de seis etapas de largo.

Lanzado por primera vez en los sistemas de IBM en el otoño de 1993, IBM lo comercializó como PPC601 y Motorola como MPC601. Operaba a velocidades que oscilaban entre 50 y 80 MHz. Se fabricó mediante un proceso CMOS de 0,6 μm con cuatro niveles de interconexión de aluminio. El silicio tenía 121 $mm^2$ y contenía 2,8 millones de transistores. El 601 tiene un caché L1 unificada de 32 KB, una capacidad que se consideraba grande en ese momento para un caché en el chip. Gracias en parte a la gran memoria caché, se consideró un procesador de alto rendimiento en su segmento, superando al Intel Pentium de la competencia. El PowerPC 601 se usó en las primeras computadoras Power Macintosh de Apple, y en una variedad de estaciones de trabajo RS/6000 y servidores SMP de IBM y Groupe Bull.

IBM era el único fabricante de los microprocesadores 601 y 601+ en sus instalaciones de producción de Burlington, Vermont y East Fishkill, Nueva York. El 601 usó el proceso IBM CMOS-4s y el 601+ usó el proceso IBM CMOS-5x. Una cantidad extremadamente pequeña de estos procesadores 601 y 601+ se volvió a etiquetar con los logotipos y números de pieza de Motorola y se distribuyó a través de Motorola. Estos hechos están algo oscurecidos dado que hay varias imágenes del «Motorola MPC601», en particular un caso específico de marketing magistral de Motorola donde el 601 fue nombrado uno de los «Productos del año» Time Magazine de 1994, con la marca Motorola.

**PowerPC 601v**

En 1994 se presentó una versión actualizada, PowerPC 601v o PowerPC 601+, que funcionaba de 90 a 120 MHz. Se fabricó en un proceso CMOS de 0,5 μm más nuevo con cuatro niveles de interconexión, lo que da como resultado un silicio de 74 $mm^2.$ El diseño 601+ fue reasignado de CMOS-4s a CMOS-5x por un equipo exclusivo de IBM. Para evitar retrasos en el tiempo de comercialización debido a los cambios en las herramientas de diseño y la uniformización de las reglas básicas de fabricación, tanto el 601 como el 601+ se diseñaron con herramientas EDA de IBM en sistemas de IBM y se fabricaron en instalaciones exclusivas de IBM.

### PowerPC 603

El PowerPC 603 fue el primer procesador que implementó la arquitectura PowerPC completa de 32 bits especificada. Introducido en 1994, fue un diseño avanzado para su época, siendo uno de los primeros microprocesadores en ofrecer emisión dual (hasta tres con plegado de saltos) y ejecución desordenada combinada con un bajo consumo de energía de 2,2 W y un silicio pequeño, de 85 $mm^2.$ Fue diseñado para ser un procesador de bajo costo y bajo consumo de energía para equipos portátiles. Una de las características principales eran las funciones de ahorro de energía (modo de reposo, siesta y suspensión) que podían reducir drásticamente los requisitos de energía, consumiendo solo 2 mW en modo de suspensión. El 603 tiene una canalización de cuatro etapas y cinco unidades de ejecución: unidad entera, unidad de coma flotante, unidad de predicción de saltos, unidad de carga/almacenamiento y una unidad de registro del sistema. Tiene cachés L1 de 8 KB independientes para instrucciones y datos y un bus de memoria de 60x de 32/64 bits, que alcanza hasta 120 MHz a 3,8 V. El núcleo 603 no tenía soporte de hardware para SMP.

El PowerPC 603 tenía 1,6 millones de transistores y fue fabricado por IBM y Motorola en un proceso CMOS de 0,5 μm con cuatro niveles de interconexión. El silicio era de 85 $mm^2$ de dibujo grande, de 2,2 W a 80 MHz. La arquitectura 603 es la antepasada directa de la arquitectura PowerPC 750, comercializada por Apple como PowerPC «G3».

El 603 estaba destinado a ser utilizado por las computadoras Apple Macintosh portátiles, pero no podía ejecutar software de emulación 68K con un rendimiento que Apple considerara adecuado, debido a las cachés de procesador más pequeñas. Como resultado, Apple optó por usar el 603 solo en su línea Performa de escritorio de bajo costo. Esto provocó el retraso de la Apple PowerBook 5300 y PowerBook Duo 2300, ya que Apple optó por esperar una revisión del procesador. El uso de Apple del 603 en la línea Performa 5200 hizo que el procesador obtuviera una mala reputación. Además del problema del rendimiento de la emulación de 68K, las máquinas Performa se enviaron con una variedad de fallas de diseño, algunas de ellas graves, relacionadas con otros aspectos del diseño de las computadoras, incluido el rendimiento y la estabilidad de la red, problemas de bus (ancho, velocidad, contención y complejidad), errores de ROM y rendimiento del disco duro. Ninguno de los problemas de la línea 5200, aparte del rendimiento de la emulación de 68K, se debió inherentemente al 603. Más bien, el procesador se modificó para usarse con placas base 68K y otras partes obsoletas. El sitio Low End Mac califica a la Performa 5200 como la peor Mac de todos los tiempos. El 603 encontró un uso generalizado en diferentes dispositivos integrados.

**PowerPC 603e y 603ev**

Los problemas de rendimiento del 603 se abordaron en el PowerPC 603e. La memoria caché L1 se amplió y mejoró a cachés de cuatro vías de 16 KB de conjuntos asociativos de datos e instrucciones. La velocidad de reloj de los procesadores también se duplicó, alcanzando los 200 MHz. La reducción del proceso de fabricación a 350 nm permitió velocidades de hasta 300 MHz. Esta parte a veces se llama PowerPC 603ev. El 603e y el 603ev tienen 2,6 millones de transistores cada uno y miden 98 $mm^2$ y 78 $mm^2$ respectivamente. El 603ev consume un máximo de 6 W a 300 MHz.

El PowerPC 603e fue el primer procesador de escritorio estándar en alcanzar los 300 MHz, tal como se usa en el Power Macintosh 6500. El 603e también se usó en placas aceleradoras de Phase5 para la línea de computadoras Amiga, con CPU con velocidades de 160 a 240 MHz. El PowerPC 603e todavía lo venden IBM y Freescale, y otros como Atmel y Honeywell que fabrican la variante resistente a la radiación RHPPC. El PowerPC 603e también fue el corazón del BeBox de Be Inc. El BeBox es notable ya que es un sistema de multiprocesamiento, algo para lo que el 603 no fue diseñado. IBM también usó procesadores PowerPC 603e en la serie IBM ThinkPad 800. En ciertas series de osciloscopios digitales, LeCroy utilizaba el PowerPC 603e como procesador principal. Los procesadores 603e también alimentan los 66 satélites en la flota de teléfonos satelitales Iridium. Cada uno de los satélites contiene siete procesadores Motorola/Freescale PowerPC 603e que funcionan a aproximadamente 200 MHz cada uno. También se utiliza un procesador 603e personalizado en el torpedo ligero Mark 54 MAKO.

**G2**

El núcleo PowerPC 603e, renombrado G2 por Freescale, es la base de muchos procesadores integrados PowerQUICC II y, como tal, sigue desarrollándose. Los procesadores PowerQUICC II SoC de Freescale llevan la designación MPC82xx y vienen en una variedad de configuraciones que alcanzan los 450 MHz. El nombre G2 también se usa como un retrónimo para los procesadores 603e y 604 para alinearse con G3, G4 y G5.

**e300**

Freescale ha mejorado el núcleo 603e, llamándolo e300 en los procesadores integrados PowerQUICC II Pro. Se agregaron cachés L1 más grandes de 32/32 KB y otras medidas para mejorar el rendimiento. Los procesadores SoC PowerQUICC II Pro de Freescale llevan la designación MPC83xx y vienen en una variedad de configuraciones que alcanzan velocidades de hasta 667 MHz. El e300 también es el núcleo del procesador SoC MPC5200B que se usa en la pequeña computadora EFIKA.

### PowerPC 604

El PowerPC 604 se introdujo en diciembre de 1994 junto con el 603 y fue diseñado como un chip de alto rendimiento para estaciones de trabajo y servidores básicos y, como tal, tenía soporte para multiprocesamiento simétrico en hardware. El 604 se usó ampliamente en los sistemas de gama alta de Apple y también en clones de Macintosh, servidores y estaciones de trabajo de gama baja RS/6000 de IBM, placas aceleradoras Amiga y como CPU integrada para aplicaciones de telecomunicaciones.

El 604 es un procesador superescalar capaz de emitir cuatro instrucciones simultáneamente. El 604 tiene un pipeline de seis etapas y seis unidades de ejecución que pueden trabajar en paralelo, terminando hasta seis instrucciones por ciclo. Dos unidades enteras simples y una compleja, una unidad de coma flotante, una unidad de procesamiento de saltos que gestiona ejecución fuera de orden y una unidad de carga/almacenamiento. Tiene memorias caché L1 de datos e instrucciones separadas de 16 KB. La interfaz externa es un bus 60x de 32 o 64 bits que funciona a velocidades de reloj de hasta 50 MHz.

El PowerPC 604 contiene 3,6 millones de transistores y fue fabricado por IBM y Motorola con un proceso CMOS de 0,5 μm con cuatro niveles de interconexión. El silicio medía 12,4 mm por 15,8 mm (196 $mm^2)$ y consumía 14-17 W a 133 MHz. Funcionaba a velocidades entre 100 y 180 MHz.

**PowerPC 604e**

El PowerPC 604e se introdujo en julio de 1996 y agregó una unidad de registro de condición y cachés L1 de datos e instrucciones separados de 32 KB, entre otros cambios en su subsistema de memoria y unidad de predicción de bifurcaciones, lo que resultó en un aumento del rendimiento del 25% en comparación a su predecesor. Tenía 5,1 millones de transistores y fue fabricado por IBM y Motorola en un proceso CMOS de 0,35 μm con cinco niveles de interconexión. El silicio tenía un tamaño de 148 $mm^2$ o 96 $mm^2,$ fabricado por Motorola e IBM respectivamente, consumiendo entre 16 y 18 W a 233 MHz. Operaba a velocidades entre 166 y 233 MHz y admitía un bus de memoria de hasta 66 MHz.

**PowerPC 604ev «Mach5»**

El PowerPC 604ev, 604r o «Mach 5» se introdujo en agosto de 1997 y era esencialmente un 604e fabricado por IBM y Motorola con un proceso más nuevo, alcanzando mayor velocidades con un menor consumo de energía. El silicio tenía un tamaño pequeño, de 47 $mm^2,$ fabricado en un proceso CMOS de 0,25 μm con cinco niveles de interconexión y consumía 6 W a 250 MHz. Operaba a velocidades entre 250 y 400 MHz y admitía un bus de memoria de hasta 100 MHz.

Mientras que Apple abandonó el 604ev en 1998 a favor del PowerPC 750, IBM siguió usándolo en los modelos básicos de sus computadoras RS/6000 durante varios años.

### PowerPC 620

El PowerPC 620 fue la primera implementación de toda la arquitectura PowerPC de 64 bits. Era un PowerPC de segunda generación junto con el 603 y el 604, pero orientado al mercado de servidores y estaciones de trabajo de alta gama. Era poderoso sobre el papel e inicialmente se suponía que se lanzaría junto con sus hermanos, pero se retrasó hasta 1997. Cuando llegó, el rendimiento era comparativamente pobre y el 604e, considerablemente más económico, lo superó. Por lo tanto, el 620 nunca se produjo en grandes cantidades y encontró muy poco uso. El único usuario de PowerPC 620 fue Groupe Bull en sus máquinas UNIX Escala, pero no entregaron grandes cantidades. IBM, que pretendía utilizarlo en estaciones de trabajo y servidores, decidió esperar a los procesadores RS64 y POWER3 de 64 bits aún más potentes.

El 620 fue producido por Motorola en un proceso de 0,5 μm. Tenía 6,9 millones de transistores y el silicio tenía un área de 311 $mm^2.$ Operaba a frecuencias de reloj entre 120 y 150 MHz, y consumía 30 W a 133 MHz. Se construyó un modelo posterior utilizando un proceso de 0,35 μm, lo que le permitió alcanzar los 200 MHz.

El 620 era similar al 604. Tiene un pipeline de cinco etapas, mismo soporte para multiprocesamiento simétrico y el mismo número de unidades de ejecución; una unidad de carga/almacenamiento, una unidad de saltos, una unidad de coma flotante y tres unidades de enteros. Con cachés de datos e instrucciones de 32 KB más grandes, soporte para un caché L2 que puede tener una capacidad de 128 MB y unidades de saltos y carga/almacenamiento más poderosas que tenían más búferes, el 620 era muy potente. La tabla de historial de bifurcación también era más grande y podía enviar más instrucciones para que el procesador pudiera manejar la ejecución fuera de orden de manera más eficiente que el 604. La unidad de coma flotante también se mejoró en comparación con el 604. Con un ciclo de recuperación más rápido y soporte para varias instrucciones clave en hardware (como sqrt) combinado con buses de datos más rápidos y más amplios, resultó más eficiente que la unidad de coma flotante en el 604.

**Buses 6XX y GX**

El bus del sistema era un bus de memoria de 128 bits más ancho y rápido llamado «bus 6XX». Fue diseñado para ser un bus de sistema para sistemas multiprocesador donde se conectarían procesadores, cachés, memoria y E/S, asistidos por un chip de control del sistema. Admite procesadores PowerPC de 32 y 64 bits, direcciones de memoria de más de 32 bits y entornos NUMA. También se usó en POWER3, RS64 y 601, así como en sistemas RS/6000 basados ​​en 604 (con un chip puente). Más tarde, el bus se convirtió en el bus GX del POWER4, y posteriormente GX+ y GX++ en POWER5 y POWER6 respectivamente. El bus GX también se utiliza en los mainframes z10 y System z z196 de IBM.

## Familia extendida

### PowerPC 602

El PowerPC 602 era una versión simplificada del PowerPC 603, fabricado especialmente para consolas de juegos por Motorola e IBM, presentado en febrero de 1995. Tiene cachés L1 más pequeñas (4 KB de instrucción y 4 KB de datos), una unidad de coma flotante de precisión simple y una unidad de predicción de bifurcación reducida. Se ofrecía a velocidades que oscilaban entre 50 y 80 MHz y consumía 1,2 W a 66 MHz. Consistía en 1 millón de transistores y tenía un tamaño de 50 $mm^2$ fabricado en un proceso CMOS de 0,5 μm con cuatro niveles de interconexión.<

3DO desarrolló la videoconsola M2 que usaba dos PowerPC 602, pero nunca se comercializó.

### PowerPC 603q

El 21 de octubre de 1996, la compañía de semiconductores sin fábrica Quantum Effect Devices (QED) anunció un procesador compatible con PowerPC 603 llamado «PowerPC 603q» en el Microprocessor Report. A pesar de su nombre, no tenía nada en común con ningún otro 603. Fue una implementación desde cero de la arquitectura PowerPC de 32 bits dirigida al mercado integrado de gama alta desarrollado durante dos años. Como tal, era pequeño, simple, energéticamente eficiente, pero poderoso; igualando el 603e más caro mientras consumía menos energía. Tenía una canalización ordenada de cinco etapas con una sola unidad de enteros, una unidad de coma flotante (FPU) doble precisión y cachés separadas de instrucciones y datos de 16 KB y 8 KB respectivamentes. Si bien la unidad de enteros era un diseño completamente nuevo, la FPU se derivó del R4600 para ahorrar tiempo. Tenía un tamaño de 69 $mm^2$ usando un proceso de fabricación de 0,5 μm y consumía solo 1,2 W a 120 MHz.

El 603q fue diseñado para Motorola, pero rescindieron el contrato antes de que el 603q entrara en plena producción. Como resultado, el 603q se canceló ya que QED no pudo continuar comercializando el procesador ya que carecían de una licencia propia de PowerPC.

### PowerPC 613

«PowerPC 613» parece ser un nombre que Motorola le había dado a un PowerPC de tercera generación. Supuestamente fue rebautizado como «PowerPC 750» en respuesta al procesador x704 de Exponential Technology que fue diseñado para superar al 604 por un amplio margen. Sin embargo, casi no hay fuentes que confirmen nada de esto y podría ser pura especulación o una referencia a un procesador completamente diferente.

### PowerPC 614

Similar a PowerPC 613, el «PowerPC 614» podría haber sido un nombre dado por Motorola a una PowerPC de tercera generación, y luego renombrado por la misma razón que el 613. Se ha sugerido que fue renombrado como «PowerPC 7400», y Motorola incluso la pasó a la cuarta generación de PowerPC a pesar de que las diferencias arquitectónicas entre «G3» y «G4» era pequeñas. Sin embargo, casi no hay fuentes que confirmen nada de esto y podría ser pura especulación o una referencia a un procesador completamente diferente.

### PowerPC 615

El «PowerPC 615» es un procesador PowerPC anunciado por IBM en 1994, pero que nunca llegó a producción en masa. Su característica principal era incorporar un núcleo x86 en el chip, lo que hacía que el procesador pudiera procesar de forma nativa las instrucciones PowerPC y x86. Un sistema operativo que se ejecuta en PowerPC 615 podía optar por ejecutar instrucciones PowerPC de 32 o 64 bits, instrucciones x86 de 32 bits o una combinación de las tres. La mezcla de instrucciones implicaría un cambio de contexto en la CPU con una pequeña sobrecarga. Los únicos sistemas operativos compatibles con el 615 eran Minix y una versión de desarrollo especial de OS/2.

Tenía un tamaño de 330 $mm^2$ y lo fabricó IBM en un proceso de 0,35 μm. Era compatible con los pines con los procesadores Pentium de Intel y comparable en velocidad. El procesador se presentó solo como un prototipo y el programa se eliminó en parte por el hecho de que Microsoft nunca admitió el procesador. Los ingenieros que trabajaron en el PowerPC 615 luego encontraron su camino a Transmeta, donde trabajaron en el procesador Crusoe.

### PowerPC 625

«PowerPC 625» fue el nombre inicial de los procesadores PowerPC de 64 bits de la serie Apache, diseñados por IBM basados en el conjunto de instrucciones PowerPC-AS «Amazon». Más tarde fueron rebautizados como «RS64». La designación «PowerPC 625» nunca se utilizó para los procesadores finales.

### PowerPC 630

«PowerPC 630» fue el primer nombre del procesador PowerPC de 64 bits de gama alta, diseñado por IBM para unificar los conjuntos de instrucciones POWER y PowerPC. Más tarde se le cambió el nombre a «POWER3», probablemente para distinguirlo de los procesadores «PowerPC» más orientados al consumidor, utilizados por Apple.

### PowerPC 641

«PowerPC 641», nombre en clave Habanero, es un proyecto PowerPC desaparecido de IBM en entre 1994 y 1996. Se ha sugerido que fue el PowerPC de tercera generación basado en el procesador 604.

