ARM9 es un grupo de núcleos de procesadores RISC ARM de 32-bits con licencia de ARM Holdings para uso en microcontroladores.[1]​ La familia de núcleos ARM9 consta de ARM9TDMI, ARM940T, ARM9E-S, ARM966E-S, ARM920T, ARM922T, ARM946E-S, ARM9EJ-S, ARM926EJ-S, ARM968E-S, ARM996HS. Dado que los núcleos ARM9 se lanzaron entre 1998 y 2006, ya no se recomiendan para nuevos diseños de circuitos integrados. Ahora se prefieren los núcleos ARM Cortex-A, ARM Cortex-M, ARM Cortex-R.[1]

Contenido editar

Con esta generación de diseño, ARM pasó de una arquitectura von Neumann (arquitectura Princeton) a una arquitectura Harvard (modificada; es decir, caché dividida) con buses de instrucción y datos (y cachés) separados, aumentando significativamente su velocidad potencial.[2]​ La mayoría de los chips de silicio que integran estos núcleos los empaquetan como chips de arquitectura Harvard modificados y combinan los dos buses de direcciones en el otro lado de las cachés CPU y las memorias estrechamente acopladas.

Hay dos subfamilias que implementan diferentes versiones de arquitectura ARM.

Diferencias con los núcleos ARM7 editar

Las mejoras claves sobre los núcleos ARM7, habilitadas al gastar más transistores, incluyen:[3]

  • Disminución de la producción de calor y menor riesgo de sobrecalentamiento.
  • Mejora de frecuencia de reloj. Cambiar de una tubería de tres etapas a una de cinco etapas permite que la velocidad del reloj se duplique aproximadamente en el mismo proceso de fabricación del silicio.
  • Mejora en el conteo de ciclos. Se midió que muchos archivos binarios ARM7 no modificados tardaron aproximadamente un 30 % menos en ejecutarse en núcleos ARM9. Las mejoras clave incluyen:
    • Carga rápida y almacenamiento; muchas instrucciones ahora solo tardan un solo ciclo. Esto es ayudado tanto por la arquitectura modificada de Harvard (reduciendo la contención de bus y caché) como por las nuevas etapas de canalización.
    • Exponer los enclavamientos de la tubería, lo que permite optimizaciones del compilador para reducir el bloqueo entre etapas.

Además, algunos núcleos ARM9 incorporan instrucciones "DSP mejorado", como una acumulación múltiple, para admitir implementaciones más eficientes de algoritmos de procesamiento de señales digitales.

El cambio de una arquitectura von Neumann implicaba el uso de una memoria caché no unificada, de modo que las recuperaciones de instrucciones no expulsen datos (y viceversa). Los núcleos ARM9 tienen señales de bus de datos y direcciones separadas que los diseñadores de chips usan de varias maneras. En la mayoría de los casos, conectan a la menor parte del espacio de direcciones en el espacio de direcciones en el estilo von Neumann (utilizado tanto para instrucciones como para datos) a una interconexión AHB que se conecta a una interfaz DRAM y una Interfaz de Bus Externo Bus Interface que se usa con memoria flash NOR flash. Tales híbridos ya no son procesadores de arquitectura pura de Harvard.

Licencia ARM editar

ARM Holdings no fabrica ni vende dispositivos de CPU basados en sus propios diseños, sino que licencia la arquitectura del procesador a las partes interesadas. ARM ofrece una variedad de términos de licencia, que varían en costo y entregas. Para todo los licenciatarios, ARM proporciona una descripción del hardware integrable del núcleo ARM, así como un conjunto completo de herramientas de desarrollo de software y derecho a vender silicio fabricado que contiene la CPU ARM.

Personalización de silicio editar

