Вы находитесь на странице: 1из 22

Advanced RISC Machine

ARM
Vtor da Rosa

Sumrio
Introduo Histria Evoluo ARM Ltd Arquitetura & Organizao
Primeiros Processadores ARM7TDMI ARM9TDMI

Referncias

Histria
Out/83, a Acorn Computers Ltd desenvolve o primeiro modelo do processador ARM [3]; 26/Abr/85, prottipos do ARM so fabricados pela VLSI Technology e so utilizados pela primeira vez em BBC Micros [3, 4];
Primeiro processador RISC a ser comercializado

80s, os ARMs so utilizados nos desktops da Acorn (BBC Master, Acorn Archimedes) [3]; 80s, criada uma verso esttica, o ARM2aS; Fim 80s, visando uma verso totalmente esttica, a Apple junta-se a Acorn para desenvolver novas verses do ARM.

Histria
Nov/90, a AdvancedRM Ltd spin-off da Arcorn fundada resultante de uma joint venture com a Apple Computer e VLSI Technology [3]; 91, so lanados os primeiros modelos do ARM6. 95, DEC e ARM lanam o StrongARM 98, ARM Ltd introduzida nas bolsas de Londres e NASDAQ Intel compra a DEC e junto
ganha de presente o StrongARM

Ao longo dos anos 90s, ARM torna-se lder no mercado de processadores embarcados de alto desempenho e baixo consumo de energia.

Histria

Evoluo

ARM Ltd
Desenvolve cores dos processadores ARM Licencia seus IP Cores a design houses, fbricas de semicondutores, etc Desenvolve tambm outras tecnologias de apoio aos seus processadores ARMs
Ferramentas de software, boards, debug hardware, softwares aplicativos, barramentos, perifricos, etc.

ARM Ltd

ARM Ltd

Primeiros Processadores
RISC (32 bits, load/store)
Instrues de 3 operandos

No possuam banco de registradores


rea reduzida.

No suportavam delayed branches


Simplifica o pipeline, tratamento de excees e predio de branches.

Suportavam Auto-Indexing Addressing (CISC)


Realizado durante os ciclos gastos no acesso a memria (Von Neumann) Reduz o nmero de instrues

ARM7TDMI

Alto desempenho

Arquitetura ARMv4T (RISC Load/Store de 32 bits)


palavras de dados podem ser tambm de 16 e 8 bits Instrues tambm podem ser de 16 bits (Thumb)

Pipeline com 3 estgios

Alta densidade Auto-Indexing Addressing (executado durantede cdigo estgios

menos apertados do pipeline)

Von Neumann Bi-endian 32 bit Multiplier, Barrel Shifter + ALU Interface com coprocessadores Sete modos de operao: User, Fast Interrupt, Supervisor, Abort, System, Undefined

ARM7TDMI
37 Registradores de 32-bits
31 de propsito geral (PC, SP, LR) 6 de status (CPSR, SPSR)

O modo de operao corrente controla quais registradores so acessveis

ARM7TDMI
Quando uma Exceo ocorre:
SPSR_<mode> <= CPSR Arruma os bits do CPSR
Muda para o estado ARM Muda para o modo exceo Desabilita excees (se apropriado)
0x1C 0x18 0x14 0x10 0x0C 0x08 FIQ IRQ (Reserved) Data Abort Prefetch Abort

LR_<mode> <= PC PC <= endereo do vetor

Para retornar da exceo:


Restaurar CPSR <= SPSR_<mode> PC <= LR_<mode>

Software Interrupt 0x04 Undefined Instruction Reset 0x18

Vector Table

O tratamento de exceo s pode ser efetuado no estado ARM

ARM7TDMI
Fetch
Instruction fetch

Decode
Thumb decompress ARM decode

Execute
Reg Shift/ALU Reg read write

Instrues:
Single-cycle

Branches esvaziam Memria utilizada o pipeline a cada ciclo

Multi-cycle

Organizao: ARM7TDMI

ARM7TDMI
Instrues de processamento de dados

Operaes sobre Registradores

Operaes imediatas

ARM7TDMI
Instrues de transferncia de dados (load/store)
Final do 3 ciclo AutoIndexing

Load gasta um ciclo a mais para transferir o dado para um registrador. Calcula o endereo Armazena o dado e auto-index

ARM7TDMI
Instrues de branch
1 - Busca Instr. 2 - Decodifica 3 - cal. novo end. 4 - recarrega o pipeline link rg <= retorno 5 // Corrige PC PC <= PC - 4

(Brach with link) Calcula branch Salva o endereo de retorno

ARM9TDMI
Arquitetura ARMv4T (RISC Load/Store de 32 bits) Thumb Pipeline com 5 estgios Harvard

Instruction Fetch

r.read decode

Reg Shift/ALU data memory write access

Fetch

Decode

Execute

Memory

Write

Cache de instr.

Organizao

Referncias
1.

2. 3.

A. Wesley, S. Furber. ARM System-on-Chip Architecture. 2nd Edition. www.arm.com Wikipedia

Вам также может понравиться