actual heap size code composer
Hello ahmadagha23,
1- why when I compile my project by Code Composer 3.1 its output (*.out file) is more big (near 100KB) than when I compile it by Code Composer 2.2?
It depends on the changes made to build tools included by CCS IDE (compare the version numbers exploring the Component Manager Tool for CCS 2.2 and 3.1) and also to the library and the DSP/BIOS.
I noticed also a dramatic increase of build times: CCS 3.1 takes about 10 minutes to build a project compared to 3-4 minutes spent by CCS 2.2 with the same project.
2- What is the relationship between *.out file and the required memory (on-chip or off-chip)? is the size of *.out file a good estimate for the required physical memory?
The .out file is used to store much more information than the simple Op-code that the CPU shall execute. In fact if you try to open the .out files with an hex editor you will see information like project directories, file names, date of creation and so on. Take in consideration that for a project I obtained a .out with size of more than 1.5 Mbytes while the executable binary file stored in the EEPROM is about 350 kBytes! (TI provides the hex2bin.exe utility to generate the PROM-able binary executable).
3- does the size of produced *.out file for simulator platform differ from real chip (or DSK) board regarding to their size?
Absolutely yes (see above): you can have the perception of memory requirements for your code examining the .map file (generated by the build) but take in consideration that this file does not include information about dynamically allocated memory (heap size) and stack size.
4-HOW CAN I INITIALIZE THE .STACDK AND .SYSTEM AND OTHER SECTIONS PROPERLY? DO YOU KNOW COMPLETE REFERENCE (EXCEPT SPRA102)?
Search in the linker manuals/application notes and on the TI site: I read somewhere ( I don't remember where ...) that it is possible to initialize the memory sections by means of some switches in the linker command file.
Regards
Mowgly