TCM Backdoor-Addressing on same core [S32K3]

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

TCM Backdoor-Addressing on same core [S32K3]

605 Views
Daimon
Contributor I

Hi NXP-Team,

concerning your TCM-Ram (TightlyCoupledMemory) Regions defined in your MemoryMap available on the S32K388 Controller:
The Memory Map shows that all of these (whether ITCM or DTCM) are located at the same address respectively (see attached screenshot).

1) Can you clarify if addressing a TCM from its local core via the backdoor address leads to performance loss? (.e.g. Core0 accessing ITCM0 at 0x11000000 instead of 0x0)
1.1) If yes: How much loss is expected?

In my project we are using GNU Style LD-Files (GHS). 
2) Is there a way to address (via sections in LD File) the TCMs exclusively for same core access unambiguously in a single LD File?

Thanks

Best Regards
Daimon

Tags (3)
0 Kudos
Reply
2 Replies

555 Views
Daimon
Contributor I

Hello Peter,
thanks for the answer - this magnitude estimation is sufficient for me (but too high for my usecase).

concerning the direct address region - in case of ITCM: are you talking about 0x0 - 0xFFFF?
Is there a unique address available to differentiate between them, that does not map to the backdoor path?
In Code addressing them is no problem, but If I want to create dedicated sections in my LD File and place objects there the addresses are ambiguous.
Is there a path forward to handle that?

Thanks!

Best Regards,
Daimon

0 Kudos
Reply

580 Views
petervlna
NXP TechSupport
NXP TechSupport

Hello,

1) Can you clarify if addressing a TCM from its local core via the backdoor address leads to performance loss?

YES — backdoor access is slower.

Because the backdoor accesses the TCM via the System Bus, it is subject to arbitration with other masters trying to access the same memory, which can introduce variable delays.

AN13388 

1.1) If yes: How much loss is expected?

We do nothave published cycle‑accurate numbers for backdoor TCM performance on S32K3

I can only reason based on the M7 architecture:

Architectural expectation: ~4–6× slower for typical code fetch or load/store.

2) Is there a way to address (via sections in LD File) the TCMs exclusively for same core access unambiguously in a single LD File?

Yes — as long as each TCM’s direct addresses are unique per core.

On S32K388, each core has its own ITCM and DTCM direct address region.

Best regards,

Peter