Postagens do Blog

FILOSOFIA ARM

FILOSOFIA ARM

INTRODUÇÃO

A arquitetura ARM (Advanced RISC Machines) começou como um projeto em 1983 na Arcon Computers de Cambridge, Inglaterra, para desenvolver um processador que fosse similar ao já usado MOS Technology 6502. O desenvolvimento da primeira versão foi terminado em 1985, chamado ARM1. Esta arquitetura não chegou ao mercado e a Arcon continuou no desenvolvimento, terminando no ano seguinte a segunda versão, chamada de ARM2. Além do 6502, a arquitetura ARM tem uma grande herança do processador Berkeley RISC1, como instruções de tamanho fixo (32 bits), formato das instruções e a arquitetura load-store. Apesar disso, a Arcon optou por ter instruções multi-ciclo, ao contrario do RISC1. Em sua época, o ARM2 era o processador de 32 bits mais simples no mercado, com apenas 30.000 transistores, mas ainda assim superava o desempenho de muitos processadores (RISC ou CISC) mais complexos, como o 286 da Intel.
O desenvolvimento continuou, e o nome original (Arcon RISC Machine) deixado de lado quando a ARM Ltda. Foi criada e assumiu as patentes e o desenvolvimento da arquitetura ARM. A arquitetura já conta com sua 11ª versão (2014), mas as versões antigas ainda são usadas e desenvolvidas, já que o uso de cada família é voltado para um nicho de mercado. Existem também várias extensões especializadas para alguma função ou processamento, como o Jazelle e o Thumb.

PRINCIPAIS CARACTERÍSTICAS DA ARQUITETURA:

• Processador de 32 bits;
• 16 registradores de uso geral;
• Conjunto de instruções extensível com o uso de co-processadores;
• Instruções básicas similares ao 6502;
 Arquitetura de LOAD / STORE. Operações de processamento de dados não operam diretamente com o
conteúdo da memória, somente com o conteúdo de registradores;
 Modos de endereçamento simples, com todos endereços de load / store sendo determinados a partir dos registradores ou pelos campos da instrução;
 Uniformidade e tamanho fixo dos campos das instruções para simplificar a decodificação de instruções;
 Controle sobre a ALU e sobre o shifter (deslocador) em todas as instruções de processamento de dados;
 Auto incremento e decremento dos endereços das instruções;
 Instruções de múltiplos loads / stores para maximizar a performance;
 Execução condicional da maioria das instruções.
PRINCIPAIS USOS

FILOSOFIA ARM

TABELA COMPARATIVA RISC X CISC X ARM


RISC(Reduced Instruction Set Computer)
CISC(Complex Instruction Set Computer)
ARM(Advanced Risc Machine)
- Instruções reduzidas
- Menor numero de circuitos
- Endereço de instruções em um registrador
- Instrução executada por hardware
- Operandos em registradores
- Freqüência mais alta
- Registrador-Registrador na arquitetura
- Pouca variedade de tipo de dados
- Instruções poucos endereços
- Pouca variedade no modo de endereçamento
- Entre 4 e 10 estágios de pipeline
- Acesso aos dados via registradores


- Guarda o endereço de instruções na Stack
- Operando em memória
- Instruções complexas
- Possui micro programação para aumento da quantidade de instruções incluindo novos modos de endereçamento, de forma a diminuir a complexidade dos compiladores e em conseqüência permitir linguagens de alto nível com comandos poderosos para facilitar a vida dos programadores.
- Facilita o trabalho dos programadores, melhor para programar por ser complexo.
- Outra vantagem da arquitetura CISC é que já temos muitas das instruções guardadas no próprio processador, o que facilita o trabalho dos programadores de linguagem de máquina.
-Registrador-Memória na arquitetura
- Muito variedade de tipo de dados
- Instruções com muitos endereços
- Muita variedade no modo de endereçamento
- Entre 20 e 30 estágios de pipeline
- Acesso aos dados via memória


Processador de 32 bits

16 registradores de uso geral

Conjunto de instruções extensível com o uso de coprocessadores

Instruções básicas similares ao 6502
Arquitetura de LOAD / STORE. Operações de processamento
de dados não operam diretamente com o
conteúdo da memória, somente com o conteúdo de registradores;
Modos de endereçamento simples, com todos endereços de load / store sendo determinados a partir dos registradores
ou pelos campos da instrução;
Uniformidade e tamanho fixo dos campos das instruções para simplificar a decodificação de instruções;
Controle sobre a ALU e sobre o shifter (deslocador)
em todas instruções de processamento de dados;
Auto incremento e decremento dos endereços das instruções;
Instruções de múltiplos loads / stores para maximizar a performance;
Execução condicional da maioria das instruções.

Nenhum comentário:

Postar um comentário

Postagem em Destaque

Maquina Virtual

  O QUE É UMA MÁQUINA VIRTUAL Uma máquina virtual , conhecida como guest, é criada dentro de um ambiente de processamento, chamado host. ...

Postagens Mais Visitadas

Últimas Postagens