2008-04-10 01:42 AM
2011-05-17 12:51 AM
hi,
for IAR and keil it's done automatically when calling B main. For Raisonance it's done in the startup file before B main. Rgds2011-05-17 12:51 AM
Hi, I have something confused on startup procedure of STR910. I think the program should copy or remap the data segment of image into SRAM location in startup, but I can't find any related part of program in demo. I don't understand how the data segment could be located into SRAM without manual program. Who can explain it to me ?
Thank you Best wishes Lalune2011-05-17 12:51 AM
Hello,
For IAR it's done by the B ?main, the ''?'' is responsible of copying or remaping the initialized data segment of image into SRAM location. Same thing is done by __main for ARM compiler/assembler. For Tasking compiler for example, this is done explecitely in the startup souce file. Hopefully this clarifies. Regards, Ibtissem.2011-05-17 12:51 AM
Hi, thank you both for answers. Today I trace startup and found something interesting. In startup, when ''B ?main'' is done, it jumps to a special initializa segment but not main() fuction; Data segments are copied into SRAM here. This special initializa segment is insert by xlink automatical if you set the xcl file with parameter -Q. That means xlink add some assembler codes into your image for SRAM remap when link your obj. That's why I can't found remap codes in startup.
Best wishes lalune