¿ARM es un microprocesador o microcontrolador?

18

He tenido dificultades para tratar de saber si ARM es un microprocesador o microcontrolador o algo más.

Abhijit K Rao
fuente

Respuestas:

41

Ninguno.

ARM es una arquitectura de CPU (más precisa, una familia de arquitecturas de CPU relacionadas). Si coloca esa CPU (o cualquier otra) CPU en un chip por sí solo, tiene un microprocesador (como lo hacían en las máquinas Acorn antiguas). Si lo combina con ROM (Flash), RAM y periféricos en un chip, tiene un microcontrolador (ejemplo: LPC2148).

Las cosas pueden ponerse un poco confusas cuando combina la CPU con ROM y RAM, pero también proporciona los datos, la dirección y las líneas de control en los pines, por lo que se puede agregar memoria externa. Tal chip se puede usar en modo microcontrolador o en modo microprocesador. (ejemplo: LPC2478)

Hoy en día, los sistemas más pequeños (hasta 0.5Mb Flash, unos 10 Kb Kb RAM) están disponibles como microcontroladores. Los sistemas más grandes (que normalmente ejecutan Linux o algo similar) generalmente están compuestos por un microprocesador con RAM externa. (La ROM también puede ser externa, o un pequeño boot-rom en chip + una tarjeta SD o similar). Ejemplos: Raspberry Pi y otras placas pequeñas de Linux, ESP8266, o abrir cualquier teléfono móvil, decodificador, módem / enrutador, etc.

Nota divertida: los microcontroladores tienden a tener poca RAM, por lo tanto, se ejecutan desde Flash, lo que a menudo limita su velocidad. Los microprocesadores a menudo tienen mucha RAM, tienen un Flash más lento, desde el cual el código y los datos se cargan en la RAM para su ejecución.

Hoy en día (2015) el término ARM es cada vez más confuso, porque puede referirse a la empresa que hace los diseños ARM, o a uno de los diseños. (La propia empresa ARM no fabrica chips, otorga licencias de sus diseños a los fabricantes de chips). La reciente 'familia' de diseños de Cortex es lo suficientemente diferente de los antiguos diseños ARM que prefiero no llamarlo 'ARM'.

Wouter van Ooijen
fuente
Sugeriría que una división útil entre microprocesadores y microcontroladores es decir que estos últimos tienen suficiente material en el chip para ejecutarse al menos de manera útil sin ninguna RAM o ROM conectada. Los únicos casos turbios serían dispositivos que incluyen espacio para ROM de máscara, pero que con frecuencia se venden sin ningún código útil. Consideraría tales dispositivos como microcontroladores si su comportamiento en uso fuera esencialmente indistinguible del comportamiento de alguien cuya ROM de máscara estaba "programada" pero deshabilitada externamente.
supercat
@supercat: Mi división no estaría de acuerdo con 'cómo se puede usar' sino con 'cómo se usa' (o tal vez 'cómo se va a usar'). Según usted, el LPC2478 sería un microcontrolador, lo considero un híbrido.
Wouter van Ooijen
Con 98K de RAM incorporada y 512K de flash incorporado, ciertamente parece que podría emplearse de manera bastante útil en sistemas sin memoria externa; Desde un rápido vistazo a la hoja de datos, consideraría que está en el campo del "microcontrolador", y no lo consideraría una llamada cercana.
supercat
Sé que no, pero yo sí. El chip se usa (o se usó) regularmente para ejecutar, por ejemplo, Linux, por lo que creo que aunque ciertamente se puede usar como un microcontrolador, no es (solo) un microcontrolador.
Wouter van Ooijen
Tal vez todo está en el nombre? Un microcontrolador es un chip con una CPU diseñada y utilizada principalmente para controlar otros componentes / chips, aunque todavía es capaz de procesar datos. Un microprocesador es un chip con una CPU diseñada y utilizada principalmente para procesar datos, aunque obviamente también debe controlar otros componentes (como, por ejemplo, RAM externa).
Pål-Kristian Engstad
13

Técnicamente, ARM es un microprocesador, o, más específicamente, una arquitectura de microprocesador. Sin embargo, lo que hay que entender es que no representa un microprocesador físico , sino el diseño que permite construir uno.

ARM Holdings es un grupo multinacional de semiconductores que no fabrica ninguna CPU; en cambio, los diseñan y luego venden la arquitectura bajo licencia. Los diseños se utilizan para construir microprocesadores y microcontroladores, pero lo que ARM proporciona es solo el núcleo.

También es incorrecto decir que es un microcontrolador, porque es el fabricante el que toma el núcleo ARM y construye todos los periféricos a su alrededor.

clabacchio
fuente
9

Ninguno (y ambos)

ARM es una compañía que licencia núcleos de CPU.

El núcleo ARM puede ser utilizado por muchas empresas para fabricar microcontroladores y microprocesadores.

Toby Jaffey
fuente
1

ARM es el núcleo del microprocesador y el microcontrolador. ARM se basa en la arquitectura de la CPU, por lo que generalmente llamamos que tiene microprocesador cuando se coloca en un chip si ARM se combina con memorias (RAM y ROM) en un solo chip, podemos llamarlo tiene microcontrolador, tiene memoria limitada, pero cuando llega al microprocesador RAM y ROM están conectados externamente la velocidad será mayor.

usuario52027
fuente