Difference between revisions of "ST SR6P6"
(24 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | [[Category:Device families]] |
||
__TOC__ |
__TOC__ |
||
− | The '''ST SR6P6xx''' are |
+ | The '''ST SR6P6xx''' are Stellar P series microcontroler, which inlcude 10 Cortex-R52+ and 3 Cortex-M4. |
− | |||
==Flash Banks== |
==Flash Banks== |
||
===Internal Flash=== |
===Internal Flash=== |
||
Line 8: | Line 8: | ||
! Flash Bank || Base address !! Size || J-Link Support |
! Flash Bank || Base address !! Size || J-Link Support |
||
|- |
|- |
||
− | | |
+ | | RWW Partition 0 || 0x28000000 || 1792 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | |
+ | | RWW Partition 1 || 0x281C0000 || 2048 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | |
+ | | RWW Partition 2 || 0x28400000 || 1792 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | |
+ | | RWW Partition 3 || 0x285C0000 || 2048 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | |
+ | | RWW Partition 4 || 0x28800000 || 2048 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | |
+ | | RWW Partition 5 || 0x28C00000 || 2048 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | |
+ | | RWW Partition 6 || 0x29000000 || 2048 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | |
+ | | RWW Partition 7 || 0x29400000 || 2048 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | EEPROM || 0x29E00000|| 512 KB || style="text-align:center;"| {{YES}} |
+ | | EEPROM / RWW 8 || 0x29E00000|| 512 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | UTEST || 0x29F80000|| 32 KB || style="text-align:center;"| {{YES}} |
+ | | UTEST / RWW 1 || 0x29F80000|| 32 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | Boot Code Sector || 0x29FB8000|| 16 KB || style="text-align:center;"| {{YES}} |
+ | | Boot Code Sector / RWW 1 || 0x29FB8000|| 16 KB || style="text-align:center;"| {{YES}} |
|- |
|- |
||
− | | HSM Code || 0x00000000 || 512 KB || style="text-align:center;"| {{NO}} |
+ | | HSM Code / RWW 9/10 || 0x00000000 || 512 KB || style="text-align:center;"| {{NO}} |
|- |
|- |
||
− | | HSM Data || 0x003A0000 || 128 KB || style="text-align:center;"| {{NO}} |
+ | | HSM Data / RWW 11 || 0x003A0000 || 128 KB || style="text-align:center;"| {{NO}} |
|- |
|- |
||
− | | HSM UT || |
+ | | HSM UT / RWW 11 || 0x0037C000 || 16 KB || style="text-align:center;"| {{NO}} |
|} |
|} |
||
− | ==== |
+ | ====Flash programming==== |
+ | Flash programming of all above listed flash regions is done through Cluster0 Core0 (Cortex-R52).<br> |
||
− | *Describe ECC Flash restriction here. |
||
+ | The flash controller has no explicit erase function. <br> |
||
+ | When reprogramming flash an explicit erase before programming is not necessary. Already programmed flash can be directly reprogrammed. |
||
− | === |
+ | ====ECC Flash ==== |
+ | Device has ECC Flash, but no special init necessary. |
||
− | QSPI flash programming requires special handling compared to internal flash. For more information about this, please see the [[QSPI Flash Programming Support | QSPI Flash Programming Support article]].<br> |
||
+ | Please refer to the reference Manual. |
||
− | J-Link supports multiple pin configurations for [DEVICE]. The default loader is marked in '''bold'''. |
||
− | {| class="seggertable" |
||
− | |- |
||
− | ! Device !! Base address !! Maximum size !! Supported pin configuration |
||
− | |- |
||
− | | [DEVICE]|| [BANK_BASE_ADDRESS] || [MAX_SPI_FLASH_SIZE] MB || |
||
− | *'''[LOADER_NAME]''' |
||
− | *[LOADER_NAME] |
||
− | *[LOADER_NAME] |
||
− | |} |
||
− | |||
− | ==ECC RAM [OPTIONAL]== |
||
− | *Describe ECC RAM restriction here. |
||
+ | ==ECC RAM == |
||
− | ==Vector Table Remap [OPTIONAL]== |
||
+ | Device has ECC RAM, init before first use is necessary. Please refer to the reference Manual. |
||
− | *Describe Vector Table Remap here.. |
||
+ | ECC RAM initialization is done for Cluster 0 Core 0, see below. |
||
− | ==Multi-Core Support |
+ | ==Multi-Core Support== |
+ | {{Template:ST_SR6Px_MultiCoreSupport|SR6P6|*Functional Reset is initiated for Cut 1.0 silicon.}} |
||
− | Before proceeding with this article, please check out the generic article regarding Multi-Core debugging [[Multi-Core_Debugging | here]]. |
||
− | The S32K3 family comes with a variety of multi-core options. Some devices from this family feature a secondary core which is disabled after reset / by default. Some of the are available with enabled ''lockstep'' mode, only. In below, the debug related multi-core behavior of the J-Link is described for each core: |
||
− | ===Main core=== |
||
− | ====Init/Setup==== |
||
− | *Initializes the ECC RAM, see [[XXX | XXX]] |
||
− | *Enables debugging |
||
− | ====Reset==== |
||
− | *Device specific reset is performed, see [[XXX | XXX]] |
||
− | ====Attach==== |
||
− | *Attach is not supported because the J-Link initializes certain RAM regions by default |
||
− | ===Secondary core(s)=== |
||
− | ====Init/Setup==== |
||
− | *If the main core session has not been started / debugging is not enabled yet, the secondary core executes the enable debug sequence. |
||
− | *If the secondary core is not enabled yet, it will be enabled / release from reset |
||
− | ====Reset==== |
||
− | No reset is performed. |
||
− | ====Attach==== |
||
− | *Attach is supported / desired |
||
==Device Specific Handling== |
==Device Specific Handling== |
||
===Reset=== |
===Reset=== |
||
+ | * Depending on connected core, different resets are performed, see above. |
||
− | *The devices uses normal Cortex-M reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Type_0:_Normal | here]]. |
||
− | *The devices uses Cortex-M Core reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Type_1:_Core | here]]. |
||
− | *The devices uses Cortex-M Rest Pin, no special handling necessary, like described [[J-Link_Reset_Strategies#Type_2:_ResetPin | here]]. |
||
− | *The device uses custom reset:..... |
||
− | |||
− | ==Limitations== |
||
− | ===Dual Core Support=== |
||
− | Some XXX devices feature a second core. Right now, the J-Link software does support the main core, only. Support for the second core is planned for future versions. |
||
− | |||
− | ===Attach=== |
||
− | Attach is not supported by default because the J-Link initializes certain RAM regions by default. |
||
==Evaluation Boards== |
==Evaluation Boards== |
||
+ | *[[ST SR6P6-EVBC8000P]] |
||
− | *[SiliconVendor] [EvalBoardName] evaluation board: http://techwiki.segger.local/WikiTemplateEvalBoard |
||
− | |||
− | ==Example Application== |
||
− | *[SiliconVendor] [EvalBoardName] evaluation board: http://techwiki.segger.local/WikiTemplateEvalBoard#Example_Project |
Latest revision as of 11:20, 15 May 2024
Contents
The ST SR6P6xx are Stellar P series microcontroler, which inlcude 10 Cortex-R52+ and 3 Cortex-M4.
Flash Banks
Internal Flash
Flash Bank | Base address | Size | J-Link Support |
---|---|---|---|
RWW Partition 0 | 0x28000000 | 1792 KB | |
RWW Partition 1 | 0x281C0000 | 2048 KB | |
RWW Partition 2 | 0x28400000 | 1792 KB | |
RWW Partition 3 | 0x285C0000 | 2048 KB | |
RWW Partition 4 | 0x28800000 | 2048 KB | |
RWW Partition 5 | 0x28C00000 | 2048 KB | |
RWW Partition 6 | 0x29000000 | 2048 KB | |
RWW Partition 7 | 0x29400000 | 2048 KB | |
EEPROM / RWW 8 | 0x29E00000 | 512 KB | |
UTEST / RWW 1 | 0x29F80000 | 32 KB | |
Boot Code Sector / RWW 1 | 0x29FB8000 | 16 KB | |
HSM Code / RWW 9/10 | 0x00000000 | 512 KB | |
HSM Data / RWW 11 | 0x003A0000 | 128 KB | |
HSM UT / RWW 11 | 0x0037C000 | 16 KB |
Flash programming
Flash programming of all above listed flash regions is done through Cluster0 Core0 (Cortex-R52).
The flash controller has no explicit erase function.
When reprogramming flash an explicit erase before programming is not necessary. Already programmed flash can be directly reprogrammed.
ECC Flash
Device has ECC Flash, but no special init necessary. Please refer to the reference Manual.
ECC RAM
Device has ECC RAM, init before first use is necessary. Please refer to the reference Manual. ECC RAM initialization is done for Cluster 0 Core 0, see below.
Multi-Core Support
Before proceeding with this article, please check out the generic article regarding Multi-Core debugging here.
The SR6P6 family comes with 10 Cortex-R52 and 3 Cortex-M4 cores. Some of them are available with enabled lockstep 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:
Cortex-R52 Cluster 0 Core 0
Init/Setup
- WDT is enabled by default. If it is enabled, it will be disabled.
Reset
- ARMv8-R Reset is performed like described here.
- Functional Reset is initiated for Cut 1.0 silicon.
- Initializes 256KB ECC RAM starting at 0x60000000
- WDT is enabled by default. If it is enabled, it will be disabled.
Attach
- Attach is supported, user has to take care about ECC RAM initialization.
Cortex-R52 Cluster 0 Core 1
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
Cortex-R52 Cluster 1 Core 0
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
Cortex-R52 Cluster 1 Core 1
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
Cortex-R52 Cluster 2 Core 0
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
Init/Setup
- none
Reset
- Cortex-M Typ 0 normal reset is performed like described here.
Attach
- Attach is supported
DME Core
Init/Setup
- none
Reset
- Cortex-M Typ 0 normal reset is performed like described here.
Attach
- Attach is supported
Device Specific Handling
Reset
- Depending on connected core, different resets are performed, see above.