diff options
Diffstat (limited to 'targets/corstone-300/platform.scatter')
-rw-r--r-- | targets/corstone-300/platform.scatter | 41 |
1 files changed, 25 insertions, 16 deletions
diff --git a/targets/corstone-300/platform.scatter b/targets/corstone-300/platform.scatter index 55e21b7..d683100 100644 --- a/targets/corstone-300/platform.scatter +++ b/targets/corstone-300/platform.scatter @@ -144,6 +144,25 @@ APP_IMAGE LR_START LR_SIZE .ANY (+RO) } + ; DTCM 512kB + ; Only accessible from the Cortex-M + DTCM DTCM_START (DTCM_SIZE - STACK_SIZE - HEAP_SIZE - __STACKSEAL_SIZE) + { + .ANY1 (+RW +ZI) + } + + ARM_LIB_HEAP (STACK_HEAP - STACK_SIZE - __STACKSEAL_SIZE - HEAP_SIZE) EMPTY ALIGN 8 HEAP_SIZE {} + ARM_LIB_STACK (STACK_HEAP - STACK_SIZE - __STACKSEAL_SIZE) EMPTY ALIGN 8 STACK_SIZE {} + +#if defined(USE_TRUSTZONE) && defined(TRUSTZONE_SECURE) + STACKSEAL +0 EMPTY __STACKSEAL_SIZE { + ; Reserve empty region for stack seal immediately after stack + } +#endif +} + +LOAD_REGION_BRAM BRAM_START BRAM_SIZE +{ #if defined(USE_TRUSTZONE) && defined(TRUSTZONE_SECURE) ; MPS3 BRAM ; Shared between Cortex-M and the NPU @@ -163,14 +182,10 @@ APP_IMAGE LR_START LR_SIZE * (.sram.data) } #endif +} - ; DTCM 512kB - ; Only accessible from the Cortex-M - DTCM DTCM_START (DTCM_SIZE - STACK_SIZE - HEAP_SIZE - __STACKSEAL_SIZE) - { - .ANY1 (+RW +ZI) - } - +LOAD_REGION_SRAM SRAM_START SRAM_SIZE +{ ; 2MB SSE-300 SRAM (3 cycles read latency) from M55/U55 SRAM SRAM_START SRAM_SIZE { @@ -187,15 +202,6 @@ APP_IMAGE LR_START LR_SIZE ; Place scratch buffer in SRAM * (.bss.ethosu_scratch) } - - ARM_LIB_HEAP (STACK_HEAP - STACK_SIZE - __STACKSEAL_SIZE - HEAP_SIZE) EMPTY ALIGN 8 HEAP_SIZE {} - ARM_LIB_STACK (STACK_HEAP - STACK_SIZE - __STACKSEAL_SIZE) EMPTY ALIGN 8 STACK_SIZE {} - -#if defined(USE_TRUSTZONE) && defined(TRUSTZONE_SECURE) - STACKSEAL +0 EMPTY __STACKSEAL_SIZE { - ; Reserve empty region for stack seal immediately after stack - } -#endif } LOAD_REGION_1 DDR_START DDR_SIZE @@ -215,6 +221,9 @@ LOAD_REGION_1 DDR_START DDR_SIZE * (expected_output_data_sec) * (output_data_sec) * (sec_command_stream, sec_weight_data, sec_input_data) + + * (ethosu_core_in_queue) + * (ethosu_core_out_queue) } #if (ETHOSU_ARENA == 1) |