ENGLISH
|
ESPAÑOL
::: Power Architecture... ¿Hay algo más que ARM? :::
 

Como sabemos las ofertas de procesadores para todos los mercados viene creciendo constantemente. Esto es bueno para nosotros desarrolladores porque nos entrega más y mejores opciones, pero a veces nos plantea el problema de no saber que elegir. Para aportar más confusión, perdón, más alternativas, presentamos en esta nota algunos procesadores con CPU Power (ex PowerPC) que vienen desde las aplicaciones high end para aportar otras alternativas muy eficientes y poco conocidas en nuestro mercado.

Un poco de historia

Las bases para la tecnología Power Architecture fueron desarrolladas originalmente por IBM que comenzó la investigación en 1977 y evolucionó en forma continua a travéz de la colaboración de distintos desarrolladores alrededor del mundo.

El nombre POWER, es un acrónimo que deriva de Performance Optimization With Enhanced RISC (Optimización de performance con Risc mejorado o aumentado).

La tecnología Power Architecture comenzó con la colaboración entre Motorola (Freescale Semiconductor), IBM y Apple. Esta sociedad de tres empresas definió una arquitectura optimizada para procesamiento de propósito general. Los procesadores Power Architecture están en el mercado desde 1990 y han sido perfeccionados en base a la experiencia sobre sistemas comerciales de IBM y  semiconductores de Motorola/Freescale.

La comunidad Power.org, fue fundada en 2005 sobre la premisa básica de que la colaboración genera la innovación más avanzada. Esta organización cambió el nombre de las CPUs de PowerPC a Power manteniendo la compatibilidad con la especificación PowerPC 1.10.

La arquitectura Power es abierta y permite elegir entre distintos proveedores. Cualquier companía puede licenciar la arquitectura Power y construír soluciones a partir de ella.

Power.org es hoy una organización de más de 40 fabricantes de semiconductores y empresas de electrónica, también la componen desarrolladores individuales, entidades educativas y organizaciones gubernamentales.

La combinación de la flexibilidad y la escalabilidad de la tecnología Power Architecture con el modelo de colaboración comunitaria de Power.org aceleran la innovación de la plataforma reduciendo los costos de desarrollo.

Como resultado de esta evolución la arquitectura Power es la más escalable del mercado permitiendo su implementación desde los más pequeños productos hasta las más grandes supercomputadoras. Lleva 19 años batiendo records de performance y es la más empleada en aplicaciones espaciales, lo que denota su confiabilidad. En 2001 se introdujeron las soluciones multi-core y de virtualización.

Como se dijo más arriba los productos basados en arquitectura Power respetan un estándar abierto que se denomina Power ISA (Power Instruction Set Architecture). Power ISA define una arquitectura de 64 bits con un adecuado subset de 32 bits que tiene muchos registros para permitir mover datos sin usar memorias externas. Power ISA es RISC que por diseño es una tecnología de bajo consumo. Los estándares ISA 2.04/2.05/2.06 soportan multi core, virtualización y hypervisor.

Un poco más sobre la CPU Power Architecture

En la gráfica debajo podemos ver la evolución de la arquitectura Power desde su creación por IBM y Motorola (Freescale) hasta el comienzo de las definiciones de Power.org

Vemos arriba que a partir de que comenzó a haber productos con esta tecnología a comienzos de los años 90, tanto IBM como Motorola hicieron su evolución por caminos diferentes. Debajo podemos ver que a partir del comienzo de la actuación del Power.org, las evoluciones convergieron en una definición única, Power ISA 2.03, a partir de 2005.

Power ISA 2.03 representa la convergencia de la funcionalidad básica especificada en los tres libros de PowerPC 1.10 con las prestaciones especiales para aplicaciones embebidas definidas por Freescale en el “Book E”, las APUs (Auxiliary Procesing Units) de Freescale y las definiciones avanzadas para servidores hechas por IBM.

Esta nueva definición de la arquitectura planteada por el Power.org está organizada en categorías y cada componente de la arquitectura pertenece a una de ellas. Una implementación de un procesador es un set de estas categorías.

Todas las implementaciones deben incluír la categoría Base. Por ejemplo; un procesador para servidores deberá incluír la categoría Base, Server y Punto Flotante. De este modo las CPU que se implementen pueden ser configuradas de acuerdo con las necesidades de cada aplicación.

Este esquema también permite mantener la compatibilidad del código a través de las distintas generaciones de productos ya que los binarios resultan compatibles.

Algunas categorías tienen una organización jerárquica que hace que no se pueda implementar una de ellas sin haberse implementado otras antes.

Una muestra de las categorías definidas por el Power ISA 2.03 se pueden ver debajo:

  • Base
  • Embedded, Server
  • Floating Point, Floating Point Record
  • Vector
  • Signal Processing Engine
    • Float Escalar Single
    • Float Escalar Double
    • Float Vector
  • 64bits Variable Lenght Encoding
  • Server y Embedded Performance Monitoring.
  • Embedded.Cache Looking, Embedded.Enhanced Debug.
  • Stream, Trace, Alternate Time Base, Move Assist, External Control.

