Hi,
I'm trying to run MPEG4 codec on DM6446. Codec runs perfectly with this configuration:
(on *.tcf server file)
bios.L1DSRAM.heapSize = 0x10000;
bios.L1DSRAM.len += 0x4000;
prog.module("GBL").C64PLUSL1DCFG = "16k";
prog.module("GBL").C64PLUSL1PCFG = "32k";
prog.module("GBL").C64PLUSL2CFG = "64k";
(on *.cfg server file)
DSKT2.DSKT2_HEAP = "DDR2";
DSKT2.DARAM0 = "L1DHEAP";
DSKT2.DARAM1 = "DDR2";
DSKT2.DARAM2 = "DDR2";
DSKT2.SARAM0 = "DDR2";
DSKT2.SARAM1 = "DDR2";
DSKT2.SARAM2 = "DDR2";
DSKT2.IPROG = "DDR2";
DSKT2.ESDATA = "DDRALGHEAP";
DSKT2.EPROG = "DDR2";
//DSKT2.debug = true;
//DSKT2.trace = true;
DSKT2.ALLOW_EXTERNAL_SCRATCH = false;
DSKT2.SARAM_SCRATCH_SIZES[0] = 57*1024;
DSKT2.DARAM_SCRATCH_SIZES[0] = 57*1024;
On this case, 57kb of Scratch memory are allocated on L1DHEAP
But, I need 32kb on L1D chache, so there are only 48kb on L1DHEAP. I try to allocate Scratch memory on either DDR2 or DDRALGHEAP:
DSKT2.DARAM0 = "DDR2";
or
DSKT2.DARAM0 = "DDRALGHEAP";
But neither of them run correctly. VIDENC1_process hangs on both cases.
I printed memory status (Server_getMemStat) before and after codec creation (VIDENC1_create) and I verified that codec reserves scratch memory on correct memory sector on all cases (L1DHEAP, DDR2 or DDRALGHEAP).
My question is, Does codec Mpeg4 need allocate Scratch memory on L1DHEAP to run correctly?
Thanks