Hi all,
I would like to know how to enable cache on DM6437?
First of all, i have implemented a codec and i have measured the cycle
count of each frame on c64x+ CPU cycle simulator. Simulator being flat
memory model will not consider the cache miss stall and memory bank
conflict stalls.
Later on, i have ported the same codec on DM6437 evm and measure the cycle
count.Initially all the code and data are placed in the external memory.
Now i would like to know how to enable cache.
Through the earlier posts discussed, I came to know that the CSL used for 64x
cannot be used for 64x+ DSPs. But the SPRU862A uses the commands like:
CACHE_L1pSetSize();
CACHE_L1dSetSize();
CACHE_enableCaching(CACHE_CE00);
CACHE_SetL2Size(CACHE_256KCACHE);
to cofigure L1 and L2 caches and enable external memory cacheable.
1)How do i use these commands on DM6437 platform?
(i know csl.h and csl_cache.h supports till DM642 chips but the example given on page 27
of SPRU862A uses these header files along the above mentioned commands which drives me into
confusion)
2)Using BCACHE API from within DSP/BIOS is the only way to enable cache?(SPRU403) or is there any other way to enable cache without involving DSP/BIOS?
3) when the board is reset,after the project is builded and the code gets loaded. what are the status
of the L1p,L1d and L2 cache?
4) What role does Register (RCSL) has with respect to DM6437 cache?
Awaiting for your replies,
Regards,
Sandeep