SDAA473 November   2026 MSPM33C321A , MSPM33C321A-Q1

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
    1. 1.1 Security Concept
    2. 1.2 Key Concepts
  5. 2TrustZone Architecture
    1. 2.1 MSPM33 Family Overview
    2. 2.2 TrustZone Feature
      1. 2.2.1 Security States – Secure, Non-secure, Non-secure Callable
      2. 2.2.2 First Security Attribute Define – SAU and IDAU
      3. 2.2.3 Second Security Attribute Define – Global Security Controller
      4. 2.2.4 Security Attribute with TrustZone® and GSC
      5. 2.2.5 Secure and Non-secure Debug Authentication
    3. 2.3 TrustZone® Software Development
  6. 3Develop TrustZone Based Application
    1. 3.1 Device Configuration
      1. 3.1.1 NONMAIN FLASH
        1. 3.1.1.1 Security and Privilege Configuration on FLASH
        2. 3.1.1.2 Other Configurations in NONMAIN FLASH
        3. 3.1.1.3 Configure NONMAIN FLASH in the Sysconfig
    2. 3.2 Develop Secure Application
      1. 3.2.1 Project Dependency
        1. 3.2.1.1 Structure of Secure Application Example
      2. 3.2.2 SAU and IDAU Configuration
        1. 3.2.2.1 Configure SAU in the Project
      3. 3.2.3 Global Security Controller Configuration
        1. 3.2.3.1 Configure GSC in the Sysconfig
        2. 3.2.3.2 Other Configurations in GSC
      4. 3.2.4 Defining Functions as Secure and Non-Secure
        1. 3.2.4.1 Define Non Secure Callable function in the Project
      5. 3.2.5 Code Implementation on Secure Application
        1. 3.2.5.1 Configure .cmd file to assign memory
        2. 3.2.5.2 Secure Application
        3. 3.2.5.3 Secure Interrupt and Non-secure Interrupt
        4. 3.2.5.4 Branch to Non-secure Application
    3. 3.3 Develop Non-Secure Application
      1. 3.3.1 Project Dependency
        1. 3.3.1.1 Structure of Non-secure Application Example
      2. 3.3.2 Code Implementation on Non-secure Application
        1. 3.3.2.1 Configure .cmd file to assign memory
        2. 3.3.2.2 Non-secure Application and NSC Function Call
  7. 4Evaluate TrustZone Based Application
    1. 4.1 Environment Setup
    2. 4.2 Load Secure and Non-secure Images Together
      1. 4.2.1 Step 1: Build the Non-Secure Application
      2. 4.2.2 Step 2: Programming the full.txt File
    3. 4.3 Load Secure and Non-secure Images separately
      1. 4.3.1 Step 1: Build the Non-Secure Application
      2. 4.3.2 Step 2: Programming the Non-Secure Application
      3. 4.3.3 Step 3: Build the Secure Application
      4. 4.3.4 Step 4: Programming the Secure Application
    4. 4.4 Debug and Evaluate the Example
      1. 4.4.1 Add Symbols in the Debug
      2. 4.4.2 Observe Results with Free Run
      3. 4.4.3 Add Breakpoints to Observe the Process
  8. 5FAQ
    1. 5.1 How to Modify the Range of S/NS SRAM
    2. 5.2 How to Modify the Range of S/NS FLASH
    3. 5.3 How to Modify the Security Attribute on Peripherals
  9. 6Summary
  10. 7References

Key Concepts

    TrustZone® TrustZone® is a security extension developed by ARM that creates two distinct execution environments in MCU: secure world and normal world.
    Security Attribution Unit (SAU)

    SAU is an internal, programmable security unit within an Armv8-M processor that allows software to define the security attributes of memory regions at runtime.

    Implementation Defined Attribution Unit (IDAU)

    IDAU is a hardware-fixed unit implemented by the chip vendor that determines the default security attributes of memory and peripherals.

    Global Security Controller (GSC) A system module from TI used to configure the security firewalls for secure and non-secure context of the application.