The overall structure of the software architecture will be heavily influenced by the nature of the available Secure world processing resource. A system may provide a TrustZone-enabled core, such as the ARM1176JZ(F)-S processor, or may provide a dedicated processor for the Secure world, such as a Cortex-R4 processor.
The design with two physical processors is a classical embedded design, and is not heavily impacted by the addition of the Security Extensions. The software running on the Secure world processor must be self contained and provide its own local operating environment.
It is expected that most designs will choose to use a TrustZone-enabled processor. This typically gives the Secure world higher software performance and requires less silicon area than a dedicated security processor. It is this case that we will focus on for the remainder of this chapter.