Hi Andy,
See comments below... ________________________________ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Andy Ngo Sent: Wednesday, January 24, 2007 3:31 PM To: davinci-linux-open-source Subject: Linking/mapping data to IRAM or L1SDRAM on the DSP Hi all, Thanks to all who responded about the small footprint filesystem; they were all very helpful. I have a new question: I want to improve the performance of the CE Server on the DSP side; I know there are L1 and L2 caches and the actual amount can be configured in the *.tcf file of the CE server. 1) Do I have to activate these caches in my DSP code or are they already set up to run automatically by the CE Server initialization routine? [vw] Once you have set up the cache modes in the *.tcf file, they will be set and activated during initialization. 2) Also, I may want to use some of the L2 cache as IRAM or some of the L1 cache as L1SDRAM (I know how to configure these in the *.tcf file) but I don't know how to declare my data to map to these fast memory regions. For example, let's say my encoder codec has an array and I want fast access to it, it is declared as follows: XDAS_Int32 myArray[100]; // 400 bytes How do create a link file to force "myArray" to link to the beginning L1SRAM? The DVEVM codecs / servers examples automatically generate all the link files (*.cmd) in package/cfg, so I'm assuming it has to be done somewhere in one of the *.bld, *.cfg, or *.tcf files, am I correct? Can anyone please give me some pointers on how to link data to IRAM or L1SDRAM? [vw] One way to do it is to request this memory from the framework through the IALG interface. First make sure L1DSRAM has a heap segment defined with the same length as L1DSRAM, and label it L1DHEAP (the all.tcf file in CE examples shows you how to do this.) Request memory from space "IALG_DARAM0" in the memTab entry in your codec's algAlloc function, then for the DSKT2 module (which manages memory for the codecs/algorithms), map IALG_DARAM0 to L1DSRAM in your server's cfg file by setting DSKT2.DARAM0 = "_L1DHEAP"; This should ensure that the buffer you obtain in your codec's algInit function will come from the beginning of L1DSRAM - assuming that no other codec is requesting the same memory, that there is enough space, etc. Best regards, Vincent Thanks! Regards, Andy
_______________________________________________ Davinci-linux-open-source mailing list Davinci-linux-open-source@linux.davincidsp.com http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source