Hi
I'm using a C++ image compression apllication on dsp C64x+ with dspbios but I can't process images larger than 1Mo.It seems to be an allocation memory problem, the application freeze on MEM_free. I read in TMS320 DSP/BIOS v5.41 User’s Guide that new and delete should be used by TSK objects only. I tried to create a static tsk object in Tconf but Iget unresolved symbol at link on the function associated to tsk object.
Here is my configuration script
utils.loadPlatform("ti.platforms.evmDM6467T");
/* The following DSP/BIOS Features are enabled. */
bios.enableRealTimeAnalysis(prog);
bios.enableRtdx(prog);
bios.enableTskManager(prog);
bios.GBL.SPECIFYRTSLIB = 1;
bios.GBL.RTSLIB = "rts64plus_eh.lib";
bios.MEM.STACKSIZE = 0x4000;
bios.MEM.NOMEMORYHEAPS = 0;
bios.MEM.TEXTSEG = prog.get("DDR2");
bios.MEM.SWITCHSEG = prog.get("DDR2");
bios.MEM.BSSSEG = prog.get("DDR2");
bios.MEM.FARSEG = prog.get("DDR2");
bios.MEM.CINITSEG = prog.get("DDR2");
bios.MEM.PINITSEG = prog.get("DDR2");
bios.MEM.CONSTSEG = prog.get("DDR2");
bios.MEM.DATASEG = prog.get("DDR2");
bios.MEM.CIOSEG = prog.get("DDR2");
bios.MEM.instance("DDR2").createHeap = 1;
bios.MEM.BIOSOBJSEG = prog.get("DDR2");
bios.MEM.MALLOCSEG = prog.get("DDR2");
bios.GBL.C64PLUSMAR128to159 = 0x0000ffff;
bios.GBL.C64PLUSL2CFG = "0k";
bios.MEM.instance("DDR2").heapSize = 0x02512d00;
bios.GBL.C64PLUSL2CFG = "64k";
bios.MEM.instance("CACHE_L2").space = "data";
bios.MEM.instance("IRAM").len = 0x00010000;
bios.MEM.instance("CACHE_L2").space = "data";
bios.MEM.instance("IRAM").space = "code/data";
bios.MEM.USERCOMMANDFILE = 0;
bios.MEM.BIOSOBJSEG = prog.get("MEM_NULL");
bios.MEM.BIOSOBJSEG = prog.get("DDR2");
bios.MEM.instance("ARM_RAM").space = "code/data";
bios.MEM.BIOSSEG = prog.get("ARM_RAM");
bios.MEM.SYSINITSEG = prog.get("ARM_RAM");
bios.MEM.HWISEG = prog.get("ARM_RAM");
bios.MEM.HWIVECSEG = prog.get("ARM_RAM");
bios.MEM.RTDXTEXTSEG = prog.get("ARM_RAM");
bios.MEM.ENABLELOADADDR = 1;
bios.MEM.LOADBIOSSEG = prog.get("ARM_RAM");
bios.MEM.LOADSYSINITSEG = prog.get("ARM_RAM");
bios.MEM.LOADHWISEG = prog.get("ARM_RAM");
bios.MEM.LOADRTDXTEXTSEG = prog.get("ARM_RAM");
bios.MEM.LOADBIOSSEG = prog.get("IRAM");
bios.MEM.LOADSYSINITSEG = prog.get("IRAM");
bios.MEM.LOADHWISEG = prog.get("IRAM");
bios.MEM.LOADRTDXTEXTSEG = prog.get("IRAM");
bios.MEM.BIOSSEG = prog.get("IRAM");
bios.MEM.SYSINITSEG = prog.get("IRAM");
bios.MEM.HWISEG = prog.get("IRAM");
bios.MEM.HWIVECSEG = prog.get("IRAM");
bios.MEM.RTDXTEXTSEG = prog.get("IRAM");
bios.MEM.ENABLELOADADDR = 0;
bios.MEM.BIOSSEG = prog.get("IRAM");
bios.GBL.ENABLEALLTRC = 0;
bios.STS.OBJMEMSEG = prog.get("ARM_RAM");
bios.LOG.create("trace");
bios.LOG.OBJMEMSEG = prog.get("IRAM");
bios.LOG.instance("LOG_system").bufSeg = prog.get("IRAM");
bios.GBL.ENABLEALLTRC = 1;
bios.TSK.create("TSK0");
bios.TSK.instance("TSK0").order = 1;
bios.TSK.STACKSEG = prog.get("DDR2");
bios.TSK.instance("TSK0").priority = 15;
bios.TSK.instance("TSK0").fxn = prog.extern("Uncomp", "asm");
// !GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT!
prog.gen();
EVM : DM6467T
CCSv 4.1
DSP/BIOS 5.41.02.14
C6000 7.0.1 compiler
Windows 7 pro 64 bits
Any help would be great
Thanks,
CC