Hi everyone,
I am currently writing a linker script to build my final executable to fit into the memory space visible from within the MB. Since that CPU is an Harv ard architecture based, program memory and data memory are separated. This means that I have instructions at address 0 of the program memory, and a data at the same address but in data memory. If I try to force the .data section in the linkes script at address 0, the linker complains with an overlap error. How can I modify my linker script to reflect the fact that I have two separ ated memory area, one for the program and another for the data ?
Currently, if I do not specify particular requirements in the linker script , the linker places the .data section just after the .text section. Do I ha ve to take care the the data section address or is there any kind of "inter nal address translation" when an instruction (taken from the program memory ) accesses to the data memory for which I do not have to take care ?
Are there specific directives I have to insert into my linker script to spe cify the type of memory (program vs data) ?
Thanks in advance for your answers !
Charles