Documente Academic
Documente Profesional
Documente Cultură
Moderator:
Agenda
Housekeeping
Presentation
Questions and Answers
Wrap-up
Introducing ourselves
Chris Shore
Martin Weidmann
Training Manager
Useful sections:
Active Assist
ARM training
ARM hosted
Public schedule
Distributed teams
Customized agendas
Open enrolment
10
ARMv8-A Overview
11
12
AArch32
Evolution of ARMv7-A
A32 (ARM) and T32 (Thumb) instruction sets
AArch64
13
Agenda
Architecture versions
Privilege levels
AArch64 Registers and A64 Instruction Set
AArch64 Exception Model
AArch64 Memory Model
ARMv8.1
14
EL1
EL2
App
App
App
OS
App
OS
Hypervisor
EL3
Secure
Trusted
Services
Trusted Kernel
No EL2 in
Secure world
Secure Monitor
A processor may not implement EL2/3 if Security or Virtualization are not required
15
Moving to a lower EL, execution state can stay the same or switch to AArch32
Moving to a higher EL, execution state can stay the same or switch to AArch64
AArch64 OS
can host a mix
of AArch64 and
AArch32
applications
AArch32
App
AArch64
App
AArch32
App
AArch64 OS
AArch64
Hypervisor can
host AArch64
and AArch32
OSs
An AArch32 OS
cannot host a
AArch64
application
AArch64
App
AArch32 OS
AArch32
Hypervisor
cannot host
AArch64 OSs
AArch64 Hypervisor
16
Agenda
Architecture versions
Privilege levels
17
Register banks
32 31
Wn
Xn
Separate register file for floating point, SIMD and crypto operations - Vn
S0
S1
D0
V0
D1
V1
18
X8-X15
X16-X23
X24-X30
R0
R8_usr
R14_irq
R8_fiq
R1
R9_usr
R13_irq
R9_fiq
R2
R10_usr
R14_svc
R10_fiq
R3
R11_usr
R13_svc
R11_fiq
R4
R12_usr
R14_abt
R12_fiq
R5
R13_usr
R13_abt
R13_fiq
R6
R14_usr
R14_und
R14_fiq
R7
R13_hyp
R13_und
Registers that are not accessible in AArch32 retain value from previous AArch64
execution
19
A64
Similar set of functionality as traditional A32 (ARM) and T32 (Thumb) ISAs
w0 = w1 + w2 (32-bit addition)
x0 = x1 + x2 (64-bit addition)
20
Agenda
Architecture versions
Privilege levels
AArch64 registers and the A64 Instruction Set
21
AArch64 exceptions
Synchronous
Data aborts from MMU, permission/alignment failures, service call instructions, etc
Asynchronous
IRQ/FIQ
SError (System Error)
EL0 (App)
EL1 (OS)
EL2 (Hyp)
EL3 (Monitor)
22
Agenda
Architecture versions
Privilege levels
AArch64 registers and the A64 Instruction Set
AArch64 Exception Model
23
Virtual addresses are 64-bit wide, but not all addresses are accessible
Not available in
EL2 or EL3
Peripherals
OS
0xFFFF,0000,0000,0000
Translation
Tables
Peripherals
TTBR1_EL1
FLASH
FAULT
RAM
0x0000,FFFF,FFFF,FFFF
Application
0x0
Translation
Tables
TTBR0_ELn
24
Operation of MMU appears unchanged for guest OSs, still use TTBRn_EL1 and TCR_EL1
The Hypervisor and Secure Monitor also have a set of stage 1 Translation Tables
OS (EL1)
Peripherals
FLASH
Application (EL0)
Guest OS
Translation
Tables
TTBRn_EL1
Peripherals
Translation
Tables
RAM
VTTBR0_EL2
Peripherals
RAM
Stage 2
RAM
Hypervisor
Translation
Tables TTBR0_EL2
FLASH
Monitor
Translation
Tables
TTBR0_EL3
Virtual memory space seen
SP:0x8000 != NP:0x8000
But most systems treat
Secure/Non-Secure as an
attribute for access control
Controlled through
translation tables
Secure EL1/EL0
Secure physical
address space
Secure
Peripherals
Translation
Tables
RAM
Secure Data
Non-Secure Data
Peripherals
Secure Code
FLASH
Non-secure physical
address space
Non-secure EL1/EL0
Non-Secure
Peripherals
Translation
Tables
RAM
Non-Secure Data
Peripherals
Non-Secure Code
FLASH
26
Agenda
Architecture versions
Privilege levels
AArch64 registers and the A64 Instruction Set
AArch64 Exception Model
AArch64 Memory Model
ARMv8.1
27
ARMv8.1-A
28
ARMv8-A Overview
29
So much to say
Day 1
Day 2
Introduction to ARMv8-A
AArch64 A64 ISA Overview
AArch64 Exception Model
Barriers
Synchronization
Cache Coherency
Operating System Support
SW Engineers Guide to Cortex-A5x
Booting
Day 3
Security
Virtualization
Power Management (optional)
GIC Programming (optional)
Debug (optional)
so little time!
30
Where to go next?
31
Thank you
Any questions?
32
Audience Q & A
Chris Shore,
Training Manager,
ARM
Martin Weidmann,
Principal Applications Engineer,
ARM
http://ecast.opensystemsmedia.com/
E-mail us at: jgilmore@opensystemsmedia.com