Czy ARM jest mikroprocesorem lub mikrokontrolerem?

18

Trudno mi było ustalić, czy ARM jest mikroprocesorem, czy mikrokontrolerem, czy czymś innym?

Abhijit K Rao
źródło

Odpowiedzi:

41

Ani.

ARM to architektura procesora (dokładniej, rodzina powiązanych architektur procesora). Jeśli umieścisz ten procesor (lub jakikolwiek inny) sam procesor w układzie, masz mikroprocesor (tak jak w starych maszynach Acorn). Jeśli połączysz go z ROMem (Flash), pamięcią RAM i urządzeniami peryferyjnymi na jednym układzie, masz mikrokontroler (przykład: LPC2148).

Po połączeniu procesora z pamięcią ROM i RAM może się trochę zabrudzić, ale także podać dane, adres i linie sterujące na pinach, aby można było dodać pamięć zewnętrzną. Taki układ może być używany albo w trybie mikrokontrolera, albo w trybie mikroprocesora. (przykład: LPC2478)

Obecnie mniejsze systemy (do 0,5 Mb Flash, kilka 10 Kb RAM) są dostępne jako mikrokontroler. Większe systemy (zwykle z systemem Linux lub czymś podobnym) zazwyczaj składają się z mikroprocesora z zewnętrzną pamięcią RAM. (ROM może być także zewnętrzny lub mały boot-rom na chipie + karta SD lub podobna). Przykłady: Raspberry Pi i inne małe płyty Linux, ESP8266, lub otwórz dowolny telefon komórkowy, przystawkę STB, modem / router itp.

Zabawna uwaga: mikrokontrolery zwykle mają mało pamięci RAM, stąd bieg z Flasha, który często ogranicza ich szybkość. Mikroprocesory często mają dużo pamięci RAM, mają wolniejszą pamięć flash, z której kod i dane są ładowane do pamięci RAM w celu wykonania.

Obecnie (2015) termin ARM jest coraz bardziej zagmatwany, ponieważ może odnosić się do firmy, która wykonuje projekty ARM lub do jednego z nich. (Sama firma ARM nie produkuje układów, licencjonuje swoje projekty producentom układów.) Ostatnia „rodzina” projektów Cortex jest wystarczająco różna od starych projektów ARM, których wolę nie nazywać „ARM”.

Wouter van Ooijen
źródło
Sugerowałbym, że użytecznym podziałem między mikroprocesorami i mikrokontrolerami jest stwierdzenie, że te ostatnie mają wystarczająco dużo rzeczy na chipie, aby działały przynajmniej częściowo bez użycia pamięci RAM lub ROM. Jedynymi mrocznymi obudowami byłyby urządzenia, które zawierają miejsce na pamięć ROM maski, ale często są sprzedawane bez przydatnego kodu. Uznałbym takie urządzenia za mikrokontrolery, gdyby ich zachowanie podczas użytkowania było zasadniczo nie do odróżnienia od zachowania tego, którego maska ​​ROM została „zaprogramowana”, ale zewnętrznie wyłączona.
supercat
@ supercat: Mój podział nie byłby zgodny z „w jaki sposób można go używać”, ale raczej „w jaki sposób jest używany” (a może „jak ma być używany”). Według ciebie LPC2478 byłby mikrokontrolerem, uważam to za hybrydę.
Wouter van Ooijen
Z 98 KB wbudowanej pamięci RAM i 512 KB wbudowanej pamięci flash z pewnością brzmi tak, jakby można go było z powodzeniem zastosować w systemach bez pamięci zewnętrznej; po krótkim spojrzeniu na arkusz danych uznałbym, że jest on w obozie „mikrokontrolerów” i nie uważałbym go za bliski kontakt.
supercat
Wiem, że nie, ale tak. Układ ten jest (lub był) regularnie używany na przykład w systemie Linux, więc myślę, że chociaż z pewnością można go wykorzystać jako mikrokontroler, nie jest (tylko) mikrokontrolerem.
Wouter van Ooijen
Może to wszystko w nazwie? Mikrokontroler to układ z procesorem zaprojektowanym i wykorzystywanym głównie do sterowania innymi komponentami / układami, choć nadal zdolny do przetwarzania danych. Mikroprocesor to układ z procesorem zaprojektowanym i wykorzystywanym głównie do przetwarzania danych, choć oczywiście musi również kontrolować inne komponenty (na przykład zewnętrzną pamięć RAM).
Pål-Kristian Engstad,
13

Technicznie ARM jest mikroprocesorem, a dokładniej architekturą mikroprocesora. Należy jednak zrozumieć, że nie reprezentuje on fizycznego mikroprocesora, ale projekt, który pozwala go zbudować.

ARM Holdings to międzynarodowa grupa półprzewodników, która nie produkuje żadnego procesora; zamiast tego projektują je, a następnie sprzedają architekturę na podstawie licencji. Projekty są wykorzystywane do budowy mikroprocesorów, a także mikrokontrolerów, ale ARM zapewnia tylko rdzeń.

Nie można też powiedzieć, że jest to mikrokontroler, ponieważ to producent pobiera rdzeń ARM i buduje wokół niego wszystkie urządzenia peryferyjne.

clabacchio
źródło
9

Ani (i oba)

ARM to firma licencjonująca rdzenie procesorów.

Rdzeń ARM może i jest wykorzystywany przez wiele firm do wytwarzania zarówno mikrokontrolerów, jak i mikroprocesorów.

Toby Jaffey
źródło
1

ARM jest rdzeniem zarówno mikroprocesora, jak i mikrokontrolera. ARM jest oparty na architekturze procesora, więc generalnie nazywamy go mikroprocesorem po umieszczeniu na chipie, jeśli ARM jest połączony z pamięcią (RAM i ROM) na jednym chipie, możemy go nazwać mikrokontrolerem, ma ograniczoną pamięć, ale jeśli chodzi o mikroprocesor RAM i ROM są połączone zewnętrznie, prędkość będzie większa.

użytkownik52027
źródło