ST SR6P3
The ST SR6P3 devices are Stellar P series microcontrollers that include three Arm Cortex-R52+ cores and three Arm Cortex-M4 cores.
Supported devices
Refer to the supported device list for a complete list of supported SR6P3 family devices, including their corresponding names and connection diagrams.
Supported device revisions
| Revision | J-Link support |
|---|---|
| Cut 1.0 |
Target interfaces
| Interface | J-Link support | Flasher support |
|---|---|---|
| JTAG | ||
| SWD |
Flash banks
The following flash banks can be programmed via the main cores:
| Flash bank | Base address | J-Link support | Flasher support | Loader | |
|---|---|---|---|---|---|
| Name | Bank size | ||||
| RWW Partition 0 | 0x28000000 | default | 2816 KB | ||
| RWW Partition 1 | 0x28400000 | default | 2816 KB | ||
| RWW Partition 2 | 0x28800000 | default | 1024 KB | ||
| RWW Partition 3 | 0x28900000 | default | 2048 KB | ||
| EEPROM / RWW 4 | 0x29E00000 | default | 256 KB | ||
| UTEST / RWW 0 | 0x29F80000 | default | 32 KB | ||
| Boot Code Sector / RWW 0 | 0x29FB8000 | default | 16 KB | ||
Flasher stand-alone mode is not supported yet.
HSM flash banks
The following flash banks can be programmed via the HSM core:
| Flash bank | Base address | J-Link support | Flasher support | Loader | |
|---|---|---|---|---|---|
| Name | Bank size | ||||
| HSM Code A / RWW 5 | 0x00000000 | default | 512 KB | ||
| HSM Code B / RWW 6 | 0x00100000 | default | 256 KB | ||
| HSM Data / RWW 7 | 0x003A0000 | default | 256 KB | ||
| HSM UT / RWW 11 | 0x0037C000 | default | 16 KB | ||
Flasher stand-alone mode is not supported yet.
Flash programming
Single-ended mode is not supported.
The flash controller does not provide an explicit erase function.
An explicit erase operation is therefore not required before reprogramming the flash. Previously programmed flash can be reprogrammed directly.
Flash programming speed
For the highest possible programming speed, use Cluster 0, Core 0. For more information, see #Init.
Flash ECC
The device flash uses ECC, but no special initialization is required. Refer to the reference manual for more information.
RAM ECC
The device RAM uses ECC and must be initialized before first use. Refer to the reference manual for more information.
ECC RAM initialization is performed for Cluster 0, Core 0, as described below.
Multi-core support
| Core | J-Link support |
|---|---|
| Cluster 0, Core 0 | |
| Cluster 0, Core 1 | |
| Cluster 1, Core 1 | |
| DSPH | |
| DME | |
| HSM |
Before proceeding with this article, please check out the generic article regarding Multi-Core debugging here.
The SR6P3 family comes with 3 Cortex-R52 and 3 Cortex-M4 cores. Some of them are available with enabled split lock mode, only.
Please refer to the reference manual.
In below, the debug related multi-core behavior of the J-Link is described for each core:
Cluster 0 Core 0 Cortex-R52
Init/Setup
- WDT is enabled by default. If it is enabled, it will be disabled.
Reset
- ARMv8-R Reset is performed like described here.
- Initializes 256KB ECC RAM starting at 0x60000000
- WDT is enabled by default. If it is enabled, it will be disabled.
Attach
- Attach is supported if WorkRAM init is skipped.
Cluster 0 Core 1 Cortex-R52
Init/Setup
- WDT is enabled by default. If it is enabled, it will be disabled.
- If core is not enabled, it will be enabled (set to DRUN condition).
Reset
- ARMv8-R Reset is performed like described here.
Attach
- Attach is supported
Cluster 1 Core 0 Cortex-R52
Init/Setup
- WDT is disabled
- If core is not enabled, it will be enabled (set to DRUN condition).
Reset
- ARMv8-R Reset is performed like described here.
Attach
- Attach is supported
DSPH Core Cortex-M4
Init/Setup
- none
Reset
- Cortex-M Typ 0 normal reset is performed like described here.
Attach
- Attach is supported
DME Core Cortex-M4
Init/Setup
- none
Reset
- Cortex-M Typ 0 normal reset is performed like described here.
Attach
- Attach is supported
HSM Core
Init/Setup
- Initializes 64KB ECC RAM starting at 0x00800000
- SWT is enabled by default. If it is enabled, it will be disabled.
Reset
- Functional reset is executed.
Attach
- Attach is supported if WorkRAM init is skipped.
Device-specific handling
Reset
- Different resets are performed depending on the connected core. See the descriptions above.
Init
- Cluster 0, Core 0 performs additional clock configuration to achieve the highest possible programming speed.