ARM Security Technology Building a Secure System using ...
ARM Security Technology Building a Secure System using ...
ARM Security Technology Building a Secure System using ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
TrustZone Hardware Architecture<br />
IRQ<br />
Normal world<br />
User<br />
Supervisor<br />
FIQ<br />
IRQ<br />
Undef<br />
Abort<br />
<strong>System</strong><br />
Figure 3-3 : One possible IRQ routing in a design with IRQ configured as a non-secure interrupt<br />
To prevent malicious Normal world software masking sensitive <strong>Secure</strong> world interrupts<br />
the processor hardware includes a configuration register in CP15 which can be used to<br />
prevent any Normal world software modifying the F (FIQ mask) and A (external abort<br />
mask) bits in the CPSR. This control register can only be accessed by <strong>Secure</strong> world<br />
software. Note that there is no option to prevent the Normal world masking IRQ<br />
interrupts.<br />
Processor exception vector tables<br />
Monitor<br />
<strong>Secure</strong> world<br />
To provide the exception behavior described above, a TrustZone-enabled processor<br />
implements three sets of exception vector tables. One of these tables is for the Normal<br />
world, one is for the <strong>Secure</strong> world, and the other is for Monitor mode.<br />
The base address of the <strong>Secure</strong> world table at reset is in accordance with the setting of<br />
the VINITHI processor input signal; 0x00000000 if it is not asserted, 0xFFFF0000 if it is.<br />
The base address of the other tables is undefined, and should be set by software before<br />
use.<br />
Unlike previous generations of <strong>ARM</strong> processors, the location of each of the tables can<br />
be moved at run-time. This is achieved by programming the appropriate Vector Base<br />
Address Register (VBAR) in CP15.<br />
3-12 Copyright © 2005-2009 <strong>ARM</strong> Limited. All rights reserved. PRD29-GENC-009492C<br />
Non-Confidential Unrestricted Access<br />
IRQ<br />
IRQ<br />
User<br />
Supervisor<br />
FIQ<br />
IRQ<br />
Undef<br />
Abort<br />
<strong>System</strong>