Plataforma ARM - TDC 2010

  • View
    1.522

  • Download
    1

Embed Size (px)

DESCRIPTION

Apresentação feita no The Developers Conference 2010, na trilha Arduino

Text of Plataforma ARM - TDC 2010

  • 1. Plataforma ARM
    marcelo@mindaslab.com
    @mfcastellani

2. 3. Pr histria do ARM
Projeto iniciado pela AcornComputersLtd em 1983, para criar um novo processador e uma nova linha de computadores capazes de competir com a recm lanada linha IBM PC surge ento 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 especificaes dos processadores ARM
ARM passa a significar Advanced RISC Machines, ao invs de Acorn RISC Machines
4. Acorn Business Computer
5. VLSI/Acorn ARM
6. Principais caractersticas do ARM1
Baseado no processador Berkeley RISC I
Utiliza arquitetura Load/Store, ou seja, as operaes somente processaro valores em registradores, e o resultado sempre estar em um registrador
Utiliza instrues fixas de 32 bits e execuo condicional
Capacidade de executar operaes de deslocamento e na ULA com uma nica instruo e em um nico ciclo de clock
15 registradores de 32 bits para uso geral
Manipulao de perifricos de I/O como dispositivos na memria com suporte a interrupes
Suporte a adio de at 16 co-processadores
7. ARM e Cortex, evoluo
8. O que a ARM faz?
9. 10. ARM, Thumb, Jazelle e Thumb-2
O ARM possui diversos conjuntos de instrues
O principal o modo ARM, um conjunto de instrues de 32 bits extremamente poderoso e inteligente
O segundo mais usado o modo Thumb, um conjunto de instrues de 16 bits, mais limitado
Existe um conjunto chamado Jazelle, que possibilita a execuo de bytecode Java em algumas famlias de processador (normalmente as que possuem J no nome, como o ARM926EJ-S, daShangai Jade Tech Co. Ltd, oprimeiroprocessador a suportar a tecnologia no mundo)
11. Modo ARM e modo Thumb
Modo ARM
Todas as instrues tem 32 bits e praticamente todas podem fazer uso de condicionais
Ocupa 30% mais espao que o modo Thumb, mas at 40% mais rpido
Modo Thumb
Todas as instrues tem 16 bits e no so executadas condicionalmente (apenas branchs)
Ocupa cerca de 30% menos espao que o modo ARM, mas cerca de 40% mais lento
Usa apenas os registradores de r0 a r7
12. Modo ARM
{COND}{FLAGS} Rd, Rn, Operador2
13. Modo ARM
{COND}{FLAGS} Rd, Rn, Operador2
MOV
ADD
SUB
AND
LDR
14. Modo ARM
{COND}{FLAGS} Rd, Rn, Operador2
ADDEQ
15. ARM versus Thumb
ADDS r2, r2, #1
ADD r2, #1
16. Modo ARM versus modo Thumb
17. ARM versus Thumb
18. 19. http://www.keil.com/
20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. Obrigado.
marcelo@mindaslab.com
@mfcastellani