Arquitectura del conjunto de instrucciones de IBM POWER - IBM POWER instruction set architecture

La POTENCIA ISA de IBM es un reducido equipo conjunto de instrucciones (RISC) conjunto de instrucciones de la arquitectura (ISA), desarrollado por IBM . El nombre es un acrónimo de Performance Optimization With Enhanced RISC .

El ISA se utiliza como base para microprocesadores de gama alta de IBM durante la década de 1990 y se utilizó en muchos de los servidores, minicomputadoras, estaciones de trabajo y supercomputadoras de IBM. Estos procesadores se denominan POWER1 (RIOS-1, RIOS.9, RSC , RAD6000 ) y POWER2 (POWER2, ​​POWER2 + y P2SC).

El ISA evolucionó hacia la arquitectura del conjunto de instrucciones PowerPC y quedó en desuso en 1998 cuando IBM introdujo el procesador POWER3 que era principalmente un procesador PowerPC de 32/64 bits , pero incluía el POWER ISA para compatibilidad con versiones anteriores. Entonces se abandonó el POWER ISA original. PowerPC se convirtió en el tercer Power ISA en 2006.

Un esquema que muestra la evolución de las diferentes POWER , PowerPC y Power ISA

IBM continúa desarrollando núcleos de microprocesador PowerPC para su uso en sus ofertas de circuitos integrados específicos de aplicación (ASIC). Muchas aplicaciones de gran volumen incorporan núcleos PowerPC.

Historia

El proyecto de investigación 801

En 1974, IBM inició un proyecto con el objetivo de diseño de crear una gran red de conmutación telefónica con una capacidad potencial para atender al menos 300 llamadas por segundo. Se proyectó que se necesitarían 20.000 instrucciones de máquina para manejar cada llamada manteniendo una respuesta en tiempo real, por lo que se consideró necesario un procesador con un rendimiento de 12 MIPS. Este requisito era extremadamente ambicioso para la época, pero se comprendió que se podía prescindir de gran parte de la complejidad de las CPU contemporáneas, ya que esta máquina solo necesitaría realizar E / S, bifurcaciones, agregar registro-registro, mover datos entre registros y memoria, y no necesitaría instrucciones especiales para realizar aritmética pesada.

Esta filosofía de diseño simple, según la cual cada paso de una operación compleja se especifica explícitamente mediante una instrucción de máquina, y todas las instrucciones deben completarse en el mismo tiempo constante, más tarde se conocería como RISC .

En 1975, el proyecto de conmutador telefónico se canceló sin un prototipo. Sin embargo, a partir de las estimaciones de las simulaciones producidas en el primer año del proyecto, parecía que el procesador que se estaba diseñando para este proyecto podría ser un procesador de uso general muy prometedor, por lo que el trabajo continuó en el edificio # 801 del Centro de Investigación Thomas J. Watson , en el proyecto 801.

Proyecto Cheetah de 1982

Durante dos años en el Watson Research Center, se exploraron los límites superescalares del diseño 801, como la viabilidad de implementar el diseño utilizando múltiples unidades funcionales para mejorar el rendimiento, similar a lo que se había hecho en IBM System / 360 Model 91 y el CDC 6600 (aunque el Modelo 91 se había basado en un diseño CISC), para determinar si una máquina RISC podría mantener múltiples instrucciones por ciclo, o qué cambios de diseño deben realizarse en el diseño 801 para permitir unidades de ejecución múltiple .

Para aumentar el rendimiento, Cheetah tenía unidades de ejecución de rama, coma fija y coma flotante separadas. Se realizaron muchos cambios en el diseño del 801 para permitir unidades de ejecución múltiple. Se planeó originalmente que Cheetah se fabricara utilizando tecnología de lógica bipolar acoplada por emisor (ECL), pero en 1984 la tecnología complementaria de semiconductores de óxido de metal ( CMOS ) permitía un aumento en el nivel de integración de circuitos al tiempo que mejoraba el rendimiento de la lógica del transistor.

El proyecto America

En 1985, se inició la investigación sobre una arquitectura RISC de segunda generación en el Centro de Investigación IBM Thomas J. Watson, produciendo la "arquitectura AMERICA"; en 1986, IBM Austin comenzó a desarrollar la serie RS / 6000 , basada en esa arquitectura.

ENERGÍA

En febrero de 1990, las primeras computadoras de IBM que incorporaron el conjunto de instrucciones POWER se denominaron "RISC System / 6000" o RS / 6000 . Estas computadoras RS / 6000 se dividieron en dos clases, estaciones de trabajo y servidores , y por lo tanto se introdujeron como POWERstation y POWERserver. La CPU RS / 6000 tenía 2 configuraciones, llamadas "RIOS-1" y "RIOS.9" (o más comúnmente CPU " POWER1 "). Una configuración RIOS-1 tenía un total de 10 chips discretos: un chip de caché de instrucciones, un chip de punto fijo, un chip de punto flotante, 4 chips de caché de datos, un chip de control de almacenamiento, chips de entrada / salida y un chip de reloj. La configuración RIOS.9 de menor costo tenía 8 chips discretos: un chip de caché de instrucciones, un chip de punto fijo, un chip de punto flotante, 2 chips de caché de datos, un chip de control de almacenamiento, un chip de entrada / salida y un chip de reloj.

Se desarrolló una implementación de un solo chip de RIOS, RSC (para " RISC Single Chip "), para RS / 6000 de gama baja; las primeras máquinas que utilizaron RSC se lanzaron en 1992.

POTENCIA2

