MIPS vs ARM
Można zidentyfikować szereg różnic między MIPS i ARM, chociaż oba należą do tej samej rodziny zestawów instrukcji. Z tego względu MIPS i ARM to dwie architektury zestawu instrukcji (ISA), które są dostępne w świecie mikroprocesorów. Zarówno ARM, jak i MIPS są oparte na zredukowanym zestawie instrukcji (RISC) i są typu rejestr-rejestr. Oba zestawy instrukcji mają ustalony rozmiar instrukcji 32-bitowy / 64-bitowy (przestrzeń adresowa) i oba zestawy instrukcji mogą być skonfigurowane zarówno jako big endianness, jak i little endianness. Obie architektury obsługują kompatybilność wsteczną. Architektury zarówno ARM, jak i MIPS są używane w procesorach smartfonów i tabletów, takich jak iPhone'y, tablety z systemem Android i Windows RT, ale nie w komputerach głównego nurtu, takich jak laptopy i serwery.
Co to jest ARM?
Głównym projektantem ARM ISA jest ARM Holdings. Architektura ARM została wprowadzona w 1985 roku i zaprojektowana w oparciu o RISC. Ten ISA używa kodów warunkowych w odgałęzieniach. Istnieje kilka architektur ARM, takich jak architektury 64/32 bitowe, architektury 32-bitowe (cortex) i architektury 32-bitowe (starsze). ARM jest najczęściej używaną architekturą zestawu instrukcji na świecie. Zestaw instrukcji uzbrojenia można podzielić na sześć szerokich klas instrukcji, takich jak instrukcje rozgałęzienia, instrukcje przetwarzania danych, instrukcje ładowania i przechowywania, instrukcje koprocesora i instrukcje generujące wyjątek. Różne typy instrukcji ARM można zidentyfikować za pomocą kodu operacji i flag warunkowych. Istnieje 16 rejestrów ogólnego przeznaczenia o nazwach R0 do R15 w ARM ISA, a każdy z nich ma rozmiar 32-bitowy. Rejestr R13 nazywany jest wskaźnikiem stosu (SP),R14 jest nazywany rejestrem łącza (LR), a R15 nazywa się licznikiem programów (PC). ARM ISA obsługuje wiele operacji arytmetycznych, takich jak dodawanie, odejmowanie i mnożenie. Rdzenie ARM mają 32-bitową magistralę adresową, która zapewnia płaską liniową przestrzeń adresową 4 GB. Pamięć jest adresowana w bajtach i może być dostępna jako podwójne słowa (8 bajtów), słowa (4 bajty) lub pół słowa (2 bajty).
Architektury ARM są używane w smartfonach, tabletach, urządzeniach PDA i innych urządzeniach mobilnych. Układy ARM są również używane w Raspberry Pi, BeagleBoard, PandaBoard i innych komputerach jednopłytkowych ze względu na ich niewielkie zużycie energii, taniość i mniejszy kształt.
Co to jest MIPS?
MIPS został zaprojektowany i wprowadzony przez MIPS Technologies w 1981 roku. Ten ISA jest również oparty na architekturze zestawu instrukcji RISC i ma stały system kodowania. Rejestry warunków są używane do rozgałęziania, a MDMX, MIPS-3D są używane jako rozszerzenia. Istnieją trzy typy instrukcji MIPS i są to R, I i J. Każda instrukcja zaczyna się od 6-bitowego kodu operacji. W instrukcjach typu R są trzy rejestry, pole montowania przesuwnego i pole funkcyjne. W instrukcjach typu I są dwa rejestry i 16-bitowa wartość natychmiastowa, podczas gdy instrukcje typu J podążają za kodem operacyjnym z 26-bitowym celem skoku. MIPS posiada 32 rejestry liczb całkowitych do wykonywania operacji arytmetycznych. Rejestr $ 0 zawiera 0, a rejestr $ 1 jest zwykle zarezerwowany dla asemblera.
Architektura MIP jest wykorzystywana do produkcji smartfonów, komputerów kolacyjnych, systemów wbudowanych, takich jak routery, bramki domowe i konsole wideo, takie jak Sony PlayStations.
Jaka jest różnica między MIPS a ARM?
• MIPS i ARM to dwie różne architektury zestawu instrukcji w rodzinie zestawu instrukcji RISC.
• Chociaż oba zestawy instrukcji mają stały i ten sam rozmiar instrukcji, ARM ma tylko 16 rejestrów, podczas gdy MIPS ma 32 rejestry.
• ARM ma wysoką przepustowość i dużą wydajność niż MIPS, ponieważ procesory ARM obsługują 64-bitowe magistrale danych między rdzeniem a pamięcią podręczną.
• Aby umożliwić wydajne przełączanie kontekstu, architektura MIPS obsługuje implementację wielu banków rejestrów. ARM zapewnia tylko rejestry ogólnego przeznaczenia dla operacji arytmetycznych i wszystkich innych funkcji, ale MIPS zapewnia dwa oddzielne rejestry do przechowywania wyników operacji mnożenia.
• MIPS nie ma równoważnej instrukcji do instrukcji ARM MOV.
• Instrukcja MIPS ADD normalnie generuje wyjątek przy przepełnieniu, więc jest rzadko używana niż w ARM.
• Wszystkie instrukcje przetwarzania danych ARM ustawiają domyślnie kody warunków ALU, ale MIPS zapewnia SLT do porównania.
Streszczenie:
MIPS vs ARM
W świecie mikroprocesorów MIPS i ARM wykonują świetną usługę w imieniu swoich architektur zestawów instrukcji. MIPS jest wdrażany głównie w systemach wbudowanych. Ale obecnie ARM stał się znacznie bardziej popularny w branży niż MIPS.
Zdjęcia dzięki uprzejmości:
- Procesor ARM w drukarce Hewlett-Packard PSC-1315 firmy Socram8888 (CC BY 2.0)
- Widok od spodu opakowania R4700 firmy Dyl (CC BY-SA 3.0)