Power ISA es una arquitectura RISC cuyas principales características son las siguientes:

  • Set de registros separados para operaciones con enteros, punto flotante o vectores para optimizar la performance.
    • 32 registros de propósitos generales para operaciones con enteros (32 o 64 bits).
    • 32 regsitros de punto flotante para operaciones con punto flotante de 64 bits.
    • 32 registros vectoriales para operaciones con vectores de 128 bits.
    • 8 registros de condiciones para control de flujo y comparaciones de 4 bits.
  • Registros especiales
    • Acumulador
    • Contador
    • Link para subrutinas
    • Base de tiempo y base de tiempo alternativa
    • Registros de estado

  • La mayor parte de las instrucciones son tríadas con 2 fuentes de operandos y un destino.

El modelo de programación genérico lo podemos ver debajo.

Esta arquitectura tiene instrucciones de longitud fija, excepto que se implemente la categoría VLE (Variable Lenght instruction) que es especial para variantes con memoria Flash embebida que requieren muy buena densidad de código, VLE trabaja con instrucciones de 16 y 32 bits y es una recodificación del set original.
Hay otras muchas características definidas por la especificación Power ISA que exeden el alcance de esta nota.

Algunos Productos

Esta tecnología es muy empleada en todo el mundo, e inclusive en productos que todos usamos a diario.
En electrónica de consumo este tipo de core está presente en todas las consolas de juego, en millones de set top boxes y en productos de DTV e IPTV.

Considerando los mercados automotríz e industrial, estos procesadores se encuentran presentes los sistemas de seguridad, motríz y de información de más de la mitad de los autos que se venden y es la tecnología líder en aplicaciones militares y espaciales.

En el mercado de computación los procesadores de arquitectura Power están presentes en los servidores mas rápidos y más resistentes del mercado, así como también en impresoras y dispositivos de almacenamiento. Y son la tecnolgía líder en supercomputadoras y han sido el motor de la primera máquina Peta-Flop del mundo.
En comunicaciones, los productos Power Architecture son la base de todas las redes del mundo.
Llevando ahora la discusión a productos concretos, la oferta de Freescale sobre esta arquitectura es muy variada y está en constante desarrollo. Siempre vimos ese desarrollo expresado en productos de gran capacidad de procesamiento y velocidad y ultimamente los estamos viendo bajar desde las alturas para integrar productos mucho más pequeños y cercanos. Hoy existen las las familias siguientes:

Procesadores de comunicaciones QorIQ y PowerQUICC

Estos productos nacieron para responder la demanda de las aplicaciones de comunicaciones tanto para backbone de redes como CPE. Tienen periféricos específicos para procesar distintos protocolos de comunicaciones. Utilizan cores e300, e500, e5500 y e6500. En orden cronológico primero aparecieron los procesadores PowerQUICC que corren hasta 133MHz, luego los PowerQUICC II que trabajan hasta 450MHz y los PowerQUICC II Pro hasta 800MHz. Por útlimo aparecieron los PowerQUICC III que corren hasta 1,5GHz. Todos los anteriores son single core. La necesidad de seguir creciendo en performance dió orígen a la familia QorIQ de soluciones multi-core. Dentro de esta familia hay productos desde 500MHz y un solo core hasta 1,5GHz y 8 cores. A mitad de 2011 se anunció la nueva familia de procesadores QorIQ con hasta 24 cores y 2,5GHz implementada en 28nm.
   
Procesadores Host
   
Estos son productos para aplicaciones de propósitos generales basadas en el core e600 de arquitectura Power que pueden trabajar desde 500MHz hasta 1,8GHz, hay implementaciones single y dual core. Son ideales para aplicaciones de redes, aeroespaciales, defensa y computación que requieran procesamiento intensivo.
   
Microcontroladores Qorivva y PX
   
Todos estos productos usan variantes del core e200. La familia Qorivva es automotríz y tiene una subfamilia dedicada a cada especialidad dentro de este mercado. Hay soluciones single y muli-core con lo que se logra gran escalabilidad y alto nivel de integración de periféricos. La familia está focalizada en la calidad y la confiabilidad. La familia PX se ha desarrollado para aplicaciones industriales complejas que requieran alta performance y confiabilidad. Existen soluciones desde los 64MHz hasta los 180MHz.


Conclusión

Respondiendo a la pregunta que plateamos en el título de la nota; si hay algo más allá de ARM. Ese algo ha sido lejano, pero con la aparición de los productos Qorivva y PX Freescale baja los Power al uso general que no requiere de tecnologías muy especiales de montaje ni de soluciones especiales de software. La familia Qorivva se plantea como una evolución de los productos de 16 bits HCS12 / HCS12X, muy populares para uso automotriz. La familia PX se plantea como una alternativa industrial a las famlias ColdFire y como un competidor de los nuevos Kinetis. Vamos a seguir presentando este tipo de productos ya que son una opción interesante y están construidos sobre una tecnología distinta y muy eficiente.
Si desea acceder a más información puede utilizar los links que están a continuación.

www.power.org
www.freescale.com/power

También puede solicitar información a:

Electrocomponentes S.A.
Casa Central:
Solís 225 / 229 – Ciudad Autónoma de Buenos Aires – CP 1078AAE – Argentina.
Tel.: (5411) 4375-3366 / 4372-1864.
Fax: (5411) 4325-8076 / 4372-6214.
E-mail: ingenieria@electrocomponentes.com
www.electrocomponentes.com

 
Solís 225 / 227 / 229 (1079) - Buenos Aires, Argentina. - Tel: (54 11) 4375-3366 Fax: (54 11) 4325-8076
© Electrocomponentes S.A. - Todos los derechos reservados