El PowerPC e500 es un núcleo de microprocesador de 32 bits de Freescale Semiconductor . Es compatible con la especificación PowerPC Book E anterior, así como con Power ISA v.2.03 . Cuenta con una arquitectura de doble emisión, una arquitectura de siete etapas con unidades de punto flotante (a partir de la versión 2), cachés L1 de datos e instrucciones de 32/32 KiB y caché frontal L2 de 256, 512 o 1024 KiB. Su velocidad oscila entre 533 MHz y 1,5 GHz, y está diseñado para ser altamente configurable y satisfacer las necesidades específicas de las aplicaciones integradas , con características como la interfaz de operación multinúcleo para unidades de procesamiento de aplicaciones auxiliares (APU).
El chip e500 impulsa los procesadores de red PowerQUICC III de alto rendimiento, que integran el sistema en chip (SoC) , y todos ellos comparten la nomenclatura MPC85xx . El nuevo QorIQ de Freescale representa la evolución de PowerQUICC III y también se basará en núcleos e500.
Versiones
Existen tres versiones del núcleo e500, a saber, el e500v1 original , el e500v2 y el e500mc .
Una evolución de 64 bits del núcleo e500mc se denomina núcleo e5500 y se presentó en 2010, y un núcleo e6500 posterior añadió capacidades de multihilo en 2012.
e500v1
- Compatibilidad con las extensiones SPE (Signal Processing Engine). El registro de enteros se amplía a 64 bits. Las instrucciones que no son SPE solo acceden y escriben en los 32 bits inferiores. Sin embargo, las instrucciones SIMD SPE leen y escriben en los 64 bits completos. Estas extensiones se solapan con las instrucciones de cadena y AltiVec .
- Compatibilidad con SPESFP (Single Precision Embedded Scalar Floating Point). Esta es una nueva unidad de punto flotante distinta de la FPU clásica, la cual no está presente en los procesadores e500v1 y e500v2. SPESFP utiliza el banco de registros de enteros. No cumple completamente con el estándar IEEE 754.
e500v2
Las principales mejoras del e500v2 con respecto al e500v1 incluyen:
- Se incrementa el espacio de direcciones físicas de 32 bits (4 GiB) a 36 bits (64 GiB). Este cambio implica que los dispositivos basados en e500v2 suelen utilizar un paquete de soporte de placa (BSP) más avanzado que los dispositivos basados en e500v1, ya que diversas unidades periféricas se han trasladado a direcciones físicas superiores a 4 GiB.
- Adición de tamaños de página variables de 1 GiB y 4 GiB.
- Se ha añadido compatibilidad con DPESFP (punto flotante escalar integrado de doble precisión). Basándose en SPESFP, estas instrucciones acceden a ambas mitades del registro entero de 64 bits.
- Duplicación del tamaño y la asociatividad de la matriz de páginas 4K de segundo nivel de la MMU (de 256 entradas de 2 vías a 512 entradas de 4 vías).
- Aumentar de 3 a 5 fallos máximos de caché de datos pendientes.
- Adición de la base de tiempo alternativa para las marcas de tiempo con granularidad de ciclo.
e500mc
Freescale presentó el e500mc en la familia de chips QorIQ en junio de 2008. El e500mc tiene las siguientes características:
- Power ISA v.2.06 , que incluye funcionalidades de hipervisor y virtualización para plataformas integradas.
- Se ha restablecido la unidad de coma flotante "clásica".
- Se eliminan las señales SPE, SPESFP y DPESFP, y el archivo de registros enteros vuelve a ser de 32 bits.
- Admite desde dos hasta más de 32 núcleos (no necesariamente del mismo tipo) en un solo chip.
- Admite la arquitectura de comunicaciones CoreNet para la conexión de núcleos y aceleradores de ruta de datos.
- Los núcleos e500mc tienen cachés L2 privadas, pero normalmente comparten otras funcionalidades como cachés L3, controladores de memoria, núcleos de aceleración específicos para aplicaciones, E/S, etc.
Aplicaciones
PowerQUICC
Todos los dispositivos PowerQUICC 85xx se basan en núcleos e500v1 o e500v2, la mayoría de ellos en este último.
QorIQ
En junio de 2008, Freescale anunció la marca QorIQ , microprocesadores basados en la familia de núcleos e500.
Software
En el software libre y de código abierto , la familia e500/MPC85xx (excepto la e500mc, que no tiene SPE) se conoce generalmente como "PPC SPE" (powerpcspe), con la EABI conocida como "eabispe". Tanto GCC (antes de la versión 9) como LLVM [ 1 ] ofrecen soporte para compilar para esta plataforma, y QEMU proporciona emulación. Debian solía ofrecer una versión no oficial para la e500v2 llamada powerpcspe. [ 2 ]
Véase también
Referencias
- ↑ "49854 – Limpieza del manejo de opciones SPE/e500" . gcc.gnu.org .
Por suerte, LLVM ha mejorado un poco el objetivo SPE, de modo que los usuarios pueden cambiar a LLVM para algunos proyectos por el momento. [...] (Comentario final) El backend powerpcspe ha sido obsoleto en GCC 8 y eliminado durante el desarrollo de GCC 9.
- ↑ "PowerPCSPEPort - Wiki de Debian" .
- Página de PowerQUICC de Freescale
- Manual de referencia de la familia PowerPC e500 Core de Freescale
- microprocesadores PowerPC
- Microprocesadores Freescale
- microprocesadores de potencia