Unterschied zwischen MIPS und ARM

MIPS gegen ARM
 

Es gibt eine Reihe von Unterschieden zwischen MIPS und ARM, obwohl beide in derselben Familie von Befehlssätzen liegen. Bei MIPS und ARM handelt es sich um zwei Befehlssatzarchitekturen (ISA), die in der Welt der Mikroprozessoren verfügbar sind. Sowohl ARM als auch MIPS basieren auf Reduced Instruction Set Computing (RISC) und sind im Registerregistertyp. Beide Befehlssätze haben eine feste 32-Bit / 64-Bit-Befehlsgröße (Adressraum), und beide Befehlssätze können sowohl auf große als auch auf geringe Endianse konfiguriert werden. Beide Architekturen unterstützen die Rückwärtskompatibilität. Die Architekturen von ARM und MIPS werden in Prozessoren von Smartphones und Tablet-Computern wie iPhones, Android und Windows RT-Tablets verwendet, nicht jedoch in Mainstream-Computern wie Laptops und Servern.

Was ist ARM??

Der Hauptdesigner von ARM ISA ist ARM Holdings. Die ARM-Architektur wurde 1985 eingeführt und basiert auf RISC. Diese ISA verwendet bedingte Codes beim Verzweigen. Es gibt verschiedene ARM-Architekturen wie 64- / 32-Bit-Architekturen, 32-Bit-Architekturen (Cortex) und 32-Bit-Architekturen (Legacy). ARM ist die weltweit am häufigsten verwendete Befehlssatzarchitektur. Der Armbefehlssatz kann in sechs breite Klassen von Befehlen unterteilt werden, wie Verzweigungsbefehle, Datenverarbeitungsanweisungen, Lade- und Speicherbefehle, Coprozessorbefehle und Anweisungen zur Erzeugung von Ausnahmen. Verschiedene Arten von ARM-Befehlen können anhand des Opcodes und der Bedingungsflags identifiziert werden. Es gibt 16 Universalregister mit der Bezeichnung R0 bis R15 in der ARM-ISA und jedes hat eine Größe von 32 Bits. Das Register R13 wird als Stack Pointer (SP) bezeichnet, R14 als Link Register (LR) und R15 als Program Counter (PC). ARM ISA unterstützt viele arithmetische Operationen wie Addieren, Subtrahieren und Multiplizieren. ARM-Kerne verfügen über einen 32-Bit-Adressbus, der einen flachen linearen 4 GB-Adressraum bietet. Der Speicher wird in Bytes adressiert und kann als Doppelwort (8 Byte), Wort (4 Byte) oder Halbwort (2 Byte) angesprochen werden..

ARM-Architekturen werden in Smartphones, Tablet-Computern, PDAs und anderen mobilen Geräten verwendet. ARM-Chips werden aufgrund ihres geringen Energieverbrauchs, ihres geringen Preises und ihrer geringeren Form auch in Raspberry Pi, BeagleBoard, PandaBoard und anderen Einplatinencomputern verwendet.

Was ist MIPS??

MIPS wurde 1981 von MIPS Technologies entwickelt und eingeführt. Diese ISA basiert ebenfalls auf der RISC-Befehlssatzarchitektur und verfügt über ein festes Kodierungssystem. Bedingungsregister werden zum Verzweigen verwendet und MDMX, MIPS-3D als Erweiterungen. Es gibt drei Arten von MIPS-Befehlen, und zwar R, I und J. Jeder Befehl beginnt mit einem 6-Bit-Opcode. In Anweisungen vom R-Typ gibt es drei Register, ein Shift-Mount-Feld und ein Funktionsfeld. In I-Typ-Befehlen gibt es zwei Register und einen 16-Bit-Direktwert, während J-Typ-Befehle dem Opcode mit einem 26-Bit-Sprungziel folgen. MIPS verfügt über 32 Ganzzahlregister, um arithmetische Operationen auszuführen. Register $ 0 enthält 0 und Register $ 1 ist normalerweise für den Assembler reserviert.

Die MIPs-Architektur wird bei der Herstellung von Smartphones, Supper-Computern, eingebetteten Systemen wie Routern, Gateways für Privatanwender und Videokonsolen wie Sony PlayStations verwendet.

Was ist der Unterschied zwischen MIPS und ARM??

• MIPS und ARM sind zwei verschiedene Befehlssatzarchitekturen in der Familie der RISC-Befehlssätze.

• Obwohl beide Befehlssätze eine feste und dieselbe Befehlsgröße haben, hat ARM nur 16 Register, während MIPS 32 Register hat.

• ARM bietet einen hohen Durchsatz und eine höhere Effizienz als MIPS, da ARM-Prozessoren 64-Bit-Datenbusse zwischen dem Kern und den Caches unterstützen.

• Um einen effizienten Kontextwechsel zu ermöglichen, unterstützt die MIPS-Architektur die Implementierung mehrerer Registerbänke. ARM stellt nur Allzweckregister für arithmetische Operationen und alle anderen Funktionen zur Verfügung, MIPS stellt jedoch zwei separate Register zur Verfügung, um die Ergebnisse der Multiplikationsoperation zu speichern.

• MIPS hat keine äquivalente Anweisung zur ARM MOV-Anweisung.

• Die Anweisung MIPS ADD generiert normalerweise eine Ausnahme beim Überlauf, daher wird sie selten als in ARM verwendet.

• Alle ARM-Datenverarbeitungsanweisungen setzen standardmäßig die ALU-Bedingungscodes, MIPS stellt jedoch die SLT zum Vergleich bereit.

Zusammenfassung:

MIPS gegen ARM

In der Welt der Mikroprozessoren leisten MIPS und ARM einen hervorragenden Service für ihre Befehlssatzarchitekturen. MIPSis wird hauptsächlich in eingebetteten Systemen implementiert. Derzeit ist ARM in der Industrie jedoch weitaus beliebter als MIPS.

Bilder mit freundlicher Genehmigung: 

  1. Ein ARM-Prozessor in einem Hewlett-Packard PSC-1315-Drucker durch Socram8888 (CC BY 2.0)
  2. Ansicht von unten des Pakets von R4700 durch Dyl (CC BY-SA 3.0)