Hi @karmegancjk,
It depends on the compiler. For example, GCC does not support placing a variable directly at a specific address. Instead, GCC requires you to place variables in named sections, and then use the linker script to assign those sections to specific memory addresses.
Have a look at any RTD example, the linker file already defines multiple memory sections. You can create new sections by referencing these existing ones and extending them as needed.
For example, Placing a Variable in int_sram_no_cacheable:
#pragma GCC section bss ".mcal_bss_no_cacheable"
uint8_t variable;
#pragma GCC section bss
Here is an example that uses ITCM and DTCM and the linker file is modified because of that.
https://community.nxp.com/t5/S32K-Knowledge-Base/Example-Siul2-Port-Ip-Example-S32K344-ITCM-DTCM-S32...
Regards,
Daniel