IBM inició el esfuerzo del procesador POWER2 como sucesor del POWER1 dos años antes de la creación de la alianza Apple / IBM / Motorola de 1991 en Austin, Texas. A pesar de verse afectado por la desviación de recursos para impulsar el esfuerzo de Apple / IBM / Motorola, el POWER2 tomó cinco años desde el inicio hasta el envío del sistema. Al agregar una segunda unidad de punto fijo, una segunda unidad de punto flotante y otras mejoras de rendimiento al diseño, el POWER2 tuvo un rendimiento de liderazgo cuando se anunció en noviembre de 1993.

También se agregaron nuevas instrucciones al conjunto de instrucciones:

  • Instrucciones de almacenamiento de cuatro palabras. La instrucción de carga de cuatro palabras mueve dos valores de precisión doble adyacentes a dos registros de coma flotante adyacentes.
  • Instrucción de raíz cuadrada de hardware.
  • Instrucciones de conversión de punto flotante a entero.

Para admitir las líneas de productos RS / 6000 y RS / 6000 SP2 en 1996, IBM hizo que su propio equipo de diseño implementara una versión de un solo chip de POWER2, ​​el P2SC ("POWER2 Super Chip"), fuera de la alianza Apple / IBM / Motorola en El proceso CMOS-6S más denso y avanzado de IBM. P2SC combinó todo el caché de instrucciones POWER2, ​​el punto fijo, el punto flotante, el control de almacenamiento y los chips de caché de datos separados en un dado enorme. En el momento de su introducción, P2SC era el procesador de recuento de transistores más grande y más alto de la industria. A pesar del desafío de su tamaño, complejidad y proceso CMOS avanzado, se pudo enviar la primera versión de cinta de salida del procesador, y tenía un rendimiento de coma flotante líder en el momento en que se anunció. P2SC fue el procesador utilizado en la supercomputadora de ajedrez IBM Deep Blue de 1997 que venció al gran maestro de ajedrez Garry Kasparov . Con sus sofisticadas unidades de coma flotante MAF gemelas y sus enormes interfaces de memoria de baja latencia y ancho, P2SC estaba dirigido principalmente a aplicaciones científicas y de ingeniería. P2SC fue eventualmente sucedido por POWER3, que incluía 64 bits, capacidad SMP y una transición completa a PowerPC además de las sofisticadas unidades de coma flotante MAF gemelas de P2SC.

La arquitectura

Historia de la arquitectura POWER

El diseño POWER desciende directamente de la CPU del 801 , ampliamente considerado como el primer diseño de procesador RISC verdadero. El 801 se utilizó en varias aplicaciones dentro del hardware de IBM.

Casi al mismo tiempo que se lanzaba el PC / RT, IBM inició el Proyecto América , para diseñar la CPU más potente del mercado. Estaban interesados ​​principalmente en solucionar dos problemas en el diseño del 801:

  • El 801 requería que todas las instrucciones se completaran en un ciclo de reloj , lo que excluía las instrucciones de punto flotante .
  • Aunque el decodificador se canalizó como un efecto secundario de estas operaciones de ciclo único, no utilizaron efectos superescalares .

El punto flotante se convirtió en un enfoque para el Proyecto América, e IBM pudo usar nuevos algoritmos desarrollados a principios de la década de 1980 que podían admitir multiplicaciones y divisiones de doble precisión de 64 bits en un solo ciclo. La parte FPU del diseño estaba separada del decodificador de instrucciones y las partes enteras, lo que permite que el decodificador envíe instrucciones a las unidades de ejecución FPU y ALU (entero) al mismo tiempo. IBM complementó esto con un decodificador de instrucciones complejo que podría buscar una instrucción, decodificar otra y enviar una a la ALU y la FPU al mismo tiempo, lo que resultó en uno de los primeros diseños de CPU superescalares en uso.

El sistema utiliza 32 de 32 bits enteros registros y otros 32 registros de coma flotante de 64 bits, cada uno en su propia unidad. La unidad de sucursal también incluía varios registros "privados" para su propio uso, incluido el contador del programa .

Otra característica interesante de la arquitectura es un sistema de direcciones virtuales que mapea todas las direcciones en un espacio de 52 bits. De esta manera, las aplicaciones pueden compartir memoria en un espacio "plano" de 32 bits, y todos los programas pueden tener diferentes bloques de 32 bits cada uno.

El Apéndice E del Libro I: Arquitectura de conjunto de instrucciones de usuario de PowerPC del Libro de arquitectura de PowerPC, Versión 2.02 describe las diferencias entre las arquitecturas de conjuntos de instrucciones POWER y POWER2 y la versión de la arquitectura de conjunto de instrucciones de PowerPC implementada por POWER5.

Ver también

Referencias

Notas

Otras lecturas

  • Weiss, Shlomo; Smith, James Edward (1994). POWER y PowerPC . Morgan Kaufmann. ISBN 978-1558602793. - Partes relevantes: Capítulo 1 (la arquitectura POWER), Capítulo 2 (cómo se debe implementar la arquitectura), Capítulo 6 (las adiciones introducidas por la arquitectura POWER2), Apéndices A y C (describe todas las instrucciones POWER), Apéndice F (describe las diferencias entre las arquitecturas POWER y PowerPC)
  • Dewar, Robert BK; Smosna, Matthew (1990). Microprocesadores: la visión de un programador . McGraw-Hill. - El Capítulo 12 describe la arquitectura POWER (denominada RIOS, su nombre anterior) y sus orígenes.

enlaces externos