StrongARM

Microprocesador DEC StrongARM SA-110.

El microprocesador StrongARM es una versión más rápida del diseño del ARM. Fue fruto de la colaboración en 1995 entre Advanced RISC Machines y Digital Equipment Corporation.

DEC fabricó varios microprocesadores StrongARM basados en el núcleo del procesador RISC a 32 bits, que se utilizaban en terminales de redes. A finales del año 1997, Intel compró la tecnología StrongARM, y poco después anunciaba su intención de utilizar los procesadores de StrongARM en dispositivos personales como los entonces emergentes PDA. Fue sustituido por el Intel XScale.

Historia

El StrongARM fue una colaboración entre Digital Equipment Corporation y Advanced RISC Machines para crear una CPU más rápida basada en (pero no totalmente compatible con) la línea existente de procesadores ARM. El StrongARM se diseñó con el mercado objetivo de la gama alta de sistemas embebidos de bajo consumo, donde los usuarios necesitan más prestaciones de la que un ARM puede proporcionar y que fuera capaz de aceptar más soporte externo. Los dispositivos preferentes fueron las PDAs y los decodificadores de televisión (dispositivos que añaden funcionalidad al TV como acceso a Internet o canales digitales).

El proyecto se puso en marcha en 1995, y rápidamente lanzó su primer producto, el SA-100. Este fue incorporado inmediatamente en las nuevas versiones del Apple Newton, el Acorn Risc PC, el sistema de edición de video Eidos Optima, y otros muchos dispositivos.

Digital Semiconductor, la división de chips de DEC fue posteriormente vendida a Intel en 1997 como parte de un acuerdo legal. Intel utilizó el StrongARM para reemplazar su agonizante línea de microprocesadores RISC, los Intel i860 e Intel i960. Fue sucedido por el Intel XScale.

Descripción

La familia StrongARM eran versiones más rápidas de los microprocesadores ARM pero con algunas diferencias en el conjunto de instrucciones. Con una velocidad de reloj de 206 MHz podían realizar más de 235 MIPS (1,14 MIPS/MHz). Esto causó una limitada compatibilidad con la anterior familia de procesadores ARM, debido a sus cachés separadas para datos e instrucciones, lo que causaba fallos en el código automodificable. Estas prestaciones fueron posteriormente incluidas en algunas arquitecturas ARMv4 (principalmente el ARM/Texas Instruments ARM925). El StrongARM tiene una instrucción "invalidate cache line" para decirle a la CPU que debe releer de la memoria principal. Esta situación ocurre raramente en el software común, y los StrongARM no son los únicos procesadores que han realizado el mismo sacrificio. El Motorola 68020, por ejemplo, causó similares problemas de compatibilidad con el software diseñado para los anteriores modelos Motorola 68000 y Motorola 68010.

El StrongARM se diseñó con la memoria lenta (y por ello más barata y de menor coste de fabricación) en mente. El StrongARM tiene un set de 32 direcciones de caché asociativas que trabajan con direcciones virtuales. El alto conjunto asociable permite un mayor rendimiento que los diseños competidores, y el uso de direcciones virtuales permite a la memoria el ser simultánemaente cacheada y descacheada. Un buffer de escritura permite que la escritura a la memoria principal se realice sin la atención de la CPU, incrementando la eficacia del diseño.

El SA-100 fue el primer miembro de la familia, seguido por el SA-110 y el SA-1110.