Plataforma ARM - TDC 2010
-
Upload
mfcastellani -
Category
Technology
-
view
1.531 -
download
1
description
Transcript of Plataforma ARM - TDC 2010
+Pré história do ARM
Projeto iniciado pela Acorn Computers Ltd em 1983, para criar um novo processador e uma nova linha de computadores capazes de competir com a recém lançada linha IBM PC – surge então o Acorn RISC Machine, ou ARM
No final dos anos 80 a Apple e a VLSI Tech mostraram interesse pelo projeto e a Acorn funda, em 1990, a Advanced RISC Machines Ltd, ou simplesmente ARM Ltd, que passa a cuidar das especificações dos processadores ARM
ARM passa a significar Advanced RISC Machines, ao invés de Acorn RISC Machines
+Acorn Business Computer
+VLSI/Acorn ARM
+Principais características do ARM1 Baseado no processador Berkeley RISC I
Utiliza arquitetura Load/Store, ou seja, as operações somente processarão valores em registradores, e o resultado sempre estará em um registrador
Utiliza instruções fixas de 32 bits e execução condicional
Capacidade de executar operações de deslocamento e na ULA com uma única instrução e em um único ciclo de clock
15 registradores de 32 bits para uso geral
Manipulação de periféricos de I/O como dispositivos na memória com suporte a interrupções
Suporte a adição de até 16 co-processadores
+ARM e Cortex, evolução
+O que a ARM faz?
+
+ARM, Thumb, Jazelle e Thumb-2
O ARM possui diversos conjuntos de instruções
O principal é o modo ARM, um conjunto de instruções de 32 bits extremamente poderoso e inteligente
O segundo mais usado é o modo Thumb, um conjunto de instruções de 16 bits, mais limitado
Existe um conjunto chamado Jazelle, que possibilita a execução de bytecode Java em algumas famílias de processador (normalmente as que possuem J no nome, como o ARM926EJ-S, da Shangai Jade Tech Co. Ltd, o primeiro processador a suportar a tecnologia no mundo)
+Modo ARM e modo Thumb
Modo ARM
Todas as instruções tem 32 bits e praticamente todas podem fazer uso de condicionais
Ocupa 30% mais espaço que o modo Thumb, mas é até 40% mais rápido
Modo Thumb
Todas as instruções tem 16 bits e não são executadas condicionalmente (apenas branchs)
Ocupa cerca de 30% menos espaço que o modo ARM, mas é cerca de 40% mais lento
Usa apenas os registradores de r0 a r7
+Modo ARM
<OP>{COND}{FLAGS} Rd, Rn, Operador2
+Modo ARM
<OP>{COND}{FLAGS} Rd, Rn, Operador2
MOVADDSUBANDLDR
+Modo ARM
<OP>{COND}{FLAGS} Rd, Rn, Operador2
ADDEQ
+ARM versus Thumb
ADDS r2, r2, #1
ADD r2, #1
+Modo ARM versus modo Thumb
+ARM versus Thumb
htt
p:/
/ww
w.k
eil.
com
/