Los integrantes de dispositivos integrados (IDM) reciben la IP del procesador ARM como RTL sintetizable (escrito en Verilog). De esta forma, tienen la capacidad de realizar optimizaciones y extensiones a nivel arquitectónico. Esto permite al fabricante lograr objetivos de diseño personalizados, como mayor velocidad de reloj, muy bajo consumo de energía, extensiones del conjunto de instrucciones, optimizaciones de tamaño, soporte de depuración, etc. Para determinar qué componentes se han incluido en un chip de CPU ARM, en particular, hay que consultar la hoja de datos del fabricante y la documentación relacionada.

Núcleos editar

Año Núcleos ARM9
1998 ARM9TDMI
1998 ARM940T
1999 ARM9E-S
1999 ARM966E-S
2000 ARM920T
2000 ARM922T
2000 ARM946E-S
2001 ARM9EJ-S
2001 ARM926EJ-S
2004 ARM968E-S
2006 ARM996HS

La familia de procesador multinucleo ARM MPCore admite software escrito utilizado los paradigmas de programación multiproceso asimétrico (AMP) o simétrico (SMP). Para el desarrollo de AMP, cada unidad de central de procesamiento dentro de MPCore puede verse como un procesador independiente y, como tal, puede seguir las estrategias tradicionales de desarrollo de un solo procesador.[4]

ARM9TDMI editar

ARM9TDMI es un sucesor del popular núcleo ARM7TDMI, y también se basa en la arquitectura ARMv4T. Los núcleos basados en el admiten conjuntos de instrucciones de ARM de 32-bits y Thumb de 16-bit e incluyen:

  • ARM920T con 16 KB cada uno de caché I/D y una MMU
  • ARM922T con 8 KB cada uno de caché I/D y una MMU.
  • ARM940T con caché y una Unidad de Protección de Memoria (MPU)

ARM9E-S and ARM9EJ-S editar

ARM9E, y su hermano ARM9EJ, implementan la tubería básica ARM9TDMI, pero agregan soporte para la arquitectura ARMv5TE, que incluye algunas extensiones del conjunto de instrucciones DSP-es que. Además, el ancho de la unidad multiplicadora se ha duplicado, reduciendo a la mitad el tiempo requerido para la mayoría de las operaciones de multiplicación. Admiten conjuntos de instrucciones de 32-bits, 16-bits y, a veces, 8-bits.

Chips editar

 
Nintendo DSi tiene un chip con un núcleo ARM9 y y otro ARM7
 
El brick de Lego Mindstorms EV3 tiene un ARM9 TI Sitara AM1x
ARM920T
ARM926EJ-S
ARM966E-S
Núcleo ARM9 sin referencia

Documentación editar

La cantidad de documentación para todos los chip ARM es desalentadora, especialmente para los recién llegados. La documentación para microcontroladores de las últimas décadas se incluiría fácilmente en un solo documento, pero a medida que los chips han evolucionado, la documentación ha crecido. La documentación total es especialmente difícil para comprender para los chips ARM, ya que consta de documentos de fabricante de IC y documentos del proveedor principal de CPU (ARM Holdings).

Un árbol de documentación de arriba hacia abajo tipo es: diapositiva de marketing de alto nivel, hoja de datos para el chip físico exacto, un manual de referencia detallado que describe periféricos comunes y otros aspectos de los chips físicos dentro de la misma serie, manual de referencia para el procesador central ARM exacto dentro del chip, manual de referencia para la arquitectura ARM del núcleo que incluye una descripción detallada de todos los conjuntos de instrucciones.

Árbol de documentación (de arriba a abajo)
  1. Diapositivas de marketing del fabricante de IC.
  2. Hojas de datos del fabricante de IC.
  3. Manuales IC de referencia del fabricante.
  4. Manuales de referencia del núcleo ARM.
  5. Manuales de referencia de arquitectura ARM.

El fabricante de IC tiene documentos adicionales, que incluyen: manuales de usuario de la placa de evaluación, notas de aplicación, introducción al software de desarrollo, documentos de la biblioteca de software, erratas y más.

Véase también editar

Referencias editar

Enlaces externos editar

Documentos oficiales ARM9
Tarjetas de referencia rápida