ARM - PowerPoint PPT Presentation

About This Presentation
Title:

ARM

Description:

Invested in ARM for Apple Newton. First PDA. But with handwriting ... iPod, Nintendo DS. StrongARM. DEC and ARM build a faster processor. Used in Apple Newton ... – PowerPoint PPT presentation

Number of Views:254
Avg rating:3.0/5.0
Slides: 24
Provided by: scie189
Learn more at: https://www.cs.unca.edu
Category:
Tags: arm | ds | nintendo

less

Transcript and Presenter's Notes

Title: ARM


1
ARM
  • UNCA ECE 406
  • April 6, 2007

2
Acorn Computers
  • Early builder of microcomputers
  • BBC Micro
  • First ARM-like designed by Sophie Wilson
  • Math undergraduate at Cambridge
  • Based on a 1977 cow feeder
  • Steve Furber implemented as ARM

3
Apple
  • Invested in ARM for Apple Newton
  • First PDA
  • But with handwriting recognition problems
  • Advanced RISC Machines
  • Acorn spin-off with Apple support

4
ARM
  • IP cores
  • Intellectual properties
  • Building blocks of ASIC
  • Mostly purchased as code
  • At a high price
  • Cirrus Logic makes ARM processor chips

5
Many uses
  • PDAs, cell phones
  • MP3 players, satellite radio
  • Smart cards
  • GPS
  • Calculators
  • Routers
  • Disk drive controllers

6
ARM7DMI
  • ARM core 7
  • JTAG debug
  • Fast multiply
  • EmbeddedICE macrocell
  • For breakpoints
  • Popular low-power implementation
  • iPod, Nintendo DS

7
StrongARM
  • DEC and ARM build a faster processor
  • Used in Apple Newton
  • DEC sold to Intel
  • Part of settlement of DEC/Intel patent suit over
    the patent use in Pentium

8
Intel XScale
  • Successor to StrongARM
  • Used in PDAs
  • BlackBerry, Dell Axim, Zaurus
  • Used in some media players
  • Intel sold XScale to Marvell
  • Monahans is the latest

9
Significant versions
  • ARM 32 bit
  • Thumb 16 bit
  • Jazelle Java bytecode
  • Used in 3G cell phones
  • DoCoMo (HUGE)
  • fully synthesizable

10
Programming
  • Generally in C or C
  • With assembly for higher performance
  • Public domain compilers exists
  • But generally ARM users can afford expensive
    computers
  • Linux hobbyists may not

11
ISA 32 bit version
  • 16 Registers
  • R13 Stack pointer
  • R14 Link register
  • R15 Program counter
  • CPSR
  • N, Z, C, V bits and more
  • Some registers can be banked
  • In fast interrupt, 7 registers are banked

12
Instructions
  • Execute
  • All versions add, subtract, and, or, not
  • Some versions
  • Multiply
  • Saturated add and subtract
  • CLS (count leading zeros)
  • Compare instructions
  • Load/Store
  • Branch
  • OS control

13
Execute example
  • ADD r7, r5, r3
  • r7 r5 r3
  • ADDS r7, r5, r3
  • Also sets condition bits
  • MOV r7, r5
  • r7 r5
  • MOV r7, 100
  • r7 100

14
Barrel shifting
  • MOV r3, r2, LSL 3
  • r3 r2 ltlt 3
  • MOV r3, r4, RSL r5
  • R3 r4 gtgt r5
  • Arithmetic shift is allowed
  • Limited circular shift is allowed

15
Jumping around
  • Branch
  • Branch and link
  • For subroutine calls
  • Branch and execute
  • To execute Thumb subroutines

16
Example program
  • while (a ! b)
  • if (agtb) a - b else b - a
  • Example 3.35 in ARM System Developers Guide by
    Sloss, Symes and Wright

17
ARM assembly
  • gcd
  • CMP r1, r2
  • BEQ complete
  • BLT lessthan
  • SUB r1, r1, r2
  • B gcd
  • lessthan
  • SUB r2, r2, r1
  • B gcd
  • complete

18
With conditional execution
  • gcd
  • CMP r1, r2
  • SUBGT r1, r1, r2
  • SUBLT r2, r2, r1
  • BNE gcd

19
Array load and store I
  • int r7
  • int r2
  • r7 (r2)
  • LDR r7, r2, 4!
  • r7 (r2)
  • LDR r7, r2, 4

20
Array load and store II
  • int r7
  • int r2
  • r7 r2
  • LDR r7, r2
  • r7 (r21)
  • LDR r7, r2, 4

21
Array load and store III
  • int r7
  • int r5
  • int r2
  • r7 r2r5
  • LDR r7, r2, r5, LSR 0x2

22
Memory support
  • Caches
  • Explicit cache control
  • Protected memory
  • Paging

23
Example programs
Write a Comment
User Comments (0)
About PowerShow.com