EasyManua.ls Logo

ST X-CUBE-SBSFU STM32Cube - Page 5

ST X-CUBE-SBSFU STM32Cube
49 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
AN5056 Rev 8 5/5
AN5056 List of figures
5
List of figures
Figure 1. SBSFU project structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Figure 2. Memory mapping example (NUCLEO-L476RG). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Figure 3. Linker file architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Figure 4. Mapping constraints with MPU isolation (NUCLEO-G071RB example) . . . . . . . . . . . . . . . 12
Figure 5. Mapping constraints for user application execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Figure 6. SBSFU regions (NUCLEO-L476RG mapping_sbsfu.icf) . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Figure 7. Firmware image slot definitions (NUCLEO-L476RG mapping_fwimg.icf). . . . . . . . . . . . . . 14
Figure 8. Firewall configuration constraint on dual bank products. . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Figure 9. Firewall configuration after bank swap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Figure 10. SECoreBin specific linker file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Figure 11. SBSFU specific linker file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Figure 12. UserApp specific linker file (NUCLEO-L476RG example) . . . . . . . . . . . . . . . . . . . . . . . . . 17
Figure 13. Multiple image configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Figure 14. STM32H7 Series dual-core adaptation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Figure 15. SBSFU configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Figure 16. Switching the cryptographic scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Figure 17. STM32L4 Series and STM32L0 Series security configuration (app_sfu.h) . . . . . . . . . . . . 23
Figure 18. STM32F4 Series, STM32F7 Series and STM32L1
Series security configuration (app_sfu.h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Figure 19. STM32G0 Series, STM32G4 Series, and STM32H7 Series
security configuration (app_sfu.h). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Figure 20. STM32WB Series security configuration (app_sfu.h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Figure 21. Option Bytes management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Figure 22. New firmware encryption-key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Figure 23. New private/public keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Figure 24. Key provisioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Figure 25. KMS specificities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Figure 26. STSAFE-A110 pairing keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Figure 27. Compiler optimizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Figure 28. Memory mapping adaptations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figure 29. Checking the WRP protection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figure 30. Debugging inside SECoreBin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Figure 31. User’s cryptographic scheme implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Figure 32. Example of memory mapping optimization on NUCLEO-G071RB – 2 images . . . . . . . . . 37
Figure 33. IDE adaptations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Figure 34. Boot time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Figure 35. Vector table position update (NUCLEO-L476RG example) . . . . . . . . . . . . . . . . . . . . . . . . 40
Figure 36. User application binary file length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Figure 37. IDE adaptations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Figure 38. Free Flash pages (NUCLEO-L476RG example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Figure 39. UserApp firmware download overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Figure 40. Firmware version change . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Figure 41. Validation menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Table of Contents

Related product manuals