É possível identificar várias diferenças entre o MIPS e o ARM, embora ambos estejam na mesma família de conjuntos de instruções. Por esse motivo, o MIPS e o ARM são duas arquiteturas de conjunto de instruções (ISA) que estão disponíveis no mundo dos microprocessadores. Ambos, ARM e MIPS, são baseados no RISC (Reduced Instruction Set Computing) e estão no tipo de registro-registro. Ambos os conjuntos de instruções têm tamanho de instrução fixo de 32 bits / 64 bits (espaço de endereço) e os dois conjuntos de instruções podem ser configurados para grande endianness e pouca endianness. Ambas as arquiteturas suportam compatibilidade com versões anteriores. As arquiteturas do ARM e do MIPS são usadas em processadores de smartphones e tablets, como iPhones, tablets Android e Windows RT, mas não nos computadores principais, como laptops e servidores.
O principal designer do ARM ISA é a ARM Holdings. A arquitetura ARM foi introduzida em 1985 e projetada com base no RISC. Este ISA usa códigos condicionais na ramificação. Existem várias arquiteturas ARM, como arquiteturas de 64/32 bits, arquiteturas de 32 bits (córtex) e arquiteturas de 32 bits (herdadas). O ARM é a arquitetura de conjunto de instruções mais usada no mundo. O conjunto de instruções do braço pode ser dividido em seis amplas classes de instruções, como instruções de ramificação, instruções de processamento de dados, instruções de carregamento e armazenamento, instruções de coprocessador e instruções de geração de exceção. Diferentes tipos de instruções ARM podem ser identificados usando o opcode e os sinalizadores condicionais. Existem 16 registradores de uso geral chamados R0 a R15 no ARM ISA e cada um tem um tamanho de 32 bits. O registro R13 é chamado Stack Pointer (SP), R14 é chamado Link Register (LR) e R15 é chamado Program Counter (PC). O ARM ISA suporta muitas operações aritméticas, como adição, subtração e multiplicação. Os núcleos ARM possuem um barramento de endereço de 32 bits, que fornece um espaço de endereço linear plano de 4 GB. A memória é endereçada em bytes e pode ser acessada como palavras duplas (8 bytes), palavras (4 bytes) ou meias palavras (2 bytes).
As arquiteturas ARM são usadas em smartphones, PDAs de computadores tablet e outros dispositivos móveis. Os chips ARM também são usados em Raspberry Pi, BeagleBoard, PandaBoard e outros computadores de placa única devido ao seu pequeno consumo de energia, baixo custo e menor formato.
O MIPS foi projetado e introduzido pela MIPS Technologies em 1981. Esse ISA também é baseado na arquitetura do conjunto de instruções RISC e possui um sistema de codificação fixo. Registradores de condição são usados para ramificação e MDMX, MIPS-3D são usados como extensões. Existem três tipos de instruções MIPS e são R, I e J. Todas as instruções começam com um código de operação de 6 bits. Nas instruções do tipo R, existem três registradores, um campo de montagem em turno e um campo de função. Nas instruções de digitação, existem dois registradores e um valor imediato de 16 bits, enquanto as instruções de tipo J seguem opcode com um alvo de salto de 26 bits. O MIPS possui 32 registros inteiros para executar operações aritméticas. O registro $ 0 contém 0 e o registro $ 1 é normalmente reservado para o montador.
A arquitetura dos MIPs é usada na fabricação de smartphones, ceia, sistemas embarcados, como roteadores, gateways residenciais e consoles de vídeo, como o Sony PlayStations.
• MIPS e ARM são duas arquiteturas diferentes de conjuntos de instruções na família de conjuntos de instruções RISC.
• Embora ambos os conjuntos de instruções tenham um tamanho fixo e o mesmo tamanho, o ARM possui apenas 16 registros, enquanto o MIPS possui 32 registros..
• O ARM possui uma alta taxa de transferência e uma grande eficiência do que o MIPS, porque os processadores ARM suportam barramentos de dados de 64 bits entre o núcleo e os caches.
• Para permitir a troca eficiente de contexto, a arquitetura MIPS suporta a implementação de vários bancos de registros. O ARM fornece apenas registros de uso geral para operações aritméticas e todas as outras funções, mas o MIPS fornece dois registros separados para armazenar os resultados da operação de multiplicação.
• O MIPS não possui instrução equivalente à instrução ARM MOV.
• A instrução MIPS ADD normalmente gera uma exceção no estouro, por isso raramente é usada no ARM.
• Todas as instruções de processamento de dados do ARM definem os códigos de condição da ALU por padrão, mas o MIPS fornece o SLT para comparação.
Resumo:
No mundo dos microprocessadores, o MIPS e o ARM prestam um ótimo serviço em nome de suas arquiteturas de conjuntos de instruções. O MIPS é implementado principalmente em sistemas embarcados. Mas, atualmente, o ARM se tornou muito mais popular na indústria do que o MIPS.
Cortesia de imagens: