Differenza tra MIPS e ARM

MIPS vs ARM
 

È possibile identificare una serie di differenze tra MIPS e ARM anche se entrambi si trovano nella stessa famiglia di set di istruzioni. Del resto, MIPS e ARM sono due architetture di set di istruzioni (ISA) disponibili nel mondo dei microprocessori. Entrambi, ARM e MIPS, sono basati su RISC (Instruction Set Computing) ridotto e sono in tipo register-register. Entrambi i set di istruzioni hanno dimensioni di istruzione fisse a 32 bit / 64 bit (spazio di indirizzamento) ed entrambi i set di istruzioni possono essere configurati per big endianness e little endianness. Entrambe le architetture supportano la retrocompatibilità. Le architetture di ARM e MIPS vengono utilizzate nei processori di smartphone e tablet, come iPhone, tablet Android e Windows RT, ma non nei computer dello stream principale come laptop e server.

Cos'è ARM?

Il principale progettista di ARM ISA è ARM Holdings. L'architettura ARM è stata introdotta nel 1985 e progettata sulla base di RISC. Questo ISA utilizza codici condizionali nella ramificazione. Esistono diverse architetture ARM come architetture 64/32 bit, architetture a 32 bit (corteccia) e architetture a 32 bit (legacy). ARM è l'architettura dell'insieme di istruzioni più utilizzata al mondo. Il set di istruzioni del braccio può essere suddiviso in sei ampie classi di istruzioni quali istruzioni Branch, istruzioni di elaborazione dati, istruzioni Load e store, istruzioni Coprocessor e istruzioni di generazione di eccezioni. Diversi tipi di istruzioni ARM possono essere identificati utilizzando l'opcode e i flag condizionali. Ci sono 16 registri di uso generale chiamati da R0 a R15 in ARM ISA e ognuno ha una dimensione di 32 bit. Il registro R13 si chiama Stack Pointer (SP), R14 è chiamato Link Register (LR) e R15 è chiamato Program Counter (PC). ARM ISA supporta molte operazioni aritmetiche come addizione, sottrazione e moltiplicazione. I core ARM hanno un bus indirizzo a 32 bit, che fornisce uno spazio di indirizzamento lineare da 4 GB. La memoria è indirizzata in byte e si può accedere come parole doppie (8-byte), parole (4-byte) o mezze parole (2-byte).

Le architetture ARM sono utilizzate in smartphone, tablet PDA e altri dispositivi mobili. I chip ARM sono anche usati in Raspberry Pi, BeagleBoard, PandaBoard e altri computer single-board a causa del loro piccolo consumo energetico, economicità e forma più piccola.

Cos'è MIPS?

MIPS è stato progettato e introdotto da MIPS Technologies nel 1981. Questo ISA è anche basato sull'architettura di set di istruzioni RISC e ha un sistema di codifica fisso. I registri delle condizioni sono utilizzati per la ramificazione e MDMX, i MIPS-3D sono usati come estensioni. Esistono tre tipi di istruzioni MIPS e sono R, I e J. Ogni istruzione inizia con un opcode a 6 bit. Nelle istruzioni di tipo R, ci sono tre registri, un campo di montaggio a spostamento e un campo funzione. In I digitare le istruzioni, ci sono due registri e un valore immediato a 16 bit mentre le istruzioni di tipo J seguono opcode con un target di salto a 26 bit. MIPS ha 32 registri interi per eseguire operazioni aritmetiche. Il registro $ 0 contiene 0 e il registro $ 1 è normalmente riservato per l'assemblatore.

L'architettura MIP viene utilizzata nella realizzazione di smart phone, supper computer, sistemi embedded come router, gateway residenziali e console video come Sony PlayStation.

Qual è la differenza tra MIPS e ARM?

• MIPS e ARM sono due diverse architetture di set di istruzioni nella famiglia di set di istruzioni RISC.

• Sebbene entrambi i set di istruzioni abbiano una dimensione di istruzione fissa e uguale, ARM ha solo 16 registri mentre MIPS ha 32 registri.

• ARM ha un throughput elevato e una grande efficienza rispetto a MIPS perché i processori ARM supportano bus dati a 64 bit tra il core e le cache.

• Per consentire un cambio di contesto efficiente, l'architettura MIPS supporta l'implementazione di più banchi di registri. ARM fornisce solo registri generici per le operazioni aritmetiche e tutte le altre funzioni, ma MIPS fornisce due registri separati per contenere i risultati dell'operazione di moltiplicazione.

• MIPS non ha istruzioni equivalenti per l'istruzione ARM MOV.

• L'istruzione MIPS ADD genera normalmente un'eccezione su overflow, quindi viene utilizzata raramente rispetto a ARM.

• Tutte le istruzioni di elaborazione dati ARM impostano i codici di condizione ALU per impostazione predefinita, ma MIPS fornisce il TAS per il confronto.

Sommario:

MIPS vs ARM

Nel mondo dei microprocessori, MIPS e ARM fanno un ottimo servizio per conto delle loro architetture di set di istruzioni. MIPS è implementato principalmente nei sistemi embedded. Ma, al momento, ARM è diventato molto più popolare nel settore rispetto a MIPS.

Immagini per gentile concessione: 

  1. Un processore ARM in una stampante Hewlett-Packard PSC-1315 di Socram8888 (CC BY 2.0)
  2. Vista dal basso del pacchetto di R4700 di DYL (CC BY-SA 3.0)