The Security Management Subsystem (SMS) which
provides control over the device boot sequencing, device management, and security.
With the factory-sealed firmware, SMS main functions include:
- Device management (security
only)
- Device boot configuration and
sequence
- Secure boot setup
- Decryption routines
- Firewall control for
isolation and Security
- Runtime Security Management
and resource allocation
Arm Cortex-M4F based SMS acts as a system security
master and protects critical security assets during run-time. As part of booting a
High Security (HS) device, SMS uses on-chip keys to establish root-of-trust and
authenticate images to reinforce trust. SMS acts also as main boot processor and as
such is the very first subsystem that is brought out of reset after device
power-on-reset.
Main components of the SMS are:
- Two independent M4F processor
cores with floating point extension (primary and secondary)
- M4F primary core features include:
- RTI/WDT (only digital
watchdog (non-windowed) feature is supported in SMS primary core
context)
- 128KB IMEM and 48KB
DMEM, accessible from M4F primary core and system masters via
firewall
- Messaging between M4F
core and host processors using Secure Proxy and RA located in
MCU_NAVSS and MAIN NAVSS.
- 160KB ROM for boot of
M4F core
- M4F secondary core features
include:
- Dedicated RTI/WWDT
(with windowed watchdog mode, disabled by default)
- 192KB IMEM and 64KB
DMEM, accessible from M4F secondary core and system masters via
firewall
- Messaging between M4F
secondary core and up to five host cores (including primary core and
4 other device level cores) using Secure Proxy and RA
- Common features of both M4F primary and secondary cores:
- Following resources
can be accessed from either primary or secondary core with
permissions via firewall:
- Four 32-bit
Timers - same as SOC level timers
- AES engine
with 128, 192 and 256-bit support
- Security
Manager
- SMS control
module - contains various control, configuration and status
MMRs including firewall management for the full device
- Other core features:
- Ability to execute code from unified memory or external
memories
- Up to 240 input interrupts, level or pulse interrupts,
capable of waking up the SMS cores from low power mode
- Two interrupt
outputs (per M4F core) to host SOC; support of both level
and pulse interrupts
- One fault
detected interrupt output (per M4F core); support of both
level and pulse interrupts
- DAP based debug interface to the M4F core
- ITM trace to chip level trace framework
- Support of
double detection and single error correction
- Support of
Little Endian mode only
- In addition to local SMS RAM, the SMS M4F cores may utilize
MSMC memory space as secure RAM via firewall